Re: Of Palettes and Plug-ins

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

 



I already saw all those calls, I think I see how to modify my design to
make it work. Thanks for the help! I am going to do some hacking and get
another commit together.

Thanks,
wt


On Sat, Sep 7, 2013 at 5:07 AM, Joao S. O. Bueno <gwidion@xxxxxxxxxx> wrote:

> On 7 September 2013 03:20, Warren Turkal <wt@xxxxxxxxxxxxxxxx> wrote:
> > On Fri, Sep 6, 2013 at 11:20 AM, Joao S. O. Bueno <gwidion@xxxxxxxxxx>
> > wrote:
> >>
> > From the above comment, I assume that what I want to do will be hard. Any
> > pointers on what would need to change to make it more useful? I'd be
> happy
> > to try to do some of the work if it ends in making possible what I want
> to
> > do.
>
> Let me say it again:
> The "string" IS the Pallete as far as any code relating to GIMP via PDB is
> concerned. It works more like an ID than as a name.  And the PDB is
> quite complete in what relates to Palette
> manipulation.
>
>
> Check this Python-fu Session - it creates a new palette and adds entries
> to it,
> just as you want:
>
>
> GIMP 2.9.1 Python Console
> Python 2.7.3 (default, Jul 24 2012, 11:41:40)
> [GCC 4.6.3 20120306 (Red Hat 4.6.3-2)]
> >>>
> >>> pal_id = "warren palette"
> >>>
> >>> pal_id = pdb.gimp_palette_new(pal_id)
> >>> print pal_id
> warren palette
> >>> pdb.gimp_palette_add_color(pal_id, "black", (0,0,0))
> Traceback (most recent call last):
>   File "<input>", line 1, in <module>
> error: procedure not found
> >>> pdb.gimp_palette_add_entry(pal_id, "black", (0,0,0))
> 0
> >>> pdb.gimp_palette_add_entry(pal_id, "golden yellow", (255,230,0))
> 1
> >>> pdb.gimp_palette_add_entry(pal_id, "pinkish", (255,200,150))
> 2
> >>>
>
> And voilá- when I look in the Palette's dialog, in GIMP, the new
> Palette _is there_,
> with all three colors, fully featured as any other GIMP's palette
> and with all the export options enabled for it.
>
> Just take care with the line that goes:
> >>> pal_id = pdb.gimp_palette_new(pal_id)
>
> It is important to store the ID as the return value of the call to
> gimp_palette_new,
> because it the palette name you attempt to create already exists, GIMP will
> automatically modify the name with a numbering scheme - and the modified
> name
> will be the ID for that pallete.
>
> In practice, a Python Script manipulating Palletes never needs to do
> anything with the
> value passed around as a PF_PALETTE - (if it is a plug-in to
> manipulate them in place, that is) -
> it is just passed into the plug-in, and it is iused as an ID for all
> Palette related calls.
>
> BTW, it just occurred me that you might not yet be aware of the
> procedure-browser functionality:
> in GIMP, just open help->procedure browser - now type "palette" in the
> search box -
> there you are, all palette related calls available for your plug-in.
>
>
>
>
> >
> >>
> >> But having the string passed around between plug-ins works as nicely
> >> as it can be - I had written some palette creating/exporting a few
> >> years ago.
> >
> >
> > Passing around a string doesn't really suit the use case I want to
> > implement. I basically want the plugin to be able to return a palette
> that
> > the core code registers if the running of the plugin is successful.
> >
> > Are there any pointers for doing this kind of thing that I should be
> looking
> > at?
> >
> > Thanks,
> > wt
>
_______________________________________________
gimp-developer-list mailing list
List address:    gimp-developer-list@xxxxxxxxx
List membership: https://mail.gnome.org/mailman/listinfo/gimp-developer-list





[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