Michael Natterer
0d3f719381
app: add gimp_draw_tool_set_widget() and use it in all ported tools
...
which so far manages drawing of the widget's GimpCanvasItem. Remove
GimpDrawTool::draw() implementations from most of the affected tools.
2017-06-26 19:50:31 +02:00
Michael Natterer
87e6de78ad
app: implement the crop tool using GimpToolRectangle
...
GimpRectangleTool users down by one...
2017-06-26 19:19:16 +02:00
Michael Natterer
2f0963589b
app: add gimp_rectangle_options_connect() and _disconnect()
...
and use the new function from GimpRectangleTool. We need this also in
the new GimpToolWidget-base code, so it has to move out of
gimprectangletool.c.
2017-06-26 19:19:16 +02:00
Michael Natterer
00ea73f29a
app: add a generic GimpToolWidget::response() signal
...
and a default key_press() handler that emits CONFIRM, CANCEL and RESET
responses. Remove code with the same purpose from all subclasses.
Change tools feed key_press() to the widget and connect to its
"response" instead of implementing key_press() themselves. This will
only be better and less code after the tool side of this is done
generically.
2017-06-25 23:23:27 +02:00
Michael Natterer
d089aa629b
app: rename enum GimpRectangleToolFixedRule to GimpRectangleFixedRule
2017-06-24 19:48:09 +02:00
Michael Natterer
6e2e8a6f08
app: move the rectangle tool enums from tools-enums to display-enums
2017-06-24 19:48:09 +02:00
Michael Natterer
3d7716aed4
app: use a GimpToolPolygon in GimpFreeSelectTool
2017-06-23 01:59:37 +02:00
Michael Natterer
96b8023091
app: add gimp_image_pick_vectors(), remove gimp_draw_tool_on_vectors()
2017-06-22 11:35:57 +02:00
Michael Natterer
523b73ff04
app: move guide and sample point picking to gimpimage-pick-item.[ch]
...
They are not actually items, but close enough.
2017-06-22 09:43:50 +02:00
Michael Natterer
a72026820f
app: rename gimpimage-pick-layer.[ch] to gimpimage-pick-item.[ch]
2017-06-22 08:17:40 +02:00
Michael Natterer
f7d4bcfe54
app: remove API that is not needed any longer from GimpDrawTool
...
and simplify gimp_draw_tool_on_vectors()'s API.
2017-06-22 01:31:41 +02:00
Michael Natterer
924cb15060
app: add a fill button to the vector tool options, just like stroke
2017-06-22 00:53:59 +02:00
Michael Natterer
8b36164a2a
app: bye bye to 1534 lines of code in GimpVectorTool, use a GimpToolPath
2017-06-21 23:28:07 +02:00
Michael Natterer
3ab92c7290
app: add GimpToolWidget subclass GimpToolPath, a complete vectors editor
2017-06-21 23:27:20 +02:00
Michael Natterer
956477831f
app: some cleanup in GimpTransformTool
...
- add utility function gimp_transform_tool_get_widget()
- reorder some functions
- cleanup in draw()
2017-06-20 00:19:21 +02:00
Michael Natterer
99dee5860d
app: manage GimpHandleTransformTool's handle-mode with an object binding
2017-06-19 23:46:06 +02:00
Michael Natterer
055ca325f2
app: manage the preview opacity with an object binding too
2017-06-19 23:39:37 +02:00
Michael Natterer
9f59657fef
app: also manage all contrain and frompivot properties centrally
...
using g_object_bind_property().
2017-06-19 23:29:01 +02:00
Michael Natterer
0411801765
app: manage the transform tools' grid properties in GimpTransformTool
...
Simply use g_object_bind_property() to connect the grid properties of
GimpTransformOoptions and GimpToolTransformGrid and remove all other
grid property setting code.
2017-06-19 23:06:39 +02:00
Michael Natterer
4b597f9622
app: take the handle transform tool out of the playground
...
It seems proper enough now.
2017-06-19 22:56:07 +02:00
Michael Natterer
96da8c1505
app: add status message to the handle transform tool
...
and fix a few glitches from tool widget porting.
2017-06-19 22:53:30 +02:00
Michael Natterer
8ab11e7c18
app: bring back the live transformed path in GimpTransformTool
2017-06-19 22:13:50 +02:00
Michael Natterer
546bbe1e14
app: add a transform matrix to GimpCanvasPolygon and all API using it
2017-06-19 21:53:49 +02:00
Michael Natterer
2d55978801
app: bring back the live selection transform boundary in GimpTransformTool
2017-06-19 20:51:56 +02:00
Michael Natterer
214a1babdb
app: use a GimpToolTransformGrid in GimpPerspectiveClone
...
and clean up and reorder the code quite a bit.
2017-06-19 20:43:46 +02:00
Michael Natterer
aa1e6c07f5
app: factor out a few lines of code in gimp_transform_tool_draw()
2017-06-19 20:07:10 +02:00
Michael Natterer
f5a6c859d7
app: remove gimp_draw_tool_add_transform_guides()
2017-06-19 08:08:14 +02:00
Michael Natterer
e13d3f1754
app: remove a lot of cruft from GimpTransformTool
...
All tools have a widget now so none of this stuff is needed any longer.
2017-06-19 01:53:01 +02:00
Michael Natterer
38c9ee9e93
app: use a GimpToolHandleGrid in GimpHandleTransformTool
2017-06-19 01:22:13 +02:00
Michael Natterer
6bd316e070
app: add new GimpToolTransformGrid subclass GimpToolHandleGrid
...
which implents the handle transform tool's interaction.
2017-06-19 01:21:06 +02:00
Michael Natterer
6cd91f1fde
app: move the handle transform matrix calculation to gimp-transform-utils.[ch]
2017-06-17 10:03:24 +02:00
Michael Natterer
a5f3808505
app: use the newly added tool widgets in the transform tools
2017-06-17 03:04:06 +02:00
Michael Natterer
ed1798209b
app: use a GimpToolCompass in GimpMeasureTool
2017-06-11 23:44:55 +02:00
Michael Natterer
667435c105
app: some code reordering in gimp_blend_tool_button_press()
2017-06-11 23:41:56 +02:00
Ell
19f5f671d8
app: add "clipping" option to the flip tool
...
This option behaves similarly to the other transform tool, however
it's limited to "adjust" and "clip" only. Now that the flip tool
can reflect across guides, this option is meaningful.
2017-06-11 15:09:46 -04:00
Ell
46b6c4fdd7
app: add support for reflecting across guides to the flip tool
...
When clicking on a guide while using the flip tool, reflect the
active item across the guide, rather than around its center.
2017-06-11 15:09:24 -04:00
Michael Natterer
0eda6b0c9d
app: fix blend tool behavior across multiple displays
...
Don't update the tool widget when hovering another display at the same
coordinates. Also improve statusbar messages.
2017-06-11 18:16:47 +02:00
Ell
09d6f2bad1
app: fix use of NULL canvas item in iscissors tool
...
... when editing an empty segment in interactive mode
2017-06-11 11:27:40 -04:00
Michael Natterer
1f76f04a73
app: use a GimpToolLine in GimpBlendTool
...
removes hundreds of lines of code, and behaves (almost) the same.
2017-06-10 23:54:11 +02:00
Michael Natterer
53a84bc6ea
app: move enums GimpButtonPressType and GimpButtonReleaseType
...
from tools-enums.h to display-enums.h, will need them there soon.
2017-06-10 12:25:16 +02:00
Michael Natterer
b11dec6dc6
app: remove some #includes from gimpfiltertool-settings.c
2017-06-10 12:23:33 +02:00
Michael Natterer
d45fd4041d
app: remove GimpFilterOptions' "settings" property
...
it was never used, only set, and these days we remember dialog
defaults differently anyway.
2017-06-08 22:28:50 +02:00
Michael Natterer
4f4d6b27cf
app: register the "settings folder" (e.g. GIMPDIR/curves) with the settings type
...
and remove all settings_folder API and values from GimpFilterTool and
its subclasses.
2017-06-05 22:00:17 +02:00
Michael Natterer
109f23af39
app: replace the hue-saturation tool by a generic filter action
...
Move the GUI to a custom gimppropgui function.
2017-06-05 18:35:05 +02:00
Michael Natterer
757ca64e58
app: replace the color balance tool by a generic filter action
...
Move the color balance GUI to a custom gimppropgui function.
2017-06-05 01:20:37 +02:00
Michael Natterer
ecfec4103b
app: remove the colorize tool and replace it by a generic filter action
2017-06-04 21:21:43 +02:00
Ell
3ca48a0b30
enums: don't use comments in generated enum recipes
...
Works in bash, but apparently not portable.
2017-06-02 11:15:43 -04:00
Ell
14bcde2c73
app: small code reorganization in the curves tool
...
Move gimp_curves_tool_color_picked() to match its prototype's
position, per commit f876f3b5f4
.
2017-05-31 08:47:23 -04:00
Ell
ff91bb1b5b
app: fix unused variable warning in warp tool
...
... due to commit 7136f09f0a
2017-05-30 20:11:37 -04:00
Ell
7136f09f0a
app, cursors: add a cursor for the warp tool
...
... and use it instead of the perspective tool cursor.
Disable the cursor modifiers for now, since they're not really
meaningful.
2017-05-30 19:27:05 -04:00