// ----------------------------------------------------------------------------
#include "wx/defs.h"
+#include "wx/weakref.h"
#if wxUSE_AUI
class WXDLLIMPEXP_AUI wxAuiFloatingFrame : public wxAuiFloatingFrameBaseClass
{
- friend class wxAuiManager;
-
public:
wxAuiFloatingFrame(wxWindow* parent,
wxAuiManager* owner_mgr,
const wxAuiPaneInfo& pane,
wxWindowID id = wxID_ANY,
long style = wxRESIZE_BORDER | wxSYSTEM_MENU | wxCAPTION |
- wxFRAME_NO_TASKBAR | wxFRAME_FLOAT_ON_PARENT |
+ wxFRAME_NO_TASKBAR | wxFRAME_FLOAT_ON_PARENT |
wxCLIP_CHILDREN
);
virtual ~wxAuiFloatingFrame();
void SetPaneWindow(const wxAuiPaneInfo& pane);
wxAuiManager* GetOwnerManager() const;
-
+
protected:
- void SetOwnerManager(wxAuiManager* owner_mgr);
virtual void OnMoveStart();
virtual void OnMoving(const wxRect& window_rect, wxDirection dir);
virtual void OnMoveFinished();
-
+
private:
void OnSize(wxSizeEvent& event);
void OnClose(wxCloseEvent& event);
void OnIdle(wxIdleEvent& event);
void OnActivate(wxActivateEvent& event);
static bool isMouseDown();
-
+
private:
wxWindow* m_pane_window; // pane window being managed
bool m_solid_drag; // true if system uses solid window drag
wxSize m_last_size;
wxDirection m_lastDirection;
- wxAuiManager* m_owner_mgr;
+ wxWeakRef<wxAuiManager> m_owner_mgr;
wxAuiManager m_mgr;
#ifndef SWIG