Re: [Gimp-developer] Gimp Plug-in for Retrieving Text Layers

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

David Neary <dneary@xxxxxxx> writes:

> Not really - the usual way is to do something like this:
>
> gint nlayers, i;
> gint *layers = gimp_image_get_layers(image_id, &nlayers);
> /* layers[0] is the top layer */
>
> for (i = 0; i < nlayers; i++)
> {
>   /* Do stuff with layers[i] */
>   /* layer is a text layer if the parasite "gimp-text-layer" has been
>    * set */
>   GimpDrawable *layer = gimp_drawable_get (layers[i]);
>   GimpParasite *text_parasite = gimp_drawable_parasite_find
>                                   (layers[i], "gimp-text-layer");
>   if (text_parasite != NULL)
>     /* We have a text layer */
>   
> } 

OK, now I will have to kill you both. Well, perhaps not but I can only
strongly discourage to do it this way. You must not rely on the text
parasite and it's content.  Doing this might to some extent work on
XCF files that have been freshly loaded but it will fail as soon as a
text layer is modified. There is also no guarantee that this behaviour
won't change in future versions of GIMP. I might even decide to change
it in the middle of a stable release cycle. Perhaps even for the only
reason to break your code that should not be doing this.


Sven

[Index of Archives]     [Video For Linux]     [Photo]     [Yosemite News]     [gtk]     [GIMP for Windows]     [KDE]     [GEGL]     [Gimp's Home]     [Gimp on GUI]     [Gimp on Windows]     [Steve's Art]

  Powered by Linux