Revision: 27105
          
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=27105
Author:   campbellbarton
Date:     2010-02-23 16:34:02 +0100 (Tue, 23 Feb 2010)

Log Message:
-----------
- finally a way to force removal of images (Shift+Click on the X)
- generic modal operator now works with int's

Modified Paths:
--------------
    trunk/blender/release/scripts/op/wm.py
    trunk/blender/source/blender/editors/interface/interface_templates.c
    trunk/blender/source/blender/makesrna/intern/rna_access.c

Modified: trunk/blender/release/scripts/op/wm.py
===================================================================
--- trunk/blender/release/scripts/op/wm.py      2010-02-23 12:48:35 UTC (rev 
27104)
+++ trunk/blender/release/scripts/op/wm.py      2010-02-23 15:34:02 UTC (rev 
27105)
@@ -338,7 +338,10 @@
 
         path_item = self.properties.path_item
         for item, value_orig in self._values.items():
-            exec("item.%s = %s" % (path_item, value_orig + delta))
+            if type(value_orig) == int:
+                exec("item.%s = int(%d)" % (path_item, round(value_orig + 
delta)))
+            else:
+                exec("item.%s = %f" % (path_item, value_orig + delta))
 
     def _values_restore(self):
         path_item = self.properties.path_item

Modified: trunk/blender/source/blender/editors/interface/interface_templates.c
===================================================================
--- trunk/blender/source/blender/editors/interface/interface_templates.c        
2010-02-23 12:48:35 UTC (rev 27104)
+++ trunk/blender/source/blender/editors/interface/interface_templates.c        
2010-02-23 15:34:02 UTC (rev 27105)
@@ -284,6 +284,10 @@
                        memset(&idptr, 0, sizeof(idptr));
                        RNA_property_pointer_set(&template->ptr, 
template->prop, idptr);
                        RNA_property_update(C, &template->ptr, template->prop);
+
+                       if(id && CTX_wm_window(C)->eventstate->shift) /* useful 
hidden functionality, */
+                               id->us= 0;
+
                        break;
                case UI_ID_FAKE_USER:
                        if(id) {
@@ -450,7 +454,7 @@
                        but= uiDefIconButO(block, BUT, unlinkop, 
WM_OP_INVOKE_REGION_WIN, ICON_X, 0, 0, UI_UNIT_X, UI_UNIT_Y, NULL);
                }
                else {
-                       but= uiDefIconBut(block, BUT, 0, ICON_X, 0, 0, 
UI_UNIT_X, UI_UNIT_Y, NULL, 0, 0, 0, 0, NULL);
+                       but= uiDefIconBut(block, BUT, 0, ICON_X, 0, 0, 
UI_UNIT_X, UI_UNIT_Y, NULL, 0, 0, 0, 0, "Unlink datablock, Shift + Click to 
force removal on save");
                        uiButSetNFunc(but, template_id_cb, 
MEM_dupallocN(template), SET_INT_IN_POINTER(UI_ID_DELETE));
 
                        if(RNA_property_flag(template->prop) & PROP_NEVER_NULL)

Modified: trunk/blender/source/blender/makesrna/intern/rna_access.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_access.c   2010-02-23 
12:48:35 UTC (rev 27104)
+++ trunk/blender/source/blender/makesrna/intern/rna_access.c   2010-02-23 
15:34:02 UTC (rev 27105)
@@ -1145,7 +1145,6 @@
 
 int RNA_property_editable_flag(PointerRNA *ptr, PropertyRNA *prop)
 {
-       ID *id= ptr->id.data;
        int flag;
 
        prop= rna_ensure_property(prop);


_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to