Commit Graph

857 Commits

Author SHA1 Message Date
Bastien Montagne 462e4bee87 More tweaks (gaining about ten seconds for each po in update branches process!). 2013-03-01 14:28:38 +00:00
Bastien Montagne 1039135965 More UI messages fixes... 2013-02-28 15:31:20 +00:00
Bastien Montagne 4238d6d758 Various small enhancements/fixes.
Most notable difference from now on will be that all py is handled from current blender's resource dirs, no more from source dir. Better for consistency, and avoid e.g. cycles' addon to be checked twice...
2013-02-27 16:24:20 +00:00
Campbell Barton 8558fdd4c7 patch [#34437] Fix text editor bug: ctrl+F is not configurable
in fact the keymap editor was missing other keymaps so added these too,
also updated keymap checker to make sure there is no mismatch with region/space types.
2013-02-26 05:22:04 +00:00
Bastien Montagne 095062f0c5 Tame that stupid py code not to eat existing fuzzies in po’s when updating from POT file! 2013-02-25 16:06:59 +00:00
Campbell Barton 83e53afb18 patch [#34380] Fix Python console bug: "autocomplete" doesn't advance cursor properly when completion includes UTF8 characters
from Shinsuke Irie (irie)
2013-02-24 21:51:48 +00:00
Bastien Montagne b1543f07bf Another bunch of UI translation fixes, thanks to Leon Cheung, Gabriel Gazzán and S. Lockal for spotting them! 2013-02-24 15:40:28 +00:00
Bastien Montagne 2c348d003e Big i18n tools update, I/II.
Notes:
* Everything is still a bit raw and sometimes hackish.
* Not every feature implemented yet.
* A bunch of cleanup is still needed.
* Doc needs to be updated too!
2013-02-24 08:50:55 +00:00
Bastien Montagne de26f59220 Add CTX_wm_operator_poll_msg_set as auto-detected func for translations. 2013-02-19 15:47:30 +00:00
Sergey Sharybin 58c9691d19 Correction to own r44749 -- layers from view were always used,
shall use active layer now for real.
2013-02-18 17:51:07 +00:00
Campbell Barton 4cd487d731 checking for V3D_LOCAL was duplicated in transform.c, and both checks not quite correct.
- When checking edimode, make sure its mesh editmode.
- Graph editor supports this option but wasn't being checked.
2013-02-18 15:47:13 +00:00
Campbell Barton 4ae3a28fcb fix bpy_extras.mesh_utils.edge_face_count_dict() helper api function.
it was using tessfaces when theres no need to.
2013-02-18 14:52:49 +00:00
Bastien Montagne 3de87ebf64 Minor fix... 2013-02-17 15:04:56 +00:00
Bastien Montagne 7cdff04f9f Fixes for BMO_error_raise extraction regex, and add hindi to "active" translations.
Also enhanced the ugly py ast parsing code, so that it now can handle (up to some extent) "name" function nodes, and add bpy.app.translations.pgettext func familly to extracted ones...

This ast py parsing becomes more and more ugly, should probably try to refactor it a bit. :/
2013-02-17 14:00:40 +00:00
Bastien Montagne 207dca55f4 And more UI messages issues fixing... Thanks again to Gabriel Gazzán and Leon Cheung! 2013-02-15 18:19:20 +00:00
Bastien Montagne 5078174f07 New Hindi translation... 2013-02-14 14:41:04 +00:00
Bastien Montagne f6624aaacd Gah, forgot some ugly print... 2013-02-13 21:56:12 +00:00
Bastien Montagne f2d9fc7e25 Update to how similar messages matching is handled when updating po files from pot one (gain something like 20% in heavy update situations, and save a nice bunch of memory!). 2013-02-12 17:32:54 +00:00
Bastien Montagne 08cf8865aa And we now have a valid korean translation! 2013-02-12 14:36:08 +00:00
Campbell Barton 3b8a0f3d67 use import rather then assignment for loading '_' into scripts. 2013-02-10 09:56:05 +00:00
Campbell Barton a643d28446 Update translation extractor so ternary expressions are not merged.
eg: ("A" if test else "B")
2013-02-10 07:11:32 +00:00
Bastien Montagne a4a1c66725 Better to return default op context when we can't find a given operator (e.g. console toggling under linux does not exists). 2013-02-09 18:47:40 +00:00
Bastien Montagne e14b21dd6d Updated py ui message extraction, to find out contexts as much as possible... 2013-02-09 18:32:00 +00:00
Campbell Barton d26c063121 disable translations for some python buttons. 2013-02-08 16:41:02 +00:00
Campbell Barton 560c022af9 patch [#34163] "Zoom" in Python console startup message
from Shinsuke Irie (irie)
2013-02-08 10:15:44 +00:00
Campbell Barton 4b8fe80e6e code cleanup: use exist_ok keyword arg to os.makedirs() rather then checking if the dir exists first. 2013-02-07 04:02:24 +00:00
Brecht Van Lommel 8e740e9797 Fix #34016: add backwards compatibility for deprecated region.callback_add
python function, this keep addons working. It's better to use the new function
but might as well avoid breaking compatibility here.
2013-01-29 21:34:58 +00:00
Bastien Montagne 97a5cd92bc Some optimization (their is much more possible here, but it will have to wait for complete refactor I’m working on currently). 2013-01-29 08:34:26 +00:00
Bastien Montagne a2e55171fe Bunch of fixes for UI messages.
Also generate rigid body constraint types in py bullet code from RNA enum values (simpler than having to sync the code when something is changed here!).

Side note: RNA API about icons still needs to expose icons for enum values, and conversion funcs between icon_name and icon_value!
2013-01-27 18:14:24 +00:00
Campbell Barton 4544c234f5 fix [#29950] Linked proxy armature object properties can't be edited 2013-01-23 06:09:53 +00:00
Bastien Montagne bcdbc57994 Usual minor UI messages fixes... 2013-01-21 16:25:25 +00:00
Joshua Leung 53de752858 Bugfix [#33946] Bake Action fails in SVN for Objects
The problems here were caused by a cleanup commit (r. 53369).
BTW, the code here is pretty convoluted mess.
2013-01-21 02:40:51 +00:00
Campbell Barton 97d62f0183 style cleanup 2013-01-15 23:15:32 +00:00
Campbell Barton 039db0906d add user_preference access to _RestrictContext() so addons can access their own preferences on load. 2013-01-15 17:20:52 +00:00
Campbell Barton a404e3f780 fix issue reported in '[#33876] bpy.path.ensure_ext adds extension twice / extra period if filename empty, just a period or equal to extension'
For python operators that used the ExportHelper mix-in class, an empty file field would become '.ext', entering and existing the text field would become '.ext.ext',
Now only add an extension if the filename part of the path is set, so '.ext' will still become '.ext.ext' but having only the extension isn't so likely to happen in the first place now.

This is a different fix then the changes suggested in the report but I'd prefer to keep path functions stupid+predictable.
2013-01-15 04:33:08 +00:00
Bastien Montagne 819a75113e Some fixes:
* handle nicely multiple empty lines in po files (still have to figure out why po writer sometime output two lines instead of one!)
* fix rtl processing!
2013-01-14 21:41:21 +00:00
Campbell Barton 3475f5137a fix fox AddonPreferences not getting registered automatically and leak when removing the addon (wasnt freeing ID-props). 2013-01-14 10:36:43 +00:00
Bastien Montagne 884d7caa24 Minor updates:
*Made branches' po update multi-process!
*0.8 looks a bit too much a "similarity cutoff" value for messages, changed to 0.75.
2013-01-13 17:43:04 +00:00
Bastien Montagne cdb5e557b0 Grumph, going quicker than the music! :P 2013-01-13 14:36:50 +00:00
Bastien Montagne 55e3912f25 Big refactor of bl_i18n_utils, switching to an object-based model. Still a bit wip.
Notes:
* Most tools here have been updated, only a few (unused :p ) features should be missing. But some updates are rough for now, and performances are globally worse currently, will address this later (this is only really noticeable when you work over the whole repo, anyway ;) ).
* This update breaks "edit translations" addon, will fix it later, once core (i.e. this module) is considered stable again!
2013-01-12 16:49:06 +00:00
Bastien Montagne 0e676bf50b Adding Uzbek language 2013-01-04 18:19:07 +00:00
Campbell Barton 9dbe85c17e expose common extensions for image/movie/audio types, since python scripts had to do this internally.
- bpy.path.extensions_image
- bpy.path.extensions_movie
- bpy.path.extensions_audio

eg:

  if os.path.splitext(filename)[1].lower() in bpy.path.extensions_image:
      ... we have an image ...
2013-01-04 03:47:37 +00:00
Campbell Barton ea2224e28d changes needed for EDL import to work again.
- add sequence.update(data=False) function.
- made some sequence vars editable.
- correct some comments.

also rename rna function sequence.getStripElem() --> strip_elem_from_frame()
2013-01-02 16:15:45 +00:00
Bastien Montagne b3aa368c8f Usual UI messages-related fixes... 2012-12-30 23:21:33 +00:00
Thomas Dinges f098407f02 i18 Spell check:
* Wrong comma sequence in spell_check_utils.py
2012-12-28 20:32:29 +00:00
Bastien Montagne c587c985e8 Fix [#33424] Inadequate bake action.
bake_action tries to make kind of a 'visual keying'... On one side, this is rather stupid when you keep constraints (in this case, keying actual loc/rot/scale transforms, i.e. matrix_basis, is enough, doing more would lead to unexpected behavior with some constraints). On the other one, making a good visual keying of bones is *really* tricky, so now using the new object's convert_space() func to compute that (when the user chooses to remove the constraints).

Incidentally, this greatly simplifies the code of bake_action!
2012-12-28 13:34:19 +00:00
Bastien Montagne 7504cf34b4 This commit frees list ui items from their dependencies to Panel, and hence from all the limitations this implied (mostly, the "only one list per panel" one).
It introduces a new (py-extendable and registrable) RNA type, UIList (roughly similar to Panel one), which currently contains only "standard" list's scroll pos and size (but may be expended to include e.g. some filtering data, etc.). This now makes lists completely independent from Panels!

This UIList has a draw_item callback which allows to customize items' drawing from python, that all addons can now use. Incidentally, this also greatly simplifies the C code of this widget, as we do not code any "special case" here anymore!

To make all this work, other changes were also necessary:

* Now all buttons (uiBut struct) have a 'custom_data' void pointer, used currently to store the uiList struct associated with a given uiLayoutListBox.

* DynamicPaintSurface now exposes a new bool, use_color_preview (readonly), saying whether that surface has some 3D view preview data or not.

* UILayout class has now four new (static) functions, to get the actual icon of any RNA object (important e.g. with materials or textures), and to get an enum item's UI name, description and icon.

* UILayout's label() func now takes an optional 'icon_value' integer parameter, which if not zero will override the 'icon' one (mandatory to use "custom" icons as generated for material/texture/... previews).
  Note: not sure whether we should add that one to all UILayout's prop funcs?

Note: will update addons using template list asap.
2012-12-28 09:20:16 +00:00
Bastien Montagne f339c63584 We now have some Catalan, but no Amharic nor Estonian yet! 2012-12-24 17:55:00 +00:00
Bastien Montagne ec4fc2e132 Usual minor UI messages tweaks... 2012-12-24 17:40:47 +00:00
Campbell Barton f25618f29a make Node.links return a tuple, this may you can't do socket.links.append() by mistake.
removed RNAMeta mixin class since you cant register subclasses.

also some minor code cleanup
2012-12-21 12:16:13 +00:00