Commit Graph

712 Commits

Author SHA1 Message Date
Campbell Barton
4c5b430520 ED_armature_edit_bone_remove wasnt clearing references from other bones, only affects rna api access 2009-11-25 11:47:53 +00:00
Campbell Barton
b40307df16 add access to bone add/remove from rna. eg.
bone = arm.edit_bones.new("SomeBone")
 arm.edit_bones.remove(bone)

regify (WIP)
2009-11-25 11:05:11 +00:00
William Reynish
d2c999020c Updated icons. Thanks to jendrzych.
Adds icon entries to the force fields.

Also reverted last menu naming commit - this is apparently due to a bug in the Python API that will be fixed.
2009-11-24 15:40:56 +00:00
Brecht Van Lommel
2e7dbdf025 Depsgraph/Drivers
* Removed ED_anim_dag_flush_update and ED_anim_object_flush_update. These
  were wrapping DAG_* calls and were intended be used instead of them when
  doing a DAG update from editors. That goes against the design in my opinion,
  no matter who calls the DAG, that should update the editors correctly, so
  any special checks in such functions for editors should be avoided.

* Driver RNA properties now do updates again, including DAG scene sorting,
  text buttons no longer update as you type anymore, so this should be
  safe I think.

* Remove scene.update() RNA function, all properties/functions should do this
  automatically, if changing some property or calling a function/operator
  does not do the correct update, that should be fixed.
2009-11-24 11:48:16 +00:00
Martin Poirier
4dd78dcbdf Made select operator return FINISHED only when it did something (only PASSTHROUGH otherwise) 2009-11-24 04:59:52 +00:00
Brecht Van Lommel
7b036e1dcb Splash screen, implemented by Matt.
* Now has documentation links and recent files.
* Click on image or outside splash to make it go away.
* Still has old image, new one will be committed later.
2009-11-23 13:58:55 +00:00
Joshua Leung
c6dbbde16b Various bugfixes:
* Tweaked the code for operator buttons so that only those operator buttons in the toolbar have their text left-aligned. This is done at layout-block level

* Silenced "file_init" print when opening the file browser

* Disabled animateability of the "active_shape_key_index" for Objects, since this property behaves in a very unpredictable manner, leading to problems with users trying to keyframe shapekey values and ending up keying the list. 

* Remove some unnecessary RNA wrapping code
2009-11-23 09:47:56 +00:00
Matt Ebb
8be7b757e3 * New option on modifiers that don't change topology: Apply as Shape
Rather than applying the modifier to the object data, it will create a new shape 
with the deformed vertices in there. Only mesh at the moment, other object 
types on the todo.
2009-11-22 13:44:09 +00:00
Joshua Leung
220669d1fd Parenting and Deforms:
Parenting an object to some deformer (i.e. Armature, Curve, Lattice) now adds a new modifier if the object is deformable.

The advantages of this over setting PAR_SKEL mode are:
- instead of a hidden 'virtual' modifier, the user has direct feedback about what sort of modifier is being applied to deform
- most of the time in 2.4, whenever a virtual modifier was added, users would inevitably end up clicking "Make Real" on it

