[Bf-blender-cvs] [87fa9c4] soc-2013-paint: merge with master 054094f5827f3

Antony Riakiotakis noreply at git.blender.org
Wed Feb 12 15:31:06 CET 2014


Commit: 87fa9c4ec0bc6e5f231d50350ed4e25be5f14cfb
Author: Antony Riakiotakis
Date:   Wed Feb 12 16:26:36 2014 +0200
https://developer.blender.org/rB87fa9c4ec0bc6e5f231d50350ed4e25be5f14cfb

merge with master 054094f5827f3

===================================================================



===================================================================

diff --cc release/scripts/startup/bl_ui/space_image.py
index 86375a5,fdc5be4..958438f
--- a/release/scripts/startup/bl_ui/space_image.py
+++ b/release/scripts/startup/bl_ui/space_image.py
@@@ -387,7 -366,7 +387,6 @@@ class IMAGE_HT_header(Header)
          mode = sima.mode
  
          show_render = sima.show_render
-         show_paint = sima.show_paint
 -        # show_paint = sima.show_paint
          show_uvedit = sima.show_uvedit
          show_maskedit = sima.show_maskedit
  
@@@ -470,7 -429,41 +449,44 @@@
                  row.operator("image.play_composite", icon='PLAY')
  
          if show_uvedit or show_maskedit or mode == 'PAINT':
-             layout.prop(sima, "use_realtime_update", text="", icon_only=True, icon='LOCKED')
+             layout.prop(sima, "use_realtime_update", icon_only=True, icon='LOCKED')
+ 
+ 
+ class MASK_MT_editor_menus(Menu):
+     bl_idname = "MASK_MT_editor_menus"
+     bl_label = ""
+ 
+     def draw(self, context):
+         self.draw_menus(self.layout, context)
+ 
+     @staticmethod
+     def draw_menus(layout, context):
+         sima = context.space_data
+         ima = sima.image
+ 
+         show_render = sima.show_render
+         show_uvedit = sima.show_uvedit
+         show_maskedit = sima.show_maskedit
++        show_paint = sima.show_paint
+ 
+         layout.menu("IMAGE_MT_view")
+ 
+         if show_uvedit:
+             layout.menu("IMAGE_MT_select")
+         if show_maskedit:
+             layout.menu("MASK_MT_select")
++        if show_paint:
++            layout.menu("IMAGE_MT_brush")
+ 
+         if ima and ima.is_dirty:
+             layout.menu("IMAGE_MT_image", text="Image*")
+         else:
+             layout.menu("IMAGE_MT_image", text="Image")
+ 
+         if show_uvedit:
+             layout.menu("IMAGE_MT_uvs")
+         if show_maskedit:
+             layout.menu("MASK_MT_mask")
  
  
  class IMAGE_PT_image_properties(Panel):
