Elementary migration revision 70341
authorShinwoo Kim <cinoo.kim@samsung.com>
Fri, 20 Apr 2012 01:17:38 +0000 (10:17 +0900)
committerShinwoo Kim <cinoo.kim@samsung.com>
Fri, 20 Apr 2012 01:20:27 +0000 (10:20 +0900)
Merge remote branch 'remotes/origin/upstream'

Conflicts:
src/lib/elm_datetime.c
src/lib/elm_genlist.c

1  2 
src/lib/elm_config.h
src/lib/elm_diskselector.c
src/lib/elm_entry.h
src/lib/elm_genlist.h
src/lib/elm_index.h
src/lib/elm_plug.h
src/lib/elm_win.h

diff --combined src/lib/elm_config.h
@@@ -1,5 -1,6 +1,6 @@@
  /**
   * @defgroup Config Elementary Config
+  * @ingroup Elementary
   *
   * Elementary configuration is formed by a set options bounded to a
   * given @ref Profile profile, like @ref Theme theme, @ref Fingers
@@@ -54,6 -55,7 +55,7 @@@ EAPI void      elm_config_all_flush(voi
  
  /**
   * @defgroup Profile Elementary Profile
+  * @ingroup Elementary
   *
   * Profiles are pre-set options that affect the whole look-and-feel of
   * Elementary-based applications. There are, for example, profiles
@@@ -140,7 -142,8 +142,8 @@@ EAPI void        elm_config_profile_set
   */
  
  /**
-  * @defgroup Scrolling Scrolling
+  * @defgroup Scrolling Elementary Scrolling
+  * @ingroup Elementary
   *
   * These are functions setting how scrollable views in Elementary
   * widgets should behave on user interaction.
@@@ -464,7 -467,6 +467,7 @@@ EAPI void        elm_config_cursor_engi
   * @ingroup Scaling
   */
  EAPI double elm_config_scale_get(void);
 +EAPI double elm_scale_get(void);
  
  /**
   * Set the global scaling factor
   * @ingroup Scaling
   */
  EAPI void   elm_config_scale_set(double scale);
 +EAPI void elm_scale_set(double scale);
  
  /**
   * @defgroup Password_last_show Password show last
+  * @ingroup Elementary
   *
   * Show last feature of password mode enables user to view
   * the last input entered for few seconds before masking it.
@@@ -543,6 -545,7 +547,7 @@@ EAPI void      elm_config_password_show
  
  /**
   * @defgroup Engine Elementary Engine
+  * @ingroup Elementary
   *
   * These are functions setting and querying which rendering engine
   * Elementary will use for drawing its windows' pixels.
@@@ -716,8 -719,6 +721,8 @@@ EAPI void             elm_config_font_o
   * @ingroup Fingers
   */
  EAPI Evas_Coord elm_config_finger_size_get(void);
 +// WRAPPER: Temperary Added.
 +EAPI Evas_Coord elm_finger_size_get(void);
  
  /**
   * Set the configured finger size
   * @ingroup Fingers
   */
  EAPI void       elm_config_finger_size_set(Evas_Coord size);
 +// WRAPPER: Temperary Added.
 +EAPI void       elm_finger_size_set(Evas_Coord size);
  
  
  /**
@@@ -946,3 -945,4 +951,3 @@@ EAPI void      elm_config_mirrored_set(
  /**
   * @}
   */
 -
@@@ -385,7 -385,6 +385,7 @@@ static voi
  _theme_data_get(Widget_Data *wd)
  {
     const char* str;
 +   Evas_Object *parent;
     str = edje_object_data_get(wd->right_blank, "len_threshold");
     if (str) wd->len_threshold = MAX(0, atoi(str));
     else wd->len_threshold = 0;
       }
  
     str = edje_object_data_get(wd->right_blank, "min_width");
 -   if (str) wd->minw = MAX(-1, atoi(str));
 -   else wd->minw = -1;
 +   if (str) wd->minw = MAX(-1, atoi(str)) * elm_scale_get();
 +   else
 +     {
 +        parent = elm_widget_parent_widget_get(wd->self);
 +        if (!parent) wd->minw = -1;
 +        else evas_object_geometry_get(parent, NULL, NULL, &wd->minw, NULL);
 +     }
  
     str = edje_object_data_get(wd->right_blank, "min_height");
 -   if (str) wd->minh = MAX(-1, atoi(str));
 +   if (str) wd->minh = MAX(-1, atoi(str)) * elm_scale_get();
     else wd->minh = -1;
  }
  
