2 * ***** BEGIN GPL LICENSE BLOCK *****
4 * This program is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU General Public License
6 * as published by the Free Software Foundation; either version 2
7 * of the License, or (at your option) any later version.
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
14 * You should have received a copy of the GNU General Public License
15 * along with this program; if not, write to the Free Software Foundation,
16 * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
18 * The Original Code is Copyright (C) 2008 Blender Foundation.
19 * All rights reserved.
22 * Contributor(s): Blender Foundation
24 * ***** END GPL LICENSE BLOCK *****
27 /** \file blender/editors/space_action/action_intern.h
31 #ifndef __ACTION_INTERN_H__
32 #define __ACTION_INTERN_H__
40 struct wmOperatorType;
42 /* internal exports only */
44 /* **************************************** */
45 /* space_action.c / action_buttons.c */
47 struct ARegion *action_has_buttons_region(struct ScrArea *sa);
49 void action_buttons_register(struct ARegionType *art);
50 void ACTION_OT_properties(struct wmOperatorType *ot);
52 /* ***************************************** */
54 void draw_channel_names(struct bContext *C, struct bAnimContext *ac, struct ARegion *ar);
55 void draw_channel_strips(struct bAnimContext *ac, struct SpaceAction *saction, struct ARegion *ar);
57 /* ***************************************** */
60 void ACTION_OT_select_all_toggle(struct wmOperatorType *ot);
61 void ACTION_OT_select_border(struct wmOperatorType *ot);
62 void ACTION_OT_select_lasso(struct wmOperatorType *ot);
63 void ACTION_OT_select_circle(struct wmOperatorType *ot);
64 void ACTION_OT_select_column(struct wmOperatorType *ot);
65 void ACTION_OT_select_linked(struct wmOperatorType *ot);
66 void ACTION_OT_select_more(struct wmOperatorType *ot);
67 void ACTION_OT_select_less(struct wmOperatorType *ot);
68 void ACTION_OT_select_leftright(struct wmOperatorType *ot);
69 void ACTION_OT_clickselect(struct wmOperatorType *ot);
71 /* defines for left-right select tool */
72 enum eActKeys_LeftRightSelect_Mode {
73 ACTKEYS_LRSEL_TEST = 0,
78 /* defines for column-select mode */
79 enum eActKeys_ColumnSelect_Mode {
80 ACTKEYS_COLUMNSEL_KEYS = 0,
81 ACTKEYS_COLUMNSEL_CFRA,
82 ACTKEYS_COLUMNSEL_MARKERS_COLUMN,
83 ACTKEYS_COLUMNSEL_MARKERS_BETWEEN,
86 /* ***************************************** */
89 void ACTION_OT_previewrange_set(struct wmOperatorType *ot);
90 void ACTION_OT_view_all(struct wmOperatorType *ot);
91 void ACTION_OT_view_selected(struct wmOperatorType *ot);
92 void ACTION_OT_view_frame(struct wmOperatorType *ot);
94 void ACTION_OT_copy(struct wmOperatorType *ot);
95 void ACTION_OT_paste(struct wmOperatorType *ot);
97 void ACTION_OT_keyframe_insert(struct wmOperatorType *ot);
98 void ACTION_OT_duplicate(struct wmOperatorType *ot);
99 void ACTION_OT_delete(struct wmOperatorType *ot);
100 void ACTION_OT_clean(struct wmOperatorType *ot);
101 void ACTION_OT_sample(struct wmOperatorType *ot);
103 void ACTION_OT_keyframe_type(struct wmOperatorType *ot);
104 void ACTION_OT_handle_type(struct wmOperatorType *ot);
105 void ACTION_OT_interpolation_type(struct wmOperatorType *ot);
106 void ACTION_OT_extrapolation_type(struct wmOperatorType *ot);
108 void ACTION_OT_frame_jump(struct wmOperatorType *ot);
110 void ACTION_OT_snap(struct wmOperatorType *ot);
111 void ACTION_OT_mirror(struct wmOperatorType *ot);
113 void ACTION_OT_new(struct wmOperatorType *ot);
114 void ACTION_OT_unlink(struct wmOperatorType *ot);
116 void ACTION_OT_push_down(struct wmOperatorType *ot);
117 void ACTION_OT_stash(struct wmOperatorType *ot);
118 void ACTION_OT_stash_and_create(struct wmOperatorType *ot);
120 void ACTION_OT_layer_next(struct wmOperatorType *ot);
121 void ACTION_OT_layer_prev(struct wmOperatorType *ot);
123 void ACTION_OT_markers_make_local(struct wmOperatorType *ot);
125 /* defines for snap keyframes
126 * NOTE: keep in sync with eEditKeyframes_Snap (in ED_keyframes_edit.h)
128 enum eActKeys_Snap_Mode {
129 ACTKEYS_SNAP_CFRA = 1,
130 ACTKEYS_SNAP_NEAREST_FRAME,
131 ACTKEYS_SNAP_NEAREST_SECOND,
132 ACTKEYS_SNAP_NEAREST_MARKER,
135 /* defines for mirror keyframes
136 * NOTE: keep in sync with eEditKeyframes_Mirror (in ED_keyframes_edit.h)
138 enum eActKeys_Mirror_Mode {
139 ACTKEYS_MIRROR_CFRA = 1,
140 ACTKEYS_MIRROR_YAXIS,
141 ACTKEYS_MIRROR_XAXIS,
142 ACTKEYS_MIRROR_MARKER,
145 /* ***************************************** */
147 void action_operatortypes(void);
148 void action_keymap(struct wmKeyConfig *keyconf);
150 #endif /* __ACTION_INTERN_H__ */