12 years agobranch from 2.5 for kazanbas
Martin Poirier [Tue, 21 Apr 2009 13:29:31 +0000 (13:29 +0000)]
branch from 2.5 for kazanbas

12 years agoUI: more scene buttons tweaks by Thomas Dinges.
Brecht Van Lommel [Mon, 20 Apr 2009 16:53:50 +0000 (16:53 +0000)]
UI: more scene buttons tweaks by Thomas Dinges.

12 years agoMerge ICON_SNAP_PEEL_OBJECT and corresponding icon in blenderbuttons (need new icon...
Martin Poirier [Mon, 20 Apr 2009 16:31:46 +0000 (16:31 +0000)]
Merge ICON_SNAP_PEEL_OBJECT and corresponding icon in blenderbuttons (need new icon though)

12 years ago2.50: svn merge -r19323...
Brecht Van Lommel [Mon, 20 Apr 2009 15:06:46 +0000 (15:06 +0000)]
2.50: svn merge -r19323:HEAD

* blenderbuttons and ICON_SNAP_PEEL_OBJECT were not merged.

12 years agoUI: fix for back buffer option in scene buttons, by Thomas Dinges.
Brecht Van Lommel [Mon, 20 Apr 2009 13:16:17 +0000 (13:16 +0000)]
UI: fix for back buffer option in scene buttons, by Thomas Dinges.

12 years ago2.5
Ton Roosendaal [Mon, 20 Apr 2009 12:03:55 +0000 (12:03 +0000)]

Node title and socket labels are now following Style/Font as well, and
scale correctly.

12 years ago2.5
Ton Roosendaal [Mon, 20 Apr 2009 11:39:18 +0000 (11:39 +0000)]


- HSV picker didn't work. Old option "No Hilite" for buttons made it not
  being checked for input anymore. Needs to be on attention list!

- Node editor wasn't drawing buttons correctly. Two things to keep track
  - Use wmLoadIdentity(), not glLoadIdentity()
  - I've added a wmPushMatrix() and wmPopMatrix() version for correct
    wm-compatible push/pop. Only one level for now.

12 years agoDrivers - Rotational Difference
Joshua Leung [Mon, 20 Apr 2009 10:45:25 +0000 (10:45 +0000)]
Drivers - Rotational Difference

Restored the code to get this working. I haven't tested this to verify it, but it 'should' work...

Also, deleted old gpencil.c file in editors, since it was causing compiling errors.

12 years agoForgot to add the new gpencil files! :)
Ton Roosendaal [Mon, 20 Apr 2009 10:20:18 +0000 (10:20 +0000)]
Forgot to add the new gpencil files! :)

12 years ago2.5
Ton Roosendaal [Mon, 20 Apr 2009 10:13:55 +0000 (10:13 +0000)]

Patch from Joshua, converting Grease Pencil to 2.5.
All GP data now is an ID block, allowing re-use, link and append.
For better contextual control within 2.5, these GP ID's will get
linked to actual data, like NodeTrees, Scenes, Images or Objects.
That will ensure Undo works, and opens up exciting new use cases
as well. :)

Patch note: on reading files, GPencils linked from editors will
get moved to the main library, using standard naming (indicating
where it was used), and with "Fake User" set. That way the user
can manually relink the pencils where appropriate.
We can check on just linking GP to some default, like 3d window
pencils to Scene? Nice to experiment with.

Notes for Joshua:
- for reading old GPencil, it has to use old code as well, meaning
  to tread data as "indirect data, within another ID".
- Saving ID data means the chunk in file BHead needs the ID_GD code,
  and not "DATA", which indicates 'indirect data'. That's the file
  format spec.
- I've added do_versions_gpencil_2_50(), feel free to further tweak
  things here, like linking things to scene or so.
- Formerly GPencil saved 2.50 files won't convert gpencil

12 years agoDrivers: "Scripted Expression" drivers (i.e. PyDrivers) work again
Joshua Leung [Mon, 20 Apr 2009 09:17:43 +0000 (09:17 +0000)]
Drivers: "Scripted Expression" drivers (i.e. PyDrivers) work again

Now it is possible to write a Python Expression using the variable names for driver targets (see mockup from initial commit) to substitute the appropriate values into the expression.

In the __global__ namespace for PyDriver evaluation, the following modules are available:
* __builtins__ - i.e. the builtin Python functions
* bpy - new Python API
* math or m - math module

For example:
Consider a driver with three targets, named: A, B, C
Now, you could write an expression like:
   C if A < 5 else B
or even:
   2*C if A < 5 or A > 20 else m.PI*B

