Brecht Van Lommel [Sat, 11 Jul 2009 14:51:13 +0000 (14:51 +0000)]
2.5: X11
* Cursor grabbing is now done only if the OPTYPE_BLOCKING flag
is set for the operator, since for e.g. render it should not
block.
Brecht Van Lommel [Sat, 11 Jul 2009 14:50:12 +0000 (14:50 +0000)]
2.5: use primitive icons in the Add Object menu.
Campbell Barton [Sat, 11 Jul 2009 13:57:56 +0000 (13:57 +0000)]
PyApi
* refcount error if StringIO or io modules could not be imported
* importing python modules like math didnt work because the script registration overwrote the script path. now just prepend the path.
Brecht Van Lommel [Sat, 11 Jul 2009 13:32:20 +0000 (13:32 +0000)]
2.5:
* Code to start moving 3D view header and panels to python, at
the moment the View menu and one empty panel is in python. The
C header code is wrapped in one template, so parts of that can
be moved over while still keeping things working.
* Fix for mistake in RNA enum commit yesterday, and some warning
fixes.
Joshua Leung [Sat, 11 Jul 2009 12:54:17 +0000 (12:54 +0000)]
2.5 - Made more operators for constraint buttons
* Move Up/Down and Delete are now operators
* Made TrackTo constraint use expanded enum toggles for up axis too.
--> BUG ALERT: specifying name and expand in the arguments to itemR doesn't work (name gets skipped)
Joshua Leung [Sat, 11 Jul 2009 11:52:20 +0000 (11:52 +0000)]
2.5 - Restored Set/Clear Inverse Buttons for ChildOf Constraint
I've tagged these operators with CONSTRAINT_OT_* not OBJECT_OT_constraint_* since constraints can operate on Bones too (and do so more often)
Campbell Barton [Sat, 11 Jul 2009 11:31:49 +0000 (11:31 +0000)]
Object mode select grouped operator (Shift+G and Select manu)
Group option currently doesnt handle multiple groups.
Set makefiles python version to 2.6 for linux since its common now.
Joshua Leung [Sat, 11 Jul 2009 10:23:07 +0000 (10:23 +0000)]
2.5 - Fixing some typos for name of Graph Editor operator
An error that slipped in during the merge process?
Joshua Leung [Sat, 11 Jul 2009 10:20:48 +0000 (10:20 +0000)]
2.5 - Added descriptions to all Animation Editor operators
DopeSheet and Graph Editor operators were missing these, since many of these operators were written before that field was added.
NLA Editor's operators already have them.
Campbell Barton [Sat, 11 Jul 2009 07:46:11 +0000 (07:46 +0000)]
remove duplicate function.
Joshua Leung [Sat, 11 Jul 2009 05:41:21 +0000 (05:41 +0000)]
2.5 - NLA SoC Branch Merged to 2.5!
(19863 to 21513)
Highlights of the new NLA System (and related Animation System changes):
* NLA Data is stored in AnimData alongside Action and Drivers. The NLA stack is evaluated before the Action, with the Action always overriding the results of the stack.
* NLA Data is arranged in 'Tracks', which act like PhotoShop layers. These can be muted, protected, and/or made to be played back by themselves
* Within each track, there can be multiple 'Strips'. There are 3 types of strip -> Action Clip (references some action), Transition (blends between the endpoints of two strips), and Meta (container for several strips that occur sequentially)
* FModifiers can be applied to strips, and strips can have animated influence/time controls. Playback for strips can also be backwards now!
* Playback can now go in forward and backwards directions.
* Animation Editors have been polished (unfinished features added, existing features cleaned up and made more consistent)
Notes for BuildSystem Maintainers:
* Only scons has been actively tested. Makefiles should work fine.
* MSVC ProjectFiles are broken due to the very way they work.
* CMake status unknown...
Other notes:
* Hopefully I haven't made any mistakes while doing the merge. More files than expected were showing some weird conflicts, so you may have some broken code...
* Not all old files (with NLA) data load exactly the same anymore. However, the bulk of the files out there should be ok (I hope)
Joshua Leung [Sat, 11 Jul 2009 03:23:45 +0000 (03:23 +0000)]
NLA SoC: Merge from 2.5
21470 to 21512
Next up, NLA-branch to 2.5 :)
Joshua Leung [Sat, 11 Jul 2009 03:09:44 +0000 (03:09 +0000)]
NLA SoC: Quick commit of skeleton of auto-blending setting code to be completed later...
Joshua Leung [Fri, 10 Jul 2009 23:25:30 +0000 (23:25 +0000)]
NLA SoC: Names for NLA Strips
In order to be able to better identify NLA Strips (and to reduce the complexity of the text on them), I've implemented a name property for the strips. The names are made to be unique within the AnimData block the strip comes from, though this may not always happen if not enough relevant context info is present to validate this.
Diego Borghetti [Fri, 10 Jul 2009 22:16:25 +0000 (22:16 +0000)]
Allow the user set which style to use for the kerning value.
This are freetype2 options:
Unfitted - Scaled but un-grid-fitted kerning distances
Default - Scaled and grid-fitted kerning distances
We always use Unfitted, but the "Default" style give better result here,
so please test and if nobody complain we can set this style as the default.
Brecht Van Lommel [Fri, 10 Jul 2009 20:43:32 +0000 (20:43 +0000)]
2.5:
* Default panel zoom level user preference, when creating
new button windows or pressing home-key to reset. Patch
by Matt D., thanks!
Diego Borghetti [Fri, 10 Jul 2009 20:18:19 +0000 (20:18 +0000)]
Yes!! a nice font again!!
Matt, I found the problem in one of my previous commit, so I revert
all my changes and now the font look good again.
Also remove all the options (kerning, overlap and user kerning), I want
to make this a little better.
Brecht Van Lommel [Fri, 10 Jul 2009 19:56:13 +0000 (19:56 +0000)]
RNA
* Enums can now be dynamically created in the _itemf callback,
using RNA_enum_item(s)_add, RNA_enum_item_end. All places asking
for enum items now need to potentially free the items.
* This callback now also gets context, this was added specifically
for operators. This doesn't fit design well at all, needed to do
some ugly hacks, but can't find a good solution at the moment.
* All enums must have a default list of items too, even with an
_itemf callback, for docs and fallback in case there is no context.
* Used by MESH_OT_merge, MESH_OT_select_similar, TFM_OT_select_orientation.
* Also changes some operator properties that were enums to booleas
(unselected, deselect), to make them consistent with other ops.
Andrea Weikert [Fri, 10 Jul 2009 19:52:00 +0000 (19:52 +0000)]
2.5 file browser
* bugfix: set the directory to the default root when directory button is empty
Andrea Weikert [Fri, 10 Jul 2009 19:19:54 +0000 (19:19 +0000)]
2.5 filebrowser
* bugfix: don't allow parent dir to go beyond root
* bugfix: only attempt to change directory if it exists
New (WIP) feature: autocomplete for directory
* works on TAB
* so far only one level (in current directory)
Thomas Dinges [Fri, 10 Jul 2009 19:11:22 +0000 (19:11 +0000)]
2.5 Buttons:
Small fixes:
* Removed Particle System Context header
* Lamp Type is a menu now, better for small displays.
Brecht Van Lommel [Fri, 10 Jul 2009 18:10:40 +0000 (18:10 +0000)]
2.5:
* Fix missing update when browsing to different text.
* Fix wrong spacing in font size 15 drawing in the text editor.
* Fix numbers not updating in color picker buttons.
Campbell Barton [Fri, 10 Jul 2009 18:09:53 +0000 (18:09 +0000)]
Use python subtypes so bpy.types.Mesh is a subtype of bpy.types.ID
This means checks like this work.
isinstance(bpy.data.meshes[0], bpy.types.ID)
bpy.types.Mesh.__base__ == bpy.types.ID
Andrea Weikert [Fri, 10 Jul 2009 17:26:19 +0000 (17:26 +0000)]
2.5 file browser
* buttons for increment/decrement number in filename
Patch provided by Johannes Meng, many thanks!
Andrea Weikert [Fri, 10 Jul 2009 17:05:04 +0000 (17:05 +0000)]
2.5 file browser
* directory button enabled again, c code for now, can later become nicer operator
* filename button enabled (pattern match for selection)
* RNA completed (title, file and directory)
* some unused code removal.
Ton Roosendaal [Fri, 10 Jul 2009 16:56:20 +0000 (16:56 +0000)]
2.5
UI script for setting render output
Ton Roosendaal [Fri, 10 Jul 2009 16:55:49 +0000 (16:55 +0000)]
2.5
Render usability:
- Option back to render to imagewindow, or fullscreen.
The latter is default. Setting is stored in Scene.
- Added button in output panel, the option "to new window" will follow!
- F11 again toggles render view
(moved MS Windows "full screen" to shift+F11 for now)
Brecht Van Lommel [Fri, 10 Jul 2009 13:56:29 +0000 (13:56 +0000)]
2.5:
* 3D view Object menu works again, many operators missing still
because they are not yet implemented.
* Constraint types now have separator, and fix too much spacing
in the constraints header.
Joshua Leung [Fri, 10 Jul 2009 12:42:17 +0000 (12:42 +0000)]
NLA SoC: Attempt at solving the jumping-views problem
The 'jumping-views' problem affected the NLA and DopeSheet editors, whereby the channels-list and the data-area would get out of sync (vertically) due to the size calculations of the two being done differently.
Joshua Leung [Fri, 10 Jul 2009 12:11:00 +0000 (12:11 +0000)]
NLA SoC: Delete Channels operator
F-Curves and Groups can now be deleted again from DopeSheet/Graph Editors.
Brecht Van Lommel [Fri, 10 Jul 2009 11:59:45 +0000 (11:59 +0000)]
2.5: fix to allow python panels to override C panels with
the same name.
Brecht Van Lommel [Fri, 10 Jul 2009 11:36:02 +0000 (11:36 +0000)]
2.5:
* RNA: enum items with "" indentifier are now interpreted as separators.
* Add Object menu: added consistent names, separators.
Brecht Van Lommel [Fri, 10 Jul 2009 11:33:01 +0000 (11:33 +0000)]
2.5: Fix for crash on reload file. Cursor grab should not
assume there to be a window, but also reload file exec was
not returing an OPERATOR_* value.
Joshua Leung [Fri, 10 Jul 2009 10:48:25 +0000 (10:48 +0000)]
NLA SoC: Notifier Fixes for Animation Editors
I've gone through all the Animation Editor operators, making sure they send appropriate notifiers, and that these notifiers are handled.
* Added a separate category for animation-related notifiers, since the old-style ones attached to specific datatypes only was turning out to be not too feasible.
* For now, the focus has been on making sure that all Animation Editors update when there have been any potentially suitable changes at all. Later on, we can filter these more carefully to only take the ones we really need (for optimisation purposes)
Campbell Barton [Fri, 10 Jul 2009 04:25:49 +0000 (04:25 +0000)]
PyRNA api wasnt using python subclasses most of the time.
Now this will return True
isinstance(bpy.data.meshes[0], bpy.types.Mesh)
Use the StructRNA identifier for the new classes name properties because classes were being named by the data names rather then the type names.
Set the __module__ for the new type which makes printing the class not use the script name where the type is first initialized.
eg: bpy.types.Mesh instead of buttons_object.Mesh
This still isnt quite right since opertators and panels all get their own type, when they should all use an operator type.
Joshua Leung [Fri, 10 Jul 2009 02:04:50 +0000 (02:04 +0000)]
NLA SoC: Fixes for renamed headers (BIF_transform.h -> ED_transform.h)
Joshua Leung [Fri, 10 Jul 2009 01:57:55 +0000 (01:57 +0000)]
NLA SoC: Merge from 2.5
21330 to 21469
Joshua Leung [Fri, 10 Jul 2009 00:32:13 +0000 (00:32 +0000)]
NLA SoC: Tweaks from feedback from Broken + jez
* Renamed the 'blend' blending mode to 'replace', since that's what it usually does
* Drawing a darkened rect behind the keyframes shown in the action line
--
* Fixed typo made last night which broke compiling
* Consolidated all the keyframe-shape drawing code to use a single codebase. Even if we don't ultimately go with OpenGL keyframes, there's always a tidy option for that now.
Brecht Van Lommel [Thu, 9 Jul 2009 19:49:04 +0000 (19:49 +0000)]
2.5: Various
* Weight paint: brush strength was changed to both define weight
and strength, this can't work, made them separate buttons.
* Allow adding particle system as modifier (fix crash).
* 3D view modal ops (zoom ..) could not be ended when invoked
from a button.
* Fix some warnings.
* Fix spelling in particle RNA property.
Brecht Van Lommel [Thu, 9 Jul 2009 19:45:27 +0000 (19:45 +0000)]
2.5: Buttons Window
* Fix poll() callback changes in recent commit, note that these have
to work with pinned context too.
* Hide header for context panels in py layout.
* Don't jump back when collapsing a panel, allow the view to be
over some empty space until you scroll back.
* Fix follow context icon, order had to be reversed in icon file.
* ID template now has icon as part of browse button instead of
outside the buttons.
Brecht Van Lommel [Thu, 9 Jul 2009 18:10:35 +0000 (18:10 +0000)]
2.5: fix for last commit, left in debug print.
Thomas Dinges [Thu, 9 Jul 2009 16:09:44 +0000 (16:09 +0000)]
2.5 Buttons:
* Fixed some Bugs from Commit 21458.
* Show Preview Render only when there is an active id block.
* Some Code Cleanup (especially in polls). Please try to keep it clean ;-)
Brecht Van Lommel [Thu, 9 Jul 2009 16:05:01 +0000 (16:05 +0000)]
2.5: X11
* Pass on mouse location on window leave/enter too, fixing some
issues with button highlights and tooltips.
* When a modal operator runs, grab the mouse cursor so that for
example transform still works when you move your mouse outside
of the window, previously it would just stop then. This is
automatic now for all modal ops, perhaps not always needed?
* Fix for a trailing button highlight issue.
Ton Roosendaal [Thu, 9 Jul 2009 15:40:04 +0000 (15:40 +0000)]
2.5
Monthly cleaning round to make it compile warning free.
Mostly it was const stuff (strings, Context), but also
a couple useful fixes, like wrong use of temp pointers.
Only Mathutils callback struct I left alone... design issue.
Ton Roosendaal [Thu, 9 Jul 2009 14:35:40 +0000 (14:35 +0000)]
2.5
Bad bad DNA errors! People should really check on warning prints for
compiling dna dir...
- SpaceFile: ListBase* prev; <- dna doesnt recognize this
- wmEvent: const variables were not supported yet.
The first I fixed, 2nd I added support for in makesdna.
Note that files saved between tuesday july 7 and now can be corrupted!
Joshua Leung [Thu, 9 Jul 2009 13:14:51 +0000 (13:14 +0000)]
NLA SoC: Cleanup of Keyframe Drawing code for DopeSheet
* Removed the glaMapping stuff in favour of remapping the keyframes manually. The old code was causing some mess, and not really working well for the DopeSheet with various mappings being used.
* Fixed NLA-mapped selection in DopeSheet. Clicking on individual keyframes should now work ok. More testing required though.
* Keyframes in DopeSheet are now drawn fully using OpenGL (instead of icons). They look less tactile now, but this may be compensated with in terms of speed? Previously I disabled this type of drawing due to issues with some cards. Enabled again for now, but mainly because I couldn't get the icons to line up nicely in screenspace...
* Borderselect in DopeSheet. I've had a look at issues with it selecting the wrong channel's keyframes. The issues don't seem to be solved yet though... will look again tomorrow.
Campbell Barton [Thu, 9 Jul 2009 09:42:34 +0000 (09:42 +0000)]
patch from William, panel names need to be unique
Campbell Barton [Thu, 9 Jul 2009 09:07:25 +0000 (09:07 +0000)]
Patch from William
"moving the ID browser into its own panel. Eventually these panels should loose their headers to distinguish them from other, normal panels. Also a few other fixes for bones and armature panels."
Campbell Barton [Thu, 9 Jul 2009 08:39:58 +0000 (08:39 +0000)]
operator rename
VIEW3D_OT_viewhome -> VIEW3D_OT_view_all
VIEW3D_OT_viewcenter -> VIEW3D_OT_view_center
VIEW3D_OT_clipping -> VIEW3D_OT_clip_border
Campbell Barton [Thu, 9 Jul 2009 08:06:26 +0000 (08:06 +0000)]
Dictionary style get() to property rna.
eg..
mesh = bpy.data.meshes.get("SomeMesh", fallback)
Set length limits for python string formatting.
Campbell Barton [Thu, 9 Jul 2009 07:35:35 +0000 (07:35 +0000)]
removed check for pyc when scanning the directory of python files.
Brecht, double checked and pyc or pyo files arent used because of the (file_extension[3] == '\0') test.
Joshua Leung [Thu, 9 Jul 2009 07:28:45 +0000 (07:28 +0000)]
NLA SoC: Influence of strip now gets drawn as a greyish curve on the strip
I'm not quite happy with how this works yet. It looks quite crude, and might be contributing to the clutter here. Ideas on this welcome.
Martin Poirier [Thu, 9 Jul 2009 02:45:48 +0000 (02:45 +0000)]
Hooking transform operators with manipulator.
It's just a straight application of the normal operator for now, none of the normal manipulator goodies yet (no draw code and you have to click to confirm).
Martin Poirier [Thu, 9 Jul 2009 01:52:54 +0000 (01:52 +0000)]
Reduce multiplication factor for trackball input in transform (slows down trackball rotation)
Martin Poirier [Thu, 9 Jul 2009 01:48:08 +0000 (01:48 +0000)]
Cosmetic changes in etch-a-ton drawing code, mostly.
Joshua Leung [Thu, 9 Jul 2009 01:32:13 +0000 (01:32 +0000)]
NLA SoC: Toggle muting operator - HKEY
This operator provides a quick way of toggling the muted-status of several strips at the same time.
Joshua Leung [Thu, 9 Jul 2009 01:04:42 +0000 (01:04 +0000)]
NLA SoC: Assorted cleanups
* Some cleanups aimed at giving some (neglible) speedups
* Preparation for NLA-Strip keyframes to be editable
Remigiusz Fiedler [Wed, 8 Jul 2009 22:49:35 +0000 (22:49 +0000)]
mingw-config.py prepared for work with python 2.5 and 2.6 controlled by only one parameter: BF_PYTHON_VERSION.
It needs the files: libpython25.a and libpython26.a to be copied to \\lib\windows\python\lib\
Brecht Van Lommel [Wed, 8 Jul 2009 21:41:35 +0000 (21:41 +0000)]
2.5:
* Rename OT_duplicate_add, to OT_duplicate. Also fixes warning
print since I forgot to do this in the toolbar for MESH.
Brecht Van Lommel [Wed, 8 Jul 2009 21:31:28 +0000 (21:31 +0000)]
2.5: Mesh and Various Fixes
* 3D view Mesh menu works again, but incomplete.
* Add Properties and Toolbar to 3D View menu.
* Added "specials" menus back, vertex/edge/face and general.
* Various fixes in existing mesh operators, some were not working.
* Add MESH_OT_merge.
* Merge all subdivide ops into MESH_OT_subdivide, subdivide code
changes to make smooth + multi give good results.
* Rename all select inverse ops to *_OT_select_inverse.
* Fix "search for unknown operator" prints at startup, and some
warnings in py code.
* Don't run .pyc files on startup.
* Remove unused image window header C code.
Thomas Dinges [Wed, 8 Jul 2009 19:14:32 +0000 (19:14 +0000)]
2.5 Sequencer:
* Replaced some notifiers with proper ones.
* Added "Draw Safe Margin" and "Separate Colors" Features to the menu.
Ton Roosendaal [Wed, 8 Jul 2009 17:49:14 +0000 (17:49 +0000)]
2.5
Makefile still had libradioisty.a
Peter Schlaile [Wed, 8 Jul 2009 17:41:45 +0000 (17:41 +0000)]
== Sequencer ==
* Added a lot of update notifiers to RNA
* Fixed strip deallocation (didn't free effect data for some reason...)
Andrea Weikert [Wed, 8 Jul 2009 17:40:42 +0000 (17:40 +0000)]
2.5 MSVC9 projectfiles
* small maintenance: keyval.c removed, some headers in editors/include renamed.
Brecht Van Lommel [Wed, 8 Jul 2009 16:17:47 +0000 (16:17 +0000)]
2.5: code consistency
* Rename BIF_transform/retopo.h to ED_transform/retopo.h
for consistency.
* Move MESH_OT_duplicate_add to editmesh_add.c.
* Remove some code from BIF_gl.h which is not needed there
anymore.
Brecht Van Lommel [Wed, 8 Jul 2009 15:34:41 +0000 (15:34 +0000)]
2.5: Various Fixes
* Context panel now draws without header, with arrows, no scene name.
* Softbody vertex group search popup.
* Improve names for autogenerated shortcut keys in menus.
* Make most Select menus in the 3D view header work.
* Fix armature border select selection syncing.
* Add POSE_OT_select_constraint_target,
MESH_OT_select_by_number_vertices, MESH_OT_select_vertex_path.
* Merge mesh select similar into one operator.
* Don't give MESH_OT_select_random Space hotkey.
* Add DAG_object_flush_update to many mesh edit tools, not calling this
will crash with modifiers.
* RNA_def_enum_funcs for dynamic enums in operators, but not very useful
without context yet.
* Fix refresh issue with image window header + editmode.
* Fix drawing of shadow mesh for image painting.
* Remove deprecated uiDefMenuButO and uiDefMenuSep functions.
* Remove keyval.c, code is in wm_keymap.c already.
* Rename WM_operator_redo to WM_operator_props_popup.
Ton Roosendaal [Wed, 8 Jul 2009 15:01:28 +0000 (15:01 +0000)]
2.5
Brought back the basics for transform manipulators. Martin will
hook it all up to new transform system.
Some notes:
- Still uses G.moving
- BIF_do_manipulator() is called as a View3D Operator
I've tested selecting handles, added a print to confirm
- BIF_GetTransInfo() returns a dummy struct now, just to get
it running.
- Marked some other issues with XXX
Campbell Barton [Wed, 8 Jul 2009 14:32:03 +0000 (14:32 +0000)]
fix for loading YoFrankie levels in blender 2.5. Multires pointer was corrupt on linked meshes.
Note that the files didnt use multires so something odd is going on, but for now this stops the crash.
Ton Roosendaal [Wed, 8 Jul 2009 14:26:43 +0000 (14:26 +0000)]
2.5
Copied some Python compat stuff to get py 2.3 running... just
googled for it on python.org mailing list.
Joshua Leung [Wed, 8 Jul 2009 12:30:09 +0000 (12:30 +0000)]
NLA SoC: Little optimisation + Drawing bugfix
* Text labels on NLA-Strips should now draw properly for most short-strips now. Previously, the padding on the text was a bit too extreme, so for very short strips (less than 4 frames or so), the text was often pushed down into the bottom-right corner of view.
* Optimised the keyframe-highlighting code for buttons a bit. Replaced the custom linear-search with the binary-search used when inserting keyframes (and for the 3d-view keyframe-indicator). There should be some theoretical improvements due to this at least...
Peter Schlaile [Wed, 8 Jul 2009 11:18:47 +0000 (11:18 +0000)]
This fixes some NULL checks.
* base was referenced before NULL check
* ob wasn't checked for NULL
Still broken: Add Mesh doesn't seem to work in Object Mode.
But now it doesn't crash anymore...
Campbell Barton [Wed, 8 Jul 2009 09:23:49 +0000 (09:23 +0000)]
* workaround for PySys_SetArgv() in python3 needing wchar_t
* PyRNA - id_struct.keyframe_insert("path", index, frame)
Joshua Leung [Wed, 8 Jul 2009 06:32:52 +0000 (06:32 +0000)]
NLA SoC: Minor UI-Tweaks
* When influence/time for NLA-strips are animated, settings in the other panels which used to control these are now greyed out to show that they won't have any impact over the result.
* NKey panel for Graph Editor now opens on Right-Hand Side, just like for NLA Editor. The small sub-region above the Channels region was too troublesome to work with.
Joshua Leung [Wed, 8 Jul 2009 05:00:10 +0000 (05:00 +0000)]
NLA SoC: Influence/Time properties for strips can now be animated
* These settings can now be edited + keyframed (using IKEY over the button only for now... other cases will fail)
* Reshuffled some of the keyframing code to make this sort of thing easier to do. Also, restored corrections for NLA-mapping when inserting/removing keyframes.
TODOS:
* animation editors don't show these keyframes yet
* the buttons don't change colour yet to reflect this state. How to do this efficiently?
* allow keyframing of these in more places
* more robust UI handling for this.
Joshua Leung [Tue, 7 Jul 2009 23:33:39 +0000 (23:33 +0000)]
NLA SoC: Clarifying the error message for adding transitions
NOTE: transition strips can only be added between two selected action-clips that have a gap (but no other strips) between them, and are in the same track.
Ton Roosendaal [Tue, 7 Jul 2009 17:30:39 +0000 (17:30 +0000)]
2.5
- Scrollers now only disappear for regions with a fixed total view, like
lists, buttons, channels. More or less infinite views keep scrollers to
indicate that you can still pan or zoom further.
- Nodes: put back SHIFT+D "Add duplicate"
(Also fixed duplicate objects menu name... it should be a bit more
descriptive)
Joshua Leung [Tue, 7 Jul 2009 12:17:06 +0000 (12:17 +0000)]
NLA SoC: Meta Strips + F-Modifiers
F-Modifiers now work on 'all' types of NLA Strip. To get them working on Meta-strips, F-Modifiers on the Meta strip must be applied on top of those for child strips. For now, this is done by joining the lists of modifiers, and evaluating the joined list.
Currently, Transitions don't work that great with F-Modifiers yet (only the endpoints get evaluated with the F-Modifiers). Solving this is for another time...
Joshua Leung [Tue, 7 Jul 2009 11:37:33 +0000 (11:37 +0000)]
NLA SoC: Recoded way that Meta-Strips are Evaluated
Previously, the quick-hack I coded for Meta-strips evaluation didn't really take into account the possibilities to use Meta-Strips as strips in their own right - i.e. reversed, muted, time-mapping-curves, influence-blending - were all unavailable.
This commit makes the aforementioned capabilities of other strips available for Meta-Strips too. The evaluation is now kind-of recursive (as with most of the other methods which take them into account) so that each 'level' of strips get evaluated correctly within their frame-of-reference.
TODO:
* F-Modifier support for Metas...
Joshua Leung [Tue, 7 Jul 2009 10:25:55 +0000 (10:25 +0000)]
NLA SoC: Fixed bug with NLA-Transform
Strip-sorting code was buggy, as it was trying to access an invalid pointer, so the call to sort strips after transform was temporarily disabled in previous commits.
Joshua Leung [Tue, 7 Jul 2009 07:29:21 +0000 (07:29 +0000)]
NLA SoC: Quick hack - Reversed playback
Animations can now be played back in reverse, by clicking on the reversed-playback button in the TimeLine header beside the play button (NEW ICON NEEDED HERE).
I'm not sure how well this works with sound, but from what I gather, this can be quite useful for animators to use.
Dalai Felinto [Tue, 7 Jul 2009 07:25:44 +0000 (07:25 +0000)]
2.5 filebrowser: previous/next + bugfix + elubie's changes and cleanup
* Previous/Next Folder browser
* bugfix: "open most recently opened directory".
* Previous and Next functionalities:
- use BACKSPACE to navigate to previous folders
- use SHIFT+BACKSPACE to navigate forward
- once you change the folder by other ways the forward folder list is cleared
* bug fix: the sfile->params->dir set through ED_fileselect_set_params wasn't correct. According to the code taking the settings from the existing (previous) filebrowser is a temp solution. In that case this is a fix for a temp solution :)
(changes in: wm_event_system.c, filesel.c and ED_fileselect.h)
** Andrea(elubie): we can get away of the folderlist_clear_next test if we manually pass a boolean to file_change_dir (e.g. file_change_dir(sfile, true)). I tried not to mess up with your changes here. It's slightly slower (and maybe hacky) but its's more conservative IMHO.
(my first commit to 2.5 ... that was a good reason to put my paper on hold :p)
Joshua Leung [Tue, 7 Jul 2009 06:56:29 +0000 (06:56 +0000)]
NLA SoC: Current Frame can now be negative
This commit is quite experimental, and might have to be reverted, but in quite a few places, the cleanups from this commit were already necessary.
* I've left most of the image-handling functions alone, since I'm not sure how well they cope with negative indices.
* Start/End frames cannot be negative for now... any specific reasons why they should be negative?
Joshua Leung [Tue, 7 Jul 2009 06:39:01 +0000 (06:39 +0000)]
NLA SoC: Small cleanup in Graph Editor struct code (obsolete + commented out stuff)
Joshua Leung [Tue, 7 Jul 2009 06:21:38 +0000 (06:21 +0000)]
NLA SoC: Auto-Snapping Fixes (Transform)
Snap to nearest-second works again for NLA and Graph Editors
Joshua Leung [Tue, 7 Jul 2009 06:16:06 +0000 (06:16 +0000)]
NLA SoC: Fixes for bugs in transform code from previous commit
* The code to move strips between tracks now works (though it can still be a bit too eager to change tracks half-way through some transforms).
Strips are moved up/down one strip at a time, depending on whether there is any space in the next-track in the direction you direct it to move in.
* Auto-snapping works again. Also enabled snap-to-marker option for Graph Editor here.
Joshua Leung [Tue, 7 Jul 2009 05:41:59 +0000 (05:41 +0000)]
NLA SoC: Transform Code for NLA-Strips recoded (still buggy)
Recoded the Transform code for NLA-Strips so that they can now be moved between strips and will not get truncated when they get moved into other non-moving strips.
Todos:
* The current code for moving strips between tracks is buggy (only goes up, and has a tendency to move up without being told to)
* Auto-snapping doesn't work yet...
Joshua Leung [Tue, 7 Jul 2009 02:12:50 +0000 (02:12 +0000)]
NLA SoC: Start of integration of Meta-strips in Transform
* Chains of selected strips are now converted to meta-strips before transforms begin, and converted back afterwards. This simplifies the transform code needed in later stages...
* Transform-flushing code for Meta-Strips should now work. There seems to be a little bit of numeric inaccuracy problems somewhere, as two strips which met at the same frame can get separated when scaling.
* Meta-strips now draw with proper text identification
* Snapping strips now properly clears meta-strips if a moved strip needs to be moved into a new track to be accomodated.
* Fixed a filter used by a selection-operator.
Andrea Weikert [Mon, 6 Jul 2009 17:29:32 +0000 (17:29 +0000)]
2.5
* fix for RNA generation dependency in MSVC projectfiles
* added missing include
Joshua Leung [Mon, 6 Jul 2009 12:24:09 +0000 (12:24 +0000)]
NLA SoC: Fixes for Meta-Strips and Editing
* Split strip (YKEY) now plays nicely with Transitions and Metas. Meta strips get split up into their child strips, while transitions are ignored.
* Wrapped Meta_Strip->strips in RNA
* Bugfixes in Meta-strip API functions to silence some runtime-errors...
Joshua Leung [Mon, 6 Jul 2009 11:06:34 +0000 (11:06 +0000)]
NLA SoC: More work on Meta-Strips
* Added several API functions for Meta-Strips editing. One of these (flush transform) still needs a few tweaks before it does its job well enough for all cases.
* Meta strips are now drawn with a purple-ish colour. The start/end points of the strips they encompass are shown with lines along the length of the strips, with lines starting from the top indicating start-points and lines starting from the bottom indicating end-points.
* Meta strips can be made (i.e. strips can be assigned to meta-strips) by selecting some strips and pressing Shift-G.
Meta strips can be removed by selecting some meta-strips and pressing Alt-G.
* Strips can now be 'snapped' to start from: the current frame, the nearest frame, the nearest second, or the nearest marker; using the Shift-S hotkey.
'Islands' of adjacent selected strips occurring in the same track are moved together as a single strip so that the start-point of the first strip is on the sepcified time, but all the relative lengths of strips stay the same. Internally, temporary meta-strips are created to facilitate this.
Joshua Leung [Mon, 6 Jul 2009 03:44:44 +0000 (03:44 +0000)]
NLA SoC: Start of 'Meta' Strips
Refactored the backend code/API's to support 'meta' strips (i.e. strips containing other strips). These have been implemented to be nested to 'unlimited' depths (in terms of common usages that is, though there is a very remote chance of stack-overflow in theoretrical evil cases only that shouldn't ever be encountered in production).
This paves the way for implementing the necessary tweaks needed for the transform code (in addition to some cool user-level tricks)
Andrea Weikert [Sun, 5 Jul 2009 22:26:43 +0000 (22:26 +0000)]
2.5 filebrowser
* bringing back file numbering operator (PADPLUSKEY, PADMINUS)
* Note: discovered conflicting key with View2D zooming that causes it to not work in panel area.
Andrea Weikert [Sun, 5 Jul 2009 19:11:29 +0000 (19:11 +0000)]
2.5 MSVC9 projectfiles
* RNA project cleanup. Better file naming and first attempt at deleting files before rebuilding.
* editors/object/object_vgroup.c added
Janne Karhu [Sun, 5 Jul 2009 12:36:20 +0000 (12:36 +0000)]
Added a particle instance modifier option to use particle size.
Janne Karhu [Sat, 4 Jul 2009 12:09:21 +0000 (12:09 +0000)]
Rendering animations with particle trails cached.
Thomas Dinges [Sat, 4 Jul 2009 08:50:41 +0000 (08:50 +0000)]
2.5 Physic Buttons:
* Some minor layout cleanup to the field panel.
Janne Karhu [Sat, 4 Jul 2009 03:50:12 +0000 (03:50 +0000)]
A bunch of fun stuff now possible because of new pointcache code:
* Baked normal particles can now use the "Path" visualization.
* Path "max length" & "abs length" are now history:
- New option to set path start & end times + random variation to length.
- Much more flexible (and calculated better) than previous options.
- This works with parents, children, hair & normal particles unlike old length option.
- Only known issue for now is that children from faces don't get calculated correctly when using path start time.
* New option "trails" for "halo", "line" and "billboard" visualizations:
- Draws user controllable number of particle instances along particles path backwards from current position.
- Works with children too for cool/weird visualizations that weren't possible before.
* Normal particle children's velocities are now approximated better when needed so that "line" visualization trails will look nice.
* New particle instance modifier options:
- "path"-option works better and has controllable (max)position along path (with random variation possible).
- "keep shape"-option for hair, keyed, or baked particles allows to place the instances to a single point (with random variation possible) along particle path.
- "axis" option to make rotation handling better (still not perfect, but will have to do for now).
Some fixes & cleanup done along the way:
* Random path length didn't work for non-child particles.
* Cached & unborn particles weren't reset to emit locations.
* Particle numbers weren't drawn in the correct place.
* Setting proper render & draw visualizations was lost somewhere when initializing new particle settings.
* Changing child mode wasn't working correctly.
* Some cleanup & modularization of particle child effector code and particle drawing & rendering code.
* Object & group visualizations didn't work.
* Child simplification didn't work.
Thomas Dinges [Fri, 3 Jul 2009 20:03:24 +0000 (20:03 +0000)]
2.5 Physic Buttons:
* Added Softbody buttons. Patch by Wahooney. Thanks.
I did some minor code cleanup.
* Collision settings now grey out, when disabled.
Brecht Van Lommel [Fri, 3 Jul 2009 19:56:19 +0000 (19:56 +0000)]
2.5:
* Fix crash in python with enum properties, and don't throw
error if no matching identifier is found. This shouldn't
happen, but it should break a python script either, which
is not at fault.
* Fix a wrong variable initialization in fluidsim.
Thomas Dinges [Fri, 3 Jul 2009 19:12:59 +0000 (19:12 +0000)]
2.5 Physic Buttons:
* Added Fluid Buttons.