[Bf-committers] [Bf-blender-cvs] SVN commit: /data/svn/bf-blender [57153] trunk/blender/source/blender/ makesrna/intern/rna_text.c: Made text datablock properties 'is_in_memory' and 'is_dirty' editable in Python.

Sergey Sharybin sergey.vfx at gmail.com
Fri May 31 20:45:13 CEST 2013


That'd be really confusing situation when you'll set is-internal to False
for the textblock which originally was internal. You'll basically loose all
the data i guess.

Also is_dirty pretty dangerous thing. Setting it to false will also lead to
nothing else than confuse.

This is probably acceptable for short-term solution, but for longer term
is't more like a confusing way to reach the goal. And in context of recent
API breakage discussing think it's better to support nice way of reaching
the goal from the start, rather than breaking api later.

And for long term, not sure how pack/unpack is different from
make_internal/make_external. Sounds more like a pseudonyms to the same
thing, and perhaps we could already call functions this way?


On Sat, Jun 1, 2013 at 12:30 AM, Campbell Barton <ideasman42 at gmail.com>wrote:

> I requested Tamito use flags rather then a function,
> The reason for this is that making a text internal/external is fairly
> low-level (not something regular script devs would care about
> typically).
> if you add make_internal() then theres the chance you'll want a
> make_external() function (which could be OK but adds more API calls).
>
> Longer term, I think it would be good if we could have text that isn't
> necessarily stored inside a blend file (like how images aren't stored
> unless packed),
> in that case text blocks can have pack(), unpack() functions as mentioned.
>
> On Sat, Jun 1, 2013 at 4:08 AM, Tamito KAJIYAMA
> <rd6t-kjym at asahi-net.or.jp> wrote:
> > Hi Sergey,
> >
> > Indeed .make_internal() was exactly what I was proposing initially.
> > http://www.pasteall.org/42705/diff
> > Then I was suggested to address the issue in the present way.
> > I tend to agree with your opinion from the scripter perspective.
> >
> > --
> > KAJIYAMA, Tamito <rd6t-kjym at asahi-net.or.jp>
> >
> >
> > -----Original Message-----
> > From: Sergey Sharybin
> > Sent: Friday, May 31, 2013 10:17 AM
> > To: Blender Developers
> > Subject: Re: [Bf-committers] [Bf-blender-cvs] SVN commit:
> /data/svn/bf-blender [57153] trunk/blender/source/blender/
> > makesrna/intern/rna_text.c: Made text datablock properties
> 'is_in_memory' and 'is_dirty' editable in Python.
> >
> > Hi,
> >
> > Not sure this is the best way to go. IMO this is rather confusing from
> > scripter POV and confuses system a bit.
> >
> > Why not make it a TextBlock.make_internal() method? Name of the method is
> > discussable -- could be pack/unpack to match other datablocks, but think
> > callback is the way to go to achieve things you want :)
> >
> >
> > On Fri, May 31, 2013 at 1:40 PM, Tamito Kajiyama
> > <rd6t-kjym at asahi-net.or.jp>wrote:
> >
> >> Revision: 57153
> >>
> >>
> http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=57153
> >> Author:   kjym3
> >> Date:     2013-05-31 07:40:03 +0000 (Fri, 31 May 2013)
> >> Log Message:
> >> -----------
> >> Made text datablock properties 'is_in_memory' and 'is_dirty' editable in
> >> Python.
> >>
> >> The rationale of this revision is to provide an easy way to make text
> >> datablocks internal
> >> from within Python (i.e., by setting these properties to True and the
> >> 'filepath' property
> >> to empty string).
> >>
> >> Modified Paths:
> >> --------------
> >>     trunk/blender/source/blender/makesrna/intern/rna_text.c
> >>
> >> Modified: trunk/blender/source/blender/makesrna/intern/rna_text.c
> >> ===================================================================
> >> --- trunk/blender/source/blender/makesrna/intern/rna_text.c
> 2013-05-31
> >> 06:28:11 UTC (rev 57152)
> >> +++ trunk/blender/source/blender/makesrna/intern/rna_text.c
> 2013-05-31
> >> 07:40:03 UTC (rev 57153)
> >> @@ -148,7 +148,6 @@
> >>
> >>         prop = RNA_def_property(srna, "is_dirty", PROP_BOOLEAN,
> PROP_NONE);
> >>         RNA_def_property_boolean_sdna(prop, NULL, "flags", TXT_ISDIRTY);
> >> -       RNA_def_property_clear_flag(prop, PROP_EDITABLE);
> >>         RNA_def_property_ui_text(prop, "Dirty", "Text file has been
> edited
> >> since last save");
> >>
> >>         prop = RNA_def_property(srna, "is_modified", PROP_BOOLEAN,
> >> PROP_NONE);
> >> @@ -158,7 +157,6 @@
> >>
> >>         prop = RNA_def_property(srna, "is_in_memory", PROP_BOOLEAN,
> >> PROP_NONE);
> >>         RNA_def_property_boolean_sdna(prop, NULL, "flags", TXT_ISMEM);
> >> -       RNA_def_property_clear_flag(prop, PROP_EDITABLE);
> >>         RNA_def_property_ui_text(prop, "Memory", "Text file is in
> memory,
> >> without a corresponding file on disk");
> >>
> >>         prop = RNA_def_property(srna, "use_module", PROP_BOOLEAN,
> >> PROP_NONE);
> >
> > _______________________________________________
> > Bf-committers mailing list
> > Bf-committers at blender.org
> > http://lists.blender.org/mailman/listinfo/bf-committers
>
>
>
> --
> - Campbell
> _______________________________________________
> Bf-committers mailing list
> Bf-committers at blender.org
> http://lists.blender.org/mailman/listinfo/bf-committers
>



-- 
With best regards, Sergey Sharybin


More information about the Bf-committers mailing list