Commit Graph

986 Commits

Author SHA1 Message Date
Ton Roosendaal
be5f30416b Todo item
Drag/drop now has a User preset for dragging threshold.
Noticed this was set to 3 pixels even, made it 5 as default.
Tablet owners can put it larger too :)

Note: the tweak-threshold (3d win) is 10 pixels now, I think
this needs another preset too, leave this for now.

Also: fixed crash in filewindow: drag .blend icon and drop it.
You can't test anything in Blender or you get a bug :)
2011-01-03 17:00:49 +00:00
Ton Roosendaal
8a2a7687f4 Bugfix #25457
After loading file, the Undo-push happened too early, causing an
undo for the first action to show animated setups wrong.

(material.c: removed old crap)
2011-01-03 12:48:16 +00:00
Ton Roosendaal
05cfe50436 Bugfix #25446 (and todo item)
The icons for materials were always lagging or not updating
at all. I also found it suspicious slow... 
It appeared that the icons now store a "mip level", where for
every change in Materials 2 render jobs for icons were started,
one for 32x32 pix, one for 96x96. The latter was cancelling out
the first job almost always.

Also made preview renders detect size, to set amount of tiles
to be rendered. Small icons use 1 part, larger previews 16 now.

All in all, behaves much smoother now! But, will also update
the thread Jobs manager to allow "delayed jobs" like for icons,
these are aggressively put as first in the jobs list.
2011-01-02 19:46:32 +00:00
Campbell Barton
a7ceeafd71 - correct typos in comments.
- move boxpack struct out of the public header.
2011-01-02 11:06:50 +00:00
Thomas Dinges
f09d7912f8 Porting URL fixes for Release Logs from Tag to Trunk. 2010-12-30 13:02:48 +00:00
Ton Roosendaal
1a8cc0a8f0 Small fixes:
- OpenGL still render failed when output format was set to Movie.
  Now it just doesn't save a file and renders anyway.
- Bone heat weight was missing 'wait cursor'.
- Waitcursor for Mac Cocoa is back! Made all OS's use the same
  nice hourglass cursor.

(Note: this violates Mac UI guidelines, we should rely on the 
spinning wheel of death instead. Highly disputable that.)
2010-12-27 18:54:43 +00:00
Campbell Barton
4d0c10d5ca presets for operators, re-using same preset system as render, cloth etc use.
- operators need to enable the option OPTYPE_PRESET or 'PRESET' in python.
- hidden properties are not written.
- currently this only works in the file selector (enabled for FBX/OBJ export)
- currently the menu label doesnt change when presets are selected, this is a TODO, not so simple since the UI is defined in C and the label in python.
- presets save in "scripts/presets/operators/*id*/*.py"
2010-12-24 07:46:40 +00:00
Ton Roosendaal
47fc52f839 Customdata mask recode caused crashes, sloppy work here, but probably
caused by Campbell using too much Python. In C code you really need
{ and } for multiline if's. :)
2010-12-23 17:47:06 +00:00
Ton Roosendaal
1ea491d615 Bug #25354
In some cases, a LMB-drag was drawing a stippled line. Leftover of 
WIP code for support of gestures in Blender. 
Disabled drawing for now, until gestures is back in control.
2010-12-23 10:34:37 +00:00
Campbell Barton
c046ae14be Fix for multiple modifier stack calculations per frame.
Since 2.5x blender has been using CD_MASK_BAREMESH for updating objects since object_handle_update() no longer has access to G.curscreen to calculate the mask from viewports.

The problem with this is after an initial calculation, CD_MASK_MTFACE may be required on draw, so it would recalculate the modifier stack multiple times per frame.
One case which caused this is armature animated mesh with texface in a dupligroup.

