Commit Graph

15954 Commits

Author SHA1 Message Date
Joshua Leung
2d088f5c8b 2.5 Userprefs/Themes version patching
Brought back many missing conversions. Dunno why so many of them weren't present.
2009-02-20 06:30:47 +00:00
Matt Ebb
5330d8408d started RNA-ifying scene->render data 2009-02-20 06:05:00 +00:00
Joshua Leung
be83d8d07a 2.5 - Moved version-patch for animation related settings/theme-colours in .B.blend files to the < 250 check.
Hopefully, this solves the issues with the default keyframe interpolation mode being initialised to 'constant' on some old .B.blend files.
2009-02-20 06:04:06 +00:00
Joshua Leung
c666a790df Aha! I've finally found those elusive RNA API functions that prevented the ANIM_OT_keyingset_add_destination() operator from being able to be used. 2009-02-20 05:59:15 +00:00
Diego Borghetti
8145489a7d Add clipping text option to blenfont also add an enable/disable
function for aspect and rotation (and the new clipping).

Update source/Makefile to point to the new libed_sculpt_paint.
2009-02-20 05:42:44 +00:00
Joshua Leung
72e99d9182 KeyingSets: Added two operators which wrap the internal (blenkernel) KeyingSets API functions
These operators - ANIM_OT_keyingset_add_new() and ANIM_OT_keyingset_add_destination() - are designed for use from PyAPI or through some other means, and as such, have not been assigned any hotkeys. 
They should only be used when all the relevant settings can be supplied to them, which in ideal circumstances would be through some script used by a rigger to define all the necessary Keying Sets for their rig for example.

Whether we will be building many of the utilities for the PyAPI like this remains to be seen. 

Note: the second one doesn't work yet, as there are problems with accessing certain operator props.
2009-02-20 05:42:09 +00:00
Brecht Van Lommel
8e41a21607 2.5:
* Image painting back. 2d paint, 3d paint and projection, undo,
  pressure, repeating paint operations, etc should all work.
  Drawing cursor needs a bit of work, only gets shown when enabling
  texture paint mode now.

* Move sculpt, image paint, and vertex/weight paint into a single
  sculpt_paint module. Doesn't make much difference now, but nice
  to have it together for better integration and consistency in
  the future.
2009-02-19 23:53:40 +00:00
Ton Roosendaal
2cb5af58a6 2.5
- Mesh Rip back (Vkey). For those who keep wondering how
  it works: just put mouse cursor somewhere close to the
  selection, press V and mouse mouse away from it. Feels
  like real rip!

- Made extrude sorta work, no menu/options yet though.
  But it does transform!

- Added an short event->mval[2] with region coords, 
  easier coding for the guys :)

- Fill operator standard delivers 'beauty' now
2009-02-19 19:03:53 +00:00
Ton Roosendaal
dd78ca15c7 2.5
Made sliders behave correct in SpaceGraph and SpaceAction.
- no slider draw when all is visible
- sliders update correct when visibility changes.

Still an issue here to tackle; view2d->tot is used incorrect...
it's set on window size now (??), it should be the boundbox of 
the entire contents. That allows correct slider draws and ops
like 'view home'.
Will poke Joshua tomorrow. :)
2009-02-19 17:13:04 +00:00
Diego Borghetti
6bf9f383dc 4 new function, boundbox, width, height and rotation.
The rotation is through glRotatef and as you can see it's ugly,
the freetype2 allow apply a transformation (2x2 mat) to the glyph
before load, so I want to try using that.
Another thing to add is the 4x4 mat to get the scale and size from
there.. but I need commit this now to continue from my home.
2009-02-19 16:39:36 +00:00
Ton Roosendaal
f377be3783 2.5
Assorted smaller fixes:

- Fix: modal keymaps for editmode in view3d were not set again
  when you copy areas or go fullscreen.

- Improved "redo last op" (F6) to search back in history for
  a redoable operator. Operator also used wrong pupmenu type.

- On creating new FCurve editor, the channel rainbow colors are
  set correct.

- EditMesh: fixed code for Spin/Screw, correct props, init and
  error reporting. (Spin hotkey ALT+R temporary)

- recompiled all to check for uninitialized variable warnings.
  (compile flag should be -O for this). Fixed some proto's.
2009-02-19 16:22:07 +00:00
Ton Roosendaal
521a18f5a2 2.5
- Fix in ESC for render output window; it didn't check the 'full' and
  'prevspace' flags correct. In some cases it left the screen in 'full'
  mode on ESC.

