Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--release/scripts/ui/space_userpref.py38
-rw-r--r--release/scripts/ui/space_userpref_keymap.py8
-rw-r--r--release/scripts/ui/space_view3d.py2
-rw-r--r--source/blender/editors/interface/interface_layout.c22
-rw-r--r--source/blender/makesrna/intern/rna_ui_api.c15
5 files changed, 45 insertions, 40 deletions
diff --git a/release/scripts/ui/space_userpref.py b/release/scripts/ui/space_userpref.py
index 807779c8556..96b422a3e0d 100644
--- a/release/scripts/ui/space_userpref.py
+++ b/release/scripts/ui/space_userpref.py
@@ -533,13 +533,16 @@ class USERPREF_PT_theme(bpy.types.Panel):
theme = context.user_preferences.themes[0]
+ split_themes = layout.split(percentage=0.2)
+ split_themes.prop(theme, "theme_area", expand=True)
+
split = layout.split(percentage=0.4)
- split.prop(theme, "theme_area", text="")
+
layout.separator()
layout.separator()
- split = layout.split()
+ split = split_themes.split()
if theme.theme_area == 'USER_INTERFACE':
col = split.column()
@@ -737,7 +740,7 @@ class USERPREF_PT_input(InputKeyMapPanel):
sub.label(text="Presets:")
subrow = sub.row(align=True)
subrow.menu("USERPREF_MT_interaction_presets", text=bpy.types.USERPREF_MT_interaction_presets.bl_label)
- subrow.operator("wm.interaction_preset_add", text="", icon="ZOOMIN")
+ subrow.operator("wm.interaction_preset_add", text="", icon='ZOOMIN')
sub.separator()
sub.label(text="Mouse:")
@@ -883,27 +886,16 @@ class USERPREF_PT_addons(bpy.types.Panel):
column = box.column()
row = column.row()
- # Arrow #
- # If there are Infos or UI is expanded
- if info["expanded"]:
- row.operator("wm.addon_expand", icon="TRIA_DOWN").module = module_name
- elif info["author"] or info["version"] or info["wiki_url"] or info["location"]:
- row.operator("wm.addon_expand", icon="TRIA_RIGHT").module = module_name
- else:
- # Else, block UI
- arrow = row.column()
- arrow.enabled = False
- arrow.operator("wm.addon_expand", icon="TRIA_RIGHT").module = module_name
-
- row.label(text=info["name"])
-
- if is_enabled: operator = "wm.addon_disable"
- else: operator = "wm.addon_enable"
+ row.operator("wm.addon_expand", icon='TRIA_DOWN' if info["expanded"] else 'TRIA_RIGHT', emboss=False).module = module_name
- if info["warning"]: button_icon='ERROR'
- else: button_icon='BLENDER'
+ rowsub = row.row()
+ rowsub.active = is_enabled
+ rowsub.label(text=info["name"], icon='ERROR' if info["warning"] else 'BLENDER')
- row.operator(operator, icon=button_icon).module = module_name
+ if is_enabled:
+ row.operator("wm.addon_disable", icon='CHECKBOX_HLT', text="", emboss=False).module = module_name
+ else:
+ row.operator("wm.addon_enable", icon='CHECKBOX_DEHLT', text="", emboss=False).module = module_name
# Expanded UI (only if additional infos are available)
if info["expanded"]:
@@ -957,7 +949,7 @@ class USERPREF_PT_addons(bpy.types.Panel):
column = box.column()
row = column.row()
- row.label(text=ext, icon="ERROR")
+ row.label(text=ext, icon='ERROR')
row.operator("wm.addon_disable").module = ext
from bpy.props import *
diff --git a/release/scripts/ui/space_userpref_keymap.py b/release/scripts/ui/space_userpref_keymap.py
index 37007c65f7a..55df622e277 100644
--- a/release/scripts/ui/space_userpref_keymap.py
+++ b/release/scripts/ui/space_userpref_keymap.py
@@ -167,7 +167,7 @@ class InputKeyMapPanel(bpy.types.Panel):
col = self.indented_layout(layout, level)
row = col.row()
- row.prop(km, "children_expanded", text="", no_bg=True)
+ row.prop(km, "children_expanded", text="", emboss=False)
row.label(text=km.name)
row.label()
@@ -186,7 +186,7 @@ class InputKeyMapPanel(bpy.types.Panel):
# equal in hierarchy to the other children categories
subcol = self.indented_layout(col, level + 1)
subrow = subcol.row()
- subrow.prop(km, "items_expanded", text="", no_bg=True)
+ subrow.prop(km, "items_expanded", text="", emboss=False)
subrow.label(text="%s (Global)" % km.name)
else:
km.items_expanded = True
@@ -227,11 +227,11 @@ class InputKeyMapPanel(bpy.types.Panel):
# header bar
row = split.row()
- row.prop(kmi, "expanded", text="", no_bg=True)
+ row.prop(kmi, "expanded", text="", emboss=False)
row = split.row()
row.enabled = km.user_defined
- row.prop(kmi, "active", text="", no_bg=True)
+ row.prop(kmi, "active", text="", emboss=False)
if km.modal:
row.prop(kmi, "propvalue", text="")
diff --git a/release/scripts/ui/space_view3d.py b/release/scripts/ui/space_view3d.py
index 19140a9e79d..750ffabe89a 100644
--- a/release/scripts/ui/space_view3d.py
+++ b/release/scripts/ui/space_view3d.py
@@ -2125,7 +2125,7 @@ class VIEW3D_PT_background_image(bpy.types.Panel):
layout.active = view.display_background_images
box = layout.box()
row = box.row(align=True)
- row.prop(bg, "show_expanded", text="", no_bg=True)
+ row.prop(bg, "show_expanded", text="", emboss=False)
row.label(text=getattr(bg.image, "name", "Not Set"))
row.operator("view3d.remove_background_image", text="", icon='X').index = i
diff --git a/source/blender/editors/interface/interface_layout.c b/source/blender/editors/interface/interface_layout.c
index 35e813b1efc..eb96ca45ff8 100644
--- a/source/blender/editors/interface/interface_layout.c
+++ b/source/blender/editors/interface/interface_layout.c
@@ -436,8 +436,9 @@ static void ui_item_array(uiLayout *layout, uiBlock *block, char *name, int icon
uiBlockSetCurLayout(block, layout);
}
-static void ui_item_enum_row(uiLayout *layout, uiBlock *block, PointerRNA *ptr, PropertyRNA *prop, char *uiname, int x, int y, int w, int h, int icon_only)
+static void ui_item_enum_expand(uiLayout *layout, uiBlock *block, PointerRNA *ptr, PropertyRNA *prop, char *uiname, int x, int y, int w, int h, int icon_only)
{
+ uiBut *but;
EnumPropertyItem *item;
const char *identifier;
char *name;
@@ -457,11 +458,14 @@ static void ui_item_enum_row(uiLayout *layout, uiBlock *block, PointerRNA *ptr,
itemw= ui_text_icon_width(block->curlayout, name, icon, 0);
if(icon && strcmp(name, "") != 0 && !icon_only)
- uiDefIconTextButR(block, ROW, 0, icon, name, 0, 0, itemw, h, ptr, identifier, -1, 0, value, -1, -1, NULL);
+ but= uiDefIconTextButR(block, ROW, 0, icon, name, 0, 0, itemw, h, ptr, identifier, -1, 0, value, -1, -1, NULL);
else if(icon)
- uiDefIconButR(block, ROW, 0, icon, 0, 0, itemw, h, ptr, identifier, -1, 0, value, -1, -1, NULL);
+ but= uiDefIconButR(block, ROW, 0, icon, 0, 0, itemw, h, ptr, identifier, -1, 0, value, -1, -1, NULL);
else
- uiDefButR(block, ROW, 0, name, 0, 0, itemw, h, ptr, identifier, -1, 0, value, -1, -1, NULL);
+ but= uiDefButR(block, ROW, 0, name, 0, 0, itemw, h, ptr, identifier, -1, 0, value, -1, -1, NULL);
+
+ if(ui_layout_local_dir(layout) != UI_LAYOUT_HORIZONTAL)
+ but->flag |= UI_TEXT_LEFT;
}
uiBlockSetCurLayout(block, layout);
@@ -609,6 +613,9 @@ PointerRNA uiItemFullO(uiLayout *layout, char *idname, char *name, int icon, IDP
w= ui_text_icon_width(layout, name, icon, 0);
+ if (flag & UI_ITEM_R_NO_BG)
+ uiBlockSetEmboss(block, UI_EMBOSSN);
+
if(icon && strcmp(name, "") != 0)
but= uiDefIconTextButO(block, BUT, ot->idname, context, icon, (char*)name, 0, 0, w, UI_UNIT_Y, NULL);
else if(icon)
@@ -619,7 +626,10 @@ PointerRNA uiItemFullO(uiLayout *layout, char *idname, char *name, int icon, IDP
/* text alignment for toolbar buttons */
if((layout->root->type == UI_LAYOUT_TOOLBAR) && !icon)
but->flag |= UI_TEXT_LEFT;
-
+
+ if (flag & UI_ITEM_R_NO_BG)
+ uiBlockSetEmboss(block, UI_EMBOSS);
+
/* assign properties */
if(properties || (flag & UI_ITEM_O_RETURN_PROPS)) {
PointerRNA *opptr= uiButGetOperatorPtrRNA(but);
@@ -941,7 +951,7 @@ void uiItemFullR(uiLayout *layout, PointerRNA *ptr, PropertyRNA *prop, int index
}
/* expanded enum */
else if(type == PROP_ENUM && expand)
- ui_item_enum_row(layout, block, ptr, prop, name, 0, 0, w, h, icon_only);
+ ui_item_enum_expand(layout, block, ptr, prop, name, 0, 0, w, h, icon_only);
/* property with separate label */
else if(type == PROP_ENUM || type == PROP_STRING || type == PROP_POINTER) {
but= ui_item_with_label(layout, block, name, icon, ptr, prop, index, 0, 0, w, h, flag);
diff --git a/source/blender/makesrna/intern/rna_ui_api.c b/source/blender/makesrna/intern/rna_ui_api.c
index ccea5fbdf93..29d871dd66e 100644
--- a/source/blender/makesrna/intern/rna_ui_api.c
+++ b/source/blender/makesrna/intern/rna_ui_api.c
@@ -35,7 +35,7 @@
#ifdef RNA_RUNTIME
-static void rna_uiItemR(uiLayout *layout, PointerRNA *ptr, char *propname, char *name, int icon, int expand, int slider, int toggle, int icon_only, int event, int full_event, int no_bg, int index)
+static void rna_uiItemR(uiLayout *layout, PointerRNA *ptr, char *propname, char *name, int icon, int expand, int slider, int toggle, int icon_only, int event, int full_event, int emboss, int index)
{
PropertyRNA *prop= RNA_struct_find_property(ptr, propname);
int flag= 0;
@@ -51,14 +51,16 @@ static void rna_uiItemR(uiLayout *layout, PointerRNA *ptr, char *propname, char
flag |= (icon_only)? UI_ITEM_R_ICON_ONLY: 0;
flag |= (event)? UI_ITEM_R_EVENT: 0;
flag |= (full_event)? UI_ITEM_R_FULL_EVENT: 0;
- flag |= (no_bg)? UI_ITEM_R_NO_BG: 0;
+ flag |= (emboss)? 0: UI_ITEM_R_NO_BG;
uiItemFullR(layout, ptr, prop, index, 0, flag, name, icon);
}
-static PointerRNA rna_uiItemO(uiLayout *layout, char *opname, char *name, int icon)
+static PointerRNA rna_uiItemO(uiLayout *layout, char *opname, char *name, int icon, int emboss)
{
- return uiItemFullO(layout, opname, name, icon, NULL, uiLayoutGetOperatorContext(layout), UI_ITEM_O_RETURN_PROPS);
+ int flag= UI_ITEM_O_RETURN_PROPS;
+ flag |= (emboss)? 0: UI_ITEM_R_NO_BG;
+ return uiItemFullO(layout, opname, name, icon, NULL, uiLayoutGetOperatorContext(layout), flag);
}
#else
@@ -85,7 +87,7 @@ static void api_ui_item_op(FunctionRNA *func)
{
PropertyRNA *parm;
parm= RNA_def_string(func, "operator", "", 0, "", "Identifier of the operator.");
- RNA_def_property_flag(parm, PROP_REQUIRED);
+ RNA_def_property_flag(parm, PROP_REQUIRED);
}
static void api_ui_item_op_common(FunctionRNA *func)
@@ -160,7 +162,7 @@ void RNA_api_ui_layout(StructRNA *srna)
RNA_def_boolean(func, "icon_only", 0, "", "Draw only icons in buttons, no text.");
RNA_def_boolean(func, "event", 0, "", "Use button to input key events.");
RNA_def_boolean(func, "full_event", 0, "", "Use button to input full events including modifiers.");
- RNA_def_boolean(func, "no_bg", 0, "", "Don't draw the button itself, just the icon/text.");
+ RNA_def_boolean(func, "emboss", 1, "", "Draw the button itself, just the icon/text.");
RNA_def_int(func, "index", -1, -2, INT_MAX, "", "The index of this button, when set a single member of an array can be accessed, when set to -1 all array members are used.", -2, INT_MAX); /* RNA_NO_INDEX == -1 */
func= RNA_def_function(srna, "props_enum", "uiItemsEnumR");
@@ -186,6 +188,7 @@ void RNA_api_ui_layout(StructRNA *srna)
func= RNA_def_function(srna, "operator", "rna_uiItemO");
api_ui_item_op_common(func);
+ RNA_def_boolean(func, "emboss", 1, "", "Draw the button itself, just the icon/text.");
parm= RNA_def_pointer(func, "properties", "OperatorProperties", "", "Operator properties to fill in, return when 'properties' is set to true.");
RNA_def_property_flag(parm, PROP_REQUIRED|PROP_RNAPTR);
RNA_def_function_return(func, parm);