wxList wxModelessWindows; // Frames and modeless dialogs
extern wxList wxPendingDelete;
-#define USE_INVISIBLE_RESIZE 1
+#define wxUSE_INVISIBLE_RESIZE 1
#if !USE_SHARED_LIBRARY
IMPLEMENT_DYNAMIC_CLASS(wxDialog, wxPanel)
wxDialog::wxDialog()
{
m_modalShowing = FALSE;
- SetBackgroundColour(wxSystemSettings::GetSystemColour(wxSYS_COLOUR_3DFACE));
+ m_backgroundColour = wxSystemSettings::GetSystemColour(wxSYS_COLOUR_3DFACE);
}
bool wxDialog::Create(wxWindow *parent, wxWindowID id,
m_modalShowing = FALSE;
m_dialogTitle = title;
- SetBackgroundColour(wxSystemSettings::GetSystemColour(wxSYS_COLOUR_3DFACE));
+ m_backgroundColour = wxSystemSettings::GetSystemColour(wxSYS_COLOUR_3DFACE);
+ m_foregroundColour = *wxBLACK;
+
SetName(name);
if (!parent)
// Can't remember what this was about... but I think it's necessary.
- if (USE_INVISIBLE_RESIZE)
+ if (wxUSE_INVISIBLE_RESIZE)
{
if (pos.x > -1)
XtVaSetValues(dialogShell, XmNx, pos.x,
// Positioning of the dialog doesn't work properly unless the dialog
// is managed, so we manage without mapping to the screen.
// To show, we map the shell (actually it's parent).
- if (!USE_INVISIBLE_RESIZE)
+ if (!wxUSE_INVISIBLE_RESIZE)
XtVaSetValues(shell, XmNmappedWhenManaged, FALSE, NULL);
- if (!USE_INVISIBLE_RESIZE)
+ if (!wxUSE_INVISIBLE_RESIZE)
{
XtManageChild(dialogShell);
SetSize(pos.x, pos.y, size.x, size.y);
wxDialogBoxEventHandler,
(XtPointer)this);
+ ChangeBackgroundColour();
+
return TRUE;
}
wxDialog::~wxDialog()
{
m_modalShowing = FALSE;
- if (!USE_INVISIBLE_RESIZE && m_mainWidget)
+ if (!wxUSE_INVISIBLE_RESIZE && m_mainWidget)
{
XtUnmapWidget((Widget) m_mainWidget);
}
// Now process all events, because otherwise
// this might remain on the screen.
- XSync(XtDisplay(XtParent((Widget) m_mainWidget)), FALSE);
+ Display* display;
+ if (m_mainWidget)
+ display = XtDisplay((Widget) m_mainWidget);
+ else
+ display = (Display*) wxGetDisplay();
+
+ XSync(display, FALSE);
XEvent event;
while (XtAppPending((XtAppContext) wxTheApp->GetAppContext())) {
- XFlush(XtDisplay((Widget) XtParent((Widget) m_mainWidget)));
+ XFlush(display);
XtAppNextEvent((XtAppContext) wxTheApp->GetAppContext(), &event);
XtDispatchEvent(&event);
}
if (show)
{
- if (!USE_INVISIBLE_RESIZE)
+ if (!wxUSE_INVISIBLE_RESIZE)
XtMapWidget(XtParent((Widget) m_mainWidget));
else
XtManageChild((Widget) m_mainWidget) ;
}
else
{
- if (!USE_INVISIBLE_RESIZE)
+ if (!wxUSE_INVISIBLE_RESIZE)
XtUnmapWidget(XtParent((Widget) m_mainWidget));
else
XtUnmanageChild((Widget) m_mainWidget) ;
client->m_isShown = FALSE;
*/
}
+
+void wxDialog::ChangeFont()
+{
+ // TODO
+}
+
+void wxDialog::ChangeBackgroundColour()
+{
+ // TODO
+}
+
+void wxDialog::ChangeForegroundColour()
+{
+ // TODO
+}
+