Cleanup: happily remove no-more-used PY_TRANSLATE RNA prop flag, and related code (just realized that flag value was wrong, probably own typo in a previous commit :/ ).

That "trick" was nice when introduced, but it became kind of a pita since we added translation contexts...
This commit is contained in:
2013-02-08 15:16:57 +00:00
parent e6cd9ea087
commit 95b28a65f3
5 changed files with 3 additions and 35 deletions

View File

@@ -46,8 +46,8 @@
typedef bool _BLI_Bool; typedef bool _BLI_Bool;
# else # else
/* using char here may cause nasty tricky bugs, e.g. /* using char here may cause nasty tricky bugs, e.g.
* bool do_translate = RNA_property_flag(prop) & PROP_STRING_PY_TRANSLATE; * bool is_bit_flag = RNA_property_flag(prop) & PROP_ENUM_FLAG;
* as PROP_STRING_PY_TRANSLATE is farther than 8th bit, do_translate would be always false! * as PROP_ENUM_FLAG is farther than 8th bit, do_translate would be always false!
*/ */
# define _BLI_Bool unsigned int # define _BLI_Bool unsigned int
# endif # endif

View File

@@ -88,7 +88,6 @@ PropertyRNA *RNA_def_string(StructOrFunctionRNA *cont, const char *identifier, c
PropertyRNA *RNA_def_string_file_path(StructOrFunctionRNA *cont, const char *identifier, const char *default_value, int maxlen, const char *ui_name, const char *ui_description); PropertyRNA *RNA_def_string_file_path(StructOrFunctionRNA *cont, const char *identifier, const char *default_value, int maxlen, const char *ui_name, const char *ui_description);
PropertyRNA *RNA_def_string_dir_path(StructOrFunctionRNA *cont, const char *identifier, const char *default_value, int maxlen, const char *ui_name, const char *ui_description); PropertyRNA *RNA_def_string_dir_path(StructOrFunctionRNA *cont, const char *identifier, const char *default_value, int maxlen, const char *ui_name, const char *ui_description);
PropertyRNA *RNA_def_string_file_name(StructOrFunctionRNA *cont, const char *identifier, const char *default_value, int maxlen, const char *ui_name, const char *ui_description); PropertyRNA *RNA_def_string_file_name(StructOrFunctionRNA *cont, const char *identifier, const char *default_value, int maxlen, const char *ui_name, const char *ui_description);
PropertyRNA *RNA_def_string_py_translate(StructOrFunctionRNA *cont, const char *identifier, const char *default_value, int maxlen, const char *ui_name, const char *ui_description);
PropertyRNA *RNA_def_enum(StructOrFunctionRNA *cont, const char *identifier, const EnumPropertyItem *items, int default_value, const char *ui_name, const char *ui_description); PropertyRNA *RNA_def_enum(StructOrFunctionRNA *cont, const char *identifier, const EnumPropertyItem *items, int default_value, const char *ui_name, const char *ui_description);
PropertyRNA *RNA_def_enum_flag(StructOrFunctionRNA *cont, const char *identifier, const EnumPropertyItem *items, int default_value, const char *ui_name, const char *ui_description); PropertyRNA *RNA_def_enum_flag(StructOrFunctionRNA *cont, const char *identifier, const EnumPropertyItem *items, int default_value, const char *ui_name, const char *ui_description);

View File

@@ -143,7 +143,7 @@ typedef enum PropertySubType {
} PropertySubType; } PropertySubType;
/* Make sure enums are updated with thses */ /* Make sure enums are updated with thses */
/* HIGHEST FLAG IN USE: 1 << 29 */ /* HIGHEST FLAG IN USE: 1 << 28 */
typedef enum PropertyFlag { typedef enum PropertyFlag {
/* editable means the property is editable in the user /* editable means the property is editable in the user
* interface, properties are editable by default except * interface, properties are editable by default except
@@ -200,11 +200,6 @@ typedef enum PropertyFlag {
*/ */
PROP_ENUM_FLAG = (1 << 21), PROP_ENUM_FLAG = (1 << 21),
/* A string which should be translated when converting from py string to RNA prop.
* Should only be used in some functions' properties (currently only "text" one of funcs in UI API).
*/
PROP_STRING_PY_TRANSLATE = (1 << 28),
/* need context for update function */ /* need context for update function */
PROP_CONTEXT_UPDATE = (1 << 22), PROP_CONTEXT_UPDATE = (1 << 22),
PROP_CONTEXT_PROPERTY_UPDATE = (1 << 22) | (1 << 27), PROP_CONTEXT_PROPERTY_UPDATE = (1 << 22) | (1 << 27),

View File

@@ -2574,21 +2574,6 @@ PropertyRNA *RNA_def_string_file_name(StructOrFunctionRNA *cont_, const char *id
return prop; return prop;
} }
PropertyRNA *RNA_def_string_py_translate(StructOrFunctionRNA *cont_, const char *identifier, const char *default_value,
int maxlen, const char *ui_name, const char *ui_description)
{
ContainerRNA *cont = cont_;
PropertyRNA *prop;
prop = RNA_def_property(cont, identifier, PROP_STRING, PROP_NONE);
RNA_def_property_flag(prop, PROP_STRING_PY_TRANSLATE);
if (maxlen != 0) RNA_def_property_string_maxlength(prop, maxlen);
if (default_value) RNA_def_property_string_default(prop, default_value);
RNA_def_property_ui_text(prop, ui_name, ui_description);
return prop;
}
PropertyRNA *RNA_def_enum(StructOrFunctionRNA *cont_, const char *identifier, const EnumPropertyItem *items, PropertyRNA *RNA_def_enum(StructOrFunctionRNA *cont_, const char *identifier, const EnumPropertyItem *items,
int default_value, const char *ui_name, const char *ui_description) int default_value, const char *ui_name, const char *ui_description)
{ {

View File

@@ -1624,10 +1624,6 @@ static int pyrna_py_to_prop(PointerRNA *ptr, PropertyRNA *prop, void *data, PyOb
} }
else { else {
/* Unicode String */ /* Unicode String */
#ifdef WITH_INTERNATIONAL
bool do_translate = RNA_property_flag(prop) & PROP_STRING_PY_TRANSLATE;
#endif /* WITH_INTERNATIONAL */
#ifdef USE_STRING_COERCE #ifdef USE_STRING_COERCE
PyObject *value_coerce = NULL; PyObject *value_coerce = NULL;
if (ELEM3(subtype, PROP_FILEPATH, PROP_DIRPATH, PROP_FILENAME)) { if (ELEM3(subtype, PROP_FILEPATH, PROP_DIRPATH, PROP_FILENAME)) {
@@ -1641,13 +1637,6 @@ static int pyrna_py_to_prop(PointerRNA *ptr, PropertyRNA *prop, void *data, PyOb
param = _PyUnicode_AsString(value); param = _PyUnicode_AsString(value);
#endif /* USE_STRING_COERCE */ #endif /* USE_STRING_COERCE */
/* Any half-brained compiler should be able to optimize this out when WITH_INTERNATIONAL is off */
#ifdef WITH_INTERNATIONAL
if (do_translate) {
param = IFACE_(param);
}
#endif
if (param == NULL) { if (param == NULL) {
if (PyUnicode_Check(value)) { if (PyUnicode_Check(value)) {
/* there was an error assigning a string type, /* there was an error assigning a string type,