- wxPopupWindow(wxWindow *parent) { (void)Create(parent); }
-
- bool Create(wxWindow *parent, int flags = wxBORDER_NONE)
- {
- return wxPopupWindowBase::Create(parent) &&
- wxWindow::Create(parent, -1,
- wxDefaultPosition, wxDefaultSize,
- (flags & wxBORDER_MASK) | wxPOPUP_WINDOW);
- }
+ wxPopupWindow(wxWindow *parent, int flags = wxBORDER_NONE)
+ { (void)Create(parent, flags); }
+
+ bool Create(wxWindow *parent, int flags = wxBORDER_NONE);
+
+ virtual bool Show(bool show = true);
+
+ // return the style to be used for the popup windows
+ virtual WXDWORD MSWGetStyle(long flags, WXDWORD *exstyle) const;
+
+ // 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_NO_COPY(wxPopupWindow)