]> git.saurik.com Git - wxWidgets.git/blame_incremental - src/motif/mdi/lib/XsMDICanvas.h
fix for rather mysterious problem when deleting the list ctrl
[wxWidgets.git] / src / motif / mdi / lib / XsMDICanvas.h
... / ...
CommitLineData
1/*
2 Copyright (C) 1996 Scott W. Sadler
3 All rights reserved.
4*/
5
6/*
7 XsMDICanvas.h
8
9 History
10 03-Mar-96 1.0; Scott W. Sadler (ssadler@cisco.com)
11 Created
12*/
13
14#ifndef XSMDICANVAS_H
15#define XSMDICANVAS_H
16
17// Includes
18
19#include "XsComponent.h"
20
21// Forward declarations
22
23class XsMDIWindow;
24
25// XsMDICanvas class
26
27class XsMDICanvas : public XsComponent {
28
29 public:
30
31// Constructor/Destructor
32
33 XsMDICanvas (const char *name, Widget parent);
34 virtual ~XsMDICanvas ( );
35
36// MDI Window manipulation
37
38 virtual void add (XsMDIWindow *win); // Add an MDI window
39 virtual void remove (XsMDIWindow *win); // Remove an MDI window
40 void removeAll ( ); // Remove all MDI windows
41
42// Utilities
43
44 int numWindows ( ) const; // Number of MDI windows
45 Widget GetDrawingArea() const { return _drawArea; }
46
47// Component methods
48
49 virtual void show ( );
50
51// Class name
52
53 virtual const char *className ( ) const;
54
55 protected:
56
57// Component life-cycle
58
59 virtual void _componentDestroyed ( );
60
61// Geometry management
62
63 virtual void _placeWindow (XsMDIWindow *win);
64
65// Canvas resize handler
66
67 virtual void _resize (XtPointer);
68
69// Implementation
70
71 Widget _clipWin;
72 Widget _drawArea;
73
74 XsMDIWindow **_list;
75 int _num;
76 int _max;
77 int _place;
78
79 private:
80
81// Callbacks
82
83 static void _clipResizeCallback (Widget, XtPointer, XtPointer);
84 static void _canvasResizeCallback (Widget, XtPointer, XtPointer);
85
86// Resources
87
88 static String _resources[];
89};
90
91// Inline member functions
92
93inline XsMDICanvas::numWindows ( ) const
94{
95 return (_num);
96}
97
98#endif