elm theme/test - add start of nviframe window style and test it

This commit is contained in:
Carsten Haitzler 2017-01-12 18:02:18 +09:00
parent 4d8b6d54bc
commit 11432d42a7
5 changed files with 137 additions and 25 deletions

View File

@ -994,6 +994,99 @@ group { name: "elm/border/base/default";
} }
} }
group { name: "elm/border/base/dialog";
inherit: "elm/border/base/default";
parts {
text { "elm.text.title";
clip: "top_clip";
desc { "default";
rel2.to_x: "elm.event.close";
}
desc { "focused";
inherit: "default";
visible: 0;
}
}
text { "title2";
desc { "default";
rel2.to_x: "elm.event.close";
}
desc { "focused";
inherit: "default";
visible: 1;
}
}
image { "max1";
desc { "default";
visible: 0;
}
desc { "selected";
visible: 0;
}
}
image { "min1";
desc { "default";
visible: 0;
}
desc { "selected";
visible: 0;
}
}
image { "max2";
desc { "default";
visible: 0;
}
desc { "selected";
visible: 0;
}
}
image { "min2";
desc { "default";
visible: 0;
}
desc { "selected";
visible: 0;
}
}
rect { "elm.event.maximize";
desc { "default";
visible: 0;
}
}
rect { "elm.event.minimize";
desc { "default";
visible: 0;
}
}
}
}
group { name: "elm/border/base/naviframe";
images.image: "sym_left_dark_normal.png" COMP;
images.image: "sym_left_glow_normal.png" COMP;
images.image: "sym_left_light_normal.png" COMP;
inherit: "elm/border/base/dialog";
parts {
image { "close1";
desc { "default";
image.normal: "sym_left_dark_normal.png";
}
desc { "selected";
image.normal: "sym_left_glow_normal.png";
}
}
image { "close2"; nomouse;
clip: "clip2";
desc { "default";
image.normal: "sym_left_light_normal.png";
}
desc { "selected";
image.normal: "sym_left_glow_normal.png";
}
}
}
}
#undef UNRESIZABLE #undef UNRESIZABLE
#undef BORDERLESS #undef BORDERLESS
#undef MAXIMIZED #undef MAXIMIZED

View File

@ -15,11 +15,17 @@ _win_new(Evas_Object *stack_top, const char *title)
Evas_Object *bg, *bx, *bt, *lb, *win; Evas_Object *bg, *bx, *bt, *lb, *win;
if (level >= 3) if (level >= 3)
win = elm_win_add(NULL, "window-stack", ELM_WIN_DIALOG_BASIC); win = efl_add(EFL_UI_WIN_CLASS, NULL,
efl_ui_win_name_set(efl_added, "window-stack"),
efl_ui_win_type_set(efl_added, ELM_WIN_NAVIFRAME_BASIC),
efl_text_set(efl_added, title),
efl_ui_win_autodel_set(efl_added, EINA_TRUE));
else else
win = elm_win_add(NULL, "window-stack", ELM_WIN_BASIC); win = efl_add(EFL_UI_WIN_CLASS, NULL,
elm_win_title_set(win, title); efl_ui_win_name_set(efl_added, "window-stack"),
elm_win_autodel_set(win, EINA_TRUE); efl_ui_win_type_set(efl_added, ELM_WIN_DIALOG_BASIC),
efl_text_set(efl_added, title),
efl_ui_win_autodel_set(efl_added, EINA_TRUE));
if (level == 3) popto_win = win; if (level == 3) popto_win = win;

View File

@ -5103,6 +5103,8 @@ _elm_win_finalize_internal(Eo *obj, Efl_Ui_Win_Data *sd, const char *name, Elm_W
/* do not append to list; all windows render as black rects */ /* do not append to list; all windows render as black rects */
if (type != ELM_WIN_FAKE) if (type != ELM_WIN_FAKE)
{ {
const char *style = "default";
_elm_win_list = eina_list_append(_elm_win_list, obj); _elm_win_list = eina_list_append(_elm_win_list, obj);
_elm_win_count++; _elm_win_count++;
@ -5111,7 +5113,13 @@ _elm_win_finalize_internal(Eo *obj, Efl_Ui_Win_Data *sd, const char *name, Elm_W
{ {
TRAP(sd, fullscreen_set, 1); TRAP(sd, fullscreen_set, 1);
} }
_elm_win_frame_add(sd, "default"); switch (type)
{
case EFL_UI_WIN_DIALOG_BASIC: style = "dialog"; break;
case EFL_UI_WIN_NAVIFRAME_BASIC: style = "naviframe"; break;
default: break;
}
_elm_win_frame_add(sd, style);
if (_elm_config->focus_highlight_enable) if (_elm_config->focus_highlight_enable)
elm_win_focus_highlight_enabled_set(obj, EINA_TRUE); elm_win_focus_highlight_enabled_set(obj, EINA_TRUE);

View File

@ -53,11 +53,15 @@ enum Efl.Ui.Win.Type
contents will be rendered to an image buffer and can be contents will be rendered to an image buffer and can be
shown other process's plug image object. shown other process's plug image object.
]] ]]
fake [[This window was created using a pre-existing canvas. The window fake, [[This window was created using a pre-existing canvas. The window
widget can be deleted, but the canvas must be managed externally. widget can be deleted, but the canvas must be managed externally.
@since 1.13 @since 1.13
]] ]]
naviframe_basic [[Used for naviframe style replacement with a back
button instead of a close button.
@since 1.19
]]
} }
enum Efl.Ui.Win.Keyboard_Mode enum Efl.Ui.Win.Keyboard_Mode

View File

@ -70,6 +70,7 @@ typedef Efl_Ui_Win_Type Elm_Win_Type;
#define ELM_WIN_INLINED_IMAGE EFL_UI_WIN_INLINED_IMAGE #define ELM_WIN_INLINED_IMAGE EFL_UI_WIN_INLINED_IMAGE
#define ELM_WIN_SOCKET_IMAGE EFL_UI_WIN_SOCKET_IMAGE #define ELM_WIN_SOCKET_IMAGE EFL_UI_WIN_SOCKET_IMAGE
#define ELM_WIN_FAKE EFL_UI_WIN_FAKE #define ELM_WIN_FAKE EFL_UI_WIN_FAKE
#define ELM_WIN_NAVIFRAME_BASIC EFL_UI_WIN_NAVIFRAME_BASIC
typedef Efl_Ui_Win_Keyboard_Mode Elm_Win_Keyboard_Mode; typedef Efl_Ui_Win_Keyboard_Mode Elm_Win_Keyboard_Mode;