edc_navigator: not completed. but first patch set for base layout & infra

This commit is contained in:
Hermet Park 2016-02-22 20:44:07 +09:00
parent 28a622d04e
commit b891b071be
15 changed files with 129 additions and 17 deletions

2
README
View File

@ -36,7 +36,7 @@ F3 - Save
F4 - Load F4 - Load
F5 - Toggle Line Number F5 - Toggle Line Number
F9 - Toggle Tools F9 - Toggle Tools
F10 - Toggle Console F10 - Toggle EDC Navigator
F11 - Toggle Status F11 - Toggle Status
F12 - Settings F12 - Settings

View File

@ -18,7 +18,7 @@ F3 - Save</br>
F4 - Load</br> F4 - Load</br>
F5 - Toggle Line Number</br> F5 - Toggle Line Number</br>
F9 - Toggle Tools</br> F9 - Toggle Tools</br>
F10 - Toggle Console</br> F10 - Toggle EDC Navigator</br>
F11 - Toggle Status</br> F11 - Toggle Status</br>
F12 - Settings</br> F12 - Settings</br>
</br> </br>

View File

@ -21,6 +21,7 @@ images {
image: "live_textblock.png" COMP; image: "live_textblock.png" COMP;
image: "expand.png" COMP; image: "expand.png" COMP;
image: "invert.png" COMP; image: "invert.png" COMP;
image: "edc_navigator.png" COMP;
} }
#define ICON_GROUP(_group_name, _image_path) \ #define ICON_GROUP(_group_name, _image_path) \
@ -55,5 +56,6 @@ ICON_GROUP("Swallow", "live_swallow.png")
ICON_GROUP("Text", "live_text.png") ICON_GROUP("Text", "live_text.png")
ICON_GROUP("Textblock", "live_textblock.png") ICON_GROUP("Textblock", "live_textblock.png")
ICON_GROUP("close", "icon_close.png") ICON_GROUP("close", "icon_close.png")
ICON_GROUP("edc_navigator", "edc_navigator.png")
#undef ICON_GROUP #undef ICON_GROUP

View File

@ -70,4 +70,5 @@ EXTRA_DIST = \
horizontal_separated_bar_small_glow.png \ horizontal_separated_bar_small_glow.png \
expand.png \ expand.png \
invert.png \ invert.png \
icon_close.png icon_close.png \
edc_navigator.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

View File

