davemds pushed a commit to branch master.

http://git.enlightenment.org/bindings/python/python-efl.git/commit/?id=5258779d41866bdd1d788955607bd7a795cff154

commit 5258779d41866bdd1d788955607bd7a795cff154
Author: Dave Andreoli <d...@gurumeditation.it>
Date:   Fri Aug 12 13:22:43 2016 +0200

    New 1.18 API: elm.Configuration.icon_theme
---
 efl/elementary/configuration.pxi      | 22 ++++++++++++++++++++++
 efl/elementary/configuration.py       |  2 ++
 efl/elementary/configuration_cdef.pxi |  3 +++
 examples/elementary/test_config.py    |  3 +++
 4 files changed, 30 insertions(+)

diff --git a/efl/elementary/configuration.pxi b/efl/elementary/configuration.pxi
index ddeb5ea..2ef8608 100644
--- a/efl/elementary/configuration.pxi
+++ b/efl/elementary/configuration.pxi
@@ -18,6 +18,8 @@
 
 include "configuration_cdef.pxi"
 
+ELM_CONFIG_ICON_THEME_ELEMENTARY = "_Elementary_Icon_Theme"
+
 cdef class Configuration(object):
 
     """The configuration class"""
@@ -1213,6 +1215,26 @@ cdef class Configuration(object):
         def __set__(self, int mode):
             elm_config_font_hint_type_set(mode)
 
+    property icon_theme:
+        """The FDO icon theme for all elementary apps.
+
+        This property control the icon theme for all
+        :attr:`efl.elementary.Icon.standard` calls. Valid parameters are the
+        name of an installed freedesktop.org icon theme or
+        ELM_CONFIG_ICON_THEME_ELEMENTARY for the built in theme.
+
+        :type: string
+
+        .. versionadded:: 1.18
+
+        """
+        def __get__(self):
+            return _ctouni(elm_config_icon_theme_get())
+        def __set__(self, theme):
+            if isinstance(theme, unicode): theme = 
PyUnicode_AsUTF8String(theme)
+            elm_config_icon_theme_set(
+                <const char *>theme if theme is not None else NULL)
+
     property window_auto_focus_enable:
         """The auto focus enable flag
 
diff --git a/efl/elementary/configuration.py b/efl/elementary/configuration.py
index ca2082d..179bd9c 100644
--- a/efl/elementary/configuration.py
+++ b/efl/elementary/configuration.py
@@ -53,3 +53,5 @@ from . import ELM_SLIDER_INDICATOR_VISIBLE_MODE_DEFAULT
 from . import ELM_SLIDER_INDICATOR_VISIBLE_MODE_ALWAYS
 from . import ELM_SLIDER_INDICATOR_VISIBLE_MODE_ON_FOCUS
 from . import ELM_SLIDER_INDICATOR_VISIBLE_MODE_NONE
+
+from . import ELM_CONFIG_ICON_THEME_ELEMENTARY
diff --git a/efl/elementary/configuration_cdef.pxi 
b/efl/elementary/configuration_cdef.pxi
index cdea2e6..3088d5c 100644
--- a/efl/elementary/configuration_cdef.pxi
+++ b/efl/elementary/configuration_cdef.pxi
@@ -187,6 +187,9 @@ cdef extern from "Elementary.h":
     void                    
elm_config_item_select_on_focus_disabled_set(Eina_Bool disabled)
     Eina_Bool               elm_config_first_item_focus_on_first_focusin_get()
     void                    
elm_config_first_item_focus_on_first_focusin_set(Eina_Bool enabled)
+
+    const char *            elm_config_icon_theme_get()
+    void                    elm_config_icon_theme_set(const char *theme)
     
     Elm_Focus_Autoscroll_Mode elm_config_focus_autoscroll_mode_get()
     void                    
elm_config_focus_autoscroll_mode_set(Elm_Focus_Autoscroll_Mode mode)
diff --git a/examples/elementary/test_config.py 
b/examples/elementary/test_config.py
index fb7f972..77c2d26 100644
--- a/examples/elementary/test_config.py
+++ b/examples/elementary/test_config.py
@@ -262,6 +262,9 @@ def FRAME(win, bx, t):
 def config_clicked(obj, data=None):
     siname = "_TestConfigSocketImage_"
 
+    print("ELM_CONFIG_ICON_THEME_ELEMENTARY = '%s'" % \
+          elementary.ELM_CONFIG_ICON_THEME_ELEMENTARY)
+
     win = StandardWindow("config", "Configuration", autodel=True,
         size=(400,500))
     global ad

-- 


Reply via email to