12 years ago2.5
Ton Roosendaal [Sat, 31 Jan 2009 15:09:33 +0000 (15:09 +0000)]

Crash fix on file read: one event-free too many :)

12 years ago2.5
Ton Roosendaal [Sat, 31 Jan 2009 13:33:23 +0000 (13:33 +0000)]

Fake commit, but for history I have to write the log!

Fixed CTRL+Q quit-blender. It was using ancient code
still, and since I always use APPLE+Q I never noticed :)

12 years ago2.5
Ton Roosendaal [Sat, 31 Jan 2009 13:30:56 +0000 (13:30 +0000)]

Edit Mesh:

- Added back "Edge Shortest Path select"
  It now also does regular selection, more fun!
  It's mapped to CTRL+click now, and makes or clears selections
  between current and previously activated edge.
  Seam/Sharp/etc marking is a toolsetting mode still. These
  options cannot become properties easily, because the tool
  uses the properties of selected edge to clear...

- Removed a whole bunch of G.f flags, related to mesh drawing.
  It's all now local in me->drawflags. Here's the list of
  removed old globals:





12 years ago2.5
Ton Roosendaal [Sat, 31 Jan 2009 10:00:08 +0000 (10:00 +0000)]

- Made standard border operator calls bail out on zero sized borders
- Fixed compile warning in call to BKE_animsys_evaluate_animdata()

12 years ago- sequencer select handle menu functions back
Campbell Barton [Sat, 31 Jan 2009 09:58:38 +0000 (09:58 +0000)]
- sequencer select handle menu functions back
- sequencer border zoom (Shift+B) or from the header.
- added includes for blender.c and outliner.c
- editfont.c got rid of warning

12 years ago2.5
Ton Roosendaal [Sat, 31 Jan 2009 09:23:17 +0000 (09:23 +0000)]

Edit mesh:
- fixed compile, shul only committed the function declaration, not
  the code for 'make fgon'.

- Put the Fgon option under:
  ALT+F: make fgon
  SHIFT+ALT+F: clear fgon
  (note, SHIFT+F = fill :)

- Fixed loop select to use two booleans, as Martin pointed me
  correctly at! Using 1 variable was lazy coding.

12 years agomake and clear fgon MKEY and shift+MKEY. ton: please check, it doesn't do what it...
Shaul Kedem [Sat, 31 Jan 2009 03:23:41 +0000 (03:23 +0000)]
make and clear fgon MKEY and shift+MKEY. ton: please check, it doesn't do what it should right now

12 years agodelete menu is back with XKEY.
Shaul Kedem [Sat, 31 Jan 2009 02:37:50 +0000 (02:37 +0000)]
delete menu is back with XKEY.

12 years agodelete menu is back DKEY. seperating may be needed to delete_mesh
Shaul Kedem [Sat, 31 Jan 2009 02:31:58 +0000 (02:31 +0000)]
delete menu is back DKEY. seperating may be needed to delete_mesh

12 years agoSculpt:
Nicholas Bishop [Fri, 30 Jan 2009 20:35:37 +0000 (20:35 +0000)]
* Brought back axis locking
* Fixed flipping stroke add/sub with shift key at start of stroke
* Fixed a crash in stroke exec

12 years ago2.5
Ton Roosendaal [Fri, 30 Jan 2009 19:14:50 +0000 (19:14 +0000)]

Edit Mesh: Fkey back, add edge-face or fill 'edge net'
Make fgon will be different operator.

12 years ago2.5
Ton Roosendaal [Fri, 30 Jan 2009 18:53:54 +0000 (18:53 +0000)]

Edit Mesh Loop select back;
the versions with ALT+Select (edgeloop) or with
ALT+CTRL+Select ('ring'). Hold shift for extend.

12 years agoUpdate the view3d depth buffer cache after rotating, moving, or scaling the view...
Nicholas Bishop [Fri, 30 Jan 2009 18:27:25 +0000 (18:27 +0000)]
Update the view3d depth buffer cache after rotating, moving, or scaling the view (for sculptmode)

12 years ago2.5
Ton Roosendaal [Fri, 30 Jan 2009 18:18:41 +0000 (18:18 +0000)]

- Edit mesh: Add ctrl+click add vertex or extrude.
  I've made it not move the 3d cursor in that case.

Also found out tweak events conflicted with existing
keymap definitions; on tweak failure (= no mousemove)
it now passes on the mouse event as 'mouse down' for
the remaining keymaps to check.
These then actually respond to mouse-up instead of down...

The location in the keymaps where tweaks get generated
remains important. Examples:

1 - 'select' mouse-handler, operator return pass-through
2 - tweak handler checks, and makes tweak event
3 - grabber responds to tweak event

1 - ctrl+mouse tweak handler checks, makes tweak event,
    or passes event on
2 - if tweak event, it runs lasso
3 - else when passed on, ctrl+click extrude happens

In the first case, select works on mouse-down, immediate.
In the second case, extrude happens on mouse-release, even
though the keymap defined mouse-press.

