Merge "Fix elm_config_font_overlay_apply() to also apply rescaling properly. Changese...
[framework/uifw/elementary.git] / src / lib / elm_config.h
index 3538fb5..ff07a32 100644 (file)
@@ -1,5 +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
@@ -43,34 +44,8 @@ EAPI void      elm_config_reload(void);
 /**
  * Flush all config settings then apply those settings to all applications
  * using elementary on the current display.
- * Following functions will update the config settings
- * @li elm_cache_flush_interval_set()
- * @li elm_cache_flush_enabled_set()
- * @li elm_edje_file_cache_set()
- * @li elm_edje_collection_cache_set()
- * @li elm_finger_size_set()
- * @li elm_focus_highlight_enabled_set()
- * @li elm_focus_highlight_animate_set()
- * @li elm_font_overlay_set()
- * @li elm_font_cache_set()
- * @li elm_image_cache_set()
- * @li elm_profile_set()
- * @li elm_scale_set()
- * @li elm_scroll_bounce_enabled_set()
- * @li elm_scroll_bounce_friction_set()
- * @li elm_scroll_page_scroll_friction_set()
- * @li elm_scroll_bring_in_scroll_friction_set()
- * @li elm_scroll_zoom_friction_set()
- * @li elm_scroll_thumbscroll_enabled_set()
- * @li elm_scroll_thumbscroll_threshold_set()
- * @li elm_scroll_thumbscroll_momentum_threshold_set()
- * @li elm_scroll_thumbscroll_friction_set()
- * @li elm_scroll_thumbscroll_border_friction_set()
- * @li elm_scroll_thumbscroll_sensitivity_friction_set()
- * @li elm_theme_set()
- *  
- * @ingroup Config
  *
+ * @ingroup Config
  */
 EAPI void      elm_config_all_flush(void);
 
@@ -80,6 +55,7 @@ EAPI void      elm_config_all_flush(void);
 
 /**
  * @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
@@ -100,7 +76,7 @@ EAPI void      elm_config_all_flush(void);
  * @return The profile's name
  * @ingroup Profile
  */
-EAPI const char *elm_profile_current_get(void);
+EAPI const char *elm_config_profile_get(void);
 
 /**
  * Get an Elementary's profile directory path in the filesystem. One
@@ -113,19 +89,19 @@ EAPI const char *elm_profile_current_get(void);
  * @return The profile's directory path.
  * @ingroup Profile
  *
- * @note You must free it with elm_profile_dir_free().
+ * @note You must free it with elm_config_profile_dir_free().
  */
-EAPI const char *elm_profile_dir_get(const char *profile, Eina_Bool is_user);
+EAPI const char *elm_config_profile_dir_get(const char *profile, Eina_Bool is_user);
 
 /**
  * Free an Elementary's profile directory path, as returned by
- * elm_profile_dir_get().
+ * elm_config_profile_dir_get().
  *
  * @param p_dir The profile's path
  * @ingroup Profile
  *
  */
-EAPI void        elm_profile_dir_free(const char *p_dir);
+EAPI void        elm_config_profile_dir_free(const char *p_dir);
 
 /**
  * Get Elementary's list of available profiles.
@@ -135,18 +111,18 @@ EAPI void        elm_profile_dir_free(const char *p_dir);
  * @ingroup Profile
  *
  * @note One must free this list, after usage, with the function
- *       elm_profile_list_free().
+ *       elm_config_profile_list_free().
  */
-EAPI Eina_List  *elm_profile_list_get(void);
+EAPI Eina_List  *elm_config_profile_list_get(void);
 
 /**
  * Free Elementary's list of available profiles.
  *
- * @param l The profiles list, as returned by elm_profile_list_get().
+ * @param l The profiles list, as returned by elm_config_profile_list_get().
  * @ingroup Profile
  *
  */
-EAPI void        elm_profile_list_free(Eina_List *l);
+EAPI void        elm_config_profile_list_free(Eina_List *l);
 
 /**
  * Set Elementary's profile.
@@ -159,14 +135,25 @@ EAPI void        elm_profile_list_free(Eina_List *l);
  * @ingroup Profile
  *
  */
