0024428: Implementation of LGPL license
[occt.git] / src / Aspect / Aspect_Window.cdl
1 -- Created by: NW,JPB,CAL
2 -- Copyright (c) 1991-1999 Matra Datavision
3 -- Copyright (c) 1999-2014 OPEN CASCADE SAS
4 --
5 -- This file is part of Open CASCADE Technology software library.
6 --
7 -- This library is free software; you can redistribute it and / or modify it
8 -- under the terms of the GNU Lesser General Public version 2.1 as published
9 -- by the Free Software Foundation, with special exception defined in the file
10 -- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
11 -- distribution for complete text of the license and disclaimer of any warranty.
12 --
13 -- Alternatively, this file may be used under the terms of Open CASCADE
14 -- commercial license or contractual agreement.
15
16 deferred class Window from Aspect
17
18 inherits
19         TShared from MMgt
20
21 uses
22         Background         from Aspect,
23         GradientBackground from Aspect,
24         TypeOfResize       from Aspect,
25         FillMethod         from Aspect,
26         GradientFillMethod from Aspect,
27         Handle             from Aspect,
28         Ratio              from Quantity,
29         Parameter          from Quantity,
30         NameOfColor        from Quantity,
31         Color              from Quantity,
32         AsciiString        from TCollection
33
34 raises
35         WindowDefinitionError   from Aspect,
36         WindowError     from Aspect
37
38 is
39         Initialize;
40         ---Level: Public
41         ---Purpose: Initializes the datas of a Window.
42
43         ---------------------------------------------------
44         -- Category: Methods to modify the class definition
45         ---------------------------------------------------
46
47         SetBackground ( me      : mutable;
48                         ABack   : Background from Aspect );
49         ---Level: Public
50         ---Purpose: Modifies the window background.
51         ---Category: Methods to modify the class definition
52
53     SetBackground ( me : mutable ;
54                     theNameOfColor : NameOfColor from Quantity );
55     ---Level: Public
56     ---Purpose: Modifies the window background from a Named Color.
57     ---Category: Methods to modify the class definition
58
59     SetBackground ( me : mutable; color : Color from Quantity );
60     ---Level: Public
61     ---Purpose: Modifies the window background.
62     ---Category: Methods to modify the class definition
63
64     SetBackground( me: mutable;
65                    ABackground: GradientBackground from Aspect);
66     ---Level: Public
67     ---Purpose: Modifies the window gradient background.
68     ---Category: Methods to modify the class definition
69
70     SetBackground( me: mutable;
71                    theFirstColor:  Color from Quantity;
72                    theSecondColor: Color from Quantity;
73                    theFillMethod:  GradientFillMethod from Aspect);
74     ---Level: Public
75     ---Purpose: Modifies the window gradient background.
76     ---Category: Methods to modify the class definition
77
78         Map ( me )
79                 raises WindowError from Aspect is deferred;
80         ---Level: Public
81         ---Purpose: Opens the window <me>.
82         ---Category: Methods to modify the class definition
83
84         Unmap ( me )
85                 raises WindowError from Aspect is deferred;
86         ---Level: Public
87         ---Purpose: Closes the window <me>.
88         ---Category: Methods to modify the class definition
89
90         DoResize ( me ) returns TypeOfResize from Aspect
91                 raises WindowError from Aspect is deferred;
92         ---Level: Advanced
93         ---Purpose: Apply the resizing to the window <me>.
94         ---Category: Methods to modify the class definition
95
96         DoMapping ( me ) returns Boolean from Standard
97                 raises WindowError from Aspect is deferred;
98         ---Level: Advanced
99         ---Purpose: Apply the mapping change to the window <me>.
100         -- and returns TRUE if the window is mapped at screen.
101         ---Category: Methods to modify the class definition
102
103         Destroy ( me : mutable )
104                 raises WindowError from Aspect is deferred;
105         ---Level: Advanced
106         ---Purpose: Destroy the Window
107         ---Category: Methods to modify the class definition
108
109         ----------------------------
110         -- Category: Inquire methods
111         ----------------------------
112
113         Background ( me ) returns Background from Aspect;
114         ---Level: Public
115         ---Purpose: Returns the window background.
116         ---Category: Inquire methods
117
118         BackgroundFillMethod( me ) returns FillMethod from Aspect;
119         ---Level: Public
120         ---Purpose: Returns the current image background fill mode.
121
122         GradientBackground ( me ) returns GradientBackground from Aspect;
123         ---Level: Public
124         ---Purpose: Returns the window gradient background.
125
126         IsMapped ( me ) returns Boolean from Standard is deferred;
127         ---Level: Public
128         ---Purpose: Returns True if the window <me> is opened
129         --          and False if the window is closed.
130         ---Category: Inquire methods
131
132         IsVirtual ( me ) returns Boolean from Standard;
133         ---Level: Public
134         ---Purpose: Returns True if the window <me> is virtual
135         ---Category: Inquire methods
136
137         SetVirtual ( me : mutable;
138                      theVirtual : Boolean from Standard );
139         ---Level: Public
140         ---Purpose: Setup the virtual state
141         ---Category: Inquire methods
142
143         Ratio ( me ) returns Ratio from Quantity is deferred;
144         ---Level: Public
145         ---Purpose: Returns The Window RATIO equal to the physical
146         --          WIDTH/HEIGHT dimensions
147         ---Category: Inquire methods
148
149         Position ( me ;
150                 X1, Y1, X2, Y2 : out Integer from Standard )
151         is deferred;
152         ---Level: Public
153         ---Purpose: Returns The Window POSITION in PIXEL
154         ---Category: Inquire methods
155
156         Size ( me ;
157                Width, Height : out Integer from Standard )
158         is deferred;
159         ---Level: Public
160         ---Purpose: Returns The Window SIZE in PIXEL
161         ---Category: Inquire methods
162
163 fields
164         MyBackground : Background from Aspect is protected;
165         MyGradientBackground   : GradientBackground from Aspect is protected;
166         MyBackgroundFillMethod : FillMethod from Aspect is protected;
167         MyIsVirtual : Boolean from Standard is protected;
168 end Window;