- Added modal handler on a render, which catches the ESC while render,
  to prevent that ESC to be passed on to the image window.
  This handler can be further elaborated later to prevent edit accidents
  while render is in progress. 
  I already notice some derivedmesh/customdata free errors on render now
2009-02-19 10:21:17 +00:00
Brecht Van Lommel
b6b910f864 RNA: fix for bug in particle code, hopefully this solves the crash? 2009-02-18 21:28:04 +00:00
Ton Roosendaal
66698e9d71 2.5
Cleanup of saving code for Image window.

Little extra: added poll() check for buttons, greying out inactive
menu items or buttons. You can see it work in Image menu.
(Item 'save image' is grey when it wasn't saved, then you have to
use the 'save as' item).

Carefully designing poll checks is worth a trial once. :)
Do note that cpu time for polls should be totally minimal.
2009-02-18 18:08:33 +00:00
Ton Roosendaal
1a9e68bde5 2.5
Patch from Arystan:

- bugfix in mouse select posemode
- Lkey 'select linked' for both pose as editmode armature.
2009-02-18 14:13:06 +00:00
Ton Roosendaal
1090b0c598 2.5
Several things in one commit; could not split this up easily,
one job invoked another, and so on. :)

- Added pulldowns for save/load .blend file in top bar.

- To enable "Save" without further popups (save over) 
  I've added a signaling function in window header to
  indicate a succesful save.

- On any undo push it now signals 'file changed'. This
  goes by notifiers nicely, but now registers only the
  undopushes, which is quite unreliable. "Changed" state
  shows in header as "Blender*" and for OSX with the
  standard close button black dot.

- Made screencast show a button in top bar indicating such,
  and allowing quit. No hotkey for quit yet... but ESC will
  keep casting now.

- Fixed new BLF_init(), which should be in WM_init() and not
  on any .B.blend read.

- Fixed CTRL+F3 "Save Screenshot", which was still using old
  fileselect code.
2009-02-18 13:29:54 +00:00
Ton Roosendaal
915e989f9d 2.5
Added ghost display state hint 'modified file'.
Only supported in osx though (close button in bar gets dot).
2009-02-18 13:21:44 +00:00
Joshua Leung
c396a4ec15 Shift-A adds Armature Object (in Object Mode) or Bone (in Edit Mode) again. Still todo, is to have Shift-A in Object Mode add single-bone armature again. 2009-02-18 09:28:04 +00:00
Joshua Leung
3f72758da2 Bugfix for Record Transform Animation
Only selected objects are now keyframed.
2009-02-18 06:25:57 +00:00
Matt Ebb
d38babbee9 * More icon naming updates 2009-02-18 06:03:14 +00:00
Matt Ebb
f5de61816b * Cleaned up naming of icon ID constants. This helps fix bad icons in the graph editor among others. 2009-02-18 05:54:37 +00:00
Matt Ebb
ba59754a1d * More icon updates 2009-02-18 04:36:07 +00:00
Shaul Kedem
d00b18c718 working yet preliminary (like everything) screw mesh. in irc there was a discussion about setting the screw axis outside of the function, but someone else should do that. 2009-02-18 03:01:45 +00:00
Michael Fox
bf5e267c97 2.5
*****
added add_primitive_bone, removed operator from previous commit as it was not needed
2009-02-18 02:13:36 +00:00
Michael Fox
4a2155e3ab 2.5
******
added a ARMATURE_OT_bone_add operator, ita generic operator to add a bone it behaves the same way as the old add bone (making a bone not set the tail but have it selected), commiting this so other add bone ops like add bonre pinative or making new armature
2009-02-18 01:50:26 +00:00
Brecht Van Lommel
94e583b476 RNA:
* Added Particle wrapping patch by Roelf de Kock. It's not
  complete yet and I haven't reviewed it, but committing anyway,
  will get to it later.
* Added "Percentage" subtype for floats. Doesn't really do
  much besides making auto rna buttons into sliders rather than
  numeric inputs, but can later display in % rather than 0.0-1.0.
2009-02-17 21:07:01 +00:00
Brecht Van Lommel
ec8c8f08ba 2.5: Image space, two fixes:
* With one item in ID databrowse list, you couldn't activate it.
* Render result without render image now displays grid at size
  according to render settings again.
2009-02-17 20:37:23 +00:00
Brecht Van Lommel
573e14c592 2.5: CMake update for blenfont module, also some flags for scons
to make it compatible with makefiles and ftfont module.
2009-02-17 20:16:09 +00:00
Diego Borghetti
473d00943b And another scons fix, hope now work!! 2009-02-17 19:57:05 +00:00
Brecht Van Lommel
38410b63a6 2.5: Text edit mode operators back. Took me a while getting
them nicely repeatable, and splitting up the big edit_text
operator into individual operator so it's all nicely scriptable,
documented, configurable, etc..

