diff options
author | Campbell Barton <ideasman42@gmail.com> | 2014-01-27 11:38:53 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2014-01-27 11:42:11 +0400 |
commit | a71f072f9ccaae043069df1cbf95c169a60e494e (patch) | |
tree | 6e24b45d6dbeff8f6a3774373aeb0171a37fd55a /source/blender | |
parent | 8f2eec5a15b5f26bfbe73382677add202adc89a9 (diff) |
UI: Replace +/- menus with collapsible ones
Patch D160, by Scott Petrovic with own modifications.
Diffstat (limited to 'source/blender')
-rw-r--r-- | source/blender/editors/include/ED_screen.h | 1 | ||||
-rw-r--r-- | source/blender/editors/include/UI_icons.h | 4 | ||||
-rw-r--r-- | source/blender/editors/include/UI_interface.h | 2 | ||||
-rw-r--r-- | source/blender/editors/interface/interface_templates.c | 5 | ||||
-rw-r--r-- | source/blender/editors/screen/area.c | 33 | ||||
-rw-r--r-- | source/blender/editors/screen/screen_ops.c | 11 | ||||
-rw-r--r-- | source/blender/makesrna/intern/rna_ui_api.c | 1 |
7 files changed, 9 insertions, 48 deletions
diff --git a/source/blender/editors/include/ED_screen.h b/source/blender/editors/include/ED_screen.h index d80e40d2455..b432e611c56 100644 --- a/source/blender/editors/include/ED_screen.h +++ b/source/blender/editors/include/ED_screen.h @@ -73,7 +73,6 @@ void ED_region_visible_rect(struct ARegion *ar, struct rcti *rect); /* spaces */ void ED_spacetypes_keymap(struct wmKeyConfig *keyconf); int ED_area_header_switchbutton(const struct bContext *C, struct uiBlock *block, int yco); -int ED_area_header_standardbuttons(const struct bContext *C, struct uiBlock *block, int yco); /* areas */ diff --git a/source/blender/editors/include/UI_icons.h b/source/blender/editors/include/UI_icons.h index 27205771d1a..dcc526b81d2 100644 --- a/source/blender/editors/include/UI_icons.h +++ b/source/blender/editors/include/UI_icons.h @@ -51,9 +51,7 @@ DEF_ICON(MENU_PANEL) DEF_ICON(BLENDER) DEF_ICON(GRIP) DEF_ICON(DOT) -#ifndef DEF_ICON_BLANK_SKIP - DEF_ICON(BLANK004) -#endif +DEF_ICON(COLLAPSEMENU) DEF_ICON(X) #ifndef DEF_ICON_BLANK_SKIP DEF_ICON(BLANK005) diff --git a/source/blender/editors/include/UI_interface.h b/source/blender/editors/include/UI_interface.h index 3a48e943da2..65811b7c009 100644 --- a/source/blender/editors/include/UI_interface.h +++ b/source/blender/editors/include/UI_interface.h @@ -820,7 +820,7 @@ uiLayout *uiLayoutOverlap(uiLayout *layout); uiBlock *uiLayoutAbsoluteBlock(uiLayout *layout); /* templates */ -void uiTemplateHeader(uiLayout *layout, struct bContext *C, int menus); +void uiTemplateHeader(uiLayout *layout, struct bContext *C); void uiTemplateID(uiLayout *layout, struct bContext *C, struct PointerRNA *ptr, const char *propname, const char *newop, const char *openop, const char *unlinkop); void uiTemplateIDBrowse(uiLayout *layout, struct bContext *C, struct PointerRNA *ptr, const char *propname, diff --git a/source/blender/editors/interface/interface_templates.c b/source/blender/editors/interface/interface_templates.c index 14ec4d5e0f0..0aa9368fc5f 100644 --- a/source/blender/editors/interface/interface_templates.c +++ b/source/blender/editors/interface/interface_templates.c @@ -91,13 +91,12 @@ void UI_template_fix_linking(void) /********************** Header Template *************************/ -void uiTemplateHeader(uiLayout *layout, bContext *C, int menus) +void uiTemplateHeader(uiLayout *layout, bContext *C) { uiBlock *block; block = uiLayoutAbsoluteBlock(layout); - if (menus) ED_area_header_standardbuttons(C, block, 0); - else ED_area_header_switchbutton(C, block, 0); + ED_area_header_switchbutton(C, block, 0); } /********************** Search Callbacks *************************/ diff --git a/source/blender/editors/screen/area.c b/source/blender/editors/screen/area.c index 2c691505877..25b6f241d9b 100644 --- a/source/blender/editors/screen/area.c +++ b/source/blender/editors/screen/area.c @@ -1533,39 +1533,6 @@ int ED_area_header_switchbutton(const bContext *C, uiBlock *block, int yco) return xco + 1.7 * U.widget_unit; } -int ED_area_header_standardbuttons(const bContext *C, uiBlock *block, int yco) -{ - ScrArea *sa = CTX_wm_area(C); - int xco = 0.4 * U.widget_unit; - uiBut *but; - - if (!sa->full) - xco = ED_area_header_switchbutton(C, block, yco); - - uiBlockSetEmboss(block, UI_EMBOSSN); - - if (sa->flag & HEADER_NO_PULLDOWN) { - but = uiDefIconButBitS(block, TOG, HEADER_NO_PULLDOWN, 0, - ICON_DISCLOSURE_TRI_RIGHT, - xco, yco, U.widget_unit, U.widget_unit * 0.9f, - &(sa->flag), 0, 0, 0, 0, - TIP_("Show pulldown menus")); - } - else { - but = uiDefIconButBitS(block, TOG, HEADER_NO_PULLDOWN, 0, - ICON_DISCLOSURE_TRI_DOWN, - xco, yco, U.widget_unit, U.widget_unit * 0.9f, - &(sa->flag), 0, 0, 0, 0, - TIP_("Hide pulldown menus")); - } - - uiButClearFlag(but, UI_BUT_UNDO); /* skip undo on screen buttons */ - - uiBlockSetEmboss(block, UI_EMBOSS); - - return xco + U.widget_unit; -} - /************************ standard UI regions ************************/ void ED_region_panels(const bContext *C, ARegion *ar, int vertical, const char *context, int contextnr) diff --git a/source/blender/editors/screen/screen_ops.c b/source/blender/editors/screen/screen_ops.c index f9e366a2646..8b7246b4b90 100644 --- a/source/blender/editors/screen/screen_ops.c +++ b/source/blender/editors/screen/screen_ops.c @@ -3046,9 +3046,9 @@ static int header_toggle_menus_exec(bContext *C, wmOperator *UNUSED(op)) static void SCREEN_OT_header_toggle_menus(wmOperatorType *ot) { /* identifiers */ - ot->name = "Show/Hide Header Menus"; + ot->name = "Expand/Collapse Header Menus"; ot->idname = "SCREEN_OT_header_toggle_menus"; - ot->description = "Show or hide the header pulldown menus"; + ot->description = "Expand or collapse the header pulldown menus"; /* api callbacks */ ot->exec = header_toggle_menus_exec; @@ -3069,10 +3069,9 @@ void ED_screens_header_tools_menu_create(bContext *C, uiLayout *layout, void *UN else uiItemO(layout, IFACE_("Flip to Top"), ICON_NONE, "SCREEN_OT_header_flip"); - if (sa->flag & HEADER_NO_PULLDOWN) - uiItemO(layout, IFACE_("Show Menus"), ICON_NONE, "SCREEN_OT_header_toggle_menus"); - else - uiItemO(layout, IFACE_("Hide Menus"), ICON_NONE, "SCREEN_OT_header_toggle_menus"); + uiItemO(layout, IFACE_("Collapse Menus"), + (sa->flag & HEADER_NO_PULLDOWN) ? ICON_CHECKBOX_HLT : ICON_CHECKBOX_DEHLT, + "SCREEN_OT_header_toggle_menus"); uiItemS(layout); diff --git a/source/blender/makesrna/intern/rna_ui_api.c b/source/blender/makesrna/intern/rna_ui_api.c index f3f31b5dd66..adabc1dd761 100644 --- a/source/blender/makesrna/intern/rna_ui_api.c +++ b/source/blender/makesrna/intern/rna_ui_api.c @@ -631,7 +631,6 @@ void RNA_api_ui_layout(StructRNA *srna) /* templates */ func = RNA_def_function(srna, "template_header", "uiTemplateHeader"); RNA_def_function_flag(func, FUNC_USE_CONTEXT); - RNA_def_boolean(func, "menus", true, "", "The header has menus, and should show menu expander"); func = RNA_def_function(srna, "template_ID", "uiTemplateID"); RNA_def_function_flag(func, FUNC_USE_CONTEXT); |