#include "elm_priv.h"\r
\r
/**\r
- * @defgroup Buttonentry Buttonentry\r
+ * @defgroup Multibuttonentry Multibuttonentry\r
* @ingroup Elementary\r
*\r
- * This is a Buttonentry.\r
+ * This is a Multibuttonentry.\r
*/\r
\r
\r
#define MAX_LABEL 20 \r
#define MIN_ENTRY_WIDTH 50\r
\r
-typedef struct _Buttonentry_Item Buttonentry_Item;\r
-struct _Buttonentry_Item {\r
- Evas_Object *buttonentry;\r
+typedef struct _Multibuttonentry_Item Multibuttonentry_Item;\r
+struct _Multibuttonentry_Item {\r
+ Evas_Object *multibuttonentry;\r
Evas_Object *button;\r
Evas_Object *hbox;\r
Evas_Object *row;\r
static void _view_init(Evas_Object *obj);\r
static void _view_update(Evas_Object *obj);\r
static Evas_Object* _add_row(Evas_Object *obj, const char* label);\r
-static Buttonentry_Item* _add_button_item(Evas_Object *obj, char *str);\r
+static Multibuttonentry_Item* _add_button_item(Evas_Object *obj, char *str);\r
\r
static void _del_row(Evas_Object *obj, Evas_Object *row);\r
\r
evas_object_box_remove_all(wd->vbox, 1);\r
\r
if (wd->items) {\r
- Buttonentry_Item *item;\r
+ Multibuttonentry_Item *item;\r
EINA_LIST_FREE(wd->items, item) {\r
free(item);\r
}\r
Widget_Data *wd = elm_widget_data_get(obj);\r
if (!wd) return;\r
\r
- _elm_theme_object_set(obj, wd->base, "buttonentry", "base", elm_widget_style_get(obj));\r
+ _elm_theme_object_set(obj, wd->base, "multibuttonentry", "base", elm_widget_style_get(obj));\r
_view_update(obj);\r
_sizing_eval(obj);\r
}\r
_change_current_button(Evas_Object *obj, Evas_Object *btn)\r
{\r
Eina_List *l;\r
- Buttonentry_Item *item;\r
+ Multibuttonentry_Item *item;\r
Widget_Data *wd = elm_widget_data_get(obj);\r
Evas_Object *label;\r
if (!wd) return;\r
evas_object_event_callback_add(wd->base, EVAS_CALLBACK_RESIZE, _resize_cb, obj);\r
}\r
\r
-static Buttonentry_Item*\r
+static Multibuttonentry_Item*\r
_add_button_item(Evas_Object *obj, char *str)\r
{\r
- Buttonentry_Item *item;\r
+ Multibuttonentry_Item *item;\r
Evas_Object *btn;\r
Evas_Object *label;\r
Evas_Coord w_label, w_btn, padding_outer, padding_inner;\r
\r
// add button\r
btn = edje_object_add(evas_object_evas_get(obj));\r
- _elm_theme_object_set(obj, btn, "buttonentry", "btn", elm_widget_style_get(obj)); \r
+ _elm_theme_object_set(obj, btn, "multibuttonentry", "btn", elm_widget_style_get(obj)); \r
evas_object_show(btn);\r
\r
edje_object_signal_callback_add(btn, "clicked", "elm", _button_clicked, obj);\r
\r
// add label\r
label = elm_label_add(obj);\r
- elm_object_style_set(label, "extended/buttonentry");\r
+ elm_object_style_set(label, "extended/multibuttonentry");\r
elm_label_label_set(label, str);\r
elm_label_ellipsis_set(label, EINA_TRUE);\r
elm_label_wrap_width_set(label, 5000);\r
evas_object_resize(btn, w_btn, 0);\r
\r
// append item list\r
- item = ELM_NEW(Buttonentry_Item);\r
+ item = ELM_NEW(Multibuttonentry_Item);\r
if (item) {\r
item->button = btn;\r
item->w = w_btn;\r
item->rw = w_btn;\r
- item->buttonentry = obj;\r
+ item->multibuttonentry = obj;\r
wd->items = eina_list_append(wd->items, item);\r
}\r
\r
_del_button_item(Evas_Object *obj, Evas_Object *btn)\r
{\r
Eina_List *l;\r
- Buttonentry_Item *item;\r
+ Multibuttonentry_Item *item;\r
Evas_Object *label;\r
Widget_Data *wd = elm_widget_data_get(obj);\r
if(!wd || !btn) return;\r
\r
// row\r
row = edje_object_add(evas_object_evas_get(obj));\r
- _elm_theme_object_set(obj, row, "buttonentry", "row", elm_widget_style_get(obj)); \r
+ _elm_theme_object_set(obj, row, "multibuttonentry", "row", elm_widget_style_get(obj)); \r
evas_object_show(row);\r
evas_object_box_append(wd->vbox, row);\r
evas_object_box_align_set(wd->vbox, 0.0, 0.0);\r
elm_entry_entry_set(wd->entry, "");\r
\r
// add button\r
- Buttonentry_Item *item = _add_button_item(obj, str);\r
+ Multibuttonentry_Item *item = _add_button_item(obj, str);\r
btn = item->button;\r
edje_object_signal_emit(last_row,"default", "");\r
\r
\r
}else{\r
Eina_List *l;\r
- Buttonentry_Item *item;\r
+ Multibuttonentry_Item *item;\r
Eina_List *rows;\r
Evas_Object* cur_row;\r
Evas_Object* cur_box;\r
\r
//printf("\n>>>>>>[%s][%d]key val = %s\n", __FUNCTION__, __LINE__, ev->keyname);\r
\r
- if((strcmp(str, "") == 0) && ((strcmp(ev->keyname, "BackSpace") == 0)||(strcmp(ev->keyname, "BackSpace(") == 0))){ // for simul\r
+ if((strcmp(str, "") == 0) && ((strcmp(ev->keyname, "BackSpace") == 0)||(strcmp(ev->keyname, "BackSpace(") == 0))){ \r
_del_button(data); \r
}\r
- else if((strcmp(str, "") != 0) && (strcmp(ev->keyname, "KP_Enter") == 0)){// KP_Enter\r
+ else if((strcmp(str, "") != 0) && (strcmp(ev->keyname, "KP_Enter") == 0 ||strcmp(ev->keyname, "Return") == 0 )){\r
_add_button(data, str);\r
}else{\r
//\r
}\r
\r
/**\r
- * Add a new buttonentry to the parent\r
+ * Add a new multibuttonentry to the parent\r
*\r
* @param parent The parent object\r
* @return The new object or NULL if it cannot be created\r
*\r
- * @ingroup Buttonentry\r
+ * @ingroup Multibuttonentry\r
*/\r
EAPI Evas_Object *\r
-elm_buttonentry_add(Evas_Object *parent)\r
+elm_multibuttonentry_add(Evas_Object *parent)\r
{\r
Evas_Object *obj;\r
Evas *e;\r
wd = ELM_NEW(Widget_Data);\r
e = evas_object_evas_get(parent);\r
obj = elm_widget_add(e);\r
- elm_widget_type_set(obj, "buttonentry");\r
+ elm_widget_type_set(obj, "multibuttonentry");\r
elm_widget_sub_object_add(parent, obj);\r
elm_widget_data_set(obj, wd);\r
\r
elm_widget_theme_hook_set(obj, _theme_hook);\r
\r
wd->base = edje_object_add(e);\r
- _elm_theme_object_set(obj, wd->base, "buttonentry", "base", "default");\r
+ _elm_theme_object_set(obj, wd->base, "multibuttonentry", "base", "default");\r
elm_widget_resize_object_set(obj, wd->base);\r
evas_object_show(wd->base);\r
\r
/**\r
* Get the label\r
*\r
- * @param obj The buttonentry object\r
+ * @param obj The multibuttonentry object\r
* @return The label, or NULL if none\r
*\r
- * @ingroup Buttonentry\r
+ * @ingroup Multibuttonentry\r
*/\r
\r
EAPI const char *\r
-elm_buttonentry_label_get(Evas_Object *obj)\r
+elm_multibuttonentry_label_get(Evas_Object *obj)\r
{\r
Widget_Data *wd = elm_widget_data_get(obj);\r
if (!wd) return NULL;\r
/**\r
* Set the label\r
*\r
- * @param obj The buttonentry object\r
+ * @param obj The multibuttonentry object\r
* @param label The text label string in UTF-8\r
*\r
- * @ingroup Buttonentry\r
+ * @ingroup Multibuttonentry\r
*/\r
EAPI void\r
-elm_buttonentry_label_set(Evas_Object *obj, const char *label)\r
+elm_multibuttonentry_label_set(Evas_Object *obj, const char *label)\r
{\r
Widget_Data *wd = elm_widget_data_get(obj);\r
Evas_Object *row;\r