Review/simplify/cleanup MDI classes for all platforms and introduce base
classes for wxMDI{Parent,Child}Frame and wxMDIClientWindow. Also use generic MDI implementation for wxMotif as it seems to be more functional and definitely is more maintained (we probably should use the generic version for wxGTK too). git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56674 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -2,10 +2,11 @@
|
||||
// Name: wx/cocoa/mdi.h
|
||||
// Purpose: wxMDIParentFrame, wxMDIChildFrame, wxMDIClientWindow
|
||||
// Author: David Elliott
|
||||
// Modified by:
|
||||
// Modified by: 2008-10-31 Vadim Zeitlin: derive from the base classes
|
||||
// Created: 2003/09/08
|
||||
// RCS-ID: $Id$
|
||||
// Copyright: (c) 2003 David Elliott
|
||||
// (c) 2008 Vadim Zeitlin
|
||||
// Licence: wxWindows licence
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@@ -24,7 +25,7 @@ WX_DECLARE_EXPORTED_LIST(wxMDIChildFrame, wxCocoaMDIChildFrameList);
|
||||
// ========================================================================
|
||||
// wxMDIParentFrame
|
||||
// ========================================================================
|
||||
class WXDLLIMPEXP_CORE wxMDIParentFrame: public wxFrame
|
||||
class WXDLLIMPEXP_CORE wxMDIParentFrame : public wxMDIParentFrameBase
|
||||
{
|
||||
friend class WXDLLIMPEXP_FWD_CORE wxMDIChildFrame;
|
||||
DECLARE_EVENT_TABLE()
|
||||
@@ -76,17 +77,16 @@ protected:
|
||||
// Implementation
|
||||
// ------------------------------------------------------------------------
|
||||
public:
|
||||
wxMDIChildFrame *GetActiveChild() const;
|
||||
void SetActiveChild(wxMDIChildFrame *child);
|
||||
|
||||
wxMDIClientWindow *GetClientWindow() const;
|
||||
virtual wxMDIClientWindow *OnCreateClient();
|
||||
// implement base class pure virtuals
|
||||
// ----------------------------------
|
||||
|
||||
static bool IsTDI() { return false; }
|
||||
|
||||
virtual void ActivateNext() { /* TODO */ }
|
||||
virtual void ActivatePrevious() { /* TODO */ }
|
||||
|
||||
virtual void Cascade() {}
|
||||
virtual void Tile(wxOrientation WXUNUSED(orient) = wxHORIZONTAL) {}
|
||||
virtual void ArrangeIcons() {}
|
||||
virtual void ActivateNext();
|
||||
virtual void ActivatePrevious();
|
||||
protected:
|
||||
wxMDIClientWindow *m_clientWindow;
|
||||
wxMDIChildFrame *m_currentChild;
|
||||
@@ -150,14 +150,15 @@ protected:
|
||||
// ========================================================================
|
||||
// wxMDIClientWindow
|
||||
// ========================================================================
|
||||
class wxMDIClientWindow: public wxWindow
|
||||
class wxMDIClientWindow : public wxMDIClientWindowBase
|
||||
{
|
||||
DECLARE_DYNAMIC_CLASS(wxMDIClientWindow)
|
||||
public:
|
||||
wxMDIClientWindow();
|
||||
wxMDIClientWindow( wxMDIParentFrame *parent, long style = 0 );
|
||||
virtual ~wxMDIClientWindow();
|
||||
virtual bool CreateClient( wxMDIParentFrame *parent, long style = 0 );
|
||||
wxMDIClientWindow() { }
|
||||
|
||||
virtual bool CreateClient(wxMDIParentFrame *parent,
|
||||
long style = wxHSCROLL | wxVSCROLL);
|
||||
|
||||
DECLARE_DYNAMIC_CLASS(wxMDIClientWindow)
|
||||
};
|
||||
|
||||
#endif // __WX_COCOA_MDI_H__
|
||||
|
Reference in New Issue
Block a user