Of course, you don't have to have three targets, the above was just an example.

* Bring back way to load
* Blender.Noise equivalent would be nice to have

P.S.  I hope I haven't made any terrible Python API coding errors here (i.e. mem leaks, etc.)

12 years agoAdded some missing rna entries for scene, and added them to the scene buttons with...
Michael Fox [Mon, 20 Apr 2009 04:58:22 +0000 (04:58 +0000)]
Added some missing rna entries for scene, and added them to the scene buttons with some missing elements aswell

12 years agoDrivers: Editing ops in the Outliner
Joshua Leung [Mon, 20 Apr 2009 03:52:13 +0000 (03:52 +0000)]
Drivers: Editing ops in the Outliner

In much the same way as Keying Sets are defined in the Outliner, you can now select items in the Datablocks view of the Outliner, and use the D/Alt-D hotkeys to Add/Remove drivers (repectively). This is useful for settings which don't have buttons yet (in the buttons window).

12 years agoA bit more F-Modifier wrapping...
Joshua Leung [Mon, 20 Apr 2009 03:29:45 +0000 (03:29 +0000)]
A bit more F-Modifier wrapping...

12 years agochanged some {} to {0}, these were causing errors on msvc. also got rid of some...
Joseph Eagar [Sun, 19 Apr 2009 20:09:31 +0000 (20:09 +0000)]
changed some {} to {0}, these were causing errors on msvc.  also got rid of some spurious prototypes I forgot to get rid off.

12 years agoRNA:
Brecht Van Lommel [Sun, 19 Apr 2009 17:12:16 +0000 (17:12 +0000)]
* Wrapped HeaderType/Header.
* Some tweaks to get type properties wrapped with less code.
* Made Panel space and region types enum instead of string.

12 years agoRNA: Generic Type Registration
Brecht Van Lommel [Sun, 19 Apr 2009 13:37:59 +0000 (13:37 +0000)]
RNA: Generic Type Registration

The Python API to define Panels and Operators is based on subclassing,
this makes that system more generic, and based on RNA. Hopefully that
will make it easy to make various parts of Blender more extensible.

* The system simply uses RNA properties and functions and marks them
  with REGISTER to make them part of the type registration process.
  Additionally, the struct must provide a register/unregister callback
  to create/free the PanelType or similar.
* From the python side there were some small changes, mainly that
  registration now goes trough bpy.types.register instead of

* Only Panels have been wrapped this way now.  Check rna_ui.c to see
  how this code works. There's still some rough edges and possibilities
  to make it cleaner, though it works without any manual python code.
* Started some docs here:

* Also changed some RNA_property and RNA_struct functions to not
  require a PointerRNA anymore, where they were not required (which
  is actually the cause of most changed files).

12 years agoGraph Editor: UI bugfixes
Joshua Leung [Sun, 19 Apr 2009 12:26:31 +0000 (12:26 +0000)]
Graph Editor: UI bugfixes

* Fixed a few alignment/size issues
* Number buttons work nicely again. Added temporary define for floating point limits here...

12 years agoRNA - F-Curve Modifier Wrapping
Joshua Leung [Sun, 19 Apr 2009 10:44:07 +0000 (10:44 +0000)]
RNA - F-Curve Modifier Wrapping

* Separated F-Curve specific wrapping out to its own file
* Wrapped some F-Curve Modifiers (others to follow shortly)

12 years ago2.5 MSVC9 projectfiles
Andrea Weikert [Sat, 18 Apr 2009 10:08:19 +0000 (10:08 +0000)]
2.5 MSVC9 projectfiles
* long time due: copy the executables to the install/msvc9 or install/msvc9d dir instead of keeping them in the source tree in the bin folder!
* copy the new ui scripts to the install dir

12 years ago2.5 MSVC9 projectfiles
Andrea Weikert [Sat, 18 Apr 2009 08:40:14 +0000 (08:40 +0000)]
2.5 MSVC9 projectfiles
- added editors/keyingsets.c

12 years ago2.5 / win64
Nathan Letwory [Sat, 18 Apr 2009 00:26:15 +0000 (00:26 +0000)]
2.5 / win64
* make sure right libname is used for gettext.

12 years agoUI: fix for mistake in last panel commit.
Brecht Van Lommel [Fri, 17 Apr 2009 13:37:03 +0000 (13:37 +0000)]
UI: fix for mistake in last panel commit.

12 years agoUI:
Brecht Van Lommel [Fri, 17 Apr 2009 11:59:25 +0000 (11:59 +0000)]
* Forgot to finish this code yesterday, dragging panels was
  broken. This is fixed and new panels are now inserted after
  the last added one, inbetween others rather than at the end.

