[Bf-blender-cvs] [bff8950] temp_widgets_c++_experiment: Move widget-group keymap to wm_operators.c

Julian Eisel noreply at git.blender.org
Wed Dec 23 22:09:44 CET 2015


Commit: bff8950595608cb25eacf361951efd7ea774a1ee
Author: Julian Eisel
Date:   Wed Dec 23 22:06:24 2015 +0100
Branches: temp_widgets_c++_experiment
https://developer.blender.org/rBbff8950595608cb25eacf361951efd7ea774a1ee

Move widget-group keymap to wm_operators.c

===================================================================

M	source/blender/windowmanager/intern/wm_operators.c
M	source/blender/windowmanager/intern/wm_widgets.c
M	source/blender/windowmanager/wm.h

===================================================================

diff --git a/source/blender/windowmanager/intern/wm_operators.c b/source/blender/windowmanager/intern/wm_operators.c
index 8f4c42e..78c637c 100644
--- a/source/blender/windowmanager/intern/wm_operators.c
+++ b/source/blender/windowmanager/intern/wm_operators.c
@@ -5316,7 +5316,6 @@ static void WM_OT_widget_select(wmOperatorType *ot)
 	ot->flag = OPTYPE_UNDO;
 
 	WM_operator_properties_mouse_select(ot);
-	fix_linking_widgets();
 }
 
 typedef struct WidgetTweakData {
@@ -5697,6 +5696,72 @@ static void gesture_zoom_border_modal_keymap(wmKeyConfig *keyconf)
 	WM_modalkeymap_assign(keymap, "VIEW3D_OT_zoom_border");
 }
 