This will make designing nice balanced keymaps still not
simple; especially because you can't tell operators to
pass on the key... although we can add the convention that
select-mouse operators always pass on to enable tweaks.

Still a good reason to wait with custom keymaps
when this is fully settled!

12 years ago2.5: Fix for windows editmode tab crashes. This was due to
Brecht Van Lommel [Fri, 30 Jan 2009 16:45:25 +0000 (16:45 +0000)]
2.5: Fix for windows editmode tab crashes. This was due to
use of function pointers in the context callbacks. Apparently
MSVC decides that some of these functions are the same and
makes them into a single function with the same address. I
couldn't figure out if this was a compiler bug or according
to the C spec. Regardless, that means this method can't be
used, so now it uses separate CTX_DATA_DEFINES.

12 years ago2.5
Ton Roosendaal [Fri, 30 Jan 2009 15:01:14 +0000 (15:01 +0000)]

Edit mesh: Separate options back. Use SHIFT+P for it, PKEY has been
stolen! :)

12 years ago2.5
Ton Roosendaal [Fri, 30 Jan 2009 14:23:31 +0000 (14:23 +0000)]

Animsys: added integrated copy of animdata in copy_libblock().
-> by default animdata-copy should relink ID data like Action,
   and put a facility to really duplicate it in other code.
   (single_user_animdata or so)

12 years ago2.5: Added simple toolbox menu in image window as a test,
Brecht Van Lommel [Fri, 30 Jan 2009 12:58:00 +0000 (12:58 +0000)]
2.5: Added simple toolbox menu in image window as a test,
can uses same menus as header now since code doesn't depend
on being in the header anymore.

12 years ago2.5: UI & Menus
Brecht Van Lommel [Fri, 30 Jan 2009 12:18:08 +0000 (12:18 +0000)]
2.5: UI & Menus

* Cleaned up UI_interface.h a bit, and added some comments to
  organize things a bit and indicate what should be used when.

* uiMenu* functions can now be used to create menus for headers
  too, this is done with a uiDefMenuBut, which takes a pointer
  to a uiMenuCreateFunc, that will then call uiMenu* functions.

* Renamed uiMenuBegin/End to uiPupMenuBegin/End, as these are
  specific to making popup menus. Will convert the other
  conformation popup menu functions to use this too so we can
  remove some code.

* Extended uiMenu functions, now there is is also:
  BooleanO, FloatO, BooleanR, EnumR, LevelEnumR, Separator.

* Converted image window headers to use uiMenu functions, simplifies
  menu code further here. Did not remove the uiDefMenu functions as
  they are used in sequencer/view3d in some places now (will fix).

* Also tried to simplify and fix bounds computation a bit better
  for popup menus. It tried to find out in advance what the size
  of the menu was but this is difficult with keymap strings in
  there, now uiPopupBoundsBlock can figure this out afterwards and
  ensure the popup is within the window bounds. Will convert some
  other functions to use this too.

12 years agoOutliner: Updated the tree-building code to work for Animato
Joshua Leung [Fri, 30 Jan 2009 10:08:58 +0000 (10:08 +0000)]
Outliner: Updated the tree-building code to work for Animato

* Note to Icon Designers - we need a new icon for 'Animation data' I think. Currently I'm using the old IPO icon...
* Should F-Curves get shown in the Outliner?

12 years agoAnimato:
Joshua Leung [Fri, 30 Jan 2009 08:10:31 +0000 (08:10 +0000)]

* Drivers view in Graph Editor now displays drivers only, instead of displaying normal Animation data.

* 'Materials' channel is now only shown under an Object when there are Materials with animation data...

* Hid more debug prints behind debug flag. These should be removed...

12 years agoAnimato: Hiding all debug prints behind -d flag, as they were causing too many slowdo...
Joshua Leung [Thu, 29 Jan 2009 23:27:24 +0000 (23:27 +0000)]
Animato: Hiding all debug prints behind -d flag, as they were causing too many slowdowns on complex rigs with Action Constraints. Many of these prints should eventually be removed, though some of them will still be useful.

12 years agoJust a minor change to a comment in constraints code. It appears that Action Constrai...
Joshua Leung [Thu, 29 Jan 2009 22:24:16 +0000 (22:24 +0000)]
Just a minor change to a comment in constraints code. It appears that Action Constraints are in fact working now (I was probably testing old code last night).

12 years ago'scons blenderlite' failed because blf expected freetype
Campbell Barton [Thu, 29 Jan 2009 21:41:43 +0000 (21:41 +0000)]
'scons blenderlite' failed because blf expected freetype

12 years ago2.5
Ton Roosendaal [Thu, 29 Jan 2009 18:54:22 +0000 (18:54 +0000)]

- Made WM_cursor_wait() work without context or pointers,
  like old waitcursor(). Only use when operations entirely
  block UI. It will set waitcursor for all open windows.

- Cleanup in mesh tools, removing old cruft, and prepare
  for more goodies for shul to work on!