-EAPI void        elm_profile_set(const char *profile);
+EAPI void        elm_config_profile_set(const char *profile);
+
+/**
+ * Check if the given Elementary's profile exists.
+ *
+ * @param profile The profile's name
+ * @return EINA_TRUE if the profile exists, EINA_FALSE otherwise.
+ *
+ * @ingroup Profile
+ */
+EAPI Eina_Bool   elm_config_profile_exists(const char *profile);
 
 /**
  * @}
  */
 
 /**
- * @defgroup Scrolling Scrolling
+ * @defgroup Scrolling Elementary Scrolling
+ * @ingroup Elementary
  *
  * These are functions setting how scrollable views in Elementary
  * widgets should behave on user interaction.
@@ -183,7 +170,7 @@ EAPI void        elm_profile_set(const char *profile);
  * This is the default behavior for touch screens, in general.
  * @ingroup Scrolling
  */
-EAPI Eina_Bool    elm_scroll_bounce_enabled_get(void);
+EAPI Eina_Bool    elm_config_scroll_bounce_enabled_get(void);
 
 /**
  * Set whether scrollers should bounce when they reach their
@@ -191,10 +178,10 @@ EAPI Eina_Bool    elm_scroll_bounce_enabled_get(void);
  *
  * @param enabled the thumb scroll bouncing state
  *
- * @see elm_thumbscroll_bounce_enabled_get()
+ * @see elm_config_scroll_bounce_enabled_get()
  * @ingroup Scrolling
  */
-EAPI void         elm_scroll_bounce_enabled_set(Eina_Bool enabled);
+EAPI void         elm_config_scroll_bounce_enabled_set(Eina_Bool enabled);
 
 /**
  * Get the amount of inertia a scroller will impose at bounce
@@ -204,7 +191,7 @@ EAPI void         elm_scroll_bounce_enabled_set(Eina_Bool enabled);
  *
  * @ingroup Scrolling
  */
-EAPI double       elm_scroll_bounce_friction_get(void);
+EAPI double       elm_config_scroll_bounce_friction_get(void);
 
 /**
  * Set the amount of inertia a scroller will impose at bounce
@@ -212,10 +199,10 @@ EAPI double       elm_scroll_bounce_friction_get(void);
  *
  * @param friction the thumb scroll bounce friction
  *
- * @see elm_thumbscroll_bounce_friction_get()
+ * @see elm_config_scroll_bounce_friction_get()
  * @ingroup Scrolling
  */
-EAPI void         elm_scroll_bounce_friction_set(double friction);
+EAPI void         elm_config_scroll_bounce_friction_set(double friction);
 
 /**
  * Get the amount of inertia a <b>paged</b> scroller will impose at
@@ -225,7 +212,7 @@ EAPI void         elm_scroll_bounce_friction_set(double friction);
  *
  * @ingroup Scrolling
  */
-EAPI double       elm_scroll_page_scroll_friction_get(void);
+EAPI double       elm_config_scroll_page_scroll_friction_get(void);
 
 /**
  * Set the amount of inertia a <b>paged</b> scroller will impose at
@@ -233,10 +220,10 @@ EAPI double       elm_scroll_page_scroll_friction_get(void);
  *
  * @param friction the page scroll friction
  *
- * @see elm_thumbscroll_page_scroll_friction_get()
+ * @see elm_config_scroll_page_scroll_friction_get()
  * @ingroup Scrolling
  */
-EAPI void         elm_scroll_page_scroll_friction_set(double friction);
+EAPI void         elm_config_scroll_page_scroll_friction_set(double friction);
 
 /**
  * Get the amount of inertia a scroller will impose at region bring
@@ -246,7 +233,7 @@ EAPI void         elm_scroll_page_scroll_friction_set(double friction);
  *
  * @ingroup Scrolling
  */
-EAPI double       elm_scroll_bring_in_scroll_friction_get(void);
+EAPI double       elm_config_scroll_bring_in_scroll_friction_get(void);
 
 /**
  * Set the amount of inertia a scroller will impose at region bring
@@ -254,10 +241,10 @@ EAPI double       elm_scroll_bring_in_scroll_friction_get(void);
  *
  * @param friction the bring in scroll friction
  *
- * @see elm_thumbscroll_bring_in_scroll_friction_get()
+ * @see elm_config_scroll_bring_in_scroll_friction_get()
  * @ingroup Scrolling
  */
