summaryrefslogtreecommitdiff
path: root/src/lib/elementary/efl_ui_focus_manager_calc.eo
blob: 7f1974139b49ac0caf4ccaea3787c212d09d17f6 (plain)
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
class @beta Efl.Ui.Focus.Manager_Calc extends Efl.Object implements Efl.Ui.Focus.Manager {
    [[Calculates the directions of Efl.Ui.Focus.Direction

      Each registered item will get an other registered object in each
      direction. You can get items for the currently focused item if
      you call request move.
    ]]
    methods {
        register {
            [[Register a new item in the graph.

              $parent can not be $null, it will be used as the parent in the
              logical tree.
              $redirect will be set as redirect property on that manager, once
              $child gets focused.
            ]]
            params {
                child : Efl.Ui.Focus.Object @nonull; [[The object to register]]
                parent : Efl.Ui.Focus.Object @nonull; [[The parent to use in
                                                        the logical tree]]
                redirect : Efl.Ui.Focus.Manager; [[The redirect manager to set
                    once this child is focused can be NULL for no redirect]]
            }
            return : bool; [[$true if successful, $false otherwise]]
        }
        register_logical {
            [[Register a new item only for the logical parent.

              The item can never get focus, it just helps to build a tree out
              of the items that are.
            ]]
            params {
                child : Efl.Ui.Focus.Object @nonull; [[The object to register]]
                parent : Efl.Ui.Focus.Object @nonull; [[The parent to use in
                                                        the logical tree]]
                redirect : Efl.Ui.Focus.Manager; [[The redirect manager to set
                    once this child is focused can be $null for no redirect]]
            }
            return : bool; [[$true if successful, $false otherwise]]
        }
        update_redirect {
            [[Set a new redirect object for the given child.

              Once $child is focused the redirect manager will be set
              in the redirect property. Set redirect to $null if nothing should happen.
            ]]
            params {
                child : Efl.Ui.Focus.Object @nonull; [[The child to update]]
                redirect : Efl.Ui.Focus.Manager; [[Once $child is focused this
                    element will be set as redirect]]
            }
            return : bool; [[$true if successful, $false otherwise]]
        }
        update_parent {
            [[Set a new logical parent for the given child.]]
            params {
                child : Efl.Ui.Focus.Object @nonull; [[The child to update]]
                parent : Efl.Ui.Focus.Object @nonull; [[The parent which now
                    will be the logical parent of child]]
            }
            return : bool; [[$true if successful, $false otherwise]]
        }
        update_children {
            [[Give the list of children a different order.]]
            params {
                parent : Efl.Ui.Focus.Object @nonull; [[the parent to update]]
                children : list<Efl.Ui.Focus.Object> @owned; [[the list with the new order]]
            }
            return : bool; [[$true if successful, $false otherwise]]
        }
        update_order {
            [[Give the given order to the parent's child.

              Children from the list which are not true children are ignored.
            ]]
            params {
                parent : Efl.Ui.Focus.Object @nonull; [[the parent to update]]
                children : list<Efl.Ui.Focus.Object> @owned; [[the order of items]]
            }
        }
        unregister {
            [[Unregister the given item from the focus graph.]]
            params {
                child : Efl.Ui.Focus.Object; [[The child to unregister.]]
            }
        }
    }
    implements {
        class.constructor;
        class.destructor;
        Efl.Ui.Focus.Manager.move;
        Efl.Ui.Focus.Manager.request_move;
        Efl.Ui.Focus.Manager.manager_focus {get; set;}
        Efl.Ui.Focus.Manager.redirect {set; get;}
        Efl.Ui.Focus.Manager.border_elements {get;}
        Efl.Ui.Focus.Manager.viewport_elements {get;}
        Efl.Ui.Focus.Manager.root {set; get;}
        Efl.Ui.Focus.Manager.request_subchild;
        Efl.Ui.Focus.Manager.fetch;
        Efl.Ui.Focus.Manager.logical_end;
        Efl.Ui.Focus.Manager.reset_history;
        Efl.Ui.Focus.Manager.pop_history_stack;
        Efl.Ui.Focus.Manager.setup_on_first_touch;
        Efl.Ui.Focus.Manager.dirty_logic_freeze;
        Efl.Ui.Focus.Manager.dirty_logic_unfreeze;
        Efl.Object.constructor;
        Efl.Object.finalize;
        Efl.Object.provider_find;
        Efl.Object.destructor;
    }
}