Commit Graph

342 Commits

Author SHA1 Message Date
92450a29fb Fix #35157: export key configuration did not export text input events correctly. 2013-05-02 19:43:52 +00:00
bc511df3da Small fix to previous commit: temp buffer for translation context needs to be initialized to relevant default value for operators... Also fixed not initializing those buffers in macro register function. 2013-03-15 15:12:46 +00:00
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
aaa8a13c49 code cleanup: use const events for modal and invoke operators. 2013-03-13 09:03:46 +00:00
dfa8540cdf use bool for rna funcs. 2013-03-07 02:44:55 +00:00
761b380b84 fix [#33841] Disabling and re-enabling live addon crashes blender (modal/draw handler) 2013-01-22 06:16:49 +00:00
cef730d969 Python i18n API. Many thanks to Campbell and Brecht for the reviews and suggestions!
This commit adds:
* A new bpy.app.translations module giving some info about locales/translation stuff (current active locale, all locales currently known by blender, all translation contexts currently defined, etc.).

* The ability for addons to feature translations, using the (un)register functions of above module.

* Also cleans up "translate py string when storing into RNA prop" by removing "PROP_TRANSLATE" string's subtype, and adding a PROP_STRING_PY_TRANSLATE flag instead (this way it is no more exposed to python...).

Addon translations work with py dictionaries: each addon features a dict {lang: {(context, message): translation, ...}, ...}, which is registered when the addon is enabled (and unregistered when disabled). 

Then, when a key (context, message) is not found in regular mo catalog, a cache dict for current locale is built from all registered addon translations, and key is searched in it.

Note: currently addons writers have to do all the work by hand, will add something (probably extend "edit translation" addon) to automate messages extraction from addons soon(ish)! To get a look to expected behavior from addons, have a look at render_copy_settings/__init__.py and render_copy_settings/translations.py (rather stupid example currently, but...). Once we have a complete process, I'll also update relevant wiki pages.
2013-01-20 17:29:07 +00:00
cecbb3498b add RNA_def_struct_ptr(...) to use for runtime struct registration, saves over 2000 string lookups on startup and gives overall ~10% speedup for starting blender on my system. 2013-01-09 05:32:15 +00:00
5ee3cd6c86 Remove some uneeded/irrelevant "PROP_TRANSLATE".
This sub-type is actually *only* needed for the "text" property of UI rna api (maybe we should rename it to "PROP_PY_TRANSLATE", as it is anyway only 'active' during conversion from py string to RNA string property...). In fact, I think it should only be used in RNA func properties anyway, as it stores the translated string into the property, it should only be used with "one time" RNA stuff...
2013-01-05 13:52:41 +00:00
5fcb12d754 changing RNA properties now prints python script in the info view.
next will add context so bpy.data.xxx[id] are not used for all references.
2012-12-18 15:22:06 +00:00
1e5cc7c51b RNA: add Window x/y position and size access. 2012-12-11 14:39:30 +00:00
cf6994b910 code cleanup: spelling,
also initialize bmesh-bevel settings struct to zero to avoid possible uninitialized memory later.
2012-11-12 07:33:01 +00:00
ebdc9056af Fix for #29056: NDOF motion events not configurable in user preferences. 2012-10-31 11:31:25 +00:00
d24aaf5958 Fix for a nasty (and dangerous, buffer overflow) bug that quite oddly seems to have never shown its ugly face until today (at least for me)... It was revealed by mocap's addon stupidly long operators label names (fix comming in next commit): the rna_Operator_bl_idname_set() and rna_Operator_bl_label_set() were clamping there string copy to RNA_DYN_DESCR_MAX instead of OP_MAX_TYPENAME! 2012-10-26 14:45:56 +00:00
0e494b74c4 style cleanup 2012-10-26 04:14:10 +00:00
26d0492653 A final bunch of UI messages fixes and tweaks, and some BKE_report()<->BKE_reportf() fixes. 2012-10-21 14:02:30 +00:00
18fa7589ef add comment about misuse of enum set function. 2012-10-20 14:16:56 +00:00
add48983ca Bugfix #32641
User preferences, keymap editor: it allowed to set any event for "key modifier", and not
even to NULL the option. Now it limits to keyboard events, on mouseclicks it clears,
on ESC it exits without changes.
2012-10-20 14:13:14 +00:00
b50fc8ac68 More UI messages fixes.
Also forgot to translate reports' titles, and change some usages of BKE_reportf to simple BKE_report, when the former is not needed!
2012-10-13 15:44:50 +00:00
89d6cc7e23 Make "name" member of RNA KeymapItem struct return the translated name of the underlying operator. Else, op names are usually not translated in keymap part of the user preferences! Thx to Miklós Pomsár for pointing this bug. :) 2012-09-22 20:07:30 +00:00
6c1da4d022 code cleanup: make many functions static 2012-09-22 14:07:55 +00:00
558721ab59 More spell checking. 2012-07-04 15:04:38 +00:00
3d55cf64cb Fix #31591: info header reports missing with custom key configuration due to
wrong keymap timer writing, some timer types were missing.
2012-05-29 15:04:11 +00:00
3896ad4cbb code cleanup: spelling 2012-05-20 21:23:26 +00:00
a9f6e54384 style cleanup: mostly whitespace in rna 2012-05-12 11:01:29 +00:00
b340f930ec style cleanup: changes to brace placement / newlines - for/while/if/switch 2012-04-28 06:31:57 +00:00
e9f1ea691c Fix #30570: UI issue editing modal keymaps below operators using them. 2012-04-17 16:21:13 +00:00
c4ce26c906 Address [#30842] Blenders Measurement Units set to Metric, makes some Precision Flaws.
use the same precision for location all over (2-5 was used), use define as 5.

also disallow boolean to have any subtype besides PROP_LAYER_MEMBER, some booleans had TRANSLATION / XYZ subtypes which don't make sense.
2012-04-10 08:33:30 +00:00
9a6a791ff0 fix [#30865] Crash when browsing last operators in outliner (or by Python API)
Operator descriptions can be NULL pointers,
fix this by making use of PROP_NEVER_NULL flag, when its not set, generated string funcs will test for NULL.
2012-04-09 04:39:47 +00:00
ed43b652ee Code style edits (mostly spliting long lines, and removing trailing spaces).
Note about long lines: I did not touch to two pieces of code (because I don’t see any way to keep a nicely formated, compact code, with shorter lines):
* The node types definitions into rna_nodetree_types.h
* The vgroup name functions into rna_particle.c
2012-03-18 09:27:36 +00:00
4f19c1a995 spelling cleanup 2012-03-18 07:38:51 +00:00
89a963fb7f style cleanup: comment blocks 2012-03-09 18:28:30 +00:00
4f7bdc59d3 style cleanup: spelling.
also remove large, duplicate comments from sunsky.h
2012-03-09 00:41:09 +00:00
0114d78c33 Code cleanup in rna files (huge, higly automated with py script).
Addresses:
* C++ comments.
* Spaces after if/for/while/switch statements.
* Spaces around assignment operators.
2012-03-05 23:30:41 +00:00
8600c8df43 ndof button handling improvements: Spaceball5000's A,B,C buttons can now be keymapped, ndof modifiers (shift,alt,etc.) are almost ready but still hardcoded to act like keyboard for now. added a check to prevent crash on Linux when device is plugged in after blender starts. also fixed a bug introduced by my last commit that affected the SpaceTraveler and serial devices. 2012-02-29 02:44:08 +00:00
49adbe3ab8 Various fixes to UI messages (among other things, all messages needed it should now be capitalized). 2012-02-27 18:14:56 +00:00
eb44d1d0e8 Typo in previous own commit. 2012-02-16 15:55:23 +00:00
251822126c Clear PROP_TRANSLATE flag for Macro Operator's bl_label as well. 2012-02-16 15:53:44 +00:00
ec7498ce0b Reverting changes in commit r43458.
That was intended change to clear PROP_TRANSLATE flag from bl_label property of
operators, panels and menus (see rev40570)

If this flag leads to another issues it should be fixed in another way.

This fixes #30210: International Font Problem
2012-02-16 15:53:30 +00:00
3af2f8a50d Fix [#30122] "Tweak" mouse event values were not loaded from keymap files.
The problem was, those values were not included in the event type agnostic event_value_items list, hence RNA keymap item creation just ignored them.
2012-02-11 14:50:26 +00:00
8f01ad9bf8 Fix #29056: keymapping NDOF motion events not working correct. Motion even type
was missing in python.
2012-02-02 13:35:19 +00:00
697e77a494 fix [#29666] Duplicate entries in bpy.types
Python operator subclasses and operator types each get their own SRNA, causing double ups for bpy.types.__dir__()

From the operator type - these share names.
* ot->ext.srna
* ot->srna

Note that this conflict is still there, this only disables 'ot->ext.srna' from being included in dir(bpy.types).
2012-02-02 04:43:35 +00:00
309f3f31e7 remove redundant trailing slashes 2012-01-12 06:11:08 +00:00
f403d9a2b1 replace rna description string limits with rna define RNA_DYN_DESCR_MAX 2011-11-15 15:24:57 +00:00
8623935aa8 pass a pointer to IDP_New's IDPropertyTemplate rather then a copy. 2011-11-15 09:22:52 +00:00
49ccf975f2 minor cleanup
- use NULL rather then 0 for pointers
- use static functions where possible
- add own includes to ensure func's and their declarations don't get out of sync.
2011-11-14 16:05:44 +00:00
e5647ea196 py operators - don't use the screen as an operators ID anymore, screen's don't store operator instances and operator functions have access to the context if they need the current screen.
also add some more py api file descriptions.
2011-11-05 08:40:07 +00:00
92fe279fe6 quiet -Wempty-body and unused warnings 2011-10-26 21:30:08 +00:00
4a04f72069 remove $Id: tags after discussion on the mailign list: http://markmail.org/message/fp7ozcywxum3ar7n 2011-10-23 17:52:20 +00:00
e89107927b - fix for error with utf8 textinput for buttons
- ensure input is valid utf8 from ghost and NULL then complain if its not.
- added function to get utf8 size BLI_str_utf8_size()
2011-10-23 13:52:51 +00:00