diff options
Diffstat (limited to 'source/blender/makesdna/DNA_curve_types.h')
-rw-r--r-- | source/blender/makesdna/DNA_curve_types.h | 44 |
1 files changed, 32 insertions, 12 deletions
diff --git a/source/blender/makesdna/DNA_curve_types.h b/source/blender/makesdna/DNA_curve_types.h index 82418899172..8537b703c69 100644 --- a/source/blender/makesdna/DNA_curve_types.h +++ b/source/blender/makesdna/DNA_curve_types.h @@ -48,6 +48,7 @@ struct VFont; struct AnimData; struct SelBox; struct EditFont; +struct GHash; /* These two Lines with # tell makesdna this struct can be excluded. */ # @@ -55,7 +56,7 @@ struct EditFont; typedef struct PathPoint { float vec[4]; /* grr, cant get rid of tilt yet */ float quat[4]; - float radius; + float radius, weight; } PathPoint; /* These two Lines with # tell makesdna this struct can be excluded. */ @@ -80,7 +81,7 @@ typedef struct BevList { # # typedef struct BevPoint { - float vec[3], alfa, radius; + float vec[3], alfa, radius, weight; float sina, cosa; /* 2D Only */ float dir[3], tan[3], quat[4]; /* 3D Only */ short split_tag, dupe_tag; @@ -150,6 +151,19 @@ typedef struct TextBox { float x, y, w, h; } TextBox; +typedef struct EditNurb { + /* base of nurbs' list (old Curve->editnurb) */ + ListBase nurbs; + + /* index data for shape keys */ + struct GHash *keyindex; + + /* shape key being edited */ + int shapenr; + + char pad[4]; +} EditNurb; + typedef struct Curve { ID id; struct AnimData *adt; /* animation data (must be immediately after id for utilities to use it) */ @@ -159,7 +173,7 @@ typedef struct Curve { ListBase nurb; /* actual data, called splines in rna */ ListBase disp; - ListBase *editnurb; /* edited data, not in file, use pointer so we can check for it */ + EditNurb *editnurb; /* edited data, not in file, use pointer so we can check for it */ struct Object *bevobj, *taperobj, *textoncurve; struct Ipo *ipo; // XXX depreceated... old animation system @@ -177,7 +191,7 @@ typedef struct Curve { short texflag, pad1; /* keep a short because of give_obdata_texspace() */ short drawflag, twist_mode, pad[2]; - float twist_smooth, pad2; + float twist_smooth, smallcaps_scale; short pathlen, totcol; short flag, bevresol; @@ -189,8 +203,8 @@ typedef struct Curve { /* edit, index in nurb list */ int actnu; - /* edit, last selected bpoint */ - BPoint *lastselbp; + /* edit, last selected point */ + void *lastsel; /* font part */ short len, lines, pos, spacemode; @@ -236,7 +250,7 @@ typedef struct Curve { #define CU_PATH 8 #define CU_FOLLOW 16 #define CU_UV_ORCO 32 -#define CU_NOPUNOFLIP 64 +#define CU_DEFORM_BOUNDS_OFF 64 #define CU_STRETCH 128 #define CU_OFFS_PATHDIST 256 #define CU_FAST 512 /* Font: no filling inside editmode */ @@ -324,11 +338,17 @@ typedef enum eBezTriple_KeyframeType { /* *************** CHARINFO **************** */ /* flag */ -#define CU_STYLE (1+2) -#define CU_BOLD 1 -#define CU_ITALIC 2 -#define CU_UNDERLINE 4 -#define CU_WRAP 8 /* wordwrap occured here */ +/* note: CU_CHINFO_WRAP and CU_CHINFO_SMALLCAPS_TEST are set dynamically */ +#define CU_CHINFO_BOLD (1<<0) +#define CU_CHINFO_ITALIC (1<<1) +#define CU_CHINFO_UNDERLINE (1<<2) +#define CU_CHINFO_WRAP (1<<3) /* wordwrap occurred here */ +#define CU_CHINFO_SMALLCAPS (1<<4) +#define CU_CHINFO_SMALLCAPS_CHECK (1<<5) /* set at runtime, checks if case switching is needed */ + +/* mixed with KEY_LINEAR but define here since only curve supports */ +#define KEY_CU_EASE 3 + #endif |