}
}
-bool wxWindow::MapOrUnmap(WXWidget widget, bool map)
+bool wxWindow::MapOrUnmap(WXWidget widget, bool domap)
{
Widget w = (Widget)widget;
if ( !w )
return FALSE;
- if ( map )
+ if ( domap )
XtMapWidget(w);
else
XtUnmapWidget(w);
+ // Rationale: a lot of common operations (including but not
+ // limited to moving, resizing and appending items to a listbox)
+ // unmamange the widget, do their work, then manage it again.
+ // This means that, for example adding an item to a listbox will show it,
+ // or that most controls are shown every time they are moved or resized!
+ XtSetMappedWhenManaged( w, domap );
+
return TRUE;
}
GetClientSize(& w, & h);
}
- wxNode *cnode = m_children.First();
+ wxWindowList::Node *cnode = m_children.GetFirst();
while (cnode)
{
- wxWindow *child = (wxWindow*) cnode->Data();
+ wxWindow *child = cnode->GetData();
int sx = 0;
int sy = 0;
child->GetSize( &sx, &sy );
wxPoint pos( child->GetPosition() );
child->SetSize( pos.x + dx, pos.y + dy, sx, sy, wxSIZE_ALLOW_MINUS_ONE );
- cnode = cnode->Next();
+ cnode = cnode->GetNext();
}
int x1 = (dx >= 0) ? x : x - dx;
// Now send expose events
- wxNode* node = updateRects.First();
+ wxList::Node* node = updateRects.GetFirst();
while (node)
{
- wxRect* rect = (wxRect*) node->Data();
+ wxRect* rect = (wxRect*) node->GetData();
XExposeEvent event;
event.type = Expose;
XSendEvent(display, window, False, ExposureMask, (XEvent *)&event);
- node = node->Next();
+ node = node->GetNext();
}
// Delete the update rects
- node = updateRects.First();
+ node = updateRects.GetFirst();
while (node)
{
- wxRect* rect = (wxRect*) node->Data();
+ wxRect* rect = (wxRect*) node->GetData();
delete rect;
- node = node->Next();
+ node = node->GetNext();
}
XmUpdateDisplay((Widget) GetMainWidget());
wxWidgetHashTable->Put((long) w, win);
- wxLogTrace("widget", "Widget 0x%08x <-> window %p (%s)",
- w, win, win->GetClassInfo()->GetClassName());
+ wxLogTrace("widget", "Widget 0x%p <-> window %p (%s)",
+ (WXWidget)w, win, win->GetClassInfo()->GetClassName());
return TRUE;
}
int width, height, width1, height1;
GetSize(& width, & height);
- // lesstif 0.87 hangs here
-#ifndef LESSTIF_VERSION
+ // lesstif 0.87 hangs here, but 0.93 does not
+#if !defined(LESSTIF_VERSION) \
+ || (defined(LesstifVersion) && LesstifVersion >= 93)
XtVaSetValues (w,
XmNfontList, (XmFontList) m_font.GetFontList(1.0, XtDisplay(w)),
NULL);