-EAPI void         elm_scroll_bring_in_scroll_friction_set(double friction);
+EAPI void         elm_config_scroll_bring_in_scroll_friction_set(double friction);
 
 /**
  * Get the amount of inertia scrollers will impose at animations
@@ -267,7 +254,7 @@ EAPI void         elm_scroll_bring_in_scroll_friction_set(double friction);
  *
  * @ingroup Scrolling
  */
-EAPI double       elm_scroll_zoom_friction_get(void);
+EAPI double       elm_config_scroll_zoom_friction_get(void);
 
 /**
  * Set the amount of inertia scrollers will impose at animations
@@ -275,10 +262,10 @@ EAPI double       elm_scroll_zoom_friction_get(void);
  *
  * @param friction the zoom friction
  *
- * @see elm_thumbscroll_zoom_friction_get()
+ * @see elm_config_scroll_zoom_friction_get()
  * @ingroup Scrolling
  */
-EAPI void         elm_scroll_zoom_friction_set(double friction);
+EAPI void         elm_config_scroll_zoom_friction_set(double friction);
 
 /**
  * Get whether scrollers should be draggable from any point in their
@@ -292,7 +279,7 @@ EAPI void         elm_scroll_zoom_friction_set(double friction);
  *
  * @ingroup Scrolling
  */
-EAPI Eina_Bool    elm_scroll_thumbscroll_enabled_get(void);
+EAPI Eina_Bool    elm_config_scroll_thumbscroll_enabled_get(void);
 
 /**
  * Set whether scrollers should be draggable from any point in their
@@ -300,10 +287,10 @@ EAPI Eina_Bool    elm_scroll_thumbscroll_enabled_get(void);
  *
  * @param enabled the thumb scroll state
  *
- * @see elm_thumbscroll_enabled_get()
+ * @see elm_config_scroll_thumbscroll_enabled_get()
  * @ingroup Scrolling
  */
-EAPI void         elm_scroll_thumbscroll_enabled_set(Eina_Bool enabled);
+EAPI void         elm_config_scroll_thumbscroll_enabled_set(Eina_Bool enabled);
 
 /**
  * Get the number of pixels one should travel while dragging a
@@ -315,7 +302,7 @@ EAPI void         elm_scroll_thumbscroll_enabled_set(Eina_Bool enabled);
  * of their inherent imprecision.
  * @ingroup Scrolling
  */
-EAPI unsigned int elm_scroll_thumbscroll_threshold_get(void);
+EAPI unsigned int elm_config_scroll_thumbscroll_threshold_get(void);
 
 /**
  * Set the number of pixels one should travel while dragging a
@@ -323,10 +310,10 @@ EAPI unsigned int elm_scroll_thumbscroll_threshold_get(void);
  *
  * @param threshold the thumb scroll threshold
  *
- * @see elm_thumbscroll_threshold_get()
+ * @see elm_config_thumbscroll_threshold_get()
  * @ingroup Scrolling
  */
-EAPI void         elm_scroll_thumbscroll_threshold_set(unsigned int threshold);
+EAPI void         elm_config_scroll_thumbscroll_threshold_set(unsigned int threshold);
 
 /**
  * Get the minimum speed of mouse cursor movement which will trigger
@@ -337,7 +324,7 @@ EAPI void         elm_scroll_thumbscroll_threshold_set(unsigned int threshold);
  *
  * @ingroup Scrolling
  */
-EAPI double       elm_scroll_thumbscroll_momentum_threshold_get(void);
+EAPI double       elm_config_scroll_thumbscroll_momentum_threshold_get(void);
 
 /**
  * Set the minimum speed of mouse cursor movement which will trigger
@@ -346,10 +333,10 @@ EAPI double       elm_scroll_thumbscroll_momentum_threshold_get(void);
  *
  * @param threshold the thumb scroll momentum threshold
  *
- * @see elm_thumbscroll_momentum_threshold_get()
+ * @see elm_config_thumbscroll_momentum_threshold_get()
  * @ingroup Scrolling
  */