Of course, it's still possible to get 'virtual' modifiers by setting the parent type using the menu-property, but this just makes general setup easier.
2009-11-22 12:28:38 +00:00
Joerg Mueller
8e877c1f9f Added a first version of the Sound F-Curve Modifier, not really usable yet, but you can play around with it. 2009-11-22 12:10:45 +00:00
Campbell Barton
adb14a2247 remove template uiTemplate_view3d_select_faceselmenu 2009-11-22 10:02:32 +00:00
Campbell Barton
6f38938a64 [#19930] Nurb CV select is failing because of view clipping
- the clipping test function was using the rv3d->viewmatob where it needed to use the object matrix.
- added a local clipping member to rv3d, the clipping planes in object-space, avoids many matrix multiplications when testing verts or clipping pixels when projection painting.
2009-11-21 16:44:05 +00:00
Joshua Leung
03cfcc6007 Node Editor - More Cleanups (Reshuffling):
- removing duplicate chunks of code -> hide unused sockets now works
- moving some functions to the files that they get called from -> view all/home
- made duplicate a macro operator like the other places that work like this, eliminating the unnecessary transform-related property there still
- removed a few chunks of unused code
2009-11-20 21:04:41 +00:00
Joshua Leung
6468f21ddf Red-Black Tree Code Cleanups:
Added some more methods for the Red-Black Tree implementation in Blender (used for runtime viewing and searching of keyframes) which abstract away some of the lower-level handling of the BST (i.e. adding nodes without balancing and searching for nodes). 

Also, improved the implementation of the jump next/prev keyframe operator so that it pops up an error message when the last keyframe in whatever direction is encountered.
2009-11-15 11:20:44 +00:00
Campbell Barton
53250f85db object.constraints.add()/remove()/active, same for PoseChannel
modified internal api for minimal rna wrapper functions.

TODO
- missing updates for pose channels
- typecheck for pose/object constraints
2009-11-11 19:58:30 +00:00
Brecht Van Lommel
2e3326c153 Sculpt: svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender -r24330:24483 2009-11-11 10:44:46 +00:00
Joshua Leung
1dfc7942d3 Grease Pencil for Nodes Editor:
This commit restores Grease Pencil functionality for the Nodes Editor. Grease Pencil data is now stored at the NodeTree level, which means that annotations remain with the NodeTree they were made for. 

Possible TODO's:
* In future, it may be worth investigating attaching Grease Pencil data to individual nodes, to allow annotations to stay attached to nodes as they are moved
* Include the settings for the 'active node' in a panel in the new NKEY region where the Grease Pencil buttons appear.
2009-11-11 08:12:54 +00:00
Matt Ebb
bf50cc8b39 Added compositing node support to the animation editors
Now when nodes are keyed, they will show up in the dopesheet/graph editor/etc in a new 'Nodetree' category.

Still a major problem left, nodes need unique names in order for the rna paths to hold animation data properly...
2009-11-11 05:03:49 +00:00
Matt Ebb
f0fc007c4b Wrapped node input and output sockets in RNA.
This allows you to set and animate the values of socket inputs and outputs, for example the value node.
It's also a step on the way to manipulating node trees via python (i.e. linking node sockets to each other).

This fixes [#19841] RGB Node in compositor not working
2009-11-11 02:15:09 +00:00
Campbell Barton
5935ef0049 use armature active bone as a pointer rather then a flag for each bone that needs looking up.
- rna vars arm.bones.active & rna.edit_bones.active
- needed special undo support.
- readfile.c loads.
- duplicate and copy_armature support.
- keep the draw flag, renamed to BONE_DRAW_ACTIVE, only use for openGL drawing.

Note: it may be better to allow active/unselected as with objects.
2009-11-09 21:03:54 +00:00
Campbell Barton
ae91ca7217 OpenGL grease pencil render
Algorith: needed to add some functions since offscreen render doesn't have a context pointer
 - draw_gpencil_3dview_ext
 - gpencil_data_get_active_v3d
2009-11-09 08:03:43 +00:00
Joshua Leung
10900f1de8 Graph Editor Drawing Tweaks:
* When there is only a single keyframe for a F-Curve, the handles aren't shown anymore. This looks nicer than the fat orange blobs that appeared
* Tweaked the management of GL_BLEND when drawing animation channels in the Graph Editor in an attempt to fix some of the missing text drawn issues.
* Converted the properties panel to use layout engine + added color selectors
2009-11-08 06:43:08 +00:00
Martin Poirier
0b027b4097 Make orientation matrix access function public.
Fix bug in previous code: passing 3x3 matrix to a function expecting a 4x4 (warnings are for something)
2009-11-06 21:31:14 +00:00
Brecht Van Lommel
1e40adddc7 2.5 Modifiers: mesh deform, boolean and decimation work again. 2009-11-05 18:05:55 +00:00
Campbell Barton
b1ac71b3a0 enter editmode when adding objects even if the object is not in an active layer,
useful for python but in rare cases this also happens for users.

Active layer getting out of sync is an old bug but hard find when it happens.
This at least fixes segfaulting on adding objects.
2009-11-05 14:25:08 +00:00
Brecht Van Lommel
9c1c0152df Sculpt: svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender -r24257:24330 2009-11-04 21:21:30 +00:00
Brecht Van Lommel
4bdfa8a7d7 Sculpt: split generic part of image paint undo system into separate
paint_undo.c file, to be reused for sculpt.
2009-11-04 20:19:41 +00:00
Campbell Barton
b3c8935b06 - Shift+F1 is append in 2.4x (not link). Lee asked it to be made the same.
- use OBJECT_OT_mode_set rather then OBJECT_OT_*_toggle, better for using report output for script input. OBJECT_OT_posemode_toggle and OBJECT_OT_editmode_toggle are called by OBJECT_OT_mode_set.
2009-11-03 11:00:10 +00:00
Brecht Van Lommel
efd6d5f3a7 Sculpt: svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender -r24152:24257 2009-11-02 18:56:56 +00:00
William Reynish
67fd40f54c Enabled theme editing in user preferences. There's still no way to Load/Save/Add/Delete though.
Code could be optimized greatly, but found it hard to get it to work nicely with auto-generated code.
2009-11-02 17:18:17 +00:00
Campbell Barton
1d9f90ed42 - all add object operators now take view_align as an argument, and enter_editmode where its used. Makes running the operator from python pradictable without having to know the user prefs.
- missing return in function
- python error in view3d (assumed active object exists)
2009-11-02 16:07:49 +00:00
Matt Ebb
4b8c64246e * Added a new 'bone constraint' property editor icon and panel titles to distinguish bone constraints from object constraints
It was a bit too confusing and people were easily getting them mixed up.
2009-11-02 11:36:45 +00:00
William Reynish
29aea786cb Added proper icon for full screen mode. Would be nice to have this button eventually be right-aligned. 2009-11-01 18:05:01 +00:00
Brecht Van Lommel
a365ccd20e Sculpt: svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender -r24095:24152 2009-10-29 10:12:07 +00:00
Brecht Van Lommel
b6459105b4 OpenGL Render restored.
I tried to make it integrate more with regular render but couldn't
do it well, it still needs a 3D view to take the settings from, and
can't run in a separate thread due to OpenGL.

However, it is now rendering to an offscreen buffer which then gets
displayed in the image window. This requires FBO's to be available, so
a fallback creating a new window is still needed. Currently available
from the Render menu in the top header.
2009-10-28 18:03:04 +00:00
Brecht Van Lommel
d6cde96286 Added support for custom RNA properties on Bones, only worked for
PoseChannel previously.
2009-10-28 15:33:45 +00:00
Nicholas Bishop
93beb0b85a Commit of the sculpt patch (#19672). Further development will be in this branch until we merge to trunk. 2009-10-27 19:53:34 +00:00
Arystanbek Dyussenov
6c4388e3b0 - fixed enum syntax in BKE_fcurve.h and ED_keyframing.h to make g++ happy
- exporting addEditBone from armature module for COLLADA importer
2009-10-27 16:13:50 +00:00
Joshua Leung
90957ed0dd A bunch of fixes for macro-type operators - Armatures + Objects
* Extrude and Duplicate for Armatures now use proper macros instead of manually calling transform themselves. This means that repeating these operators now works properly.
** NOTE: there's a bug with macros now which prevents the 'forked' extrude operator working correctly. Bug report filed for this.

* Included the proper operators for extrude and duplicate in the toolbar + menus. The operators used there did not activate transform, which meant that users often could not tell that the operation had occurred at all.
2009-10-27 11:10:30 +00:00
Brecht Van Lommel
53ac50ea8b Bugfix: 3d view with scene layer lock were not updated when the
scene layer or other 3d view layers were changed.
2009-10-26 12:42:25 +00:00
Brecht Van Lommel
dd8ea0c61a Bugfix to restore shape key add creating a new shape based on the
shape visible in the 3d view, rather than a copy of the basis shape.
2009-10-24 11:25:05 +00:00
Campbell Barton
e8af794441 face mask mode
- border select
- linked selection (Ctrl+L)
- select all
2009-10-22 19:17:46 +00:00
Campbell Barton
a407a21bfb added back face mask mouse selection and made shift+k fill weight paint and vertex color 2009-10-22 12:59:14 +00:00
Joshua Leung
5777c624a5 Animation Editors: Menu Tweaks
* Submenus displaying the options available for certain operators now will now show the hotkey for the operator on the menu entries. 

* Added an option for mirroring keyframes in the Graph Editor which makes use of the new cursor
2009-10-22 09:07:19 +00:00
Brecht Van Lommel
180d74ab57 UI: List Template tweaks to get it a bit more usable
* Mouse wheel now scrolls the list.
* Up/down key and alt mouse wheel change the active item.
* Adding/removing items from the list now automatically scrolls so the
  active item is in the view.
* Shift mouse wheel changes the size of the list widget to display more
  items. Lazy replacement for a proper grip.

* Shape key list now displays the influence value next to the name,
* Also fix the range of the value slider to match the defined min/max
  range.
2009-10-21 20:58:10 +00:00
Joshua Leung
2344d62dfb Silencing some compiler warnings for mingw
* Unused functions
* Uninitialised vars
2009-10-21 10:56:31 +00:00
Brecht Van Lommel
cac0e48dfb Region post redraw is now split up in a view space and pixel space
part. This fixes a bug where transform help line drawing would not
work with view clipping and mess up the z-buffer. This avoids the
transform code having to figure out what kind of opengl state is
enabled and disable it temporarily.
2009-10-20 21:05:22 +00:00
Campbell Barton
9a00cc55c1 - editmesh select mirror (in editmode select menu)
- weight blending (Vertex specials menu), currently blends from surrounding unselected verts (nice for blending edge loops), but will eventually support face mask mode.
2009-10-20 16:31:03 +00:00
William Reynish
c01c716346 *Made the Add Constraint menu similar to modifiers, with categories in columns. Makes them consistent, and also ensures the menu fits even on smaller displays.
*Put the Modifiers tab *before* the ObData (mesh, curve etc) tab, because modifiers actually apply to Object , not the ObData, even though the opposite would appear to make more sense.
2009-10-20 10:41:44 +00:00
Campbell Barton
9f841f5b35 weight paint operators - normalize/clean/invert 2009-10-20 10:19:48 +00:00