12 years agoAnimato: Groundwork for getting Action Constraint functional again
Joshua Leung [Thu, 29 Jan 2009 11:22:34 +0000 (11:22 +0000)]
Animato: Groundwork for getting Action Constraint functional again

Currently this still works really badly, but I'm not sure of the exact cause yet.

12 years agoinclude Py_CmpToRich for python versions lower then 3
Campbell Barton [Thu, 29 Jan 2009 10:22:03 +0000 (10:22 +0000)]
include Py_CmpToRich for python versions lower then 3

12 years agoSilencing MSVC warnings in code that I maintain
Joshua Leung [Thu, 29 Jan 2009 10:19:43 +0000 (10:19 +0000)]
Silencing MSVC warnings in code that I maintain

12 years agoscons compiling fixes for new blenfont module
Joshua Leung [Thu, 29 Jan 2009 09:57:28 +0000 (09:57 +0000)]
scons compiling fixes for new blenfont module

12 years agoAnimato: Added base-code for converting the ugly old bitflag settings
Joshua Leung [Thu, 29 Jan 2009 09:40:49 +0000 (09:40 +0000)]
Animato: Added base-code for converting the ugly old bitflag settings

Only object layers have been done for now. The implementation of this should provide a good indicator for how this should be done. Unforunately, the code for animating layer visibility is not that straightforward, since scene->base->layer (not set) settings need to be synchronised with the object->layer (set by Animato) settings.

12 years agopython3 couldn't generate epydocs because python3 needs richcompare functions for...
Campbell Barton [Thu, 29 Jan 2009 09:38:52 +0000 (09:38 +0000)]
python3 couldn't generate epydocs because python3 needs richcompare functions for C defined PyTypes (it seems).

12 years agoAdded CMake files needed for new blenfont module.
Nicholas Bishop [Thu, 29 Jan 2009 06:35:04 +0000 (06:35 +0000)]
Added CMake files needed for new blenfont module.

Note to bdiego: this module seems to depend on ftfont, which is only compiled with the INTERNATIONAL build setting, however it seems blenfont should work regardless of that setting.

12 years agoMoving Language code from interface/text.c to blenfont library.
Diego Borghetti [Thu, 29 Jan 2009 05:19:27 +0000 (05:19 +0000)]
Moving Language code from interface/text.c to blenfont library.

I go to start commit the new code here and then replace one
by one bmfont and ftfont, this do nothing right now, but it's
more easy keep the files here to work from the studio and my home.

I only update the Makefile and SConscript (but JesterKing a double
check never is bad), so please check the msvc and cmake files.

The new library is libblenfont.a