+static wmKeyMap *widgetgroup_tweak_modal_keymap(wmKeyConfig *keyconf, const char *wgroupname)
+{
+	wmKeyMap *keymap;
+	char name[MAX_NAME];
+
+	static EnumPropertyItem modal_items[] = {
+		{WIDGET_TWEAK_MODAL_CANCEL, "CANCEL", 0, "Cancel", ""},
+		{WIDGET_TWEAK_MODAL_CONFIRM, "CONFIRM", 0, "Confirm", ""},
+		{WIDGET_TWEAK_MODAL_PRECISION_ON, "PRECISION_ON", 0, "Enable Precision", ""},
+		{WIDGET_TWEAK_MODAL_PRECISION_OFF, "PRECISION_OFF", 0, "Disable Precision", ""},
+		{0, NULL, 0, NULL, NULL}
+	};
+
+
+	BLI_snprintf(name, sizeof(name), "%s Tweak Modal Map", wgroupname);
+	keymap = WM_modalkeymap_get(keyconf, name);
+
+	/* this function is called for each spacetype, only needs to add map once */
+	if (keymap && keymap->modal_items)
+		return NULL;
+
+	keymap = WM_modalkeymap_add(keyconf, name, modal_items);
+
+
+	/* items for modal map */
+	WM_modalkeymap_add_item(keymap, ESCKEY, KM_PRESS, KM_ANY, 0, WIDGET_TWEAK_MODAL_CANCEL);
+	WM_modalkeymap_add_item(keymap, RIGHTMOUSE, KM_PRESS, KM_ANY, 0, WIDGET_TWEAK_MODAL_CANCEL);
+
+	WM_modalkeymap_add_item(keymap, RETKEY, KM_PRESS, KM_ANY, 0, WIDGET_TWEAK_MODAL_CONFIRM);
+	WM_modalkeymap_add_item(keymap, PADENTER, KM_PRESS, KM_ANY, 0, WIDGET_TWEAK_MODAL_CONFIRM);
+
+	WM_modalkeymap_add_item(keymap, RIGHTSHIFTKEY, KM_PRESS, KM_ANY, 0, WIDGET_TWEAK_MODAL_PRECISION_ON);
+	WM_modalkeymap_add_item(keymap, RIGHTSHIFTKEY, KM_RELEASE, KM_ANY, 0, WIDGET_TWEAK_MODAL_PRECISION_OFF);
+	WM_modalkeymap_add_item(keymap, LEFTSHIFTKEY, KM_PRESS, KM_ANY, 0, WIDGET_TWEAK_MODAL_PRECISION_ON);
+	WM_modalkeymap_add_item(keymap, LEFTSHIFTKEY, KM_RELEASE, KM_ANY, 0, WIDGET_TWEAK_MODAL_PRECISION_OFF);
+
+
+	WM_modalkeymap_assign(keymap, "WM_OT_widget_tweak");
+
+	return keymap;
+}
+
+/**
+ * Common default keymap for widget groups
+ */
+wmKeyMap *WM_widgetgroup_keymap_common(wmKeyConfig *config, const char *wgroupname)
+{
+	wmKeyMap *km = WM_keymap_find(config, wgroupname, 0, 0);
+	wmKeyMapItem *kmi;
+
+	WM_keymap_add_item(km, "WM_OT_widget_tweak", ACTIONMOUSE, KM_PRESS, KM_ANY, 0);
+
+	widgetgroup_tweak_modal_keymap(config, wgroupname);
+
+	kmi = WM_keymap_add_item(km, "WM_OT_widget_select", SELECTMOUSE, KM_PRESS, 0, 0);
+	RNA_boolean_set(kmi->ptr, "extend", false);
+	RNA_boolean_set(kmi->ptr, "deselect", false);
+	RNA_boolean_set(kmi->ptr, "toggle", false);
+	kmi = WM_keymap_add_item(km, "WM_OT_widget_select", SELECTMOUSE, KM_PRESS, KM_SHIFT, 0);
+	RNA_boolean_set(kmi->ptr, "extend", false);
+	RNA_boolean_set(kmi->ptr, "deselect", false);
+	RNA_boolean_set(kmi->ptr, "toggle", true);
+
+	return km;
+}
+
 /* default keymap for windows and screens, only call once per WM */
 void wm_window_keymap(wmKeyConfig *keyconf)
 {
diff --git a/source/blender/windowmanager/intern/wm_widgets.c b/source/blender/windowmanager/intern/wm_widgets.c
index a80ff20..58fe9b5 100644
--- a/source/blender/windowmanager/intern/wm_widgets.c
+++ b/source/blender/windowmanager/intern/wm_widgets.c
@@ -74,74 +74,3 @@
 #include "BPY_extern.h"
 
 
-static wmKeyMap *widgetgroup_tweak_modal_keymap(wmKeyConfig *keyconf, const char *wgroupname)
-{
-	wmKeyMap *keymap;
-	char name[MAX_NAME];
-
-	static EnumPropertyItem modal_items[] = {
-		{WIDGET_TWEAK_MODAL_CANCEL, "CANCEL", 0, "Cancel", ""},
-		{WIDGET_TWEAK_MODAL_CONFIRM, "CONFIRM", 0, "Confirm", ""},
-		{WIDGET_TWEAK_MODAL_PRECISION_ON, "PRECISION_ON", 0, "Enable Precision", ""},
-		{WIDGET_TWEAK_MODAL_PRECISION_OFF, "PRECISION_OFF", 0, "Disable Precision", ""},
-		{0, NULL, 0, NULL, NULL}
-	};
-
-
-	BLI_snprintf(name, sizeof(name), "%s Tweak Modal Map", wgroupname);
-	keymap = WM_modalkeymap_get(keyconf, name);
-
-	/* this function is called for each spacetype, only needs to add map once */
-	if (keymap && keymap->modal_items)
-		return NULL;
-
-	keymap = WM_modalkeymap_add(keyconf, name, modal_items);
-
-
-	/* items for modal map */
-	WM_modalkeymap_add_item(keymap, ESCKEY, KM_PRESS, KM_ANY, 0, WIDGET_TWEAK_MODAL_CANCEL);
-	WM_modalkeymap_add_item(keymap, RIGHTMOUSE, KM_PRESS, KM_ANY, 0, WIDGET_TWEAK_MODAL_CANCEL);
-
-	WM_modalkeymap_add_item(keymap, RETKEY, KM_PRESS, KM_ANY, 0, WIDGET_TWEAK_MODAL_CONFIRM);
-	WM_modalkeymap_add_item(keymap, PADENTER, KM_PRESS, KM_ANY, 0, WIDGET_TWEAK_MODAL_CONFIRM);
-
-	WM_modalkeymap_add_item(keymap, RIGHTSHIFTKEY, KM_PRESS, KM_ANY, 0, WIDGET_TWEAK_MODAL_PRECISION_ON);
-	WM_modalkeymap_add_item(keymap, RIGHTSHIFTKEY, KM_RELEASE, KM_ANY, 0, WIDGET_TWEAK_MODAL_PRECISION_OFF);
-	WM_modalkeymap_add_item(keymap, LEFTSHIFTKEY, KM_PRESS, KM_ANY, 0, WIDGET_TWEAK_MODAL_PRECISION_ON);
-	WM_modalkeymap_add_item(keymap, LEFTSHIFTKEY, KM_RELEASE, KM_ANY, 0, WIDGET_TWEAK_MODAL_PRECISION_OFF);
-
-
-	WM_modalkeymap_assign(keymap, "WM_OT_widget_tweak");
-
-	return keymap;
-}
-
-/**
- * Common default keymap for widget groups
- */
-wmKeyMap *WM_widgetgroup_keymap_common(wmKeyConfig *config, const char *wgroupname)
-{
-	wmKeyMap *km = WM_keymap_find(config, wgroupname, 0, 0);
-	wmKeyMapItem *kmi;
-
-	WM_keymap_add_item(km, "WM_OT_widget_tweak", ACTIONMOUSE, KM_PRESS, KM_ANY, 0);
-
-	widgetgroup_tweak_modal_keymap(config, wgroupname);
-
-	kmi = WM_keymap_add_item(km, "WM_OT_widget_select", SELECTMOUSE, KM_PRESS, 0, 0);
-	RNA_boolean_set(kmi->ptr, "extend", false);
-	RNA_boolean_set(kmi->ptr, "deselect", false);
-	RNA_boolean_set(kmi->ptr, "toggle", false);
-	kmi = WM_keymap_add_item(km, "WM_OT_widget_select", SELECTMOUSE, KM_PRESS, KM_SHIFT, 0);
-	RNA_boolean_set(kmi->ptr, "extend", false);
-	RNA_boolean_set(kmi->ptr, "deselect", false);
-	RNA_boolean_set(kmi->ptr, "toggle", true);
-
-	return km;
-}
-
-void fix_linking_widgets(void)
-{
-	(void)0;
-}
-
diff --git a/source/blender/windowmanager/wm.h b/source/blender/windowmanager/wm.h
index 9e5c44c..ff80fc5 100644
--- a/source/blender/windowmanager/wm.h
+++ b/source/blender/windowmanager/wm.h
@@ -171,9 +171,6 @@ void wm_stereo3d_set_cancel(bContext *C, wmOperator *op);
 void wm_open_init_load_ui(wmOperator *op, bool use_prefs);
 void wm_open_init_use_scripts(wmOperator *op, bool use_prefs);
 
-/* wm_widgets.c */
-void fix_linking_widgets(void);
-
 
 /* hack to store circle select size - campbell, must replace with nice operator memory */
 #define GESTURE_MEMORY




More information about the Bf-blender-cvs mailing list