cf5fa7d5f1
Add XRC handler for wxAuiManager and include the existing wxAuiNotebook
handler into it (but notice that wxAuiToolBar handler added by a later #15686
in f269f868d7
remains separate).
Also update the AUI dialog in the sample and stop hardcoding its size in
pixels.
See #13520.
52 lines
1.6 KiB
C++
52 lines
1.6 KiB
C++
/////////////////////////////////////////////////////////////////////////////
|
|
// Name: wx/xrc/xh_aui.h
|
|
// Purpose: XRC resource handler for wxAUI
|
|
// Author: Andrea Zanellato, Steve Lamerton (wxAuiNotebook)
|
|
// Created: 2011-09-18
|
|
// Copyright: (c) 2011 wxWidgets Team
|
|
// Licence: wxWindows licence
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
#ifndef _WX_XH_AUI_H_
|
|
#define _WX_XH_AUI_H_
|
|
|
|
#include "wx/xrc/xmlres.h"
|
|
|
|
#if wxUSE_XRC && wxUSE_AUI
|
|
|
|
#include "wx/vector.h"
|
|
|
|
class WXDLLIMPEXP_FWD_AUI wxAuiManager;
|
|
class WXDLLIMPEXP_FWD_AUI wxAuiNotebook;
|
|
|
|
class WXDLLIMPEXP_AUI wxAuiXmlHandler : public wxXmlResourceHandler
|
|
{
|
|
public:
|
|
wxAuiXmlHandler();
|
|
virtual wxObject *DoCreateResource() wxOVERRIDE;
|
|
virtual bool CanHandle(wxXmlNode *node) wxOVERRIDE;
|
|
|
|
// Returns the wxAuiManager for the specified window
|
|
wxAuiManager *GetAuiManager(wxWindow *managed) const;
|
|
|
|
private:
|
|
// Used to UnInit() the wxAuiManager before destroying its managed window
|
|
void OnManagedWindowClose(wxWindowDestroyEvent &event);
|
|
|
|
typedef wxVector<wxAuiManager*> Managers;
|
|
Managers m_managers; // all wxAuiManagers created in this handler
|
|
|
|
wxAuiManager *m_manager; // Current wxAuiManager
|
|
wxWindow *m_window; // Current managed wxWindow
|
|
wxAuiNotebook *m_notebook;
|
|
|
|
bool m_mgrInside; // Are we handling a wxAuiManager or panes inside it?
|
|
bool m_anbInside; // Are we handling a wxAuiNotebook or pages inside it?
|
|
|
|
wxDECLARE_DYNAMIC_CLASS(wxAuiXmlHandler);
|
|
};
|
|
|
|
#endif //wxUSE_XRC && wxUSE_AUI
|
|
|
|
#endif //_WX_XH_AUI_H_
|