12 years ago* Brought back special normal recalc for sculpt (only recalculates modified faces...
Nicholas Bishop [Thu, 29 Jan 2009 03:50:46 +0000 (03:50 +0000)]
* Brought back special normal recalc for sculpt (only recalculates modified faces/verts)
* Means that full object recalc isn't done, so multires works more as expected now
* Moved mesh element cache back to sculpt session (from sculpt cache), really makes more sense there

12 years agoAnimato: Conversion code + drawing tweaks
Joshua Leung [Thu, 29 Jan 2009 03:43:04 +0000 (03:43 +0000)]
Animato: Conversion code + drawing tweaks

* Recoded the conversion code so that all data gets converted. Previously, some IPO's and Actions (notably the ones used for Action Constraints) were not ported across.

* Made F-Curve drawing use more saturated colours to make them more visible. I'm not sure whether this works well in practice.

* Restored some horizontal bounding-box checks to optimise drawing.

12 years ago2.5:
Brecht Van Lommel [Wed, 28 Jan 2009 23:29:27 +0000 (23:29 +0000)]
* Automatic shortcut keys in menus now compare operator properties as well.
  Implemented IDP_EqualsProperties for this.
* I imagine all these compares may be a bit slow, for this case it's not
  so bad though because it only happens for one menu when it is opened.

12 years agoAnimation Editors: Tweaking/Refresh Issues
Joshua Leung [Wed, 28 Jan 2009 22:51:42 +0000 (22:51 +0000)]
Animation Editors: Tweaking/Refresh Issues

* Added 'select-tweak' functionality to DopeSheet
* Added proper notifiers for Graph Editor updates

12 years ago* Was missing checks for scene->ed which crashed blender when using the sequencer...
Campbell Barton [Wed, 28 Jan 2009 22:36:34 +0000 (22:36 +0000)]
* Was missing checks for scene->ed which crashed blender when using the sequencer for the first time.
* Added WM_OT_tweak_gesture operator for select, drag
* Sequencer select operator now returns OPERATOR_FINISHED|OPERATOR_PASS_THROUGH

12 years ago2.5:
Brecht Van Lommel [Wed, 28 Jan 2009 21:43:43 +0000 (21:43 +0000)]
* UV Editor Transform, translate, rotate, scale, live unwrap, snap, gesture,
  etc work.
* Also for selection operators, used OPERATOR_FINISHED|OPERATOR_PASS_THROUGH
  instead of just OPERATOR_PASS_THROUGH to make gestures work, seems more
  correct to me.

12 years ago2.5:
Brecht Van Lommel [Wed, 28 Jan 2009 19:42:49 +0000 (19:42 +0000)]

* Fix using enter key for selecting item in a submenu.
* Fix some non working buttons in nodes.
* Fix memory leak when using glsl.
* Change triple buffer proxy test a bit, hopefully this succeeds
  on more cards now.

12 years ago2.5
Ton Roosendaal [Wed, 28 Jan 2009 18:26:47 +0000 (18:26 +0000)]

Some drawing tweaks for animsys:

- added notifier ND_KEYS type, to send proper notes around.
  now insert-key redraws fcurve/action view
- made slider-draggers disappear when view is total or bigger.

Also experimented with making sliders go away entirely, but
this conflicts too much with current code for channel lists.

Ali: I think you have to make call that calculates the 'tot'
for channels, and run this in region listener, including the
totRect update for view2d.

The 'minsize' for channels also fails when there's a slider,
it always doesn't fit then :)

12 years ago2.5 MSVC9 projectfiles
Andrea Weikert [Wed, 28 Jan 2009 18:02:15 +0000 (18:02 +0000)]
2.5 MSVC9 projectfiles
* windowmanager/wm_draw.c
* editors/space_ipo: ipo_draw.c, ipo_edit.c and ipo_ops.c

12 years ago2.5
Ton Roosendaal [Wed, 28 Jan 2009 15:39:39 +0000 (15:39 +0000)]

Made 'select-tweak-grab' work in 3d window, fcurve and nodes.
For nodes it works with both left/right, the others follow
user preset for select.

Tweak is a WM event, which also follows user preset for
tablet-style tweaks (release = apply).

You enable tweak events with an operator WM_OT_tweak_gesture.
Keymap entries can assign to left/middle/right button or to
action/select button tweaks.

12 years ago2.5
Ton Roosendaal [Wed, 28 Jan 2009 13:16:43 +0000 (13:16 +0000)]

Joshua asked me to check depsgraph drivers; i've added the
very minimal case, but further I'm stuck, need help.
Also made region listeners for Graph Editor work for all.

12 years ago2.5
Ton Roosendaal [Wed, 28 Jan 2009 12:28:50 +0000 (12:28 +0000)]

Bugfix in last commit: the read-file hotkey (enter) has to be in
the window handler queue, so it nicely exits all queues without
using free'd data.

12 years ago2.5
Ton Roosendaal [Wed, 28 Jan 2009 11:27:25 +0000 (11:27 +0000)]

Filewindow: restored some usability issues :)
(Andrea: Hope you're OK, I needed to test stuff, and
file open was a pain!)

- F1: shows last saved/opened file now
- Enter key loads, ESC cancels
- Hilites on mousemove now show same theme colors as before
- Enabled intended roundbox draw (was added to UI api)
- Tweaked roundbox hilites to nicely surround text
- Text was drawing too close to collumn dividers
- Brought back missing glDisable(GL_BLEND), messed with draw
- On file-open, mouse position is used to show active file

12 years agoGraph Editor: Restoring most tools
Joshua Leung [Wed, 28 Jan 2009 09:55:36 +0000 (09:55 +0000)]
Graph Editor: Restoring most tools

* Copy/Paste still needs to be cleaned up to be functional. Auto-set preview range + View All also need some work to become functional...
* Smooth has been moved to Alt-O hotkey, as Shift-O was taken for Sample
* Renamed a few operators for DopeSheet to be more in line with Graph Editor ones, and to be less obscure.
* The 'join' and 'remove doubles' tools are not likely to be restored. I think that a few of the new tools cover this lack anyway. We can restore them if there is a real need.

* Record tool needs a rethink to be genuinely useful, so it's not included here anymore.
A note for anyone wanting to play with implementing this: store the sampled points using the new FPoint type in the FCurve instead of using BezTriples, as FPoints are used for storing sampled/baked data.

12 years agouse wine for cross compiling
Campbell Barton [Wed, 28 Jan 2009 09:32:31 +0000 (09:32 +0000)]
use wine for cross compiling

12 years agoGraph Editor: Bringing back editing tools
Joshua Leung [Wed, 28 Jan 2009 06:32:47 +0000 (06:32 +0000)]
Graph Editor: Bringing back editing tools

* Snap + Mirror Keyframes (Shift-S and Shift-M)
* Set Handle/Interpolation type
* Snap current frame to selected keyframes (Ctrl-Shift-S) from the DopeSheet

* Toggle visibility of all handles (Ctrl H) from AnimSys2 branch also ported

12 years agoGraph Editor:
Joshua Leung [Wed, 28 Jan 2009 03:22:37 +0000 (03:22 +0000)]
Graph Editor:

Added some more buttons and a few menu entries in the View menu that simplify the viewport.

12 years agoGraph Editor - Restored all Transform tools
Joshua Leung [Wed, 28 Jan 2009 02:56:58 +0000 (02:56 +0000)]
Graph Editor - Restored all Transform tools

