1 ///////////////////////////////////////////////////////////////////////////////
2 // Name: wx/aui/floatpane.h
3 // Purpose: wxaui: wx advanced user interface - docking window manager
4 // Author: Benjamin I. Williams
8 // Copyright: (C) Copyright 2005, Kirix Corporation, All Rights Reserved.
9 // Licence: wxWindows Library Licence, Version 3.1
10 ///////////////////////////////////////////////////////////////////////////////
12 #ifndef _WX_FLOATPANE_H_
13 #define _WX_FLOATPANE_H_
15 // ----------------------------------------------------------------------------
17 // ----------------------------------------------------------------------------
24 #include "wx/weakref.h"
26 #if defined( __WXMSW__ ) || defined( __WXMAC__ ) || defined( __WXGTK__ )
27 #include "wx/minifram.h"
28 #define wxAuiFloatingFrameBaseClass wxMiniFrame
30 #define wxAuiFloatingFrameBaseClass wxFrame
33 class WXDLLIMPEXP_AUI wxAuiFloatingFrame
: public wxAuiFloatingFrameBaseClass
36 wxAuiFloatingFrame(wxWindow
* parent
,
37 wxAuiManager
* owner_mgr
,
38 const wxAuiPaneInfo
& pane
,
39 wxWindowID id
= wxID_ANY
,
40 long style
= wxRESIZE_BORDER
| wxSYSTEM_MENU
| wxCAPTION
|
41 wxFRAME_NO_TASKBAR
| wxFRAME_FLOAT_ON_PARENT
|
44 virtual ~wxAuiFloatingFrame();
45 void SetPaneWindow(const wxAuiPaneInfo
& pane
);
46 wxAuiManager
* GetOwnerManager() const;
49 virtual void OnMoveStart();
50 virtual void OnMoving(const wxRect
& window_rect
, wxDirection dir
);
51 virtual void OnMoveFinished();
54 void OnSize(wxSizeEvent
& event
);
55 void OnClose(wxCloseEvent
& event
);
56 void OnMoveEvent(wxMoveEvent
& event
);
57 void OnIdle(wxIdleEvent
& event
);
58 void OnActivate(wxActivateEvent
& event
);
59 static bool isMouseDown();
62 wxWindow
* m_pane_window
; // pane window being managed
63 bool m_solid_drag
; // true if system uses solid window drag
69 wxDirection m_lastDirection
;
71 wxWeakRef
<wxAuiManager
> m_owner_mgr
;
76 DECLARE_CLASS(wxAuiFloatingFrame
)
81 #endif //_WX_FLOATPANE_H_