12 years ago2.5 Animation UI Tweaks:
Joshua Leung [Fri, 17 Apr 2009 02:13:35 +0000 (02:13 +0000)]
2.5 Animation UI Tweaks:

* Added back backgrounds behind buttons for modifiers and driver targets
* 'Protect' toggle doesn't draw for F-Curves with no keyframes to prevent editing on anymore
* Inserting keyframes on objects using builtin keyingsets now use the right names

12 years agoUI:
Brecht Van Lommel [Thu, 16 Apr 2009 21:58:06 +0000 (21:58 +0000)]
* Broke loading in last commit.
* Fix issue with space not being distributed equally
  in the layout engine.

12 years ago2.5 / SCons
Nathan Letwory [Thu, 16 Apr 2009 21:51:20 +0000 (21:51 +0000)]
2.5 / SCons
* ui layout scripts were not copied to bundle on OSX
  patch by Stephan Kassemeyer on ML

12 years agoUI:
Brecht Van Lommel [Thu, 16 Apr 2009 21:39:45 +0000 (21:39 +0000)]
* For new buttons spaces, automatically set horizontal/vertical
  align depending on size, instead of free.

* Cleaned up the UI panel API. There's now a new uiBeginPanel
  function which takes a panel type, and a uiEndPanel which takes
  the final size. uiNewPanel* functions will be phased out.
* Animate the re-alignment when a panel size changes, e.g. when
  enabling dupliframes.

* Load ui scripts from the release/ folder first if it is
  available. This makes it easier to edit ui scripts, since it
  will directly use the original files which avoids having to
  run the build system.
* Improve editing of panel types while blender is open. That
  means fixing some issues with lacking updates, overlaps, strange
  ordering. It even does an animation now when the panel resizes.

12 years agoRemoved space for target binary name
Ton Roosendaal [Thu, 16 Apr 2009 15:49:31 +0000 (15:49 +0000)]
Removed space for target binary name

12 years agoRemove ftfont from Makefile, it's not there anymore.
Diego Borghetti [Thu, 16 Apr 2009 15:01:51 +0000 (15:01 +0000)]
Remove ftfont from Makefile, it's not there anymore.

12 years agomerged pyrna_py_to_param and pyrna_py_to_prop since they are almost the same
Campbell Barton [Thu, 16 Apr 2009 13:21:18 +0000 (13:21 +0000)]
merged pyrna_py_to_param and pyrna_py_to_prop since they are almost the same

12 years ago2.5:
Joshua Leung [Thu, 16 Apr 2009 13:10:08 +0000 (13:10 +0000)]

* Added extra parameter to generic unique name finding function BLI_uniquename() for specifying the delimeter between non-unique parts of the name and digits.

* Driver target variables now get unique names by default.

12 years ago2.5:
Brecht Van Lommel [Thu, 16 Apr 2009 13:01:50 +0000 (13:01 +0000)]
* Also look in ./release for scripts instead of next to executable.
* Some warning fixes.

12 years agoDrivers: Depsgraph building works again
Joshua Leung [Thu, 16 Apr 2009 12:49:12 +0000 (12:49 +0000)]
Drivers: Depsgraph building works again

Cleaned up the code for adding driver relationships in the Depsgraph (see! I said it was going to be easy). Now, adding drivers works nicely.

12 years agoDrivers: UI working + bugfixes
Joshua Leung [Thu, 16 Apr 2009 12:38:44 +0000 (12:38 +0000)]
Drivers: UI working + bugfixes

* The UI for adding and modifying drivers is now functional, and reflects the new way they work. It has also been tidied up a bit (from the previous incarnation), with RNA buttons starting to be used (currently limited to the 'Path' settings).
* Fixed errors in RNA wrapping for drivers

12 years agoUI:
Brecht Van Lommel [Thu, 16 Apr 2009 12:17:58 +0000 (12:17 +0000)]
* Don't call generic layout hints templates anymore, i.e.
  TemplateRow becomes Row, etc.
* Added more general layout nesting, using uiLayoutSplit()
  and uiLayoutBox() functions, for which the sublayouts
  can then be accessed using uiLayoutSub(), to put items
  in those sublayouts.
* Some steps to make the layout decisions, like which items
  to put in which columns, independent of the width of the
  window or the text in the buttons. We want the layout to
  be stable under resizes and translations.
* Added an "expand" parameter to uiItemR, used now to expand
  enums into a row instead of using a menu.

12 years ago2.5 / SCons
Nathan Letwory [Thu, 16 Apr 2009 10:45:21 +0000 (10:45 +0000)]
2.5 / SCons
* make sure makesdna and makesrna work on windows in directories with spaces in them.

