void W_BalloonHandleEnterView(WMView * view) { Balloon *bPtr = view->screen->balloon; char *text; if (!bPtr->flags.enabled) return; text = WMHashGet(bPtr->table, view); if (!text) { if (bPtr->view->flags.realized) W_UnmapView(bPtr->view); return; } if (bPtr->timer) WMDeleteTimerHandler(bPtr->timer); bPtr->timer = NULL; if (bPtr->noDelayTimer) WMDeleteTimerHandler(bPtr->noDelayTimer); bPtr->noDelayTimer = NULL; bPtr->forWindow = view->window; if (bPtr->flags.noDelay) { bPtr->timer = NULL; showBalloon(view); } else { bPtr->timer = WMAddTimerHandler(bPtr->delay, showBalloon, view); } }
void WMSetBalloonEnabled(WMScreen *scr, Bool flag) { scr->balloon->flags.enabled = ((flag==0) ? 0 : 1); W_UnmapView(scr->balloon->view); }
static void W_UnmapTabViewItem(WMTabViewItem * item) { wassertr(item->view); W_UnmapView(item->view); item->flags.visible = 0; }
void WMAddSplitViewSubview(WMSplitView * sPtr, WMView * subview) { int wasMapped, count; W_SplitViewSubview *p; CHECK_CLASS(sPtr, WC_SplitView); p = (W_SplitViewSubview *) wmalloc(sizeof(W_SplitViewSubview)); if (!p) return; wasMapped = subview->flags.mapped; if (wasMapped) W_UnmapView(subview); count = _GetSubviewsCount(); p->view = subview; getConstraints(sPtr, count, &(p->minSize), &(p->maxSize)); if (sPtr->flags.vertical) p->size = subview->size.width; else p->size = subview->size.height; WMAddToArray(sPtr->subviews, p); reparentView(sPtr, subview, 0); /* We should have something like that... WMSetViewNotifySizeChanges(subview, True); WMAddNotificationObserver(handleSubviewResized, sPtr, WMViewSizeDidChangeNotification, subview); WMSetViewNotifyMoveChanges(subview, True); WMAddNotificationObserver(handleSubviewResized, sPtr, WMViewMoveDidChangeNotification, subview); */ if (wasMapped) { W_MapView(subview); sPtr->flags.adjustOnPaint = 1; paintSplitView(sPtr); } else { handleViewResized(sPtr, NULL); } }
void W_BalloonHandleLeaveView(WMView * view) { Balloon *bPtr = view->screen->balloon; if (bPtr->forWindow == view->window) { if (bPtr->view->flags.mapped) { W_UnmapView(bPtr->view); bPtr->noDelayTimer = WMAddTimerHandler(NO_DELAY_DELAY, clearNoDelay, bPtr); } if (bPtr->timer) WMDeleteTimerHandler(bPtr->timer); bPtr->timer = NULL; bPtr->forWindow = None; } }
void WMUnmapWidget(WMWidget * w) { W_UnmapView(W_VIEW(w)); }
void WMDestroyWidget(WMWidget * widget) { W_UnmapView(W_VIEW(widget)); W_DestroyView(W_VIEW(widget)); }