add support for channel passwords in config dialog
Signed-off-by: Chris Michael <cp.michael@samsung.com>
This commit is contained in:
parent
25684561ed
commit
90626cf98e
|
@ -5,7 +5,7 @@
|
|||
/* local variables */
|
||||
static Evas_Object *o_list = NULL;
|
||||
static Evas_Object *o_del = NULL;
|
||||
static Evas_Object *o_name = NULL;
|
||||
static Evas_Object *o_name = NULL, *o_pass = NULL;
|
||||
static Config_Network *_cfg_net = NULL;
|
||||
|
||||
static void
|
||||
|
@ -25,6 +25,23 @@ _cb_name_changed(void *data EINA_UNUSED, Evas_Object *obj, void *event EINA_UNUS
|
|||
elm_object_item_part_text_set(item, "elm.text", txt);
|
||||
}
|
||||
|
||||
static void
|
||||
_cb_pass_changed(void *data EINA_UNUSED, Evas_Object *obj, void *event EINA_UNUSED)
|
||||
{
|
||||
Elm_Object_Item *item;
|
||||
Config_Channel *cfg_chl = NULL;
|
||||
const char *txt;
|
||||
|
||||
if (!(item = elm_list_selected_item_get(o_list))) return;
|
||||
if (!(cfg_chl = elm_object_item_data_get(item))) return;
|
||||
|
||||
txt = elm_entry_entry_get(obj);
|
||||
eina_stringshare_replace(&cfg_chl->pass, txt);
|
||||
_config_save();
|
||||
|
||||
elm_object_item_part_text_set(item, "elm.text", txt);
|
||||
}
|
||||
|
||||
static void
|
||||
_cb_chl_sel(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event EINA_UNUSED)
|
||||
{
|
||||
|
@ -39,6 +56,7 @@ _cb_chl_sel(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event EI
|
|||
elm_entry_entry_set(o_name, cfg_chl->name);
|
||||
|
||||
elm_object_disabled_set(o_name, EINA_FALSE);
|
||||
elm_object_disabled_set(o_pass, EINA_FALSE);
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -68,8 +86,10 @@ _cb_chl_add(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event EI
|
|||
elm_list_go(o_list);
|
||||
|
||||
elm_entry_entry_set(o_name, cfg_chl->name);
|
||||
elm_entry_entry_set(o_pass, cfg_chl->pass);
|
||||
|
||||
elm_object_disabled_set(o_name, EINA_FALSE);
|
||||
elm_object_disabled_set(o_pass, EINA_FALSE);
|
||||
|
||||
elm_object_focus_set(o_name, EINA_TRUE);
|
||||
elm_entry_cursor_end_set(o_name);
|
||||
|
@ -91,6 +111,8 @@ _cb_chl_del(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event EI
|
|||
eina_list_remove(_cfg_net->channels, cfg_chl);
|
||||
|
||||
if (cfg_chl->name) eina_stringshare_del(cfg_chl->name);
|
||||
if (cfg_chl->pass) eina_stringshare_del(cfg_chl->pass);
|
||||
|
||||
free(cfg_chl);
|
||||
|
||||
_config_save();
|
||||
|
@ -103,6 +125,7 @@ _cb_chl_del(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event EI
|
|||
elm_entry_entry_set(o_name, NULL);
|
||||
|
||||
elm_object_disabled_set(o_name, EINA_TRUE);
|
||||
elm_object_disabled_set(o_pass, EINA_TRUE);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -212,5 +235,27 @@ _options_channels(Evas_Object *box, Evas_Object *base EINA_UNUSED, Config_Networ
|
|||
elm_table_pack(tb, o_name, 1, 0, 2, 1);
|
||||
evas_object_show(o_name);
|
||||
|
||||
o = elm_label_add(box);
|
||||
elm_object_text_set(o, "Password");
|
||||
evas_object_size_hint_weight_set(o, EVAS_HINT_FILL, 0.0);
|
||||
evas_object_size_hint_align_set(o, 0.0, EVAS_HINT_FILL);
|
||||
elm_table_pack(tb, o, 0, 1, 1, 1);
|
||||
evas_object_show(o);
|
||||
|
||||
o_pass = elm_entry_add(box);
|
||||
elm_entry_single_line_set(o_pass, EINA_TRUE);
|
||||
elm_entry_scrollable_set(o_pass, EINA_TRUE);
|
||||
elm_entry_input_panel_layout_set(o_pass, ELM_INPUT_PANEL_LAYOUT_PASSWORD);
|
||||
elm_scroller_policy_set(o_name, ELM_SCROLLER_POLICY_OFF,
|
||||
ELM_SCROLLER_POLICY_OFF);
|
||||
evas_object_size_hint_weight_set(o_pass,
|
||||
EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
|
||||
evas_object_size_hint_align_set(o_pass, EVAS_HINT_FILL, EVAS_HINT_FILL);
|
||||
evas_object_smart_callback_add(o_pass, "changed,user",
|
||||
_cb_pass_changed, NULL);
|
||||
elm_table_pack(tb, o_pass, 1, 1, 2, 1);
|
||||
evas_object_show(o_pass);
|
||||
|
||||
elm_object_disabled_set(o_name, EINA_TRUE);
|
||||
elm_object_disabled_set(o_pass, EINA_TRUE);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue