~siretart/ubuntu/utopic/blender/libav10

« back to all changes in this revision

Viewing changes to source/blender/editors/space_action/action_ops.c

  • Committer: Package Import Robot
  • Author(s): Matteo F. Vescovi
  • Date: 2012-07-23 08:54:18 UTC
  • mfrom: (14.2.16 sid)
  • mto: (14.2.19 sid)
  • mto: This revision was merged to the branch mainline in revision 42.
  • Revision ID: package-import@ubuntu.com-20120723085418-9foz30v6afaf5ffs
Tags: 2.63a-2
* debian/: Cycles support added (Closes: #658075)
  For now, this top feature has been enabled only
  on [any-amd64 any-i386] architectures because
  of OpenImageIO failing on all others
* debian/: scripts installation path changed
  from /usr/lib to /usr/share:
  + debian/patches/: patchset re-worked for path changing
  + debian/control: "Breaks" field added on yafaray-exporter

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/**
2
 
 * $Id: action_ops.c 30445 2010-07-17 18:02:10Z campbellbarton $
3
 
 *
 
1
/*
4
2
 * ***** BEGIN GPL LICENSE BLOCK *****
5
3
 *
6
4
 * This program is free software; you can redistribute it and/or
26
24
 * ***** END GPL LICENSE BLOCK *****
27
25
 */
28
26
 
 
27
/** \file blender/editors/space_action/action_ops.c
 
28
 *  \ingroup spaction
 
29
 */
 
30
 
 
31
 
29
32
#include <stdlib.h>
30
33
#include <math.h>
31
34
 
32
 
#include "MEM_guardedalloc.h"
33
35
 
34
36
#include "DNA_space_types.h"
35
37
 
36
38
#include "BLI_blenlib.h"
37
 
 
38
 
#include "BKE_context.h"
39
 
#include "BKE_utildefines.h"
40
 
 
41
 
 
 
39
#include "BLI_utildefines.h"
 
40
 
 
41
#include "ED_anim_api.h"
 
42
#include "ED_markers.h"
42
43
#include "ED_transform.h"
43
44
 
44
45
#include "action_intern.h"
61
62
        WM_operatortype_append(ACTION_OT_select_linked);
62
63
        WM_operatortype_append(ACTION_OT_select_more);
63
64
        WM_operatortype_append(ACTION_OT_select_less);
 
65
        WM_operatortype_append(ACTION_OT_select_leftright);
64
66
        
65
67
                /* editing */
66
68
        WM_operatortype_append(ACTION_OT_snap);
81
83
        
82
84
        WM_operatortype_append(ACTION_OT_previewrange_set);
83
85
        WM_operatortype_append(ACTION_OT_view_all);
 
86
        WM_operatortype_append(ACTION_OT_view_selected);
 
87
        
 
88
        WM_operatortype_append(ACTION_OT_markers_make_local);
 
89
}
 
90
 
 
91
void ED_operatormacros_action(void)
 
92
{
 
93
        wmOperatorType *ot;
 
94
        wmOperatorTypeMacro *otmacro;
 
95
        
 
96
        ot = WM_operatortype_append_macro("ACTION_OT_duplicate_move", "Duplicate", OPTYPE_UNDO|OPTYPE_REGISTER);
 
97
        if (ot) {
 
98
                ot->description = "Make a copy of all selected keyframes and move them";
 
99
                WM_operatortype_macro_define(ot, "ACTION_OT_duplicate");
 
100
                otmacro = WM_operatortype_macro_define(ot, "TRANSFORM_OT_transform");
 
101
                RNA_enum_set(otmacro->ptr, "mode", TFM_TIME_DUPLICATE);
 
102
        }
 
103
        
84
104
}
85
105
 
86
106
/* ************************** registration - keymaps **********************************/
91
111
        
92
112
        /* action_select.c - selection tools */
93
113
                /* click-select */
94
 
        WM_keymap_add_item(keymap, "ACTION_OT_clickselect", SELECTMOUSE, KM_PRESS, 0, 0);
95
 
        kmi= WM_keymap_add_item(keymap, "ACTION_OT_clickselect", SELECTMOUSE, KM_PRESS, KM_ALT, 0);
96
 
                RNA_boolean_set(kmi->ptr, "column", 1);
97
 
        kmi= WM_keymap_add_item(keymap, "ACTION_OT_clickselect", SELECTMOUSE, KM_PRESS, KM_SHIFT, 0);
