* Reverse playback works again. Flag was getting overriden before it had a chance to do anything
* Active KeyingSet field in TimeLine header should now only be marked as editable when there are some Keying Sets. However, there still seems to be a bug when trying to change this...
TODO (Brecht?): it would be nice to be able to specify a list/collection of data for pointer-buttons that aren't ID's.
* Properly wrapped Keying Sets in RNA. Now the timeline header shows a popup for choosing KeyingSets instead of the nasty index button.
* Fixed bugs in Outliner code for adding/removing array elements to Keying Sets. This makes it possible to add only the x and z location settings for an object for example.
* Some UI fixes suggested by broken, removed specialized Add Brush menu in favor of standard ID add button, also put a separator between brush selection and brush properties.
* add jack support for audio system.
Note that for OSX jack support is still off by default, since
I'm not sure about what goes where. OSX maintainers, please check and fix.
* Refactored the file write/read code for the new Paint type. Just used for sculpt for now, but this'll make it easier when the other paint modes are converted.
* Add RenderResult.load_from_file to load whole multilayer exr's at once.
* Removed x/y offset from RenderLayer.load_from_file, better to encourage
using offset in begin_result() to minimize memory usage.
* Added WITH_OPENEXR in some screen/file/image module for scons/make, exr
was not working in some places there.
* Use scene->r.audio instead of scene->audio everywhere, was using both still.
* Fix time_top_left_3dwindow link error, not sure why this happens, somehow
with scons building it seems that files (like time_header.c) wich are not
called from the same .a module get stripped?
* Finally the header and menus are done via python.
* Added RNA for sync audio.
Note: This is just a basic working version in python. It needs more work and some layout changes.
Joshua: Feel free to adjust this further :)
* Move sound_init to make sure it gets called everytime user
preferences is reloaded.
* Merged sound_reinit and sound_init. One used user preferences
while the other did not, don't see the point of this, so just
made it always use user preferences now.
* Timeline header audio sync option now controls scene flag
rather than timeline flag. Since it uses the same playback
operator now, there is no distinction anymore.
* Added boolean property sync to animation play operator, to sync
with audio or not. Uses scene setting if property is not set.
* Playback stop button in info header now calls operator, so sounds
stop playing too.
to show properties.
* One problem is that we currently have 3 different kinds of
property layouts, single column, two column, and single column
with text inside button, probably best to reduce this..
* Last operator panel now shows operator name in the header.
* Fix extrude operator to not include transform properties
anymore, since they are already there now due to macro system.
* Added a new Paint type in scene DNA. This is now the base struct for Sculpt.
* The Paint type contains a list of Brushes, you can add or remove these much like material and texture slots.
* Modified the UI for the new Paint type, now shows the list of brushes active for this mode
* Added a New Brush operator, shows in the UI as a list of brush tool types to add
* Made the sculpt tool property UI smaller and not expanded, expectation is that we will have a number of preset brushes that will cover the basic sculpt brush types
TODO:
* Vertex paint, weight paint, texture paint need to be converted to this system next
* Add brush presets to the default blend
Another keymap goodie for test fun: Tweak events allow to be limited
to a direction, like North, South-West, etc.
Tested with View3D keymap for border, circle & lasso. Issue to look at
still is whether a border should start immediate, or first draw a cross...
this can be an operator property of course.
Note that tweak code can be extended to corner-gestures too (so you can
do a north+east, north+west, and so on... nice for later).
Time to get keymap saving work! :)
(Fixed bug in Mesh edit circle select, missing notifier)
Muscle flexing commit; put the "any key modifier" to work, also exposed
(ugly) in keymap editor. Notes for it works:
- You can use any keyboard key to become modifier now (not mouse buttons)
- But, if this key was assigned to be a regular hotkey, that still gets
triggered, obviously.
- So: only use unused keys for this, like "~" or other special ones?
For test fun: L+K now does animplay.
* Cleaned up code in 3d header; still requires custom code for creating the object mode button, but removed all the nasty V3D_XXXMODE stuff, and the mode switching code is now just an operator call.
* Added Context access to RNA_property_as_string. This is needed for doing a Python call to the object mode set operator, which has a dynamic enum property that needs context.
Flaw in python UI for headers: code missing to correctly set the total
width of header, plus obsolete call in view3d header template to set width.
Now MMB scroll of view3d header works again.
* Sculpt Menu is now written in python.
* Select Menus are only for Object, Edit and Particle Mode, added code to check on that, fixed Console warnings.
* Fixed a typo in armature buttons, reported in IRC by "ebrain".