Rev | Line | |
---|
[4] | 1 | /* $Id: wndclass.h,v 1.1 1999-05-24 20:19:06 ktk Exp $ */
|
---|
| 2 |
|
---|
| 3 | /*
|
---|
| 4 | *
|
---|
| 5 | * Project Odin Software License can be found in LICENSE.TXT
|
---|
| 6 | *
|
---|
| 7 | */
|
---|
| 8 | /*
|
---|
| 9 | * Win32 window class for OS/2
|
---|
| 10 | *
|
---|
| 11 | * Copyright 1998 Sander van Leeuwen
|
---|
| 12 | *
|
---|
| 13 | */
|
---|
| 14 | #ifndef __WNDCLASS_H__
|
---|
| 15 | #define __WNDCLASS_H__
|
---|
| 16 |
|
---|
| 17 | #ifdef _OS2WIN_H
|
---|
| 18 | #include <winos2def.h>
|
---|
| 19 | #endif
|
---|
| 20 |
|
---|
| 21 | //SvL: 18-7-'98, Registers system window classes (button, listbox etc etc)
|
---|
| 22 | extern "C" {
|
---|
| 23 | void RegisterSystemClasses(ULONG hModule);
|
---|
| 24 | }
|
---|
| 25 |
|
---|
| 26 | class Win32WindowClass
|
---|
| 27 | {
|
---|
| 28 | public:
|
---|
| 29 | Win32WindowClass(WNDPROC pUserCallback, LPSTR id, HINSTANCE hinst);
|
---|
| 30 | ~Win32WindowClass();
|
---|
| 31 |
|
---|
| 32 | static WNDPROC_O32 GetOS2ClassCallback();
|
---|
| 33 | static WNDPROC GetClassCallback(HINSTANCE hinst, LPSTR id);
|
---|
| 34 | static WNDPROC GetClassCallback(LPSTR id);
|
---|
| 35 | static void UnregisterClass(HINSTANCE hinst, LPSTR id);
|
---|
| 36 |
|
---|
| 37 | static Win32WindowClass *FindClass(LPSTR id);
|
---|
| 38 |
|
---|
| 39 | WNDPROC GetWinCallback() { return pWinCallback; };
|
---|
| 40 | void SetWinCallback(WNDPROC newcallback)
|
---|
| 41 | {
|
---|
| 42 | pWinCallback = newcallback;
|
---|
| 43 | };
|
---|
| 44 |
|
---|
| 45 | private:
|
---|
| 46 |
|
---|
| 47 | WNDPROC pWinCallback;
|
---|
| 48 |
|
---|
| 49 | HINSTANCE hinst;
|
---|
| 50 |
|
---|
| 51 | char className[128];
|
---|
| 52 | DWORD classAtom;
|
---|
| 53 |
|
---|
| 54 | static Win32WindowClass *wndclasses;
|
---|
| 55 | Win32WindowClass *next;
|
---|
| 56 | };
|
---|
| 57 |
|
---|
| 58 | #endif
|
---|
Note:
See
TracBrowser
for help on using the repository browser.