[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [18134] branches/blender2.5/blender/source /blender/editors/space_node: 2.5 / Nodes
Nathan Letwory
jesterking at letwory.net
Mon Dec 29 01:55:25 CET 2008
Revision: 18134
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=18134
Author: jesterking
Date: 2008-12-29 01:55:23 +0100 (Mon, 29 Dec 2008)
Log Message:
-----------
2.5 / Nodes
* enable more code (button callbacks, will probably undergo revision)
Modified Paths:
--------------
branches/blender2.5/blender/source/blender/editors/space_node/SConscript
branches/blender2.5/blender/source/blender/editors/space_node/drawnode.c
branches/blender2.5/blender/source/blender/editors/space_node/node_draw.c
branches/blender2.5/blender/source/blender/editors/space_node/node_header.c
branches/blender2.5/blender/source/blender/editors/space_node/node_intern.h
branches/blender2.5/blender/source/blender/editors/space_node/space_node.c
Modified: branches/blender2.5/blender/source/blender/editors/space_node/SConscript
===================================================================
--- branches/blender2.5/blender/source/blender/editors/space_node/SConscript 2008-12-29 00:45:00 UTC (rev 18133)
+++ branches/blender2.5/blender/source/blender/editors/space_node/SConscript 2008-12-29 00:55:23 UTC (rev 18134)
@@ -9,7 +9,8 @@
defs = []
cf = []
if env['OURPLATFORM'] == 'win32-vc':
- cf.append('/WX')
+ #cf.append('/WX')
+ pass
if env['CC'] == 'gcc':
#cf.append('-Werror')
pass
Modified: branches/blender2.5/blender/source/blender/editors/space_node/drawnode.c
===================================================================
--- branches/blender2.5/blender/source/blender/editors/space_node/drawnode.c 2008-12-29 00:45:00 UTC (rev 18133)
+++ branches/blender2.5/blender/source/blender/editors/space_node/drawnode.c 2008-12-29 00:55:23 UTC (rev 18134)
@@ -52,6 +52,7 @@
#include "DNA_text_types.h"
#include "DNA_userdef_types.h"
+#include "BKE_context.h"
#include "BKE_global.h"
#include "BKE_image.h"
#include "BKE_library.h"
@@ -93,24 +94,36 @@
#include "MEM_guardedalloc.h"
+#include "ED_space_api.h"
+#include "ED_screen.h"
+#include "ED_types.h"
+
+#include "RNA_access.h"
+#include "RNA_define.h"
+
+#include "WM_api.h"
+#include "WM_types.h"
+
+#include "UI_view2d.h"
#include "UI_text.h"
#include "UI_interface.h"
#include "UI_resources.h"
-/*
-#include "RE_pipeline.h"*/
+#include "RE_pipeline.h"
#include "IMB_imbuf_types.h"
/*#include "blendef.h"
#include "butspace.h"*/
/*#include "interface.h"*/ /* urm... for rasterpos_safe, roundbox */
/*#include "mydevice.h"*/
-#if 0
-//extern void autocomplete_uv(char *str, void *arg_v);
-extern int verify_valid_uv_name(char *str);
+#include "node_intern.h"
+
+extern void autocomplete_uv(char *str, void *arg_v);
+// XXX extern int verify_valid_uv_name(char *str);
+
/* autocomplete callback for buttons */
-static void autocomplete_vcol(char *str, void *arg_v)
+static void autocomplete_vcol(bContext *C, char *str, void *arg_v)
{
Mesh *me;
CustomDataLayer *layer;
@@ -150,58 +163,29 @@
return 0;
}
-static void snode_drawstring(SpaceNode *snode, char *str, int okwidth)
-{
- char drawstr[NODE_MAXSTR];
- int width;
-
- if(str[0]==0 || okwidth<4) return;
-
- BLI_strncpy(drawstr, str, NODE_MAXSTR);
- width= snode->aspect*UI_GetStringWidth(snode->curfont, drawstr, 0);
-
- if(width > okwidth) {
- int len= strlen(drawstr)-1;
-
- while(width > okwidth && len>=0) {
- drawstr[len]= 0;
-
- width= snode->aspect*UI_GetStringWidth(snode->curfont, drawstr, 0);
- len--;
- }
- if(len==0) return;
- }
- UI_DrawString(snode->curfont, drawstr, 0);
-
-}
-
/* ****************** GENERAL CALLBACKS FOR NODES ***************** */
-static void node_ID_title_cb(void *node_v, void *unused_v)
+static void node_ID_title_cb(bContext *C, void *node_v, void *unused_v)
{
bNode *node= node_v;
if(node->id) {
test_idbutton(node->id->name+2); /* library.c, verifies unique name */
BLI_strncpy(node->name, node->id->name+2, 21);
-
- // allqueue(REDRAWBUTSSHADING, 0);
- // allqueue(REDRAWNODE, 0);
- // allqueue(REDRAWOOPS, 0);
}
}
-static void node_but_title_cb(void *node_v, void *but_v)
+static void node_but_title_cb(bContext *C, void *node_v, void *but_v)
{
bNode *node= node_v;
- struct uiBut *bt= but_v;
- BLI_strncpy(node->name, bt->drawstr, NODE_MAXSTR);
+ // XXX uiBut *bt= but_v;
+ // XXX BLI_strncpy(node->name, bt->drawstr, NODE_MAXSTR);
// allqueue(REDRAWNODE, 0);
}
-static void node_group_alone_cb(void *node_v, void *unused_v)
+static void node_group_alone_cb(bContext *C, void *node_v, void *unused_v)
{
bNode *node= node_v;
@@ -223,7 +207,7 @@
/* name button */
width= (short)(butr->xmax-butr->xmin - (node->id->us>1?19.0f:0.0f));
bt= uiDefBut(block, TEX, B_NOP, "NT:",
- butr->xmin, butr->ymin, width, 19,
+ (short)butr->xmin, (short)butr->ymin, width, 19,
node->id->name+2, 0.0, 19.0, 0, 0, "NodeTree name");
uiButSetFunc(bt, node_ID_title_cb, node, NULL);
@@ -232,7 +216,7 @@
char str1[32];
sprintf(str1, "%d", node->id->us);
bt= uiDefBut(block, BUT, B_NOP, str1,
- butr->xmax-19, butr->ymin, 19, 19,
+ (short)butr->xmax-19, (short)butr->ymin, 19, 19,
NULL, 0, 0, 0, 0, "Displays number of users.");
uiButSetFunc(bt, node_group_alone_cb, node, NULL);
}
@@ -248,7 +232,7 @@
bNodeSocket *sock= node->outputs.first; /* first socket stores value */
uiDefButF(block, NUM, B_NODE_EXEC+node->nr, "",
- butr->xmin, butr->ymin, butr->xmax-butr->xmin, 20,
+ (short)butr->xmin, (short)butr->ymin, butr->xmax-butr->xmin, 20,
sock->ns.vec, sock->ns.min, sock->ns.max, 10, 2, "");
}
@@ -264,13 +248,13 @@
uiBlockSetEmboss(block, UI_EMBOSSP);
uiDefButF(block, HSVCUBE, B_NODE_EXEC+node->nr, "",
- butr->xmin, butr->ymin, butr->xmax-butr->xmin, 12,
+ (short)butr->xmin, (short)butr->ymin, butr->xmax-butr->xmin, 12,
sock->ns.vec, 0.0f, 1.0f, 3, 0, "");
uiDefButF(block, HSVCUBE, B_NODE_EXEC+node->nr, "",
- butr->xmin, butr->ymin+15, butr->xmax-butr->xmin, butr->ymax-butr->ymin -15 -15,
+ (short)butr->xmin, (short)butr->ymin+15, butr->xmax-butr->xmin, butr->ymax-butr->ymin -15 -15,
sock->ns.vec, 0.0f, 1.0f, 2, 0, "");
uiDefButF(block, COL, B_NOP, "",
- butr->xmin, butr->ymax-12, butr->xmax-butr->xmin, 12,
+ (short)butr->xmin, (short)butr->ymax-12, butr->xmax-butr->xmin, 12,
sock->ns.vec, 0.0, 0.0, -1, 0, "");
/* the -1 above prevents col button to popup a color picker */
@@ -289,13 +273,13 @@
/* blend type */
uiBlockBeginAlign(block);
bt=uiDefButS(block, MENU, B_NODE_EXEC+node->nr, "Mix %x0|Add %x1|Subtract %x3|Multiply %x2|Screen %x4|Overlay %x9|Divide %x5|Difference %x6|Darken %x7|Lighten %x8|Dodge %x10|Burn %x11|Color %x15|Value %x14|Saturation %x13|Hue %x12",
- butr->xmin, butr->ymin, butr->xmax-butr->xmin -(a_but?20:0), 20,
+ (short)butr->xmin, (short)butr->ymin, butr->xmax-butr->xmin -(a_but?20:0), 20,
&node->custom1, 0, 0, 0, 0, "");
uiButSetFunc(bt, node_but_title_cb, node, bt);
/* Alpha option, composite */
if(a_but)
uiDefButS(block, TOG, B_NODE_EXEC+node->nr, "A",
- butr->xmax-20, butr->ymin, 20, 20,
+ (short)butr->xmax-20, (short)butr->ymin, 20, 20,
&node->custom2, 0, 0, 0, 0, "Include Alpha of 2nd input in this operation");
}
return 20;
@@ -308,20 +292,20 @@
short dx= (short)((butr->xmax-butr->xmin)/2);
butr->ymin += 26;
- curvemap_buttons(block, node->storage, 's', B_NODE_EXEC+node->nr, B_REDR, butr);
+ // XXX curvemap_buttons(block, node->storage, 's', B_NODE_EXEC+node->nr, B_REDR, butr);
if(cumap) {
cumap->flag |= CUMA_DRAW_CFRA;
if(node->custom1<node->custom2)
- cumap->sample[0]= (float)(CFRA - node->custom1)/(float)(node->custom2-node->custom1);
+ ;// XXX cumap->sample[0]= (float)(CFRA - node->custom1)/(float)(node->custom2-node->custom1);
}
uiBlockBeginAlign(block);
uiDefButS(block, NUM, B_NODE_EXEC+node->nr, "Sta:",
- butr->xmin, butr->ymin-22, dx, 19,
+ (short)butr->xmin, (short)butr->ymin-22, dx, 19,
&node->custom1, 1.0, 20000.0, 0, 0, "Start frame");
uiDefButS(block, NUM, B_NODE_EXEC+node->nr, "End:",
- butr->xmin+dx, butr->ymin-22, dx, 19,
+ (short)butr->xmin+dx, (short)butr->ymin-22, dx, 19,
&node->custom2, 1.0, 20000.0, 0, 0, "End frame");
}
@@ -332,7 +316,7 @@
{
if(block) {
if(node->storage) {
- draw_colorband_buts_small(block, node->storage, butr, B_NODE_EXEC+node->nr);
+ ; // XXX draw_colorband_buts_small(block, node->storage, butr, B_NODE_EXEC+node->nr);
}
}
return 40;
@@ -341,7 +325,7 @@
static int node_buts_curvevec(uiBlock *block, bNodeTree *ntree, bNode *node, rctf *butr)
{
if(block) {
- curvemap_buttons(block, node->storage, 'v', B_NODE_EXEC+node->nr, B_REDR, butr);
+ ; // XXX curvemap_buttons(block, node->storage, 'v', B_NODE_EXEC+node->nr, B_REDR, butr);
}
return (int)(node->width-NODE_DY);
}
@@ -363,7 +347,7 @@
else
cumap->flag &= ~CUMA_DRAW_SAMPLE;
- curvemap_buttons(block, node->storage, 'c', B_NODE_EXEC+node->nr, B_REDR, butr);
+ // XXX curvemap_buttons(block, node->storage, 'c', B_NODE_EXEC+node->nr, B_REDR, butr);
}
return (int)(node->width-NODE_DY);
}
@@ -374,14 +358,14 @@
bNodeSocket *sock= node->outputs.first; /* first socket stores normal */
uiDefButF(block, BUT_NORMAL, B_NODE_EXEC+node->nr, "",
- butr->xmin, butr->ymin, butr->xmax-butr->xmin, butr->ymax-butr->ymin,
+ (short)butr->xmin, (short)butr->ymin, butr->xmax-butr->xmin, butr->ymax-butr->ymin,
sock->ns.vec, 0.0f, 1.0f, 0, 0, "");
}
return (int)(node->width-NODE_DY);
}
-static void node_browse_tex_cb(void *ntree_v, void *node_v)
+static void node_browse_tex_cb(bContext *C, void *ntree_v, void *node_v)
{
bNodeTree *ntree= ntree_v;
bNode *node= node_v;
@@ -411,7 +395,7 @@
node->menunr= 0;
}
-static void node_dynamic_update_cb(void *ntree_v, void *node_v)
+static void node_dynamic_update_cb(bContext *C, void *ntree_v, void *node_v)
{
Material *ma;
bNode *node= (bNode *)node_v;
@@ -439,7 +423,7 @@
// allqueue(REDRAWBUTSSHADING, 0);
// allqueue(REDRAWNODE, 0);
- BIF_preview_changed(ID_MA);
+ // XXX BIF_preview_changed(ID_MA);
}
static int node_buts_texture(uiBlock *block, bNodeTree *ntree, bNode *node, rctf *butr)
@@ -499,7 +483,7 @@
/* ****************** BUTTON CALLBACKS FOR SHADER NODES ***************** */
-static void node_browse_text_cb(void *ntree_v, void *node_v)
+static void node_browse_text_cb(bContext *C, void *ntree_v, void *node_v)
{
bNodeTree *ntree= ntree_v;
bNode *node= node_v;
@@ -525,7 +509,7 @@
node->menunr= 0;
}
-static void node_mat_alone_cb(void *node_v, void *unused)
+static void node_mat_alone_cb(bContext *C, void *node_v, void *unused)
{
bNode *node= node_v;
@@ -537,7 +521,7 @@
// allqueue(REDRAWOOPS, 0);
}
-static void node_browse_mat_cb(void *ntree_v, void *node_v)
+static void node_browse_mat_cb(bContext *C, void *ntree_v, void *node_v)
{
bNodeTree *ntree= ntree_v;
bNode *node= node_v;
@@ -571,12 +555,12 @@
// allqueue(REDRAWBUTSSHADING, 0);
// allqueue(REDRAWNODE, 0);
- BIF_preview_changed(ID_MA);
+ // XXX BIF_preview_changed(ID_MA);
node->menunr= 0;
}
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list