void gimp_tool_set_focus_display (GimpTool *tool, GimpDisplay *display) { g_return_if_fail (GIMP_IS_TOOL (tool)); g_return_if_fail (display == NULL || GIMP_IS_DISPLAY (display)); #ifdef DEBUG_FOCUS g_printerr ("%s: tool: %p display: %p focus_display: %p\n", G_STRFUNC, tool, display, tool->focus_display); #endif if (display != tool->focus_display) { if (tool->focus_display) { if (tool->active_modifier_state != 0) gimp_tool_set_active_modifier_state (tool, 0, tool->focus_display); if (tool->modifier_state != 0) gimp_tool_set_modifier_state (tool, 0, tool->focus_display); } tool->focus_display = display; } }
void gimp_tool_set_focus_display (GimpTool *tool, GimpDisplay *display) { g_return_if_fail (GIMP_IS_TOOL (tool)); g_return_if_fail (display == NULL || GIMP_IS_DISPLAY (display)); g_return_if_fail (gimp_tool_control_is_active (tool->control) == FALSE); GIMP_LOG (TOOL_FOCUS, "tool: %p focus_display: %p tool->focus_display: %p", tool, display, tool->focus_display); if (display != tool->focus_display) { if (tool->focus_display) { if (tool->active_modifier_state != 0) { gimp_tool_control_activate (tool->control); gimp_tool_set_active_modifier_state (tool, 0, tool->focus_display); gimp_tool_control_halt (tool->control); } if (tool->modifier_state != 0) gimp_tool_set_modifier_state (tool, 0, tool->focus_display); } tool->focus_display = display; } }
void tool_manager_modifier_state_active (Gimp *gimp, GdkModifierType state, GimpDisplay *display) { GimpToolManager *tool_manager; g_return_if_fail (GIMP_IS_GIMP (gimp)); tool_manager = tool_manager_get (gimp); if (tool_manager->active_tool) { gimp_tool_set_modifier_state (tool_manager->active_tool, state, display); } }