@ -2387,7 +2387,7 @@ group { name: "main_layout";
type: SPACER; type: SPACER;
scale: 1; scale: 1;
description { description {
min: 640 440; min: 900 440;
} }
} }
part { name: "tools_base"; part { name: "tools_base";
@ -2427,12 +2427,12 @@ group { name: "main_layout";
image.border_scale: 1; image.border_scale: 1;
} }
} }
part { name: "elm.swallow.panes"; swallow { "elm.swallow.panes";
type: SWALLOW;
scale: 1; scale: 1;
description { state: "default" 0.0; desc { "default";
rel1.relative: 0 1; rel1.relative: 0 1;
rel2.relative: 1 0; rel2.relative: 0 0;
rel2.to: "elm.swallow.edc_navigator";
rel1.to_y: "elm.swallow.tools"; rel1.to_y: "elm.swallow.tools";
rel2.to_y: "elm.swallow.statusbar"; rel2.to_y: "elm.swallow.statusbar";
} }
@ -2465,8 +2465,36 @@ group { name: "main_layout";
align: 0.5 1; align: 0.5 1;
} }
} }
swallow { "elm.swallow.edc_navigator";
scale: 1;
desc { "default";
rel1.relative: 1 1;
rel2.relative: 1 0;
rel1.to_y: "elm.swallow.tools";
rel2.to_y: "elm.swallow.statusbar";
align: 1 0;
min: 0 0;
fixed: 1 0;
}
desc { "visible";
inherit: "default";
min: 150 0;
}
}
} }
programs { programs {
program { "edc_navigator_show";
signal: "elm,state,edc_navigator,show";
action: STATE_SET "visible" 0.0;
target: "elm.swallow.edc_navigator";
transition: DECELERATE 0.25;
}
program { "edc_navigator_hide";
signal: "elm,state,edc_navigator,hide";
action: STATE_SET "default" 0.0;
target: "elm.swallow.edc_navigator";
transition: DECELERATE 0.25;
}
program { name: "statusbar_show"; program { name: "statusbar_show";
signal: "elm,state,statusbar,show"; signal: "elm,state,statusbar,show";
action: STATE_SET "visible" 0.0; action: STATE_SET "visible" 0.0;

View File

@ -70,6 +70,19 @@ base_statusbar_toggle(Eina_Bool toggle)
elm_object_signal_emit(bd->layout, "elm,state,statusbar,hide", ""); elm_object_signal_emit(bd->layout, "elm,state,statusbar,hide", "");
} }
void base_edc_navigator_toggle(Eina_Bool toggle)
{
base_data *bd = g_bd;
assert(bd);
if (toggle) config_edc_navigator_set(!config_edc_navigator_get());
if (config_edc_navigator_get())
elm_object_signal_emit(bd->layout, "elm,state,edc_navigator,show", "");
else
elm_object_signal_emit(bd->layout, "elm,state,edc_navigator,hide", "");
}
void void
base_tools_toggle(Eina_Bool config) base_tools_toggle(Eina_Bool config)
{ {

View File

@ -38,6 +38,7 @@ typedef struct config_s
Eina_Bool console; Eina_Bool console;
Eina_Bool auto_complete; Eina_Bool auto_complete;
Eina_Bool smart_undo_redo; Eina_Bool smart_undo_redo;
Eina_Bool edc_navigator;
} config_data; } config_data;
static config_data *g_cd = NULL; static config_data *g_cd = NULL;
@ -158,7 +159,7 @@ config_load(void)
} }
} }
// loaded config is not compatile with current version of Enventor // loaded config is not compatile with current version of Enventor
if (cd->version < ENVENTOR_CONFIG_VERSION) if (!ef || cd->version < ENVENTOR_CONFIG_VERSION)
{ {
cd->img_path_list = NULL; cd->img_path_list = NULL;
cd->snd_path_list = NULL; cd->snd_path_list = NULL;
@ -180,6 +181,7 @@ config_load(void)
cd->auto_complete = EINA_TRUE; cd->auto_complete = EINA_TRUE;
cd->version = ENVENTOR_CONFIG_VERSION; cd->version = ENVENTOR_CONFIG_VERSION;
cd->smart_undo_redo = EINA_FALSE; cd->smart_undo_redo = EINA_FALSE;
cd->edc_navigator = EINA_TRUE;
} }
g_cd = cd; g_cd = cd;
@ -288,6 +290,8 @@ eddc_init(void)
auto_complete, EET_T_UCHAR); auto_complete, EET_T_UCHAR);
EET_DATA_DESCRIPTOR_ADD_BASIC(edd_base, config_data, "smart_undo_redo", EET_DATA_DESCRIPTOR_ADD_BASIC(edd_base, config_data, "smart_undo_redo",
smart_undo_redo, EET_T_UCHAR); smart_undo_redo, EET_T_UCHAR);
EET_DATA_DESCRIPTOR_ADD_BASIC(edd_base, config_data, "edc_navigator",
edc_navigator, EET_T_UCHAR);
} }
void void
@ -876,3 +880,17 @@ config_tools_set(Eina_Bool enabled)
config_data *cd = g_cd; config_data *cd = g_cd;
cd->tools = enabled; cd->tools = enabled;
} }
void
config_edc_navigator_set(Eina_Bool enabled)
{
config_data *cd = g_cd;
cd->edc_navigator = enabled;
}
Eina_Bool
config_edc_navigator_get(void)
{
config_data *cd = g_cd;
return cd->edc_navigator;
}

View File

@ -43,6 +43,7 @@ tools_update(void)
tools_highlight_update(EINA_FALSE); tools_highlight_update(EINA_FALSE);
tools_dummy_update(EINA_FALSE); tools_dummy_update(EINA_FALSE);
tools_status_update(EINA_FALSE); tools_status_update(EINA_FALSE);
tools_edc_navigator_update(EINA_FALSE);
} }
static void static void
@ -772,11 +773,11 @@ keygrabber_key_down_cb(void *data, Evas *e EINA_UNUSED,
base_tools_toggle(EINA_TRUE); base_tools_toggle(EINA_TRUE);
return; return;
} }
//Console //EDC Navigator
if (!strcmp(ev->key, "F10")) if (!strcmp(ev->key, "F10"))
{ {
enventor_object_ctxpopup_dismiss(ad->enventor); enventor_object_ctxpopup_dismiss(ad->enventor);
base_console_toggle(); tools_edc_navigator_update(EINA_TRUE);
return; return;
} }
//Statusbar //Statusbar

