elementary/fileselector - added new api. elm_fileselector_entry_entry_get()
authorChunEon Park <hermet@hermet.pe.kr>
Sun, 28 Jul 2013 16:31:49 +0000 (01:31 +0900)
committerChunEon Park <hermet@hermet.pe.kr>
Sun, 28 Jul 2013 16:31:49 +0000 (01:31 +0900)
src/lib/elc_fileselector.c
src/lib/elc_fileselector_eo.h
src/lib/elc_fileselector_legacy.h

index 8d951af..61035f8 100644 (file)
@@ -1272,6 +1272,25 @@ _selected_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list)
 
 }
 
+EAPI const char *
+elm_fileselector_entry_entry_get(const Evas_Object *obj)
+{
+   ELM_FILESELECTOR_CHECK(obj) NULL;
+   char *ret;
+   eo_do((Eo *) obj, elm_obj_fileselector_entry_entry_get(&ret));
+   return ret;
+}
+
+static void
+_entry_entry_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list)
+{
+   const char **ret = va_arg(*list, const char **);
+   *ret = NULL;
+   Elm_Fileselector_Smart_Data *sd = _pd;
+
+   *ret = elm_object_text_get(sd->path_entry);
+}
+
 EAPI Eina_Bool
 elm_fileselector_selected_set(Evas_Object *obj,
                               const char *_path)
@@ -1474,11 +1493,14 @@ _class_constructor(Eo_Class *klass)
         EO_OP_FUNC(ELM_OBJ_FILESELECTOR_ID(ELM_OBJ_FILESELECTOR_SUB_ID_PATH_SET), _path_set),
         EO_OP_FUNC(ELM_OBJ_FILESELECTOR_ID(ELM_OBJ_FILESELECTOR_SUB_ID_PATH_GET), _path_get),
         EO_OP_FUNC(ELM_OBJ_FILESELECTOR_ID(ELM_OBJ_FILESELECTOR_SUB_ID_MODE_SET), _mode_set),
+
         EO_OP_FUNC(ELM_OBJ_FILESELECTOR_ID(ELM_OBJ_FILESELECTOR_SUB_ID_MODE_GET), _mode_get),
         EO_OP_FUNC(ELM_OBJ_FILESELECTOR_ID(ELM_OBJ_FILESELECTOR_SUB_ID_SELECTED_GET), _selected_get),
         EO_OP_FUNC(ELM_OBJ_FILESELECTOR_ID(ELM_OBJ_FILESELECTOR_SUB_ID_SELECTED_SET), _selected_set),
         EO_OP_FUNC(ELM_OBJ_FILESELECTOR_ID(ELM_OBJ_FILESELECTOR_SUB_ID_MIME_TYPES_FILTER_APPEND), _mime_types_filter_append),
         EO_OP_FUNC(ELM_OBJ_FILESELECTOR_ID(ELM_OBJ_FILESELECTOR_SUB_ID_FILTERS_CLEAR), _filters_clear),
+        EO_OP_FUNC(ELM_OBJ_FILESELECTOR_ID(ELM_OBJ_FILESELECTOR_SUB_ID_ENTRY_ENTRY_GET), _entry_entry_get),
+
         EO_OP_FUNC_SENTINEL
    };
    eo_class_funcs_set(klass, func_desc);
@@ -1528,6 +1550,8 @@ static const Eo_Op_Description op_desc[] = {
      EO_OP_DESCRIPTION(ELM_OBJ_FILESELECTOR_SUB_ID_SELECTED_SET, "Set, programmatically, the currently selected file/directory in the given file selector widget."),
      EO_OP_DESCRIPTION(ELM_OBJ_FILESELECTOR_SUB_ID_MIME_TYPES_FILTER_APPEND, "Append mime type filter"),
      EO_OP_DESCRIPTION(ELM_OBJ_FILESELECTOR_SUB_ID_FILTERS_CLEAR, "Clear filters"),
+     EO_OP_DESCRIPTION(ELM_OBJ_FILESELECTOR_SUB_ID_ENTRY_ENTRY_GET, "Get the current entry text in the fileselector. "),
+
      EO_OP_DESCRIPTION_SENTINEL
 };
 static const Eo_Class_Description class_desc = {
index 38485d1..88eb488 100644 (file)
@@ -27,6 +27,7 @@ enum
    ELM_OBJ_FILESELECTOR_SUB_ID_SELECTED_SET,
    ELM_OBJ_FILESELECTOR_SUB_ID_MIME_TYPES_FILTER_APPEND,
    ELM_OBJ_FILESELECTOR_SUB_ID_FILTERS_CLEAR,
+   ELM_OBJ_FILESELECTOR_SUB_ID_ENTRY_ENTRY_GET,
    ELM_OBJ_FILESELECTOR_SUB_ID_LAST
 };
 
@@ -235,5 +236,17 @@ enum
 #define elm_obj_fileselector_filters_clear() ELM_OBJ_FILESELECTOR_ID(ELM_OBJ_FILESELECTOR_SUB_ID_FILTERS_CLEAR)
 
 /**
+ * @def elm_obj_fileselector_entry_entry_get
+ * @since 1.8
+ *
+ * Get the current entry text in the fileselector.
+ *
+ *
+ * @see elm_fileselector_entry_entry_get()
+ */
+#define elm_obj_fileselector_entry_entry_get(ret) ELM_OBJ_FILESELECTOR_ID(ELM_OBJ_FILESELECTOR_SUB_ID_ENTRY_ENTRY_GET), EO_TYPECHECK(const char **, ret)
+
+
+/**
  * @}
  */
index 6c89635..df608c8 100644 (file)
@@ -277,3 +277,16 @@ EAPI Eina_Bool             elm_fileselector_mime_types_filter_append(Evas_Object
  * @ingroup Fileselector
  */
 EAPI void                  elm_fileselector_filters_clear(Evas_Object *obj);
+
+/**
+ * Get the current entry text in a given file selector widget.
+ *
+ * @param obj The file selector object
+ * @return The currently displayed text in the entry box or NULL on failure.
+ *
+ * @see elm_fileselector_is_save_set()
+ * @since 1.8
+ *
+ * @ingroup Fileselector
+ */
+EAPI const char           *elm_fileselector_entry_entry_get(const Evas_Object *obj);