Commit Graph

20814 Commits

Author SHA1 Message Date
Damien Plisson
624cd67d55 Quicktime for Cocoa : import part
This makes quicktime import (.mov & quicktime handled image files such as .gif) available also for 64bit OSX

Unfortunately, Apple currently incomplete implementation of QTKit has much lower performance than old Carbon Quicktime.
FYI, it spawns a 32bit process "QTKitserver" to place calls to Quicktime 7.

So this is mostly meant as a "backup" for 64bit OSX builds, until Apple releases full Quicktime X.

Export part will come just after.

CMake scripts updated: set WITH_QUICKTIME and USE_QTKIT to ON
2009-11-18 09:49:42 +00:00
Joshua Leung
22e8616a27 Attempted bugfix for #19909: missing text in frame indicator box
Not sure whether this fixes the issue, but it sounds like some Intel cards have issues with alpha values lingering around.
2009-11-18 08:50:09 +00:00
Campbell Barton
318e9aa5d1 - rna attribute setting problem, class instances could not set their own attributes because they are blocked by our own internal setattr.
this could be supported again easily however it leads typo's & api changes not showing any errors.

  This broke povray export.
  Solution for now is to allow setting private properties starting with '_'

  eg, 
    ob = bpy.context.object
    
    ob._foo = [1,2,3] # this is a python list, it will stay only as long as this PyObject is active
    ob.foo = 1 # raises an error!, only for rna properties
    ob["foo"] = 1 # converts to an ID property and is saved

    using the underscore like this should really be used for classes internally.

- povray failed on armatures

