app: in GimpDrawTool, update widget on tool resume
In GimpDrawTool, update the tool widget on GIMP_TOOL_ACTION_RESUME,
so that it can respond to changes in the display-shell scale/
offset. We'd previously done that for individual tools/widgets,
but let's just do it in one place.
(cherry picked from commit c73710e410
)
This commit is contained in:
@ -297,20 +297,12 @@ gimp_tool_compass_constructed (GObject *object)
|
||||
{
|
||||
GimpToolCompass *compass = GIMP_TOOL_COMPASS (object);
|
||||
GimpToolWidget *widget = GIMP_TOOL_WIDGET (object);
|
||||
GimpDisplayShell *shell = gimp_tool_widget_get_shell (widget);
|
||||
GimpToolCompassPrivate *private = compass->private;
|
||||
GimpCanvasGroup *stroke_group;
|
||||
gint i;
|
||||
|
||||
G_OBJECT_CLASS (parent_class)->constructed (object);
|
||||
|
||||
g_signal_connect_object (shell, "scaled",
|
||||
G_CALLBACK (gimp_tool_compass_changed),
|
||||
compass, G_CONNECT_SWAPPED);
|
||||
g_signal_connect_object (shell, "rotated",
|
||||
G_CALLBACK (gimp_tool_compass_changed),
|
||||
compass, G_CONNECT_SWAPPED);
|
||||
|
||||
stroke_group = gimp_tool_widget_add_stroke_group (widget);
|
||||
|
||||
gimp_tool_widget_push_group (widget, stroke_group);
|
||||
|
@ -806,10 +806,6 @@ gimp_tool_rectangle_constructed (GObject *object)
|
||||
gimp_canvas_item_set_highlight (private->highlight_handles[i], TRUE);
|
||||
}
|
||||
|
||||
g_signal_connect_object (gimp_tool_widget_get_shell (widget), "scaled",
|
||||
G_CALLBACK (gimp_tool_rectangle_changed),
|
||||
widget, G_CONNECT_SWAPPED);
|
||||
|
||||
gimp_tool_rectangle_changed (widget);
|
||||
}
|
||||
|
||||
|
@ -217,7 +217,11 @@ gimp_draw_tool_control (GimpTool *tool,
|
||||
switch (action)
|
||||
{
|
||||
case GIMP_TOOL_ACTION_PAUSE:
|
||||
break;
|
||||
|
||||
case GIMP_TOOL_ACTION_RESUME:
|
||||
if (draw_tool->widget)
|
||||
gimp_tool_widget_changed (draw_tool->widget);
|
||||
break;
|
||||
|
||||
case GIMP_TOOL_ACTION_HALT:
|
||||
|
@ -315,12 +315,7 @@ gimp_perspective_clone_tool_control (GimpTool *tool,
|
||||
switch (action)
|
||||
{
|
||||
case GIMP_TOOL_ACTION_PAUSE:
|
||||
break;
|
||||
|
||||
case GIMP_TOOL_ACTION_RESUME:
|
||||
/* only in the case that "Modify Polygon" mode is set " */
|
||||
gimp_perspective_clone_tool_bounds (clone_tool, display);
|
||||
gimp_perspective_clone_tool_recalc_matrix (clone_tool, clone_tool->widget);
|
||||
break;
|
||||
|
||||
case GIMP_TOOL_ACTION_HALT:
|
||||
|
@ -404,16 +404,12 @@ gimp_transform_grid_tool_control (GimpTool *tool,
|
||||
GimpToolAction action,
|
||||
GimpDisplay *display)
|
||||
{
|
||||
GimpTransformTool *tr_tool = GIMP_TRANSFORM_TOOL (tool);
|
||||
GimpTransformGridTool *tg_tool = GIMP_TRANSFORM_GRID_TOOL (tool);
|
||||
|
||||
switch (action)
|
||||
{
|
||||
case GIMP_TOOL_ACTION_PAUSE:
|
||||
break;
|
||||
|
||||
case GIMP_TOOL_ACTION_RESUME:
|
||||
gimp_transform_tool_recalc_matrix (tr_tool, display);
|
||||
break;
|
||||
|
||||
case GIMP_TOOL_ACTION_HALT:
|
||||
|
@ -129,8 +129,6 @@ gimp_transform_tool_control (GimpTool *tool,
|
||||
switch (action)
|
||||
{
|
||||
case GIMP_TOOL_ACTION_PAUSE:
|
||||
break;
|
||||
|
||||
case GIMP_TOOL_ACTION_RESUME:
|
||||
break;
|
||||
|
||||
|
Reference in New Issue
Block a user