X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/eb729cd37a2b6e81fc88a7edbeb7624a5c87a486..66c2bf7b1d9326fb650acfaae22ec50528cfbf7c:/include/wx/msw/popupwin.h diff --git a/include/wx/msw/popupwin.h b/include/wx/msw/popupwin.h index 239ee04212..d95c1dabc0 100644 --- a/include/wx/msw/popupwin.h +++ b/include/wx/msw/popupwin.h @@ -4,7 +4,6 @@ // Author: Vadim Zeitlin // Modified by: // Created: 06.01.01 -// RCS-ID: $Id$ // Copyright: (c) 2001 Vadim Zeitlin // Licence: wxWindows licence /////////////////////////////////////////////////////////////////////////////// @@ -16,7 +15,7 @@ // wxPopupWindow // ---------------------------------------------------------------------------- -class WXDLLEXPORT wxPopupWindow : public wxPopupWindowBase +class WXDLLIMPEXP_CORE wxPopupWindow : public wxPopupWindowBase { public: wxPopupWindow() { } @@ -24,26 +23,22 @@ public: wxPopupWindow(wxWindow *parent, int flags = wxBORDER_NONE) { (void)Create(parent, flags); } - bool Create(wxWindow *parent, int flags = wxBORDER_NONE) - { - return wxPopupWindowBase::Create(parent) && - wxWindow::Create(parent, -1, - wxDefaultPosition, wxDefaultSize, - (flags & wxBORDER_MASK) | wxPOPUP_WINDOW); - } + bool Create(wxWindow *parent, int flags = wxBORDER_NONE); -protected: - virtual void DoGetPosition(int *x, int *y) const - { - // the position of a "top level" window such as this should be in - // screen coordinates, not in the client ones which MSW gives us - // (because we are a child window) - wxPopupWindowBase::DoGetPosition(x, y); + virtual void SetFocus(); + virtual bool Show(bool show = true); + + // return the style to be used for the popup windows + virtual WXDWORD MSWGetStyle(long flags, WXDWORD *exstyle) const; - GetParent()->ClientToScreen(x, y); - } + // get the HWND to be used as parent of this window with CreateWindow() + virtual WXHWND MSWGetParent() const; + +protected: + // popups handle the position like wxTopLevelWindow, not wxWindow + virtual void DoGetPosition(int *x, int *y) const; - DECLARE_DYNAMIC_CLASS(wxPopupWindow) + DECLARE_DYNAMIC_CLASS_NO_COPY(wxPopupWindow) }; #endif // _WX_MSW_POPUPWIN_H_