summaryrefslogtreecommitdiff
path: root/src/fltk-widgets-valuators-value_inputs.ads
blob: fbf0fdf27e828f559bee5bd30c1deb7aaf0ce351 (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
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154


with

    FLTK.Widgets.Inputs;


package FLTK.Widgets.Valuators.Value_Inputs is


    type Value_Input is new Valuator with private;

    type Value_Input_Reference (Data : not null access Value_Input'Class) is
        limited null record with Implicit_Dereference => Data;




    package Forge is

        function Create
               (X, Y, W, H : in Integer;
                Text       : in String := "")
            return Value_Input;

    end Forge;




    function Input
           (This : in Value_Input)
        return FLTK.Widgets.Inputs.Input_Reference;




    function Get_Cursor_Color
           (This : in Value_Input)
        return Color;

    procedure Set_Cursor_Color
           (This : in out Value_Input;
            Col  : in     Color);




    function Get_Shortcut
           (This : in Value_Input)
        return Key_Combo;

    procedure Set_Shortcut
           (This : in out Value_Input;
            Key  : in     Key_Combo);




    function Is_Soft
           (This : in Value_Input)
        return Boolean;

    procedure Set_Soft
           (This : in out Value_Input;
            To   : in     Boolean);




    function Get_Text_Color
           (This : in Value_Input)
        return Color;

    procedure Set_Text_Color
           (This : in out Value_Input;
            Col  : in     Color);

    function Get_Text_Font
           (This : in Value_Input)
        return Font_Kind;

    procedure Set_Text_Font
           (This : in out Value_Input;
            Font : in     Font_Kind);

    function Get_Text_Size
           (This : in Value_Input)
        return Font_Size;

    procedure Set_Text_Size
           (This : in out Value_Input;
            Size : in     Font_Size);




    procedure Draw
           (This : in out Value_Input);

    function Handle
           (This  : in out Value_Input;
            Event : in     Event_Kind)
        return Event_Outcome;


private


    package INP renames FLTK.Widgets.Inputs;


    type Input_Access is access INP.Input;


    type Value_Input is new Valuator with record
        My_Input : Input_Access;
    end record;

    overriding procedure Finalize
           (This : in out Value_Input);




    pragma Inline (Input);


    pragma Inline (Get_Cursor_Color);
    pragma Inline (Set_Cursor_Color);


    pragma Inline (Get_Shortcut);
    pragma Inline (Set_Shortcut);


    pragma Inline (Is_Soft);
    pragma Inline (Set_Soft);


    pragma Inline (Get_Text_Color);
    pragma Inline (Set_Text_Color);
    pragma Inline (Get_Text_Font);
    pragma Inline (Set_Text_Font);
    pragma Inline (Get_Text_Size);
    pragma Inline (Set_Text_Size);


    pragma Inline (Draw);
    pragma Inline (Handle);


end FLTK.Widgets.Valuators.Value_Inputs;