Commit Graph

2294 Commits

Author SHA1 Message Date
Campbell Barton
88be0a852e add define for drag toggle. 2013-02-25 23:27:32 +00:00
Campbell Barton
e2b41cb96f revert some changes from own commit r54850 which broke undo for toggle buttons, also make toggle buttons auto-key. 2013-02-25 21:13:40 +00:00
Campbell Barton
ac345fce9a fix for toggle buttons not taking effect on mousedown. 2013-02-25 11:52:18 +00:00
Campbell Barton
a9b9fcc951 style cleanup 2013-02-24 20:33:21 +00:00
Bastien Montagne
c9d1f6fc5b Fix for uiButGetStrInfo: We need a string value here, return BPY_I18NCONTEXT_DEFAULT_BPY when using default NULL label's context. 2013-02-24 08:46:01 +00:00
Brecht Van Lommel
ce54cc111d Fix #34357: image editor scope and clip editor track preview did not resize
properly with different DPI settings.
2013-02-22 16:11:27 +00:00
Campbell Barton
4df5b943ed patch [#34103] - listbase.patch, insertlinkbefore.patch
from Lawrence D'Oliveiro (ldo) 


notes from tracker:
use bool for return type from BLI_remlink_safe, necessitating including BLI_utildefines.h in BLI_listbase.h
get rid of duplicate BLI_insertlink, use BLI_insertlinkafter instead.

A few places which were using BLI_insertlinkafter (actually BLI_insertlink), when it would be simpler to use BLI_insertlinkbefore instead.
2013-02-22 14:12:55 +00:00
Campbell Barton
5f09090cad remove 'register' from drag-toggle operator (so it doesn't show in the redo panel).
update credits script.
2013-02-22 11:06:25 +00:00
Campbell Barton
4aea4c2cb3 change to drag-toggle don't exit when the mouse is outside the region - its annoying for setting layers in the 3d header. 2013-02-22 07:28:45 +00:00
Campbell Barton
c12eeb4ec6 code cleanup: switch argument order for button_activate_exit() but/data args were flipped compared to other functions. 2013-02-22 06:02:52 +00:00
Campbell Barton
a9e25ac433 Toggle-Drag UI Feature
Dragging on toggle buttons can now be used to press multiple buttons at once, especially useful for layer and outliner buttons.


notes:
- automatically enabled for all toggle buttons
  (may change this if it becomes a problem).
- only buttons of the same type are pressed
  (helps avoid annoyances eg; dragging past layer buttons onto other 3d header buttons and pressing by accident).
- automatic axis locking - dragging will lock to X/Y depending on the initial drag direction,
  makes swipe motions work better, especially with the outliner.


implementation details:
- may re-implement as a region handler (currently its a modal operator).
- checking buttons in-between cursor motion events could be more efficient (but currently works ok).
- button execution needs to be improved
  (currently executing a button thats not under the mouse needed a workaround for passing uiHandleButtonData),
  requires further changes to UI code, will do next.
2013-02-22 05:56:20 +00:00
Brecht Van Lommel
20220d47e3 Dependency Graph: some refactoring which should have no user visible impact
besides performance in some cases.

* DAG_scene_sort is now removed and replaced by DAG_relations_tag_update in
  most cases. This will clear the dependency graph, and only rebuild it right
  before it's needed again when the scene is re-evaluated.

  This is done because DAG_scene_sort is slow when called many times from
  python operators. Further the scene argument is not needed because most
  operations can potentially affect more than the current scene.

* DAG_scene_relations_update will now rebuild the dependency graph if it's not
  there yet, and DAG_scene_relations_rebuild will force a rebuild for the rare
  cases that need it.

* Remove various places where ob->recalc was set manually. This should go
  through DAG_id_tag_update() in nearly all cases instead since this is now
  a fast operation. Also removed DAG_ids_flush_update that goes along with
  such manual tagging of ob->recalc.
2013-02-21 19:33:04 +00:00
Thomas Dinges
a31a93ca3f Compile fixes for recent code cleanups:
* M_PI was not declared for MSVC.
2013-02-21 17:39:48 +00:00
Campbell Barton
60c1a7898a use radians for BLF_rotation 2013-02-21 17:15:19 +00:00
Campbell Barton
c22e52f409 remove unneeded call to RNA_property_enum_get(), the icon was always overwritten after. 2013-02-20 01:23:34 +00:00
Bastien Montagne
04d628a5b5 Another huge bunch of new UI translations (some reported by Leon Cheung, thanks!)... 2013-02-19 15:45:56 +00:00
Brecht Van Lommel
e3b2df5806 Fix #34315: memory leak cancelling move to layer operator, after change to make
it not execute immediately when opening the popup.
2013-02-19 13:37:48 +00:00
Campbell Barton
2d2164f10b fix [#34295] Color picker brightness to infinity
simply clamp the color to the buttons softrange since color conversion can cause the value to scale outside the intended button limits.
2013-02-19 09:41:48 +00:00
Pablo Vazquez
47c29c1c2e Themes: disabled items on menus were using a color mix of text and text_selected, this didn't work nice with dark themes and text shadows and overall didn't make much sense.
Now, disabled items use a mix of text and menu item background (inner) color. Same results, but allows dark themes with bright selected text to use shadows.

Example case: http://pasteall.org/pic/show.php?id=45697
2013-02-18 21:19:43 +00:00
Ton Roosendaal
bd7648b2d2 Bug fix #34292
CTRL + MMB zoom in 2d editors now depends on 'max zoom' level. This makes
zooms in UI (very limited) go smoother, but for fcurve or timeline it's same.
2013-02-18 15:14:34 +00:00
Bastien Montagne
d7058f12e5 Make list_id mandatory when using default UI_UL_list class for a template_list. 2013-02-18 14:03:26 +00:00
Campbell Barton
d45612aa41 fix [#34279] Python console: Selected region is not highlighted when using white background color 2013-02-18 02:36:36 +00:00
Bastien Montagne
c524b47912 Another huge bunch of UI translation fixes, mostly reported by Leon Cheung, Sv.Lockal, Gabriel Gazzán and Satoshi Yamasaki, thanks! 2013-02-17 13:56:49 +00:00
Pablo Vazquez
4eb90a9d1e 'Reset to Default Theme' wasn't taking into account those themes that enable panel header/background. 2013-02-15 16:42:41 +00:00
Bastien Montagne
ec04f98a75 Various fixes for UI translation issues (reported by Leon Cheung on bf-translations ML, thanks!). 2013-02-15 14:30:36 +00:00
Sergej Reich
e3944f5bfa Divide by 3 instead of multiplying by variations of 0.333
Fixes small precision problems.
2013-02-14 17:35:43 +00:00
Bastien Montagne
26704c0451 More nodes UI translation fixes.
I *hate* this rna_nodetree_types.h file!
2013-02-14 07:49:50 +00:00
Campbell Barton
ab7ca2dc44 fix for double clicking in the text editor not working usefully (double clicking a pair chars would select 3 - one to the left). 2013-02-14 03:03:12 +00:00
Ton Roosendaal
da4711632c Fix for splitting startup and userpref:
The do-version handling for Userdef is outside file reading, which makes
it needed to store the file version in UserDef, so it gets the correct
version to handle.

Thanks Antonis R. for pointing at the omission!

Also removed the mindboggling define. If you do such, then make it
like "MAIN_VERSION_OLDER_THAN() or so.

In general version hacking could be limited much better... ask me
before even thinking to add one, most optimal is to do it in a way
it's not depending on a version ever - forward/backward compatible.
2013-02-13 16:52:14 +00:00
Campbell Barton
86793fec42 fix [#34198] Scene unit size and dyntopo detail size
there were 2 bugs here.
- int buttons scaling values on input but not on display.
- pixel distances were using PROP_DISTANCE subtype - which isn't correct.

added assert incase PROP_INT values have PROP_DISTANCE subtype applied in future.
2013-02-12 05:09:35 +00:00
Campbell Barton
533f359c0d code cleanup: some style edits, also allow mul_v2_m2v2() to have the same value as in-out, since this is a convention for existing matrix functions. 2013-02-12 00:35:31 +00:00
Brecht Van Lommel
14a0ff90bc Fix a few DPI / retina draw issues:
* Color picker cursor was too small, and color cirle was not smooth enough.
* Border select gesture cross before first click did not reach to the border
  of the window.
* Buttons were not drawing emboss properly (also for non-retina actually).
  Note it doesn't draw entirely right for aligned buttons, but this was also
  the case before it got broken.
2013-02-10 18:03:01 +00:00
Ton Roosendaal
1dfb6404b7 Release todo: added userpref for Mac users having "Natural Scroll" set.
As per discussion and analysis of all trackpad usage, we now
follow this convention:

- Blender follows system setting for trackpad direction preference.

- If you set your system to "natural" scroll, we need to invert a couple
  of cases in Blender we do "natural" already. Like:

   - view rotate (the inversed option just never feels ok)
   - scroll active items in list or pulldown menu (up/down is absolute)
   - ALT+scroll values in buttons (up/down is absolute)

The new User Preference setting "Trackpad Natural" handles this.

For 2.66 we only have trackpad handling for OS X... so this isn't
affecting trackpad usage in Windows and Linux, which stick to be mapped
to Scroll Wheel still.

(Note: viewrotate now is "natural" always, changing how it worked in the
past weeks).
2013-02-08 12:12:57 +00:00
Campbell Barton
07a3ebbd38 fix for annoyance where header menus would get scroller arrows added because it would be clamped within the screen a few pixels.
This was caused from using theme shadow setting to clip the popups and a hard-coded value to translate the popup within screen bounds - these values should be the same.
2013-02-07 02:03:31 +00:00
Campbell Barton
296444e1dc style cleanup: some warnigs & spelling. 2013-02-06 14:02:19 +00:00
Ton Roosendaal
134c656878 New matcap collection for default in release. It's now 24 images, ordered
from regular diffuse to more shiny, stone, wax, eflective, glass and two non-realistic ones.

The menu now shows it in 3 rows. I made the previews a bit smaller, 96 pixels,
like the brushes for painting. 

Thanks everyone for submitting pics! I updated the credit file too, but name
from one person is missing still, will be added next.
2013-02-05 16:16:07 +00:00
Sergey Sharybin
fdfa5910b5 Fix #34040: Moving Normal Node with enabled Cycles Material Preview crashes
Issue was caused by couple of circumstances:

- Normal Map node requires tesselated faces to compute tangent space
- All temporary meshes needed for Cycles export were adding to G.main
- Undo pushes would temporary set meshes tessfaces to NULL
- Moving node will cause undo push and tree re-evaluate fr preview

All this leads to threading conflict between preview render and undo
system.

Solved it in  way that all temporary meshes are adding to that exact
Main which was passed to Cycles via BlendData. This required couple
of mechanic changes like adding extra parameter to *_add() functions
and adding some *_ex() functions to make it possible RNA adds objects
to Main passed to new() RNA function.

This was tricky to pass Main to RNA function and IMO that's not so
nice to pass main to function, so ended up with such decision:

- Object.to_mesh() will add temp mesh to G.main
- Added Main.meshes.new_from_object() which does the same as to_mesh,
  but adds temporary mesh to specified Main.

So now all temporary meshes needed for preview render would be added
to preview_main which does not conflict with undo pushes.

Viewport render shall not be an issue because object sync happens from
main thread in this case.

It could be some issues with final render, but that's not so much
likely to happen, so shall be fine.

Thanks to Brecht for review!
2013-02-05 12:46:15 +00:00
Campbell Barton
2c0a3cf42e fix [#34113] operator_menu_enum() - Tooltip not showing descriptions
second fix from this report which makes the menu show tips even when 'bl_property' isn't set.
2013-02-05 05:39:18 +00:00
Campbell Barton
88aa33d3f4 fix [#34104] vertex color: color select bug
changing the hue in a color picker on a panel when black/white was selected would fail because the hue from the previous state wasnt stored.
2013-02-04 12:32:24 +00:00
Campbell Barton
69993c5d40 style cleanup: spaces -> tabs 2013-02-04 00:18:09 +00:00
Campbell Barton
b6c82b2e84 fix for glitch drawing file selector dividers (would draw apart or on top of each other depending on the view) 2013-02-02 14:11:58 +00:00
Campbell Barton
518bfbb1c9 style cleanup 2013-02-02 04:58:03 +00:00
Campbell Barton
2a71e4e4f0 make WITH_HEADLESS build again. 2013-02-01 08:24:18 +00:00
Campbell Barton
a47bef3622 fix for [#33803], error was caused by sloppy coding in r53487, converting trackpad to wheel events.
if you moved your mouse fast over a button the event would get converted to a wheel, even if the input event wasnt a MOUSEPAN event.

When Alt was held this was noticable because Alt+Wheel changes button values.

added an assert to avoid this happening again.
2013-02-01 01:11:27 +00:00
Campbell Barton
6341919354 code cleanup: make wmEvent's 'const' in interface code (reduces manual checking that they are not modified). 2013-02-01 01:01:20 +00:00
Campbell Barton
2007d57fdc ui_but_anim_expression_create was never returning true, even when it succeeded. 2013-01-31 21:56:14 +00:00
Campbell Barton
a9015e3f7d style cleanup 2013-01-31 21:15:38 +00:00
Brecht Van Lommel
7b6e78e48a Fix #34034: keyframe display of color/curve buttons was broken after revision
53132 which changed the RNA index to -1 for these. Also made it so that these
buttons no longer display "Insert Single Keyframe" and only "Insert Keyframe"
as you can't edit individual components here so it's only confusing.
2013-01-31 16:19:44 +00:00
Brecht Van Lommel
ba7e37c2b6 Fix #33874: active UV map chooser in uv editor should not have X button as you
can't not have an active UV map.
2013-01-31 13:44:13 +00:00
Campbell Barton
8f038c2410 enable continuous grab for sliders, initially this was disabled because we didnt support un-grabbing at the new slider location. 2013-01-29 23:33:58 +00:00