* Insert Text, Line Break, Insert Lorem
* Toggle Case, Set Case, Toggle Style, Set Style, Set Material
* Copy Text, Cut Text, Paste Text, Paste File, Paste Buffer
* Move, Move Select, Delete
* Change Spacing, Change Character

Notes

* Text (datablock) to Object doesn't work yet, will need to
  implement text editor context for that.
* Some shortcut keys don't work because screen/wm overrides them,
  ctrl+x, ctrl+left/right. That override goes top down which works
  well for some cases, but here we need to override in the other
  direction.
* There's no unicode support in RNA, or the user interface code
  for that matter, but text strings can contain these characters.
  At the moment it stores a UTF-8 string in char arrays, which is
  supposed to be nicely compatible with ascii. Seems reasonable to
  add support for UTF-8 in the interface code, python bindings, ..
  eventually?
2009-02-17 19:55:20 +00:00
Brecht Van Lommel
8c8792bb12 2.5: fix to make blenfont module compile with scons. 2009-02-17 19:37:47 +00:00
Diego Borghetti
bd33237830 Fix scons build for blenfont, patch by skejoe. 2009-02-17 19:09:14 +00:00
Diego Borghetti
16a61743e1 Making the things compiled!!
I change the #if 0 with #if WITH_FREETYPE2, also fix a lot of typos, etc.
This is the basic but now it draw text!!, I am using the "User Preference"
space to test the library, nobody is working on that and the option are
in the outliner now so...

TODO-next: using the 4x4 mat, string size, bounding box, aspect and rotate.

Notes: I update the Makefile, missing some include and other things so
maybe scons, cmake and msvc also need update ?
2009-02-17 16:56:29 +00:00
Ton Roosendaal
9aa7e981bd 2.5
Bug: cleanup in space_file copy I did missed a NULL check :)
2009-02-17 16:33:08 +00:00
Ton Roosendaal
9322bddf2c 2.5
Fix for the 'repeat last operator' option. It didn't work yet well
outside editmode. Now undo/redo has to fully keep the UI alive,
even when called from within a running popup.

Another fix: when regions collapse/hide they were not effectively
disabled, still accepting events. (like Nkey in 3d window).
2009-02-17 15:53:52 +00:00
Ton Roosendaal
9185f7931a 2.5
Bugfix: passing on uninitialized var to a function made msvc halt.
Strange that gcc didnt complain :)

Brecht: check if this 'a' was needed as counter or so?
2009-02-17 14:56:07 +00:00
Ton Roosendaal
7a66002753 2.5
Node/Composite tinkering:

- titles in headers and on collapsed nodes back
- backdrop option draws again (no scroll operator yet)
- added preview option in blur, filter and mix nodes. 
  Just for fun while working :) Probably every node
  should get this...
2009-02-17 13:37:06 +00:00
Ton Roosendaal
8020515ab2 2.5
Small fixes for filewindow;
- on resize area/window, the load button disappeared. 
- made scrollers indicate what direction works
- mousewheel scroll switches to horizontal automatically now

(assuming we keep filelists horiz, previews vertical scrolled)

View2d got hacked a bit by me for it; i guess for some cases
the scroll value should become customizable. Will come back
later!
2009-02-17 13:11:09 +00:00
Joshua Leung
ba3cacc33f Visual Keyframing - Restored code to make this work, but it may still be flaky
NOTE: upon further testing, quick-record-animation feature does not work with auto-ik yet. Although it would be desireable to have, it is not a priority at this point, since adding that would require a bit of reworking of that code for something it wasn't intended for.
2009-02-17 10:58:40 +00:00
Joshua Leung
6eae888d49 PoseChannel Transforms - AutoIK Restored
- Auto-IK works again now. 

- Quick-animate feature works with Auto-IK now. 
- Also disabled the checks for existing animation data for this, making it easier to use/discover. At least we've got undo to cover for the cases where the user didn't intend to do this.
2009-02-17 09:34:21 +00:00
Joshua Leung
e81fde5aa4 Record Transform Animation - Quicky feature which makes it super-easy to animate stuff quickly
To use, simply enable Auto-Keyframing and start the animation playback from the TimeLine.
Then at any time while the playback is still running (and Auto-Keyframing is still enabled), select any object/bone and start moving it around. 
You can also select other objects/bones and move them around using standard transform tools (grab/rotate/scale), or exit transform for the active/selected object(s), and move on to other objects instead. Repeat until satisfactory!