Fix this by having customdata_mask member in the scene, this isn't great design but at least fixes the bug and only changes a few files.
2010-12-23 04:16:31 +00:00
Campbell Barton
86b89af5dd use ICON_NULL define rather then 0, makes UI calls less confusing. (no functional change)
eg: uiItemR(row, &dvar_ptr, "type", 0, "", 0); -> uiItemR(row, &dvar_ptr, "type", 0, "", ICON_NULL);
2010-12-23 02:43:40 +00:00
Campbell Barton
5e382eb8e5 rename blenderlib to blender_add_lib 2010-12-22 23:09:30 +00:00
Dalai Felinto
c67dac4274 Complement of commit 33789: Fix for [#25175] bge.logic.mouse.position[1] wrong when using autostart
Porting the fix when Fullscreen flag is on (~ scene.gm->fullscreen)
I still see some issues with that, a difference between width/height. To be addressed later.
2010-12-22 14:20:22 +00:00
Campbell Barton
b0f87a1746 rename addlisttolist() to BLI_movelisttolist()
name was misleading because the list items were removed from the source list.
(no functional changes)
2010-12-21 14:49:34 +00:00
Ton Roosendaal
3d1896bc6d Macro Operators now pass on reports to the Mother Op!
(errors for macros were not shown)
2010-12-21 14:08:58 +00:00
Joerg Mueller
9685589cf7 Fix for [#25175] bge.logic.mouse.position[1] wrong when using autostart 2010-12-19 13:56:02 +00:00
Ton Roosendaal
a0ce28d731 Drag & drop feature:
You now can drop a .blend inside blender window to open it.

Implementation notes:
- Added call to extract icon type for files. Code re-used from
  space_file
- External files that get dropped set icon types too.
  Drop box polls can check for this.
- Also enabled setting op-context for drop operators, this was
  needed to prevent filewindow to open.
2010-12-17 19:05:34 +00:00
Campbell Barton
eecfc0fbb2 bugfix [#25208] randomize transform doesn't work on objects with keyframes
Surprising this wasnt noticed in a much more obvious case:
 - Key Location, Move, Rotate, Undo-Rotate >> Resets to keyed location as well.

This was happening because DAG_on_load_update() was called on read_undosave(), flagging 'ob->adt->recalc |= ADT_RECALC_ANIM;'

Fix by adding an option to DAG_on_load_update(), not to recalculate time flags.
2010-12-16 19:26:54 +00:00
Ton Roosendaal
fdcfca54e0 Annoyance fix:
Using scrollwheel on properties window halted when it was over
a list-button. Now it disables handling wheel events when you use
scrollwheel outside of lists first.

Implementation note: UI event handlers have priority over other
keymaps. That's OK. In this case it's simple conflict, for which
no design solution exists... wouldn't know how to do this nicer!
Code is nice local and can be improved when we look into other
conflicts...
2010-12-16 18:58:22 +00:00
Ton Roosendaal
29d2e53463 Bugfix, own collection
Using RMB on menus to change hotkeys was broken.
- the input button was on a weird place outside menu, assign
  would close pulldown, so you had to reopen to check
- ESC didn't close the button, but assigned ESC as hotkey.
  This key is a protected key, and always should be escaping.
- Worst bug: if you used this on a 'user keymap' it removed
  all entries from the map...
2010-12-15 18:09:25 +00:00
Campbell Barton
0a3902bb55 change the cursor bounds to only use the Area if the mouse is outside the region or the region is not a WINDOW type. 2010-12-15 16:46:59 +00:00
Ton Roosendaal
95f205ed5c Bugfix 21333
"Continuous grab": the boundary is now set to Area (editor), making it work
for operators started in other regions (like toolbar, or in quad view case)
2010-12-15 15:28:03 +00:00
Campbell Barton
46ce8cdf58 replace debug popup function with call to generic function WM_operator_props_dialog_popup(). 2010-12-15 06:12:16 +00:00
Campbell Barton
eb8458b064 Centralized operator UI drawing into a new function uiLayoutOperatorButs(),
Operator drawing calls were duplicated in file selector panel, redo panels, redo & dialog popups.

note, uiDefAutoButsRNA's column's argument was misleading, renamed to label_align.
2010-12-15 05:42:23 +00:00
Campbell Barton
acd7b81c2d bugfix [#25230] Quick extrude Ctrl-LMB : wrong behaviour of 'RotateSource' option.
Problem is is with operator redo which click-extrude exposed.

Check if redo operator can run, otherwise lock the UI and add a label that the operator doesn't support redo.
This is clunky but IMHO better then failing silently and leaving the user confused.

- Merged redo functions into ED_undo_operator_repeat(), code was duplicated in a few places.
- added WM_operator_repeat_check to check if WM_operator_repeat() can run, avoids an undo call when redo work.

Unrelated changes
- GHOST_SystemWin32.cpp set to utf8 encoding.
- cmake_consistency_check.py now checks source files are utf8.
2010-12-15 04:06:19 +00:00
Campbell Barton
39e3a75978 fix for transform operator giving '<UNKNOWN>' enum value when logged, now pass on the context for operator string representation. 2010-12-13 06:54:25 +00:00
Campbell Barton
433eeee41f clipboard setting background check correction. 2010-12-12 21:28:07 +00:00
Thomas Dinges
040112d6ae Fix for compile on windows:
*Variable declaration after return statement
2010-12-12 20:21:59 +00:00
Sergey Sharybin
1185d70f8f Fix #25177: Skeleton Sketching - deleted sketches don't disappear immediately
Added notifier ND_SKETCH for handling such actions
2010-12-12 16:15:49 +00:00
Campbell Barton
ee73c96e90 - fix for rna show_brush variable shadowing its parent classes with a flag which is now unused.
- getting clipboard RNA variable would crash blender in background mode.
2010-12-12 14:28:23 +00:00
Ton Roosendaal
1d1c8bb21b Small fix:
Material Properties: adding new materials didn't create a new preview
icon for it.
2010-12-11 16:06:25 +00:00
Janne Karhu
f03735552b Fix for [#22967] UI stops updating
* Close event probably happens when drawable is set to other window and this messes up drawing.
* Also fixes #25071 and possibly #22477 (somebody with osx has to re-test)
2010-12-11 12:24:23 +00:00
Campbell Barton
5f5814f45f - ignore calls to WM_cursor_wait() in background mode (crashes saving blend files)
- rename curve enum value align CENTRAL to CENTER
2010-12-11 11:11:32 +00:00
Campbell Barton
afacd18498 use lowercase for cmake builtin names and macros, remove contents in else() and endif() which is no longer needed. 2010-12-08 08:43:06 +00:00
Martin Poirier
a1fed1e268 [#25047] Deletion of any custom key map item remove always first one
keymap item id for user defined keymaps wasn't defined properly. This is really old, I'm surprised with didn't catch this before.
2010-12-06 02:42:59 +00:00
Campbell Barton
5f8eb5c069 use constant strings for outliner menus rather then sprint'ing them together. 2010-12-05 06:40:47 +00:00
Campbell Barton
fa4bbbb249 Maintenance,
- remove some redundant declarations
- changed VertexTangent and Path structs to avoid compiler alignment padding.
2010-12-04 13:00:28 +00:00
Campbell Barton
0271ad6322 Give functions that use printf style formatting GCC format attributes so if incorrect formatting is used the compiler will warn of this.
found & fixed 2x incorrect formatting args.
2010-12-04 11:44:56 +00:00
Ton Roosendaal
45922c9150 Bugfix #24568
The old blocking "time cursor" wasn't working anymore.
Commit 32798 overlooked that the initialization was
needed.

Now bakes show it again. Note to self: it seems to flash
slightly (like 2.49), need to check on it one day.
2010-12-03 18:26:42 +00:00
Campbell Barton
263830f000 Enabled GCC -Wwrite-strings warning for CMake and replaced many 'char's for 'const char's,.
Only one functional change where Transform orientations passed "" to BIF_createTransformOrientation() which could then have the value written into.
2010-12-03 17:05:21 +00:00
Campbell Barton
cd97253502 - added GCC warning -Wstrict-prototypes
- fixed bug in paste material, exposed by stricter warnings.
- removed/renamed various shadowed vars.
- removed BGE lamp.colour, only allow lamp.color attribute.
2010-12-03 12:30:59 +00:00
Campbell Barton
b45c3363fd fix for some pedantic warnings. 2010-12-03 01:52:28 +00:00
Campbell Barton
42d6603cae Add option for CMake to build libredcode, also use CODEC prefix for ffmpeg, quicktime & sndfile options. 2010-11-30 18:52:39 +00:00
Campbell Barton
236a11ca63 misc small changes.
- commented unused View3D->flag's
- popup dialog now centers over the mouse
- only overwrite image alpha with render settings on save if saving the render result.
2010-11-30 18:07:44 +00:00
Ton Roosendaal
ceebc3598f From the todo:
Save or load .blend file shows cursor 'wait' again. Is clear to indicate
a totally blocking operation.
2010-11-29 13:14:51 +00:00
Campbell Barton
e8397e6193 include headers in cmake source, added a script to check for consistency, reporting missing headers & C files.
this is important so IDE's using CMake integration always get blender headers. - QtCreator & MSVC for eg, probably others too.
2010-11-29 04:35:56 +00:00
Campbell Barton
02cc80691d python access to driver namespace, rather then have a textblock defined for drivers allow scripts to add functions directly.
- bpy.app.driver_namespace, read-only dictionary, edit in-place.
- reset on file load and new file.
- on errors the namespace used to be reset, this should not be needed.

simple example.

  def driverFunc(val):
    return val * val
  bpy.app.driver_namespace['driverFunc'] = driverFunc

... now all drivers can access this function.
2010-11-27 02:39:51 +00:00
Campbell Barton
c5f7207948 fix for crash introduced r33257, also tag some vars as unused. 2010-11-24 20:13:37 +00:00
Ton Roosendaal
117d11021e Bugfix #24847
When report error was drawn in info header, using border select
or paint brushes flickered. Was caused by Triple Buffer method
not checking for correct redraw case.

Also made report redraws less aggressive, it was drawing the info
header all over with 50 FPS for 10 seconds. Made it 20 FPS, and 
added code to only send notifiers for actual changes.

As todo note for future: animated UI options could get better
caching to cope with slower refreshes.
2010-11-24 16:34:38 +00:00
Campbell Barton
ee1d2adc16 partial fix for [#23532]
- Python calling operators didn't run WM_operator_properties_sanitize() so enum functions called from python were given a NULL context.
- PROP_ENUM_NO_CONTEXT and PROP_NEVER_NULL used the same value in the enum (possible conflict).
2010-11-23 12:05:35 +00:00