summaryrefslogtreecommitdiff
path: root/src/fltk-widgets-valuators.ads
blob: 1f16b0cd9e374f7aba0a678829d948b150c46b52 (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


package FLTK.Widgets.Valuators is


    type Valuator is new Widget with private;

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




    package Forge is

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

    end Forge;




    function Clamp
           (This  : in Valuator;
            Input : in Long_Float)
        return Long_Float;

    function Round
           (This  : in Valuator;
            Input : in Long_Float)
        return Long_Float;

    function Increment
           (This  : in Valuator;
            Input : in Long_Float;
            Step  : in Integer)
        return Long_Float;




    function Get_Minimum
           (This : in Valuator)
        return Long_Float;

    procedure Set_Minimum
           (This : in out Valuator;
            To   : in     Long_Float);

    function Get_Maximum
           (This : in Valuator)
        return Long_Float;

    procedure Set_Maximum
           (This : in out Valuator;
            To   : in     Long_Float);

    function Get_Step
           (This : in Valuator)
        return Long_Float;

    procedure Set_Step
           (This : in out Valuator;
            To   : in     Long_Float);

    function Get_Value
           (This : in Valuator)
        return Long_Float;

    procedure Set_Value
           (This : in out Valuator;
            To   : in     Long_Float);

    procedure Set_Bounds
           (This     : in out Valuator;
            Min, Max : in     Long_Float);

    procedure Set_Precision
           (This : in out Valuator;
            To   : in     Integer);

    procedure Set_Range
           (This     : in out Valuator;
            Min, Max : in     Long_Float);




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


private


    type Valuator is new Widget with null record;

    overriding procedure Finalize
           (This : in out Valuator);




    pragma Inline (Clamp);
    pragma Inline (Round);
    pragma Inline (Increment);


    pragma Inline (Get_Minimum);
    pragma Inline (Set_Minimum);
    pragma Inline (Get_Maximum);
    pragma Inline (Set_Maximum);
    pragma Inline (Get_Step);
    pragma Inline (Set_Step);
    pragma Inline (Get_Value);
    pragma Inline (Set_Value);
    pragma Inline (Set_Bounds);
    pragma Inline (Set_Precision);
    pragma Inline (Set_Range);


    pragma Inline (Handle);


end FLTK.Widgets.Valuators;