Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2012-10-26 14:54:02 +0400
committerCampbell Barton <ideasman42@gmail.com>2012-10-26 14:54:02 +0400
commit0e3de1df4bee62d12a347e74216afa2b42632070 (patch)
treeb4f1d537f5aed407f91371d008a82a1e9ea8ded8
parent0e6f8e3e25d9c48501c12cdb56bc78868b568ff5 (diff)
fix [#31661] Custom properties do no respect min/max values
also renamed function added prev commit
-rw-r--r--release/scripts/startup/bl_operators/wm.py10
-rw-r--r--source/blender/python/BPY_extern.h2
-rw-r--r--source/blender/python/intern/bpy_interface.c2
-rw-r--r--source/blender/render/intern/source/external_engine.c2
-rw-r--r--source/blender/windowmanager/intern/wm.c2
5 files changed, 12 insertions, 6 deletions
diff --git a/release/scripts/startup/bl_operators/wm.py b/release/scripts/startup/bl_operators/wm.py
index ac72b39a04d..5cc041476c9 100644
--- a/release/scripts/startup/bl_operators/wm.py
+++ b/release/scripts/startup/bl_operators/wm.py
@@ -1124,9 +1124,15 @@ class WM_OT_properties_add(Operator):
return prop_new
- property = unique_name(item.keys())
+ prop = unique_name(item.keys())
+
+ item[prop] = 1.0
+
+ # not essential, but without this we get [#31661]
+ prop_ui = rna_idprop_ui_prop_get(item, prop)
+ prop_ui["soft_min"] = prop_ui["min"] = 0.0
+ prop_ui["soft_max"] = prop_ui["max"] = 1.0
- item[property] = 1.0
return {'FINISHED'}
diff --git a/source/blender/python/BPY_extern.h b/source/blender/python/BPY_extern.h
index 53bd128562a..9bd45d2b759 100644
--- a/source/blender/python/BPY_extern.h
+++ b/source/blender/python/BPY_extern.h
@@ -80,7 +80,7 @@ int BPY_button_exec(struct bContext *C, const char *expr, double *value, const
int BPY_string_exec(struct bContext *C, const char *expr);
void BPY_DECREF(void *pyob_ptr); /* Py_DECREF() */
-void BPY_RNA_DECREF_INVALIDATE(void *pyob_ptr);
+void BPY_DECREF_RNA_INVALIDATE(void *pyob_ptr);
int BPY_context_member_get(struct bContext *C, const char *member, struct bContextDataResult *result);
void BPY_context_set(struct bContext *C);
void BPY_context_update(struct bContext *C);
diff --git a/source/blender/python/intern/bpy_interface.c b/source/blender/python/intern/bpy_interface.c
index 39621fcf390..94cbee383ea 100644
--- a/source/blender/python/intern/bpy_interface.c
+++ b/source/blender/python/intern/bpy_interface.c
@@ -510,7 +510,7 @@ void BPY_DECREF(void *pyob_ptr)
PyGILState_Release(gilstate);
}
-void BPY_RNA_DECREF_INVALIDATE(void *pyob_ptr)
+void BPY_DECREF_RNA_INVALIDATE(void *pyob_ptr)
{
PyGILState_STATE gilstate = PyGILState_Ensure();
const int do_invalidate = (Py_REFCNT((PyObject *)pyob_ptr) > 1);
diff --git a/source/blender/render/intern/source/external_engine.c b/source/blender/render/intern/source/external_engine.c
index 9647b100d2d..94146467145 100644
--- a/source/blender/render/intern/source/external_engine.c
+++ b/source/blender/render/intern/source/external_engine.c
@@ -138,7 +138,7 @@ void RE_engine_free(RenderEngine *engine)
{
#ifdef WITH_PYTHON
if (engine->py_instance) {
- BPY_RNA_DECREF_INVALIDATE(engine->py_instance);
+ BPY_DECREF_RNA_INVALIDATE(engine->py_instance);
}
#endif
diff --git a/source/blender/windowmanager/intern/wm.c b/source/blender/windowmanager/intern/wm.c
index fa00ec63b31..8fe387765ce 100644
--- a/source/blender/windowmanager/intern/wm.c
+++ b/source/blender/windowmanager/intern/wm.c
@@ -78,7 +78,7 @@ void WM_operator_free(wmOperator *op)
if (op->py_instance) {
/* do this first in case there are any __del__ functions or
* similar that use properties */
- BPY_RNA_DECREF_INVALIDATE(op->py_instance);
+ BPY_DECREF_RNA_INVALIDATE(op->py_instance);
}
#endif