X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/7e521b01c32d4f98de9f6b7624968ee4cdaada93..08422003083270640e23c2563a5fa72d131add96:/include/wx/generic/splitter.h diff --git a/include/wx/generic/splitter.h b/include/wx/generic/splitter.h index 61e4c08008..84fa3077c4 100644 --- a/include/wx/generic/splitter.h +++ b/include/wx/generic/splitter.h @@ -49,7 +49,7 @@ enum // The MFC splitter window manages scrollbars as well so is able to // put sash buttons on the scrollbars, but we probably don't want to go down // this path. -// 2) for wxWindows 2.0, we must find a way to set the WS_CLIPCHILDREN style +// 2) for wxWidgets 2.0, we must find a way to set the WS_CLIPCHILDREN style // to prevent flickering. (WS_CLIPCHILDREN doesn't work in all cases so can't be // standard). @@ -67,7 +67,7 @@ public: } // Normal constructor - wxSplitterWindow(wxWindow *parent, wxWindowID id = -1, + wxSplitterWindow(wxWindow *parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxSP_3D, @@ -79,7 +79,7 @@ public: virtual ~wxSplitterWindow(); - bool Create(wxWindow *parent, wxWindowID id = -1, + bool Create(wxWindow *parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxSP_3D, @@ -155,6 +155,12 @@ public: // Gets the sash position int GetSashPosition() const { return m_sashPosition; } + // Set the sash gravity + void SetSashGravity(double gravity); + + // Gets the sash gravity + double GetSashGravity() const { return m_sashGravity; } + // If this is zero, we can remove panes by dragging the sash. void SetMinimumPaneSize(int min); int GetMinimumPaneSize() const { return m_minimumPaneSize; } @@ -212,6 +218,9 @@ public: void SetNeedUpdating(bool needUpdating) { m_needUpdating = needUpdating; } bool GetNeedUpdating() const { return m_needUpdating ; } +#ifdef __WXMAC__ + virtual bool MacClipGrandChildren() const { return true ; } +#endif protected: // event handlers #if defined(__WXMSW__) || defined(__WXMAC__) @@ -268,6 +277,8 @@ protected: int m_oldX; int m_oldY; int m_sashPosition; // Number of pixels from left or top + double m_sashGravity; + wxSize m_lastSize; int m_requestedSashPosition; int m_sashPositionCurrent; // while dragging int m_firstX; @@ -376,7 +387,7 @@ typedef void (wxEvtHandler::*wxSplitterEventFunction)(wxSplitterEvent&); DECLARE_EVENT_TABLE_ENTRY( \ wxEVT_COMMAND_SPLITTER_SASH_POS_CHANGED, \ id, \ - -1, \ + wxID_ANY, \ (wxObjectEventFunction)(wxEventFunction) wxStaticCastEvent( wxSplitterEventFunction, &fn ), \ NULL \ ), @@ -385,7 +396,7 @@ typedef void (wxEvtHandler::*wxSplitterEventFunction)(wxSplitterEvent&); DECLARE_EVENT_TABLE_ENTRY( \ wxEVT_COMMAND_SPLITTER_SASH_POS_CHANGING, \ id, \ - -1, \ + wxID_ANY, \ (wxObjectEventFunction)(wxEventFunction) wxStaticCastEvent( wxSplitterEventFunction, &fn ), \ NULL \ ), @@ -394,7 +405,7 @@ typedef void (wxEvtHandler::*wxSplitterEventFunction)(wxSplitterEvent&); DECLARE_EVENT_TABLE_ENTRY( \ wxEVT_COMMAND_SPLITTER_DOUBLECLICKED, \ id, \ - -1, \ + wxID_ANY, \ (wxObjectEventFunction)(wxEventFunction) wxStaticCastEvent( wxSplitterEventFunction, &fn ), \ NULL \ ), @@ -403,7 +414,7 @@ typedef void (wxEvtHandler::*wxSplitterEventFunction)(wxSplitterEvent&); DECLARE_EVENT_TABLE_ENTRY( \ wxEVT_COMMAND_SPLITTER_UNSPLIT, \ id, \ - -1, \ + wxID_ANY, \ (wxObjectEventFunction)(wxEventFunction) wxStaticCastEvent( wxSplitterEventFunction, &fn ), \ NULL \ ),