View File

@ -23,6 +23,7 @@ struct setting_s
Evas_Object *toggle_highlight; Evas_Object *toggle_highlight;
Evas_Object *toggle_swallow; Evas_Object *toggle_swallow;
Evas_Object *toggle_stats; Evas_Object *toggle_stats;
Evas_Object *toggle_edc_navigator;
Evas_Object *toggle_tools; Evas_Object *toggle_tools;
Evas_Object *toggle_console; Evas_Object *toggle_console;
@ -414,6 +415,11 @@ general_layout_create(setting_data *sd, Evas_Object *parent)
config_stats_bar_get()); config_stats_bar_get());
elm_box_pack_end(box, toggle_stats); elm_box_pack_end(box, toggle_stats);
//Toggle (EDC Navigator)
Evas_Object *toggle_edc_navigator = toggle_create(box, _("EDC Navigator"),
config_edc_navigator_get());
elm_box_pack_end(box, toggle_edc_navigator);
//Toggle (Tools) //Toggle (Tools)
Evas_Object *toggle_tools = toggle_create(box, _("Tools"), Evas_Object *toggle_tools = toggle_create(box, _("Tools"),
config_tools_get()); config_tools_get());
@ -435,6 +441,7 @@ general_layout_create(setting_data *sd, Evas_Object *parent)
sd->toggle_highlight = toggle_highlight; sd->toggle_highlight = toggle_highlight;
sd->toggle_swallow = toggle_swallow; sd->toggle_swallow = toggle_swallow;
sd->toggle_stats = toggle_stats; sd->toggle_stats = toggle_stats;
sd->toggle_edc_navigator = toggle_edc_navigator;
sd->toggle_tools = toggle_tools; sd->toggle_tools = toggle_tools;
sd->toggle_console = toggle_console; sd->toggle_console = toggle_console;

View File