98
 
                RNA_boolean_set(kmi->ptr, "extend", 1);
99
 
        kmi= WM_keymap_add_item(keymap, "ACTION_OT_clickselect", SELECTMOUSE, KM_PRESS, KM_ALT|KM_SHIFT, 0);
100
 
                RNA_boolean_set(kmi->ptr, "extend", 1);
101
 
                RNA_boolean_set(kmi->ptr, "column", 1);
102
 
        kmi= WM_keymap_add_item(keymap, "ACTION_OT_clickselect", SELECTMOUSE, KM_PRESS, KM_CTRL, 0);
103
 
                RNA_enum_set(kmi->ptr, "left_right", ACTKEYS_LRSEL_TEST);
 
114
        kmi = WM_keymap_add_item(keymap, "ACTION_OT_clickselect", SELECTMOUSE, KM_PRESS, 0, 0);
 
115
                RNA_boolean_set(kmi->ptr, "extend", FALSE);
 
116
                RNA_boolean_set(kmi->ptr, "column", FALSE);
 
117
        kmi = WM_keymap_add_item(keymap, "ACTION_OT_clickselect", SELECTMOUSE, KM_PRESS, KM_ALT, 0);
 
118
                RNA_boolean_set(kmi->ptr, "extend", FALSE);
 
119
                RNA_boolean_set(kmi->ptr, "column", TRUE);
 
120
        kmi = WM_keymap_add_item(keymap, "ACTION_OT_clickselect", SELECTMOUSE, KM_PRESS, KM_SHIFT, 0);
 
121
                RNA_boolean_set(kmi->ptr, "extend", TRUE);
 
122
                RNA_boolean_set(kmi->ptr, "column", FALSE);
 
123
        kmi = WM_keymap_add_item(keymap, "ACTION_OT_clickselect", SELECTMOUSE, KM_PRESS, KM_ALT|KM_SHIFT, 0);
 
124
                RNA_boolean_set(kmi->ptr, "extend", TRUE);
 
125
                RNA_boolean_set(kmi->ptr, "column", TRUE);
 
126
                
 
127
                /* select left/right */
 
128
        kmi = WM_keymap_add_item(keymap, "ACTION_OT_select_leftright", SELECTMOUSE, KM_PRESS, KM_CTRL, 0);
 
129
                RNA_boolean_set(kmi->ptr, "extend", FALSE);
 
130
                RNA_enum_set(kmi->ptr, "mode", ACTKEYS_LRSEL_TEST);
 
131
        kmi = WM_keymap_add_item(keymap, "ACTION_OT_select_leftright", SELECTMOUSE, KM_PRESS, KM_CTRL|KM_SHIFT, 0);
 
132
                RNA_boolean_set(kmi->ptr, "extend", TRUE);
 
133
                RNA_enum_set(kmi->ptr, "mode", ACTKEYS_LRSEL_TEST);
 
134
        
 
135
        kmi = WM_keymap_add_item(keymap, "ACTION_OT_select_leftright", LEFTBRACKETKEY, KM_PRESS, 0, 0);
 
136
                RNA_boolean_set(kmi->ptr, "extend", FALSE);
 
137
                RNA_enum_set(kmi->ptr, "mode", ACTKEYS_LRSEL_LEFT);
 
138
        kmi = WM_keymap_add_item(keymap, "ACTION_OT_select_leftright", RIGHTBRACKETKEY, KM_PRESS, 0, 0);
 
139
                RNA_boolean_set(kmi->ptr, "extend", FALSE);
 
140
                RNA_enum_set(kmi->ptr, "mode", ACTKEYS_LRSEL_RIGHT);
104
141
        
105
142
                /* deselect all */
106
 
        WM_keymap_add_item(keymap, "ACTION_OT_select_all_toggle", AKEY, KM_PRESS, 0, 0);
107
 
        RNA_boolean_set(WM_keymap_add_item(keymap, "ACTION_OT_select_all_toggle", IKEY, KM_PRESS, KM_CTRL, 0)->ptr, "invert", 1);
 
143
        kmi = WM_keymap_add_item(keymap, "ACTION_OT_select_all_toggle", AKEY, KM_PRESS, 0, 0);
 
144
                RNA_boolean_set(kmi->ptr, "invert", FALSE);
 
145
        kmi = WM_keymap_add_item(keymap, "ACTION_OT_select_all_toggle", IKEY, KM_PRESS, KM_CTRL, 0);
 
