source: trunk/src/user32/new/win32wmdiclient.h@ 780

Last change on this file since 780 was 760, checked in by sandervl, 26 years ago

MDI + menu changes

File size: 2.4 KB
Line 
1/* $Id: win32wmdiclient.h,v 1.3 1999-08-31 17:14:52 sandervl Exp $ */
2/*
3 * Win32 MDI Client Window Class for OS/2
4 *
5 * Copyright 1999 Sander van Leeuwen (sandervl@xs4all.nl)
6 *
7 * Project Odin Software License can be found in LICENSE.TXT
8 *
9 */
10#ifndef __WIN32WMDICLIENT_H__
11#define __WIN32WMDICLIENT_H__
12
13#include <win32wbase.h>
14#include <win32wmdichild.h>
15#include <mdi.h>
16
17#define MDICLIENTCLASSNAMEA "MDICLIENT"
18#define MDICLIENTCLASSNAMEW L"MDICLIENT"
19
20//******************************************************************************
21//******************************************************************************
22class Win32MDIClientWindow : public Win32BaseWindow
23{
24public:
25 Win32MDIClientWindow(CREATESTRUCTA *lpCreateStructA, ATOM classAtom, BOOL isUnicode);
26virtual ~Win32MDIClientWindow();
27
28 int incTotalCreated() { return ++nTotalCreated; };
29 int getFirstChildId() { return idFirstChild; };
30
31 HWND getMDIMenu() { return hWindowMenu; };
32
33Win32MDIChildWindow *getMaximizedChild() { return maximizedChild; };
34 void setMaximizedChild(Win32MDIChildWindow *newchild) { maximizedChild = newchild; };
35
36Win32MDIChildWindow *getActiveChild() { return activeChild; };
37 void setActiveChild(Win32MDIChildWindow *newchild) { activeChild = newchild; };
38
39Win32MDIChildWindow *getChildByID(INT id);
40
41 int getNrOfChildren() { return nActiveChildren; };
42 int incNrActiveChildren() { return ++nActiveChildren; };
43 int decNrActiveChildren() { return --nActiveChildren; };
44
45 LONG childActivate(Win32MDIChildWindow *child);
46 void switchActiveChild(Win32MDIChildWindow *nextActiveChild, BOOL bNextWindow );
47 LRESULT destroyChild(Win32MDIChildWindow *child, BOOL flagDestroy );
48
49 LRESULT MDIClientWndProc(UINT message, WPARAM wParam, LPARAM lParam);
50
51private:
52 Win32MDIChildWindow *maximizedChild;
53 Win32MDIChildWindow *activeChild;
54
55 HWND hWindowMenu;
56 int idFirstChild;
57
58 int nActiveChildren;
59 int nTotalCreated;
60 LPSTR frameTitle;
61 DWORD mdiFlags;
62
63};
64//******************************************************************************
65//******************************************************************************
66BOOL MDICLIENT_Register();
67BOOL MDICLIENT_Unregister();
68
69#endif //__WIN32WMDICLIENT_H__
Note: See TracBrowser for help on using the repository browser.