#pragma implementation "frame.h"
#endif
-#include "wx/frame.h"
+
+#ifdef __VMS
+#define XtDisplay XTDISPLAY
+#define XtWindow XTWINDOW
+#define XtScreen XTSCREEN
+#endif
+
+# include "wx/frame.h"
#include "wx/statusbr.h"
#include "wx/toolbar.h"
#include "wx/menuitem.h"
#include <Xm/Xm.h>
#include <X11/Shell.h>
+#include <X11/Core.h>
#if XmVersion >= 1002
#include <Xm/XmAll.h>
#else
#endif
#include "wx/motif/private.h"
+#include "wx/unix/utilsx11.h"
// ----------------------------------------------------------------------------
// private functions
m_windowStyle = style;
- m_backgroundColour = wxSystemSettings::GetSystemColour(wxSYS_COLOUR_APPWORKSPACE);
+ m_backgroundColour = wxSystemSettings::GetColour(wxSYS_COLOUR_APPWORKSPACE);
m_foregroundColour = *wxBLACK;
- m_font = wxSystemSettings::GetSystemFont(wxSYS_DEFAULT_GUI_FONT);
+ m_font = wxSystemSettings::GetFont(wxSYS_DEFAULT_GUI_FONT);
if ( id > -1 )
m_windowId = id;
decor |= MWM_DECOR_TITLE;
if (style & wxTHICK_FRAME)
decor |= MWM_DECOR_BORDER;
- if (style & wxTHICK_FRAME)
- decor |= MWM_DECOR_BORDER;
if (style & wxMINIMIZE_BOX)
decor |= MWM_DECOR_MINIMIZE;
if (style & wxMAXIMIZE_BOX)
NULL);
}
-void wxFrame::SetIcon(const wxIcon& icon)
+void wxFrame::DoSetIcon(const wxIcon& icon)
{
- m_icon = icon;
-
if (!m_frameShell)
return;
XtVaSetValues((Widget) m_frameShell, XtNiconPixmap, icon.GetPixmap(), NULL);
}
+void wxFrame::SetIcon(const wxIcon& icon)
+{
+ SetIcons( wxIconBundle( icon ) );
+}
+
+void wxFrame::SetIcons(const wxIconBundle& icons)
+{
+ wxFrameBase::SetIcons( icons );
+
+ if (!m_frameShell)
+ return;
+
+ DoSetIcon( m_icons.GetIcon( -1 ) );
+ wxSetIconsX11(GetXDisplay(),
+ (WXWindow) XtWindow( (Widget) m_frameShell ), icons);
+}
+
void wxFrame::PositionStatusBar()
{
if (!m_frameStatusBar)
// Responds to colour changes, and passes event on to children.
void wxFrame::OnSysColourChanged(wxSysColourChangedEvent& event)
{
- SetBackgroundColour(wxSystemSettings::GetSystemColour(wxSYS_COLOUR_APPWORKSPACE));
+ SetBackgroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_APPWORKSPACE));
Refresh();
if ( m_frameStatusBar )