Revision: 34739
          
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=34739
Author:   jhk
Date:     2011-02-09 11:03:11 +0000 (Wed, 09 Feb 2011)
Log Message:
-----------
Restoring the old behavior of switching texture context based on active tab:
* Once again switching to texture panel from material, world or lamp data tab 
sets the texture context automatically to the "parent context".

Modified Paths:
--------------
    trunk/blender/source/blender/editors/space_buttons/buttons_header.c

Modified: trunk/blender/source/blender/editors/space_buttons/buttons_header.c
===================================================================
--- trunk/blender/source/blender/editors/space_buttons/buttons_header.c 
2011-02-09 10:02:36 UTC (rev 34738)
+++ trunk/blender/source/blender/editors/space_buttons/buttons_header.c 
2011-02-09 11:03:11 UTC (rev 34739)
@@ -38,8 +38,8 @@
 #include "ED_screen.h"
 #include "ED_types.h"
 
+#include "DNA_object_types.h"
 
-
 #include "UI_interface.h"
 #include "UI_resources.h"
 #include "UI_view2d.h"
@@ -50,6 +50,25 @@
 #define B_CONTEXT_SWITCH       101
 #define B_BUTSPREVIEW          102
 
+static void set_texture_context(bContext *C, SpaceButs *sbuts)
+{
+       switch(sbuts->mainb) {
+               case BCONTEXT_MATERIAL:
+                       sbuts->texture_context = SB_TEXC_MAT_OR_LAMP;
+                       break;
+               case BCONTEXT_DATA:
+               {
+                       Object *ob = CTX_data_active_object(C);
+                       if(ob && ob->type==OB_LAMP)
+                               sbuts->texture_context = SB_TEXC_MAT_OR_LAMP;
+                       break;
+               }
+               case BCONTEXT_WORLD:
+                       sbuts->texture_context = SB_TEXC_WORLD;
+                       break;
+       }
+}
+
 static void do_buttons_buttons(bContext *C, void *UNUSED(arg), int event)
 {
        SpaceButs *sbuts= CTX_wm_space_buts(C);
@@ -62,6 +81,8 @@
                case B_BUTSPREVIEW:
                        ED_area_tag_redraw(CTX_wm_area(C));
 
+                       set_texture_context(C, sbuts);
+
                        sbuts->preview= 1;
                        break;
        }

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

Reply via email to