18
18
# "Perlized" from C source by Manish Singh <yosh@gimp.org>
21
$author = 'Michael Natterer <mitch@gimp.org>';
22
$copyright = 'Michael Natterer';
30
desc => 'The palette name.'
33
my $get_palette_from_name = <<'CODE';
34
if (name && strlen (name))
36
palette = (GimpPalette *)
37
gimp_container_get_child_by_name (gimp->palette_factory->container,
42
palette = gimp_context_get_palette (context);
50
21
$blurb = "Creates a new palette";
51
22
$help = "This procedure creates a new, uninitialized palette";
24
&mitch_pdb_misc('2004', '2.2');
56
27
{ name => 'name', type => 'string',
61
{ name => 'name', type => 'string',
62
desc => 'The actual new palette name',
63
alias => 'g_strdup (GIMP_OBJECT (data)->name)', no_declare => 1 },
32
{ name => 'actual_name', type => 'string',
33
desc => 'The actual new palette name' }
67
vars => [ 'GimpData *data = NULL'],
71
data = gimp_data_factory_data_new (gimp->palette_factory, name);
73
success = (data != NULL);
41
GimpData *data = gimp_data_factory_data_new (gimp->palette_factory, name);
44
actual_name = g_strdup (gimp_object_get_name (GIMP_OBJECT (data)));
55
sub palette_is_editable {
56
$blurb = "Tests if palette can be edited";
57
$help = "Returns TRUE if you have permission to change the palette";
59
&bill_pdb_misc('2004', '2.4');
62
{ name => 'name', type => 'string',
63
desc => 'The palette name' }
67
{ name => 'editable', type => 'boolean',
68
desc => "TRUE if the palette can be edited" }
74
GimpPalette *palette = (GimpPalette *)
75
gimp_container_get_child_by_name (gimp->palette_factory->container, name);
78
editable = GIMP_DATA (palette)->writable;
80
87
$blurb = "Duplicates a palette";
81
88
$help = "This procedure creates an identical palette by a different name";
90
&mitch_pdb_misc('2004', '2.2');
93
{ name => 'name', type => 'string',
94
desc => 'The palette name' }
90
{ name => 'name', type => 'string',
91
desc => "The name of the palette's copy",
92
alias => 'g_strdup (GIMP_OBJECT (palette_copy)->name)',
98
{ name => 'copy_name', type => 'string',
99
desc => "The name of the palette's copy" }
97
vars => [ 'GimpPalette *palette = NULL',
98
'GimpPalette *palette_copy = NULL' ],
101
palette = (GimpPalette *)
105
GimpPalette *palette = (GimpPalette *)
102
106
gimp_container_get_child_by_name (gimp->palette_factory->container, name);
106
palette_copy = (GimpPalette *)
110
GimpPalette *palette_copy = (GimpPalette *)
107
111
gimp_data_factory_data_duplicate (gimp->palette_factory,
108
112
GIMP_DATA (palette));
110
success = (palette_copy != NULL);
115
copy_name = g_strdup (gimp_object_get_name (GIMP_OBJECT (palette_copy)));
120
127
$blurb = "Rename a palette";
121
128
$help = "This procedure renames a palette";
130
&mitch_pdb_misc('2004', '2.2');
133
{ name => 'name', type => 'string',
134
desc => 'The palette name' },
127
135
{ name => 'new_name', type => 'string',
128
136
desc => "The new name of the palette" }
132
{ name => 'name', type => 'string',
133
desc => "The actual new name of the palette",
134
alias => 'g_strdup (GIMP_OBJECT (palette)->name)', no_declare => 1 },
140
{ name => 'actual_name', type => 'string',
141
desc => "The actual new name of the palette" }
138
vars => [ 'GimpPalette *palette = NULL' ],
141
palette = (GimpPalette *)
147
GimpPalette *palette = (GimpPalette *)
142
148
gimp_container_get_child_by_name (gimp->palette_factory->container, name);
144
if (palette && GIMP_DATA (palette)->writable)
145
gimp_object_set_name (GIMP_OBJECT (palette), new_name);
150
if (palette && GIMP_DATA (palette)->writable && strlen (new_name))
152
gimp_object_set_name (GIMP_OBJECT (palette), new_name);
153
actual_name = g_strdup (gimp_object_get_name (GIMP_OBJECT (palette)));
154
163
$blurb = "Deletes a palette";
155
164
$help = "This procedure deletes a palette";
166
&mitch_pdb_misc('2004', '2.2');
169
{ name => 'name', type => 'string',
170
desc => 'The palette name' }
164
vars => [ 'GimpPalette *palette = NULL' ],
167
palette = (GimpPalette *)
176
GimpPalette *palette = (GimpPalette *)
168
177
gimp_container_get_child_by_name (gimp->palette_factory->container, name);
170
179
if (palette && GIMP_DATA (palette)->deletable)
196
206
includes the name, and the number of colors.
206
{ name => 'num_colors', type => 'int32', no_declare => '1',
207
alias => 'palette->n_colors', void_ret => '1',
208
desc => "The number of colors in the palette" }
212
vars => [ 'GimpPalette *palette = NULL' ],
215
palette = (GimpPalette *)
216
gimp_container_get_child_by_name (gimp->palette_factory->container, name);
218
success = (palette != NULL);
209
&mitch_pdb_misc('2004', '2.2');
212
{ name => 'name', type => 'string',
213
desc => 'The palette name' }
217
{ name => 'num_colors', type => 'int32', void_ret => '1',
218
desc => 'The number of colors in the palette' }
224
GimpPalette *palette = (GimpPalette *)
225
gimp_container_get_child_by_name (gimp->palette_factory->container, name);
228
num_colors = palette->n_colors;
236
sub palette_get_columns {
237
$blurb = "Retrieves the number of columns to use to display this palette";
239
This procedures retrieves the prefered number of columns to use when the
240
palette is being displayed.
243
&neo_pdb_misc('2005', '2.4');
246
{ name => 'name', type => 'string',
247
desc => 'The palette name' }
251
{ name => 'num_columns', type => 'int32',
252
desc => "The number of columns used to display this palette" }
258
GimpPalette *palette = (GimpPalette *)
259
gimp_container_get_child_by_name (gimp->palette_factory->container, name);
262
num_columns = palette->n_columns;
270
sub palette_set_columns {
271
$blurb = "Sets the number of columns to use when displaying the palette";
273
This procedures allows to control how many colors are shown per row when the
274
palette is being displayed. This value can only be changed if the palette
275
is writable. The maximum allowed value is 64.
278
&neo_pdb_misc('2005', '2.4');
281
{ name => 'name', type => 'string',
282
desc => 'The palette name' },
283
{ name => 'columns', type => '0 <= int32 <= 64',
284
desc => "The new number of columns" }
290
GimpPalette *palette = (GimpPalette *)
291
gimp_container_get_child_by_name (gimp->palette_factory->container, name);
293
if (palette && GIMP_DATA (palette)->writable)
294
gimp_palette_set_columns (palette, columns);
229
307
It returns an error if the entry palette does not exist.
310
&mitch_pdb_misc('2004', '2.2');
313
{ name => 'name', type => 'string',
314
desc => 'The palette name' },
236
315
{ name => 'entry_name', type => 'string', null_ok => '1',
237
316
desc => 'The name of the entry' },
238
317
{ name => 'color', type => 'color',
243
322
{ name => 'entry_num', type => 'int32', void_ret => '1',
244
alias => 'entry->position', no_declare => '1',
245
323
desc => 'The index of the added entry' }
249
vars => [ 'GimpPalette *palette = NULL',
250
'GimpPaletteEntry *entry = NULL' ],
253
palette = (GimpPalette *)
329
GimpPalette *palette = (GimpPalette *)
254
330
gimp_container_get_child_by_name (gimp->palette_factory->container, name);
256
332
if (palette && GIMP_DATA (palette)->writable)
257
entry = gimp_palette_add_entry (palette, entry_name, &color);
334
GimpPaletteEntry *entry =
335
gimp_palette_add_entry (palette, -1, entry_name, &color);
337
entry_num = entry->position;
270
351
It returns an error if the entry palette does not exist.
354
&mitch_pdb_misc('2004', '2.2');
357
{ name => 'name', type => 'string',
358
desc => 'The palette name' },
277
359
{ name => 'entry_num', type => 'int32',
278
360
desc => 'The index of the added entry' }
282
vars => [ 'GimpPalette *palette = NULL',
283
'GimpPaletteEntry *entry = NULL' ],
286
palette = (GimpPalette *)
366
GimpPalette *palette = (GimpPalette *)
287
367
gimp_container_get_child_by_name (gimp->palette_factory->container, name);
289
369
if (palette && GIMP_DATA (palette)->writable)
291
371
if (entry_num >= 0 && entry_num < palette->n_colors)
293
entry = g_list_nth_data (palette->colors, entry_num);
373
GimpPaletteEntry *entry = g_list_nth_data (palette->colors, entry_num);
295
375
gimp_palette_delete_entry (palette, entry);
312
392
specified palette. It returns an error if the entry does not exist.
395
&mitch_pdb_misc('2004', '2.2');
398
{ name => 'name', type => 'string',
399
desc => 'The palette name' },
319
400
{ name => 'entry_num', type => 'int32',
320
401
desc => 'The entry to retrieve' }
329
vars => [ 'GimpPalette *palette = NULL',
330
'GimpPaletteEntry *entry = NULL' ],
333
palette = (GimpPalette *)
412
GimpPalette *palette = (GimpPalette *)
334
413
gimp_container_get_child_by_name (gimp->palette_factory->container, name);
338
417
if (entry_num >= 0 && entry_num < palette->n_colors)
340
entry = g_list_nth_data (palette->colors, entry_num);
419
GimpPaletteEntry *entry = g_list_nth_data (palette->colors, entry_num);
342
421
color = entry->color;
359
438
specified palette. It returns an error if the entry does not exist.
441
&mitch_pdb_misc('2004', '2.2');
444
{ name => 'name', type => 'string',
445
desc => 'The palette name' },
366
446
{ name => 'entry_num', type => 'int32',
367
447
desc => 'The entry to retrieve' },
368
448
{ name => 'color', type => 'color',
373
vars => [ 'GimpPalette *palette = NULL',
374
'GimpPaletteEntry *entry = NULL' ],
377
palette = (GimpPalette *)
455
GimpPalette *palette = (GimpPalette *)
378
456
gimp_container_get_child_by_name (gimp->palette_factory->container, name);
380
458
if (palette && GIMP_DATA (palette)->writable)
382
460
if (entry_num >= 0 && entry_num < palette->n_colors)
384
entry = g_list_nth_data (palette->colors, entry_num);
462
GimpPaletteEntry *entry = g_list_nth_data (palette->colors, entry_num);
386
464
entry->color = color;
405
483
specified palette. It returns an error if the entry does not exist.
486
&mitch_pdb_misc('2004', '2.2');
489
{ name => 'name', type => 'string',
490
desc => 'The palette name' },
412
491
{ name => 'entry_num', type => 'int32',
413
492
desc => 'The entry to retrieve' }
417
496
{ name => 'entry_name', type => 'string', void_ret => 1,
418
no_declare => '1', alias => 'g_strdup (entry->name)',
419
497
desc => 'The name requested' }
423
vars => [ 'GimpPalette *palette = NULL',
424
'GimpPaletteEntry *entry = NULL' ],
427
palette = (GimpPalette *)
503
GimpPalette *palette = (GimpPalette *)
428
504
gimp_container_get_child_by_name (gimp->palette_factory->container, name);
432
508
if (entry_num >= 0 && entry_num < palette->n_colors)
433
entry = g_list_nth_data (palette->colors, entry_num);
510
GimpPaletteEntry *entry = g_list_nth_data (palette->colors, entry_num);
512
entry_name = g_strdup (entry->name);
449
529
specified palette. It returns an error if the entry does not exist.
532
&mitch_pdb_misc('2004', '2.2');
535
{ name => 'name', type => 'string',
536
desc => 'The palette name' },
456
537
{ name => 'entry_num', type => 'int32',
457
538
desc => 'The entry to retrieve' },
458
539
{ name => 'entry_name', type => 'string', null_ok => '1',
463
vars => [ 'GimpPalette *palette = NULL',
464
'GimpPaletteEntry *entry = NULL' ],
467
palette = (GimpPalette *)
546
GimpPalette *palette = (GimpPalette *)
468
547
gimp_container_get_child_by_name (gimp->palette_factory->container, name);
470
549
if (palette && GIMP_DATA (palette)->writable)
472
551
if (entry_num >= 0 && entry_num < palette->n_colors)
474
entry = g_list_nth_data (palette->colors, entry_num);
553
GimpPaletteEntry *entry = g_list_nth_data (palette->colors, entry_num);
476
555
g_free (entry->name);
477
556
entry->name = g_strdup (entry_name);
493
572
"core/gimpdatafactory.h" "core/gimppalette.h");
495
574
@procs = qw(palette_new palette_duplicate palette_rename palette_delete
496
palette_get_info palette_add_entry palette_delete_entry
575
palette_is_editable palette_get_info
576
palette_get_columns palette_set_columns
577
palette_add_entry palette_delete_entry
497
578
palette_entry_get_color palette_entry_set_color
498
579
palette_entry_get_name palette_entry_set_name);
499
581
%exports = (app => [@procs], lib => [@procs]);
501
583
$desc = 'Palette';