X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/833a51f67ec2cb68649cf4cd2fe46456fc1752b6..fb8d7eb7a880f1f2e32d8830f9c5e12b2536e05f:/src/motif/popupwin.cpp?ds=sidebyside diff --git a/src/motif/popupwin.cpp b/src/motif/popupwin.cpp index b3ce905e52..ffa6837734 100644 --- a/src/motif/popupwin.cpp +++ b/src/motif/popupwin.cpp @@ -1,20 +1,22 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: popupwin.cpp +// Name: src/motif/popupwin.cpp // Purpose: wxPopupWindow implementation // Author: Mattia barbon // Modified by: // Created: 28.08.03 // RCS-ID: $Id$ // Copyright: (c) Mattia barbon -// Licence: wxWindows licence +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) -#pragma implementation "popup.h" -#endif +// For compilers that support precompilation, includes "wx.h". +#include "wx/wxprec.h" #include "wx/popupwin.h" -#include "wx/app.h" + +#ifndef WX_PRECOMP + #include "wx/app.h" +#endif #ifdef __VMS__ #pragma message disable nosimpint @@ -26,8 +28,6 @@ #include "wx/motif/private.h" -IMPLEMENT_DYNAMIC_CLASS( wxPopupWindow, wxWindow ); - bool wxPopupWindow::Create( wxWindow *parent, int flags ) { if( !wxPopupWindowBase::Create( parent, flags ) ) @@ -44,11 +44,19 @@ bool wxPopupWindow::Create( wxWindow *parent, int flags ) m_mainWidget = (WXWidget)popup; - SetSize( 100, 100 ); // for child creation to work + wxAddWindowToTable( (Widget) m_mainWidget, this ); + + DoSetSizeIntr( -1, -1, 100, 100, 0, true ); XtSetMappedWhenManaged( popup, False ); XtRealizeWidget( popup ); - + XtManageChild ( popup ); +/* + XtTranslations ptr; + XtOverrideTranslations (popup, + ptr = XtParseTranslationTable (": resize()")); + XtFree ((char *) ptr); +*/ return true; } @@ -59,7 +67,7 @@ bool wxPopupWindow::Show( bool show ) if( show ) { - XtPopup( (Widget)GetMainWidget(), XtGrabNone ); + XtPopup( (Widget)GetMainWidget(), XtGrabNonexclusive ); } else {