summaryrefslogtreecommitdiff
path: root/src/lib/efl/interfaces/efl_text_properties.eo
blob: 9424ed50032bd6f2ca2e89bf41207207c18512ed (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
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
type Efl_Font_Size: int;

enum Efl.Text.Properties.Ellipsis
{
   none = 0,
   start,
   middle,
   end
}

enum Efl.Text.Properties.Horizontal_Alignment
{
   default = 0,
   left,
   middle,
   right
}

enum Efl.Text.Properties.Vertical_Alignment
{
   default = 0,
   top,
   center,
   bottom
}

enum Efl.Text.Properties.Wrap_Mode
{
   none = 0,
   char,
   word,
   mixed
}

interface Efl.Text.Properties {
   methods {
      @property font {
         set {
            [[Set the font family or filename, and size on a given text object.

              This function allows the font name and size of a text object to
              be set. The font string has to follow fontconfig's convention on
              naming fonts, as it's the underlying library used to query system
              fonts by Evas (see the fc-list command's output, on your system,
              to get an idea). Alternatively, one can use a full path to a font
              file.

              See also @.font.get, @.font_source.get.
            ]]
         }
         get {
            [[Retrieve the font family and size in use on a given text object.

              This function allows the font name and size of a text object to
              be queried. Be aware that the font name string is still owned by
              Evas and should not have free() called on it by the caller of the
              function.

              See also @.font.set.
            ]]
         }
         values {
            font: const(char) *; [[The font family name or filename.]]
            size: Efl_Font_Size; [[The font size, in points.]]
         }
      }
      @property font_source {
         set {
            [[Set the font (source) file to be used on a given text object.

              This function allows the font file to be explicitly set for a
              given text object, overriding system lookup, which will first
              occur in the given file's contents.

              See also @.font.set.
            ]]
         }
         get {
            [[Get the font file's path which is being used on a given text
              object.

              See @.font.get for more details.
            ]]
         }
         values {
            font_source: const(char)*; [[The font file's path.]]
         }
      }
      @property ellipsis {
         [[Controls the ellipsis for the text object.]]
         set {
         }
         get {
         }
         values {
            ellipsis: Efl.Text.Properties.Ellipsis; [[The ellipsis. See @Efl.Text.Properties.Ellipsis]]
         }
      }
      @property horizontal_alignment {
         [[Controls horizontal alignment for text.]]
         set {
         }
         get {
         }
         values {
            align: Efl.Text.Properties.Horizontal_Alignment; [[The horizontal alignment. See @Efl.Text.Properties.Horizontal_Alignment]]
         }
      }
      @property vertical_alignment {
         [[Controls vertical alignment for text.]]
         set {
         }
         get {
         }
         values {
            align: Efl.Text.Properties.Vertical_Alignment; [[The vertical alignment. See @Efl.Text.Properties.Vertical_Alignment]]
         }
      }
      @property wrap_mode {
         [[Controls wrap mode. This tells how the text will be implicitly cut
           into a new line (without inserting a line break or paragraph separator)
           when it reaches the far edge of the object.

           Note that #EFL_TEXT_PROPERTIES_WRAP_MODE_NONE indicates single-line mode.
           ]]
         set {
         }
         get {
         }
         values {
            ellipsis: Efl.Text.Properties.Wrap_Mode; [[The wrap mode to use. See @Efl.Text.Properties.Wrap_Mode for details on them.]]
         }
      }
   }
}