aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/elementary/elm_label.eo
blob: 6afa5ac4971902b46f8ec26f7f61675717fdcae0 (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
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
import elm_general;

enum Elm.Label.Slide_Mode
{
   [[Slide mode of a label widget]]
   none = 0, [[No slide effect.]]
   auto, [[Slide only if the label area is bigger than the text width length.]]
   always [[Slide always.]]
}

class Elm.Label (Efl.Ui.Layout, Efl.Ui.Legacy)
{
   [[Elementary label class]]
   legacy_prefix: elm_label;
   eo_prefix: elm_obj_label;
   event_prefix: elm_label;
   methods {
      @property wrap_width {
         [[Control wrap width of the label

           This function sets the maximum width size hint of the label.

           Warning: This is only relevant if the label is inside a container.]]
         set {
         }
         get {
         }
         values {
            w: int; [[The wrap width in pixels at a minimum where words need to wrap]]
         }
      }
      @property slide_speed {
         [[Control the slide speed of the label

           Note: If you set the duration of the slide using @.slide_duration.set
           you cannot get the correct speed using this function until the label
           is actually rendered and resized.

           See @.slide_duration.set]]
         set {
         }
         get {
         }
         values {
            speed: double; [[The speed of the slide animation in px per seconds]]
         }
      }
      @property slide_mode {
         [[Control the slide mode of the label widget.

           By default, slide mode is none. Possible values for $mode are:
           @Elm.Label.Slide_Mode.none - no slide effect
           @Elm.Label.Slide_Mode.auto - slide only if the label area is bigger than
           the text width length
           @Elm.Label.Slide_Mode.always - slide always

           Warning: @Elm.Label.Slide_Mode.auto, @Elm.Label.Slide_Mode.always only work
           with the themes "slide_short", "slide_long" and "slide_bounce".
           Warning: @Elm.Label.Slide_Mode.auto, @Elm.Label.Slide_Mode.always don't work
           if the line wrap(elm_label_line_wrap_set()) or
           ellipsis(elm_label_ellipsis_set()) is set.

           @since 1.8]]
         set {
         }
         get {
         }
         values {
            mode: Elm.Label.Slide_Mode; [[The slide mode]]
         }
      }
      @property slide_duration {
         [[Control the slide duration of the label

           Note: If you set the speed of the slide using @.slide_speed.set
           you cannot get the correct duration using this function until the label
           is actually rendered and resized.]]
         set {
         }
         get {
         }
         values {
            duration: double; [[The duration in seconds in moving text from slide begin position to slide end position]]
         }
      }
      @property line_wrap {
         [[Control the wrapping behavior of the label

           By default no wrapping is done. Possible values for $wrap are:
           $ELM_WRAP_NONE - No wrapping
           $ELM_WRAP_CHAR - wrap between characters
           $ELM_WRAP_WORD - wrap between words
           $ELM_WRAP_MIXED - Word wrap, and if that fails, char wrap]]
         set {
         }
         get {
         }
         values {
            wrap: Elm.Wrap.Type; [[To wrap text or not]]
         }
      }
      @property ellipsis {
         [[Control the ellipsis behavior of the label

           If set to true and the text doesn't fit in the label an ellipsis("...")
           will be shown at the end of the widget.

           Warning This doesn't work with slide(elm_label_slide_set()) or if the
           chosen wrap method was $ELM_WRAP_WORD.]]
         set {
         }
         get {
         }
         values {
            ellipsis: bool; [[To ellipsis text or not]]
         }
      }
      slide_go {
         [[Start slide effect.

           See @.slide_mode.set.]]
      }
   }
   implements {
      class.constructor;
      Efl.Object.constructor;
      Efl.Ui.Widget.theme_apply;
      Efl.Part.part_get;
   }
   events {
      slide,end: void; [[Called when slide stopped]]
   }
}