diff options
author | Campbell Barton <ideasman42@gmail.com> | 2009-07-19 04:49:44 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2009-07-19 04:49:44 +0400 |
commit | d7564761c03c560efd33591d47559f889d07bff1 (patch) | |
tree | c0a3deb5ddf55bc637e53c1a038f46d74281eabf /source/blender/editors/space_console/space_console.c | |
parent | ad2e306b09bc1b53446f248d24621476c1eb9093 (diff) |
operator macro playback (run operator reports in the console)
- reports can be selected with RMB, Border (bkey) and (de)select all.
- delete reports (X key)
- run operators in the console (R key)
- copy reports (Ctrl+C), can be pasted in the text editor an run with alt+p
Details
- Added "selected_editable_objects" and "selected_editable_bases" to screen_context.c, use the scene layers, this was needed for duplicate to run outside the 3D view.
- RNA_property_as_string converted an array of 1 into "(num)" need a comma so python sees it as a tuple - "(num,)"
- add flag to reports, use for seletion atm.
opens a new world of context bugs :)
Diffstat (limited to 'source/blender/editors/space_console/space_console.c')
-rw-r--r-- | source/blender/editors/space_console/space_console.c | 29 |
1 files changed, 25 insertions, 4 deletions
diff --git a/source/blender/editors/space_console/space_console.c b/source/blender/editors/space_console/space_console.c index 5551a303ead..763be0392dc 100644 --- a/source/blender/editors/space_console/space_console.c +++ b/source/blender/editors/space_console/space_console.c @@ -203,6 +203,7 @@ static void console_main_area_draw(const bContext *C, ARegion *ar) void console_operatortypes(void) { + /* console_ops.c */ WM_operatortype_append(CONSOLE_OT_move); WM_operatortype_append(CONSOLE_OT_delete); WM_operatortype_append(CONSOLE_OT_insert); @@ -211,14 +212,19 @@ void console_operatortypes(void) WM_operatortype_append(CONSOLE_OT_history_append); WM_operatortype_append(CONSOLE_OT_scrollback_append); - WM_operatortype_append(CONSOLE_OT_clear); WM_operatortype_append(CONSOLE_OT_history_cycle); WM_operatortype_append(CONSOLE_OT_zoom); - /* Dummy, defined in space_console.py */ - WM_operatortype_append(CONSOLE_OT_exec); - WM_operatortype_append(CONSOLE_OT_autocomplete); + + /* console_report.c */ + WM_operatortype_append(CONSOLE_OT_select_pick); + WM_operatortype_append(CONSOLE_OT_select_all_toggle); + WM_operatortype_append(CONSOLE_OT_select_border); + + WM_operatortype_append(CONSOLE_OT_report_replay); + WM_operatortype_append(CONSOLE_OT_report_delete); + WM_operatortype_append(CONSOLE_OT_report_copy); } void console_keymap(struct wmWindowManager *wm) @@ -275,6 +281,21 @@ void console_keymap(struct wmWindowManager *wm) WM_keymap_add_item(keymap, "CONSOLE_OT_autocomplete", RETKEY, KM_PRESS, KM_CTRL, 0); /* python operator - space_text.py */ #endif + /* report selection */ + WM_keymap_add_item(keymap, "CONSOLE_OT_select_pick", SELECTMOUSE, KM_PRESS, 0, 0); + WM_keymap_add_item(keymap, "CONSOLE_OT_select_all_toggle", AKEY, KM_PRESS, 0, 0); + WM_keymap_add_item(keymap, "CONSOLE_OT_select_border", BKEY, KM_PRESS, 0, 0); + + WM_keymap_add_item(keymap, "CONSOLE_OT_report_replay", RKEY, KM_PRESS, 0, 0); + WM_keymap_add_item(keymap, "CONSOLE_OT_report_delete", XKEY, KM_PRESS, 0, 0); + WM_keymap_add_item(keymap, "CONSOLE_OT_report_delete", DELKEY, KM_PRESS, 0, 0); + WM_keymap_add_item(keymap, "CONSOLE_OT_report_copy", CKEY, KM_PRESS, KM_CTRL, 0); + + + + + + RNA_string_set(WM_keymap_add_item(keymap, "CONSOLE_OT_insert", TABKEY, KM_PRESS, 0, 0)->ptr, "text", " "); /* fake tabs */ WM_keymap_add_item(keymap, "CONSOLE_OT_insert", KM_TEXTINPUT, KM_PRESS, KM_ANY, 0); // last! } |