This is similar to the old 'Record IPO' functionality (and/or is closer to the 'Mouse Recording' in 3DSMax), except it's much cooler, and is more flexible at the same time. It's
"good for quick and dirty tests, or things with timing, where it's easier to do it real time" - William Reynish, or "handycam effect or eyes animation" - Pepeland.


Additional Notes:
- for now, the objects that are used for this currently need some animation data already. This limitation is temporary.
- eventually, 'samples' (i.e. baked-data) not keyframes will be made by this tool as samples are more suitable for such large sets of densely spaced points
2009-02-17 08:55:50 +00:00
Shaul Kedem
312c822945 spin mesh is alt Rkey - ton, please check and advise regarding screw_mesh and defaults. F3 fails while pressed continuously 2009-02-16 20:04:01 +00:00
Ton Roosendaal
2415040b9f 2.5
Patch from Arystan Dyussenov (A624), two operators for armatures;

- select hierarchy up/down, using bracket [ ] with or without
  shift, and for editmode and posemode.

Good work, thanks!
2009-02-16 17:18:24 +00:00
Campbell Barton
46417e1362 WIP, low level python UI functions, so far tested popup menu to work with bpyui.pupMenuBegin, menuItemO and pupMenuEnd functions.
And a popup block with python callback with bpyui.pupBlock, beginBlock, popupBoundsBlock and endBlock funcions.

These functions should not be accessed by scripters directly.
2009-02-16 16:17:20 +00:00
Ton Roosendaal
3b6218405b 2.5
Some small fixes:

- handler operator exec gave too quick a warning for invalid area
  (set area context to NULL is OK :)
- 4-split 3D view with clip option didn't reset clip when 4-split
  was disabled
- creating a new 3d view didn't initialize buttons region correct.
2009-02-16 15:08:06 +00:00
Ton Roosendaal
27d52217ca 2.5
Cleanup of wm_event_types.h, removed all old "allqueue" defines.
2009-02-16 14:28:33 +00:00
Ton Roosendaal
4154e48c05 2.5
Proper integration of File-selecting in WM. The communication
flow was flawed. :) Main problem was that filewindow can change
the screen context entirely, and should not do this directly on
a call inside an operator. Another problem was that the operator
ownership was handed over to SpaceFile, which is asking for 
problems if you want to execute the operator with proper context
later on.

Solution is simple; window handlers already are valid owners of
operators and can manage context, so instead of directly talking
to the 'file space', you give the operator to a new handler this
way:

    WM_event_add_fileselect(C, op);

This handler then listens to events (OPEN, EXEC, CANCEL) sent
by the WM or by the filewindow itself. This way local context
operators (like "open new image in imagewindow") will survive
a full-window fileselector fine, and in future also secondary
windows browsing files.

Two bugfixes included in this commit too:
- Add sequence menus in Sequencer used wrong context.
- When handler executes operators, it sets stored context now
  by first checking if this is still valid.
2009-02-16 12:14:04 +00:00
Joshua Leung
f6df8e1860 F-Curve names: Experimental style 2
In this commit, I've experimented with the way in which F-Curve names (seen in DopeSheet/Graph Editor) are put together. 

Now, F-Curve names are assembled in the form:
<array-index> <property-name> (<struct-name>)
i.e.  "X Location (Bone)", "Y Location (Object)"
"Specularity (VeryLongMaterialName)", etc.  

The goal of this experiment was to hopefully make it quicker to do a left-margin scan and identify the defining differences between closely related F-Curves. 
- This has the benefit of no (potential) need for horizontal scrolling back and forth to see and compare the end portions of names, and also to avoid the important parts of the name getting pushed out of the standard viewable area by some owner-struct long names. 
- The downside is the loss of the clear hierarchial layout closely related to the RNA-paths used internally, that was provided by the old method. Also, this method also looks rather awkward on first glance, but if it improves efficiency of use, why not :)
2009-02-16 09:48:38 +00:00
Joshua Leung
5452c4e146 Tweaked tooltips drawing - the previous correction I applied here for the width was too excessive. That was based on some bug which seems to have disappeared now. 2009-02-16 09:03:32 +00:00
Joshua Leung
7f4fa8971a 2.5: Restoring Auto-Keyframing for Transforms
Auto-Keyframing does not work anywhere else yet, and probably won't for a while.
2009-02-16 03:01:56 +00:00