146
                RNA_boolean_set(kmi->ptr, "invert", TRUE);
108
147
        
109
148
                /* borderselect */
110
 
        WM_keymap_add_item(keymap, "ACTION_OT_select_border", BKEY, KM_PRESS, 0, 0);
111
 
        RNA_boolean_set(WM_keymap_add_item(keymap, "ACTION_OT_select_border", BKEY, KM_PRESS, KM_ALT, 0)->ptr, "axis_range", 1);
 
149
        kmi = WM_keymap_add_item(keymap, "ACTION_OT_select_border", BKEY, KM_PRESS, 0, 0);
 
150
                RNA_boolean_set(kmi->ptr, "axis_range", FALSE);
 
151
        kmi = WM_keymap_add_item(keymap, "ACTION_OT_select_border", BKEY, KM_PRESS, KM_ALT, 0);
 
152
                RNA_boolean_set(kmi->ptr, "axis_range", TRUE);
112
153
        
113
154
                /* column select */
114
155
        RNA_enum_set(WM_keymap_add_item(keymap, "ACTION_OT_select_column", KKEY, KM_PRESS, 0, 0)->ptr, "mode", ACTKEYS_COLUMNSEL_KEYS);
134
175
        WM_keymap_add_item(keymap, "ACTION_OT_mirror", MKEY, KM_PRESS, KM_SHIFT, 0);
135
176
        
136
177
                /* menu + set setting */
137
 
        WM_keymap_add_item(keymap, "ACTION_OT_handle_type", HKEY, KM_PRESS, 0, 0);
138
 
        WM_keymap_add_item(keymap, "ACTION_OT_interpolation_type", TKEY, KM_PRESS, KM_SHIFT, 0);
 
178
        WM_keymap_add_item(keymap, "ACTION_OT_handle_type", VKEY, KM_PRESS, 0, 0);
 
179
        WM_keymap_add_item(keymap, "ACTION_OT_interpolation_type", TKEY, KM_PRESS, 0, 0);
139
180
        WM_keymap_add_item(keymap, "ACTION_OT_extrapolation_type", EKEY, KM_PRESS, KM_SHIFT, 0); 
140
181
        WM_keymap_add_item(keymap, "ACTION_OT_keyframe_type", RKEY, KM_PRESS, 0, 0); 
141
182
        
146
187
        WM_keymap_add_item(keymap, "ACTION_OT_delete", XKEY, KM_PRESS, 0, 0);
147
188
        WM_keymap_add_item(keymap, "ACTION_OT_delete", DELKEY, KM_PRESS, 0, 0);
148
189
        
149
 
        WM_keymap_add_item(keymap, "ACTION_OT_duplicate", DKEY, KM_PRESS, KM_SHIFT, 0);
 
190
        WM_keymap_add_item(keymap, "ACTION_OT_duplicate_move", DKEY, KM_PRESS, KM_SHIFT, 0);
150
191
        WM_keymap_add_item(keymap, "ACTION_OT_keyframe_insert", IKEY, KM_PRESS, 0, 0);
151
192
        
152
193
                /* copy/paste */
156
197
                /* auto-set range */
157
198
        WM_keymap_add_item(keymap, "ACTION_OT_previewrange_set", PKEY, KM_PRESS, KM_CTRL|KM_ALT, 0);
158
199
        WM_keymap_add_item(keymap, "ACTION_OT_view_all", HOMEKEY, KM_PRESS, 0, 0);
 
200
        WM_keymap_add_item(keymap, "ACTION_OT_view_selected", PADPERIOD, KM_PRESS, 0, 0);
159
201
        
160
202
        /* animation module */
161
203
                /* channels list 
165
207
        
166
208
        /* transform system */
167
209
        transform_keymap_for_space(keyconf, keymap, SPACE_ACTION);
 
210
        
 
211
        /* special markers hotkeys for anim editors: see note in definition of this function */
 
212
        ED_marker_keymap_animedit_conflictfree(keymap);
168
213
}
169
214
 
170
215
/* --------------- */
180
225
         */
181
226
        
182
227
        /* keyframes */
183
 
        keymap= WM_keymap_find(keyconf, "Dopesheet", SPACE_ACTION, 0);
 
228
        keymap = WM_keymap_find(keyconf, "Dopesheet", SPACE_ACTION, 0);
184
229
        action_keymap_keyframes(keyconf, keymap);
185
230
}
186
231