12 years agoAnimato - Drivers with Multiple Targets:
Joshua Leung [Thu, 16 Apr 2009 07:37:06 +0000 (07:37 +0000)]
Animato - Drivers with Multiple Targets:

Drivers now support multiple targets which act as 'variables'. The targets have a short 'name' (see later), and reference some property (in much the same way as F-Curves do, using RNA-Paths) which acts as the 'value'.

These named variables can then be used in a Python Expression which relates them to each other for more fine-grained control over the result of the driver. By using only the names of these variables in the expressions, we are able to define expressions/relationships in a much more readable way, as data access is separated from data use. This makes the underlying relationships easier to understand.

By default, if no Python Expression is given, the variables are simply averaged together, so old files won't break. :)

For example, check the following diagram (thanks Cessen/Nathan V from Peach team):

TODO List:
* Depsgraph building for new driver relationships doesn't work yet. This needs to be recoded again, but this new system makes this much easier, since the targets are clearly defined (i.e. no need to parse py expressions to get list of objects)
* Graph Editor interface for editing these needs to be rewritten
* Python function for evaluating these expressions is needed (Campbell?)

12 years agoNeed to update the RNA pointers before running scripts
Campbell Barton [Thu, 16 Apr 2009 01:42:53 +0000 (01:42 +0000)]
Need to update the RNA pointers before running scripts

12 years agoPoseLib: Fixed up RNA-properties for this operator so that it can be repeated using...
Joshua Leung [Thu, 16 Apr 2009 00:53:22 +0000 (00:53 +0000)]
PoseLib: Fixed up RNA-properties for this operator so that it can be repeated using the exec() callback added in previous commit.

12 years ago2.5 PoseLib/KeyingSets bugfixes:
Joshua Leung [Thu, 16 Apr 2009 00:33:40 +0000 (00:33 +0000)]
2.5 PoseLib/KeyingSets bugfixes:

* Replaced a quicky hack needed to get PoseLib working with a proper new group-naming option for KeyingSets. Now, all builtin KeyingSets will use the name of the data (i.e. Object or PoseChannel) as the name of the group new channels are added to

* Fixed a bug with LocRotScale builtin KeyingSet, which meant that scale keyframes were not getting added.

* TAB key (toggle original pose) now works again. Previously, events were flying past too quickly.

12 years ago 2.5
Michael Fox [Thu, 16 Apr 2009 00:00:45 +0000 (00:00 +0000)]
Made selection operators use extend/exclusive (where appropriate)

12 years agoRNA fixes provided by Thomas Dinges / DingTo - Thanks!
Daniel Genrich [Wed, 15 Apr 2009 21:03:23 +0000 (21:03 +0000)]
RNA fixes provided by Thomas Dinges / DingTo - Thanks!

12 years ago2.5
Ton Roosendaal [Wed, 15 Apr 2009 17:53:12 +0000 (17:53 +0000)]

- Fun for testers: Added "Redo Operator" Panel in view3d 'nkey' region.
  It's going to be part of tools UI I know, but this will give good
  tests of what goes on with operators. I had to add small fixes in
  Transform for it already. :)
  One important issue to note is that it lists every operator, also from
  non-3D-window ops. Needs checked or classified somehow.

- Fix: removed bad 2.4x hack from how pulldown menus were defined. Made
  widget code cleaner, and will show menus like SHIFT+A correct now.

12 years ago2.5: Operator naming, reviewed some of the recent changes
Brecht Van Lommel [Wed, 15 Apr 2009 15:40:31 +0000 (15:40 +0000)]
2.5: Operator naming, reviewed some of the recent changes
by Shaul, did some minor tweaks.

12 years agoRNA:
Brecht Van Lommel [Wed, 15 Apr 2009 15:12:42 +0000 (15:12 +0000)]
* For RNA wrapped functions, the prototypes of the original
  function being wrapped is now generated as well. This is
  an extra check to ensure that the function is correctly
  wrapped. It's printed after the function is used to still
  get proper warnings in case the #include for it is missing.

12 years agoUI:
Brecht Van Lommel [Wed, 15 Apr 2009 15:10:31 +0000 (15:10 +0000)]
* Converted scene buttons layout code to use python.

12 years agoUI:
Brecht Van Lommel [Wed, 15 Apr 2009 15:09:36 +0000 (15:09 +0000)]
* Added simple row template to layout buttons
  in a horizontal row, so you don't need to use
  columns for it.

12 years ago2.5
Ton Roosendaal [Wed, 15 Apr 2009 14:43:54 +0000 (14:43 +0000)]