-EAPI void         elm_scroll_thumbscroll_momentum_threshold_set(double threshold);
+EAPI void         elm_config_scroll_thumbscroll_momentum_threshold_set(double threshold);
 
 /**
  * Get the amount of inertia a scroller will impose at self scrolling
@@ -359,7 +346,7 @@ EAPI void         elm_scroll_thumbscroll_momentum_threshold_set(double threshold
  *
  * @ingroup Scrolling
  */
-EAPI double       elm_scroll_thumbscroll_friction_get(void);
+EAPI double       elm_config_scroll_thumbscroll_friction_get(void);
 
 /**
  * Set the amount of inertia a scroller will impose at self scrolling
@@ -367,10 +354,10 @@ EAPI double       elm_scroll_thumbscroll_friction_get(void);
  *
  * @param friction the thumb scroll friction
  *
- * @see elm_thumbscroll_friction_get()
+ * @see elm_config_thumbscroll_friction_get()
  * @ingroup Scrolling
  */
-EAPI void         elm_scroll_thumbscroll_friction_set(double friction);
+EAPI void         elm_config_scroll_thumbscroll_friction_set(double friction);
 
 /**
  * Get the amount of lag between your actual mouse cursor dragging
@@ -381,7 +368,7 @@ EAPI void         elm_scroll_thumbscroll_friction_set(double friction);
  *
  * @ingroup Scrolling
  */
-EAPI double       elm_scroll_thumbscroll_border_friction_get(void);
+EAPI double       elm_config_scroll_thumbscroll_border_friction_get(void);
 
 /**
  * Set the amount of lag between your actual mouse cursor dragging
@@ -392,12 +379,12 @@ EAPI double       elm_scroll_thumbscroll_border_friction_get(void);
  *        perfect synchrony between two movements, @c 1.0 for maximum
  *        lag.
  *
- * @see elm_thumbscroll_border_friction_get()
+ * @see elm_config_thumbscroll_border_friction_get()
  * @note parameter value will get bound to 0.0 - 1.0 interval, always
  *
  * @ingroup Scrolling
  */
-EAPI void         elm_scroll_thumbscroll_border_friction_set(double friction);
+EAPI void         elm_config_scroll_thumbscroll_border_friction_set(double friction);
 
 /**
  * Get the sensitivity amount which is be multiplied by the length of
@@ -407,7 +394,7 @@ EAPI void         elm_scroll_thumbscroll_border_friction_set(double friction);
  *
  * @ingroup Scrolling
  */
-EAPI double       elm_scroll_thumbscroll_sensitivity_friction_get(void);
+EAPI double       elm_config_scroll_thumbscroll_sensitivity_friction_get(void);
 
 /**
  * Set the sensitivity amount which is be multiplied by the length of
@@ -417,12 +404,12 @@ EAPI double       elm_scroll_thumbscroll_sensitivity_friction_get(void);
  *        minimum sensitivity, @c 1.0 for maximum sensitivity. 0.25
  *        is proper.
  *
- * @see elm_thumbscroll_sensitivity_friction_get()
+ * @see elm_config_thumbscroll_sensitivity_friction_get()
  * @note parameter value will get bound to 0.1 - 1.0 interval, always
  *
  * @ingroup Scrolling
  */
-EAPI void         elm_scroll_thumbscroll_sensitivity_friction_set(double friction);
+EAPI void         elm_config_scroll_thumbscroll_sensitivity_friction_set(double friction);
 
 /**
  * @}
@@ -434,7 +421,7 @@ EAPI void         elm_scroll_thumbscroll_sensitivity_friction_set(double frictio
  * @return Timeout for long press event
  * @ingroup Longpress
  */
-EAPI double       elm_longpress_timeout_get(void);
+EAPI double       elm_config_longpress_timeout_get(void);
 
 /**
  * Set the duration for occurring long press event.
@@ -442,7 +429,7 @@ EAPI double       elm_longpress_timeout_get(void);
  * @param lonpress_timeout Timeout for long press event
  * @ingroup Longpress
  */
