static void gimp_foreground_select_tool_control (GimpTool *tool, GimpToolAction action, GimpDisplay *display) { GimpForegroundSelectTool *fg_select = GIMP_FOREGROUND_SELECT_TOOL (tool); switch (action) { case GIMP_TOOL_ACTION_PAUSE: case GIMP_TOOL_ACTION_RESUME: break; case GIMP_TOOL_ACTION_HALT: { gimp_foreground_select_tool_drop_masks (fg_select, display); tool->display = NULL; if (fg_select->gui) gimp_tool_gui_hide (fg_select->gui); } break; } GIMP_TOOL_CLASS (parent_class)->control (tool, action, display); }
static void gimp_image_map_tool_halt (GimpImageMapTool *im_tool) { GimpTool *tool = GIMP_TOOL (im_tool); if (im_tool->gui) gimp_tool_gui_hide (im_tool->gui); if (im_tool->image_map) { gimp_tool_control_push_preserve (tool->control, TRUE); gimp_image_map_abort (im_tool->image_map); g_object_unref (im_tool->image_map); im_tool->image_map = NULL; gimp_tool_control_pop_preserve (tool->control); } tool->drawable = NULL; }
static void gimp_image_map_tool_commit (GimpImageMapTool *im_tool) { GimpTool *tool = GIMP_TOOL (im_tool); if (im_tool->gui) gimp_tool_gui_hide (im_tool->gui); if (im_tool->image_map) { GimpImageMapOptions *options = GIMP_IMAGE_MAP_TOOL_GET_OPTIONS (tool); gimp_tool_control_push_preserve (tool->control, TRUE); if (! options->preview) gimp_image_map_apply (im_tool->image_map, NULL); gimp_image_map_commit (im_tool->image_map, GIMP_PROGRESS (tool), TRUE); g_object_unref (im_tool->image_map); im_tool->image_map = NULL; gimp_tool_control_pop_preserve (tool->control); gimp_image_map_tool_remove_guide (im_tool); gimp_image_flush (gimp_display_get_image (tool->display)); if (im_tool->config && im_tool->settings_box) { GimpGuiConfig *config = GIMP_GUI_CONFIG (tool->tool_info->gimp->config); gimp_settings_box_add_current (GIMP_SETTINGS_BOX (im_tool->settings_box), config->image_map_tool_max_recent); } } tool->display = NULL; tool->drawable = NULL; }
static void gimp_color_picker_tool_control (GimpTool *tool, GimpToolAction action, GimpDisplay *display) { GimpColorPickerTool *picker_tool = GIMP_COLOR_PICKER_TOOL (tool); switch (action) { case GIMP_TOOL_ACTION_PAUSE: case GIMP_TOOL_ACTION_RESUME: break; case GIMP_TOOL_ACTION_HALT: if (picker_tool->gui) gimp_tool_gui_hide (picker_tool->gui); break; case GIMP_TOOL_ACTION_COMMIT: break; } GIMP_TOOL_CLASS (parent_class)->control (tool, action, display); }