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_
|