summaryrefslogtreecommitdiff
path: root/src/lib/elm_settingspane.eo
blob: 87184860e2b003f57a0fc7bd75d3ed4d44d27d39 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
class Elm_Settingspane(Elm_Layout)
{
   eo_prefix: elm_obj_settingspane;
   properties {
   }
   methods {
      focused_get{
        /*@
        Returns the currently focused item

        Returns the item which is currently displayed.

        @ingroup Settingspane
        */
        return: Elm_Settingspane_Item* ;
      }
      item_get {
        /*@
        Return the Item from this path

        This will search the item of the given paths.
        If the path is "settings/monitor/resolution"
        The Item resolution in the parent "monitor" in the parent "settings" will be searched.
        If the item is found, it will be retured, if it isnt, NULL is returned

        @see elm_settingspane_item_focus

        @ingroup Settingspane */
        return: Elm_Settingspane_Item* ;
        params {
          @in const(char) *paths; /*@ the path of the item to return*/
        }
      }
      item_append {
        /*@
        Append a item.

        This will append a item with the given name, description and icon to the widget,
        if par is not NULL it will be placed as a child of par. If par is NULL it will be placed in the 0 level.

        @see elm_settingspane_item_append_relative

        @ingroup Settingspane*/
         return: Elm_Settingspane_Item *;
         params {
            @in void *data; /*@ data to attach to the item which gets passed to the callback */

            @in const(char) *name; /*@ name of the item */
            @in const(char) *description; /*@ the description of the item */
            @in Evas_Object *icon; /*@ the icon to show in the menu */
            @in Elm_Settingspane_Item *par; /*@ parent of this item, it will be shown when the parent item is selected. If NULL it will be appended to the 0 lvl */
         }
      }
      item_append_relative {
        /*@
        Append a item relative

        This will append a item like item_append, with the only difference that it will be appended to rel,
        The parent of rel will be took as parent.

        @note This will fail if rel is NULL

        @see item_append

        @ingroup Settingspane

        */
         return: Elm_Settingspane_Item *;
         params {
            @in void *data; /*@  data to attach to the item which gets passed to the callback */
            @in const(char) *name; /*@ name of the item */
            @in const(char) *description; /*@ the description of the item */
            @in Evas_Object *icon; /*@ the icon to show in the menu */
            @in Elm_Settingspane_Item *rel; /*@ the item after which the current one will be appended, if NULL the call will fail!*/
         }
      }
      save_quit {
        /*@
        Check if everything is saved

        With the internal stack of the widget it is possible that multiple panels are opened above each other.
        If the changed flag is set to one of this panels the apply/reset buttons are enabled,
        and you cannot close this page before you clicked reset or apply.
        If there are panels with the change flag set this function will return EINA_FALSE,
        if no change flag is set on the opened panel it will return EINA_TRUE

        @see raise_unsaved

        @return EINA_TRUE if no change flag is set on the opened panels.
        @ingroup Settingspane

         */
        return: Eina_Bool;
      }
      raise_unsaved {
         /*@
         Raise unsaved panels in the internal stack

         This will raise internal panels which have the changed flag set.
         The panels are raised with a error highlighting.

         The lowest unsaved panel will later be the lowest unsaved panel. The highest at the top.
         All panels with unsaved changes will be infront of those without unsaved changes.

         @see save_quit

         @ingroup Settingspane
         */
      }
   }
   implements {
     Eo.Base.constructor;
     Eo.Base.destructor;
     Evas.Object_Smart.add;
     Elm_Layout.content_aliases.get;
   }
}