From: Sanjeev BA <as2902.b@samsung.com>
authorraster <raster@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Sat, 3 Sep 2011 05:13:25 +0000 (05:13 +0000)
committerraster <raster@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Sat, 3 Sep 2011 05:13:25 +0000 (05:13 +0000)
Subject: [E-devel] [PATCH] Add new API elm_diskfileselector_item_num_get()

Kindly review and provide your comments on this patch, that adds new API
elm_diskfileselector_item_num_get().

Add elm_diskselector_display_item_num_get() API.
Added required documentation in docx and Elementary.h.in files.
Updated test programs to print number of items set - as a verification.
Make input param as const. Thanks SeoZ.

git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/elementary@63107 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

doc/examples.dox
src/bin/test_diskselector.c
src/examples/diskselector_example_01.c
src/lib/Elementary.h.in
src/lib/elm_diskselector.c

index de93d4b..95df23b 100644 (file)
  *
  * @note You can't set less than 3 items to be displayed.
  *
+ * You can get the number of items in the diskselector by calling
+ * elm_diskselector_display_item_num_get(), as you can see here:
+ * @skipline elm_diskselector_add
+ *
  * Finally, if a bounce effect is required, or you would like to see
  * scrollbars, it is possible. But, for default theme, diskselector
  * scrollbars will be invisible anyway.
index 927806d..266c103 100644 (file)
@@ -155,6 +155,7 @@ test_diskselector(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *even
    // displayed item number setting example
    disk = elm_diskselector_add(win);
    elm_diskselector_display_item_num_set(disk, 5);
+   printf("Number of Items in DiskSelector : %d\n", elm_diskselector_display_item_num_get(disk));
 
    for (idx = 0; idx < (int)(sizeof(month_list) / sizeof(month_list[0])); idx++)
      {
@@ -172,6 +173,7 @@ test_diskselector(void *data __UNUSED__, Evas_Object *obj __UNUSED__, void *even
    // displayed item number setting example
    disk = elm_diskselector_add(win);
    elm_diskselector_display_item_num_set(disk, 7);
+   printf("Number of Items in DiskSelector : %d\n", elm_diskselector_display_item_num_get(disk));
 
    for (idx = 1; idx < 31; idx++)
      {
index af37f54..02ca5bd 100644 (file)
@@ -83,6 +83,7 @@ elm_main(int argc __UNUSED__, char **argv __UNUSED__)
    for (i = 0; i < sizeof(lbl) / sizeof(lbl[0]); i++)
      elm_diskselector_item_append(ds, lbl[i], NULL, NULL, NULL);
    elm_diskselector_display_item_num_set(ds, 5);
+   printf("Number of Items in DiskSelector : %d\n", elm_diskselector_display_item_num_get(ds));
    evas_object_show(ds);
 
    /* set bounce and scroller policy */
index 2df2232..fa003a7 100644 (file)
@@ -24131,6 +24131,15 @@ extern "C" {
    EAPI void                   elm_diskselector_display_item_num_set(Evas_Object *obj, int num) EINA_ARG_NONNULL(1);
 
    /**
+    * Get the number of items in the diskselector object.
+    *
+    * @param obj The diskselector object.
+    *
+    * @ingroup Diskselector
+    */
+   EAPI int                   elm_diskselector_display_item_num_get(const Evas_Object *obj) EINA_ARG_NONNULL(1);
+
+   /**
     * Set bouncing behaviour when the scrolled content reaches an edge.
     *
     * Tell the internal scroller object whether it should bounce or not
index 5356c59..e467aeb 100644 (file)
@@ -1364,3 +1364,12 @@ elm_diskselector_display_item_num_set(Evas_Object *obj, int num)
    wd->display_item_num = num;
    wd->display_item_num_by_api = EINA_TRUE;
 }
+
+EAPI int
+elm_diskselector_display_item_num_get(const Evas_Object *item)
+{
+   ELM_CHECK_WIDTYPE(item, widtype) (-1);
+   Widget_Data *wd = elm_widget_data_get(item);
+   if (!wd) return -1;
+   return wd->display_item_num;
+}