Commit Graph

55 Commits

Author SHA1 Message Date
3ac3dcde48 app: add a GParamFlags parameter to gimp_prop_gui_new()
If non-0 flags are passed, create widgets only if the GParamSpec flags
have all the passed flags.
2016-02-06 01:04:40 +01:00
8c09210d7d app: move stuff from GimpOperationTool to GimpImageMapTool
Add new string members to GimpImageMapTool and use them instead of the
resp. fields of GimpToolInfo. Change ::get_operation() to return the
operation name and a lot of strings for the UI, and create both the
GeglNode and the config object in GimpOperationTool. Lots of various
cleanups in GimpImageMapTool subclasses. This is an intermediate state
on the way of making the whole filter applying mechanism more generic
and less depending on subclasses.
2016-01-22 21:28:33 +01:00
39cc3eccd5 app: rename gimp-gegl-config-proxy.[ch] to gimp-gegl-config.[ch]
and rename its functions to make more sense.
2016-01-20 12:18:35 +01:00
06a5b2fa3f app: bring dialog titles and help IDs to GEGL filter dialogs
Add "title" and "help_id" parameters and members/properties to
GimpToolDialog, GimpToolGui, GimpOperationTool. Also make the order of
parameters more consistent.
2016-01-17 20:17:07 +01:00
6541c6b80b app: add icons to the generated gimp-gegl-config-proxy classes 2016-01-16 22:01:07 +01:00
0c784559c8 app: improve the layout of GimpBufferSourceBox
and add a label with the selected pickable's name.
2015-11-30 02:46:22 +01:00
baae27c786 app: note to self: don't push intermediate commits... 2015-11-29 19:56:32 +01:00
6040aa2b97 app: use GimpBufferSourceBox in GimpOperationTool
and support ops with an arbitrary number of aux inputs.
2015-11-29 19:30:58 +01:00
22fc50c279 app: rename all values of enum GimpContextPropMask
from GIMP_CONTEXT_FOO_MASK to GIMP_CONTEXT_PROP_MASK_FOO.
Also rename the FIRST and LAST values of enum GimpContextPropType.
2015-09-08 21:18:49 +02:00
109d568b46 app: remove GimpOperationTool's "config" member
The same object is kept around by the GimpImageMapTool parent class.
2015-04-10 14:10:19 +02:00
960f54360f gimpoperationtool: add support for aux2 input buffer 2014-12-11 08:28:14 +01:00
b200345a98 app: change GimpImageMapTool::get_settings_ui()'s "default_folder" to GFile 2014-07-29 11:56:49 +02:00
9a90bfa26a app: more gimp_directory() -> gimp_directory_file() 2014-07-29 11:56:49 +02:00
8c8135a881 app: port GimpImageMapTool's settings API from filename to GFile 2014-07-01 15:13:02 +02:00
8aa0019c2e app: clean up inclusion of gegl-plugin.h, mostly removals 2014-06-10 03:13:09 +02:00
a06d570748 app: rename gimpproptable.[ch] to gimppropgui.[ch] 2014-05-27 02:15:48 +02:00
bb73acbb15 app: create an empty node with the gegl:nop operation
so we can safely ask for its name (workaround for GEGL warning).
2014-05-24 03:04:26 +02:00
3550132ac7 app: add support for picking GEGL relative-coordinate values
Also, don't link relative coordinates by default, and remove some crap
heuristics that predate property keys.
2014-05-24 01:38:15 +02:00
413846475f app: make GimpOperationTool manage an icon name for the GUI
and add an icon_name parameter to gimp_operation_tool_set_operation().
2014-05-22 23:29:59 +02:00
2df26f7fd8 app: GimpOperationTool: change values for color roles property keys
Foreground and background are GIMP concepts; the annotations on GEGL ops
should be about how the operation makes use of the meta-data; not where
it comes from in one particular application using GEGL.

old names:

"role", "foreground-color",
"role", "background-color",

new names:
"role", "color-primary",
"role", "color-secondary",
2014-05-16 17:05:50 +02:00
befb871b6e app: GimpOperationTool sync the op with drawable/context in reset() 2014-05-16 16:28:24 +02:00
86988e7d67 app: GimpOperationTool: don't crash GimpGeglTool 2014-05-16 08:21:33 +02:00
58b096e02e app: fix x/y copy-paste confusion in last commit 2014-05-16 03:17:08 +02:00
dac7201ead app: follow GEGL propertiy keys convention change
and clean up the magic a bit.
2014-05-16 03:10:01 +02:00
0dd1a4b552 app: sync the op with the drawable/image/gimp in GimpOperationTool
which currently means setting FG/BG color on properties with the
right GEGL property keys, and the output size of source ops.
2014-05-16 02:32:16 +02:00
88e4d7e468 app: commit ongoing tool operations on tool change instead of cancelling
On tool change, we used to simply halt tools before switching to the
new one, which meant losing ongoing live-previewed tool changes, like
transforms, warps and color corrections. This change makes them being
applied to the image instead before switching to the new tool:

