]> git.saurik.com Git - wxWidgets.git/blobdiff - src/x11/popupwin.cpp
Fixed MDI context menu event handling problem (Stefan Kowski)
[wxWidgets.git] / src / x11 / popupwin.cpp
index 35bbf8c99f2e9e14e2b3684c9c9ba0c628915a87..45b3a278c6a15d35758b98a6a634cb3d98665cf1 100644 (file)
@@ -7,11 +7,8 @@
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
-#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
-#pragma implementation "popupwin.h"
-#endif
-
 #include "wx/defs.h"
+#include "wx/log.h"
 
 #if wxUSE_POPUPWIN
 
@@ -30,7 +27,9 @@
 BEGIN_EVENT_TABLE(wxPopupWindow,wxPopupWindowBase)
 END_EVENT_TABLE()
 
-IMPLEMENT_DYNAMIC_CLASS(wxPopupWindow, wxWindow)
+wxPopupWindow::~wxPopupWindow()
+{
+}
 
 bool wxPopupWindow::Create( wxWindow *parent, int style )
 {
@@ -56,6 +55,7 @@ bool wxPopupWindow::Create( wxWindow *parent, int style )
     int xscreen = DefaultScreen( xdisplay );
     Visual *xvisual = DefaultVisual( xdisplay, xscreen );
     Window xparent = RootWindow( xdisplay, xscreen );
+    Colormap cm = DefaultColormap( xdisplay, xscreen);
     
 #if wxUSE_TWO_WINDOWS
     bool need_two_windows = 
@@ -70,6 +70,12 @@ bool wxPopupWindow::Create( wxWindow *parent, int style )
     
     XSetWindowAttributes xattributes;
     long xattributes_mask = 0;
+
+    m_backgroundColour = wxSystemSettings::GetColour(wxSYS_COLOUR_3DFACE);
+    m_backgroundColour.CalcPixel( (WXColormap) cm);
+    
+    m_foregroundColour = *wxBLACK;
+    m_foregroundColour.CalcPixel( (WXColormap) cm);
     
     xattributes_mask |= CWBackPixel;
     xattributes.background_pixel = m_backgroundColour.GetPixel();