Commit Graph

2326 Commits

Author SHA1 Message Date
Bastien Montagne
284e59d608 Add the possibility to define the translation context for py rna classes (operators, panels and menus).
Thanks to Campell and Brecht for the reviews!
2013-03-15 14:32:29 +00:00
Campbell Barton
63d3594975 ui_def_but() allocating an extra byte in 'but->str' for no reason. 2013-03-14 11:29:15 +00:00
Brecht Van Lommel
5162a155af Fix #34481: camera focal length and sensor size did not use units yet, now they do.
I've added a separate camera unit type. It's a bit strange to have an exception for
this but it ensures units are shown in familiar millimeters and it also ensures
backwards compatibility.
2013-03-13 17:16:49 +00:00
Brecht Van Lommel
4e86946c2b Fix wrong use of enum in UI code to reactive button on mouse over, this worked
only by accident.
2013-03-13 14:19:53 +00:00
Campbell Barton
aaa8a13c49 code cleanup: use const events for modal and invoke operators. 2013-03-13 09:03:46 +00:00
Campbell Barton
153b63e0fd style cleanup 2013-03-12 21:46:33 +00:00
Irie Shinsuke
5792e77239 Patch [#34373] Use i18n monospace font in Text editor and Python console
This patch allows Blender to display i18n monospace font in the text
editor and the Python interactive console. Wide characters that occupy
multiple columns such as CJK characters can be displayed correctly.
Furthermore, wrapping, selection, suggestion, cursor drawing, and
syntax highlighting should work.

Also fixes a bug [#34543]: In Text Editor false color in comment on cyrillic

To estimate how many columns each character occupies, this patch uses
wcwidth.c written by Markus Kuhn and distributed under MIT-style license:

  http://www.cl.cam.ac.uk/~mgk25/ucs/wcwidth.c

wcwidth.c is stored in extern/wcwidth and used as a static library.

This patch adds new API to blenfont, blenlib and blenkernel:

BLF_get_unifont_mono()
BLF_free_unifont_mono()
BLF_draw_mono()
BLI_wcwidth()
BLI_wcswidth()
BLI_str_utf8_char_width()
BLI_str_utf8_char_width_safe()
txt_utf8_offset_to_column()
txt_utf8_column_to_offset()
2013-03-12 07:25:53 +00:00
Campbell Barton
7d585ed475 patch [#34103] check_for_dupid.patch
from Lawrence D'Oliveiro (ldo)

- more comments
- more uses of bool type
- define symbol for length of in_use array in check_for_dupid
2013-03-10 05:46:24 +00:00
Campbell Barton
ddddb7bab1 code cleanup: favor braces when blocks have mixed brace use. 2013-03-09 03:46:30 +00:00
Campbell Barton
c36f20a7d2 style cleanup 2013-03-08 04:00:06 +00:00
Joshua Leung
ff336aca02 Bugfix [#34560] Wrong angle for text in Horizontal mode of Properties space
Rotation angle for text was still in degrees not radians
2013-03-08 03:42:16 +00:00
Campbell Barton
a816b0b3d2 avoid calling glGetFloatv() twice when UI_RB_ALPHA is enabled with uiRoundBox() 2013-03-07 06:46:50 +00:00
Campbell Barton
dfa8540cdf use bool for rna funcs. 2013-03-07 02:44:55 +00:00
Antony Riakiotakis
53b7bc8f1f Change !BLI_ghashIterator_isDone to BLI_ghashIterator_notDone. It is
always used in that context so we can at least avoid reverting it twice
:p.
2013-03-06 20:55:04 +00:00
Campbell Barton
84aa1dd31c fix for bug where array buttons would use -1 index, causing an out-of-bounds check on an array.
added assert so this wont happen again.
2013-03-06 16:32:05 +00:00
Gaia Clary
f840ac9801 Weight Painting: Added userpref for zero_weight color. 2013-03-05 20:30:38 +00:00
Campbell Barton
65d6cecd68 patch [#34103] storage_bli_dir_contents.patch
from Lawrence D'Oliveiro (ldo) 

BLI_dir_contents no longer changes current working directory.
2013-03-05 04:24:53 +00:00
Campbell Barton
1a9cde8b99 patch [#34103] dir_contents.patch
from Lawrence D'Oliveiro (ldo)

- storage.c: Simplify BLI_dir_contents and make it and its internal subsidiary routines reentrant
- Moved common code for disposal of a struct direntry to new routine BLI_free_filelist in storage.c, and put calls to it in interface_icons.c and filelist.c
- Took out inclusion of BLI_fileops_types.h from BLI_fileops.h and put it explicitly into .c files that need it (which turned out to be only 7 of the 35 files that were including the former)
2013-03-05 03:44:47 +00:00
Sergey Sharybin
495aa863ae Fix for incorrect subpixel precision of marker when using track offset
Issue was caused by the way how pattern sampling happens in case of
anchored display: track offset is applying on search buffer which
means offset is rounding to an integer. Fractional pat of offset was
completely ignoring which lead to jumps in pattern buffer.

This was only a visualization issue in track preview widget.
2013-03-04 18:30:48 +00:00
Campbell Barton
24da4a6032 fix [#34490] Copy and paste floating point number fields losses precision
- copy now gets up to 6 decimal places
- copy and UI float button editing now strip zeros: 1.000 -> 1.0
2013-03-04 04:21:51 +00:00
Thomas Dinges
34b30f8474 Fix for [#34509] minor theme panel color issue
* panelcolors.back and panelcolors.header were missing in resources.c for the 3D View.
2013-03-03 17:30:23 +00:00
Campbell Barton
a02c8c4177 move toggle drag into a UI handler (was modal operator) 2013-03-03 03:29:57 +00:00
Campbell Barton
0ac07404ba style cleanup: braces with multi-line statements, also add some comments. 2013-03-01 14:47:06 +00:00
Ton Roosendaal
032923a9f5 Bug fix #34334
For 2.66a 

Soft shadow was drawing a complete rect, but it should skip the top edge.
That allows transparent menus to still have a shadow too.
2013-03-01 11:42:07 +00:00
Campbell Barton
2de8dfd784 fix for drag-toggle, bit-buttons weren't handled which made drag toggle fail for buttons in the graph editor for eg. 2013-03-01 00:35:01 +00:00
Campbell Barton
3d63b2308a code cleanup: minor refactor of button pressed state checking, needed for drag toggle fix. 2013-03-01 00:19:32 +00:00
Campbell Barton
2398e074d3 fix [#33466] alt + mouse wheel
Alt+Mouse Wheel events depended on the button under the mouse being active, else it would change the current frame.
Button re-activation wasn't 100% reliable since it depends on fake mousemove events.

Now keep button active when its executed if the mouse stays over it.
2013-02-28 11:39:13 +00:00
Joshua Leung
ac6c218cf4 Invalid Driver Targets are now indicated appropriately (using Red Backgrounds)
in the UI

This is the second part of the fixes for [#32492], making it easier to identify
which part of a driver (i.e. which of its targets) is causing problems

A number of additional/related changes needed to be made:
* Red-alert status for layouts is now propagated down to child layouts when they
are created. This is needed as otherwise some of the templates used in the Graph
Editor driver settings won't actually get the red-alert status flushed down to
them. Also, note that this status needs to be set before any widgets are added
to the layout, or else the settings aren't applied when the relevant widgets get
created.

* "Single Property" RNA-Paths resulting in out of bounds array access will now
trigger an error status and appropriate warnings

TODO:
* The error tagging doesn't get applied immediately after variables are created,
or their types changed
* There was also some other weirdness involved when a higher-value flag (1<<10)
was used for this setting, which needs further attention
2013-02-28 07:13:33 +00:00
Ton Roosendaal
2e830d05c4 Report #34450
Fix for 2.66a

Some editors in Blender (Like Graph) have "maxzoom" set to 0, which caused the 
MMB zoom sensitivity to be minimal. That used to be much more responsive, restored
it to how it worked before.
2013-02-27 17:12:57 +00:00
Campbell Barton
d4d45711dc fix for error with drag toggle which showed up with overlapping regions. 2013-02-27 11:26:51 +00:00
Campbell Barton
aa80a69839 enable grabbing for 2d view zooming, good for the graph editor. 2013-02-27 04:59:39 +00:00
Campbell Barton
fcac25e08d simplify drag toggle operator, use BLI_rctf_isect_segment between mouse events rather then many calls to ui_but_find_mouse_over(). 2013-02-26 00:09:26 +00:00
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