@@@ -651,10 -645,12 +651,12 @@@ _selected_item_indicate(Elm_Diskselecto
     wd = elm_widget_data_get(WIDGET(it));
  
     if (!wd) return;
+    if (!it->label) return;
  
     EINA_LIST_FOREACH(wd->r_items, l, item)
       {
-         if (!strcmp(item->label, it->label)) edje_object_signal_emit(VIEW(item), "elm,state,selected", "elm");
+         if (item->label && !strcmp(item->label, it->label))
+            edje_object_signal_emit(VIEW(item), "elm,state,selected", "elm");
          else
             edje_object_signal_emit(VIEW(item), "elm,state,default", "elm");
       }
@@@ -794,11 -790,7 +796,11 @@@ _move_scroller(void *data
       }
  
     evas_object_geometry_get(wd->scroller, NULL, &y, &w, &h);
 -   elm_smart_scroller_child_region_show(wd->scroller, w / wd->display_item_num * i, y, w, h);
 +   //move scroller in two steps for getting smooth launching effect.
 +   if (i > 2)
 +     elm_smart_scroller_child_region_show(wd->scroller, w / wd->display_item_num * (i-2), y, w, h);
 +   elm_smart_scroller_region_bring_in(wd->scroller, w / wd->display_item_num * i, y, w, h);
 +
     _select_item(dit);
     if (wd->idler)
       {
@@@ -1021,6 -1013,7 +1023,6 @@@ _item_content_get_hook(const Elm_Object
     return ((Elm_Diskselector_Item *)it)->icon;
  }
  
 -
  EAPI Evas_Object *
  elm_diskselector_add(Evas_Object *parent)
  {
diff --combined src/lib/elm_entry.h
@@@ -1,5 -1,6 +1,6 @@@
  /**
   * @defgroup Entry Entry
+  * @ingroup Elementary
   *
   * @image html img/widget/entry/preview-00.png
   * @image latex img/widget/entry/preview-00.eps width=\textwidth
   * @li "default" - text of the entry
   *
   * Supported elm_object common APIs.
-  * @li elm_object_signal_emit
-  * @li elm_object_part_text_set
-  * @li elm_object_part_text_get
-  * @li elm_object_part_content_set
-  * @li elm_object_part_content_get
-  * @li elm_object_part_content_unset
-  * @li elm_object_signal_callback_add
-  * @li elm_object_signal_callback_del
-  * @li elm_object_disabled_set
-  * @li elm_object_disabled_get
+  * @li @ref elm_object_signal_emit
+  * @li @ref elm_object_part_text_set
+  * @li @ref elm_object_part_text_get
+  * @li @ref elm_object_part_content_set
+  * @li @ref elm_object_part_content_get
+  * @li @ref elm_object_part_content_unset
+  * @li @ref elm_object_signal_callback_add
+  * @li @ref elm_object_signal_callback_del
+  * @li @ref elm_object_disabled_set
+  * @li @ref elm_object_disabled_get
   *
   * @section entry-examples
   *
@@@ -452,6 -453,8 +453,8 @@@ typedef Edje_Entry_Change_Info Elm_Entr
   *
   * @param parent The parent object
   * @return The new object or NULL if it cannot be created
+  *
+  * @ingroup Entry
   */
  EAPI Evas_Object       *elm_entry_add(Evas_Object *parent);
  
   * @param obj The entry object
   * @param single_line If true, the text in the entry
   * will be on a single line.
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_single_line_set(Evas_Object *obj, Eina_Bool single_line);
  
   * on a single line.
   *
   * @see elm_entry_single_line_set()
+  *
+  * @ingroup Entry
   */
  EAPI Eina_Bool          elm_entry_single_line_get(const Evas_Object *obj);
  
   *
   * @param obj The entry object
   * @param password If true, password mode is enabled.
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_password_set(Evas_Object *obj, Eina_Bool password);
  
   * as asterisks (*).
   *
   * @see elm_entry_password_set()
+  *
+  * @ingroup Entry
   */
  EAPI Eina_Bool          elm_entry_password_get(const Evas_Object *obj);
  
   * @param entry The text to be displayed
   *
   * @note Using this function bypasses text filters
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_entry_set(Evas_Object *obj, const char *entry);
  
   *
   * @param obj The entry object
   * @return The currently displayed text or NULL on failure
+  *
+  * @ingroup Entry
   */
  EAPI const char        *elm_entry_entry_get(const Evas_Object *obj);
  
   * @param entry The text to be displayed
   *
   * @see elm_entry_markup_filter_append()
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_entry_append(Evas_Object *obj, const char *entry);
  
   *
   * @param obj The entry object
   * @return EINA_TRUE if the entry is empty, EINA_FALSE otherwise.
+  *
+  * @ingroup Entry
   */
  EAPI Eina_Bool          elm_entry_is_empty(const Evas_Object *obj);
  
   *
   * @param obj The entry object
   * @return The selected text within the entry or NULL on failure
+  *
+  * @ingroup Entry
   */
  EAPI const char        *elm_entry_selection_get(const Evas_Object *obj);
  
   *
   * @param obj The entry object
   * @return The textblock object.
+  *
+  * @ingroup Entry
   */
  EAPI Evas_Object *      elm_entry_textblock_get(Evas_Object *obj);
  
   * @param obj The entry object
   *
   * @see elm_entry_textblock_get()
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_calc_force(Evas_Object *obj);
  
   * @param entry The text to insert
   *
   * @see elm_entry_markup_filter_append()
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_entry_insert(Evas_Object *obj, const char *entry);
  
@@@ -651,6 -678,8 +678,8 @@@ EAPI void               elm_entry_line_
   * @return Wrap type
   *
   * @see also elm_entry_line_wrap_set()
+  *
+  * @ingroup Entry
   */
  EAPI Elm_Wrap_Type      elm_entry_line_wrap_get(const Evas_Object *obj);
  
   * @param obj The entry object
   * @param editable If EINA_TRUE, user input will be inserted in the entry,
   * if not, the entry is read-only and no user input is allowed.
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_editable_set(Evas_Object *obj, Eina_Bool editable);
  
   * If false, it is not editable by the user
   *
   * @see elm_entry_editable_set()
+  *
+  * @ingroup Entry
   */
  EAPI Eina_Bool          elm_entry_editable_get(const Evas_Object *obj);
  
   * This drops any existing text selection within the entry.
   *
   * @param obj The entry object
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_select_none(Evas_Object *obj);
  
   * This selects all text within the entry.
   *
   * @param obj The entry object
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_select_all(Evas_Object *obj);
  
   *
   * @param obj The entry object
   * @return EINA_TRUE upon success, EINA_FALSE upon failure
+  *
+  * @ingroup Entry
   */
  EAPI Eina_Bool          elm_entry_cursor_next(Evas_Object *obj);
  
   *
   * @param obj The entry object
   * @return EINA_TRUE upon success, EINA_FALSE upon failure
+  *
+  * @ingroup Entry
   */
  EAPI Eina_Bool          elm_entry_cursor_prev(Evas_Object *obj);
  
   *
   * @param obj The entry object
   * @return EINA_TRUE upon success, EINA_FALSE upon failure
+  *
+  * @ingroup Entry
   */
  EAPI Eina_Bool          elm_entry_cursor_up(Evas_Object *obj);
  
   *
   * @param obj The entry object
   * @return EINA_TRUE upon success, EINA_FALSE upon failure
+  *
+  * @ingroup Entry
   */
  EAPI Eina_Bool          elm_entry_cursor_down(Evas_Object *obj);
  
   * This moves the cursor to the beginning of the entry.
   *
   * @param obj The entry object
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_cursor_begin_set(Evas_Object *obj);
  
   * This moves the cursor to the end of the entry.
   *
   * @param obj The entry object
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_cursor_end_set(Evas_Object *obj);
  
   * This moves the cursor to the beginning of the current line.
   *
   * @param obj The entry object
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_cursor_line_begin_set(Evas_Object *obj);
  
   * This moves the cursor to the end of the current line.
   *
   * @param obj The entry object
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_cursor_line_end_set(Evas_Object *obj);
  
   * the user were holding down the mouse button to make a selection.
   *
   * @param obj The entry object
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_cursor_selection_begin(Evas_Object *obj);
  
   * the user had just released the mouse button while making a selection.
   *
   * @param obj The entry object
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_cursor_selection_end(Evas_Object *obj);
  
   * EINA_FALSE otherwise.
   *
   * @see elm_entry_cursor_is_visible_format_get()
+  *
+  * @ingroup Entry
   */
  EAPI Eina_Bool          elm_entry_cursor_is_format_get(const Evas_Object *obj);
  
   * if it's an invisible one or no format exists.
   *
   * @see elm_entry_cursor_is_format_get()
+  *
+  * @ingroup Entry
   */
  EAPI Eina_Bool          elm_entry_cursor_is_visible_format_get(const Evas_Object *obj);
  
   *
   * @param obj The entry object
   * @return The text pointed by the cursors.
+  *
+  * @ingroup Entry
   */
  EAPI char              *elm_entry_cursor_content_get(const Evas_Object *obj);
  
   * @param w returned geometry
   * @param h returned geometry
   * @return EINA_TRUE upon success, EINA_FALSE upon failure
+  *
+  * @ingroup Entry
   */
  EAPI Eina_Bool          elm_entry_cursor_geometry_get(const Evas_Object *obj, Evas_Coord *x, Evas_Coord *y, Evas_Coord *w, Evas_Coord *h);
  
   *
   * @param obj The entry object
   * @param pos The position of the cursor
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_cursor_pos_set(Evas_Object *obj, int pos);
  
   *
   * @param obj The entry object
   * @return The cursor position
+  *
+  * @ingroup Entry
   */
  EAPI int                elm_entry_cursor_pos_get(const Evas_Object *obj);
  
   * This executes a "cut" action on the selected text in the entry.
   *
   * @param obj The entry object
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_selection_cut(Evas_Object *obj);
  
   * This executes a "copy" action on the selected text in the entry.
   *
   * @param obj The entry object
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_selection_copy(Evas_Object *obj);
  
   * This executes a "paste" action in the entry.
   *
   * @param obj The entry object
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_selection_paste(Evas_Object *obj);
  
   * @param obj The entry object
   *
   * @see elm_entry_context_menu_item_add()
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_context_menu_clear(Evas_Object *obj);
  
   * @param icon_type The item's icon type
   * @param func The callback to execute when the item is clicked
   * @param data The data to associate with the item for related functions
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_context_menu_item_add(Evas_Object *obj, const char *label, const char *icon_file, Elm_Icon_Type icon_type, Evas_Smart_Cb func, const void *data);
  
   *
   * @param obj The entry object
   * @param disabled If true, the menu is disabled
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_context_menu_disabled_set(Evas_Object *obj, Eina_Bool disabled);
  
   *
   * @param obj The entry object
   * @return If true, the menu is disabled
+  *
+  * @ingroup Entry
   */
  EAPI Eina_Bool          elm_entry_context_menu_disabled_get(const Evas_Object *obj);
  
   * @param data The data passed to @p func
   *
   * @see @ref entry-items
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_item_provider_append(Evas_Object *obj, Elm_Entry_Item_Provider_Cb func, void *data);
  
   * @param obj The entry object
   * @param func The function called to provide the item object
   * @param data The data passed to @p func
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_item_provider_prepend(Evas_Object *obj, Elm_Entry_Item_Provider_Cb func, void *data);
  
   * @param obj The entry object
   * @param func The function called to provide the item object
   * @param data The data passed to @p func
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_item_provider_remove(Evas_Object *obj, Elm_Entry_Item_Provider_Cb func, void *data);
  
   * @param obj The entry object
   * @param func The function to use as text filter
   * @param data User data to pass to @p func
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_markup_filter_append(Evas_Object *obj, Elm_Entry_Filter_Cb func, void *data);
  
   * @param obj The entry object
   * @param func The function to use as text filter
   * @param data User data to pass to @p func
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_markup_filter_prepend(Evas_Object *obj, Elm_Entry_Filter_Cb func, void *data);
  
   * @param obj The entry object
   * @param func The filter function to remove
   * @param data The user data passed when adding the function
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_markup_filter_remove(Evas_Object *obj, Elm_Entry_Filter_Cb func, void *data);
  
   *
   * @param s The string (in markup) to be converted
   * @return The converted string (in UTF-8). It should be freed.
+  *
+  * @ingroup Entry
   */
  EAPI char              *elm_entry_markup_to_utf8(const char *s);
  
   *
   * @param s The string (in UTF-8) to be converted
   * @return The converted string (in markup). It should be freed.
+  *
+  * @ingroup Entry
   */
  EAPI char              *elm_entry_utf8_to_markup(const char *s);
  
   * @param file The path to the file to load and save
   * @param format The file format
   * @return @c EINA_TRUE on success, @c EINA_FALSE otherwise
+  *
+  * @ingroup Entry
   */
  EAPI Eina_Bool          elm_entry_file_set(Evas_Object *obj, const char *file, Elm_Text_Format format);
  
   * @param obj The entry object
   * @param file The path to the file to load and save
   * @param format The file format
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_file_get(const Evas_Object *obj, const char **file, Elm_Text_Format *format);
  
   * elm_entry_file_set()
   *
   * @param obj The entry object
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_file_save(Evas_Object *obj);
  
   * @param autosave Autosave the loaded file or not
   *
   * @see elm_entry_file_set()
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_autosave_set(Evas_Object *obj, Eina_Bool autosave);
  
   * @return Autosave the loaded file or not
   *
   * @see elm_entry_file_set()
+  *
+  * @ingroup Entry
   */
  EAPI Eina_Bool          elm_entry_autosave_get(const Evas_Object *obj);
  
   *
   * @param obj The entry object
   * @param scroll EINA_TRUE if it is to be scrollable, EINA_FALSE otherwise
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_scrollable_set(Evas_Object *obj, Eina_Bool scroll);
  
   *
   * @param obj The entry object
   * @return The scrollable state
+  *
+  * @ingroup Entry
   */
  EAPI Eina_Bool          elm_entry_scrollable_get(const Evas_Object *obj);
  
   * @param obj The entry object
   * @param setting EINA_TRUE if the object should be displayed,
   * EINA_FALSE if not.
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_icon_visible_set(Evas_Object *obj, Eina_Bool setting);
  
   * @param obj The entry object
   * @param setting EINA_TRUE if the object should be displayed,
   * EINA_FALSE if not.
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_end_visible_set(Evas_Object *obj, Eina_Bool setting);
  
   * @param obj The entry object
   * @param h The horizontal scrollbar policy to apply
   * @param v The vertical scrollbar policy to apply
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_scrollbar_policy_set(Evas_Object *obj, Elm_Scroller_Policy h, Elm_Scroller_Policy v);
  
   * @param obj The entry object
   * @param h_bounce The horizontal bounce state
   * @param v_bounce The vertical bounce state
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_bounce_set(Evas_Object *obj, Eina_Bool h_bounce, Eina_Bool v_bounce);
  
   * @param obj The Entry object
   * @param h_bounce Allow bounce horizontally
   * @param v_bounce Allow bounce vertically
+  *
+  * @ingroup Entry
   */
  EAPI void               elm_entry_bounce_get(const Evas_Object *obj, Eina_Bool *h_bounce, Eina_Bool *v_bounce);
  
   *
   * @param obj The entry object
   * @param layout layout type
+  *
+  * @ingroup Entry
   */
  EAPI void                   elm_entry_input_panel_layout_set(Evas_Object *obj, Elm_Input_Panel_Layout layout);
  
   * @return layout type
   *
   * @see elm_entry_input_panel_layout_set
+  *
+  * @ingroup Entry
   */
  EAPI Elm_Input_Panel_Layout elm_entry_input_panel_layout_get(const Evas_Object *obj);
  
   *
   * @param obj The entry object
   * @param autocapital_type The type of autocapitalization
+  *
+  * @ingroup Entry
   */
  EAPI void                   elm_entry_autocapital_type_set(Evas_Object *obj, Elm_Autocapital_Type autocapital_type);
  
   *
   * @param obj The entry object
   * @return autocapitalization type
+  *
+  * @ingroup Entry
   */
  EAPI Elm_Autocapital_Type   elm_entry_autocapital_type_get(const Evas_Object *obj);
  
   *
   * @param obj The entry object
   * @param enabled If true, the input panel is appeared when entry is clicked or has a focus
+  *
+  * @ingroup Entry
   */
  EAPI void                   elm_entry_input_panel_enabled_set(Evas_Object *obj, Eina_Bool enabled);
  
   *
   * @param obj The entry object
   * @return EINA_TRUE if input panel will be appeared when the entry is clicked or has a focus, EINA_FALSE otherwise
+  *
+  * @ingroup Entry
   */
  EAPI Eina_Bool              elm_entry_input_panel_enabled_get(const Evas_Object *obj);
  
   * This API can be used in the case of manually controlling by using elm_entry_input_panel_enabled_set(en, EINA_FALSE).
   *
   * @param obj The entry object
+  *
+  * @ingroup Entry
   */
  EAPI void                   elm_entry_input_panel_show(Evas_Object *obj);
  
   * This API can be used in the case of manually controlling by using elm_entry_input_panel_enabled_set(en, EINA_FALSE)
   *
   * @param obj The entry object
+  *
+  * @ingroup Entry
   */
  EAPI void                   elm_entry_input_panel_hide(Evas_Object *obj);
  
   *
   * @param obj The entry object
   * @param lang language to be set to the input panel.
+  *
+  * @ingroup Entry
   */
  EAPI void                   elm_entry_input_panel_language_set(Evas_Object *obj, Elm_Input_Panel_Lang lang);
  
   *
   * @param obj The entry object
   * @return input panel language type
+  *
+  * @ingroup Entry
   */
  EAPI Elm_Input_Panel_Lang   elm_entry_input_panel_language_get(const Evas_Object *obj);
  
   * @param obj The entry object
   * @param data The specific data to be set to the input panel.
   * @param len the length of data, in bytes, to send to the input panel
+  *
+  * @ingroup Entry
   */
  EAPI void                   elm_entry_input_panel_imdata_set(Evas_Object *obj, const void *data, int len);
  
   * @param obj The entry object
   * @param data The specific data to be got from the input panel
   * @param len The length of data
+  *
+  * @ingroup Entry
   */
  EAPI void                   elm_entry_input_panel_imdata_get(const Evas_Object *obj, void *data, int *len);
  
   *
   * @param obj The entry object
   * @param return_key_type The type of "return" key on the input panel
+  *
+  * @ingroup Entry
   */
  EAPI void                   elm_entry_input_panel_return_key_type_set(Evas_Object *obj, Elm_Input_Panel_Return_Key_Type return_key_type);
  
   *
   * @param obj The entry object
   * @return The type of "return" key on the input panel
+  *
+  * @ingroup Entry
   */
  EAPI Elm_Input_Panel_Return_Key_Type elm_entry_input_panel_return_key_type_get(const Evas_Object *obj);
  
   * @param obj The entry object
   * @param disabled The state to put in in: @c EINA_TRUE for
   *        disabled, @c EINA_FALSE for enabled
+  *
+  * @ingroup Entry
   */
  EAPI void                   elm_entry_input_panel_return_key_disabled_set(Evas_Object *obj, Eina_Bool disabled);
  
   *
   * @param obj The entry object
   * @return EINA_TRUE if it should be disabled
+  *
+  * @ingroup Entry
   */
  EAPI Eina_Bool              elm_entry_input_panel_return_key_disabled_get(const Evas_Object *obj);
  
   *
   * @param obj The entry object
   * @param enabled If @p enabled is EINA_TRUE, the return key is automatically disabled when the entry has no text.
+  *
+  * @ingroup Entry
   */
  EAPI void                   elm_entry_input_panel_return_key_autoenabled_set(Evas_Object *obj, Eina_Bool enabled);
  
   *
   * This can be necessary in the case where modifying the buffer would confuse on-going input method behavior
   * @param obj The entry object
+  *
+  * @ingroup Entry
   */
  EAPI void                   elm_entry_imf_context_reset(Evas_Object *obj);
  
   *
   * @param obj The entry object
   * @param prediction Whether the entry should allow to use the text prediction.
+  *
+  * @ingroup Entry
   */
  EAPI void                   elm_entry_prediction_allow_set(Evas_Object *obj, Eina_Bool prediction);
  
   *
   * @param obj The entry object
   * @return EINA_TRUE if it allows to use the text prediction, otherwise EINA_FALSE.
+  *
+  * @ingroup Entry
   */
  EAPI Eina_Bool              elm_entry_prediction_allow_get(const Evas_Object *obj);
  
@@@ -1386,6 -1549,8 +1549,8 @@@ struct _Elm_Entry_Filter_Limit_Siz
   *
   * This filter, like any others, does not apply when setting the entry text
   * directly with elm_object_text_set().
+  *
+  * @ingroup Entry
   */
  EAPI void elm_entry_filter_limit_size(void *data, Evas_Object *entry, char **text);
  
@@@ -1425,6 -1590,8 +1590,8 @@@ struct _Elm_Entry_Filter_Accept_Se
   *
   * This filter, like any others, does not apply when setting the entry text
   * directly with elm_object_text_set()
+  *
+  * @ingroup Entry
   */
  EAPI void                   elm_entry_filter_accept_set(void *data, Evas_Object *entry, char **text);
  
   *
   * @param obj The entry object
   * @return The input method context (Ecore_IMF_Context *) in entry.
+  *
+  * @ingroup Entry
   */
  EAPI void                  *elm_entry_imf_context_get(Evas_Object *obj);
  
@@@ -1466,6 -1635,8 +1635,8 @@@ typedef enum 
   * @param obj The entry object
   * @param cnp_mode One of #Elm_Cnp_Mode: #ELM_CNP_MODE_MARKUP,
   * #ELM_CNP_MODE_NO_IMAGE, #ELM_CNP_MODE_PLAINTEXT.
+  *
+  * @ingroup Entry
   */
  EAPI void         elm_entry_cnp_mode_set(Evas_Object *obj, Elm_Cnp_Mode cnp_mode);
  
   * @param obj The entry object
   * @return mode One of #Elm_Cnp_Mode: #ELM_CNP_MODE_MARKUP,
   * #ELM_CNP_MODE_NO_IMAGE, #ELM_CNP_MODE_PLAINTEXT.
+  *
+  * @ingroup Entry
   */
  EAPI Elm_Cnp_Mode elm_entry_cnp_mode_get(const Evas_Object *obj);
  
   *
   * @param obj The entry object
   * @param parent The object to use as parent for the hover
+  *
+  * @ingroup Entry
   */
  EAPI void                        elm_entry_anchor_hover_parent_set(Evas_Object *obj, Evas_Object *parent);
  
   *
   * @param obj The entry object
   * @return The object used as parent for the hover, NULL if none is set.
+  *
+  * @ingroup Entry
   */
  EAPI Evas_Object                *elm_entry_anchor_hover_parent_get(const Evas_Object *obj);
  
   * @param style The style to use for the underlying hover
   *
   * @see elm_object_style_set()
+  *
+  * @ingroup Entry
   */
  EAPI void                        elm_entry_anchor_hover_style_set(Evas_Object *obj, const char *style);
  
   * @return The style to use by the hover. NULL means the default is used.
   *
   * @see elm_object_style_set()
+  *
+  * @ingroup Entry
   */
  EAPI const char                 *elm_entry_anchor_hover_style_get(const Evas_Object *obj);
  
   * terminates this popup, returning the entry to its normal state.
   *
   * @param obj The entry object
+  *
+  * @ingroup Entry
   */
  EAPI void                        elm_entry_anchor_hover_end(Evas_Object *obj);
  
  /**
 + * This disables the entry's magnifer feature.
 + *
 + * @param obj The entry object
 + * @param disabled If true, the magnifier is not displayed
 + */
 +
 +EAPI void         elm_entry_magnifier_disabled_set(Evas_Object *obj, Eina_Bool disabled);
 +/**
 + * This returns whether the entry's magnifier feature is disabled.
 + *
 + * @param obj The entry object
 + * @return If true, the feature is disabled
 + */
 +EAPI Eina_Bool    elm_entry_magnifier_disabled_get(const Evas_Object *obj);
 +
 +EAPI void                   elm_entry_magnifier_type_set(Evas_Object *obj, int type);
 +
 +/**
   * @}
   */
diff --combined src/lib/elm_genlist.h
@@@ -1,5 -1,6 +1,6 @@@
  /**
   * @defgroup Genlist Genlist
+  * @ingroup Elementary
   *
   * @image html img/widget/genlist/preview-00.png
   * @image latex img/widget/genlist/preview-00.eps
   * - @c "tree,effect,finished" - This is called when a genlist tree effect is finished.
   *
   * Supported elm_object common APIs
-  * @li elm_object_signal_emit()
+  * @li @ref elm_object_signal_emit()
   *
   * Supported elm_object_item common APIs
-  * @li elm_object_item_part_content_get()
-  * @li elm_object_item_part_text_get()
-  * @li elm_object_item_disabled_set()
-  * @li elm_object_item_disabled_get()
-  * @li elm_object_item_signal_emit()
+  * @li @ref elm_object_item_part_content_get()
+  * @li @ref elm_object_item_part_text_get()
+  * @li @ref elm_object_item_disabled_set()
+  * @li @ref elm_object_item_disabled_get()
+  * @li @ref elm_object_item_signal_emit()
   *
   * Unsupported elm_object_item common APIs due to the genlist concept.
   * Genlist fills content/text according to the appropriate callback functions.
   * Please use elm_genlist_item_update() or elm_genlist_item_fields_update()
   * instead.
-  * @li elm_object_item_part_content_set()
-  * @li elm_object_item_part_content_unset()
-  * @li elm_object_item_part_text_set()
+  * @li @ref elm_object_item_part_content_set()
+  * @li @ref elm_object_item_part_content_unset()
+  * @li @ref elm_object_item_part_text_set()
   *
   * @section Genlist_Examples Examples
   *
@@@ -1000,7 -1001,7 +1001,7 @@@ EAPI unsigned int elm_genlist_items_cou
   *
   * @return New allocated a genlist item class.
   *
-  * This adds genlist item class for the genlist widget. When adding a item,
+  * This adds genlist item class for the genlist widget. When adding an item,
   * genlist_item_{append, prepend, insert} function needs item class of the item.
   * Given callback parameters are used at retrieving {text, content} of
   * added item. Set as NULL if it's not used.
  EAPI Elm_Genlist_Item_Class *elm_genlist_item_class_new(void);
  
  /**
-  * Remove a item class in a given genlist widget.
+  * Remove an item class in a given genlist widget.
   *
   * @param itc The itc to be removed.
   *
@@@ -1711,7 -1712,7 +1712,7 @@@ EAPI Eina_Bool          elm_genlist_dec
   * This function sets the flip state of a given genlist item.
   * Flip mode overrides current item object.
   * It can be used for on-the-fly item replace.
 - * Flip mode can be used with/without edit mode.
 + * Flip mode can be used with/without decorate mode.
   *
   * @see elm_genlist_item_flip_get()
   *
diff --combined src/lib/elm_index.h
@@@ -1,5 -1,6 +1,6 @@@
  /**
   * @defgroup Index Index
+  * @ingroup Elementary
   *
   * @image html img/widget/index/preview-00.png
   * @image latex img/widget/index/preview-00.eps
@@@ -48,6 -49,7 +49,6 @@@
   * @addtogroup Index
   * @{
   */
 -
  /**
   * Add a new index widget to the given parent Elementary
   * (container) object
diff --combined src/lib/elm_plug.h
index 01afbbd,ed79d85..ed79d85
mode 100755,100644..100755
@@@ -1,5 -1,6 +1,6 @@@
  /**
   * @defgroup Plug Plug
+  * @ingroup Elementary
   *
   * An object that allows one to show an image which other process created.
   * It can be used anywhere like any other elementary widget.
diff --combined src/lib/elm_win.h
@@@ -1,5 -1,6 +1,6 @@@
- /* win */
- /** @defgroup Win Win
+ /**
+  * @defgroup Win Win
+  * @ingroup Elementary
   *
   * @image html img/widget/win/preview-00.png
   * @image latex img/widget/win/preview-00.eps
@@@ -231,6 -232,8 +232,8 @@@ typedef enu
   * which the image object will be created.
   *
   * @return The created object, or NULL on failure
+  *
+  * @ingroup Win
   */
  EAPI Evas_Object          *elm_win_add(Evas_Object *parent, const char *name, Elm_Win_Type type);
  
   * @return The created object, or NULL on failure
   *
   * @see elm_win_add()
+  *
+  * @ingroup Win
   */
  EAPI Evas_Object          *elm_win_util_standard_add(const char *name, const char *title);
  
   *
   * @param obj The window object
   * @param subobj The resize object to add
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_resize_object_add(Evas_Object *obj, Evas_Object *subobj);
  
   *
   * @param obj The window object
   * @param subobj The resize object to add
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_resize_object_del(Evas_Object *obj, Evas_Object *subobj);
  
   *
   * @param obj The window object
   * @param title The title to set
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_title_set(Evas_Object *obj, const char *title);
  
   *
   * @param obj The window object
   * @return The title
+  *
+  * @ingroup Win
   */
  EAPI const char           *elm_win_title_get(const Evas_Object *obj);
  
   *
   * @param obj The window object
   * @param icon_name The icon name to set
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_icon_name_set(Evas_Object *obj, const char *icon_name);
  
   *
   * @param obj The window object
   * @return The icon name
+  *
+  * @ingroup Win
   */
  EAPI const char           *elm_win_icon_name_get(const Evas_Object *obj);
  
   *
   * @param obj The window object
   * @param role The role to set
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_role_set(Evas_Object *obj, const char *role);
  
   *
   * @param obj The window object
   * @return The role
+  *
+  * @ingroup Win
   */
  EAPI const char           *elm_win_role_get(const Evas_Object *obj);
  
   *
   * @param obj The window object
   * @param icon The object to use for an icon
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_icon_object_set(Evas_Object *obj, Evas_Object *icon);
  
   *
   * @param obj The window object
   * @return The icon object set
+  *
+  * @ingroup Win
   */
  EAPI const Evas_Object    *elm_win_icon_object_get(const Evas_Object *obj);
  
   * @param obj The window object
   * @param autodel If true, the window will automatically delete itself when
   * closed
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_autodel_set(Evas_Object *obj, Eina_Bool autodel);
  
   * @return If the window will automatically delete itself when closed
   *
   * @see elm_win_autodel_set()
+  *
+  * @ingroup Win
   */
  EAPI Eina_Bool             elm_win_autodel_get(const Evas_Object *obj);
  
   * active one after it.
   *
   * @param obj The window object
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_activate(Evas_Object *obj);
  
   * request.
   *
   * @param obj The window object
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_lower(Evas_Object *obj);
  
   * request.
   *
   * @param obj The window object
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_raise(Evas_Object *obj);
  
   * @param obj The window object
   * @param h If true, center horizontally. If false, do not change horizontal location.
   * @param v If true, center vertically. If false, do not change vertical location.
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_center(Evas_Object *obj, Eina_Bool h, Eina_Bool v);
  
   *
   * @param obj The window object
   * @param borderless If true, the window is borderless
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_borderless_set(Evas_Object *obj, Eina_Bool borderless);
  
   *
   * @param obj The window object
   * @return If true, the window is borderless
+  *
+  * @ingroup Win
   */
  EAPI Eina_Bool             elm_win_borderless_get(const Evas_Object *obj);
  
   * @param shaped If true, the window is shaped
   *
   * @see elm_win_alpha_set()
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_shaped_set(Evas_Object *obj, Eina_Bool shaped);
  
   * @return If true, the window is shaped
   *
   * @see elm_win_shaped_set()
+  *
+  * @ingroup Win
   */
  EAPI Eina_Bool             elm_win_shaped_get(const Evas_Object *obj);
  
   * @param alpha If true, the window has an alpha channel
   *
   * @see elm_win_alpha_set()
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_alpha_set(Evas_Object *obj, Eina_Bool alpha);
  
   *
   * @param obj The window object
   * @return If true, the window has an alpha channel
+  *
+  * @ingroup Win
   */
  EAPI Eina_Bool             elm_win_alpha_get(const Evas_Object *obj);
  
   *
   * @param obj The window object
   * @param override If true, the window is overridden
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_override_set(Evas_Object *obj, Eina_Bool override);
  
   * @return If true, the window is overridden
   *
   * @see elm_win_override_set()
+  *
+  * @ingroup Win
   */
  EAPI Eina_Bool             elm_win_override_get(const Evas_Object *obj);
  
   *
   * @param obj The window object
   * @param fullscreen If true, the window is fullscreen
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_fullscreen_set(Evas_Object *obj, Eina_Bool fullscreen);
  
   *
   * @param obj The window object
   * @return If true, the window is fullscreen
+  *
+  * @ingroup Win
   */
  EAPI Eina_Bool             elm_win_fullscreen_get(const Evas_Object *obj);
  
   *
   * @param obj The window object
   * @param maximized If true, the window is maximized
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_maximized_set(Evas_Object *obj, Eina_Bool maximized);
  
   *
   * @param obj The window object
   * @return If true, the window is maximized
+  *
+  * @ingroup Win
   */
  EAPI Eina_Bool             elm_win_maximized_get(const Evas_Object *obj);
  
   *
   * @param obj The window object
   * @param iconified If true, the window is iconified
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_iconified_set(Evas_Object *obj, Eina_Bool iconified);
  
   *
   * @param obj The window object
   * @return If true, the window is iconified
+  *
+  * @ingroup Win
   */
  EAPI Eina_Bool             elm_win_iconified_get(const Evas_Object *obj);
  
   *
   * @param obj The window object
   * @param withdrawn If true, the window is withdrawn
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_withdrawn_set(Evas_Object *obj, Eina_Bool withdrawn);
  
   *
   * @param obj The window object
   * @return If true, the window is withdrawn
+  *
+  * @ingroup Win
   */
  EAPI Eina_Bool             elm_win_withdrawn_get(const Evas_Object *obj);
  
   *
   * @param obj The window object
   * @param urgent If true, the window is urgent
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_urgent_set(Evas_Object *obj, Eina_Bool urgent);
  
   *
   * @param obj The window object
   * @return If true, the window is urgent
+  *
+  * @ingroup Win
   */
  EAPI Eina_Bool             elm_win_urgent_get(const Evas_Object *obj);
  
   *
   * @param obj The window object
   * @param demand_attention If true, the window is demand_attention
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_demand_attention_set(Evas_Object *obj, Eina_Bool demand_attention);
  
   *
   * @param obj The window object
   * @return If true, the window is demand_attention
+  *
+  * @ingroup Win
   */
  EAPI Eina_Bool             elm_win_demand_attention_get(const Evas_Object *obj);
  
   *
   * @param obj The window object
   * @param modal If true, the window is modal
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_modal_set(Evas_Object *obj, Eina_Bool modal);
  
   *
   * @param obj The window object
   * @return If true, the window is modal
+  *
+  * @ingroup Win
   */
  EAPI Eina_Bool             elm_win_modal_get(const Evas_Object *obj);
  
   * @param obj The window object
   * @param aspect If 0, the window has no aspect limits, otherwise it is
   * width divided by height
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_aspect_set(Evas_Object *obj, double aspect);
  
   *
   * @param obj The window object
   * @return The aspect ratio set (0 by default)
+  *
+  * @ingroup Win
   */
  EAPI double                elm_win_aspect_get(const Evas_Object *obj);
  
   *
   * @param obj The window object
   * @param layer The layer of the window
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_layer_set(Evas_Object *obj, int layer);
  
   * @return The layer of the window
   *
   * @see elm_win_layer_set()
+  *
+  * @ingroup Win
   */
  EAPI int                   elm_win_layer_get(const Evas_Object *obj);
  
   * @param obj The window object
   * @param rotation The rotation of the window, in degrees (0-360),
   * counter-clockwise.
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_rotation_set(Evas_Object *obj, int rotation);
  
   * @param obj The window object
   * @param rotation The rotation of the window in degrees (0-360),
   * counter-clockwise.
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_rotation_with_resize_set(Evas_Object *obj, int rotation);
  
   *
   * @see elm_win_rotation_set()
   * @see elm_win_rotation_with_resize_set()
+  *
+  * @ingroup Win
   */
  EAPI int                   elm_win_rotation_get(const Evas_Object *obj);
  
   *
   * @param obj The window object
   * @param sticky If true, the window's sticky state is enabled
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_sticky_set(Evas_Object *obj, Eina_Bool sticky);
  
   * @return If true, the window's sticky state is enabled
   *
   * @see elm_win_sticky_set()
+  *
+  * @ingroup Win
   */
  EAPI Eina_Bool             elm_win_sticky_get(const Evas_Object *obj);
  
   *
   * @param obj The window object
   * @param conformant The conformant flag (1 = conformant, 0 = non-conformant)
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_conformant_set(Evas_Object *obj, Eina_Bool conformant);
  
   *
   * @param obj The window object
   * @return A boolean if this window is illume conformant or not
+  *
+  * @ingroup Win
   */
  EAPI Eina_Bool             elm_win_conformant_get(const Evas_Object *obj);
  
   *
   * @param obj The window object
   * @param quickpanel The quickpanel flag (1 = quickpanel, 0 = normal window)
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_quickpanel_set(Evas_Object *obj, Eina_Bool quickpanel);
  
   *
   * @param obj The window object
   * @return A boolean if this window is a quickpanel or not
+  *
+  * @ingroup Win
   */
  EAPI Eina_Bool             elm_win_quickpanel_get(const Evas_Object *obj);
  
   *
   * @param obj The window object
   * @param priority The major priority for this quickpanel
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_quickpanel_priority_major_set(Evas_Object *obj, int priority);
  
   *
   * @param obj The window object
   * @return The major priority of this quickpanel
+  *
+  * @ingroup Win
   */
  EAPI int                   elm_win_quickpanel_priority_major_get(const Evas_Object *obj);
  
   *
   * @param obj The window object
   * @param priority The minor priority for this quickpanel
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_quickpanel_priority_minor_set(Evas_Object *obj, int priority);
  
   *
   * @param obj The window object
   * @return The minor priority of this quickpanel
+  *
+  * @ingroup Win
   */
  EAPI int                   elm_win_quickpanel_priority_minor_get(const Evas_Object *obj);
  
   *
   * @param obj The window object
   * @param zone The requested zone for this quickpanel
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_quickpanel_zone_set(Evas_Object *obj, int zone);
  
   *
   * @param obj The window object
   * @return The requested zone for this quickpanel
+  *
+  * @ingroup Win
   */
  EAPI int                   elm_win_quickpanel_zone_get(const Evas_Object *obj);
  
   *
   * @param obj The window object
   * @param skip The skip flag state (EINA_TRUE if it is to be skipped)
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_prop_focus_skip_set(Evas_Object *obj, Eina_Bool skip);
  
   * @param obj The window object that lives in the environment to control
   * @param command The command to send
   * @param params Optional parameters for the command
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_illume_command_send(Evas_Object *obj, Elm_Illume_Command command, void *params);
  
   *
   * @param obj The window object to get the inlined image from
   * @return The inlined image object, or NULL if none exists
+  *
+  * @ingroup Win
   */
  EAPI Evas_Object          *elm_win_inlined_image_object_get(Evas_Object *obj);
  
   * Determine whether a window has focus
   * @param obj The window to query
   * @return EINA_TRUE if the window exists and has focus, else EINA_FALSE
+  *
+  * @ingroup Win
   */
  EAPI Eina_Bool             elm_win_focus_get(const Evas_Object *obj);
  
   * When @p constrain is true, @p obj will never resize larger than the screen.
   * @param obj The window object
   * @param constrain EINA_TRUE to restrict the window's maximum size, EINA_FALSE to disable restriction
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_screen_constrain_set(Evas_Object *obj, Eina_Bool constrain);
  
   * When this function returns true, @p obj will never resize larger than the screen.
   * @param obj The window object
   * @return EINA_TRUE to restrict the window's maximum size, EINA_FALSE to disable restriction
+  *
+  * @ingroup Win
   */
  EAPI Eina_Bool             elm_win_screen_constrain_get(Evas_Object *obj);
  
   * @param y   where to return the vertical offset value. May be NULL.
   * @param w   where to return the width value. May be NULL.
   * @param h   where to return the height value. May be NULL.
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_screen_size_get(const Evas_Object *obj, int *x, int *y, int *w, int *h);
  
   *
   * @param obj The window where to enable the highlight
   * @param enabled The enabled value for the highlight
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_focus_highlight_enabled_set(Evas_Object *obj, Eina_Bool enabled);
  
   * @param obj The window in which to check if the focus highlight is enabled
   *
   * @return EINA_TRUE if enabled, EINA_FALSE otherwise
+  *
+  * @ingroup Win
   */
  EAPI Eina_Bool             elm_win_focus_highlight_enabled_get(const Evas_Object *obj);
  
   *
   * @param obj The window where to set the style
   * @param style The style to set
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_focus_highlight_style_set(Evas_Object *obj, const char *style);
  
   * @param obj The window to retrieve the highlights style from
   *
   * @return The style set or NULL if none was. Default is used in that case.
+  *
+  * @ingroup Win
   */
  EAPI const char           *elm_win_focus_highlight_style_get(const Evas_Object *obj);
  
   *
   * @param obj The window object
   * @param mode The mode to set, one of #Elm_Win_Keyboard_Mode
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_keyboard_mode_set(Evas_Object *obj, Elm_Win_Keyboard_Mode mode);
  
   *
   * @param obj The window object
   * @return The mode, one of #Elm_Win_Keyboard_Mode
+  *
+  * @ingroup Win
   */
  EAPI Elm_Win_Keyboard_Mode elm_win_keyboard_mode_get(const Evas_Object *obj);
  
   *
   * @param obj The window object
   * @param is_keyboard If true, the window is a virtual keyboard
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_keyboard_win_set(Evas_Object *obj, Eina_Bool is_keyboard);
  
   *
   * @param obj The window object
   * @return If the window is a virtual keyboard
+  *
+  * @ingroup Win
   */
  EAPI Eina_Bool             elm_win_keyboard_win_get(const Evas_Object *obj);
  
   *
   * @param obj The window object
   * @param mode The mode to set, one of #Elm_Win_Indicator_Mode
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_indicator_mode_set(Evas_Object *obj, Elm_Win_Indicator_Mode mode);
  
 +// WRAPPER: Temperary added.
 +EAPI void                  elm_win_indicator_state_set(Evas_Object *obj, Elm_Win_Indicator_Mode mode);
 +
  /**
   * Gets the indicator mode of the window.
   *
   * @param obj The window object
   * @return The mode, one of #Elm_Win_Indicator_Mode
+  *
+  * @ingroup Win
   */
  EAPI Elm_Win_Indicator_Mode elm_win_indicator_mode_get(const Evas_Object *obj);
  
 +// WRAPPER: Temperary added.
 +EAPI Elm_Win_Indicator_Mode elm_win_indicator_state_get(const Evas_Object *obj);
 +
  /**
   * Sets the indicator opacity mode of the window.
   *
   * @param obj The window object
   * @param mode The mode to set, one of #Elm_Win_Indicator_Opacity_Mode
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_indicator_opacity_set(Evas_Object *obj, Elm_Win_Indicator_Opacity_Mode mode);
  
   *
   * @param obj The window object
   * @return The mode, one of #Elm_Win_Indicator_Opacity_Mode
+  *
+  * @ingroup Win
   */
  EAPI Elm_Win_Indicator_Opacity_Mode elm_win_indicator_opacity_get(const Evas_Object *obj);
  
   * @param obj The window object
   * @param x The int to store the x coordinate to
   * @param y The int to store the y coordinate to
+  *
+  * @ingroup Win
   */
  EAPI void                  elm_win_screen_position_get(const Evas_Object *obj, int *x, int *y);
  
   * @param svcnum A number (any value, 0 being the common default) to differentiate multiple instances of services with the same name.
   * @param svcsys A boolean that if true, specifies to create a system-wide service all users can connect to, otherwise the service is private to the user id that created the service.
   * @return If socket creation is successful
+  *
+  * @ingroup Win
   */
  EAPI Eina_Bool             elm_win_socket_listen(Evas_Object *obj, const char *svcname, int svcnum, Eina_Bool svcsys);
  
+ /* X specific calls - won't work on non-x engines (return 0) */
+ /**
+  * Get the Ecore_X_Window of an Evas_Object
+  *
+  * @param obj The object
+  *
+  * @return The Ecore_X_Window of @p obj
+  *
+  * @ingroup Win
+  */
+ EAPI Ecore_X_Window elm_win_xwindow_get(const Evas_Object *obj);
  /**
   * @}
   */
  
  /**
   * @defgroup Inwin Inwin
+  * @ingroup Win
   *
   * @image html img/widget/inwin/preview-00.png
   * @image latex img/widget/inwin/preview-00.eps
   *
   * @param parent The parent object
   * @return The new object or NULL if it cannot be created
+  *
+  * @ingroup Inwin
   */
  EAPI Evas_Object *elm_win_inwin_add(Evas_Object *parent);
  
   * source "elm".
   *
   * @param obj The inwin to activate
+  *
+  * @ingroup Inwin
   */
  EAPI void         elm_win_inwin_activate(Evas_Object *obj);
  
   *
   * @param obj The inwin object
   * @param content The object to set as content
+  *
+  * @ingroup Inwin
   */
  EAPI void         elm_win_inwin_content_set(Evas_Object *obj, Evas_Object *content);
  
   *
   * @param obj The inwin object
   * @return The content that is being used
+  *
+  * @ingroup Inwin
   */
  EAPI Evas_Object *elm_win_inwin_content_get(const Evas_Object *obj);
  
   *
   * @param obj The inwin object
   * @return The content that was being used
+  *
+  * @ingroup Inwin
   */
  EAPI Evas_Object *elm_win_inwin_content_unset(Evas_Object *obj);
  
  /**
   * @}
   */
- /* X specific calls - won't work on non-x engines (return 0) */
- /**
-  * Get the Ecore_X_Window of an Evas_Object
-  *
-  * @param obj The object
-  *
-  * @return The Ecore_X_Window of @p obj
-  *
-  * @ingroup Win
-  */
- EAPI Ecore_X_Window elm_win_xwindow_get(const Evas_Object *obj);
  
- /* smart callbacks called:
-  * "delete,request" - the user requested to delete the window
-  * "focus,in" - window got focus
-  * "focus,out" - window lost focus
-  * "moved" - window that holds the canvas was moved
-  */