CreateBase(parent, id, pos, size, style, wxDefaultValidator, name);
- if (parent)
- parent->AddChild(this);
-
- m_backgroundColour = wxSystemSettings::GetColour(wxSYS_COLOUR_3DFACE);
- m_foregroundColour = *wxBLACK;
+ parent->AddChild(this);
int w = size.GetWidth();
int h = size.GetHeight();
if (x == -1) x = 0;
if (y == -1) y = 0;
- int screen = DefaultScreen(wxGlobalDisplay());
+ Display *xdisplay = (Display*) wxGlobalDisplay();
+ int xscreen = DefaultScreen( xdisplay );
+ Colormap cm = DefaultColormap( xdisplay, xscreen );
- Window parentWindow;
- if (parent)
- parentWindow = (Window) parent->GetMainWindow();
- else
- parentWindow = RootWindow(wxGlobalDisplay(), screen);
+ m_backgroundColour = wxSystemSettings::GetColour(wxSYS_COLOUR_3DFACE);
+ m_backgroundColour.CalcPixel( (WXColormap) cm );
+ m_hasBgCol = TRUE;
+
+ m_foregroundColour = *wxBLACK;
+ m_foregroundColour.CalcPixel( (WXColormap) cm );
+
- Window window = XCreateSimpleWindow(wxGlobalDisplay(), parentWindow,
- x, y, w, h, 0,
- m_backgroundColour.AllocColour(wxGlobalDisplay()),
- m_foregroundColour.AllocColour(wxGlobalDisplay()));
+ Window parentWindow = (Window) parent->GetMainWindow();
+
+ Window window = XCreateSimpleWindow(
+ xdisplay, parentWindow,
+ x, y, w, h, 0,
+ m_backgroundColour.GetPixel(),
+ m_backgroundColour.GetPixel() );
+
m_mainWidget = (WXWindow) window;
// Select event types wanted
// Does a physical scroll
void wxWindowX11::ScrollWindow(int dx, int dy, const wxRect *rect)
{
+#if 0
int x, y, w, h;
if (rect)
{
delete rect;
node = node->Next();
}
-
- // TODO
-
- // XmUpdateDisplay((Widget) GetMainWidget());
+#endif
}
// ---------------------------------------------------------------------------
if (window)
{
XWindowAttributes attr;
- Status status = XGetWindowAttributes(wxGlobalDisplay(), window, & attr);
+ Status status = XGetWindowAttributes( wxGlobalDisplay(), window, &attr );
wxASSERT(status);
if (status)
if (x != -1 || (sizeFlags & wxSIZE_ALLOW_MINUS_ONE))
{
+ int yy = 0;
+ AdjustForParentClientOrigin( x, yy, sizeFlags);
windowChanges.x = x;
valueMask |= CWX;
}
if (y != -1 || (sizeFlags & wxSIZE_ALLOW_MINUS_ONE))
{
+ int xx = 0;
+ AdjustForParentClientOrigin( xx, y, sizeFlags);
windowChanges.y = y;
valueMask |= CWY;
}
windowChanges.height = height /* -m_borderSize*2*/;
valueMask |= CWHeight;
}
- AdjustForParentClientOrigin( x, y, sizeFlags);
XConfigureWindow(wxGlobalDisplay(), (Window) GetMainWindow(),
valueMask, & windowChanges);
{
m_clipPaintRegion = TRUE;
- if (!m_clearRegion.IsEmpty())
+ // if (!m_clearRegion.IsEmpty())
{
wxWindowDC dc( (wxWindow*)this );
dc.SetClippingRegion( m_clearRegion );
wxRegionIterator upd( m_clearRegion );
while (upd)
{
- // XClearArea( ... , upd.GetX(), upd.GetY(), upd.GetWidth(), upd.GetHeight() );
+ XClearArea( wxGlobalDisplay(), (Window) m_mainWidget,
+ upd.GetX(), upd.GetY(), upd.GetWidth(), upd.GetHeight(), False );
upd ++;
}
}
bool wxWindowX11::SetBackgroundColour(const wxColour& col)
{
- if ( !wxWindowBase::SetBackgroundColour(col) )
- return FALSE;
+ wxWindowBase::SetBackgroundColour(col);
if (!GetMainWindow())
return FALSE;
+ Display *xdisplay = (Display*) wxGlobalDisplay();
+ int xscreen = DefaultScreen( xdisplay );
+ Colormap cm = DefaultColormap( xdisplay, xscreen );
+
wxColour colour( col );
+ colour.CalcPixel( (WXColormap) cm );
+
XSetWindowAttributes attrib;
- attrib.background_pixel = colour.AllocColour(wxGlobalDisplay());
+ attrib.background_pixel = colour.GetPixel();
XChangeWindowAttributes(wxGlobalDisplay(),
(Window) GetMainWindow(),