@ -8,6 +8,7 @@ typedef struct tools_s
{ {
Evas_Object *swallow_btn; Evas_Object *swallow_btn;
Evas_Object *status_btn; Evas_Object *status_btn;
Evas_Object *edc_navigator_btn;
Evas_Object *lines_btn; Evas_Object *lines_btn;
Evas_Object *highlight_btn; Evas_Object *highlight_btn;
Evas_Object *goto_btn; Evas_Object *goto_btn;
@ -31,25 +32,33 @@ menu_cb(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
} }
static void static void
highlight_cb(void *data, Evas_Object *obj EINA_UNUSED, highlight_cb(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
void *event_info EINA_UNUSED) void *event_info EINA_UNUSED)
{ {
tools_highlight_update(EINA_TRUE); tools_highlight_update(EINA_TRUE);
} }
static void static void
dummy_cb(void *data, Evas_Object *obj EINA_UNUSED, dummy_cb(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
void *event_info EINA_UNUSED) void *event_info EINA_UNUSED)
{ {
tools_dummy_update(EINA_TRUE); tools_dummy_update(EINA_TRUE);
} }
static void static void
lines_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED) lines_cb(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
void *event_info EINA_UNUSED)
{ {
tools_lines_update(EINA_TRUE); tools_lines_update(EINA_TRUE);
} }
static void
edc_navigator_cb(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
void *event_info EINA_UNUSED)
{
tools_edc_navigator_update(EINA_TRUE);
}
static void static void
status_cb(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, status_cb(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED,
void *event_info EINA_UNUSED) void *event_info EINA_UNUSED)
@ -238,7 +247,6 @@ tools_init(Evas_Object *parent)
elm_box_pack_end(box, btn); elm_box_pack_end(box, btn);
td->lines_btn = btn; td->lines_btn = btn;
sp = elm_separator_add(box); sp = elm_separator_add(box);
evas_object_show(sp); evas_object_show(sp);
elm_box_pack_end(box, sp); elm_box_pack_end(box, sp);
@ -250,6 +258,13 @@ tools_init(Evas_Object *parent)
elm_box_pack_end(box, btn); elm_box_pack_end(box, btn);
td->console_btn = btn; td->console_btn = btn;
btn = tools_btn_create(box, "edc_navigator", _("EDC Navigator (F10)"),
edc_navigator_cb);
evas_object_size_hint_weight_set(btn, 0, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, 1.0, EVAS_HINT_FILL);
elm_box_pack_end(box, btn);
td->edc_navigator_btn = btn;
btn = tools_btn_create(box, "status", _("Status (F11)"), status_cb); btn = tools_btn_create(box, "status", _("Status (F11)"), status_cb);
evas_object_size_hint_weight_set(btn, 0, EVAS_HINT_EXPAND); evas_object_size_hint_weight_set(btn, 0, EVAS_HINT_EXPAND);
evas_object_size_hint_align_set(btn, 1.0, EVAS_HINT_FILL); evas_object_size_hint_align_set(btn, 1.0, EVAS_HINT_FILL);
@ -309,6 +324,29 @@ tools_highlight_update(Eina_Bool toggle)
elm_object_signal_emit(td->highlight_btn, "icon,highlight,disabled", ""); elm_object_signal_emit(td->highlight_btn, "icon,highlight,disabled", "");
} }
void
tools_edc_navigator_update(Eina_Bool toggle)
{
tools_data *td = g_td;
if (!td) return;
if (toggle) config_edc_navigator_set(!config_edc_navigator_get());
base_edc_navigator_toggle(EINA_FALSE);
//Toggle on/off
if (config_edc_navigator_get())
{
elm_object_signal_emit(td->edc_navigator_btn, "icon,highlight,enabled",
"");
}
else
{
elm_object_signal_emit(td->edc_navigator_btn, "icon,highlight,disabled",
"");
}
}
void void
tools_lines_update(Eina_Bool toggle) tools_lines_update(Eina_Bool toggle)
{ {

View File

@ -21,3 +21,4 @@ void base_gui_term(void);
void base_console_reset(void); void base_console_reset(void);
void base_error_msg_set(const char *msg); void base_error_msg_set(const char *msg);
void base_console_full_view(void); void base_console_full_view(void);
void base_edc_navigator_toggle(Eina_Bool toggle);

View File

@ -57,7 +57,7 @@ EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n"
#define ROUNDING(x, dig) (floor((x) * pow(10, dig) + 0.5) / pow(10, dig)) #define ROUNDING(x, dig) (floor((x) * pow(10, dig) + 0.5) / pow(10, dig))
#define ENVENTOR_CONFIG_VERSION 4 #define ENVENTOR_CONFIG_VERSION 5
#define EVENT_KEY_MODIFIER_CHECK(NAME, MASK) \ #define EVENT_KEY_MODIFIER_CHECK(NAME, MASK) \
((MASK & ECORE_EVENT_MODIFIER_##NAME) && \ ((MASK & ECORE_EVENT_MODIFIER_##NAME) && \

View File

@ -58,3 +58,5 @@ void config_win_size_get(Evas_Coord *w, Evas_Coord *h);
void config_win_size_set(Evas_Coord w, Evas_Coord h); void config_win_size_set(Evas_Coord w, Evas_Coord h);
void config_smart_undo_redo_set(Eina_Bool smart_undo_redo); void config_smart_undo_redo_set(Eina_Bool smart_undo_redo);
Eina_Bool config_smart_undo_redo_get(void); Eina_Bool config_smart_undo_redo_get(void);
void config_edc_navigator_set(Eina_Bool enabled);
Eina_Bool config_edc_navigator_get(void);

View File

@ -5,6 +5,7 @@ void tools_highlight_update(Eina_Bool toggle);
void tools_lines_update(Eina_Bool toggle); void tools_lines_update(Eina_Bool toggle);
void tools_dummy_update(Eina_Bool toggle); void tools_dummy_update(Eina_Bool toggle);
void tools_status_update(Eina_Bool toggle); void tools_status_update(Eina_Bool toggle);
void tools_edc_navigator_update(Eina_Bool toggle);
void tools_goto_update(void); void tools_goto_update(void);
void tools_search_update(void); void tools_search_update(void);
void tools_live_update(Eina_Bool on); void tools_live_update(Eina_Bool on);