I've ported the transform tools for this editor as they existed in the AnimSys2 branch (minus some of the experimental pivot options which were not useful enough yet).

Hotkeys are:
* GKEY - transforms points as always
* RKEY - rotates points (only useful for a single 'knot')
* SKEY - scales points
* EKEY - like in the DopeSheet, the 'extend' translation tool only moves all the keyframes on the same side of the current frame indicator as the mouse

Useful tweaks ported from AnimSys2 include:
* Auto-snapping is on by default for time-values on the keyframes only. Handles are not snapped (or shouldn't be).
* Rotating/Scaling new keyframes using default handles (i.e. Auto-Handles) now works, as the handle is now converted to aligned so that changes can be seen.

12 years agoAnimato - Driver + ShapeKey bugfixes
Joshua Leung [Wed, 28 Jan 2009 00:50:56 +0000 (00:50 +0000)]
Animato - Driver + ShapeKey bugfixes

* ShapeKey conversions should now go to the correct places
* Added fix for drivers to prevent crashes when no driver object is provided (Franky from BBB seems to have one such driver for some reason).
* Temporarily disabled a check when evaluating drivers for whether the driver is tagged for evaluation. Drivers still need to be correctly tagged AND ordered by the Depsgraph to work correctly.

12 years ago2.5
Ton Roosendaal [Tue, 27 Jan 2009 19:32:44 +0000 (19:32 +0000)]

Added support in threaded compositor to copy the viewer
image safely away, prevents crashing especially for
people using blender -E or redrawing viewer while it

(Note; reloading images in nodes, render result, and
probably other cases have to be checked still)

12 years agoWas missing TRUE so I included extra header that had it,
Kent Mein [Tue, 27 Jan 2009 18:36:58 +0000 (18:36 +0000)]
Was missing TRUE so I included extra header that had it,
also fixed a call that had wrong number of args.


12 years ago2.5
Ton Roosendaal [Tue, 27 Jan 2009 18:10:14 +0000 (18:10 +0000)]

Bugfix; preventing crash on dividing by zero int.

12 years ago2.5
Ton Roosendaal [Tue, 27 Jan 2009 17:54:49 +0000 (17:54 +0000)]

Crash in node editor, when you start a new composite.
Was missing check for scene pointer

12 years ago2.5
Ton Roosendaal [Tue, 27 Jan 2009 17:12:40 +0000 (17:12 +0000)]

Compositor now uses threaded jobs.

- updates happen per preview node! Check this file for
  (any compo node could get preview!)
- had to ensure the composite data gets fully copied before
  it executes thread, so editing is not frustrated.
- put back node buttons (missing init)
- added WM_jobs api call to check for running job,
  illustrated with red light icon in 'use nodes' button.
- added another callback to WM_jobs, to initialize.
  use this init to ensure you only do it when job really
- added an extra notifier option for WM_jobs, to signal
  finished job (like redraw image view)
- fixed file read error, it copied the screen it read,
  instead of using it.
- commented out annoying prints for missing ops in imagewin

12 years ago2.5
Ton Roosendaal [Tue, 27 Jan 2009 12:49:44 +0000 (12:49 +0000)]

Make space_ipo compile for make

12 years agoAnimato - Bugfixes + More conversion code
Joshua Leung [Tue, 27 Jan 2009 11:31:30 +0000 (11:31 +0000)]
Animato - Bugfixes + More conversion code

* BorderSelect in Graph Editor now works. Was a silly 1 char missing typo.
* Added conversion code for lamps and hooked up code for constraints.

12 years agoQuick fix - Alt-B in Graph Editor works again... normal BKEY still doesn't though
Joshua Leung [Tue, 27 Jan 2009 11:14:02 +0000 (11:14 +0000)]
Quick fix - Alt-B in Graph Editor works again... normal BKEY still doesn't though

12 years agoGraph Editor:
Joshua Leung [Tue, 27 Jan 2009 11:09:30 +0000 (11:09 +0000)]
Graph Editor:

* Cleaned up code for borderselect with BKEY. There's still a bug here where y-values don't seem to be getting properly checked, so nothing seems to happen.

* Set up some code for transforming keyframes. It currently uses the wrong code though (i.e. it uses the code for Action Editor which is 1D not 2D, and doesn't have some of the special checks needed). More work on this later.

12 years ago2.5
Ton Roosendaal [Tue, 27 Jan 2009 08:36:09 +0000 (08:36 +0000)]

Fix: icons didnt show for uiMenu api.

12 years agoGraph Editor - Selection Tools
Joshua Leung [Tue, 27 Jan 2009 05:04:23 +0000 (05:04 +0000)]
Graph Editor - Selection Tools

* Mouse-Select and DeSelect All work again
* Added access to constraint 'influence' value

12 years ago* Struct-ified user preferences RNA
Matt Ebb [Tue, 27 Jan 2009 04:37:12 +0000 (04:37 +0000)]
* Struct-ified user preferences RNA

12 years ago2.5 - Bugfixes for loading ManCandy
Joshua Leung [Tue, 27 Jan 2009 02:31:39 +0000 (02:31 +0000)]
2.5 - Bugfixes for loading ManCandy

* Objects parented to bones now load correctly again (so Mancandy no longer looks like he had a run-in with a lawn mulcher). Was caused by a typo. I'm not sure how that got in there (or who did it)

* Action/Graph Editors would crash when loading files with Materials with some drivers.

12 years ago 2.5
Michael Fox [Mon, 26 Jan 2009 23:58:56 +0000 (23:58 +0000)]
small commit just porting the makeparent menu to use the new menu contsruction system

12 years agoGraph Editor: Added files + Bugfixes
Joshua Leung [Mon, 26 Jan 2009 23:18:27 +0000 (23:18 +0000)]
Graph Editor: Added files + Bugfixes

* Copied files containing code for tools from Action Editor to use as a base for the Graph Editor's tools. The toolsets are now very similar, so it should just be a case of making a few tweaks here and there. Currently all of these tools are #if-def'd out, as there are still a few things to clean up.

* Tweaked some UI stuff (width of mode selector in header, names in the spacetype choosing menu)

* Fixed a few bugs which were causing crashes when loading old files with IPO Editors open.

12 years agoAdded some code in sculpt and RNA for textures with type none. Hopefully fixes the...
Nicholas Bishop [Mon, 26 Jan 2009 21:32:22 +0000 (21:32 +0000)]
Added some code in sculpt and RNA for textures with type none. Hopefully fixes the problem with sculpt not working in 2.5.

12 years ago2.5
Ton Roosendaal [Mon, 26 Jan 2009 15:23:29 +0000 (15:23 +0000)]

Added add-primitive for Curve objects.
Shift+A, works as usual in our outside editmode.

12 years ago2.5
Ton Roosendaal [Mon, 26 Jan 2009 15:22:10 +0000 (15:22 +0000)]

Bugfix: having multiple windows didnt read events anymore for other
windows. Caused by too much security escapes in event handlers.

12 years agoAnimato/2.5 - Graph Editor (i.e. the new 'IPO Editor')
Joshua Leung [Mon, 26 Jan 2009 11:33:16 +0000 (11:33 +0000)]
Animato/2.5 - Graph Editor (i.e. the new 'IPO Editor')

This commit brings back the drawing code for the 'Graph Editor'. I've decided to call it this, as currently it can show either F-Curves for Animation stored in Actions, or F-Curves for Drivers.

Currently, it shows all curves, since some of the necessary filtering code (i.e. for limiting curve visibility) hasn't been put in place yet. At least this serves as good proof that we can have F-Curves from multiple sources at least.

It should be noted that the code still has to be modified to work with some of the new Animato features, such as F-Curve Modifiers (cycles are an example of one of the features that use this). Also, a nicer way to set the colours of the curves needs to be investigated.

* Fixed a few bugs in RNA User-Preferences wrapping

* The keyframe drawing uses the new-style drawing for handles from AnimSys2. There's a minor bug that sometimes occurs, where a distorted handle gets drawn at the origin of the grid on the first run. Hints anyone?

* Removed most of the old data from SpaceIpo struct, as the new code uses that. Maybe later, the directories/files at least should get renamed.

* Removed ancient hack for NVidia/TNT drivers. It is probably no longer needed, but could be restored if someone needs it.

12 years ago* Added WM_operator_filesel which can be used for an operators invoke function (like...
Campbell Barton [Mon, 26 Jan 2009 09:13:15 +0000 (09:13 +0000)]
* Added WM_operator_filesel which can be used for an operators invoke function (like WM_operator_confirm).
It opens the files selector if "filename" property has not been set, else it executes the operator directly. Brecht, you might want to check, currently only sequencer add operators use it.
* Added back Effects menu back, replaced SEQUENCER_OT_add_color_strip with SEQUENCER_OT_add_effect_strip.
* Made sequencer header use operator UI functions.
* gcc complains when char's are used as array indicies when they are not explicitly signed/unsigned, corrected previous change for vpaint to silence this error.

12 years ago2.50: svn merge -r17853...
Brecht Van Lommel [Mon, 26 Jan 2009 08:34:40 +0000 (08:34 +0000)]
2.50: svn merge -r17853:HEAD

12 years ago2.5 DopeSheet/Action Editor
Joshua Leung [Mon, 26 Jan 2009 04:13:38 +0000 (04:13 +0000)]
2.5 DopeSheet/Action Editor

* Made the various datatypes in the DopeSheet get shown again (NOTE: some of the types that don't get conversions to Animato yet may need some further checking).
* Did some code cleanup to allow F-Curve channels to always show RNA-based names correctly

12 years agoAdded radial control support to vpaint and wpaint. Added undo pushes as well.
Nicholas Bishop [Sun, 25 Jan 2009 21:02:52 +0000 (21:02 +0000)]
Added radial control support to vpaint and wpaint. Added undo pushes as well.

12 years ago2.5
Ton Roosendaal [Sun, 25 Jan 2009 20:22:05 +0000 (20:22 +0000)]

Simple toolbox-style menu system. Brecht will review it
though, and/or check on way to use it for menus.
I tried to avoid uiBlock and rna stuff all over. :)

Quick image test:

Examples you can read in:
- editors/screen/screen_ops.c:testing123() (press F5)
- editors/object/object_edit.c:object_add_primitive_invoke()
  (press SHIFT+A)

Concept is simple:

uiMenuBegin(): returns a handle.
uiMenuEnd(): puts it all to work.

In between you can add items like:

uiMenuItemVal(): a name, icon, retval (use uiMenuFunc())
uiMenuItemO(): an operator + icon
uiMenuItemEnumO(): an operator, property name, value

Sublevels go easy too:

uiMenuLevel(): creates item for sublevel, with function pointer.
     Inside that function you can use all menu calls again.
     Levels can go as deep you want.

uiMenuLevelEnumO(): creates operator sublevel for an enum

12 years ago2.5
Martin Poirier [Sun, 25 Jan 2009 17:08:56 +0000 (17:08 +0000)]

Use proper function to check if prop is defined instead of relying on default.

12 years agomake operator names more consistent
Campbell Barton [Sun, 25 Jan 2009 15:41:17 +0000 (15:41 +0000)]
make operator names more consistent
ANIM_OT_toggle_time -> ANIM_OT_time_toggle
SCULPT_OT_toggle_mode -> SCULPT_OT_sculptmode_toggle
UV_OT_select_inverse -> UV_OT_select_invert
NODE_OT_toggle_visibility -> NODE_OT_visibility_toggle
OBJECT_OT_toggle_editmode -> OBJECT_OT_editmode_toggle

toggle was used last in other operators eg- ´╗┐VIEW3D_OT_vpaint_toggle and ´╗┐VIEW3D_OT_wpaint_toggle.

'invert' was used everywhere else.

12 years ago* added operators SEQUENCER_OT_lock, unlock, reload, refresh_all, view_all, view_sele...
Campbell Barton [Sun, 25 Jan 2009 14:53:41 +0000 (14:53 +0000)]
* added operators SEQUENCER_OT_lock, unlock, reload, refresh_all, view_all, view_selected.
* sequencer transform now does overlap checks.
* removed old transform functions from sequencer_edit.c
* shuffle_seq moved to kernel, now moves strips to the end of the last sequence of itschannel (if all channels are used). 2.4x would remove the strip.
* most of the 'Strip' menu items now call their operators in the header menu, some for view and select too.

12 years agoAnimato - Bugfix for Conversion of Object Rotations
Joshua Leung [Sun, 25 Jan 2009 11:45:40 +0000 (11:45 +0000)]
Animato - Bugfix for Conversion of Object Rotations

Yet another attempt to fix this problem (hopefully the last). Resolved a few typos (previous code was adjusting times not values).

12 years agoDid some refactoring with brush and sculpt to make radial control easier to add to...
Nicholas Bishop [Sun, 25 Jan 2009 07:28:11 +0000 (07:28 +0000)]
Did some refactoring with brush and sculpt to make radial control easier to add to other modes.

12 years agoAnimato - Bugfixes + Nicer names in Action Editor
Joshua Leung [Sun, 25 Jan 2009 04:02:31 +0000 (04:02 +0000)]
Animato - Bugfixes + Nicer names in Action Editor

* Action Editor/Dopesheet now displays names retrieved from RNA in the form - "<Struct/OwnerName>.<PropertyName>.<ArrayIndex>"
i.e. "HeadBone.Location.X"
i.e. "Cube.Rotation.Y"
i.e. "Material.Diffuse Color.G"

For now, the first part of the name may be unclear as it is easy to confuse Material channels with Object ones if the material was called "Object1" or so (theoretrical example only). This will be explored further.

* Also, fixed crashes when loading some old files with 'Object' Action Channels in their Actions

12 years agofix syntax error
Campbell Barton [Sun, 25 Jan 2009 01:32:00 +0000 (01:32 +0000)]
fix syntax error

12 years ago2.5 / MSVC
Nathan Letwory [Sat, 24 Jan 2009 23:37:34 +0000 (23:37 +0000)]
2.5 / MSVC
* make MSVC happy. M_PI is defined for MSVC, but these constants are available only after
  doing #define _USE_MATH_DEFINES before including math.h.
  Good to remember for in the future (no need to define our own M_PI's).

12 years agoFixed a drawing error in radial control and a warning in sculpt.c.
Nicholas Bishop [Sat, 24 Jan 2009 23:20:25 +0000 (23:20 +0000)]
Fixed a drawing error in radial control and a warning in sculpt.c.

12 years agoMore radial control work.
Nicholas Bishop [Sat, 24 Jan 2009 22:58:22 +0000 (22:58 +0000)]
More radial control work.

* Added a rotation setting to brush (and brush RNA)
* Brought back strength and rotation modes for radial control
* Brought back brush texture for radial control
* Turned off display of sculpt brush during radial control operator

12 years agoeditmesh face menu back, ctrl-pkey
Shaul Kedem [Sat, 24 Jan 2009 22:21:12 +0000 (22:21 +0000)]
editmesh face menu back, ctrl-pkey

12 years agoAdded back old sculptmode FKEY radial control. (Moved fullscreen to F11KEY for now.)
Nicholas Bishop [Sat, 24 Jan 2009 16:59:55 +0000 (16:59 +0000)]
Added back old sculptmode FKEY radial control. (Moved fullscreen to F11KEY for now.)

* So far, only size mode ported and tested, still strength and rotation to do
* Brought this back for sculptmode first, still to do are particle edit, vpaint, wpaint, texpaint, and I guess image paint?
* Changed the wm paint cursor slightly, to take a customdata pointer.
* Still need to bring back brush texture display in the cursor

12 years ago2.5
Ton Roosendaal [Sat, 24 Jan 2009 14:24:59 +0000 (14:24 +0000)]

- writeimage.c back, put in space_file now...
- renamed fluidsim.c to distinguish from bke version

12 years ago2.5
Ton Roosendaal [Sat, 24 Jan 2009 13:47:20 +0000 (13:47 +0000)]

Made API for elbeem sane; it was prototyping and exporting
functions from old src/ !

Note; elbeem.h is not exported anymore.

12 years ago2.5
Ton Roosendaal [Sat, 24 Jan 2009 13:45:24 +0000 (13:45 +0000)]

- Brought back code for particle edit and fluidsim
- Sanitized code from globals and bad level calls,
  so its ready to come back working.
- Fixed cirle selecting (Ckey now)
- Enabled undo for editmode curve, armature, particle
  and lattice

(another commit following)

12 years agoAnimato - Shapekeys work again
Joshua Leung [Sat, 24 Jan 2009 11:35:14 +0000 (11:35 +0000)]
Animato - Shapekeys work again

The RNA-wrapping for the 'value' (internally kb->curval) was set to be not editable, thus preventing Animato from writing to it. Removing the flag makes shapekeys more functional again (there are still a few non-functional cases).

12 years agoAnimato - Insert Keyframe for PoseChannels
Joshua Leung [Sat, 24 Jan 2009 10:58:34 +0000 (10:58 +0000)]
Animato - Insert Keyframe for PoseChannels

Added temporary entries to the quick-hack insert-keyframe operator menu. Action Editor doesn't get refreshed properly yet though.

Proper keyingsets will be coming/remimplemented tomorrow or later this week.

12 years ago2.5 - Pose-Channel (i.e. PoseMode bone) Transforms work again
Joshua Leung [Sat, 24 Jan 2009 10:03:19 +0000 (10:03 +0000)]
2.5 - Pose-Channel (i.e. PoseMode bone) Transforms work again

In the brief tests I did on a few rigs, this seems to work ok. Martin may want to check on the code for any cleanups that may be needed here.

Coming soon will be some modifications to the primative insert-key operator added earlier, so that Animato can be used to animate characters!

12 years agomy last commit broke transforming metastrips, use find_id for scene lookup.
Campbell Barton [Sat, 24 Jan 2009 09:55:31 +0000 (09:55 +0000)]
my last commit broke transforming metastrips, use find_id for scene lookup.

12 years agoAnimato - FCurve Modifier Bugfixes
Joshua Leung [Sat, 24 Jan 2009 08:21:39 +0000 (08:21 +0000)]
Animato - FCurve Modifier Bugfixes

* FModifier data is now allocated correctly, solving crashes on loading files containing IPO-curves with cyclic extrapolation
* Fixed memory leaks with FModifiers and their data not being freed correctly. Not sure exactly why the old code didn't work for this.

12 years agoAdded back a line removed in r18642 so the macro CFRA can access scene.
Nicholas Bishop [Sat, 24 Jan 2009 06:08:46 +0000 (06:08 +0000)]
Added back a line removed in r18642 so the macro CFRA can access scene.

12 years agoadded back extend (Ekey) to sequener transform, works with nested metastrips too.
Campbell Barton [Sat, 24 Jan 2009 05:38:25 +0000 (05:38 +0000)]
added back extend (Ekey) to sequener transform, works with nested metastrips too.

12 years ago* operators for toggling, making, separating metastrip's. (tab, m, alt+m)
Campbell Barton [Fri, 23 Jan 2009 23:14:02 +0000 (23:14 +0000)]
* operators for toggling, making, separating metastrip's. (tab, m, alt+m)
* transform support for metastrips
* active strip is set to NULL if its freed again.

12 years agoAnimato - More compatability work
Joshua Leung [Fri, 23 Jan 2009 23:11:12 +0000 (23:11 +0000)]
Animato - More compatability work

* Absolute shapekeys work again. For now, the 'speed' curve isn't converted yet (same goes for 'Curves'). Those were kindof hacky, since they manipulated time in weird ways. Probably the clamping to 0.0-1.0 range can go though.

* Materials, Textures, Cameras, and local-constraint IPO's are now converted properly to the new system