diff options
Diffstat (limited to 'source/blender/makesdna')
63 files changed, 447 insertions, 243 deletions
diff --git a/source/blender/makesdna/CMakeLists.txt b/source/blender/makesdna/CMakeLists.txt index 1f8ab831ba6..cb61082000d 100644 --- a/source/blender/makesdna/CMakeLists.txt +++ b/source/blender/makesdna/CMakeLists.txt @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software Foundation, -# Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. # # The Original Code is Copyright (C) 2006, Blender Foundation # All rights reserved. diff --git a/source/blender/makesdna/DNA_ID.h b/source/blender/makesdna/DNA_ID.h index 8c835dd7ca7..24e1a9f24e9 100644 --- a/source/blender/makesdna/DNA_ID.h +++ b/source/blender/makesdna/DNA_ID.h @@ -19,7 +19,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. @@ -198,6 +198,8 @@ typedef struct PreviewImage { /* fluidsim Ipo */ #define ID_FLUIDSIM MAKE_ID2('F', 'S') +#define ID_REAL_USERS(id) (((ID *)id)->us - ((((ID *)id)->flag & LIB_FAKEUSER) ? 1:0)) + /* id->flag: set frist 8 bits always at zero while reading */ #define LIB_LOCAL 0 #define LIB_EXTERN 1 diff --git a/source/blender/makesdna/DNA_action_types.h b/source/blender/makesdna/DNA_action_types.h index dbc715ba87f..91d3a7901c4 100644 --- a/source/blender/makesdna/DNA_action_types.h +++ b/source/blender/makesdna/DNA_action_types.h @@ -15,7 +15,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. @@ -39,6 +39,7 @@ struct SpaceLink; struct Object; +struct Group; /* ************************************************ */ /* Visualisation */ @@ -441,12 +442,14 @@ typedef enum eActionGroup_Flag { AGRP_ACTIVE = (1<<1), /* keyframes/channels belonging to it cannot be edited */ AGRP_PROTECTED = (1<<2), - /* for UI, sub-channels are shown */ + /* for UI (DopeSheet), sub-channels are shown */ AGRP_EXPANDED = (1<<3), /* sub-channels are not evaluated */ AGRP_MUTED = (1<<4), /* sub-channels are not visible in Graph Editor */ AGRP_NOTVISIBLE = (1<<5), + /* for UI (Graph Editor), sub-channels are shown */ + AGRP_EXPANDED_G = (1<<6), AGRP_TEMP = (1<<30), AGRP_MOVED = (1<<31) @@ -496,11 +499,13 @@ typedef enum eAction_Flags { /* Storage for Dopesheet/Grease-Pencil Editor data */ typedef struct bDopeSheet { - ID *source; /* currently ID_SCE (for Dopesheet), and ID_SC (for Grease Pencil) */ - ListBase chanbase; /* cache for channels (only initialised when pinned) */ // XXX not used! + ID *source; /* currently ID_SCE (for Dopesheet), and ID_SC (for Grease Pencil) */ + ListBase chanbase; /* cache for channels (only initialised when pinned) */ // XXX not used! - int filterflag; /* flags to use for filtering data */ - int flag; /* standard flags */ + struct Group *filter_grp; /* object group for ADS_FILTER_ONLYOBGROUP filtering option */ + + int filterflag; /* flags to use for filtering data */ + int flag; /* standard flags */ } bDopeSheet; @@ -509,15 +514,20 @@ typedef enum eDopeSheet_FilterFlag { /* general filtering */ ADS_FILTER_ONLYSEL = (1<<0), /* only include channels relating to selected data */ - /* temporary (runtime flags) */ + /* temporary filters */ ADS_FILTER_ONLYDRIVERS = (1<<1), /* for 'Drivers' editor - only include Driver data from AnimData */ ADS_FILTER_ONLYNLA = (1<<2), /* for 'NLA' editor - only include NLA data from AnimData */ ADS_FILTER_SELEDIT = (1<<3), /* for Graph Editor - used to indicate whether to include a filtering flag or not */ - ADS_FILTER_SUMMARY = (1<<4), /* for 'DopeSheet' Editor - include 'summary' line */ + + /* general filtering 2 */ + ADS_FILTER_SUMMARY = (1<<4), /* for 'DopeSheet' Editors - include 'summary' line */ + ADS_FILTER_ONLYOBGROUP = (1<<5), /* only the objects in the specified object group get used */ /* datatype-based filtering */ ADS_FILTER_NOSHAPEKEYS = (1<<6), ADS_FILTER_NOMESH = (1<<7), + ADS_FILTER_NOOBJ = (1<<8), /* for animdata on object level, if we only want to concentrate on materials/etc. */ + // NOTE: there are a few more spaces for datablock filtering here... ADS_FILTER_NOCAM = (1<<10), ADS_FILTER_NOMAT = (1<<11), ADS_FILTER_NOLAM = (1<<12), @@ -528,6 +538,7 @@ typedef enum eDopeSheet_FilterFlag { ADS_FILTER_NOMBA = (1<<17), ADS_FILTER_NOARM = (1<<18), ADS_FILTER_NONTREE = (1<<19), + ADS_FILTER_NOTEX = (1<<20), /* NLA-specific filters */ ADS_FILTER_NLA_NOACT = (1<<25), /* if the AnimData block has no NLA data, don't include to just show Action-line */ @@ -558,9 +569,7 @@ typedef struct SpaceAction { bDopeSheet ads; /* the currently active context (when not showing action) */ char mode, autosnap; /* mode: editing context; autosnap: automatic keyframe snapping mode */ - short flag, actnr; /* flag: bitmapped settings; */ - short pin, lock; /* pin: keep showing current action; actnr: used for finding chosen action from menu; lock: lock time to other windows */ - short actwidth; /* width of the left-hand side name panel (in pixels?) */ // XXX depreceated! + short flag; /* flag: bitmapped settings; */ float timeslide; /* for Time-Slide transform mode drawing - current frame? */ } SpaceAction; @@ -568,24 +577,26 @@ typedef struct SpaceAction { typedef enum eSAction_Flag { /* during transform (only set for TimeSlide) */ SACTION_MOVING = (1<<0), - /* show sliders (if relevant) */ + /* show sliders */ SACTION_SLIDERS = (1<<1), /* draw time in seconds instead of time in frames */ SACTION_DRAWTIME = (1<<2), /* don't filter action channels according to visibility */ - SACTION_NOHIDE = (1<<3), + //SACTION_NOHIDE = (1<<3), // XXX depreceated... old animation system /* don't kill overlapping keyframes after transform */ SACTION_NOTRANSKEYCULL = (1<<4), /* don't include keyframes that are out of view */ - SACTION_HORIZOPTIMISEON = (1<<5), + //SACTION_HORIZOPTIMISEON = (1<<5), // XXX depreceated... old irrelevant trick /* hack for moving pose-markers (temp flag) */ SACTION_POSEMARKERS_MOVE = (1<<6), /* don't draw action channels using group colours (where applicable) */ - SACTION_NODRAWGCOLORS = (1<<7), + SACTION_NODRAWGCOLORS = (1<<7), // XXX depreceated... irrelevant for current groups implementation /* don't draw current frame number beside frame indicator */ SACTION_NODRAWCFRANUM = (1<<8), /* temporary flag to force channel selections to be synced with main */ SACTION_TEMP_NEEDCHANSYNC = (1<<9), + /* don't perform realtime updates */ + SACTION_NOREALTIMEUPDATES = (1<<10), } eSAction_Flag; /* SpaceAction Mode Settings */ diff --git a/source/blender/makesdna/DNA_actuator_types.h b/source/blender/makesdna/DNA_actuator_types.h index 58fa38ae159..a59b748945f 100644 --- a/source/blender/makesdna/DNA_actuator_types.h +++ b/source/blender/makesdna/DNA_actuator_types.h @@ -17,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. @@ -50,7 +50,7 @@ typedef struct bAddObjectActuator { typedef struct bActionActuator { struct bAction *act; /* Pointer to action */ - short type, flag; /* Playback type */ + short type, flag; /* Playback type */ // not in use int sta, end; /* Start & End frames */ char name[32]; /* For property-driven playback */ char frameProp[32]; /* Set this property to the actions current frame */ @@ -58,18 +58,18 @@ typedef struct bActionActuator { short priority; /* Execution priority */ short end_reset; /* Ending the actuator (negative pulse) wont reset the the action to its starting frame */ short strideaxis; /* Displacement axis */ - float stridelength; /* Displacement incurred by cycle */ + float stridelength; /* Displacement incurred by cycle */ // not in use } bActionActuator; typedef struct bSoundActuator { short flag, sndnr; - int sta, end; - short pad1[2]; + int pad1, pad2; + short pad3[2]; float volume, pitch; struct bSound *sound; struct Sound3D sound3D; - short type, makecopy; - short copymade, pad2[1]; + short type, pad4; + short pad5, pad6[1]; } bSoundActuator; typedef struct bEditObjectActuator { @@ -86,23 +86,23 @@ typedef struct bEditObjectActuator { } bEditObjectActuator; typedef struct bSceneActuator { - short type, flag; + short type, pad1; int pad; struct Scene *scene; struct Object *camera; } bSceneActuator; typedef struct bPropertyActuator { - int flag, type; + int pad, type; char name[32], value[32]; - struct Object *ob; + struct Object *ob; // not in use anymore } bPropertyActuator; typedef struct bObjectActuator { short flag, type, otype; short damping; float forceloc[3], forcerot[3]; - float loc[3], rot[3]; + float pad[3], pad1[3]; float dloc[3], drot[3]; float linearvelocity[3], angularvelocity[3]; struct Object *reference; @@ -114,16 +114,16 @@ typedef struct bIpoActuator { char name[32]; char frameProp[32]; /* Set this property to the actions current frame */ - short pad1, cur, butsta, butend; + short pad1, pad2, pad3, pad4; } bIpoActuator; typedef struct bCameraActuator { struct Object *ob; float height, min, max; - float fac; - short flag, axis; - float visifac; + float pad; + short pad1, axis; + float pad2; } bCameraActuator ; typedef struct bConstraintActuator { @@ -158,31 +158,12 @@ typedef struct bRandomActuator { } bRandomActuator; typedef struct bMessageActuator { - /** - * Send to all objects with this propertyname. Empty to broadcast. - */ - char toPropName[32]; - - /** - * (Possible future use) pointer to a single destination object. - */ - struct Object *toObject; - - /** - * Message Subject to send. - */ - char subject[32]; - - /** - * bodyType is either 'User defined text' or PropName - */ - short bodyType, pad1; + char toPropName[32]; /* Send to all objects with this propertyname. Empty to broadcast. */ + struct Object *toObject;/* (Possible future use) pointer to a single destination object. */ + char subject[32]; /* Message Subject to send. */ + short bodyType, pad1; /* bodyType is either 'User defined text' or PropName */ int pad2; - - /** - * Either User Defined Text or our PropName to send value of - */ - char body[32]; + char body[32]; /* Either User Defined Text or our PropName to send value of */ } bMessageActuator; typedef struct bGameActuator { @@ -408,7 +389,6 @@ typedef struct FreeCamera { #define ACT_EDOB_LOCAL_LINV 2 #define ACT_EDOB_LOCAL_ANGV 4 - /* editObjectActuator->flag */ #define ACT_TRACK_3D 1 @@ -416,6 +396,14 @@ typedef struct FreeCamera { #define ACT_EDOB_REPLACE_MESH_NOGFX 2 /* use for replace mesh actuator */ #define ACT_EDOB_REPLACE_MESH_PHYS 4 +/* editObjectActuator->dyn_operation */ +#define ACT_EDOB_RESTORE_DYN 0 +#define ACT_EDOB_SUSPEND_DYN 1 +#define ACT_EDOB_ENABLE_RB 2 +#define ACT_EDOB_DISABLE_RB 3 +#define ACT_EDOB_SET_MASS 4 + + /* SceneActuator->type */ #define ACT_SCENE_RESTART 0 #define ACT_SCENE_SET 1 @@ -503,6 +491,12 @@ typedef struct FreeCamera { /* update this define if more type are addedd */ #define ACT_ARM_MAXTYPE 4 +/* stateactuator->type */ +#define ACT_STATE_SET 0 +#define ACT_STATE_ADD 1 +#define ACT_STATE_REMOVE 2 +#define ACT_STATE_CHANGE 3 + #endif diff --git a/source/blender/makesdna/DNA_anim_types.h b/source/blender/makesdna/DNA_anim_types.h index 958add428a4..d2755f71fa3 100644 --- a/source/blender/makesdna/DNA_anim_types.h +++ b/source/blender/makesdna/DNA_anim_types.h @@ -15,7 +15,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2009 Blender Foundation, Joshua Leung * All rights reserved. @@ -294,9 +294,10 @@ typedef struct DriverVar { char name[64]; /* name of the variable to use in py-expression (must be valid python identifier) */ DriverTarget targets[8]; /* MAX_DRIVER_TARGETS, target slots */ - int num_targets; /* number of targets actually used by this variable */ + short num_targets; /* number of targets actually used by this variable */ - int type; /* type of driver target (eDriverTarget_Types) */ + short type; /* type of driver target (eDriverTarget_Types) */ + float curval; /* result of previous evaluation */ } DriverVar; /* Driver Variable Types */ @@ -339,7 +340,7 @@ typedef struct ChannelDriver { char expression[256]; /* expression to compile for evaluation */ void *expr_comp; /* PyObject - compiled expression, dont save this */ - float curval; /* result of previous evaluation, for subtraction from result under certain circumstances */ + float curval; /* result of previous evaluation */ float influence; /* influence of driver on result */ // XXX to be implemented... this is like the constraint influence setting /* general settings */ @@ -374,6 +375,8 @@ typedef enum eDriver_Flags { DRIVER_FLAG_RECOMPILE = (1<<3), /* the names are cached so they dont need have python unicode versions created each time */ DRIVER_FLAG_RENAMEVAR = (1<<4), + /* intermediate values of driver should be shown in the UI for debugging purposes */ + DRIVER_FLAG_SHOWDEBUG = (1<<5), } eDriver_Flags; /* F-Curves -------------------------------------- */ diff --git a/source/blender/makesdna/DNA_armature_types.h b/source/blender/makesdna/DNA_armature_types.h index 010f210d5aa..258646f0e55 100644 --- a/source/blender/makesdna/DNA_armature_types.h +++ b/source/blender/makesdna/DNA_armature_types.h @@ -15,7 +15,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. diff --git a/source/blender/makesdna/DNA_boid_types.h b/source/blender/makesdna/DNA_boid_types.h index 3e5b0829c70..8584b5f99e9 100644 --- a/source/blender/makesdna/DNA_boid_types.h +++ b/source/blender/makesdna/DNA_boid_types.h @@ -17,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2009 by Janne Karhu. * All rights reserved. diff --git a/source/blender/makesdna/DNA_brush_types.h b/source/blender/makesdna/DNA_brush_types.h index 4738b0d81e8..163c8122fb7 100644 --- a/source/blender/makesdna/DNA_brush_types.h +++ b/source/blender/makesdna/DNA_brush_types.h @@ -15,7 +15,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2005 Blender Foundation. * All rights reserved. @@ -65,8 +65,10 @@ typedef struct Brush { float rgb[3]; /* color */ float alpha; /* opacity */ - char sculpt_tool; /* active tool */ - char pad2[3]; + char sculpt_tool; /* active sculpt tool */ + char vertexpaint_tool; /* active vertex/weight paint tool/blend mode */ + char imagepaint_tool; /* active image paint tool */ + char pad2; } Brush; /* Brush.flag */ diff --git a/source/blender/makesdna/DNA_camera_types.h b/source/blender/makesdna/DNA_camera_types.h index 3d839570e17..dc075af353c 100644 --- a/source/blender/makesdna/DNA_camera_types.h +++ b/source/blender/makesdna/DNA_camera_types.h @@ -17,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. diff --git a/source/blender/makesdna/DNA_cloth_types.h b/source/blender/makesdna/DNA_cloth_types.h index 58f68d0a514..8e04107afe0 100644 --- a/source/blender/makesdna/DNA_cloth_types.h +++ b/source/blender/makesdna/DNA_cloth_types.h @@ -15,7 +15,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, -* Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2006 by NaN Holding BV. * All rights reserved. @@ -47,10 +47,7 @@ typedef struct ClothSimSettings float mingoal; /* see SB */ float Cdis; /* Mechanical damping of springs. */ float Cvi; /* Viscous/fluid damping. */ - /* XXX the extra space here results in wrong DNA parsing, - * and reconstruct fails and gives corrupt settings when - * removing it because the old dna is wrong ... */ - float gravity [3]; /* Gravity/external force vector. */ + float gravity[3]; /* Gravity/external force vector. */ float dt; /* This is the duration of our time step, computed. */ float mass; /* The mass of the entire cloth. */ float structural; /* Structural spring stiffness. */ @@ -69,6 +66,8 @@ typedef struct ClothSimSettings float goalspring; float goalfrict; float velocity_smooth; /* smoothing of velocities for hair */ + float collider_friction; /* friction with colliders */ + int stepsPerFrame; /* Number of time steps per frame. */ int flags; /* flags, see CSIMSETT_FLAGS enum above. */ int preroll; /* How many frames of simulation to do before we start. */ diff --git a/source/blender/makesdna/DNA_color_types.h b/source/blender/makesdna/DNA_color_types.h index 3caa74c9a72..5d6802290c2 100644 --- a/source/blender/makesdna/DNA_color_types.h +++ b/source/blender/makesdna/DNA_color_types.h @@ -16,7 +16,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2006 Blender Foundation. * All rights reserved. @@ -80,5 +80,16 @@ typedef struct CurveMapping { #define CUMA_DRAW_CFRA 4 #define CUMA_DRAW_SAMPLE 8 +typedef struct Histogram { + int channels; + int x_resolution; + float data_r[256]; + float data_g[256]; + float data_b[256]; + float xmax, ymax; + int ok; + int flag; +} Histogram; + #endif diff --git a/source/blender/makesdna/DNA_constraint_types.h b/source/blender/makesdna/DNA_constraint_types.h index 163933da12a..6e837588f0c 100644 --- a/source/blender/makesdna/DNA_constraint_types.h +++ b/source/blender/makesdna/DNA_constraint_types.h @@ -15,7 +15,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. @@ -257,11 +257,15 @@ typedef struct bDampTrackConstraint { /* Follow Path constraints */ typedef struct bFollowPathConstraint { - Object *tar; /* Must be path object */ - float offset; /* Offset in time on the path (in frame) */ + Object *tar; /* Must be path object */ + + float offset; /* Offset in time on the path (in frames), when NOT using 'fixed position' */ + float offset_fac; /* Parametric offset factor defining position along path, when using 'fixed position' */ + int followflag; - int trackflag; - int upflag; + + short trackflag; + short upflag; } bFollowPathConstraint; /* Stretch to constraint */ diff --git a/source/blender/makesdna/DNA_controller_types.h b/source/blender/makesdna/DNA_controller_types.h index 599bbf9653a..026f2a489fc 100644 --- a/source/blender/makesdna/DNA_controller_types.h +++ b/source/blender/makesdna/DNA_controller_types.h @@ -17,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. diff --git a/source/blender/makesdna/DNA_curve_types.h b/source/blender/makesdna/DNA_curve_types.h index f988511b146..cd002894c5d 100644 --- a/source/blender/makesdna/DNA_curve_types.h +++ b/source/blender/makesdna/DNA_curve_types.h @@ -19,7 +19,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. @@ -297,7 +297,7 @@ typedef enum eBezTriple_Handle { HD_AUTO, HD_VECT, HD_ALIGN, - HD_AUTO_ANIM + HD_AUTO_ANIM, /* not real handle type, but is just used as dummy item for anim code */ } eBezTriple_Handle; /* interpolation modes (used only for BezTriple->ipo) */ diff --git a/source/blender/makesdna/DNA_customdata_types.h b/source/blender/makesdna/DNA_customdata_types.h index f227e82fb44..23fb50508b6 100644 --- a/source/blender/makesdna/DNA_customdata_types.h +++ b/source/blender/makesdna/DNA_customdata_types.h @@ -15,7 +15,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. diff --git a/source/blender/makesdna/DNA_documentation.h b/source/blender/makesdna/DNA_documentation.h index f8aa8ae5b2a..d0f24eb0010 100644 --- a/source/blender/makesdna/DNA_documentation.h +++ b/source/blender/makesdna/DNA_documentation.h @@ -15,7 +15,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. diff --git a/source/blender/makesdna/DNA_effect_types.h b/source/blender/makesdna/DNA_effect_types.h index dae812c5f5c..ee0b791a274 100644 --- a/source/blender/makesdna/DNA_effect_types.h +++ b/source/blender/makesdna/DNA_effect_types.h @@ -17,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. diff --git a/source/blender/makesdna/DNA_fileglobal_types.h b/source/blender/makesdna/DNA_fileglobal_types.h index 271c8d2a33e..ae539a18963 100644 --- a/source/blender/makesdna/DNA_fileglobal_types.h +++ b/source/blender/makesdna/DNA_fileglobal_types.h @@ -17,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. diff --git a/source/blender/makesdna/DNA_genfile.h b/source/blender/makesdna/DNA_genfile.h index 4b9401bf4b9..75d21644267 100644 --- a/source/blender/makesdna/DNA_genfile.h +++ b/source/blender/makesdna/DNA_genfile.h @@ -15,7 +15,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. diff --git a/source/blender/makesdna/DNA_gpencil_types.h b/source/blender/makesdna/DNA_gpencil_types.h index 00afd687f79..25378173929 100644 --- a/source/blender/makesdna/DNA_gpencil_types.h +++ b/source/blender/makesdna/DNA_gpencil_types.h @@ -15,7 +15,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2008, Blender Foundation. * This is a new part of Blender diff --git a/source/blender/makesdna/DNA_group_types.h b/source/blender/makesdna/DNA_group_types.h index 0987050261d..61a527dd351 100644 --- a/source/blender/makesdna/DNA_group_types.h +++ b/source/blender/makesdna/DNA_group_types.h @@ -17,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. diff --git a/source/blender/makesdna/DNA_image_types.h b/source/blender/makesdna/DNA_image_types.h index 65e4be1173d..3a7933cf425 100644 --- a/source/blender/makesdna/DNA_image_types.h +++ b/source/blender/makesdna/DNA_image_types.h @@ -17,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. @@ -118,8 +118,9 @@ typedef struct Image { #define IMA_TWINANIM 2 #define IMA_COLCYCLE 4 /* Depreciated */ #define IMA_MIPMAP_COMPLETE 8 /* all mipmap levels in OpenGL texture set? */ -#define IMA_CLAMP_U 16 -#define IMA_CLAMP_V 32 +#define IMA_CLAMP_U 16 +#define IMA_CLAMP_V 32 +#define IMA_TPAGE_REFRESH 64 /* ima->type and ima->source moved to BKE_image.h, for API */ diff --git a/source/blender/makesdna/DNA_ipo_types.h b/source/blender/makesdna/DNA_ipo_types.h index cf3d713c690..b7e15808ff0 100644 --- a/source/blender/makesdna/DNA_ipo_types.h +++ b/source/blender/makesdna/DNA_ipo_types.h @@ -17,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. diff --git a/source/blender/makesdna/DNA_key_types.h b/source/blender/makesdna/DNA_key_types.h index 02d3e8efb00..a9783d3465e 100644 --- a/source/blender/makesdna/DNA_key_types.h +++ b/source/blender/makesdna/DNA_key_types.h @@ -17,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. diff --git a/source/blender/makesdna/DNA_lamp_types.h b/source/blender/makesdna/DNA_lamp_types.h index c321c9feea7..cb458708b3e 100644 --- a/source/blender/makesdna/DNA_lamp_types.h +++ b/source/blender/makesdna/DNA_lamp_types.h @@ -17,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. @@ -115,6 +115,10 @@ typedef struct Lamp { /* flag */ #define LA_DS_EXPAND 1 + /* NOTE: this must have the same value as MA_DS_SHOW_TEXS, + * otherwise anim-editors will not read correctly + */ +#define LA_DS_SHOW_TEXS 4 /* type */ #define LA_LOCAL 0 @@ -145,6 +149,7 @@ typedef struct Lamp { #define LA_YF_SOFT 16384 #define LA_LAYER_SHADOW 32768 #define LA_SHAD_TEX (1<<16) +#define LA_SHOW_CONE (1<<17) /* layer_shadow */ #define LA_LAYER_SHADOW_BOTH 0 diff --git a/source/blender/makesdna/DNA_lattice_types.h b/source/blender/makesdna/DNA_lattice_types.h index a2748617f18..620bdbf5be4 100644 --- a/source/blender/makesdna/DNA_lattice_types.h +++ b/source/blender/makesdna/DNA_lattice_types.h @@ -15,7 +15,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. diff --git a/source/blender/makesdna/DNA_listBase.h b/source/blender/makesdna/DNA_listBase.h index 5479ba25f70..afeb79037f5 100644 --- a/source/blender/makesdna/DNA_listBase.h +++ b/source/blender/makesdna/DNA_listBase.h @@ -17,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. diff --git a/source/blender/makesdna/DNA_material_types.h b/source/blender/makesdna/DNA_material_types.h index 7a19262b0cd..f8eb6e76693 100644 --- a/source/blender/makesdna/DNA_material_types.h +++ b/source/blender/makesdna/DNA_material_types.h @@ -17,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. @@ -181,6 +181,11 @@ typedef struct Material { #define MA_IS_USED 1 /* for dopesheet */ #define MA_DS_EXPAND 2 + /* for dopesheet (texture stack expander) + * NOTE: this must have the same value as other texture stacks, + * otherwise anim-editors will not read correctly + */ +#define MA_DS_SHOW_TEXS 4 /* mode (is int) */ #define MA_TRACEBLE 1 @@ -234,6 +239,7 @@ typedef struct Material { /* shade_flag */ #define MA_CUBIC 1 #define MA_OBCOLOR 2 +#define MA_APPROX_OCCLUSION 4 /* diff_shader */ #define MA_DIFF_LAMBERT 0 diff --git a/source/blender/makesdna/DNA_mesh_types.h b/source/blender/makesdna/DNA_mesh_types.h index 8139673b7d7..e29dfd6894b 100644 --- a/source/blender/makesdna/DNA_mesh_types.h +++ b/source/blender/makesdna/DNA_mesh_types.h @@ -15,7 +15,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. @@ -141,6 +141,8 @@ typedef struct TFace { #define ME_EDIT_MIRROR_Z (1 << 2) // unused so far #define ME_EDIT_PAINT_MASK (1 << 3) +#define ME_EDIT_MIRROR_TOPO (1 << 4) // unused so far + /* me->flag */ #define ME_ISDONE 1 diff --git a/source/blender/makesdna/DNA_meshdata_types.h b/source/blender/makesdna/DNA_meshdata_types.h index dd1d6c66036..1cfbd9d8d51 100644 --- a/source/blender/makesdna/DNA_meshdata_types.h +++ b/source/blender/makesdna/DNA_meshdata_types.h @@ -15,7 +15,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. diff --git a/source/blender/makesdna/DNA_meta_types.h b/source/blender/makesdna/DNA_meta_types.h index 0e746eb0f4d..feadf7cd510 100644 --- a/source/blender/makesdna/DNA_meta_types.h +++ b/source/blender/makesdna/DNA_meta_types.h @@ -17,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. diff --git a/source/blender/makesdna/DNA_modifier_types.h b/source/blender/makesdna/DNA_modifier_types.h index 2491e58f176..5d321fe49c2 100644 --- a/source/blender/makesdna/DNA_modifier_types.h +++ b/source/blender/makesdna/DNA_modifier_types.h @@ -16,7 +16,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * ***** END GPL LICENSE BLOCK ***** */ @@ -679,7 +679,7 @@ typedef struct ShapeKeyModifierData { typedef struct SolidifyModifierData { ModifierData modifier; - char vgroup[32]; /* name of vertex group to use */ + char defgrp_name[32]; /* name of vertex group to use */ float offset; /* new surface offset level*/ float crease_inner; float crease_outer; diff --git a/source/blender/makesdna/DNA_nla_types.h b/source/blender/makesdna/DNA_nla_types.h index 4452517d8aa..519d8ca8163 100644 --- a/source/blender/makesdna/DNA_nla_types.h +++ b/source/blender/makesdna/DNA_nla_types.h @@ -15,7 +15,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. diff --git a/source/blender/makesdna/DNA_node_types.h b/source/blender/makesdna/DNA_node_types.h index 9b433c5bf8c..4dd089949e9 100644 --- a/source/blender/makesdna/DNA_node_types.h +++ b/source/blender/makesdna/DNA_node_types.h @@ -15,7 +15,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2005 Blender Foundation. * All rights reserved. @@ -300,6 +300,18 @@ typedef struct NodeLensDist { short jit, proj, fit, pad; } NodeLensDist; +typedef struct NodeColorBalance { + /* for processing */ + float slope[3]; + float offset[3]; + float power[3]; + + /* for ui representation */ + float lift[3]; + float gamma[3]; + float gain[3]; +} NodeColorBalance; + /* TEX_output */ typedef struct TexNodeOutput { char name[32]; diff --git a/source/blender/makesdna/DNA_object_fluidsim.h b/source/blender/makesdna/DNA_object_fluidsim.h index da55fb1d47c..fa918fc30d9 100644 --- a/source/blender/makesdna/DNA_object_fluidsim.h +++ b/source/blender/makesdna/DNA_object_fluidsim.h @@ -16,7 +16,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2004-2005 by Blender Foundation * All rights reserved. diff --git a/source/blender/makesdna/DNA_object_force.h b/source/blender/makesdna/DNA_object_force.h index b3cdd6135e7..1df76a39d9d 100644 --- a/source/blender/makesdna/DNA_object_force.h +++ b/source/blender/makesdna/DNA_object_force.h @@ -16,7 +16,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2004-2005 by Blender Foundation * All rights reserved. diff --git a/source/blender/makesdna/DNA_object_types.h b/source/blender/makesdna/DNA_object_types.h index 9f9388ea7b8..3be057959b6 100644 --- a/source/blender/makesdna/DNA_object_types.h +++ b/source/blender/makesdna/DNA_object_types.h @@ -19,7 +19,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. @@ -135,15 +135,15 @@ typedef struct Object { /* rot en drot have to be together! (transform('r' en 's')) */ float loc[3], dloc[3], orig[3]; - float size[3], dsize[3]; + float size[3], dsize[3]; /* scale and delta scale */ float rot[3], drot[3]; /* euler rotation */ float quat[4], dquat[4]; /* quaternion rotation */ float rotAxis[3], drotAxis[3]; /* axis angle rotation - axis part */ float rotAngle, drotAngle; /* axis angle rotation - angle part */ - float obmat[4][4]; + float obmat[4][4]; /* final worldspace matrix with constraints & animsys applied */ float parentinv[4][4]; /* inverse result of parent, so that object doesn't 'stick' to parent */ float constinv[4][4]; /* inverse result of constraints. doesn't include effect of parent or object local transform */ - float imat[4][4]; /* for during render, old game engine, temporally: ipokeys of transform */ + float imat[4][4]; /* inverse matrix of 'obmat' for during render, old game engine, temporally: ipokeys of transform */ unsigned int lay; /* copy of Base */ @@ -196,7 +196,7 @@ typedef struct Object { float bbsize[3]; short index; /* custom index, for renderpasses */ - unsigned short actdef; /* current deformation group */ + unsigned short actdef; /* current deformation group, note: index starts at 1 */ float col[4]; /* object color, adjusted via IPO's only */ /** * Settings for game objects @@ -334,6 +334,7 @@ extern Object workob; #define OB_DUPLIFACES_SCALE 1024 #define OB_DUPLIPARTS 2048 #define OB_RENDER_DUPLI 4096 +#define OB_NO_CONSTRAINTS 8192 /* runtime constraints disable */ /* (short) ipoflag */ // XXX depreceated - old animation system crap diff --git a/source/blender/makesdna/DNA_outliner_types.h b/source/blender/makesdna/DNA_outliner_types.h index b19db15d73b..d30351b6c34 100644 --- a/source/blender/makesdna/DNA_outliner_types.h +++ b/source/blender/makesdna/DNA_outliner_types.h @@ -15,7 +15,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. diff --git a/source/blender/makesdna/DNA_packedFile_types.h b/source/blender/makesdna/DNA_packedFile_types.h index f11c51692e1..73f55ca186c 100644 --- a/source/blender/makesdna/DNA_packedFile_types.h +++ b/source/blender/makesdna/DNA_packedFile_types.h @@ -18,7 +18,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. diff --git a/source/blender/makesdna/DNA_particle_types.h b/source/blender/makesdna/DNA_particle_types.h index abcdbcefc0f..36c144a1cfa 100644 --- a/source/blender/makesdna/DNA_particle_types.h +++ b/source/blender/makesdna/DNA_particle_types.h @@ -17,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2007 by Janne Karhu. * All rights reserved. diff --git a/source/blender/makesdna/DNA_property_types.h b/source/blender/makesdna/DNA_property_types.h index af79b2e0a22..e0da4e89f0f 100644 --- a/source/blender/makesdna/DNA_property_types.h +++ b/source/blender/makesdna/DNA_property_types.h @@ -20,7 +20,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. diff --git a/source/blender/makesdna/DNA_scene_types.h b/source/blender/makesdna/DNA_scene_types.h index 974967c6aa6..928637a0047 100644 --- a/source/blender/makesdna/DNA_scene_types.h +++ b/source/blender/makesdna/DNA_scene_types.h @@ -15,7 +15,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. @@ -170,23 +170,25 @@ typedef struct SceneRenderLayer { #define SCE_LAY_NEG_ZMASK 0x80000 /* srl->passflag */ -#define SCE_PASS_COMBINED 1 -#define SCE_PASS_Z 2 -#define SCE_PASS_RGBA 4 -#define SCE_PASS_DIFFUSE 8 -#define SCE_PASS_SPEC 16 -#define SCE_PASS_SHADOW 32 -#define SCE_PASS_AO 64 -#define SCE_PASS_REFLECT 128 -#define SCE_PASS_NORMAL 256 -#define SCE_PASS_VECTOR 512 -#define SCE_PASS_REFRACT 1024 -#define SCE_PASS_INDEXOB 2048 -#define SCE_PASS_UV 4096 -#define SCE_PASS_RADIO 8192 /* Radio removed, can use for new GI? */ -#define SCE_PASS_MIST 16384 - -#define SCE_PASS_RAYHITS 32768 +#define SCE_PASS_COMBINED 1 +#define SCE_PASS_Z 2 +#define SCE_PASS_RGBA 4 +#define SCE_PASS_DIFFUSE 8 +#define SCE_PASS_SPEC 16 +#define SCE_PASS_SHADOW 32 +#define SCE_PASS_AO 64 +#define SCE_PASS_REFLECT 128 +#define SCE_PASS_NORMAL 256 +#define SCE_PASS_VECTOR 512 +#define SCE_PASS_REFRACT 1024 +#define SCE_PASS_INDEXOB 2048 +#define SCE_PASS_UV 4096 +#define SCE_PASS_RADIO 8192 /* Radio removed, can use for new GI? */ +#define SCE_PASS_MIST 16384 +#define SCE_PASS_RAYHITS 32768 +#define SCE_PASS_EMIT 65536 +#define SCE_PASS_ENVIRONMENT 131072 +#define SCE_PASS_INDIRECT 262144 /* note, srl->passflag is treestore element 'nr' in outliner, short still... */ @@ -300,7 +302,10 @@ typedef struct RenderData { /* information on different layers to be rendered */ ListBase layers; - short actlay, pad; + short actlay; + + /* number of mblur samples */ + short mblur_samples; /** * Adjustment factors for the aspect ratio in the x direction, was a short in 2.45 @@ -357,8 +362,9 @@ typedef struct RenderData { float bg_stamp[4]; /* render simplify */ - int simplify_subsurf; - int simplify_shadowsamples; + int simplify_flag; + short simplify_subsurf; + short simplify_shadowsamples; float simplify_particles; float simplify_aosss; @@ -481,6 +487,7 @@ typedef struct GameData { #define GAME_GLSL_NO_NODES (1 << 10) #define GAME_GLSL_NO_EXTRA_TEX (1 << 11) #define GAME_IGNORE_DEPRECATION_WARNINGS (1 << 12) +#define GAME_ENABLE_ANIMATION_RECORD (1 << 13) /* GameData.matmode */ #define GAME_MAT_TEXFACE 0 @@ -510,7 +517,7 @@ typedef struct Paint { typedef struct ImagePaintSettings { Paint paint; - short flag, tool; + short flag, pad; /* for projection painting only */ short seam_bleed, normal_angle; @@ -521,6 +528,7 @@ typedef struct ImagePaintSettings { typedef struct ParticleBrushData { short size, strength; /* common settings */ short step, invert; /* for specific brushes only */ + int flag, pad; } ParticleBrushData; typedef struct ParticleEditSettings { @@ -564,7 +572,7 @@ typedef struct Sculpt { typedef struct VPaint { Paint paint; - short mode, flag; + short flag, pad; int tot; /* allocation size of prev buffers */ unsigned int *vpaint_prev; /* previous mesh colors */ struct MDeformVert *wpaint_prev; /* previous vertex weights */ @@ -751,7 +759,10 @@ typedef struct Scene { ListBase markers; ListBase transform_spaces; - ListBase sound_handles; + void *sound_scene; + void *sound_scene_handle; + + void *fps_info; /* (runtime) info/cache used for presenting playback framerate info to the user */ /* none of the dependancy graph vars is mean to be saved */ struct DagForest *theDag; @@ -788,6 +799,10 @@ typedef struct Scene { #define R_FRONTBUF 4 #define R_FRONTBUFANIM 8 +/* flag */ + /* use preview range */ +#define SCER_PRV_RANGE (1<<0) + /* mode (int now) */ #define R_OSA 0x0001 #define R_SHADOW 0x0002 @@ -959,14 +974,17 @@ typedef struct Scene { #define R_BAKE_SPACE_OBJECT 2 #define R_BAKE_SPACE_TANGENT 3 +/* simplify_flag */ +#define R_SIMPLE_NO_TRIANGULATE 1 + /* **************** SCENE ********************* */ /* for general use */ #define MAXFRAME 300000 #define MAXFRAMEF 300000.0f -#define MINFRAME 1 -#define MINFRAMEF 1.0f +#define MINFRAME 0 +#define MINFRAMEF 0.0f /* (minimum frame number for current-frame) */ #define MINAFRAME -300000 @@ -990,8 +1008,9 @@ typedef struct Scene { #define F_CFRA ((float)(scene->r.cfra)) #define SFRA (scene->r.sfra) #define EFRA (scene->r.efra) -#define PSFRA ((scene->r.psfra != 0)? (scene->r.psfra): (scene->r.sfra)) -#define PEFRA ((scene->r.psfra != 0)? (scene->r.pefra): (scene->r.efra)) +#define PRVRANGEON (scene->r.flag & SCER_PRV_RANGE) +#define PSFRA ((PRVRANGEON)? (scene->r.psfra): (scene->r.sfra)) +#define PEFRA ((PRVRANGEON)? (scene->r.pefra): (scene->r.efra)) #define FRA2TIME(a) ((((double) scene->r.frs_sec_base) * (a)) / scene->r.frs_sec) #define TIME2FRA(a) ((((double) scene->r.frs_sec) * (a)) / scene->r.frs_sec_base) #define FPS (((double) scene->r.frs_sec) / scene->r.frs_sec_base) @@ -1049,6 +1068,7 @@ typedef struct Scene { #define SCE_DS_SELECTED (1<<0) #define SCE_DS_COLLAPSED (1<<1) #define SCE_NLA_EDIT_ON (1<<2) +#define SCE_FRAME_DROP (1<<3) /* return flag next_object function */ @@ -1063,7 +1083,7 @@ typedef struct Scene { #define AUDIO_SYNC 2 #define AUDIO_SCRUB 4 -#define FFMPEG_MULTIPLEX_AUDIO 1 +#define FFMPEG_MULTIPLEX_AUDIO 1 /* deprecated, you can choose none as audiocodec now */ #define FFMPEG_AUTOSPLIT_OUTPUT 2 /* Paint.flags */ @@ -1136,10 +1156,14 @@ typedef enum SculptFlags { #define PE_BRUSH_PUFF 3 #define PE_BRUSH_ADD 4 #define PE_BRUSH_SMOOTH 5 +#define PE_BRUSH_WEIGHT 6 /* this must equal ParticleEditSettings.brush array size */ #define PE_TOT_BRUSH 6 +/* ParticleBrushData->flag */ +#define PE_BRUSH_DATA_PUFF_VOLUME 1 + /* tooksettings->particle edittype */ #define PE_TYPE_PARTICLES 0 #define PE_TYPE_SOFTBODY 1 @@ -1211,6 +1235,7 @@ typedef enum SculptFlags { #define USER_UNIT_IMPERIAL 2 /* UnitSettings->flag */ #define USER_UNIT_OPT_SPLIT 1 +#define USER_UNIT_ROT_RADIANS 2 #ifdef __cplusplus diff --git a/source/blender/makesdna/DNA_screen_types.h b/source/blender/makesdna/DNA_screen_types.h index 12f61cbb026..ce165c0bac8 100644 --- a/source/blender/makesdna/DNA_screen_types.h +++ b/source/blender/makesdna/DNA_screen_types.h @@ -15,7 +15,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. @@ -60,8 +60,8 @@ typedef struct bScreen { short do_refresh; /* notifier for scale screen, changed screen, etc */ short do_draw_gesture; /* notifier for gesture draw. */ short do_draw_paintcursor; /* notifier for paint cursor draw. */ + short do_draw_drag; /* notifier for dragging draw. */ short swap; /* indicator to survive swap-exchange systems */ - short pad; short mainwin; /* screensize subwindow, for screenedges and global menus */ short subwinactive; /* active subwindow */ @@ -148,11 +148,11 @@ typedef struct ARegion { short alignment; /* how it should split */ short flag; /* hide, ... */ - float fsize; /* current split size in float */ + float fsize; /* current split size in float (unused) */ + short sizex, sizey; /* current split size in pixels (if zero it uses regiontype) */ short do_draw; /* private, cached notifier events */ short swap; /* private, indicator to survive swap-exchange */ - int pad1; struct ARegionType *type; /* callbacks for this region type */ diff --git a/source/blender/makesdna/DNA_sdna_types.h b/source/blender/makesdna/DNA_sdna_types.h index 5726837a723..d13edb99f07 100644 --- a/source/blender/makesdna/DNA_sdna_types.h +++ b/source/blender/makesdna/DNA_sdna_types.h @@ -17,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. diff --git a/source/blender/makesdna/DNA_sensor_types.h b/source/blender/makesdna/DNA_sensor_types.h index a5ba5886ed5..41476c81c85 100644 --- a/source/blender/makesdna/DNA_sensor_types.h +++ b/source/blender/makesdna/DNA_sensor_types.h @@ -17,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. @@ -98,6 +98,7 @@ typedef struct bDelaySensor { typedef struct bCollisionSensor { char name[32]; /* property name */ char materialName[32]; /* material */ + // struct Material *ma; // XXX remove materialName short damptimer, damp; short mode; /* flag to choose material or property */ short pad2; @@ -121,6 +122,7 @@ typedef struct bRaySensor { float range; char propname[32]; char matname[32]; + //struct Material *ma; // XXX remove materialName short mode; short pad1; int axisflag; diff --git a/source/blender/makesdna/DNA_sequence_types.h b/source/blender/makesdna/DNA_sequence_types.h index 0b45d62e347..329e9ce771a 100644 --- a/source/blender/makesdna/DNA_sequence_types.h +++ b/source/blender/makesdna/DNA_sequence_types.h @@ -17,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. @@ -161,7 +161,9 @@ typedef struct Sequence { ListBase seqbase; /* list of strips for metastrips */ struct bSound *sound; /* the linked "bSound" object */ - struct SoundHandle *sound_handle; + void *scene_sound; + float volume, pad; + float level, pan; /* level in dB (0=full), pan -1..1 */ int scenenr; /* for scene selection */ float strobe; diff --git a/source/blender/makesdna/DNA_smoke_types.h b/source/blender/makesdna/DNA_smoke_types.h index 6cf308aa0ad..46e5c10be3b 100644 --- a/source/blender/makesdna/DNA_smoke_types.h +++ b/source/blender/makesdna/DNA_smoke_types.h @@ -15,7 +15,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, -* Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2006 by NaN Holding BV. * All rights reserved. @@ -33,6 +33,8 @@ #define MOD_SMOKE_HIGHRES (1<<1) /* enable high resolution */ #define MOD_SMOKE_DISSOLVE (1<<2) /* let smoke dissolve */ #define MOD_SMOKE_DISSOLVE_LOG (1<<3) /* using 1/x for dissolve */ +#define MOD_SMOKE_INITVELOCITY (1<<4) /* passes particles speed to + the smoke*/ /* noise */ #define MOD_SMOKE_NOISEWAVE (1<<0) @@ -41,6 +43,10 @@ /* viewsettings */ #define MOD_SMOKE_VIEW_SHOWBIG (1<<0) +/* cache compression */ +#define SM_CACHE_LIGHT 0 +#define SM_CACHE_HEAVY 1 + typedef struct SmokeDomainSettings { struct SmokeModifierData *smd; /* for fast RNA access */ struct FLUID_3D *fluid; @@ -73,6 +79,8 @@ typedef struct SmokeDomainSettings { int res_wt[3]; float dx_wt; int v3dnum; + int cache_comp; + int cache_high_comp; struct PointCache *point_cache[2]; /* definition is in DNA_object_force.h */ struct ListBase ptcaches[2]; struct EffectorWeights *effector_weights; diff --git a/source/blender/makesdna/DNA_sound_types.h b/source/blender/makesdna/DNA_sound_types.h index 55b48e4aacd..45dff0c96fa 100644 --- a/source/blender/makesdna/DNA_sound_types.h +++ b/source/blender/makesdna/DNA_sound_types.h @@ -17,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. @@ -41,21 +41,6 @@ struct Ipo; struct PackedFile; struct SpaceLink; -// runtime only - no saving -typedef struct SoundHandle { - struct SoundHandle *next, *prev; - struct bSound *source; - void *handle; - int state; - int startframe; - int endframe; - int frameskip; - int mute; - int changed; - float volume; - float pad; -} SoundHandle; - typedef struct Sound3D { float min_gain; @@ -74,7 +59,7 @@ typedef struct bSound { /** * The path to the sound file. */ - char name[160]; + char name[240]; /** * The packed file. @@ -98,19 +83,21 @@ typedef struct bSound { float max_gain; float distance; int flags; + int pad; /** currently int type; struct bSound *child_sound;*/ /** - * Whether the sound has been changed and must be restarted if playing. + * The audaspace handle for cache. */ - int changed; + void *cache; /** - * The audaspace handle for cache. + * The audaspace handle that should actually be played back. + * Should be cache if cache != NULL; otherwise it's handle */ - void *cache; + void *playback_handle; /** XXX unused currently // SOUND_TYPE_LIMITER float start, end;*/ diff --git a/source/blender/makesdna/DNA_space_types.h b/source/blender/makesdna/DNA_space_types.h index 56323c54491..c57931fa0a9 100644 --- a/source/blender/makesdna/DNA_space_types.h +++ b/source/blender/makesdna/DNA_space_types.h @@ -17,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. @@ -32,6 +32,7 @@ #define DNA_SPACE_TYPES_H #include "DNA_listBase.h" +#include "DNA_color_types.h" /* for Histogram */ #include "DNA_vec_types.h" #include "DNA_outliner_types.h" /* for TreeStoreElem */ #include "DNA_image_types.h" /* ImageUser */ @@ -43,6 +44,7 @@ struct Text; struct Script; struct ImBuf; struct Image; +struct Histogram; struct SpaceIpo; struct BlendHandle; struct RenderInfo; @@ -124,8 +126,8 @@ typedef struct SpaceButs { short preview; /* preview is signal to refresh */ char flag, pad[3]; - void *path; /* runtime */ - int pathflag, dataicon; /* runtime */ + void *path; /* runtime */ + int pathflag, dataicon; /* runtime */ ID *pinid; } SpaceButs; @@ -139,13 +141,13 @@ typedef struct SpaceSeq { View2D v2d; /* deprecated, copied to region */ - float xof, yof; /* offset for drawing the image preview */ + float xof, yof; /* deprecated: offset for drawing the image preview */ short mainb; /* weird name for the sequencer subtype (seq, image, luma... etc) */ short render_size; short chanshown; short zebra; int flag; - float zoom; + float zoom; /* deprecated, handled by View2D now */ int view; /* see SEQ_VIEW_* below */ int pad; @@ -255,6 +257,8 @@ typedef struct SpaceImage { float centx, centy; /* storage for offset while render drawing */ struct bGPdata *gpd; /* grease pencil data */ + + struct Histogram hist; /* viewer histogram */ } SpaceImage; typedef struct SpaceNla { @@ -573,7 +577,6 @@ typedef struct SpaceUserPref { #define TAB_SCENE_SOUND 3 #define TAB_SCENE_SEQUENCER 4 - /* buts->mainb new */ #define BCONTEXT_RENDER 0 #define BCONTEXT_SCENE 1 @@ -595,6 +598,7 @@ typedef struct SpaceUserPref { #define SB_PIN_CONTEXT 2 #define SB_WORLD_TEX 4 #define SB_BRUSH_TEX 8 +#define SB_SHADING_CONTEXT 16 /* sbuts->align */ #define BUT_FREE 0 @@ -645,6 +649,9 @@ enum FileSortTypeE { #define FILE_LOADLIB 1 #define FILE_MAIN 2 #define FILE_LOADFONT 3 +/* filesel op property -> action */ +#define FILE_OPENFILE 0 +#define FILE_SAVE 1 /* sfile->flag and simasel->flag */ #define FILE_SHOWSHORT 1 @@ -746,6 +753,8 @@ enum FileSortTypeE { #define SIPO_SELVHANDLESONLY (1<<9) /* temporary flag to force channel selections to be synced with main */ #define SIPO_TEMP_NEEDCHANSYNC (1<<10) + /* don't perform realtime updates */ +#define SIPO_NOREALTIMEUPDATES (1<<11) /* SpaceIpo->mode (Graph Editor Mode) */ enum { @@ -831,15 +840,15 @@ enum { #define IMS_INFILESLI 4 /* nla->flag */ - // depreceated -#define SNLA_ALLKEYED (1<<0) - // depreceated -#define SNLA_ACTIVELAYERS (1<<1) - +/* flags (1<<0), (1<<1), and (1<<3) are depreceated flags from old blenders */ + /* draw timing in seconds instead of frames */ #define SNLA_DRAWTIME (1<<2) -#define SNLA_NOTRANSKEYCULL (1<<3) + /* don't draw frame number beside frame indicator */ #define SNLA_NODRAWCFRANUM (1<<4) + /* don't draw influence curves on strips */ #define SNLA_NOSTRIPCURVES (1<<5) + /* don't perform realtime updates */ +#define SNLA_NOREALTIMEUPDATES (1<<6) /* time->flag */ /* show timing in frames instead of in seconds */ diff --git a/source/blender/makesdna/DNA_text_types.h b/source/blender/makesdna/DNA_text_types.h index 5793f061f06..d89d15fa302 100644 --- a/source/blender/makesdna/DNA_text_types.h +++ b/source/blender/makesdna/DNA_text_types.h @@ -17,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. @@ -70,8 +70,6 @@ typedef struct Text { double mtime; } Text; - /* TXT_OFFSET used to be 35 when the scrollbar was on the left... */ -#define TXT_OFFSET 15 #define TXT_TABSIZE 4 #define TXT_INIT_UNDO 1024 #define TXT_MAX_UNDO (TXT_INIT_UNDO*TXT_INIT_UNDO) @@ -84,6 +82,7 @@ typedef struct Text { #define TXT_ISSCRIPT 0x0010 /* used by space handler scriptlinks */ #define TXT_READONLY 0x0100 #define TXT_FOLLOW 0x0200 /* always follow cursor (console) */ +#define TXT_TABSTOSPACES 0x0400 /* use space instead of tabs */ /* format continuation flags */ #define TXT_NOCONT 0x00 /* no continuation */ diff --git a/source/blender/makesdna/DNA_texture_types.h b/source/blender/makesdna/DNA_texture_types.h index eac7a97f0c0..3212ff7b534 100644 --- a/source/blender/makesdna/DNA_texture_types.h +++ b/source/blender/makesdna/DNA_texture_types.h @@ -17,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. @@ -184,7 +184,7 @@ typedef struct VoxelData { short file_format; short flag; short extend; - short pad; + short smoked_type; struct Object *object; /* for rendering smoke sims */ float int_multiplier; @@ -236,7 +236,7 @@ typedef struct Tex { int frames, offset, sfra; float checkerdist, nabla; - float norfac; + float pad1; struct ImageUser iuser; @@ -357,6 +357,7 @@ typedef struct TexMapping { #define TEX_REPEAT_XMIR 128 #define TEX_REPEAT_YMIR 256 #define TEX_FLAG_MASK ( TEX_COLORBAND | TEX_FLIPBLEND | TEX_NEGALPHA | TEX_CHECKER_ODD | TEX_CHECKER_EVEN | TEX_PRV_ALPHA | TEX_PRV_NOR | TEX_REPEAT_XMIR | TEX_REPEAT_YMIR ) +#define TEX_DS_EXPAND 512 /* extend (starts with 1 because of backward comp.) */ #define TEX_EXTEND 1 @@ -546,5 +547,10 @@ typedef struct TexMapping { #define TEX_VD_IMAGE_SEQUENCE 3 #define TEX_VD_SMOKE 4 +/* smoke data types */ +#define TEX_VD_SMOKEDENSITY 0 +#define TEX_VD_SMOKEHEAT 1 +#define TEX_VD_SMOKEVEL 2 + #endif diff --git a/source/blender/makesdna/DNA_userdef_types.h b/source/blender/makesdna/DNA_userdef_types.h index d981372c667..5a11f10ab31 100644 --- a/source/blender/makesdna/DNA_userdef_types.h +++ b/source/blender/makesdna/DNA_userdef_types.h @@ -17,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. @@ -196,13 +196,17 @@ typedef struct ThemeSpace { char face[4], face_select[4]; // solid faces char face_dot[4]; // selected color char normal[4]; + char vertex_normal[4]; char bone_solid[4], bone_pose[4]; char strip[4], strip_select[4]; char cframe[4]; char ds_channel[4], ds_subchannel[4]; // dopesheet + char console_output[4], console_input[4], console_info[4], console_error[4]; + char console_cursor[4]; + char vertex_size, facedot_size; - char bpad[2]; + char bpad[2]; char syntaxl[4], syntaxn[4], syntaxb[4]; // syntax for textwindow and nodes char syntaxv[4], syntaxc[4]; @@ -217,7 +221,7 @@ typedef struct ThemeSpace { char handle_vertex_size; char hpad[3]; - char pad[4]; + char preview_back[4]; char pin[4]; int pin_opac; @@ -264,6 +268,7 @@ typedef struct bTheme { ThemeSpace tnode; ThemeSpace tlogic; ThemeSpace tuserpref; + ThemeSpace tconsole; /* 20 sets of bone colors for this theme */ ThemeWireColor tarm[20]; @@ -273,6 +278,12 @@ typedef struct bTheme { } bTheme; +/* for the moment only the name. may want to store options with this later */ +typedef struct bAddon { + struct bAddon *next, *prev; + char module[64]; +} bAddon; + typedef struct SolidLight { int flag, pad; float col[4], spec[4], vec[4]; @@ -291,7 +302,9 @@ typedef struct UserDef { char sounddir[160]; char anim_player[240]; // FILE_MAX length int anim_player_preset; - int pad; + + short v2d_min_gridsize; /* minimum spacing between gridlines in View2D grids */ + short timecode_style; /* style of timecode display */ short versions; short dbl_click_time; @@ -317,6 +330,7 @@ typedef struct UserDef { struct ListBase uifonts; struct ListBase uistyles; struct ListBase keymaps; + struct ListBase addons; char keyconfigstr[64]; short undosteps; @@ -341,7 +355,10 @@ typedef struct UserDef { short ndof_pan, ndof_rotate; short curssize, ipo_new; short color_picker_type; - short pad2[3]; + short pad2; + + short scrcastfps; /* frame rate for screencast to be played back */ + short scrcastwait; /* milliseconds between screencast snapshots */ char versemaster[160]; char verseuser[160]; @@ -364,6 +381,7 @@ extern UserDef U; /* from blenkernel blender.c */ #define USER_SECTION_SYSTEM 3 #define USER_SECTION_THEME 4 #define USER_SECTION_INPUT 5 +#define USER_SECTION_ADDONS 6 /* flag */ #define USER_AUTOSAVE (1 << 0) @@ -388,8 +406,16 @@ extern UserDef U; /* from blenkernel blender.c */ #define USER_ADD_VIEWALIGNED (1 << 19) #define USER_RELPATHS (1 << 20) #define USER_DRAGIMMEDIATE (1 << 21) -#define USER_DONT_DOSCRIPTLINKS (1 << 22) +#define USER_SCRIPT_AUTOEXEC_DISABLE (1 << 22) #define USER_FILENOUI (1 << 23) +#define USER_NONEGFRAMES (1 << 24) + +/* helper macro for checking frame clamping */ +#define FRAMENUMBER_MIN_CLAMP(cfra) \ + { \ + if ((U.flag & USER_NONEGFRAMES) && (cfra < 0)) \ + cfra = 0; \ + } /* viewzom */ #define USER_ZOOM_CONT 0 @@ -433,8 +459,10 @@ extern UserDef U; /* from blenkernel blender.c */ #define AUTOKEY_MODE_NORMAL 3 #define AUTOKEY_MODE_EDITKEYS 5 -/* Auto-Keying flag */ - /* U.autokey_flag (not strictly used when autokeying only - is also used when keyframing these days) */ +/* Auto-Keying flag + * U.autokey_flag (not strictly used when autokeying only - is also used when keyframing these days) + * note: AUTOKEY_FLAG_* is used with a macro, search for lines like IS_AUTOKEY_FLAG(INSERTAVAIL) + */ #define AUTOKEY_FLAG_INSERTAVAIL (1<<0) #define AUTOKEY_FLAG_INSERTNEEDED (1<<1) #define AUTOKEY_FLAG_AUTOMATKEY (1<<2) @@ -480,6 +508,8 @@ extern UserDef U; /* from blenkernel blender.c */ #define USER_DRAW_TRIPLE 0 #define USER_DRAW_OVERLAP 1 #define USER_DRAW_FULL 2 +#define USER_DRAW_AUTOMATIC 3 +#define USER_DRAW_OVERLAP_FLIP 4 /* tw_flag (transform widget) */ @@ -493,6 +523,21 @@ extern UserDef U; /* from blenkernel blender.c */ #define USER_CP_SQUARE_HS 2 #define USER_CP_SQUARE_HV 3 +/* timecode display styles */ + /* as little info as is necessary to show relevant info + * with '+' to denote the frames + * i.e. HH:MM:SS+FF, MM:SS+FF, SS+FF, or MM:SS + */ +#define USER_TIMECODE_MINIMAL 0 + /* reduced SMPTE - (HH:)MM:SS:FF */ +#define USER_TIMECODE_SMPTE_MSF 1 + /* full SMPTE - HH:MM:SS:FF */ +#define USER_TIMECODE_SMPTE_FULL 2 + /* milliseconds for sub-frames - HH:MM:SS.sss */ +#define USER_TIMECODE_MILLISECONDS 3 + /* seconds only */ +#define USER_TIMECODE_SECONDS_ONLY 4 + /* theme drawtypes */ #define TH_MINIMAL 0 #define TH_ROUNDSHADED 1 diff --git a/source/blender/makesdna/DNA_vec_types.h b/source/blender/makesdna/DNA_vec_types.h index 264ad348e92..4a6f7f3a3cc 100644 --- a/source/blender/makesdna/DNA_vec_types.h +++ b/source/blender/makesdna/DNA_vec_types.h @@ -17,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. @@ -38,14 +38,16 @@ typedef struct vec2s { short x, y; } vec2s; -typedef struct vec2i { - int x, y; -} vec2i; - typedef struct vec2f { float x, y; } vec2f; +/* not used at the moment */ +#if 0 +typedef struct vec2i { + int x, y; +} vec2i; + typedef struct vec2d { double x, y; } vec2d; @@ -73,6 +75,7 @@ typedef struct vec4f { typedef struct vec4d { double x, y, z, w; } vec4d; +#endif typedef struct rcti { int xmin, xmax; diff --git a/source/blender/makesdna/DNA_vfont_types.h b/source/blender/makesdna/DNA_vfont_types.h index b90e853d772..8a96d8574c2 100644 --- a/source/blender/makesdna/DNA_vfont_types.h +++ b/source/blender/makesdna/DNA_vfont_types.h @@ -17,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. diff --git a/source/blender/makesdna/DNA_view2d_types.h b/source/blender/makesdna/DNA_view2d_types.h index bc019ef8121..965e19e38a2 100644 --- a/source/blender/makesdna/DNA_view2d_types.h +++ b/source/blender/makesdna/DNA_view2d_types.h @@ -17,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. @@ -124,9 +124,12 @@ typedef struct View2D { #define V2D_SCROLL_SCALE_VERTICAL (1<<5) /* scale markings - horizontal */ #define V2D_SCROLL_SCALE_HORIZONTAL (1<<6) - /* disable draw temporary */ + /* induce hiding of scrollbars - set by region drawing in response to size of region */ #define V2D_SCROLL_VERTICAL_HIDE (1<<7) #define V2D_SCROLL_HORIZONTAL_HIDE (1<<8) + /* scrollbar extends beyond its available window - set when calculating scrollbars for drawing */ +#define V2D_SCROLL_VERTICAL_FULLR (1<<9) +#define V2D_SCROLL_HORIZONTAL_FULLR (1<<10) /* scroll_ui, activate flag for drawing */ #define V2D_SCROLL_H_ACTIVE (1<<0) diff --git a/source/blender/makesdna/DNA_view3d_types.h b/source/blender/makesdna/DNA_view3d_types.h index 4ad18a90a6b..123aab2d9e0 100644 --- a/source/blender/makesdna/DNA_view3d_types.h +++ b/source/blender/makesdna/DNA_view3d_types.h @@ -17,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. @@ -63,22 +63,27 @@ struct wmTimer; /* Background Picture in 3D-View */ typedef struct BGpic { + struct BGpic *next, *prev; + struct Image *ima; struct ImageUser iuser; float xof, yof, size, blend; + short view; + short flag; + float pad2; } BGpic; /* ********************************* */ typedef struct RegionView3D { - float winmat[4][4]; - float viewmat[4][4]; - float viewinv[4][4]; - float persmat[4][4]; - float persinv[4][4]; + float winmat[4][4]; /* GL_PROJECTION matrix */ + float viewmat[4][4]; /* GL_MODELVIEW matrix */ + float viewinv[4][4]; /* inverse of viewmat */ + float persmat[4][4]; /* viewmat*winmat */ + float persinv[4][4]; /* inverse of persmat */ - /* local viewmat/persmat, multiplied with object matrix, while drawing */ + /* viewmat/persmat multiplied with object matrix, while drawing and selection */ float viewmatob[4][4]; float persmatob[4][4]; @@ -140,7 +145,10 @@ typedef struct View3D { short view; /* XXX depricated */ struct Object *camera, *ob_centre; - struct BGpic *bgpic; + + struct ListBase bgpicbase; + struct BGpic *bgpic; /* deprecated, use bgpicbase, only kept for do_versions(...) */ + struct View3D *localvd; char ob_centre_bone[32]; /* optional string for armature bone to define center */ @@ -197,7 +205,7 @@ typedef struct View3D { /* View3D->flag (short) */ #define V3D_MODE (16+32+64+128+256+512) #define V3D_DISPIMAGE 1 -#define V3D_DISPBGPIC 2 +#define V3D_DISPBGPICS 2 #define V3D_HIDE_HELPLINES 4 #define V3D_INVALID_BACKBUF 8 #define V3D_EDITMODE 16 @@ -283,6 +291,9 @@ typedef struct View3D { #define V3D_DRAW_MANIPULATOR 2 #define V3D_CALC_MANIPULATOR 4 +/* BGPic->flag */ +/* may want to use 1 for select ?*/ +#define V3D_BGPIC_EXPANDED 2 #endif diff --git a/source/blender/makesdna/DNA_wave_types.h b/source/blender/makesdna/DNA_wave_types.h index 6f87dd69e58..b05ae862108 100644 --- a/source/blender/makesdna/DNA_wave_types.h +++ b/source/blender/makesdna/DNA_wave_types.h @@ -17,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. diff --git a/source/blender/makesdna/DNA_windowmanager_types.h b/source/blender/makesdna/DNA_windowmanager_types.h index 7df49bfb2e2..a53645e7442 100644 --- a/source/blender/makesdna/DNA_windowmanager_types.h +++ b/source/blender/makesdna/DNA_windowmanager_types.h @@ -15,7 +15,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2007 Blender Foundation. * All rights reserved. @@ -109,7 +109,7 @@ typedef struct wmWindowManager { int initialized; /* set on file read */ short file_saved; /* indicator whether data was saved */ - short pad; + short op_undo_depth; /* operator stack depth to avoid nested undo pushes */ ListBase operators; /* operator registry */ @@ -121,6 +121,8 @@ typedef struct wmWindowManager { ListBase paintcursors; /* extra overlay cursors to draw, like circles */ + ListBase drags; /* active dragged items */ + ListBase keyconfigs; /* known key configurations */ struct wmKeyConfig *defaultconf; /* default configuration, not saved */ @@ -257,9 +259,7 @@ typedef struct wmKeyConfig { } wmKeyConfig; /* wmKeyConfig.flag */ -#define KEYCONF_TWOBUTTONMOUSE (1 << 1) -#define KEYCONF_LMOUSESELECT (1 << 2) -#define KEYCONF_NONUMPAD (1 << 3) +#define KEYCONF_USER (1 << 1) /* this one is the operator itself, stored in files for macros etc */ /* operator + operatortype should be able to redo entirely, but for different contextes */ @@ -271,8 +271,9 @@ typedef struct wmOperator { IDProperty *properties; /* saved, user-settable properties */ /* runtime */ - struct wmOperatorType *type; /* operator type definition from idname */ + struct wmOperatorType *type;/* operator type definition from idname */ void *customdata; /* custom storage, only while operator runs */ + void *py_instance; /* python stores the class instance here */ struct PointerRNA *ptr; /* rna pointer to access properties */ struct ReportList *reports; /* errors and warnings storage */ @@ -290,6 +291,8 @@ typedef struct wmOperator { #define OPERATOR_FINISHED 4 /* add this flag if the event should pass through */ #define OPERATOR_PASS_THROUGH 8 +/* in case operator got executed outside WM code... like via fileselect */ +#define OPERATOR_HANDLED 16 /* wmOperator flag */ #define OP_GRAB_POINTER 1 diff --git a/source/blender/makesdna/DNA_world_types.h b/source/blender/makesdna/DNA_world_types.h index 9b3f78caee0..66d31467c4a 100644 --- a/source/blender/makesdna/DNA_world_types.h +++ b/source/blender/makesdna/DNA_world_types.h @@ -17,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. @@ -107,7 +107,7 @@ typedef struct World { short aomode, aosamp, aomix, aocolor; float ao_adapt_thresh, ao_adapt_speed_fac; float ao_approx_error, ao_approx_correction; - float ao_indirect_energy; + float ao_indirect_energy, ao_env_energy, ao_pad2; short ao_indirect_bounces, ao_pad; short ao_samp_method, ao_gather_method, ao_approx_passes; @@ -142,13 +142,16 @@ typedef struct World { #define WO_STARS 2 #define WO_DOF 4 #define WO_ACTIVITY_CULLING 8 -#define WO_AMB_OCC 16 +#define WO_ENV_LIGHT 16 #define WO_DBVT_CULLING 32 +#define WO_AMB_OCC 64 +#define WO_INDIRECT_LIGHT 128 /* aomix */ #define WO_AOADD 0 -#define WO_AOSUB 1 -#define WO_AOADDSUB 2 +#define WO_AOSUB 1 /* deprecated */ +#define WO_AOADDSUB 2 /* deprecated */ +#define WO_AOMUL 3 /* ao_samp_method - methods for sampling the AO hemi */ #define WO_AOSAMP_CONSTANT 0 @@ -183,6 +186,10 @@ typedef struct World { /* flag */ #define WO_DS_EXPAND (1<<0) + /* NOTE: this must have the same value as MA_DS_SHOW_TEXS, + * otherwise anim-editors will not read correctly + */ +#define WO_DS_SHOW_TEXS (1<<2) #endif diff --git a/source/blender/makesdna/intern/CMakeLists.txt b/source/blender/makesdna/intern/CMakeLists.txt index 1fb63156f26..0eb42373d6d 100644 --- a/source/blender/makesdna/intern/CMakeLists.txt +++ b/source/blender/makesdna/intern/CMakeLists.txt @@ -13,7 +13,7 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software Foundation, -# Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. # # The Original Code is Copyright (C) 2006, Blender Foundation # All rights reserved. diff --git a/source/blender/makesdna/intern/SConscript b/source/blender/makesdna/intern/SConscript index 1cc66d0873b..fd6f2312fde 100644 --- a/source/blender/makesdna/intern/SConscript +++ b/source/blender/makesdna/intern/SConscript @@ -51,7 +51,7 @@ if not (root_build_dir[0]==os.sep or root_build_dir[1]==':'): targetdir = '#' + targetdir #root_build_dir = "#" -makesdna = makesdna_tool.Program (target = targetdir, source = source_files, LIBS=['bf_guardedalloc']) +makesdna = makesdna_tool.Program (target = targetdir, source = source_files, LIBS=['bf_guardedalloc', 'bf_blenlib']) dna_dict = dna.Dictionary() dna.Depends ('dna.c', makesdna) @@ -60,6 +60,11 @@ dna.Depends ('dna.c', header_files) ap = os.path.abspath if env['OURPLATFORM'] != 'linuxcross': + if env['OURPLATFORM'] in ('win32-vc', 'win64-vc', 'win32-mingw'): + dna.Command ('dna.c', '', "\"" + root_build_dir+os.sep+"makesdna\" $TARGET") + else: + dna.Command ('dna.c', '', root_build_dir+os.sep+"makesdna $TARGET") +else: if USE_WINE: dna.Command ('dna.c', '', 'wine ' + ap(root_build_dir+os.sep+"makesdna $TARGET")) else: @@ -67,7 +72,6 @@ if env['OURPLATFORM'] != 'linuxcross': dna.Command ('dna.c', '', "\"" + root_build_dir+os.sep+"makesdna\" $TARGET") else: dna.Command ('dna.c', '', root_build_dir+os.sep+"makesdna $TARGET") -else: - dna.Command ('dna.c', '', ap(root_build_dir+os.sep+"makesdna.exe $TARGET")) + obj = ['intern/dna.c', 'intern/dna_genfile.c'] Return ('obj') diff --git a/source/blender/makesdna/intern/dna_genfile.c b/source/blender/makesdna/intern/dna_genfile.c index 628983ae879..89219b114da 100644 --- a/source/blender/makesdna/intern/dna_genfile.c +++ b/source/blender/makesdna/intern/dna_genfile.c @@ -18,7 +18,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. @@ -297,7 +297,7 @@ int DNA_struct_find_nr(SDNA *sdna, const char *str) static void init_structDNA(SDNA *sdna, int do_endian_swap) /* in sdna->data the data, now we convert that to something understandable */ { - int *data, *verg; + int *data, *verg, gravity_fix= -1; intptr_t nr; short *sp; char str[8], *cp; @@ -330,6 +330,17 @@ static void init_structDNA(SDNA *sdna, int do_endian_swap) cp= (char *)data; while(nr<sdna->nr_names) { sdna->names[nr]= cp; + + /* "float gravity [3]" was parsed wrong giving both "gravity" and + "[3]" members. we rename "[3]", and later set the type of + "gravity" to "void" so the offsets work out correct */ + if(*cp == '[' && strcmp(cp, "[3]")==0) { + if(nr && strcmp(sdna->names[nr-1], "Cvi") == 0) { + sdna->names[nr]= "gravity[3]"; + gravity_fix= nr; + } + } + while( *cp) cp++; cp++; nr++; @@ -444,7 +455,7 @@ static void init_structDNA(SDNA *sdna, int do_endian_swap) nr++; } - + /* finally pointerlen: use struct ListBase to test it, never change the size of it! */ sp= findstruct_name(sdna, "ListBase"); /* weird; i have no memory of that... I think I used sizeof(void *) before... (ton) */ @@ -457,6 +468,14 @@ static void init_structDNA(SDNA *sdna, int do_endian_swap) /* well, at least sizeof(ListBase) is error proof! (ton) */ } + /* second part of gravity problem, setting "gravity" type to void */ + if(gravity_fix > -1) { + for(nr=0; nr<sdna->nr_structs; nr++) { + sp= sdna->structs[nr]; + if(strcmp(sdna->types[sp[0]], "ClothSimSettings") == 0) + sp[10]= 9; + } + } } } diff --git a/source/blender/makesdna/intern/makesdna.c b/source/blender/makesdna/intern/makesdna.c index cae28f163ed..2d62b81e81b 100644 --- a/source/blender/makesdna/intern/makesdna.c +++ b/source/blender/makesdna/intern/makesdna.c @@ -15,7 +15,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV. * All rights reserved. @@ -277,7 +277,13 @@ int add_name(char *str) if((str[0]==0) /* || (str[1]==0) */) return -1; if (str[0] == '(' && str[1] == '*') { - if (debugSDNA > 3) printf("\t\t\t\t*** Function pointer found\n"); + /* we handle function pointer and special array cases here, e.g. + void (*function)(...) and float (*array)[..]. the array case + name is still converted to (array*)() though because it is that + way in old dna too, and works correct with elementsize() */ + int isfuncptr = (strchr(str+1, '(')) != NULL; + + if (debugSDNA > 3) printf("\t\t\t\t*** Function pointer or multidim array pointer found\n"); /* functionpointer: transform the type (sometimes) */ i = 0; j = 0; @@ -302,7 +308,15 @@ int add_name(char *str) if (debugSDNA > 3) printf("seen %c ( %d) \n", str[j], str[j]); if (debugSDNA > 3) printf("special after offset %d\n", j); - if (str[j] == 0 ) { + if (!isfuncptr) { + /* multidimensional array pointer case */ + if(str[j] == 0) { + if (debugSDNA > 3) printf("offsetting for multidim array pointer\n"); + } + else + printf("Error during tokening multidim array pointer\n"); + } + else if (str[j] == 0 ) { if (debugSDNA > 3) printf("offsetting for space\n"); /* get additional offset */ k = 0; @@ -685,7 +699,7 @@ static int calculate_structlens(int firststruct) for(b=0; b<structpoin[1]; b++, sp+=2) { type= sp[0]; cp= names[sp[1]]; - + namelen= (int) strlen(cp); /* is it a pointer or function pointer? */ if(cp[0]=='*' || cp[1]=='*') { @@ -715,6 +729,10 @@ static int calculate_structlens(int firststruct) len += sizeof(void *) * mul; alphalen += 8 * mul; + } else if(cp[0]=='[') { + /* parsing can cause names "var" and "[3]" to be found for "float var [3]" ... */ + printf("Parse error in struct, invalid member name: %s %s\n", types[structtype], cp); + dna_error = 1; } else if( typelens[type] ) { /* has the name an extra length? (array) */ mul= 1; @@ -1050,10 +1068,10 @@ int make_structDNA(char *baseDirectory, FILE *file) /* ************************* END MAKE DNA ********************** */ -static void make_bad_file(char *file) +static void make_bad_file(char *file, int line) { FILE *fp= fopen(file, "w"); - fprintf(fp, "ERROR! Cannot make correct DNA.c file, STUPID!\n"); + fprintf(fp, "#error \"Error! can't make correct DNA.c file from %s:%d, STUPID!\"\n", __FILE__, line); fclose(fp); } @@ -1087,7 +1105,7 @@ int main(int argc, char ** argv) if (make_structDNA(baseDirectory, file)) { // error fclose(file); - make_bad_file(argv[1]); + make_bad_file(argv[1], __LINE__); return_status = 1; } else { fprintf(file, "};\n"); |