Fixed & upgraded tooltips to new drawing system.
Also fixed small error in menu shadows. Rounding of shadow below
menu went wrong.

12 years agocmake support for python25_d.lib in debug on win32. other platforms should work as...
Shaul Kedem [Wed, 15 Apr 2009 13:11:08 +0000 (13:11 +0000)]
cmake support for python25_d.lib in debug on win32. other platforms should work as always

12 years agoAction Constraint: Optimisation attempt
Joshua Leung [Wed, 15 Apr 2009 12:59:49 +0000 (12:59 +0000)]
Action Constraint: Optimisation attempt

Following on from the methods added specially for PoseLib to only execute the F-Curves in a given Action Group, I've attempted to use this for evaluating Action Constraints on Pose Channels. This does rely on the F-Curves being in groups named according to name of the Pose Channel of interest, hence, we may need some way to be able to fine tune this later.

Preliminary tests seem to be promising, with rigs with quite a few action constraints being slightly more responsive (subjective test though). Please test thoroughly.

12 years agoPoseLib: Fixed lingering bugs with Browsing (Ctrl-L)
Joshua Leung [Wed, 15 Apr 2009 12:38:04 +0000 (12:38 +0000)]
PoseLib: Fixed lingering bugs with Browsing (Ctrl-L)

* Bug with confirming was due to mixed up order for events handling and updates for drawing. Now events are handled before relevant updates are done for drawing, since these only get called when an event occurs.

* View manipulations work again, and in a much nicer way thanks to the OPERATOR_PASS_THROUGH flags :)

* Search seems to work much better now again too...

12 years agoPoseLib: Interactively browsing poses with Ctrl-L now mostly works again
Joshua Leung [Wed, 15 Apr 2009 12:04:10 +0000 (12:04 +0000)]
PoseLib: Interactively browsing poses with Ctrl-L now mostly works again

This (most important part) of PoseLib now mostly works again. It even works for PoseLibs saved with the old animation system.

However, there are a few annoying bugs that need to be addressed still:
* When 'confirming' poses, the pose changes to the next one before PoseLib exits. I'm not quite sure where this is coming from yet...
* There are still a few minor bugs in the search-string code that will get ironed out
* AutoKeyframing doesn't work yet for this

12 years agoFixing linux compiling
Joilnen Leite [Wed, 15 Apr 2009 10:18:58 +0000 (10:18 +0000)]
Fixing linux compiling

12 years agoPoseLib: Operatorfied Add/Remove/Rename Tools
Joshua Leung [Wed, 15 Apr 2009 03:22:22 +0000 (03:22 +0000)]
PoseLib: Operatorfied Add/Remove/Rename Tools

* These still use the old hotkeys - Add (Shift-L), Remove (Alt-L), Rename (Ctrl-Shift-L)
* Outliner now shows PoseLib entry. Todo still is to use a different icon for this?

* The code is now much simpler in many places :)
* Add and Rename operators require a string as input to set a new name for the Pose concerned. For now, I've just added a prop for this, which will hopefully be able to be filled in at some point.

12 years ago2.5 PoseLib - First steps to get PoseLib to work in 2.5
Joshua Leung [Wed, 15 Apr 2009 01:10:36 +0000 (01:10 +0000)]
2.5 PoseLib - First steps to get PoseLib to work in 2.5

* Cleaned up Keyframing API to get eliminate some of the problems faced during the original implementation of PoseLib, thus reducing code redundancy.
* Added new Animato evaluation functions specifically for use by PoseLib.
* Replaced parts of PoseLib code which relied on old animation system to the equivalent code for Animato. Notice the much cleaner + saner + compact code!

Next step is to operatorfy the PoseLib tools (while maintaining possibility for an API to some things) :)

12 years ago2.5
Ton Roosendaal [Tue, 14 Apr 2009 15:59:52 +0000 (15:59 +0000)]

More cleanup!

- removed old UI font completely, including from uiBeginBlock
- emboss hints for uiBlock only have three types now;
  Regular, Pulldown, or "Nothing" (only icon/text)
- removed old font path from Userdef
- removed all old button theme hinting
- removed old "auto block" to merge buttons in groups
  (was only in use for radiosity buttons)

And went over all warnings. One hooray for make giving clean output :)
Well, we need uniform definitions for warnings, so people at least fix
them... here's the real bad bugs I found:

- in mesh code, a call to editmesh mixed *em and *me
- in armature, ED_util.h was not included, so no warnings for wrong call
  to ED_undo_push()
- The extern Py api .h was not included in the bpy_interface.c, showing
  a several calls using different args.