- menu key wasn't using WM_keymap_add_menu
2009-11-18 08:40:18 +00:00
Thomas Dinges
1e1a0078da * NC_WINDOW Notifier for ID Name property (maybe not the best solution, but as ID blocks can be everything (object name, material, even scene) i chose the window Notifier. 2009-11-18 05:11:16 +00:00
Campbell Barton
7807a37b89 default name of keymap to 'keymap.py' + pedantic pep8 edits 2009-11-18 01:30:28 +00:00
Campbell Barton
5ad1563f34 insert spaces instead of tabs, makes editing templates less painfull, tho we should really have a function to insert strings rather then char's for this to work better. 2009-11-18 01:16:49 +00:00
Joshua Leung
b6e015f70c Small UI Tweaks - Toolbar + Graph Editor:
* "RNA Path" and "Array Index" for the active F-Curve in the Graph Editor are now shown in the properties region. These are greyed out unless the F-Curve cannot be evaluated, in which case they can be edited to make the F-Curve work again

* Made the Push and Relax operators in Pose Mode fit on a single row in the toolbar, since they're opposites of each other.
2009-11-17 22:46:42 +00:00
Martin Poirier
7b05c9ca30 Fun stuff with macro
Make macros work with more than one modal operator and mix of modal and invoke/exec

As a proof, brought back loopcut + edge slide in a single macro operator called Loopcut and Slide, replacing Loopcut as assigned to Ctrl-R.
2009-11-17 22:19:48 +00:00
Campbell Barton
2ae15e39ad make animation system and rna internals use getattr style syntax for user defined properties
bone["foo"] rather then bone.foo
matches python and avoids naming collisions
2009-11-17 20:46:59 +00:00
Martin Poirier
c07dde45a2 Macro for extrude along normals with a poll function to restrict it to face select.
Added before "free" extrude in the keymap means it's picked up first when applicable.
2009-11-17 20:40:39 +00:00
William Reynish
26695c15c2 Made toolbar buttons left-aligned.
Currently all tool buttons are left aligned, unless it has an icon like the Render Image and Animation buttons.
Later it might be nicer to introduce a proper flag to make text center aligned for those cases.
2009-11-17 20:19:35 +00:00
William Reynish
068545f3bd -Single column UI for image editor.
-Added buttons for Mark and Clear Seam in toolbar, replacing the less useful Rotate UVs and Mirror UVs commands.
2009-11-17 18:53:53 +00:00
Thomas Dinges
ff5ea39733 * Create Group Operator had a wrong name, so it didn't showed up in the menu. 2009-11-17 17:09:54 +00:00
Campbell Barton
d438ec3080 adjusting generic props in the UI refreshes the depgraph, this is weak but allows custom props to be used as drivers 2009-11-17 16:53:52 +00:00
Martin Poirier
4076572874 [#19760] Extrude + Continuous Grab doesn't work
Flag macro as blocking

Make macro copy operator flags when one of them returns MODAL (these flags are needed by the event system)
2009-11-17 16:48:43 +00:00
Thomas Dinges
5baa1d1759 * Alphabetical Order for Constraints.
* Formatting fix for last commit.
2009-11-17 16:27:53 +00:00
Campbell Barton
966b01665b use number keys to set the current brush in paint modes 2009-11-17 16:04:17 +00:00
William Reynish
fd64e0d662 Single column UI for constraints 2009-11-17 15:59:54 +00:00
Martin Poirier
99f8809b1a auto IK constraint was added twice, creating a circular list (HANG!) 2009-11-17 15:51:28 +00:00
Campbell Barton
df0f1d53b8 new function WM_keymap_add_menu(), similar to WM_keymap_add_item() except it takes a registered menu. the key will then trigger this menu. 2009-11-17 15:29:55 +00:00
Campbell Barton
68f94765bd switching the active brush with Alt+Wheel would crash when going past the last, need rna to clamp the range. 2009-11-17 15:10:19 +00:00
Campbell Barton
efae4c8f21 removing drivers was trying to remove the fcurve from the actions fcurve list if an action was set, now check if the context is for drivers first.
not 100% sure this is correct but removing fcurves worked in my tests for actions and drivers.
2009-11-17 14:32:19 +00:00
Campbell Barton
733b77063c was trying to add one too many drivers when inserting them on all items on an array (own error) 2009-11-17 14:10:29 +00:00
Campbell Barton
64104524cc fix for error editing a string property with quotes 2009-11-17 13:18:26 +00:00
William Reynish
5bc46cab8c Toolbar reorganization
Included more tools, such as Edge Slide and Shrink/Fatten in toolbar to make them easier to find.
Did some reorganization of tools in the mesh editing toolbar to categorize tools better.
Made some tools like Grease Pencil tools more compact in the UI
2009-11-17 12:59:55 +00:00
Campbell Barton
f7682e2e0f - in pose mode, pose bone properties are edited rather then armature bone
- new id property array method convert_to_pyobject()
- editing an array in the UI broke
- fixed for own error when updating ID prop api
2009-11-17 12:54:29 +00:00
Campbell Barton
51f2dcd08c - access console languages as modules rather then having the py operator call an operator
- workaround for __getattr__ existing for types that dont support it
2009-11-17 12:21:41 +00:00
Campbell Barton
7f8a24b614 select linked enables seam limit when in face mode and the "limit" property is not set (like in 2.4x) 2009-11-17 10:57:49 +00:00
Campbell Barton
cf26cdd508 nicer UI, allow editing of values without pressing edit for basic types 2009-11-17 10:30:54 +00:00
Joshua Leung
10e1780cf9 Assorted bugfixes - Sequencer/Preview Range:
* Snapping strips now works with the hotkey  Shift-S   as in the rest of Blender
* Preview Range works in Sequencer now (the operators for setting, clearing, and also drawing)
* Related to the Preview Range for Sequencer, toggling the time-display mode also works
* Preview Range Set operator now works again, after the modal keymaps change for borderselect broke it. Also sends correct notifiers now after bein called.
2009-11-17 10:12:35 +00:00
Joshua Leung
b1a6ef4bfc DopeSheet Drawing Optimisation (Long Keyframes):
Optimised the code for drawing Long Keyframes by making the code use a Red-Black Tree instead of performing linear search over all the (potentially unsorted) BezTriples to find the previous one with a matching value.

As a result, the Redraw Timer (Ctrl Alt T) tool reports that the time needed to draw the keyframes region on a heavy imported-BVH file has dropped from an average of 270ms per draw, to about 60ms. The view is also freely pannable as a result.

Note that this code will currently have some issues when there are more than 4 BezTriples occurring on the same frame, but that should only happen when transforming keyframes anyway. This will be addressed as necessary.
2009-11-17 08:27:46 +00:00
Damien Plisson
45e38635a4 Drag'n'drop : add freeing of dropped resources upon event object release 2009-11-17 08:27:11 +00:00
Campbell Barton
7636d17af6 property editor for bone and object ID props, add/remove/edit
good example of how editing NON rna data results in very weired scripts :/
2009-11-16 22:53:28 +00:00
Campbell Barton
3087da0b25 my chnges broke 'del idprop["key"]'
made it possible to remove properties from rna types.

eg.
 del group["someprop"]
2009-11-16 22:21:39 +00:00
Martin Poirier
98d4a56d55 Fixing keymap export:
- Didn't support new userdef keymaps (new "active" rna function to get the active version of a keymap)
- Didn't support modal keymaps (new "modal" param to add_keymap function, new "add_modal_item" function on keymaps (both functions now make sure the keymap is of the right type))
2009-11-16 20:50:02 +00:00
Campbell Barton
6ed0686fcc bpy/rna methods to find properties (works nice with autocomp!)
keys(), values() & items()

ed...
 print(bpy.context.active_object.keys())

Possible name conflict here, need to keep an eye on it.
2009-11-16 20:16:45 +00:00
Thomas Dinges
061675b3eb 2.5 Texture RNA:
* Alphabetical Order for Texture Types, this way it's easier to find the texture inside the drop down.
2009-11-16 20:02:58 +00:00
Campbell Barton
5b2fdb6ebe missing include 2009-11-16 19:18:04 +00:00
Campbell Barton
578950c977 ID property access from python for pose channels, bones and any ID objects.
The advantage with this is that global property definitions are not needed to add a property to an object.

to avoid confusion these are accessed like a dictionary (closely matching how the BGE accesses properties)

 ob["mySetting"] = 1.0

 bone["foo"] = {"one":1, "two":2.1, "three":"Three"}

 if "foo" in bone: print("prop found...")

At the moment these can also be accessed as attributes, will be changed shortly. eg.
 bone.foo == bone["foo"]
2009-11-16 19:03:40 +00:00
Campbell Barton
66dfaabb9d update idproperty python api for python 3.1
- removed 'group.has_key("key")', use... '"key" in group' instead
- removed verbose float and int conversions that are not needed
- fixed memory leak
2009-11-16 18:56:58 +00:00
Campbell Barton
cf1700bdd5 python api for ID property access by Joseph Eager, copied from blender 2.4x. 2009-11-16 18:53:11 +00:00
William Reynish
ca5a912c3e Added single column support to modifiers
Tiny cleanups and improvements in some modifier layouts
2009-11-16 16:07:22 +00:00
Campbell Barton
d6c0680268 un-initialized variable, fix for own recent commit 2009-11-16 14:29:46 +00:00
Campbell Barton
20043a0fc0 add hook in vertex and control point menu's, Ctrl+H
TODO's
- add for lattice
- break up add_hook
- add other hook operators
2009-11-16 13:59:27 +00:00
Joshua Leung
88fe2d187b Bugfix: Remove drivers button was broken
Somehow this worked here, even though the pointer being referenced was supposed to have been freed already...
2009-11-16 12:44:33 +00:00
Joshua Leung
a12c2a8561 Constraints: Code cleanup
* Removing duplicate api functions
* Shuffled around newly added api functions to make the ordering more consistent
* Fixes for a few bugs in the api functions as I checked over them
* Replaced most of the #defines for flags and modes with enums
2009-11-16 12:33:42 +00:00
Campbell Barton
567ee32f14 - fcurve modifiers.new()/remove()/active
- renamed .add() to .new() for rna collection functions since they dont add an existing item.
- remove 'name' as an argument from the new driver target function, better to keep the api minimal and let scripters use the data api for editing values after.
- added some api functions to keep rna api from becoming a mess.
2009-11-16 11:11:16 +00:00
Campbell Barton
d2ca3e5582 fix for python UI glitch, need to make view3d active_pchan & active_bone's (since they dont check layers atm) 2009-11-16 10:10:29 +00:00
Campbell Barton
be07bb3cc3 functions returning non ID pointers that relied on having the ID set could crash, (adding a pose constraint crashed in one testcase)
now use the functions ID pointer.
2009-11-16 09:20:21 +00:00
Dalai Felinto
2e104b44c6 bge: fix for "dome mode not working with Letterboxing".
This bug was introduced after commit # 24102 (BGE: when letterbox is enabled use the camera framing as a clipping area) reported in IRC by Pete Carss (domejunky)

*) an extra stub fix for recent commit. By the way: we want to have blenderplayer running in blender 2.5 beta0. Therefore if you are doing big changes in the last minutes (Friday, Saturday??) It would help a lot if you could enable blenderplayer in your builds. links problems are really easy to fix)

**) an typo I spotted in recent mesh dynamic load in bge.
2009-11-16 02:52:02 +00:00