Commit Graph

849 Commits

Author SHA1 Message Date
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
Lukas Toenne
74ea6d93da Explicit python class for NodeSocket RNA type in bpy_types. This defines a utility property for getting links to or from a node socket, as discussed on bf-committers:
http://lists.blender.org/pipermail/bf-committers/2012-December/038555.html

Note: NodeTree and Node currently use standard python classes generated by bpy for now. The customnodes branch defines such classes as well, with specialized metaclasses for use with ID properties. Not needed in trunk yet.
2012-12-21 11:31:59 +00:00
Campbell Barton
423994bf39 py api: add restrict state context manager (thats python's context not blenders context),
which restricts bpy.context and bpy.data.

enable this for loading scripts in 'startup' too.
2012-12-20 03:56:22 +00:00
Campbell Barton
ef665b3d18 dissallow access to the context while addons import and register.
Since the window manager is needed for keymaps this is kept as an exception.

some addons will need updating, but in every case I've seen addons should not be accessing the context while registering.
(bad stuff! - declaring the scene as a global variable - which crashes when the users loads a new file, manipulating the active object or scene... tsk tsk)
2012-12-19 07:27:23 +00:00
Bastien Montagne
b7e3967134 Adding Amharic (i.e. ethiopic) language. 2012-12-18 09:13:04 +00:00
Bastien Montagne
cfd6282a80 Minor update to i18n spell check stuff... 2012-12-17 20:32:25 +00:00
Campbell Barton
15634fd22e fix for sequence size mismatch when loading themes, addition of alpha channel caused themes not to load. 2012-12-13 09:46:24 +00:00
Campbell Barton
7c2e4e28ba bpy.ops module/caller classes incorrectly had __keys__ rather then __slots__.
also added comments about texface drawing when theres no origindex.
2012-12-06 03:09:06 +00:00
Campbell Barton
0b9be70591 typo's and some style cleanup, also added asserts into BLI_vsnprintf and BLI_sprintfN when invalid args are given. 2012-11-28 06:43:04 +00:00