Further just added the missing includes, and removed unused vars.

12 years agoFCurve Modifiers - "Limits" Modifier:
Joshua Leung [Tue, 14 Apr 2009 11:53:41 +0000 (11:53 +0000)]
FCurve Modifiers - "Limits" Modifier:

This new modifier clamps the values of the F-Curve to lie within specified bounds, much like Limit Location/Rotation/Scale constraints do. You can limit by time range(s) and/or value range(s).

12 years agoAction Code - Tidied up some code that wasn't working yet
Joshua Leung [Tue, 14 Apr 2009 10:18:48 +0000 (10:18 +0000)]
Action Code - Tidied up some code that wasn't working yet

12 years ago2.5
Ton Roosendaal [Mon, 13 Apr 2009 15:55:27 +0000 (15:55 +0000)]

Code revamp: moved the animation colors for widget to own struct, was
polluting the per-widget theme colors too much. Still WIP here... it
will go to Theme struct once I've removed all old colors.

12 years ago2.5
Ton Roosendaal [Mon, 13 Apr 2009 14:39:43 +0000 (14:39 +0000)]

Bugfix: loading 2.5 .blend files in different sized windows didn't correct
the screen size for it yet.

12 years ago2.5
Ton Roosendaal [Mon, 13 Apr 2009 14:22:22 +0000 (14:22 +0000)]

Makefile update for osx: copy ui scripts to .blender dir in .app folder

12 years agoAnimato Bugfixes:
Joshua Leung [Mon, 13 Apr 2009 11:15:43 +0000 (11:15 +0000)]
Animato Bugfixes:

* Copying objects with animation data now works correctly. Previously, actions were not getting copied correctly, leading to loss of data in some cases.
* Action and Graph editors now display the name of the Action concerned (for 'Action' folder channels), making it easier to tell which AnimData blocks are sharing the same actions
* Added some code to make relative KeyingSets (converted from absolute ones) work better.

