// headers
// ----------------------------------------------------------------------------
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
#pragma implementation "frame.h"
#endif
+// For compilers that support precompilation, includes "wx.h".
+#include "wx/wxprec.h"
#ifdef __VMS
#define XtDisplay XTDISPLAY
EVT_SYS_COLOUR_CHANGED(wxFrame::OnSysColourChanged)
END_EVENT_TABLE()
-IMPLEMENT_DYNAMIC_CLASS(wxFrame, wxWindow)
+IMPLEMENT_DYNAMIC_CLASS(wxFrame, wxTopLevelWindow)
// ============================================================================
// implementation
yy -= tbh;
}
#endif // wxUSE_TOOLBAR
- *x = xx; *y = yy;
+
+//CE found a call here with NULL y pointer
+ if (x)
+ *x = xx;
+ if (y)
+ *y = yy;
}
// Set the client size (i.e. leave the calculation of borders etc.
-// to wxWindows)
+// to wxWidgets)
void wxFrame::DoSetClientSize(int width, int height)
{
// Calculate how large the new main window should be
*width = xx; *height = yy;
}
-void wxFrame::DoGetPosition(int *x, int *y) const
-{
- Window parent_window = XtWindow((Widget) m_frameShell),
- next_parent = XtWindow((Widget) m_frameShell),
- root = RootWindowOfScreen(XtScreen((Widget) m_frameShell));
-
- // search for the parent that is child of ROOT, because the WM may
- // reparent twice and notify only the next parent (like FVWM)
- while (next_parent != root) {
- Window *theChildren; unsigned int n;
- parent_window = next_parent;
- XQueryTree(XtDisplay((Widget) m_frameShell), parent_window, &root,
- &next_parent, &theChildren, &n);
- XFree(theChildren); // not needed
- }
- int xx, yy; unsigned int dummy;
- XGetGeometry(XtDisplay((Widget) m_frameShell), parent_window, &root,
- &xx, &yy, &dummy, &dummy, &dummy, &dummy);
- if (x) *x = xx;
- if (y) *y = yy;
-}
-
void wxFrame::DoSetSize(int x, int y, int width, int height, int WXUNUSED(sizeFlags))
{
if (x > -1)
bool wxFrame::Show( bool show )
{
- if( !wxTopLevelWindowMotif::Show( show ) )
- return FALSE;
+ if( !wxWindowBase::Show( show ) )
+ return false;
m_isShown = show;
SetVisibleStatus(show);
if (show)
{
- XtMapWidget (shell);
- XRaiseWindow (XtDisplay(shell), XtWindow(shell));
+ XtPopup(shell, XtGrabNone);
}
else
{
- XtUnmapWidget(shell);
+ XtPopdown(shell);
}
- return TRUE;
+ return true;
}
void wxFrame::SetTitle(const wxString& title)
if (!event.GetActive())
return;
- for(wxWindowList::Node *node = GetChildren().GetFirst(); node;
+ for(wxWindowList::compatibility_iterator node = GetChildren().GetFirst(); node;
node = node->GetNext())
{
// Find a child that's a subwindow, but not a dialog box.