blob: 4c3b633c53aed1f342f9ad2f234dfbeb2a7dd9a1 (
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
|
-- Programmed by Jedidiah Barber
-- Released into the public domain
limited with
FLTK.Widgets.Groups;
package FLTK.Widgets.Buttons is
type Button is new Widget with private;
type Button_Reference (Data : not null access Button'Class) is limited null record
with Implicit_Dereference => Data;
type State is (Off, On);
package Forge is
function Create
(X, Y, W, H : in Integer;
Text : in String := "")
return Button;
function Create
(Parent : in out FLTK.Widgets.Groups.Group'Class;
X, Y, W, H : in Integer;
Text : in String := "")
return Button;
end Forge;
function Get_State
(This : in Button)
return State;
procedure Set_State
(This : in out Button;
St : in State);
procedure Set_Only
(This : in out Button);
function Get_Down_Box
(This : in Button)
return Box_Kind;
procedure Set_Down_Box
(This : in out Button;
To : in Box_Kind);
function Get_Shortcut
(This : in Button)
return Key_Combo;
procedure Set_Shortcut
(This : in out Button;
Key : in Key_Combo);
procedure Draw
(This : in out Button);
function Handle
(This : in out Button;
Event : in Event_Kind)
return Event_Outcome;
procedure Simulate_Key_Action
(This : in out Button);
private
type Button is new Widget with null record;
overriding procedure Initialize
(This : in out Button);
overriding procedure Finalize
(This : in out Button);
procedure Extra_Init
(This : in out Button;
X, Y, W, H : in Integer;
Text : in String)
with Inline;
procedure Extra_Final
(This : in out Button)
with Inline;
pragma Inline (Get_State);
pragma Inline (Set_State);
pragma Inline (Set_Only);
pragma Inline (Get_Down_Box);
pragma Inline (Set_Down_Box);
pragma Inline (Get_Shortcut);
pragma Inline (Set_Shortcut);
pragma Inline (Draw);
pragma Inline (Handle);
pragma Inline (Simulate_Key_Action);
end FLTK.Widgets.Buttons;
|