1 -- File: WNT_WClass.cdl
2 -- Created: Fri Jan 26 14:13:05 1996
3 -- Author: PLOTNIKOV Eugeny
5 ---Copyright: Matra Datavision 1996
8 class WClass from WNT inherits TShared from MMgt
10 ---Purpose: This class defines a Windows NT window class.
11 -- A window in Windows NT is always created based on a
12 -- window class. The window class identifies the window
13 -- procedure that processes messages to the window. Each
14 -- window class has unique name ( character string ). More
15 -- than one window can be created based on a single window
16 -- class. For example, all button windows in Windows NT
17 -- are created based on the same window class. The window
18 -- class defines the window procedure and some other
19 -- characteristics ( background, mouse cursor shape etc. )
20 -- of the windows that are created based on that class.
21 -- When we create a window, we define additional
22 -- characteristics of the window that are unique to that
23 -- window. So, we have to create and register window
24 -- class before creation of any window. Of course, it's possible
25 -- to create a new window class for each window inside
26 -- the Window class and do not use the WClass at all.
27 -- We implemented this class for sake of flexibility of
37 ClassDefinitionError from WNT
42 aClassName : CString from Standard;
43 aWndProc : Address from Standard;
44 aStyle : Uint from WNT;
45 aClassExtra : Integer from Standard = 0;
46 aWindowExtra : Integer from Standard = 0;
47 aCursor : Handle from Aspect = 0;
48 anIcon : Handle from Aspect = 0;
49 aMenuName : CString from Standard = 0
51 returns mutable WClass from WNT
53 ---Purpose: Creates a Windows NT window class and registers it.
54 ---Trigger: Raises if class registration failed.
55 raises ClassDefinitionError from WNT;
57 Destroy ( me : mutable )
60 ---Purpose: Destroys all resources attached to the class
64 ----------------------------
65 -- Category: Inquire methods
66 ----------------------------
69 WndProc ( me ) returns Address from Standard;
71 ---Purpose: Returns address of window procedure.
74 Name ( me ) returns CString from Standard;
76 ---Purpose: Returns a class name.
79 Instance ( me ) returns Handle from Aspect;
81 ---Purpose: Returns a program instance handle.
86 lpszName : CString from Standard is protected;
87 hInstance : Handle from Aspect is protected;
88 lpfnWndProc : Address from Standard is protected;