-EAPI void         elm_longpress_timeout_set(double longpress_timeout);
+EAPI void         elm_config_longpress_timeout_set(double longpress_timeout);
 
 /**
  * Get the duration after which tooltip will be shown.
@@ -454,7 +441,7 @@ EAPI double      elm_config_tooltip_delay_get(void);
 /**
  * Set the duration after which tooltip will be shown.
  *
- * @return EINA_TRUE if value is set.  
+ * @return EINA_TRUE if value is set.
  */
 EAPI void        elm_config_tooltip_delay_set(double delay);
 
@@ -466,7 +453,7 @@ EAPI void        elm_config_tooltip_delay_set(double delay);
  * @return 1 if only engine cursors should be used
  * @ingroup Cursors
  */
-EAPI Eina_Bool   elm_cursor_engine_only_get(void);
+EAPI Eina_Bool   elm_config_cursor_engine_only_get(void);
 
 /**
  * Set the configured cursor engine only usage
@@ -478,7 +465,7 @@ EAPI Eina_Bool   elm_cursor_engine_only_get(void);
  * look for them on theme before.
  * @ingroup Cursors
  */
-EAPI void        elm_cursor_engine_only_set(Eina_Bool engine_only);
+EAPI void        elm_config_cursor_engine_only_set(Eina_Bool engine_only);
 
 /**
  * Get the global scaling factor
@@ -489,6 +476,7 @@ EAPI void        elm_cursor_engine_only_set(Eina_Bool engine_only);
  * @return The scaling factor
  * @ingroup Scaling
  */
+EAPI double elm_config_scale_get(void);
 EAPI double elm_scale_get(void);
 
 /**
@@ -500,10 +488,12 @@ EAPI double elm_scale_get(void);
  * @param scale The scaling factor to set
  * @ingroup Scaling
  */
-EAPI void   elm_scale_set(double scale);
+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.
@@ -520,12 +510,12 @@ EAPI void   elm_scale_set(double scale);
  * This gets the "show last" setting of password mode which might be
  * enabled or disabled.
  *
- * @return @c EINA_TRUE, if the "show last" setting is enabled, 
+ * @return @c EINA_TRUE, if the "show last" setting is enabled,
  * @c EINA_FALSE  if it's disabled.
  *
  * @ingroup Password_last_show
  */
-EAPI Eina_Bool elm_password_show_last_get(void);
+EAPI Eina_Bool elm_config_password_show_last_get(void);
 
 /**
  * Set show last setting in password mode.
@@ -533,10 +523,10 @@ EAPI Eina_Bool elm_password_show_last_get(void);
  * This enables or disables show last setting of password mode.
  *
  * @param password_show_last If EINA_TRUE enables "show last" in password mode.
- * @see elm_password_show_last_timeout_set()
+ * @see elm_config_password_show_last_timeout_set()
  * @ingroup Password_last_show
  */
-EAPI void      elm_password_show_last_set(Eina_Bool password_show_last);
+EAPI void      elm_config_password_show_last_set(Eina_Bool password_show_last);
 
 /**
  * Gets the timeout value in "show last" password mode.
@@ -547,7 +537,7 @@ EAPI void      elm_password_show_last_set(Eina_Bool password_show_last);
  * @return The timeout value of "show last" password mode.
  * @ingroup Password_last_show
  */
-EAPI double    elm_password_show_last_timeout_get(void);
+EAPI double    elm_config_password_show_last_timeout_get(void);
 
 /**
  * Set's the timeout value in "show last" password mode.
@@ -556,10 +546,10 @@ EAPI double    elm_password_show_last_timeout_get(void);
  * mode will be visible.
  *
  * @param password_show_last_timeout The timeout value.
- * @see elm_password_show_last_set()
+ * @see elm_config_password_show_last_set()
  * @ingroup Password_last_show
  */
-EAPI void      elm_password_show_last_timeout_set(double password_show_last_timeout);
+EAPI void      elm_config_password_show_last_timeout_set(double password_show_last_timeout);
 
 /**
  * @}
@@ -567,6 +557,7 @@ EAPI void      elm_password_show_last_timeout_set(double password_show_last_time
 
 /**
  * @defgroup Engine Elementary Engine
+ * @ingroup Elementary
  *
  * These are functions setting and querying which rendering engine
  * Elementary will use for drawing its windows' pixels.
@@ -601,9 +592,9 @@ EAPI void      elm_password_show_last_timeout_set(double password_show_last_time
  * This gets the global rendering engine that is applied to all Elementary
  * applications.
  *
- * @see elm_engine_set()
+ * @see elm_config_engine_set()
  */