Add enum value GIMP_TOOL_ACTION_COMMIT that is passed to
GimpTool::control() before tool switching. Handle the new enum value
in all tools, and actually commit the previewed stuff. This changes
the behavior of GimpCageTool, GimpImageMapTool, GimpTransformTool and
GimpWarpTool.
2014-04-04 22:34:26 +02:00
74c54464c3 app: add a label to GimpOperationTool's aux input button
and don't pack it expanding.
2013-09-17 20:06:37 +02:00
52fe319fcb app: use a GimpPickableButton for GimpOperationTool's aux input
also WIP and currently looks like shit.
2013-09-15 00:37:42 +02:00
28c9470d5f app: fix warning when a gegl op's aux input combo box gets destroyed
gimp_operation_tool_aux_selected() is called with a NULL drawable
when the combo is destroyed, but at that time the GeglNode we set
the buffer on is already gone. Instead of adding evil if()s,
connect_object() the combo's "select-item" signal to the node
instead of the tool, so it gets disconnected automatically.
2013-08-25 22:41:43 +02:00
0fc78cd811 app: don't add the aux input as a child to GimpOperationTool's operation
It turns the operation into a graph, which breaks things.
2013-06-30 19:10:49 +02:00
0e98904f78 app: start supporting composer ops in GimpOperationTool
If the operation has an aux input, add a combo that allows feeding
it one of the image's channels. This is all work in progress and
and should allow to use any drawable of any image.
2013-06-29 01:18:19 +02:00
7947f24bd8 app: make gimp_operation_tool_set_operation() more readable 2013-06-27 23:42:08 +02:00
0afa7d30f0 app: add gimp_tool_gui_set_description() and use it 2013-06-07 17:01:39 +02:00
7abbd38a25 app: use a GimpToolGui in GimpImageMapTool
instead of implementing both dialog types manually.
2013-06-07 10:28:41 +02:00
01ada21ae6 app: add totally evil "heuristic" for picking coords to GimpOperationTool
This can't continue like that, GEGL properties need to be tagged
somehow using gegl_operation_class_set_keys(), as planned.
2013-05-31 22:56:27 +02:00
822057a4ff app: call gimp_color_tool_disable() when an old op's options_table dies
so gimp_image_map_tool_color_picked() isn't called any longer on clicks.
Add a warning there in case it happens anyway because this is always a
programming error.
2013-05-31 02:50:17 +02:00
40a1efef09 app: GimpOperationTool: add support for picking coordinates from the image
gimp_operation_tool_color_picked(): if the picker's identifier is of
the form "param_spec_name:param_spec_name" and the param specs both
exist and are of the same numeric type, set the pick coordinates on
these properties of the operation's config object.
2013-05-30 23:32:54 +02:00
814c47b0b9 app: don't crash on a dangling image_map_tool->active_picker pointer
gimp_operation_tool_set_operation(): set it to NULL when destroying
the previous operation's options_table (if it was non-NULL it was a
widget from that table).
2013-05-30 23:28:26 +02:00
b8558f8859 app: add coordinates to GimpColorTool's and GimpImageMapTool's "picked"
signals and vfuncs. This is currently unused, but GEGL operations
can soon pick coordinates just like they can pick colors.
2013-05-30 19:29:36 +02:00
73d7c28f76 app: add dedicated source files for gimp_prop_table_new() 2013-05-30 16:33:30 +02:00
9072bf331a app: rename GimpImageMapConfig to GimpSettings
It was misnamed from the beginning and has no relation to GimpImageMap
except that it happens to be used by GimpImageMapTools. Now it feels
less weird to potentially use it for other settings too.
2013-05-25 15:26:18 +02:00
b71ffeca60 app: do more stuff generically in gimp_image_map_tool_initialize()
- reset the config object if it exists
- trigger the first preview of the filter
- remove the same stuff from all subclasses
2013-04-16 23:28:02 +02:00
9bb4c3d484 app: pull some GEGL operation logic from subclasses into GimpImageMapTool
- connect to the config object's notify generically and update the preview
- allow to properly exchange the operation at runtime to remove major
  uglyness from GimpOperationTool
- return undo_desc from GimpImageMapTool::get_operation() so we have
  proper strings in the undo history, not always "GEGL operation"
- simplify all get_operation() implementations
2013-04-16 22:06:48 +02:00
e3b2a54da7 app: add a stock_id to GimpImageMap and use it for its filter
Refactor GimpImageMapTool and GimpOperationTool to set the stock_id,
and to be a bit smarter with the image map's undo string.
2013-04-16 20:32:58 +02:00
1e17f0aed1 app: port GimpImageMap to use the new drawable filters
which makes live update more responsive and removes tons of code, but
adds a delay with progress when finally committing the effect.
2013-04-12 14:35:27 +02:00
06a4d2e29f app: have proper titles in the GEGL filter settings import/export dialogs
"Import foo" and "Export foo" were just not good enough...
2013-03-09 20:34:15 +01:00
54778783ed app: make a hack in GimpOperationTool slightly worse, but clearer 2013-03-09 20:27:02 +01:00
5ea928b3df app: use our gtk_box_new() wrapper instead of gtk_vbox_new() 2012-05-04 17:23:17 +02:00
3db9deed1c app: add color pickers to all GEGL tool color properties
The way to make gimp_prop_table_new() create tool pickers is
disgusting, but works.
2012-05-02 17:51:22 +02:00
75f2bc1aac app: resurrect the operation tool's title 2012-05-02 17:50:49 +02:00