Ton Roosendaal [Thu, 1 Jan 2009 19:19:50 +0000 (19:19 +0000)]
2.5
Removed AUX buffer for OSX, was taking too much OGL memory,
and since AUX was not used for other platforms, its benefits
faded away in the course of the time (it was just drawing
always).
Ton Roosendaal [Thu, 1 Jan 2009 19:18:03 +0000 (19:18 +0000)]
2.5
- View3D backbuffer select is back ("occlusion select").
It doesn't use the old 'afterqueue' yet, which ensured backbuffers
to draw immediate after swapbuffers. Will with that.
Nathan Letwory [Thu, 1 Jan 2009 19:03:40 +0000 (19:03 +0000)]
2.5 / Nodes
* invoke View all through header menu :)
Ton Roosendaal [Thu, 1 Jan 2009 18:05:12 +0000 (18:05 +0000)]
2.5
- Put back vertex/edge/face select
- Mode menu allows going in/out editmode
- Tested some tweak event stuff in WM, made tweak event follow
user preset for 'action' or 'select' mouse.
(Wanted to try this for transform, but better get advise from
Martin first :)
Nathan Letwory [Thu, 1 Jan 2009 16:27:02 +0000 (16:27 +0000)]
2.5 / Nodes
* HOMEKEY enabled (view all), made into operator.
Brecht Van Lommel [Thu, 1 Jan 2009 15:52:51 +0000 (15:52 +0000)]
RNA
* Added support for sending notifiers and updates when setting
RNA properties. Per property, there is a notifier NC_/ND_ flag,
and a function that is called. Currently only used for
Object.loc/rot/size.
* RNA_property_update that does this is not automatically called
in every _set function, it has do be done separate, and is being
done by buttons with RNA data.
* Perhaps for python there could be a trick to accumulate these
flags rather than update each time, though for now the python
RNA code could just do them everytime. Did not add these calls
in the python code yet because it needs context, not sure where
to get that from?
Ton Roosendaal [Thu, 1 Jan 2009 14:57:04 +0000 (14:57 +0000)]
2.5
- Made scrollwheel behave uniform for zooming. It uses the UserDef
to map what's in our out. Use keymap entries WHEELINMOUSE and
WHEELOUTMOUSE to trigger this. Also removed the feature to store
in event->val the direction, it was conflicting with KM_ANY.
- Added more default poll callbacks, use for generic ops things
like ED_operator_object_active.
Ton Roosendaal [Thu, 1 Jan 2009 13:15:35 +0000 (13:15 +0000)]
2.5
- Edit mode Mesh undo/redo back
(undo for editmodes needed recode, todo for curve/lattice/etc)
- Added border select for edit mesh
- Added Akey (de)select all for edit mesh
- Added notifiers for mode changes.
This is also the first trial to dynamically add/remove
keymap handlers, based on modes. For that reason the Object
keymap was split in 2, modal and non-modal. On TABkey, the
view3d listener removes and adds maps.
The view3d keymap still handles generic mouse/border selection.
Internally it will verify modes.
The modes are not re-implemented still... have to move this
to scene context.
Joshua Leung [Thu, 1 Jan 2009 08:08:55 +0000 (08:08 +0000)]
2.5 - Assorted bugfixes
* Dopesheet - clicking on keyframes in Object channels (if they came from Object-Data such as Lamps, etc.) would crash. I noticed this error in AnimSys2 yesterday
* Action Editor - do versions code now totally reinitialises the Action Editor View2D data (for the timespace), since I found a few files where there appeared to be some weird settings set.
* RNA Browser (Outliner->Datablocks) would crash when the Area was ripped (using Alt-R hotkey) as seen in mfoxdogg's 2.5 Tour 2
Joshua Leung [Thu, 1 Jan 2009 01:47:36 +0000 (01:47 +0000)]
2.5 - Action Editor
* Fixed 'mute' icons for IPO-Curve channels. Added define for icon-button widths instead of magic numbers there too.
* Restored View All (HomeKey) and Auto-Set Preview Range (Ctrl-Alt-P). These tools both use the max extents of the keyframes to determine their (time)range.
Joshua Leung [Thu, 1 Jan 2009 00:18:23 +0000 (00:18 +0000)]
2.5:
First commit for 2009!
Started of porting of Animation Editor Channels stuff.
This code will be used for both the Action and IPO editors, so any existing code involving this has now been moved to the Animation module.
* Added mouse-click operator for this channels view. Note: the selection stuff currently uses temporary toggling code only (i.e. it only toggles the selection of the channels in the editor, but does not update status of rest of database).
* Fixed bugs in View2D listview functions. Reduced the amount of code needed, and makes the code here simpler.
* Renamed action_edit_keyframes.c to action_edit.c, since channels are not handled there anymore.
* Dopesheet now refreshes correctly when object selection elsewhere changes.
Martin Poirier [Wed, 31 Dec 2008 22:43:29 +0000 (22:43 +0000)]
2.5
- Transform for editmesh (including PET and editmesh snap) X-Mirror doesn't seem to work, but the option isn't accessible in the UI, so...
- Replacing G.obedit with obedit from context in view3d_header (other files will have to be done too, I just happened to stumble on that one while fixing other things).
Ton Roosendaal [Wed, 31 Dec 2008 18:52:15 +0000 (18:52 +0000)]
2.5
My last one for 2008: global undo/redo back :)
Happy 2009 all!
Nicholas Bishop [Wed, 31 Dec 2008 18:30:52 +0000 (18:30 +0000)]
Added new RNA file to cmake.
Ton Roosendaal [Wed, 31 Dec 2008 18:18:38 +0000 (18:18 +0000)]
2.5
Previous commit crashed transform in object mode.
Ton Roosendaal [Wed, 31 Dec 2008 17:50:00 +0000 (17:50 +0000)]
2.5
Added extend-select for edit mesh.
Note for operator design; you cannot give operators hardcoded
properties like "SHIFT" or "ALT", that conflicts with the idea
of keymaps. Instead the properties have to be functional, like
setting 'extend' on or off.
I also think mouse select could get these operators:
- activate/select, option 'extend'
- activate/select on object center, option 'extend'
- activate/select, with menu, option 'extend'
and of course loop-select, group-select, and so on.
BTW: border-select could also get 'extend' option :)
Brecht Van Lommel [Wed, 31 Dec 2008 17:12:17 +0000 (17:12 +0000)]
2.5: forgot to add this file in last commit.
Ton Roosendaal [Wed, 31 Dec 2008 17:11:42 +0000 (17:11 +0000)]
2.5
So, editmode mesh is back! :)
At the moment only TABkey works and mouse select, 1 vertex at a
time. More will follow of course.
Note for the devs:
- G.editMesh has been removed, be careful with old code.
- EditMesh now is property of Mesh itself
Although it means unlimited editmodes, for migration purposes we
better stick to 1 "obedit" per scene, which is in Context too
- G.obedit will get removed soon, so use CTX_data_edit_object(C)
Or if you can't, just scene->obedit for now
- Also removed the CTX_data_edit_mesh(), this has no meaning
anymore. EditMesh is not context senstitive anymore, only the
edit-object for time being is.
- Martin: I've already tucked some EditMesh pointer in T and
removed all G.editMesh there.
Brecht Van Lommel [Wed, 31 Dec 2008 15:02:40 +0000 (15:02 +0000)]
RNA
* DNA_text_types.h done, patch by Roelf de Kock.
* Minor naming fixes in RNA-RNA.
Brecht Van Lommel [Wed, 31 Dec 2008 13:16:37 +0000 (13:16 +0000)]
RNA
* Store RNA collections different in ID properties, using a generic
ID property array, using the patch provided by Joe.
* Fix bug accessing registered operator properties in the wm from the
outliner.
* In the outliner, only use the RNA icon for RNA data, and use dot
again for unknown icon.
* Also, show pointer properties data in the second column, and auto
expand two levels when opening them.
* Added small RNA_struct_defined_properties function to get only the
defined properties without builtin and undefined id properties
(for py operators).
Joshua Leung [Wed, 31 Dec 2008 10:44:00 +0000 (10:44 +0000)]
View2D:
Added methods for easier checking of visiblity/position of items arranged in some regular table format (i.e. columns and/or rows).
Last commit from me for 2008!
Campbell Barton [Wed, 31 Dec 2008 05:20:35 +0000 (05:20 +0000)]
Added WITH_PYTHON as a cmake option
Nicholas Bishop [Wed, 31 Dec 2008 04:47:01 +0000 (04:47 +0000)]
Finally got CMake compilation to work.
Made sdna and srna work more like how the scons build system is doing it, with separate bf_rna and bf_dna libs being built.
Nicholas Bishop [Wed, 31 Dec 2008 04:37:01 +0000 (04:37 +0000)]
Added some more directory includes for CMake.
Matt Ebb [Wed, 31 Dec 2008 03:05:08 +0000 (03:05 +0000)]
* Added different icon types to the outliner 'datablocks' view
Brecht, please let me know if I haven't done the right thing with the RNA stuff - I thought it was easier to ask for forgiveness than approval in this case :)
* Added a cute 'RNA' icon
Nicholas Bishop [Wed, 31 Dec 2008 00:53:01 +0000 (00:53 +0000)]
Added some missing directory includes for CMake. Still some linker errors to resolve.
Brecht Van Lommel [Tue, 30 Dec 2008 21:28:27 +0000 (21:28 +0000)]
RNA
* The RNA viewer is now more integrated with the outliner, as
a "Datablocks" view, with a tree structure.
* Still some issues to be solved with persistence, and also
memory usage is problematic when expanding a million vertices
in a mesh for example, though it will not build closed parts
of the tree.
Brecht Van Lommel [Tue, 30 Dec 2008 21:25:56 +0000 (21:25 +0000)]
2.5: tweak scons linking priority for editmesh.
Ton Roosendaal [Tue, 30 Dec 2008 19:01:12 +0000 (19:01 +0000)]
2.5
Undo editmode and global undo code back.
It's now called ED_undo_push() btw, but don't worry, for operators
this is going to be a simple operator flag, so you can remove the
old calls from all tools (but keep them when you directly change
data outide modifiers).
Will put undo back functional tomorrow
Andrea Weikert [Tue, 30 Dec 2008 16:04:27 +0000 (16:04 +0000)]
2.5 MSVC9 projectfiles
updates:
* editors/mesh: added all files
* editors/transform: transform_input.c
* RNA: rna_fluidsim.c
Ton Roosendaal [Tue, 30 Dec 2008 16:03:29 +0000 (16:03 +0000)]
2.5
EditMesh: further cleanup, made derivedmesh itterator functions
work by gathering all related data in local ViewContext struct.
(scene, editmesh, region, view3d, obedit).
Also removed bad inclusion of view3d_intern.h in mesh module.
Nathan Letwory [Tue, 30 Dec 2008 13:46:20 +0000 (13:46 +0000)]
2.5
* remove a stray ;
- it would be an empty statement, which is a proper statement, but not so nice when doing still declarations :) MSVC will complain.
Ton Roosendaal [Tue, 30 Dec 2008 13:16:14 +0000 (13:16 +0000)]
2.5
Editmesh code cleaned and compiling/linking. A whopping
20k lines back! :)
Not that it does stuff... editmode in/out has to be done,
and loads of operators. Also linking/exporting editmesh
calls has to be reviewed.
Also: added a blender_test_break() mechanism in BKE.
Michael Fox [Tue, 30 Dec 2008 10:37:52 +0000 (10:37 +0000)]
2.5
******
- ported Make track , and Clear track (ctrl-t, Alt-t)
- make track is a direct port does not use context data loops
- make Track crashes as Constraints have not been ported yet
- added select_extend to mouse select so now you can use shift again
- Still does not use Context data loops as this get all messed up, kaito can you look into it
- currently only works with 1 modifier key at a time so ctrl+alt does not work, until i can figure out how best to achieve this
Joshua Leung [Tue, 30 Dec 2008 10:10:44 +0000 (10:10 +0000)]
2.5 - Action Editor stuff
* Added old theme-set version patch for new Dopesheet channel colours
* Removed warnings in action_edit_keyframes.c. I need an example of how to add error reports for the code that this concerned.
Brecht Van Lommel [Tue, 30 Dec 2008 07:32:14 +0000 (07:32 +0000)]
2.5: fix compile error on mac, and a few warnings.
Michael Fox [Tue, 30 Dec 2008 03:38:18 +0000 (03:38 +0000)]
2.5
*******
Small commit, moved selection Operators to Object editor (object_edit.c) as per kaito's request
- normal selection and border/circle select are still in view3d as they depend too much on view3d
Joshua Leung [Tue, 30 Dec 2008 03:28:01 +0000 (03:28 +0000)]
2.5 - Bugfix for old Outliner/Oops views
Old oops views were not being converted to Outliner views), so the View menu was empty.
Nathan Letwory [Tue, 30 Dec 2008 00:35:31 +0000 (00:35 +0000)]
2.5
* make bpy compile with msvc again. The forward declaration of the array with no length was a problem. Instead, I switched the tables and made the function a forward declaration.
Joshua Leung [Tue, 30 Dec 2008 00:28:11 +0000 (00:28 +0000)]
2.5 - Transform Code for Animation Editors (Part 1)
Remove context pointer from transform code. Solved the need for this by modifying the code that needed it.
Nathan Letwory [Mon, 29 Dec 2008 23:42:39 +0000 (23:42 +0000)]
* remove unused var
Martin Poirier [Mon, 29 Dec 2008 20:37:54 +0000 (20:37 +0000)]
2.5
Transform house cleaning. Gattering input methods in specialized code. It's not missing much before it can be used standalone (for example, to use the mouse to specify remove doubles threshold interactively).
Note to Aligorith: Transformations using INPUT_NONE (most Time* stuff) would use a cleanup.
Willian Padovani Germano [Mon, 29 Dec 2008 18:38:29 +0000 (18:38 +0000)]
== RNA ==
Ongoing work in rna_ipo.c: wrapping BPoint and BezTriple, since they are used in IpoCurve.
These are declared in DNA_curve_types.h, so rna_curve.c is a better place for them. I prefer to test things better and have someone who knows well this data check the wrapping first, though.
Brecht Van Lommel [Mon, 29 Dec 2008 17:36:06 +0000 (17:36 +0000)]
RNA
* DNA_object_fluidsim.h: done, patch by Nathaniel Garbutt, thanks!
Some changes to make it more complete and adding inheritance to
better hide irrelevant and reused properties.
* Also added all derived types for modifiers, but only fluid is
filled in currently.
* Some files converted from DOS to UNIX line endings.
Brecht Van Lommel [Mon, 29 Dec 2008 13:48:03 +0000 (13:48 +0000)]
2.5: fix a crash with invalid data left in context after file read,
now it clears screen/area/region/uiblock.
Brecht Van Lommel [Mon, 29 Dec 2008 13:38:08 +0000 (13:38 +0000)]
2.5: Error reporting
* Added a report list to operator, to which they can report errors and
warnings. When the operator ends, it will display them with a popup. For
python these should become exceptions when calling operators.
* Added a function to make a popup menu from a report list.
* Also added a utility function to prepend a string before the reports to
indicate what they relates to. Also made the report functions used
BLI_dynstr to simplify the code.
* Made file reading and writing report errors to the user again using this
system, also replacing the left over uncommented bad level error() calls.
Willian Padovani Germano [Mon, 29 Dec 2008 13:02:18 +0000 (13:02 +0000)]
The 'struct' keyword was missing, breaking compilation here (scons).
Ton Roosendaal [Mon, 29 Dec 2008 12:15:42 +0000 (12:15 +0000)]
2.5
More notifier cleanups:
NC_SCENE|ND_OB_SELECT : scene level object selections changed
NC_SCENE|ND_OB_ACTIVE : scene level, new active object
NC_OBJECT|ND_BONE_SELECT : object level, bone selection changed
NC_OBJECT|ND_BONE_ACTIVE: object level, new active bone
I've made view3d listen to these, so operators that change
selections don't have to tag own region for redraw anymore.
Also enabled selecting/activating in outliner again.
BTW: Added it in space_action, but Joshua has to code the
proper refresh still :)
Campbell Barton [Mon, 29 Dec 2008 12:04:25 +0000 (12:04 +0000)]
* was using __members__ to get a list of attributes, has been deprecated in python for a while now. use a "__dir__" method instead. now dir() works for rna and operator types.
* added array support for bpyoperator doc generation
Joshua Leung [Mon, 29 Dec 2008 11:04:55 +0000 (11:04 +0000)]
2.5 - Action Editor: Copy/Paste
This can be activated using Ctrl-C/V and the buttons on the header.
It still uses an ugly global copy/paste buffer for now. In future, we could investigate alternative methods...
Ton Roosendaal [Mon, 29 Dec 2008 09:24:42 +0000 (09:24 +0000)]
2.5
Made Makefiles happy with new transform library.
Andrea Weikert [Mon, 29 Dec 2008 09:19:37 +0000 (09:19 +0000)]
2.5 MSVC9 projectfiles
updates:
* editors/transform: added all files
* editors/animation: keyframes_general.c
* editors/space_node: node_state.c
note: had to remove WITH_VERSE from editors, due to BIF_verse not beeing ported (yet?)
Joshua Leung [Mon, 29 Dec 2008 07:19:16 +0000 (07:19 +0000)]
2.5 - Action Editor Transforms now work again
Note: there were some crashes that would occur if context was not reset everytime the modal callback was run. Probably there's something about the context info we need to be more careful about.
Joshua Leung [Mon, 29 Dec 2008 06:22:45 +0000 (06:22 +0000)]
2.5 Transform - Resolving more warnings, etc
Joshua Leung [Mon, 29 Dec 2008 06:06:59 +0000 (06:06 +0000)]
2.5 Transform Code - Preparing for Action Editor Support
* Fixed up most of the relevant Fixme's for Action Editor and/or some animation stuff
* Added keymap for action editor transforms to transform keymap.
* Added context pointer to TransInfo struct. This was needed to avoid passing context to everything. As such, renamed the old 'context' setting to options.
Martin Poirier [Mon, 29 Dec 2008 04:23:41 +0000 (04:23 +0000)]
2.5
Widden some #if 0 to completely remove harmful code.
Martin Poirier [Mon, 29 Dec 2008 04:14:27 +0000 (04:14 +0000)]
Forgot this new file in last commit
Campbell Barton [Mon, 29 Dec 2008 03:24:13 +0000 (03:24 +0000)]
added RNA access to operators pointers to be documented with epy_doc_gen.py.
eg: print (bpyoperator.VIEW3D_OT_viewnumpad.rna.__members__)
docs for bpyoperator
http://www.graphicall.org/ftp/ideasman42/html/bpyoperator-module.html
Martin Poirier [Mon, 29 Dec 2008 01:41:28 +0000 (01:41 +0000)]
2.5
Transform:
First working port of the transform code:
- Object mode only (other conversions need to be ported)
- Contraints (global and local only) working
- Snap (no edit mode, obviously) working
- Numinput working
- Gears (Ctrl and Shift) working
- Only grap, rotate, scale, shear, warp and to sphere have been added as hotkey, but the rest should work too once accessible
- No manipulator
- No drawn feedback other than moving stuff and header print (no constraint line, snap circle, ...)
- No NDOF support
I've only tested Scons support, though Makefil *should* work, I *think*.
Misc:
-QuatIsNull function in arith
-Exporting project_* and view[line|ray] functions from view3d
Joshua Leung [Mon, 29 Dec 2008 01:19:25 +0000 (01:19 +0000)]
2.5 - Action Editor / Animation Stuff:
* Brought back clean (OKEY), sample (Shift-OKEY), and delete (XKEY/DELKEY) tools for the Action Editor.
Currently clean uses a predefined threshold (as a rna-prop, though it's still lacking the popup to set this when it is called)
* Added new file for 'destructive' keyframe operations/tools.
* Got keyframing.c compiling. Now, some of these tools need to be operatorised. Also, the API there might change when enough of the system is stable for RNA-IPO work to take place (so that it can be tested).
Nathan Letwory [Mon, 29 Dec 2008 00:55:23 +0000 (00:55 +0000)]
2.5 / Nodes
* enable more code (button callbacks, will probably undergo revision)
Michael Fox [Mon, 29 Dec 2008 00:45:00 +0000 (00:45 +0000)]
2.5
********
-ported the selection functions to use context data loops
-removed unused functions
-added select by layer (alt-numpad *), hardcoded to layer 2 until appropriate popup is available
- normal select is still the same, need to untangle it badly, and add extend to it for multiple selection, group selections, activations etc etc
Nathan Letwory [Mon, 29 Dec 2008 00:03:05 +0000 (00:03 +0000)]
2.5 / Nodes
* patch reading of old files so nodes open up properly.
Nathan Letwory [Sun, 28 Dec 2008 23:49:51 +0000 (23:49 +0000)]
2.5 / Nodes
* header: better positioning of buttons, new drawing style was mixing up for old positions.
Matt Ebb [Sun, 28 Dec 2008 23:14:37 +0000 (23:14 +0000)]
More button code cleaning and tweaks
* now the rounded and round shaded themes use the same drawing backend
* fixed a problem with menu and number button triangles not accounting for buttons zoom
Joshua Leung [Sun, 28 Dec 2008 22:26:02 +0000 (22:26 +0000)]
2.5 Outliner - Mouse Clicks work again
A typo in the outliner_active poll() callback meant that the events were being skipped.
Nathan Letwory [Sun, 28 Dec 2008 21:41:33 +0000 (21:41 +0000)]
2.5 / Nodes
* Operator to toggle node visibility (hide/unhide)
Nathan Letwory [Sun, 28 Dec 2008 20:49:37 +0000 (20:49 +0000)]
2.5 / Nodes
* shift-select operator, inheriting from normal select operator.
Diego Borghetti [Sun, 28 Dec 2008 19:16:07 +0000 (19:16 +0000)]
Tweak here.. tweak there.. and hope that the damn focus bug is fixed now!!
Also check that this bug cause (with some window manager) that blender
work really bad, for example change from one area to another with a popup
menu open make the view hmhm "blink" (show and unshow the menu when you move
the mouse) and when you return the menu is open.. also other things that
now work fine.
Ton Roosendaal [Sun, 28 Dec 2008 18:10:24 +0000 (18:10 +0000)]
2.5
Recode of 'select all objects by type' to show
how to use itterators.
Andrea Weikert [Sun, 28 Dec 2008 15:28:09 +0000 (15:28 +0000)]
2.5
fix for win32 firing size event with undefined size.
Ton Roosendaal [Sun, 28 Dec 2008 14:41:33 +0000 (14:41 +0000)]
2.5
Quick bugfix: notifiers was reading NULL pointer after a file read.
Nathan Letwory [Sun, 28 Dec 2008 13:24:44 +0000 (13:24 +0000)]
2.5 / Nodes
* tag region for redraw after select.
Campbell Barton [Sun, 28 Dec 2008 13:03:37 +0000 (13:03 +0000)]
minor changes and error checking.
tested first PyOperator, basics work now, invoke/exec can be used to make an operator that edits RNA or calls other operators.
Joshua Leung [Sun, 28 Dec 2008 11:51:41 +0000 (11:51 +0000)]
2.5 - Action Editor:
* Added set-extrapolation operator. For now, this uses the Shift-E hotkey.
* Removed some unused code from keyframes_edit.c
Ton Roosendaal [Sun, 28 Dec 2008 11:28:44 +0000 (11:28 +0000)]
2.5
- New icons code crashed when using old (smaller) files, added a check
and warning print for this case.
Andrea Weikert [Sun, 28 Dec 2008 11:27:54 +0000 (11:27 +0000)]
2.5 MSVC9 projectfiles
updates:
* BPY_python: bpy_opwrapper.c, bpy_util.c
* editors/space_action: action_edit_keyframes.c
* editors/space_node: node_ops.c, node_select.c
Joshua Leung [Sun, 28 Dec 2008 11:08:56 +0000 (11:08 +0000)]
2.5 - Version patch for reading old .blend files (for some animsys2 changes) was being done for the wrong sub-version.
Michael Fox [Sun, 28 Dec 2008 10:49:58 +0000 (10:49 +0000)]
just silenced a warning, thx kaito for pointing it out
Michael Fox [Sun, 28 Dec 2008 10:30:05 +0000 (10:30 +0000)]
2.5
*******
small commit - Select By Type Operator ( ctrl-numpad * )
Campbell Barton [Sun, 28 Dec 2008 08:49:41 +0000 (08:49 +0000)]
include order is important here :/
Campbell Barton [Sun, 28 Dec 2008 08:46:38 +0000 (08:46 +0000)]
missing bpy_compat.h for <3.0 py
Campbell Barton [Sun, 28 Dec 2008 08:41:49 +0000 (08:41 +0000)]
PyOperator invoke function now receives the wmEvent and default properties as 2 python dictionary args.
the Python invoke function can then edit the properties based on the event, once its finished the properties are copied back to the operator.
python exec and invoke functions can now return RUNNING_MODAL, CANCELLED, FINISHED, PASS_THROUGH flags
Still need to look into how python operators can make use of invoke/exec for a practical case. (Need to bring back the popup menu's)
Joshua Leung [Sun, 28 Dec 2008 08:15:29 +0000 (08:15 +0000)]
2.5 - Action Editor: Bringing back more operators
* Added 'set handle-type' operator. Currently, all possible handle types are all set using a menu and HKEY. This will need to be reviewed at some point, but I think it should be easier for users to remember 1 hotkey for this, rather than 4 scattered around the place.
* Added 'set interpolation' operator. This uses the Shift-T hotkey as before (for now). As in AnimSys2, this sets per-keyframe interpolation.
* Remapped toggle frames/time-codes operator to Ctrl-T key. This may still change, but the TKEY needs to be free for transform tool here.
Matt Ebb [Sun, 28 Dec 2008 07:39:23 +0000 (07:39 +0000)]
2.5 - Reworked the icon system a bit
* After several hours of manual dragging and typing the icon file is now
enlarged and completely reorganised logically, rather than scattered
throughout. This should provide a lot more room for growth, and is a
lot easier to work with (also allowing more space for toggle buttons
that require two icon slots next to each other). The icon grid has now
25 x 24 icons - hopefully this might last us for a couple more years :)
Some of the naming of icon defines is a bit ancient and can be cleaned
up a bit further. Other devs, if when bringing spaces back, it's
finding the wrong icon, or missing a define, try and look to see if
it's already existing in the new icon file, or drop me a note and I'll
fix it up.
Note: after these changes, older custom blender 2.4 icon
files won't work and will need to be updated to the new layout.
* Enlarged the icons themselves from 15x16 pixels to 16x16 pixels (icon
designer request). This is a more standard size, and is easier to fit
stuff in proportionally.
* Added a bunch more of jendrzych's icons that weren't added previously
since there wasn't space in the icon file (including a few more
modifier icons)
* Tweaked the outliner somewhat, so that instead of just showing a
generic 'object' icon for all objects, it shows 'object type' icons,
per object type. This makes the outliner a lot more useful for browsing
at a glance - a huge row of identical 'object' icons doesn't really
give much useful information. See here:
http://mke3.net/blender/devel/2.5/outliner_obtypes.png
Joshua Leung [Sun, 28 Dec 2008 04:13:18 +0000 (04:13 +0000)]
2.5
- Action Editor: Snap Current Frame to Selected Keyframes
- Change time operator - removed old unnecessary code
Michael Fox [Sun, 28 Dec 2008 01:28:31 +0000 (01:28 +0000)]
2.5
******
Ported object selection tools
- (de)select all
- invert selection (ctrl-i)
- select random ( numpad *)
each selection tool is own operator , mouse selection is seperated again to own operator
select random has the hard coded fac of 50 as there is no number popup developed yet
to be ported: select by layer and select by type
Nathan Letwory [Sun, 28 Dec 2008 00:42:01 +0000 (00:42 +0000)]
* hrmpfs :]
Nathan Letwory [Sun, 28 Dec 2008 00:38:12 +0000 (00:38 +0000)]
* clean up some warnings.
Nathan Letwory [Sun, 28 Dec 2008 00:18:59 +0000 (00:18 +0000)]
* /W4 accidently slipped through.
Nathan Letwory [Sun, 28 Dec 2008 00:08:34 +0000 (00:08 +0000)]
2.5 / Nodes
* WIP selection operator.
- selection is made, but redraw is still missing.
Nathan Letwory [Sat, 27 Dec 2008 20:22:22 +0000 (20:22 +0000)]
2.5 / SCons
* make sure we can build WITH_BF_PYTHON=False
Ton Roosendaal [Sat, 27 Dec 2008 17:43:05 +0000 (17:43 +0000)]
2.5
Anim playback part 1 (needs more test, will do after commit)
- added the update_for_new_frame() back
- proper evaluation of time change notifier in WM level
- fixed redraw flushes for menus while animation plays.
Campbell Barton [Sat, 27 Dec 2008 16:35:15 +0000 (16:35 +0000)]
* converting operator props to strings was using a float as in int.
* PyOperators were always calling the python functions with default args.
* Made operator prints only happen when G.f & G_DEBUG is enabled.
Ton Roosendaal [Sat, 27 Dec 2008 16:09:56 +0000 (16:09 +0000)]
2.5
Notifier system upgrade, based on Brecht's doc.
Implementation notes:
http://wiki.blender.org/index.php/BlenderDev/Blender2.5/DataNotifiers#Implementation
In short: let's try to strictly communicate in a notifier what happened.
The listeners then can act themselves. It also means that a frame-changed
notifier doesn't send out redraws, the editors themselves can decide.
Campbell Barton [Sat, 27 Dec 2008 14:52:49 +0000 (14:52 +0000)]
python operators (in bpy_opwrapper.*)
This means you can define an operator in python that is called from C or Python - like any other operator.
Python functions for invoke and exec can be registered with an operator name.
keywords are read from the python exec() function, then used to create operator properties. The default python values are used to set the property type and defaults.
def exec(size=2.0, text="blah"): ...
is equivalent to...
prop = RNA_def_property(ot->srna, "size", PROP_FLOAT, PROP_NONE);
RNA_def_property_float_default(prop, 2.0f);
prop = RNA_def_property(ot->srna, "size", PROP_STRING, PROP_NONE);
RNA_def_property_string_default(prop, "blah");
TODO -
* make use of events
* return OPERATOR_CANCELLED/OPERATOR_FINISHED.. etc
* add support for array args
* more testing
Joshua Leung [Sat, 27 Dec 2008 11:44:00 +0000 (11:44 +0000)]
2.5 - Action Editor
* Started porting back keyframe editing tools for the Action Editor/Dopesheet. Currently, only Snap (Shift-S) and Mirror (Shift-M) are functional.
* Added keyframe-editing API method for ensuring that all IPO-curves are left in a valid state after modifiying the values of their keyframes.
* Added operator-register flags for most of the operators. Only mouse-select doesn't have it for now (as there's not much useful info stored, and no exec callback).
Michael Fox [Sat, 27 Dec 2008 10:54:32 +0000 (10:54 +0000)]
2.5
*******
Made the framework for selection operations ( invert selection, select random) to be handled by a single operator, atm only normal/mouse selection is possible
to be ported
- invert selection
- select random
- select by layer
- select by type
Joshua Leung [Sat, 27 Dec 2008 05:24:03 +0000 (05:24 +0000)]
2.5 - Assorted comments, and made the default size of the Action Editor more sensible.
Campbell Barton [Sat, 27 Dec 2008 04:55:45 +0000 (04:55 +0000)]
run python when starting blender like 2.4x does (was start/stopping python for each script before)
This way python can call the operator to run other scripts
eg...
bpyoperator.SCRIPT_OT_run_pyfile(filename = "myop.py")