Blender  V2.59
action_intern.h
Go to the documentation of this file.
00001 /*
00002  * $Id: action_intern.h 35590 2011-03-17 10:02:37Z aligorith $
00003  *
00004  * ***** BEGIN GPL LICENSE BLOCK *****
00005  *
00006  * This program is free software; you can redistribute it and/or
00007  * modify it under the terms of the GNU General Public License
00008  * as published by the Free Software Foundation; either version 2
00009  * of the License, or (at your option) any later version. 
00010  *
00011  * This program is distributed in the hope that it will be useful,
00012  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00013  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00014  * GNU General Public License for more details.
00015  *
00016  * You should have received a copy of the GNU General Public License
00017  * along with this program; if not, write to the Free Software Foundation,
00018  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
00019  *
00020  * The Original Code is Copyright (C) 2008 Blender Foundation.
00021  * All rights reserved.
00022  *
00023  * 
00024  * Contributor(s): Blender Foundation
00025  *
00026  * ***** END GPL LICENSE BLOCK *****
00027  */
00028 
00033 #ifndef ED_ACTION_INTERN_H
00034 #define ED_ACTION_INTERN_H
00035 
00036 struct bContext;
00037 struct bAnimContext;
00038 struct SpaceAction;
00039 struct ARegion;
00040 struct wmWindowManager;
00041 struct wmOperatorType;
00042 struct ActKeysInc;
00043 struct bAnimListElem;
00044 
00045 /* internal exports only */
00046 
00047 /* ***************************************** */
00048 /* action_draw.c */
00049 void draw_channel_names(struct bContext *C, struct bAnimContext *ac, struct ARegion *ar); 
00050 void draw_channel_strips(struct bAnimContext *ac, struct SpaceAction *saction, struct ARegion *ar);
00051 
00052 struct ActKeysInc *init_aki_data(struct bAnimContext *ac, struct bAnimListElem *ale);
00053 
00054 /* ***************************************** */
00055 /* action_header.c */
00056 void action_header_buttons(const struct bContext *C, struct ARegion *ar);
00057 
00058 /* ***************************************** */
00059 /* action_select.c */
00060 
00061 void ACTION_OT_select_all_toggle(struct wmOperatorType *ot);
00062 void ACTION_OT_select_border(struct wmOperatorType *ot);
00063 void ACTION_OT_select_column(struct wmOperatorType *ot);
00064 void ACTION_OT_select_linked(struct wmOperatorType *ot);
00065 void ACTION_OT_select_more(struct wmOperatorType *ot);
00066 void ACTION_OT_select_less(struct wmOperatorType *ot);
00067 void ACTION_OT_select_leftright(struct wmOperatorType *ot);
00068 void ACTION_OT_clickselect(struct wmOperatorType *ot);
00069 
00070 /* defines for left-right select tool */
00071 enum {
00072         ACTKEYS_LRSEL_TEST      = 0,
00073         ACTKEYS_LRSEL_LEFT,
00074         ACTKEYS_LRSEL_RIGHT
00075 } eActKeys_LeftRightSelect_Mode;
00076 
00077 /* defines for column-select mode */
00078 enum {
00079         ACTKEYS_COLUMNSEL_KEYS  = 0,
00080         ACTKEYS_COLUMNSEL_CFRA,
00081         ACTKEYS_COLUMNSEL_MARKERS_COLUMN,
00082         ACTKEYS_COLUMNSEL_MARKERS_BETWEEN,
00083 } eActKeys_ColumnSelect_Mode;
00084 
00085 /* ***************************************** */
00086 /* action_edit.c */
00087 
00088 void ACTION_OT_previewrange_set(struct wmOperatorType *ot);
00089 void ACTION_OT_view_all(struct wmOperatorType *ot);
00090 void ACTION_OT_view_selected(struct wmOperatorType *ot);
00091 
00092 void ACTION_OT_copy(struct wmOperatorType *ot);
00093 void ACTION_OT_paste(struct wmOperatorType *ot);
00094 
00095 void ACTION_OT_keyframe_insert(struct wmOperatorType *ot);
00096 void ACTION_OT_duplicate(struct wmOperatorType *ot);
00097 void ACTION_OT_delete(struct wmOperatorType *ot);
00098 void ACTION_OT_clean(struct wmOperatorType *ot);
00099 void ACTION_OT_sample(struct wmOperatorType *ot);
00100 
00101 void ACTION_OT_keyframe_type(struct wmOperatorType *ot);
00102 void ACTION_OT_handle_type(struct wmOperatorType *ot);
00103 void ACTION_OT_interpolation_type(struct wmOperatorType *ot);
00104 void ACTION_OT_extrapolation_type(struct wmOperatorType *ot);
00105 
00106 void ACTION_OT_frame_jump(struct wmOperatorType *ot);
00107 
00108 void ACTION_OT_snap(struct wmOperatorType *ot);
00109 void ACTION_OT_mirror(struct wmOperatorType *ot);
00110 
00111 void ACTION_OT_new(struct wmOperatorType *ot);
00112 
00113 void ACTION_OT_markers_make_local(struct wmOperatorType *ot);
00114 
00115 /* defines for snap keyframes 
00116  * NOTE: keep in sync with eEditKeyframes_Snap (in ED_keyframes_edit.h)
00117  */
00118 enum {
00119         ACTKEYS_SNAP_CFRA = 1,
00120         ACTKEYS_SNAP_NEAREST_FRAME,
00121         ACTKEYS_SNAP_NEAREST_SECOND,
00122         ACTKEYS_SNAP_NEAREST_MARKER,    
00123 } eActKeys_Snap_Mode;
00124 
00125 /* defines for mirror keyframes 
00126  * NOTE: keep in sync with eEditKeyframes_Mirror (in ED_keyframes_edit.h)
00127  */
00128 enum {
00129         ACTKEYS_MIRROR_CFRA = 1,
00130         ACTKEYS_MIRROR_YAXIS,
00131         ACTKEYS_MIRROR_XAXIS,
00132         ACTKEYS_MIRROR_MARKER,  
00133 } eActKeys_Mirror_Mode;
00134         
00135 /* ***************************************** */
00136 /* action_ops.c */
00137 void action_operatortypes(void);
00138 void action_keymap(struct wmKeyConfig *keyconf);
00139 
00140 #endif /* ED_ACTION_INTERN_H */
00141