Action Editor - Code Cleanups:

* I've replaced the long lists of #defines in header_action.c with enums, which should make that easier to maintain/add new items as needed.
* Added a few comments also
This commit is contained in:
2007-08-12 07:30:11 +00:00
parent fb985daf01
commit 33e4972cdb

View File

@@ -30,7 +30,7 @@
* *
* The Original Code is: all of this file. * The Original Code is: all of this file.
* *
* Contributor(s): none yet. * Contributor(s): 2007, Joshua Leung (Action Editor recode)
* *
* ***** END GPL/BL DUAL LICENSE BLOCK ***** * ***** END GPL/BL DUAL LICENSE BLOCK *****
*/ */
@@ -79,80 +79,106 @@
#include "blendef.h" #include "blendef.h"
#include "mydevice.h" #include "mydevice.h"
#define ACTMENU_VIEW_CENTERVIEW 0 /* enums declaring constants that are used as menu event codes */
#define ACTMENU_VIEW_AUTOUPDATE 1
#define ACTMENU_VIEW_PLAY3D 2
#define ACTMENU_VIEW_PLAYALL 3
#define ACTMENU_VIEW_ALL 4
#define ACTMENU_VIEW_MAXIMIZE 5
#define ACTMENU_VIEW_LOCK 6
#define ACTMENU_VIEW_SLIDERS 7
#define ACTMENU_VIEW_NEXTMARKER 8
#define ACTMENU_VIEW_PREVMARKER 9
#define ACTMENU_VIEW_TIME 10
#define ACTMENU_SEL_BORDER 0 enum {
#define ACTMENU_SEL_BORDERM 1 ACTMENU_VIEW_CENTERVIEW= 0,
#define ACTMENU_SEL_ALL_KEYS 2 ACTMENU_VIEW_AUTOUPDATE,
#define ACTMENU_SEL_ALL_CHAN 3 ACTMENU_VIEW_PLAY3D,
#define ACTMENU_SEL_ALL_MARKERS 4 ACTMENU_VIEW_PLAYALL,
#define ACTMENU_SEL_INVERSE_KEYS 5 ACTMENU_VIEW_ALL,
#define ACTMENU_SEL_INVERSE_MARKERS 6 ACTMENU_VIEW_MAXIMIZE,
ACTMENU_VIEW_LOCK,
ACTMENU_VIEW_SLIDERS,
ACTMENU_VIEW_NEXTMARKER,
ACTMENU_VIEW_PREVMARKER,
ACTMENU_VIEW_TIME,
};
#define ACTMENU_SEL_COLUMN_KEYS 1 enum {
#define ACTMENU_SEL_COLUMN_MARKERSCOLUMN 2 ACTMENU_SEL_BORDER = 0,
#define ACTMENU_SEL_COLUMN_MARKERSBETWEEN 3 ACTMENU_SEL_BORDERM,
ACTMENU_SEL_ALL_KEYS,
ACTMENU_SEL_ALL_CHAN,
ACTMENU_SEL_ALL_MARKERS,
ACTMENU_SEL_INVERSE_KEYS,
ACTMENU_SEL_INVERSE_MARKERS
};
#define ACTMENU_KEY_DUPLICATE 0 enum {
#define ACTMENU_KEY_DELETE 1 ACTMENU_SEL_COLUMN_KEYS = 1,
#define ACTMENU_KEY_BAKE 2 ACTMENU_SEL_COLUMN_MARKERSCOLUMN,
#define ACTMENU_KEY_CLEAN 3 ACTMENU_SEL_COLUMN_MARKERSBETWEEN
};
#define ACTMENU_KEY_CHANPOS_MOVE_CHANNEL_UP 0 enum {
#define ACTMENU_KEY_CHANPOS_MOVE_CHANNEL_DOWN 1 ACTMENU_KEY_DUPLICATE = 0,
#define ACTMENU_KEY_CHANPOS_MOVE_CHANNEL_TOP 2 ACTMENU_KEY_DELETE,
#define ACTMENU_KEY_CHANPOS_MOVE_CHANNEL_BOTTOM 3 ACTMENU_KEY_BAKE,
ACTMENU_KEY_CLEAN
};
#define ACTMENU_KEY_TRANSFORM_MOVE 0 enum {
#define ACTMENU_KEY_TRANSFORM_SCALE 1 ACTMENU_KEY_CHANPOS_MOVE_CHANNEL_UP = 0,
#define ACTMENU_KEY_TRANSFORM_SLIDE 2 ACTMENU_KEY_CHANPOS_MOVE_CHANNEL_DOWN,
ACTMENU_KEY_CHANPOS_MOVE_CHANNEL_TOP,
ACTMENU_KEY_CHANPOS_MOVE_CHANNEL_BOTTOM
};
#define ACTMENU_KEY_HANDLE_AUTO 0 enum {
#define ACTMENU_KEY_HANDLE_ALIGN 1 ACTMENU_KEY_TRANSFORM_MOVE = 0,
#define ACTMENU_KEY_HANDLE_FREE 2 ACTMENU_KEY_TRANSFORM_SCALE,
#define ACTMENU_KEY_HANDLE_VECTOR 3 ACTMENU_KEY_TRANSFORM_SLIDE
};
#define ACTMENU_KEY_INTERP_CONST 0 enum {
#define ACTMENU_KEY_INTERP_LINEAR 1 ACTMENU_KEY_HANDLE_AUTO = 0,
#define ACTMENU_KEY_INTERP_BEZIER 2 ACTMENU_KEY_HANDLE_ALIGN,
ACTMENU_KEY_HANDLE_FREE,
ACTMENU_KEY_HANDLE_VECTOR
};
#define ACTMENU_KEY_EXTEND_CONST 0 enum {
#define ACTMENU_KEY_EXTEND_EXTRAPOLATION 1 ACTMENU_KEY_INTERP_CONST = 0,
#define ACTMENU_KEY_EXTEND_CYCLIC 2 ACTMENU_KEY_INTERP_LINEAR,
#define ACTMENU_KEY_EXTEND_CYCLICEXTRAPOLATION 3 ACTMENU_KEY_INTERP_BEZIER
};
#define ACTMENU_KEY_SNAP_NEARFRAME 1 enum {
#define ACTMENU_KEY_SNAP_CURFRAME 2 ACTMENU_KEY_EXTEND_CONST = 0,
#define ACTMENU_KEY_SNAP_NEARMARK 3 ACTMENU_KEY_EXTEND_EXTRAPOLATION,
#define ACTMENU_KEY_SNAP_NEARTIME 4 ACTMENU_KEY_EXTEND_CYCLIC,
ACTMENU_KEY_EXTEND_CYCLICEXTRAPOLATION
};
#define ACTMENU_KEY_MIRROR_CURFRAME 1 enum {
#define ACTMENU_KEY_MIRROR_YAXIS 2 ACTMENU_KEY_SNAP_NEARFRAME = 1,
#define ACTMENU_KEY_MIRROR_XAXIS 3 ACTMENU_KEY_SNAP_CURFRAME,
#define ACTMENU_KEY_MIRROR_MARKER 4 ACTMENU_KEY_SNAP_NEARMARK,
ACTMENU_KEY_SNAP_NEARTIME,
};
#define ACTMENU_MARKERS_ADD 0 enum {
#define ACTMENU_MARKERS_DUPLICATE 1 ACTMENU_KEY_MIRROR_CURFRAME = 1,
#define ACTMENU_MARKERS_DELETE 2 ACTMENU_KEY_MIRROR_YAXIS,
#define ACTMENU_MARKERS_NAME 3 ACTMENU_KEY_MIRROR_XAXIS,
#define ACTMENU_MARKERS_MOVE 4 ACTMENU_KEY_MIRROR_MARKER
};
enum {
ACTMENU_MARKERS_ADD = 0,
ACTMENU_MARKERS_DUPLICATE,
ACTMENU_MARKERS_DELETE,
ACTMENU_MARKERS_NAME,
ACTMENU_MARKERS_MOVE
};
void do_action_buttons(unsigned short event) void do_action_buttons(unsigned short event)
{ {
Object *ob= OBACT; Object *ob= OBACT;
switch(event) { switch(event) {
case B_ACTHOME: case B_ACTHOME: /* HOMEKEY in Action Editor */
/* Find X extents */ /* Find X extents */
G.v2d->cur.xmin = 0; G.v2d->cur.xmin = 0;
G.v2d->cur.ymin=-SCROLLB; G.v2d->cur.ymin=-SCROLLB;
@@ -189,6 +215,8 @@ void do_action_buttons(unsigned short event)
addqueue (curarea->win, REDRAW, 1); addqueue (curarea->win, REDRAW, 1);
break; break;
/* copy/paste/paste-flip buttons in 3d-view header in PoseMode */
case B_ACTCOPY: case B_ACTCOPY:
copy_posebuf(); copy_posebuf();
allqueue(REDRAWVIEW3D, 1); allqueue(REDRAWVIEW3D, 1);