summaryrefslogtreecommitdiff
path: root/src/lib/elementary/efl_ui_tags.eo
blob: 194c9b74e50e6e3b51bdec4a7fed3b318cd1bb14 (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
class @beta Efl.Ui.Tags extends Efl.Ui.Layout_Base
   implements Efl.Ui.Format
   composites Efl.Text
{
   [[A widget displaying a list of tags. The user can remove tags by clicking
     on each tag "close" button and add new tags by typing text in the text
     entry at the end of the list.]]
   methods {
      @property editable {
         [[Control if the tag list is to be editable by the user or not.]]
         set {
         }
         get {
         }
         values {
            editable: bool; [[If $true, the user can add/delete tags to the tag list,
                              if not, the tag list is non-editable.]]
         }
      }
      @property expanded {
         [[Control whether the tag list is expanded or not.

           In the expanded state, all tags will be displayed.
           Otherwise, only a single line of tags will be displayed with a marker to
           indicate that there is more content.]]
         set {
         }
         get {
         }
         values {
            expanded: bool; [[The expanded state. Set this to $true to allow multiple
                              lines of tags. Set to $false for a single line.]]
         }
      }
      @property items {
         [[List of tags in the tag list. Tags can be added and removed by the user
           using the UI, and by the program by modifying this property.]]
         set {
         }
         get {
         }
         values {
            items: const(array<string>); [[The array of items, or $NULL if none.]]
         }
      }
   }
   implements {
      Efl.Object.constructor;
      Efl.Object.destructor;
      Efl.Ui.Widget.widget_input_event_handler;
      Efl.Text.text { get; set; }
      Efl.Ui.Format.apply_formatted_value;
   }
   events {
      /* FIXME: Returning a basic type is not future-proof, better return a struct */
      item,selected: string; [[Called when item was selected]]
      item,added: string; [[Called when item was added]]
      item,deleted: string; [[Called when item was deleted]]
      item,clicked: string; [[Called when item was clicked]]
      item,longpressed: string; [[Called when item got a longpress]]
      expanded: void; [[Called when expanded]]
      contracted: void; [[Called when contracted]]
      /* FIXME: Not future-proof */
      expand,state,changed: int; [[Called when expanded state changed]]
   }
}