[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [13911] trunk/blender/source/blender: * Fix for own big, Adding group objects from the outliner didnt check they were externally linked .
Campbell Barton
ideasman42 at gmail.com
Fri Feb 29 00:14:55 CET 2008
Revision: 13911
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=13911
Author: campbellbarton
Date: 2008-02-29 00:14:55 +0100 (Fri, 29 Feb 2008)
Log Message:
-----------
* Fix for own big, Adding group objects from the outliner didnt check they were externally linked.
* ping "~" in the fileselectors dir will take you to $HOME (non win32)
* Added a file selector for Node output image
Modified Paths:
--------------
trunk/blender/source/blender/include/butspace.h
trunk/blender/source/blender/src/drawnode.c
trunk/blender/source/blender/src/editnode.c
trunk/blender/source/blender/src/filesel.c
trunk/blender/source/blender/src/outliner.c
Modified: trunk/blender/source/blender/include/butspace.h
===================================================================
--- trunk/blender/source/blender/include/butspace.h 2008-02-28 23:12:50 UTC (rev 13910)
+++ trunk/blender/source/blender/include/butspace.h 2008-02-28 23:14:55 UTC (rev 13911)
@@ -787,8 +787,10 @@
#define B_NODE_BUTS 4000
/* 400 slots reserved, we want an exec event for each node */
#define B_NODE_LOADIMAGE 3601
-#define B_NODE_TREE_EXEC 3602
+#define B_NODE_SETIMAGE 3602
+#define B_NODE_TREE_EXEC 3603
+
/* exec should be last in this list */
#define B_NODE_EXEC 3610
Modified: trunk/blender/source/blender/src/drawnode.c
===================================================================
--- trunk/blender/source/blender/src/drawnode.c 2008-02-28 23:12:50 UTC (rev 13910)
+++ trunk/blender/source/blender/src/drawnode.c 2008-02-28 23:14:55 UTC (rev 13911)
@@ -1939,8 +1939,12 @@
uiBlockBeginAlign(block);
+ uiDefIconBut(block, BUT, B_NODE_SETIMAGE, ICON_FILESEL,
+ x, y+60, 20, 20,
+ 0, 0, 0, 0, 0, "Open Fileselect to get Backbuf image");
+
uiDefBut(block, TEX, B_NOP, "",
- x, y+60, w, 20,
+ 20+x, y+60, w-20, 20,
nif->name, 0.0f, 240.0f, 0, 0, "");
uiDefButS(block, MENU, B_NOP, str,
Modified: trunk/blender/source/blender/src/editnode.c
===================================================================
--- trunk/blender/source/blender/src/editnode.c 2008-02-28 23:12:50 UTC (rev 13910)
+++ trunk/blender/source/blender/src/editnode.c 2008-02-28 23:14:55 UTC (rev 13911)
@@ -212,6 +212,13 @@
}
}
+static void set_node_imagepath(char *str) /* called from fileselect */
+{
+ SpaceNode *snode= curarea->spacedata.first;
+ bNode *node= nodeGetActive(snode->edittree);
+ BLI_strncpy(((NodeImageFile *)node->storage)->name, str, sizeof( ((NodeImageFile *)node->storage)->name ));
+}
+
static bNode *snode_get_editgroup(SpaceNode *snode)
{
bNode *gnode;
@@ -288,6 +295,19 @@
}
break;
}
+ case B_NODE_SETIMAGE:
+ {
+ bNode *node= nodeGetActive(snode->edittree);
+ char name[FILE_MAXDIR+FILE_MAXFILE];
+
+ strcpy(name, ((NodeImageFile *)node->storage)->name);
+ if (G.qual & LR_CTRLKEY) {
+ activate_imageselect(FILE_SPECIAL, "SELECT OUTPUT DIR", name, set_node_imagepath);
+ } else {
+ activate_fileselect(FILE_SPECIAL, "SELECT OUTPUT DIR", name, set_node_imagepath);
+ }
+ break;
+ }
case B_NODE_TREE_EXEC:
snode_handle_recalc(snode);
break;
Modified: trunk/blender/source/blender/src/filesel.c
===================================================================
--- trunk/blender/source/blender/src/filesel.c 2008-02-28 23:12:50 UTC (rev 13910)
+++ trunk/blender/source/blender/src/filesel.c 2008-02-28 23:14:55 UTC (rev 13911)
@@ -1528,6 +1528,13 @@
}
else if(event== B_FS_DIRNAME) {
/* reuse the butname variable */
+
+#ifndef WIN32
+ /* convienence shortcut '~' -> $HOME */
+ if ( sfile->dir[0] == '~' && sfile->dir[1] == '\0' ) {
+ BLI_strncpy(sfile->dir, BLI_gethome(), sizeof(sfile->dir) );
+ }
+#endif
BLI_cleanup_dir(G.sce, sfile->dir);
BLI_make_file_string(G.sce, butname, sfile->dir, "");
Modified: trunk/blender/source/blender/src/outliner.c
===================================================================
--- trunk/blender/source/blender/src/outliner.c 2008-02-28 23:12:50 UTC (rev 13910)
+++ trunk/blender/source/blender/src/outliner.c 2008-02-28 23:14:55 UTC (rev 13911)
@@ -2683,7 +2683,6 @@
base->object->flag |= SELECT;
base->flag |= SELECT;
} else {
-
/* link to scene */
base= MEM_callocN( sizeof(Base), "add_base");
BLI_addhead(&G.scene->base, base);
@@ -2691,6 +2690,7 @@
gob->ob->flag |= SELECT;
base->flag = gob->ob->flag;
base->object= gob->ob;
+ id_lib_extern((ID *)gob->ob); /* incase these are from a linked group */
}
}
}
More information about the Bf-blender-cvs
mailing list