@@@ -944,24 -873,29 +957,30 @@@ class IMAGE_PT_paint_stroke(BrushButton
          col = layout.column()
          col.separator()
  
+         row = col.row(align=True)
+         row.prop(brush, "use_relative_jitter", icon_only=True)
+         if brush.use_relative_jitter:
+             row.prop(brush, "jitter", slider=True)
+         else:
+             row.prop(brush, "jitter_absolute")
+         row.prop(brush, "use_pressure_jitter", toggle=True, text="")
+ 
+         col = layout.column()
+         col.separator()
+ 
 -        col.prop(brush, "use_smooth_stroke")
 +        if brush.brush_capabilities.has_smooth_stroke:
 +            col.prop(brush, "use_smooth_stroke")
  
 -        sub = col.column()
 -        sub.active = brush.use_smooth_stroke
 -        sub.prop(brush, "smooth_stroke_radius", text="Radius", slider=True)
 -        sub.prop(brush, "smooth_stroke_factor", text="Factor", slider=True)
 +            sub = col.column()
 +            sub.active = brush.use_smooth_stroke
 +            sub.prop(brush, "smooth_stroke_radius", text="Radius", slider=True)
 +            sub.prop(brush, "smooth_stroke_factor", text="Factor", slider=True)
  
 -        col.separator()
 +            col.separator()
  
-         row = col.row(align=True)
-         if brush.use_relative_jitter:
-             row.prop(brush, "use_relative_jitter", text="", icon='LOCKED')
-             row.prop(brush, "jitter", slider=True)
-         else:
-             row.prop(brush, "use_relative_jitter", text="", icon='UNLOCKED')
-             row.prop(brush, "jitter_absolute")
-         row.prop(brush, "use_pressure_jitter", toggle=True, text="")
+         col.prop(toolsettings, "input_samples")
+ 
+         col.separator()
  
          col.prop(brush, "use_wrap")
  
diff --cc release/scripts/startup/bl_ui/space_view3d_toolbar.py
index fd7d271,f7b01bb..f16e1d9
--- a/release/scripts/startup/bl_ui/space_view3d_toolbar.py
+++ b/release/scripts/startup/bl_ui/space_view3d_toolbar.py
@@@ -510,55 -732,8 +732,56 @@@ class View3DPaintPanel(UnifiedPaintPane
      bl_region_type = 'TOOLS'
  
  
 +class TEXTURE_UL_texpaintslots(UIList):
 +    def draw_item(self, context, layout, data, item, icon, active_data, active_propname, index):
 +        # assert(isinstance(item, bpy.types.MaterialTextureSlot)
 +        ma = data
 +        slot = item
 +        tex = slot.texture if slot else None
 +
 +        if self.layout_type in {'DEFAULT', 'COMPACT'}:
 +            # layout.label(text=tex.image.name, translate=False)
 +            layout.label(text=tex.name, translate=False, icon_value=icon)
 +        elif self.layout_type in {'GRID'}:
 +            layout.alignment = 'CENTER'
 +            layout.label(text="")
 +
 +
 +class VIEW3D_PT_layers_projectpaint(View3DPanel, Panel):
 +    bl_context = "imagepaint"
 +    bl_label = "Layers"
 +
 +    @classmethod
 +    def poll(cls, context):
 +        brush = context.tool_settings.image_paint.brush
 +        ob = context.active_object
 +        return (brush is not None and ob is not None)
 +
 +    def draw(self, context):
 +        layout = self.layout
 +
 +        settings = context.tool_settings.image_paint
 +
 +        ob = context.active_object
 +        col = layout.column()
 +
 +        col.label("Materials")
 +        col.template_list("MATERIAL_UL_matslots", "", ob, "material_slots", ob, "active_material_index", rows=2)
 +        mat = ob.active_material;
 +        if mat:
 +            col.label("Available Paint layers")
 +            col.template_list("TEXTURE_UL_texpaintslots", "", mat, "texture_paint_slots", mat, "active_paint_texture_index", rows=2)
 +            #col.label("Only slots with UV mapping and image textures are available")
 +            
 +            col.operator_menu_enum("paint.add_layer", "type")
 +        
 +        row = col.row(align=True)
 +        row.prop(settings, "new_layer_xresolution")
 +        row.prop(settings, "new_layer_yresolution")
 +
 +
  class VIEW3D_PT_tools_brush(Panel, View3DPaintPanel):
+     bl_category = "Tools"
      bl_label = "Brush"
  
      @classmethod
diff --cc source/blender/blenkernel/intern/paint.c
index 00bce75,690217a..c61e454
--- a/source/blender/blenkernel/intern/paint.c
+++ b/source/blender/blenkernel/intern/paint.c
@@@ -267,52 -264,8 +267,52 @@@ void BKE_paint_brush_set(Paint *p, Brus
  	}
  }
  
 +Palette *BKE_paint_palette(Paint *p)
 +{
 +	return p ? p->palette : NULL;
 +}
 +
 +void BKE_paint_palette_set(Paint *p, Palette *palette)
 +{
 +	if (p) {
 +		id_us_min((ID *)p->palette);
 +		id_us_plus((ID *)palette);
 +		p->palette = palette;
 +	}
 +}
 +
 +/* remove colour from palette. Must be certain colour is inside the palette! */
 +void BKE_palette_remove_color (Palette *palette, PaletteColor *colour)
 +{
 +	BLI_remlink(&palette->colors, colour);
 +	MEM_freeN(colour);
 +}
 +
 +Palette *BKE_palette_add(Main *bmain, const char *name)
 +{
 +	Palette *palette;
 +
 +	palette = BKE_libblock_alloc(&bmain->palettes, ID_PAL, name);
 +
 +	/* enable fake user by default */
 +	palette->id.flag |= LIB_FAKEUSER;
 +
 +	return palette;
 +}
 +
 +void BKE_free_palette (Palette *palette) {
 +	BLI_freelistN(&palette->colors);
 +}
 +
 +PaletteColor *BKE_palette_color_add(Palette *palette)
 +{
 +	PaletteColor *color = MEM_callocN(sizeof(*color), "Pallete Color");
 +	BLI_addtail(&palette->colors, color);
 +	return color;
 +}
 +
  /* are we in vertex paint or weight pain face select mode? */
- int paint_facesel_test(Object *ob)
+ bool paint_facesel_test(Object *ob)
  {
  	return ( (ob != NULL) &&
  	         (ob->type == OB_MESH) &&
diff --cc source/blender/editors/include/ED_image.h
index b8123e4,36f3189..a3ca7ff
--- a/source/blender/editors/include/ED_image.h
+++ b/source/blender/editors/include/ED_image.h
@@@ -66,13 -66,12 +66,13 @@@ void ED_image_mouse_pos(struct SpaceIma
  void ED_image_point_pos(struct SpaceImage *sima, struct ARegion *ar, float x, float y, float *xr, float *yr);
  void ED_image_point_pos__reverse(struct SpaceImage *sima, struct ARegion *ar, const float co[2], float r_co[2]);
  
- int ED_space_image_show_render(struct SpaceImage *sima);
- int ED_space_image_show_paint(struct SpaceImage *sima);
- int ED_space_image_show_uvedit(struct SpaceImage *sima, struct Object *obedit);
- int ED_space_image_show_texpaint(struct SpaceImage *sima, struct Object *ob);
- int ED_space_image_show_uvshadow(struct SpaceImage *sima, struct Object *obedit);
+ bool ED_space_image_show_render(struct SpaceImage *sima);
+ bool ED_space_image_show_paint(struct SpaceImage *sima);
+ bool ED_space_image_show_uvedit(struct SpaceImage *sima, struct Object *obedit);
++bool ED_space_image_show_texpaint(struct SpaceImage *sima, struct Object *ob);
+ bool ED_space_image_show_uvshadow(struct SpaceImage *sima, struct Object *obedit);
  
- int ED_space_image_check_show_maskedit(struct Scene *scene, struct SpaceImage *sima);
+ bool ED_space_image_check_show_maskedit(struct Scene *scene, struct SpaceImage *sima);
  int ED_space_image_maskedit_poll(struct bContext *C);
  int ED_space_image_maskedit_mask_poll(struct bContext *C);
  
diff --cc source/blender/editors/interface/interface_handlers.c
index 45d59c3,c6b0782..d952253
--- a/source/blender/editors/interface/interface_handlers.c
+++ b/source/blender/editors/interface/interface_handlers.c
@@@ -237,10 -305,11 +306,10 @@@ typedef struct uiAfterFunc 
  
  
  
- static bool ui_is_but_interactive(uiBut *but, const bool labeledit);
- static bool ui_but_contains_pt(uiBut *but, int mx, int my);
+ static bool ui_is_but_interactive(const uiBut *but, const bool labeledit);
+ static bool ui_but_contains_pt(uiBut *but, float mx, float my);
  static bool ui_mouse_inside_button(ARegion *ar, uiBut *but, int x, int y);
  static uiBut *ui_but_find_mouse_over_ex(ARegion *ar, int x, int y, bool ctrl);
 -static uiBut *ui_but_find_mouse_over(ARegion *ar, const wmEvent *event);
  static void button_activate_init(bContext *C, ARegion *ar, uiBut *but, uiButtonActivateType type);
  static void button_activate_state(bContext *C, uiBut *but, uiHandleButtonState state);
  static void button_activate_exit(bContext *C, uiBut *but, uiHandleButtonData *data,
diff --cc source/blender/editors/interface/interface_intern.h
index d89fe63,958e0d9..70aac7e
--- a/source/blender/editors/interface/interface_intern.h


@@ Diff output truncated at 10240 characters. @@




More information about the Bf-blender-cvs mailing list