[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [20787] branches/soc-2009-yukishiro: merge with Ton's brush fix (20781:20785)
Jingyuan Huang
jingyuan.huang at gmail.com
Wed Jun 10 18:34:37 CEST 2009
Revision: 20787
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=20787
Author: yukishiro
Date: 2009-06-10 18:34:36 +0200 (Wed, 10 Jun 2009)
Log Message:
-----------
merge with Ton's brush fix (20781:20785)
Modified Paths:
--------------
branches/soc-2009-yukishiro/release/ui/space_sequencer.py
branches/soc-2009-yukishiro/source/blender/blenkernel/intern/library.c
branches/soc-2009-yukishiro/source/blender/blenkernel/intern/lightenv.c
branches/soc-2009-yukishiro/source/blender/blenloader/intern/readfile.c
branches/soc-2009-yukishiro/source/blender/blenloader/intern/writefile.c
branches/soc-2009-yukishiro/source/blender/editors/include/UI_interface.h
branches/soc-2009-yukishiro/source/blender/editors/interface/interface.c
branches/soc-2009-yukishiro/source/blender/editors/interface/interface_handlers.c
branches/soc-2009-yukishiro/source/blender/editors/interface/interface_regions.c
branches/soc-2009-yukishiro/source/blender/editors/interface/interface_utils.c
branches/soc-2009-yukishiro/source/blender/editors/interface/interface_widgets.c
branches/soc-2009-yukishiro/source/blender/editors/space_view3d/drawobject.c
branches/soc-2009-yukishiro/source/blender/editors/space_view3d/view3d_buttons.c
branches/soc-2009-yukishiro/source/blender/makesdna/DNA_scene_types.h
branches/soc-2009-yukishiro/source/blender/makesdna/DNA_world_types.h
branches/soc-2009-yukishiro/source/blender/makesdna/intern/makesdna.c
branches/soc-2009-yukishiro/source/blender/makesrna/intern/rna_sequence.c
branches/soc-2009-yukishiro/source/blender/sh/intern/compute.c
Modified: branches/soc-2009-yukishiro/release/ui/space_sequencer.py
===================================================================
--- branches/soc-2009-yukishiro/release/ui/space_sequencer.py 2009-06-10 15:56:38 UTC (rev 20786)
+++ branches/soc-2009-yukishiro/release/ui/space_sequencer.py 2009-06-10 16:34:36 UTC (rev 20787)
@@ -391,7 +391,7 @@
if not strip:
return False
- return strip.type in ('MOVIE', 'IMAGE', 'SCENE', 'META')
+ return strip.type in ('MOVIE', 'IMAGE', 'SOUND')
def draw(self, context):
layout = self.layout
@@ -404,13 +404,16 @@
sub = split.column()
sub.itemR(strip, "directory", text="")
- # TODO - get current element!
+ # Current element for the filename
split = layout.split(percentage=0.3)
sub = split.column()
sub.itemL(text="File Name:")
- sub = split.column()
- sub.itemR(strip.elements[0], "filename", text="")
+ sub = split.column()
+ elem = strip.getStripElem(context.scene.current_frame)
+ if elem:
+ sub.itemR(elem, "filename", text="") # strip.elements[0] could be a fallback
+
"""
layout.itemR(strip, "use_crop")
Modified: branches/soc-2009-yukishiro/source/blender/blenkernel/intern/library.c
===================================================================
--- branches/soc-2009-yukishiro/source/blender/blenkernel/intern/library.c 2009-06-10 15:56:38 UTC (rev 20786)
+++ branches/soc-2009-yukishiro/source/blender/blenkernel/intern/library.c 2009-06-10 16:34:36 UTC (rev 20787)
@@ -80,6 +80,7 @@
#include "DNA_windowmanager_types.h"
#include "DNA_anim_types.h"
#include "DNA_gpencil_types.h"
+#include "DNA_lightenv_types.h"
#include "BLI_blenlib.h"
#include "BLI_dynstr.h"
@@ -209,6 +210,8 @@
return &(mainlib->wm);
case ID_GD:
return &(mainlib->gpencil);
+ case ID_LE:
+ return &(mainlib->lightenv);
}
return 0;
}
@@ -388,6 +391,9 @@
case ID_GD:
id = MEM_callocN(sizeof(bGPdata), "Grease Pencil");
break;
+ case ID_LE:
+ id = MEM_callocN(sizeof(LightEnv), "light env");
+ break;
}
return id;
}
@@ -594,6 +600,9 @@
case ID_GD:
free_gpencil_data((bGPdata *)id);
break;
+ case ID_LE:
+ free_lightenv((LightEnv *)id);
+ break;
}
if (id->properties) {
Modified: branches/soc-2009-yukishiro/source/blender/blenkernel/intern/lightenv.c
===================================================================
--- branches/soc-2009-yukishiro/source/blender/blenkernel/intern/lightenv.c 2009-06-10 15:56:38 UTC (rev 20786)
+++ branches/soc-2009-yukishiro/source/blender/blenkernel/intern/lightenv.c 2009-06-10 16:34:36 UTC (rev 20787)
@@ -49,7 +49,7 @@
#include "SH_api.h"
-LightEnv deflightenv;
+//LightEnv deflightenv;
// TODO: simple function to return value for 3 channels. needs improvement
@@ -90,17 +90,16 @@
IMB_freeImBuf(ibuf);
}
-/* called on startup, in SH_init() */
-void init_def_lightenv(void)
-{
- deflightenv.type = LE_DEFAULT;
- deflightenv.func = def_synthetic;
- SH_ComputeLightCoefficients(&deflightenv);
-}
+///* called on startup, in SH_init() */
+//void init_def_lightenv(void)
+//{
+// deflightenv.type = LE_DEFAULT;
+// deflightenv.func = def_synthetic;
+// SH_ComputeLightCoefficients(&deflightenv);
+//}
void free_lightenv(LightEnv *env)
{
- // free probe
}
@@ -110,6 +109,7 @@
env= alloc_libblock(&G.main->lightenv, ID_LE, name);
env->type = LE_DEFAULT;
+ env->func = def_synthetic;
SH_ComputeLightCoefficients(env);
return env;
@@ -118,11 +118,10 @@
LightEnv* get_scene_lightenv(Scene *scene)
{
- World *world = scene->world;
+ if (scene->lightenv == NULL)
+ scene->lightenv = add_lightenv("LightEnv");
- if (world == NULL) return &deflightenv;
- if (world->lightenv == NULL) return &deflightenv;
- return world->lightenv;
+ return scene->lightenv;
}
Modified: branches/soc-2009-yukishiro/source/blender/blenloader/intern/readfile.c
===================================================================
--- branches/soc-2009-yukishiro/source/blender/blenloader/intern/readfile.c 2009-06-10 15:56:38 UTC (rev 20786)
+++ branches/soc-2009-yukishiro/source/blender/blenloader/intern/readfile.c 2009-06-10 16:34:36 UTC (rev 20787)
@@ -71,6 +71,7 @@
#include "DNA_key_types.h"
#include "DNA_lattice_types.h"
#include "DNA_lamp_types.h"
+#include "DNA_lightenv_types.h"
#include "DNA_meta_types.h"
#include "DNA_material_types.h"
#include "DNA_mesh_types.h"
@@ -3825,14 +3826,25 @@
sce->camera= newlibadr(fd, sce->id.lib, sce->camera);
sce->world= newlibadr_us(fd, sce->id.lib, sce->world);
+ sce->lightenv = newlibadr_us(fd, sce->id.lib, sce->lightenv);
sce->set= newlibadr(fd, sce->id.lib, sce->set);
sce->ima= newlibadr_us(fd, sce->id.lib, sce->ima);
+
sce->toolsettings->imapaint.brush=
newlibadr_us(fd, sce->id.lib, sce->toolsettings->imapaint.brush);
if(sce->toolsettings->sculpt)
sce->toolsettings->sculpt->brush=
newlibadr_us(fd, sce->id.lib, sce->toolsettings->sculpt->brush);
-
+ if(sce->toolsettings->vpaint)
+ sce->toolsettings->vpaint->brush=
+ newlibadr_us(fd, sce->id.lib, sce->toolsettings->vpaint->brush);
+ if(sce->toolsettings->wpaint)
+ sce->toolsettings->wpaint->brush=
+ newlibadr_us(fd, sce->id.lib, sce->toolsettings->wpaint->brush);
+ if(sce->toolsettings->lpaint)
+ sce->toolsettings->lpaint->brush=
+ newlibadr_us(fd, sce->id.lib, sce->toolsettings->lpaint->brush);
+
sce->toolsettings->skgen_template = newlibadr(fd, sce->id.lib, sce->toolsettings->skgen_template);
for(base= sce->base.first; base; base= next) {
Modified: branches/soc-2009-yukishiro/source/blender/blenloader/intern/writefile.c
===================================================================
--- branches/soc-2009-yukishiro/source/blender/blenloader/intern/writefile.c 2009-06-10 15:56:38 UTC (rev 20786)
+++ branches/soc-2009-yukishiro/source/blender/blenloader/intern/writefile.c 2009-06-10 16:34:36 UTC (rev 20787)
@@ -112,6 +112,7 @@
#include "DNA_lattice_types.h"
#include "DNA_listBase.h" /* for Listbase, the type of samples, ...*/
#include "DNA_lamp_types.h"
+#include "DNA_lightenv_types.h"
#include "DNA_meta_types.h"
#include "DNA_mesh_types.h"
#include "DNA_meshdata_types.h"
@@ -1733,8 +1734,7 @@
{
LightEnv *env;
- env = idbase->first;
- while (env) {
+ for (env = idbase->first; env; env= env->id.next) {
if (env->id.us > 0 || wd->current) {
writestruct(wd, ID_LE, "LightEnv", 1, env);
if (env->id.properties) IDP_WriteProperty(env->id.properties, wd);
Modified: branches/soc-2009-yukishiro/source/blender/editors/include/UI_interface.h
===================================================================
--- branches/soc-2009-yukishiro/source/blender/editors/include/UI_interface.h 2009-06-10 15:56:38 UTC (rev 20786)
+++ branches/soc-2009-yukishiro/source/blender/editors/include/UI_interface.h 2009-06-10 16:34:36 UTC (rev 20787)
@@ -399,6 +399,8 @@
uiBut *uiDefIconTextMenuBut(uiBlock *block, uiMenuCreateFunc func, void *arg, int icon, char *str, short x1, short y1, short x2, short y2, char *tip);
uiBut *uiDefBlockBut(uiBlock *block, uiBlockCreateFunc func, void *func_arg1, char *str, short x1, short y1, short x2, short y2, char *tip);
+uiBut *uiDefBlockButN(uiBlock *block, uiBlockCreateFunc func, void *argN, char *str, short x1, short y1, short x2, short y2, char *tip);
+
uiBut *uiDefIconBlockBut(uiBlock *block, uiBlockCreateFunc func, void *arg, int retval, int icon, short x1, short y1, short x2, short y2, char *tip);
uiBut *uiDefIconTextBlockBut(uiBlock *block, uiBlockCreateFunc func, void *arg, int icon, char *str, short x1, short y1, short x2, short y2, char *tip);
Modified: branches/soc-2009-yukishiro/source/blender/editors/interface/interface.c
===================================================================
--- branches/soc-2009-yukishiro/source/blender/editors/interface/interface.c 2009-06-10 15:56:38 UTC (rev 20786)
+++ branches/soc-2009-yukishiro/source/blender/editors/interface/interface.c 2009-06-10 16:34:36 UTC (rev 20787)
@@ -432,6 +432,7 @@
/* ************** BLOCK ENDING FUNCTION ************* */
+/* NOTE: if but->poin is allocated memory for every defbut, things fail... */
static int ui_but_equals_old(uiBut *but, uiBut *oldbut)
{
/* various properties are being compared here, hopfully sufficient
@@ -3012,6 +3013,16 @@
return but;
}
+uiBut *uiDefBlockButN(uiBlock *block, uiBlockCreateFunc func, void *argN, char *str, short x1, short y1, short x2, short y2, char *tip)
+{
+ uiBut *but= ui_def_but(block, BLOCK, 0, str, x1, y1, x2, y2, NULL, 0.0, 0.0, 0.0, 0.0, tip);
+ but->block_create_func= func;
+ but->func_argN= argN;
+ ui_check_but(but);
+ return but;
+}
+
+
uiBut *uiDefPulldownBut(uiBlock *block, uiBlockCreateFunc func, void *arg, char *str, short x1, short y1, short x2, short y2, char *tip)
{
uiBut *but= ui_def_but(block, PULLDOWN, 0, str, x1, y1, x2, y2, arg, 0.0, 0.0, 0.0, 0.0, tip);
@@ -3095,7 +3106,6 @@
but->flag|= UI_HAS_ICON;
but->flag|= UI_ICON_LEFT|UI_TEXT_LEFT;
- but->flag|= UI_ICON_SUBMENU;
ui_check_but(but);
Modified: branches/soc-2009-yukishiro/source/blender/editors/interface/interface_handlers.c
===================================================================
--- branches/soc-2009-yukishiro/source/blender/editors/interface/interface_handlers.c 2009-06-10 15:56:38 UTC (rev 20786)
+++ branches/soc-2009-yukishiro/source/blender/editors/interface/interface_handlers.c 2009-06-10 16:34:36 UTC (rev 20787)
@@ -1494,7 +1494,7 @@
}
else {
func= but->block_create_func;
- arg= but->poin;
+ arg= but->poin?but->poin:but->func_argN;
}
break;
case MENU:
@@ -2078,6 +2078,7 @@
static int ui_do_but_BLOCK(bContext *C, uiBut *but, uiHandleButtonData *data, wmEvent *event)
{
+
if(data->state == BUTTON_STATE_HIGHLIGHT) {
if(ELEM3(event->type, LEFTMOUSE, PADENTER, RETKEY) && event->val==KM_PRESS) {
button_activate_state(C, but, BUTTON_STATE_MENU_OPEN);
@@ -3112,7 +3113,7 @@
but->block->auto_open= 0;
button_activate_state(C, but, BUTTON_STATE_HIGHLIGHT);
-
+
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list