X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/82a5f02c861e8d57ba8255a9553b941118ad4520..be55ddb10d8a0ccfe08be1bd70c748d0061bf62f:/include/wx/generic/laywin.h diff --git a/include/wx/generic/laywin.h b/include/wx/generic/laywin.h index 79111cd0e3..992e1b0d34 100644 --- a/include/wx/generic/laywin.h +++ b/include/wx/generic/laywin.h @@ -15,7 +15,7 @@ #ifndef _WX_LAYWIN_H_G_ #define _WX_LAYWIN_H_G_ -#ifdef __GNUG__ +#if defined(__GNUG__) && !defined(__APPLE__) #pragma interface "laywin.h" #endif @@ -23,8 +23,10 @@ #include "wx/sashwin.h" #endif // wxUSE_SASH -extern const int wxEVT_QUERY_LAYOUT_INFO; -extern const int wxEVT_CALCULATE_LAYOUT; +BEGIN_DECLARE_EVENT_TYPES() + DECLARE_EVENT_TYPE(wxEVT_QUERY_LAYOUT_INFO, 1500) + DECLARE_EVENT_TYPE(wxEVT_CALCULATE_LAYOUT, 1501) +END_DECLARE_EVENT_TYPES() enum wxLayoutOrientation { @@ -59,9 +61,7 @@ enum wxLayoutAlignment class WXDLLEXPORT wxQueryLayoutInfoEvent: public wxEvent { -DECLARE_DYNAMIC_CLASS(wxQueryLayoutInfoEvent) public: - wxQueryLayoutInfoEvent(wxWindowID id = 0) { SetEventType(wxEVT_QUERY_LAYOUT_INFO); @@ -89,19 +89,23 @@ public: void SetAlignment(wxLayoutAlignment align) { m_alignment = align; } wxLayoutAlignment GetAlignment() const { return m_alignment; } + virtual wxEvent *Clone() const { return new wxQueryLayoutInfoEvent(*this); } + protected: int m_flags; int m_requestedLength; wxSize m_size; wxLayoutOrientation m_orientation; wxLayoutAlignment m_alignment; - + +private: + DECLARE_DYNAMIC_CLASS(wxQueryLayoutInfoEvent) }; typedef void (wxEvtHandler::*wxQueryLayoutInfoEventFunction)(wxQueryLayoutInfoEvent&); #define EVT_QUERY_LAYOUT_INFO(func) \ - wxEventTableEntry( wxEVT_QUERY_LAYOUT_INFO, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxQueryLayoutInfoEventFunction) & func, NULL ), + DECLARE_EVENT_TABLE_ENTRY( wxEVT_QUERY_LAYOUT_INFO, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxQueryLayoutInfoEventFunction) & func, NULL ), /* * This event is used to take a bite out of the available client area. @@ -109,7 +113,6 @@ typedef void (wxEvtHandler::*wxQueryLayoutInfoEventFunction)(wxQueryLayoutInfoEv class WXDLLEXPORT wxCalculateLayoutEvent: public wxEvent { -DECLARE_DYNAMIC_CLASS(wxCalculateLayoutEvent) public: wxCalculateLayoutEvent(wxWindowID id = 0) { @@ -117,22 +120,29 @@ public: m_flags = 0; m_id = id; } -// Read by the app - inline void SetFlags(int flags) { m_flags = flags; } - inline int GetFlags() const { return m_flags; } -// Set by the app - inline void SetRect(const wxRect& rect) { m_rect = rect; } - inline wxRect GetRect() const { return m_rect; } + // Read by the app + void SetFlags(int flags) { m_flags = flags; } + int GetFlags() const { return m_flags; } + + // Set by the app + void SetRect(const wxRect& rect) { m_rect = rect; } + wxRect GetRect() const { return m_rect; } + + virtual wxEvent *Clone() const { return new wxCalculateLayoutEvent(*this); } + protected: int m_flags; wxRect m_rect; + +private: + DECLARE_DYNAMIC_CLASS(wxCalculateLayoutEvent) }; typedef void (wxEvtHandler::*wxCalculateLayoutEventFunction)(wxCalculateLayoutEvent&); #define EVT_CALCULATE_LAYOUT(func) \ - wxEventTableEntry( wxEVT_CALCULATE_LAYOUT, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxCalculateLayoutEventFunction) & func, NULL ), + DECLARE_EVENT_TABLE_ENTRY( wxEVT_CALCULATE_LAYOUT, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxCalculateLayoutEventFunction) & func, NULL ), #if wxUSE_SASH @@ -141,7 +151,6 @@ typedef void (wxEvtHandler::*wxCalculateLayoutEventFunction)(wxCalculateLayoutEv // an IDE-style interface. class WXDLLEXPORT wxSashLayoutWindow: public wxSashWindow { - DECLARE_CLASS(wxSashLayoutWindow) public: wxSashLayoutWindow() { @@ -149,13 +158,13 @@ public: } wxSashLayoutWindow(wxWindow *parent, wxWindowID id = -1, const wxPoint& pos = wxDefaultPosition, - const wxSize& size = wxDefaultSize, long style = wxSW_3D|wxCLIP_CHILDREN, const wxString& name = "layoutWindow") + const wxSize& size = wxDefaultSize, long style = wxSW_3D|wxCLIP_CHILDREN, const wxString& name = wxT("layoutWindow")) { Create(parent, id, pos, size, style, name); } bool Create(wxWindow *parent, wxWindowID id = -1, const wxPoint& pos = wxDefaultPosition, - const wxSize& size = wxDefaultSize, long style = wxSW_3D|wxCLIP_CHILDREN, const wxString& name = "layoutWindow"); + const wxSize& size = wxDefaultSize, long style = wxSW_3D|wxCLIP_CHILDREN, const wxString& name = wxT("layoutWindow")); // Accessors inline wxLayoutAlignment GetAlignment() const { return m_alignment; }; @@ -182,7 +191,9 @@ private: wxLayoutOrientation m_orientation; wxSize m_defaultSize; -DECLARE_EVENT_TABLE() +private: + DECLARE_CLASS(wxSashLayoutWindow) + DECLARE_EVENT_TABLE() }; #endif // wxUSE_SASH @@ -196,15 +207,14 @@ class WXDLLEXPORT wxLayoutAlgorithm: public wxObject public: wxLayoutAlgorithm() {} +#if wxUSE_MDI_ARCHITECTURE // The MDI client window is sized to whatever's left over. bool LayoutMDIFrame(wxMDIParentFrame* frame, wxRect* rect = (wxRect*) NULL); +#endif // wxUSE_MDI_ARCHITECTURE // mainWindow is sized to whatever's left over. This function for backward // compatibility; use LayoutWindow. - bool LayoutFrame(wxFrame* frame, wxWindow* mainWindow = (wxWindow*) NULL) - { - return LayoutWindow(frame, mainWindow); - } + bool LayoutFrame(wxFrame* frame, wxWindow* mainWindow = (wxWindow*) NULL); // mainWindow is sized to whatever's left over. bool LayoutWindow(wxWindow* frame, wxWindow* mainWindow = (wxWindow*) NULL);