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


private with

    System;


package FLTK.Widgets.Groups is


    type Group is new Widget with private;

    type Index is new Positive;
    --  type Clip_Mode is (No_Clip, Clip);




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




    procedure Add
           (This : in out Group;
            Item : in out Widget'Class);

    procedure Insert
           (This  : in out Group;
            Item  : in out Widget'Class;
            Place : in     Index);

    procedure Insert
           (This   : in out Group;
            Item   : in out Widget'Class;
            Before : in     Widget'Class);

    procedure Remove
           (This : in out Group;
            Item : in out Widget'Class);

    procedure Remove
           (This  : in out Group;
            Place : in     Index);

    procedure Clear
           (This : in out Group);




    function Child
           (This  : in Group;
            Place : in Index)
        return access Widget'Class;

    function Find
           (This : in     Group;
            Item : in out Widget'Class)
        return Index;

    function Number_Of_Children
           (This : in Group)
        return Natural;




    --  function Get_Clip_Mode
    --         (This : in Group)
    --      return Clip_Mode;

    --  procedure Set_Clip_Mode
    --         (This : in out Group;
    --          Mode : in     Clip_Mode);




    function Get_Resizable
           (This : in Group)
        return access Widget'Class;

    procedure Set_Resizable
           (This : in out Group;
            Item : in     Widget'Class);

    procedure Reset_Initial_Sizes
           (This : in out Group);




    procedure Draw
           (This : in out Group);

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


private


    type Group is new Widget with null record;

    overriding procedure Finalize
           (This : in out Group);




    procedure fl_group_end
           (G : in System.Address);
    pragma Import (C, fl_group_end, "fl_group_end");


end FLTK.Widgets.Groups;