12 years agoFurther simplified code for defining builtin KeyingSets (i.e. made the macros do...
Joshua Leung [Mon, 13 Apr 2009 02:57:24 +0000 (02:57 +0000)]
Further simplified code for defining builtin KeyingSets (i.e. made the macros do more!)

12 years ago2.5 - Separated Keying Sets code out into its own file
Joshua Leung [Mon, 13 Apr 2009 02:40:56 +0000 (02:40 +0000)]
2.5 - Separated Keying Sets code out into its own file

12 years ago2.5 - Assorted tweaks in Graph Editor
Joshua Leung [Mon, 13 Apr 2009 00:46:32 +0000 (00:46 +0000)]
2.5 - Assorted tweaks in Graph Editor

12 years agoadditional op naming convention changes
Shaul Kedem [Sun, 12 Apr 2009 23:05:40 +0000 (23:05 +0000)]
additional op naming convention changes

12 years agopy3 needs print()
Campbell Barton [Sun, 12 Apr 2009 22:53:54 +0000 (22:53 +0000)]
py3 needs print()

12 years agocurve op align to naming convention
Shaul Kedem [Sun, 12 Apr 2009 22:43:07 +0000 (22:43 +0000)]
curve op align to naming convention

12 years agoarmature ops aligned with naming conventions - small fix
Shaul Kedem [Sun, 12 Apr 2009 22:16:21 +0000 (22:16 +0000)]
armature ops aligned with naming conventions - small fix

12 years ago2.5 MSVC projectfiles
Andrea Weikert [Sun, 12 Apr 2009 20:34:46 +0000 (20:34 +0000)]
2.5 MSVC projectfiles
- added missing files
- cleanup of some project settings
- RNA building has dependency issue: had to add interface_api.c to the makesrna project and makesrna and rna projects now include editors.
- added debug libraries for OpenExr, please update lib/windows/openexr to get them

12 years agosequencer op names change
Shaul Kedem [Sun, 12 Apr 2009 20:32:42 +0000 (20:32 +0000)]
sequencer op names change

12 years agoeditmesh_tools.c op name change
Shaul Kedem [Sun, 12 Apr 2009 17:54:07 +0000 (17:54 +0000)]
editmesh_tools.c op name change

12 years agoeditmesh_mods.c op names change
Shaul Kedem [Sun, 12 Apr 2009 17:43:43 +0000 (17:43 +0000)]
editmesh_mods.c op names change

12 years ago2.5
Ton Roosendaal [Sun, 12 Apr 2009 17:28:41 +0000 (17:28 +0000)]

Patch provided by Thomas (DingTo). Fixes min/max limits in rna.

12 years agoop names change
Shaul Kedem [Sun, 12 Apr 2009 17:28:16 +0000 (17:28 +0000)]
op names change

12 years ago2.5
Ton Roosendaal [Sun, 12 Apr 2009 13:40:29 +0000 (13:40 +0000)]

Various ui fixes:

- panel drawing now correctly follows scaled view
- made imagewindow buttons using TH_PANEL color back (was too dark)
- click on open/close panel was wrong
- menu items disabling now draws correct
- curve/hsv widgets didn't draw on right locations
- numsliders have nicer interior slider decoration
- new type TOGBUT to enforce old style toggle button (not new type
  'option button' with checkmark
- (temp) disabled live updating while using Curve widget, was
  too slow to be fun. Needs general solution :)

12 years agoGraph Editor: Bugfixes
Joshua Leung [Sun, 12 Apr 2009 13:19:21 +0000 (13:19 +0000)]
Graph Editor: Bugfixes

* Fixed bug with curves sometimes not being displayed. Will investigate further tomorrow.
* Copy/Paste buttons in header now work. I've ported these over to use operator buttons
* Ctrl-Alt-Shift-RMB now selects all the keyframes in multiple F-Curves at once

12 years agoAnim Editors: A few more hotkey tweaks
Joshua Leung [Sun, 12 Apr 2009 08:21:22 +0000 (08:21 +0000)]
Anim Editors: A few more hotkey tweaks

12 years agoGraph Editor:
Joshua Leung [Sun, 12 Apr 2009 08:17:46 +0000 (08:17 +0000)]
Graph Editor:

* Column select (ALT-RMB) works again, and in conjunction with 'extend' (i.e. SHIFT) to add to selection instead of just replacing
* Select all keyframes in curve (CTRL-ALT-RMB) now works

12 years agoAction Editor: Selection tools cleanup
Joshua Leung [Sun, 12 Apr 2009 06:47:25 +0000 (06:47 +0000)]
Action Editor: Selection tools cleanup

* Cleaned up the code for selecting keyframes
* Click-column-select (Alt-RMB) now works

* Also, moved a function used in both Action/DopeSheet and Graph editors to the Animation module

12 years agoSlight improvements in release creation.
Guillermo S. Romero [Sat, 11 Apr 2009 19:04:59 +0000 (19:04 +0000)]
Slight improvements in release creation.
Version string is compatible with all previous releases, but report
subversion if not 0.
Keep distribution dir so you can run from there without needed of unpack,
and make messages and cmds be in sync.

12 years agoAdded back importing UI scripts rather then running,
Campbell Barton [Sat, 11 Apr 2009 16:17:39 +0000 (16:17 +0000)]
Added back importing UI scripts rather then running,
The bug was todo with and bpy.types becoming invalid, temporary fix is to re-assign them to the bpy module before running python operators or panels.
will look into a nicer way to get this working.

12 years agochanged parts x parts y and threads to be minimum of 1, thnx DingTo
Shaul Kedem [Sat, 11 Apr 2009 16:10:15 +0000 (16:10 +0000)]
changed parts x parts y and threads to be minimum of 1, thnx DingTo

12 years ago2.5 / RNA
Elia Sarti [Sat, 11 Apr 2009 15:46:35 +0000 (15:46 +0000)]
2.5 / RNA
API, added support for return values for RNA_function_call_direct and completed the code. Didn't test it though.

Returns works exact the same way as other parameters for format strings except you put a R in front of it. For instance for a function that accepts two vectors and returns a vector you use a format like "f[4]f[4]Rf[4]".
I'm thinking about allowing arbitrary white space in the format string (or use comas as separators) to make it more readable.
The return format *must* always come last and of course the corresponding argument you pass to the function has to be a pointer so that it can be filled with the return value.

12 years agoPython Api
Campbell Barton [Sat, 11 Apr 2009 15:05:42 +0000 (15:05 +0000)]
Python Api
own error with refcounting and raise an error when bpy.types cant generate a subtype (though it shouldn't happen)

12 years ago2.5
Ton Roosendaal [Sat, 11 Apr 2009 14:43:03 +0000 (14:43 +0000)]

Styles/fonts will be saved in userdef, but not yet... forgot to
zero pointers on read, causing crash on .B.blend read saved in 2.5

12 years agohem.. other small fix
Elia Sarti [Sat, 11 Apr 2009 13:24:02 +0000 (13:24 +0000)]
hem.. other small fix

12 years ago2.5 / RNA
Elia Sarti [Sat, 11 Apr 2009 12:44:01 +0000 (12:44 +0000)]
2.5 / RNA
Committing quick RNA function calling RNA_function_call_direct* functions set à la fprintf.

It works like this (with ptr being an RNA pointer to some ID):

RNA_function_call_direct_lookup(ptr, "rename", "s", "MyCamera");

the format specifier would not be strictly needed but I prefer to keep this as it gives nice error handling in case some RNA function changes.
Format strings are very easy and similar to python ones:
"b" for booleans
"i" for integers
"f" for floats
"s" for strings
"e" for enums (using int values)
"O" for pointers (using O as in py, we can change to P)
"N" special NULL parameter, valid to skip optional parameters
For bools, ints and floats you can use a special format specifier with [n] where n is the size of an array of that type. For instance "f[4]" to set a location/vector (it expects a pointer to float* holding the array).

Return values still have to be implemented.
Also I know the name is a bit long maybe we can cut it up at RNA_call_direct or simply RNA_call.

12 years agoundo previous commit, changing running the script to importing it somehow made it...
Campbell Barton [Sat, 11 Apr 2009 10:01:49 +0000 (10:01 +0000)]
undo previous commit, changing running the script to importing it somehow made it crash when running the class functions. will look into this further.

12 years agoas per discussion with ton, the editmesh accessors now live
Joseph Eagar [Sat, 11 Apr 2009 08:26:51 +0000 (08:26 +0000)]
as per discussion with ton, the editmesh accessors now live
in blenkernel.

12 years agoDrivers: Errors + UI Tweaks
Joshua Leung [Sat, 11 Apr 2009 06:48:39 +0000 (06:48 +0000)]
Drivers: Errors + UI Tweaks

* Invalid drivers are now tagged accordingly and are not evaluated until they are manually refreshed using the 'Update Dependencies' button
* Drivers with errors have a error warning shown in their UI
* Rearranged the UI buttons a bit for drivers, adding support for a 'remove' driver button.

12 years agoChanged the script UI registration to import rather then run each python script,
Campbell Barton [Sat, 11 Apr 2009 05:46:40 +0000 (05:46 +0000)]
Changed the script UI registration to import rather then run each python script,
this means it caches the compiled pyc files after importing fro the first time.

My times for importing 501 files were.
- running each as a script 1.9sec
- importing for the first time 1.8sec
- importing a second time (using pyc files) 0.57sec

Also added "bpy" to sys.modules so it can be imported.

12 years agoUI:
Brecht Van Lommel [Sat, 11 Apr 2009 02:18:24 +0000 (02:18 +0000)]
* Added very basic loading of .py files on startup to define panels.
  It now executes all .py files in .blender/ui on startup. Right now
  this contains the object buttons, the C code for it is commented out.

  These files should get embedded in the blender executable as well
  eventually, that's a bit more complicated so this works for now.

* For scons and cmake it seems to copy & find the files OK, for make
  only "make release" works (same with scripts/ folder it seems).

* Added BLI_gethome_folder function in BLI_util.h. This is adapted
  from bpy_gethome, and gives the path to a folder in .blender like
  scripts or ui.

There's plenty of things to figure out here about paths, embedding,
caching, user configs ...

12 years agoUI:
Brecht Van Lommel [Sat, 11 Apr 2009 01:52:27 +0000 (01:52 +0000)]
* Template slots are no longer specified per item, but are
  a state now, set with uiTemplateSlot.
* Some renaming of Layout functions for consistency.
* Fix for roundbox in stack template, now is always behind
  the other buttons.
* Improved python API for layout:

12 years agoRNA: python support for REQUIRED flag for function parameters.
Brecht Van Lommel [Sat, 11 Apr 2009 01:45:05 +0000 (01:45 +0000)]
RNA: python support for REQUIRED flag for function parameters.

12 years agoRNA:
Brecht Van Lommel [Sat, 11 Apr 2009 01:43:50 +0000 (01:43 +0000)]
* Added REQUIRED flag for function parameters.
* Made dupliframes/verts/faces/groups an enum, and make it editable.
* Enum bitflags were broken, fixed.

12 years ago2.5 Drivers:
Joshua Leung [Sat, 11 Apr 2009 00:29:21 +0000 (00:29 +0000)]
2.5 Drivers:

* Fixed bug with setting the active F-Curve
* UI for editing drivers now works

12 years agoSyntax error, unexpected ).
Guillermo S. Romero [Fri, 10 Apr 2009 18:47:33 +0000 (18:47 +0000)]
Syntax error, unexpected ).

12 years ago2.5 / RNA
Elia Sarti [Fri, 10 Apr 2009 18:03:24 +0000 (18:03 +0000)]
2.5 / RNA
Corrected a description.