-EAPI const char *elm_engine_get(void);
+EAPI const char *elm_config_engine_get(void);
 
 /**
  * @brief Set Elementary's rendering engine for use.
@@ -615,7 +606,7 @@ EAPI const char *elm_engine_get(void);
  *
  * @see elm_win_add()
  */
-EAPI void        elm_engine_set(const char *engine);
+EAPI void        elm_config_engine_set(const char *engine);
 
 /**
  * @brief Get Elementary's preferred engine to use.
@@ -627,9 +618,9 @@ EAPI void        elm_engine_set(const char *engine);
  * applications and is PREFERRED by the application. This can (and will)
  * override the engine configured for all applications which.
  *
- * @see elm_preferred_engine_set()
+ * @see elm_config_preferred_engine_set()
  */
-EAPI const char *elm_preferred_engine_get(void);
+EAPI const char *elm_config_preferred_engine_get(void);
 
 /**
  * @brief Set Elementary's preferred rendering engine for use.
@@ -642,7 +633,7 @@ EAPI const char *elm_preferred_engine_get(void);
  *
  * @see elm_win_add()
  */
-EAPI void        elm_preferred_engine_set(const char *engine);
+EAPI void        elm_config_preferred_engine_set(const char *engine);
 
 typedef struct _Elm_Text_Class
 {
@@ -665,20 +656,20 @@ typedef struct _Elm_Font_Overlay
  *
  * Release the list with elm_text_classes_list_free().
  */
-EAPI Eina_List *elm_text_classes_list_get(void);
+EAPI Eina_List *elm_config_text_classes_list_get(void);
 
 /**
  * Free Elementary's list of supported text classes.
  *
  * @ingroup Fonts
  *
- * @see elm_text_classes_list_get().
+ * @see elm_config_text_classes_list_get().
  */
-EAPI void elm_text_classes_list_free(Eina_List *list);
+EAPI void elm_config_text_classes_list_free(Eina_List *list);
 
 /**
  * Get Elementary's list of font overlays, set with
- * elm_font_overlay_set().
+ * elm_config_font_overlay_set().
  *
  * @return The font overlays list, with @c Elm_Font_Overlay blobs as
  * data.
@@ -689,9 +680,9 @@ EAPI void elm_text_classes_list_free(Eina_List *list);
  * overriding the default font properties for that class coming from
  * the theme in use. There is no need to free this list.
  *
- * @see elm_font_overlay_set() and elm_font_overlay_unset().
+ * @see elm_config_font_overlay_set() and elm_config_font_overlay_unset().
  */
-EAPI const Eina_List *elm_font_overlay_list_get(void);
+EAPI const Eina_List *elm_config_font_overlay_list_get(void);
 
 /**
  * Set a font overlay for a given Elementary text class.
@@ -703,10 +694,10 @@ EAPI const Eina_List *elm_font_overlay_list_get(void);
  * @ingroup Fonts
  *
  * @p font has to be in the format returned by
- * elm_font_fontconfig_name_get(). @see elm_font_overlay_list_get()
- * and elm_font_overlay_unset().
+ * elm_font_fontconfig_name_get(). @see elm_config_font_overlay_list_get()
+ * and elm_config_font_overlay_unset().
  */
-EAPI void             elm_font_overlay_set(const char *text_class, const char *font, Evas_Font_Size size);
+EAPI void             elm_config_font_overlay_set(const char *text_class, const char *font, Evas_Font_Size size);
 
 /**
  * Unset a font overlay for a given Elementary text class.
@@ -718,17 +709,17 @@ EAPI void             elm_font_overlay_set(const char *text_class, const char *f
  * This will bring back text elements belonging to text class
  * @p text_class back to their default font settings.
  */
-EAPI void             elm_font_overlay_unset(const char *text_class);
+EAPI void             elm_config_font_overlay_unset(const char *text_class);
 
 /**
- * Apply the changes made with elm_font_overlay_set() and
- * elm_font_overlay_unset() on the current Elementary window.
+ * Apply the changes made with elm_config_font_overlay_set() and
+ * elm_config_font_overlay_unset() on the current Elementary window.
  *
  * @ingroup Fonts
  *
  * This applies all font overlays set to all objects in the UI.
  */
-EAPI void             elm_font_overlay_apply(void);
+EAPI void             elm_config_font_overlay_apply(void);
 
 /**
  * Get the configured "finger size"
@@ -739,6 +730,8 @@ EAPI void             elm_font_overlay_apply(void);
  *
  * @ingroup Fingers
  */
+EAPI Evas_Coord elm_config_finger_size_get(void);
+// WRAPPER: Temperary Added.
 EAPI Evas_Coord elm_finger_size_get(void);
 
 /**
@@ -749,6 +742,8 @@ EAPI Evas_Coord elm_finger_size_get(void);
  * @param size The 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);
 
 
@@ -763,7 +758,7 @@ EAPI void       elm_finger_size_set(Evas_Coord size);
  *
  * @see elm_cache_all_flush()
  */
-EAPI int       elm_cache_flush_interval_get(void);
+EAPI int       elm_config_cache_flush_interval_get(void);
 
 /**
  * Set the configured cache flush interval time
@@ -775,14 +770,14 @@ EAPI int       elm_cache_flush_interval_get(void);
  *
  * @see elm_cache_all_flush()
  */
-EAPI void      elm_cache_flush_interval_set(int size);
+EAPI void      elm_config_cache_flush_interval_set(int size);
 
 /**
  * Get the configured cache flush enabled state
  *
  * This gets the globally configured cache flush state - if it is enabled
  * or not. When cache flushing is enabled, elementary will regularly
- * (see elm_cache_flush_interval_get() ) flush caches and dump data out of
+ * (see elm_config_cache_flush_interval_get() ) flush caches and dump data out of
  * memory and allow usage to re-seed caches and data in memory where it
  * can do so. An idle application will thus minimize its memory usage as
  * data will be freed from memory and not be re-loaded as it is idle and
@@ -793,7 +788,7 @@ EAPI void      elm_cache_flush_interval_set(int size);
  *
  * @see elm_cache_all_flush()
  */
-EAPI Eina_Bool elm_cache_flush_enabled_get(void);
+EAPI Eina_Bool elm_config_cache_flush_enabled_get(void);
 
 /**
  * Set the configured cache flush enabled state
@@ -805,7 +800,7 @@ EAPI Eina_Bool elm_cache_flush_enabled_get(void);
  *
  * @see elm_cache_all_flush()
  */
-EAPI void      elm_cache_flush_enabled_set(Eina_Bool enabled);
+EAPI void      elm_config_cache_flush_enabled_set(Eina_Bool enabled);
 
 /**
  * Get the configured font cache size
@@ -815,7 +810,7 @@ EAPI void      elm_cache_flush_enabled_set(Eina_Bool enabled);
  * @return The font cache size
  * @ingroup Caches
  */
-EAPI int       elm_cache_font_cache_size_get(void);
+EAPI int       elm_config_cache_font_cache_size_get(void);
 
 /**
  * Set the configured font cache size
@@ -825,7 +820,7 @@ EAPI int       elm_cache_font_cache_size_get(void);
  * @param size The font cache size
  * @ingroup Caches
  */
-EAPI void      elm_cache_font_cache_size_set(int size);
+EAPI void      elm_config_cache_font_cache_size_set(int size);
 
 /**
  * Get the configured image cache size
@@ -835,7 +830,7 @@ EAPI void      elm_cache_font_cache_size_set(int size);
  * @return The image cache size
  * @ingroup Caches
  */
-EAPI int       elm_cache_image_cache_size_get(void);
+EAPI int       elm_config_cache_image_cache_size_get(void);
 
 /**
  * Set the configured image cache size
@@ -845,7 +840,7 @@ EAPI int       elm_cache_image_cache_size_get(void);
  * @param size The image cache size
  * @ingroup Caches
  */
-EAPI void       elm_cache_image_cache_size_set(int size);
+EAPI void       elm_config_cache_image_cache_size_set(int size);
 
 
 /**
@@ -857,7 +852,7 @@ EAPI void       elm_cache_image_cache_size_set(int size);
  * @return The edje file cache size
  * @ingroup Caches
  */
-EAPI int       elm_cache_edje_file_cache_size_get(void);
+EAPI int       elm_config_cache_edje_file_cache_size_get(void);
 
 /**
  * Set the configured edje file cache size
@@ -868,7 +863,7 @@ EAPI int       elm_cache_edje_file_cache_size_get(void);
  * @param size The edje file cache size
  * @ingroup Caches
  */
-EAPI void       elm_cache_edje_file_cache_size_set(int size);
+EAPI void       elm_config_cache_edje_file_cache_size_set(int size);
 
 /**
  * Get the configured edje collections (groups) cache size.
@@ -879,7 +874,7 @@ EAPI void       elm_cache_edje_file_cache_size_set(int size);
  * @return The edje collections cache size
  * @ingroup Caches
  */
-EAPI int       elm_cache_edje_collection_cache_size_get(void);
+EAPI int       elm_config_cache_edje_collection_cache_size_get(void);
 
 /**
  * Set the configured edje collections (groups) cache size
@@ -890,23 +885,23 @@ EAPI int       elm_cache_edje_collection_cache_size_get(void);
  * @param size The edje collections cache size
  * @ingroup Caches
  */
-EAPI void       elm_cache_edje_collection_cache_size_set(int size);
+EAPI void       elm_config_cache_edje_collection_cache_size_set(int size);
 
 /**
  * Get the enable status of the focus highlight
  *
  * This gets whether the highlight on focused objects is enabled or not
  *
- * @see elm_focus_highlight_enabled_set()
+ * @see elm_config_focus_highlight_enabled_set()
  * @ingroup Focus
  */
-EAPI Eina_Bool            elm_focus_highlight_enabled_get(void);
+EAPI Eina_Bool            elm_config_focus_highlight_enabled_get(void);
 
 /**
  * Set the enable status of the focus highlight
  *
  * @param enable Enable highlight if EINA_TRUE, disable otherwise
- * 
+ *
  * Set whether to show or not the highlight on focused objects
  *
  * Note that it will take effect only to Elementary windows created after
@@ -916,28 +911,28 @@ EAPI Eina_Bool            elm_focus_highlight_enabled_get(void);
  *
  * @ingroup Focus
  */
-EAPI void                 elm_focus_highlight_enabled_set(Eina_Bool enable);
+EAPI void                 elm_config_focus_highlight_enabled_set(Eina_Bool enable);
 
 /**
  * Get the enable status of the highlight animation
  *
  * @return The focus highlight mode set
- * 
+ *
  * Get whether the focus highlight, if enabled, will animate its switch from
  * one object to the next
- * 
+ *
  * @ingroup Focus
  */
-EAPI Eina_Bool            elm_focus_highlight_animate_get(void);
+EAPI Eina_Bool            elm_config_focus_highlight_animate_get(void);
 
 /**
  * Set the enable status of the highlight animation
  *
  * @param animate Enable animation if EINA_TRUE, disable otherwise
- * 
+ *
  * Set whether the focus highlight, if enabled, will animate its switch from
  * one object to the next
- * 
+ *
  * Note that it will take effect only to Elementary windows created after
  * this is called.
  *
@@ -945,9 +940,24 @@ EAPI Eina_Bool            elm_focus_highlight_animate_get(void);
  *
  * @ingroup Focus
  */
-EAPI void                 elm_focus_highlight_animate_set(Eina_Bool animate);
+EAPI void                 elm_config_focus_highlight_animate_set(Eina_Bool animate);
 
 /**
- * @}
+ * Get the system mirrored mode. This determines the default mirrored mode
+ * of widgets.
+ *
+ * @return EINA_TRUE if mirrored is set, EINA_FALSE otherwise
  */
+EAPI Eina_Bool elm_config_mirrored_get(void);
 
+/**
+ * Set the system mirrored mode. This determines the default mirrored mode
+ * of widgets.
+ *
+ * @param mirrored EINA_TRUE to set mirrored mode, EINA_FALSE to unset it.
+ */
+EAPI void      elm_config_mirrored_set(Eina_Bool mirrored);
+
+/**
+ * @}
+ */