wxAUI: Made fixed size floating panes work
wxAUI: Added IMPLEMENT_CLASS etc. for wxFloatingPane for a later patch git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@39973 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -34,9 +34,9 @@ class WXDLLIMPEXP_AUI wxFloatingPane : public wxFloatingPaneBaseClass
|
||||
public:
|
||||
wxFloatingPane(wxWindow* parent,
|
||||
wxFrameManager* owner_mgr,
|
||||
wxWindowID id = wxID_ANY,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize);
|
||||
const wxPaneInfo& pane,
|
||||
wxWindowID id = wxID_ANY
|
||||
);
|
||||
~wxFloatingPane();
|
||||
void SetPaneWindow(const wxPaneInfo& pane);
|
||||
private:
|
||||
@@ -59,6 +59,8 @@ private:
|
||||
wxFrameManager m_mgr;
|
||||
|
||||
DECLARE_EVENT_TABLE()
|
||||
|
||||
DECLARE_CLASS(wxFloatingPaneBaseClass)
|
||||
};
|
||||
|
||||
#endif // wxUSE_AUI
|
||||
|
@@ -32,15 +32,19 @@
|
||||
#ifndef WX_PRECOMP
|
||||
#endif
|
||||
|
||||
IMPLEMENT_CLASS( wxFloatingPane, wxFloatingPaneBaseClass )
|
||||
|
||||
wxFloatingPane::wxFloatingPane(wxWindow* parent,
|
||||
wxFrameManager* owner_mgr,
|
||||
wxWindowID id /*= wxID_ANY*/,
|
||||
const wxPoint& pos /*= wxDefaultPosition*/,
|
||||
const wxSize& size /*= wxDefaultSize*/)
|
||||
: wxFloatingPaneBaseClass(parent, id, wxEmptyString, pos, size,
|
||||
const wxPaneInfo& pane,
|
||||
wxWindowID id /*= wxID_ANY*/)
|
||||
: wxFloatingPaneBaseClass(parent, id, wxEmptyString,
|
||||
pane.floating_pos, pane.floating_size,
|
||||
wxRESIZE_BORDER | wxSYSTEM_MENU | wxCAPTION |
|
||||
wxCLOSE_BOX | wxFRAME_NO_TASKBAR |
|
||||
wxFRAME_FLOAT_ON_PARENT | wxCLIP_CHILDREN)
|
||||
wxFRAME_FLOAT_ON_PARENT | wxCLIP_CHILDREN |
|
||||
(pane.IsFixed()?0:wxRESIZE_BORDER)
|
||||
)
|
||||
{
|
||||
m_owner_mgr = owner_mgr;
|
||||
m_moving = false;
|
||||
@@ -80,9 +84,6 @@ void wxFloatingPane::SetPaneWindow(const wxPaneInfo& pane)
|
||||
|
||||
SetTitle(pane.caption);
|
||||
|
||||
if (contained_pane.IsFixed())
|
||||
SetWindowStyle(GetWindowStyle() & ~wxRESIZE_BORDER);
|
||||
|
||||
if (pane.floating_size != wxDefaultSize)
|
||||
{
|
||||
SetSize(pane.floating_size);
|
||||
|
@@ -1782,9 +1782,8 @@ void wxFrameManager::Update()
|
||||
// we need to create a frame for this
|
||||
// pane, which has recently been floated
|
||||
wxFloatingPane* frame = new wxFloatingPane(m_frame,
|
||||
this, -1,
|
||||
p.floating_pos,
|
||||
p.floating_size);
|
||||
this,
|
||||
p);
|
||||
|
||||
// on MSW, if the owner desires transparent dragging, and
|
||||
// the dragging is happening right now, then the floating
|
||||
|
Reference in New Issue
Block a user