static void DisableAllMenus(Widget fc, int column) { int i; Cardinal j; Widget m, w; for (i=0; i<14; i++) if (column != i) { m = FC_Menus(fc)[i]; for (j=0; j<MGR_NumChildren(m); j++) { w = MGR_Children(m)[j]; if (strcmp(XtName(w), "*") != 0 && ! XmIsTearOffButton(w)) XtSetSensitive(MGR_Children(m)[j], False); } } }
Widget XmGetDragContext(Widget w, Time time) { Widget disp = XmGetXmDisplay(XtDisplay(w)), dc = NULL; Cardinal i; DEBUGOUT(_LtDebug(__FILE__, w, "%s:XmGetDragContext(%d)\n", __FILE__, __LINE__)); for (i = 0; i < MGR_NumChildren(disp); i++) { if (XmIsDragContext(MGR_Children(disp)[i])) { /* too late */ if (DC_DragStartTime(MGR_Children(disp)[i]) > time) { continue; } /* too early */ if (DC_DragFinishTime(MGR_Children(disp)[i]) != CurrentTime && DC_DragFinishTime(MGR_Children(disp)[i]) < time) { continue; } /* either nothing yet, or later than what we have already */ if (dc == NULL || (DC_DragStartTime(MGR_Children(disp)[i]) >= DC_DragStartTime(dc))) { /* somebody's not doing a Cancel and it's not being removed */ if (!CoreBeingDestroyed(MGR_Children(disp)[i])) { dc = MGR_Children(disp)[i]; } } } } return dc; }
Widget _XmGetDragContextFromHandle(Widget w, Atom iccHandle) { Widget disp = XmGetXmDisplay(XtDisplay(w)), dc; Cardinal c; DEBUGOUT(_LtDebug(__FILE__, w, "%s:_XmGetDragContextFromHandle(%d)\n", __FILE__, __LINE__)); for (c = 0; c < MGR_NumChildren(disp); c++) { dc = MGR_Children(disp)[c]; if (XmIsDragContext(dc)) { if (DC_ICCHandle(dc) == iccHandle && !CoreBeingDestroyed(dc)) { return dc; } } } return NULL; }
int main(int argc, char **argv) { XtAppContext app; int i; XtSetLanguageProc(NULL, NULL, NULL); toplevel = XtVaAppInitialize(&app, "Label", NULL, 0, &argc, argv, NULL, NULL); pane = XtVaCreateManagedWidget("pane", xmPanedWindowWidgetClass, toplevel, NULL); #ifdef LESSTIF_REVISION printf("sashinc: %d resizeAtRealize: %d\n", PW_IncrementCount(pane), PW_ResizeAtRealize(pane)); #endif field = XtVaCreateManagedWidget("field",xmPushButtonWidgetClass, pane, NULL); #if 1 #ifdef LESSTIF_REVISION printf("sashinc: %d resizeAtRealize: %d\n", PW_IncrementCount(pane), PW_ResizeAtRealize(pane)); #endif button = XtVaCreateManagedWidget("button", xmPushButtonWidgetClass, pane, #if PANEBOUND XmNpaneMinimum, 20, XmNpaneMaximum, 40, #endif NULL); XtAddCallback(button, XmNactivateCallback, reorient, NULL); #ifdef LESSTIF_REVISION printf("sashinc: %d resizeAtRealize: %d\n", PW_IncrementCount(pane), PW_ResizeAtRealize(pane)); #endif button2 = XtVaCreateManagedWidget("button2", xmPushButtonWidgetClass, pane, #if PANEBOUND XmNpaneMinimum, 20, XmNpaneMaximum, 20, #endif NULL); XtAddCallback(button2, XmNactivateCallback, activate_callback, NULL); #if 1 #ifdef LESSTIF_REVISION printf("sashinc: %d resizeAtRealize: %d\n", PW_IncrementCount(pane), PW_ResizeAtRealize(pane)); #endif button3 = XtVaCreateManagedWidget("button3", xmPushButtonWidgetClass, pane, #if PANEBOUND XmNpaneMinimum, 20, XmNpaneMaximum, 40, #endif NULL); XtAddCallback(button3, XmNactivateCallback, activate_callback, NULL); #endif #endif XtRealizeWidget(toplevel); { static XtWidgetGeometry Expected[] = { NULL }; PrintDetails(toplevel,Expected); }; #if 0 printf("DUMP\n"); printf("sashinc: %d resizeAtRealize: %d\n", PW_IncrementCount(pane), PW_ResizeAtRealize(pane)); for (i = 0; i < PW_NumManagedChildren(pane); i++) { printf("child: %-8p %-10s ", PW_ManagedChildren(pane)[i], XtName(PW_ManagedChildren(pane)[i])); printf("sep: %-8p sash: %-8p index: %d position: %d\n", PWC_Separator(PW_ManagedChildren(pane)[i]), PWC_Sash(PW_ManagedChildren(pane)[i]), PWC_PositionIndex(PW_ManagedChildren(pane)[i]), PWC_Position(PW_ManagedChildren(pane)[i])); } printf("ALL CHILDREN\n"); for (i = 0; i < MGR_NumChildren(pane); i++) { printf("child: %-8p %-10s ", MGR_Children(pane)[i], XtName(MGR_Children(pane)[i])); printf("sep: %-8p sash: %-8p index: %d position: %d\n", PWC_Separator(MGR_Children(pane)[i]), PWC_Sash(MGR_Children(pane)[i]), PWC_PositionIndex(MGR_Children(pane)[i]), PWC_Position(MGR_Children(pane)[i])); } printf("\n"); printf("UNMANAGE\n"); XtUnmanageChild(button); XtUnmanageChild(button2); printf("sashinc: %d resizeAtRealize: %d\n", PW_IncrementCount(pane), PW_ResizeAtRealize(pane)); for (i = 0; i < PW_NumManagedChildren(pane); i++) { printf("child: %-8p %-10s ", PW_ManagedChildren(pane)[i], XtName(PW_ManagedChildren(pane)[i])); printf("sep: %-8p sash: %-8p index: %d position: %d\n", PWC_Separator(PW_ManagedChildren(pane)[i]), PWC_Sash(PW_ManagedChildren(pane)[i]), PWC_PositionIndex(PW_ManagedChildren(pane)[i]), PWC_Position(PW_ManagedChildren(pane)[i])); } printf("ALL CHILDREN\n"); for (i = 0; i < MGR_NumChildren(pane); i++) { printf("child: %-8p %-10s ", MGR_Children(pane)[i], XtName(MGR_Children(pane)[i])); printf("sep: %-8p sash: %-8p index: %d position: %d\n", PWC_Separator(MGR_Children(pane)[i]), PWC_Sash(MGR_Children(pane)[i]), PWC_PositionIndex(MGR_Children(pane)[i]), PWC_Position(MGR_Children(pane)[i])); } printf("\n"); printf("MANAGE\n"); XtManageChild(button2); printf("sashinc: %d resizeAtRealize: %d\n", PW_IncrementCount(pane), PW_ResizeAtRealize(pane)); for (i = 0; i < PW_NumManagedChildren(pane); i++) { printf("child: %-8p %-10s ", PW_ManagedChildren(pane)[i], XtName(PW_ManagedChildren(pane)[i])); printf("sep: %-8p sash: %-8p index: %d position: %d\n", PWC_Separator(PW_ManagedChildren(pane)[i]), PWC_Sash(PW_ManagedChildren(pane)[i]), PWC_PositionIndex(PW_ManagedChildren(pane)[i]), PWC_Position(PW_ManagedChildren(pane)[i])); } printf("ALL CHILDREN\n"); for (i = 0; i < MGR_NumChildren(pane); i++) { printf("child: %-8p %-10s ", MGR_Children(pane)[i], XtName(MGR_Children(pane)[i])); printf("sep: %-8p sash: %-8p index: %d position: %d\n", PWC_Separator(MGR_Children(pane)[i]), PWC_Sash(MGR_Children(pane)[i]), PWC_PositionIndex(MGR_Children(pane)[i]), PWC_Position(MGR_Children(pane)[i])); } printf("\n"); #endif /* #if 0 */ LessTifTestMainLoop(toplevel); exit(0); }