⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 test51.c

📁 安装DDD之前
💻 C
📖 第 1 页 / 共 2 页
字号:
    NewActions = (XtActionsRec *)XtMalloc((num_new + wc->core_class.num_actions) * sizeof(XtActionsRec));    for (i = 0; i < num_new; i++)    {	NewActions[i] = new[i];    }    for (i = 0; i < wc->core_class.num_actions; i++)    {	NewActions[num_new + i] = wc->core_class.actions[i];	for (j = 0; j < num_new; j++)	{	    if (strcmp(NewActions[num_new + i].string, new[j].string) == 0)	    {		NewActions[num_new + i].string = XtMalloc(strlen(wc->core_class.actions[i].string) + 4);		sprintf(NewActions[num_new + i].string, "Old%s", wc->core_class.actions[i].string);		break;	    }	}    }    wc->core_class.actions = NewActions;    wc->core_class.num_actions += num_new;}static voidGenericCallback(Widget w, int id, XmAnyCallbackStruct *cbs){String Name = w ? XtName(w) : "";int Reason = cbs ? cbs->reason : XmCR_NONE;    if (XtNumber(Results) == 1 || ResultIndex + 1 >= XtNumber(Results))    {    static Boolean FirstCall = True;	if (FirstCall)	{		printf("/^_CallbackResult/a\\\n");	}	printf("\t\"%s\", %*s%s,\\\n", 	    w ? XtName(w) : "",	    20 - strlen(Name), "",	    cbs ? XdbReason2String(cbs->reason) : "XmCR_NONE /* cbs is NULL */");	GlobalErrors = 1;	FirstCall = False;    }    else    {	printf("%s(%s), %*s%s(%s)%*s", 	    Name,	    Results[ResultIndex].WidgetName,	    20 - (strlen(Name) + strlen(Results[ResultIndex].WidgetName) + 2), "",	    XdbReason2String(Reason),	    XdbReason2String(Results[ResultIndex].Reason),	    50 - strlen(XdbReason2String(Reason)) - strlen(XdbReason2String(Results[ResultIndex].Reason)), "");    	if (strcmp(Name, Results[ResultIndex].WidgetName) == 0 &&    	    Results[ResultIndex].Reason == Reason    	    )    	{	    printf("okay\n");    	}    	else    	{	    printf("bad\n");	    GlobalErrors++;    	}    }    ResultIndex++;}intmain(int argc, char **argv){    Widget menubar;    Widget cascade1, pane1, button1, pane1_tear_off, toggle1, button3, label1;    Widget cascade2, pane2, button2, pane2_tear_off;    Widget cascade3, pane3, button4, pane3_tear_off;    int mappingDelay;/* Install converter to make the command line indicated above work */    XmRepTypeInstallTearOffModelConverter();    /*    HijackActions(xmCascadeButtonWidgetClass, My_CB_Actions, XtNumber(My_CB_Actions));    HijackActions(xmPushButtonWidgetClass, My_PB_Actions, XtNumber(My_PB_Actions));    HijackActions(xmRowColumnWidgetClass, My_RC_Actions, XtNumber(My_RC_Actions));    *//* Toplevel and Menu Bar */    toplevel = XtVaAppInitialize(&app_context, "test50", NULL, 0,     	&argc, argv, fallback, NULL);    XtVaSetValues(toplevel,    	XmNallowShellResize, True,    	NULL);    menubar = XmCreateMenuBar(toplevel, "menubar", NULL, 0);    XtVaSetValues(menubar,    	XmNwidth, 100,    	XmNheight, 100,    	NULL);/* First Menu */    pane1 = XmCreatePulldownMenu(menubar, "pane1", NULL, 0);    XtAddCallback(pane1, XmNmapCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);    XtAddCallback(pane1, XmNtearOffMenuActivateCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);    XtAddCallback(pane1, XmNtearOffMenuDeactivateCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);    XtAddCallback(pane1, XmNunmapCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);    /*XtAddCallback(XtParent(pane1), XmNpopupCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);    XtAddCallback(XtParent(pane1), XmNpopdownCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);*/    pane1_tear_off = XmGetTearOffControl(pane1);    cascade1 = XtVaCreateWidget("cascade1",				       xmCascadeButtonWidgetClass, menubar, 				       XmNsubMenuId,	pane1,				       NULL);    XtVaGetValues(cascade1,    	XmNmappingDelay, &mappingDelay,    	NULL);    XtAddCallback(cascade1, XmNactivateCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);    XtAddCallback(cascade1, XmNcascadingCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);    button1 = XtVaCreateManagedWidget("button1",     				xmPushButtonWidgetClass, pane1,				NULL);    XtAddCallback(button1, XmNactivateCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);    XtAddCallback(button1, XmNarmCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);    XtAddCallback(button1, XmNdisarmCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);/* Second Menu */    pane2 = XmCreatePulldownMenu(pane1, "pane2", NULL, 0);    XtAddCallback(pane2, XmNmapCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);    XtAddCallback(pane2, XmNtearOffMenuActivateCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);    XtAddCallback(pane2, XmNtearOffMenuDeactivateCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);    XtAddCallback(pane2, XmNunmapCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);    /*XtAddCallback(XtParent(pane2), XmNpopupCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);    XtAddCallback(XtParent(pane2), XmNpopdownCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);*/    pane2_tear_off = XmGetTearOffControl(pane2);    cascade2 = XtVaCreateManagedWidget("cascade2",				       xmCascadeButtonWidgetClass, pane1, 				       XmNsubMenuId,	pane2,				       NULL);    XtAddCallback(cascade2, XmNactivateCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);    XtAddCallback(cascade2, XmNcascadingCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);    button2 = XtVaCreateManagedWidget("button2",     				xmPushButtonWidgetClass, pane2,				NULL);    XtAddCallback(button2, XmNactivateCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);    XtAddCallback(button2, XmNarmCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);    XtAddCallback(button2, XmNdisarmCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);    XtManageChild(menubar);    XtRealizeWidget(toplevel);    LessTifTestWaitForIt(toplevel);    /*    LessTifTestPrintEvents(toplevel, True);    */    LessTifTestWarpPointer(menubar);    LessTifTestBtn1Down(menubar);    LessTifTestBtn1Up(menubar);    /*    LessTifTestPrintEvents(toplevel, False);    */    XtManageChild(cascade1);    /*    LessTifTestPrintEvents(toplevel, True);    */    LessTifTestBtn1Down(cascade1);    LessTifTestBtn1Up(button1);    printf("\n");    LessTifTestBtn1Down(cascade1);    LessTifTestBtn1Up(cascade1);    LessTifTestBtn1Down(button1);    LessTifTestBtn1Up(button1);    printf("\n");    LessTifTestBtn1Down(cascade1);    LessTifTestWarpPointer(pane1_tear_off);    LessTifTestWarpPointer(button1);    LessTifTestWarpPointer(cascade2);    LessTifTestDelay(cascade2, mappingDelay);    LessTifTestWarpPointer(button1);    LessTifTestWarpPointer(cascade2);    LessTifTestDelay(cascade2, mappingDelay);    LessTifTestWarpPointer(button2);    LessTifTestBtn1Up(button1);    printf("\n");    LessTifTestBtn1Down(cascade1);    LessTifTestWarpPointer(pane1_tear_off);    LessTifTestWarpPointer(button1);    LessTifTestWarpPointer(cascade2);    LessTifTestDelay(cascade2, mappingDelay);    LessTifTestWarpPointer(button1);    LessTifTestWarpPointer(cascade2);    LessTifTestDelay(cascade2, mappingDelay);    LessTifTestWarpPointer(button2);    LessTifTestWarpPointer(cascade2);    LessTifTestDelay(cascade2, mappingDelay);    LessTifTestWarpPointer(button1);    LessTifTestWarpPointer(cascade2);    LessTifTestDelay(cascade2, mappingDelay);    LessTifTestWarpPointer(button2);    LessTifTestBtn1Up(button2);    printf("\n");    LessTifTestBtn1Down(cascade1);    LessTifTestBtn1Up(cascade1);    LessTifTestBtn1Down(cascade2);    LessTifTestBtn1Up(cascade2);    LessTifTestBtn1Down(button2);    LessTifTestBtn1Up(button2);    printf("\n");    {    Dimension w, h;    	XtVaGetValues(menubar,    		XmNwidth, &w,    		XmNheight, &h,    		NULL);    	LessTifTestResizeWidget(XtParent(menubar), 3 * w, h);    }    /*    LessTifTestPrintEvents(toplevel, True);    */    LessTifTestBtn1Down(cascade1);    LessTifTestBtn1Up(menubar);    printf("\n");    LessTifTestBtn1Down(cascade1);    LessTifTestBtn1Up(cascade1);    LessTifTestBtn1Down(menubar);    LessTifTestBtn1Up(menubar);    printf("\n");    toggle1 = XmCreateToggleButton(pane1, "toggle1", NULL, 0);    XtAddCallback(toggle1, XmNvalueChangedCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);    XtAddCallback(toggle1, XmNarmCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);    XtAddCallback(toggle1, XmNdisarmCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);    XtManageChild(toggle1);    LessTifTestBtn1Down(cascade1);    LessTifTestWarpPointer(pane1_tear_off);    LessTifTestWarpPointer(button1);    LessTifTestWarpPointer(cascade2);    LessTifTestDelay(cascade2, mappingDelay);    LessTifTestWarpPointer(toggle1);    LessTifTestWarpPointer(cascade2);    LessTifTestDelay(cascade2, mappingDelay);    LessTifTestWarpPointer(toggle1);    LessTifTestBtn1Up(toggle1);    printf("\n");    LessTifTestBtn1Down(cascade1);    LessTifTestBtn1Up(cascade1);    LessTifTestBtn1Down(toggle1);    LessTifTestBtn1Up(toggle1);    printf("\n");    button3 = XtVaCreateManagedWidget("button3",     				xmPushButtonWidgetClass, pane1,				NULL);    XtAddCallback(button3, XmNactivateCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);    XtAddCallback(button3, XmNarmCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);    XtAddCallback(button3, XmNdisarmCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);    LessTifTestBtn1Down(cascade1);    LessTifTestBtn1Up(cascade1);    LessTifTestBtn1Down(button3);    LessTifTestBtn1Up(button3);    printf("\n");    LessTifTestBtn1Down(cascade1);    LessTifTestBtn1Up(cascade1);    LessTifTestBtn1Down(cascade1);    LessTifTestBtn1Up(cascade1);    LessTifTestBtn1Down(menubar);    LessTifTestBtn1Up(menubar);    printf("\n");    label1 = XmCreateLabel(pane1, "ThisIsALabel", NULL, 0);    XtVaSetValues(label1,    	XmNpositionIndex, 0,    	NULL);    XtManageChild(label1);    LessTifTestBtn1Down(cascade1);    LessTifTestBtn1Up(cascade1);    LessTifTestBtn1Down(menubar);    LessTifTestBtn1Up(menubar);    printf("\n");    LessTifTestBtn1Down(cascade1);    LessTifTestBtn1Up(cascade1);    LessTifTestBtn1Down(cascade2);    LessTifTestBtn1Up(cascade2);    LessTifTestBtn1Down(cascade1);    LessTifTestBtn1Up(menubar);    printf("\n");    XtSetSensitive(button1, False);    XtSetSensitive(cascade2, False);    LessTifTestBtn1Down(cascade1);    LessTifTestBtn1Up(cascade1);    LessTifTestBtn1Down(menubar);    LessTifTestBtn1Up(menubar);    XtSetSensitive(button1, True);    XtUnmanageChild(button1);    LessTifTestBtn1Down(cascade1);    LessTifTestBtn1Up(cascade1);    LessTifTestBtn1Down(menubar);    LessTifTestBtn1Up(menubar);    XtManageChild(button1);    XtSetSensitive(cascade2, True);    cascade3 = XtVaCreateWidget("cascade3",				       xmCascadeButtonWidgetClass, menubar, 				       NULL);    XtAddCallback(cascade3, XmNactivateCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);    XtAddCallback(cascade3, XmNcascadingCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);    XtManageChild(cascade3);    LessTifTestBtn1Down(cascade1);    LessTifTestBtn1Up(cascade3);    printf("\n");    LessTifTestBtn1Down(cascade1);    LessTifTestBtn1Up(cascade1);    LessTifTestBtn1Down(cascade3);    LessTifTestBtn1Up(cascade3);    printf("\n");    pane3 = XmCreatePulldownMenu(menubar, "pane3", NULL, 0);    XtAddCallback(pane3, XmNmapCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);    XtAddCallback(pane3, XmNtearOffMenuActivateCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);    XtAddCallback(pane3, XmNtearOffMenuDeactivateCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);    XtAddCallback(pane3, XmNunmapCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);    pane3_tear_off = XmGetTearOffControl(pane3);    button4 = XtVaCreateManagedWidget("button4",     				xmPushButtonWidgetClass, pane3,				NULL);    XtAddCallback(button4, XmNactivateCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);    XtAddCallback(button4, XmNarmCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);    XtAddCallback(button4, XmNdisarmCallback, (XtCallbackProc)GenericCallback, (XtPointer)__LINE__);    XtVaSetValues(cascade3,    	XmNsubMenuId, pane3,    	NULL);    LessTifTestBtn1Down(cascade1);    LessTifTestWarpPointer(pane1_tear_off);    LessTifTestWarpPointer(cascade1);    LessTifTestWarpPointer(cascade3);    LessTifTestWarpPointer(pane3_tear_off);    LessTifTestBtn1Up(button4);    printf("\n");    LessTifTestBtn1Down(cascade1);    LessTifTestBtn1Up(cascade1);    LessTifTestBtn1Down(cascade3);    LessTifTestBtn1Up(cascade3);    LessTifTestBtn1Down(button4);    LessTifTestBtn1Up(button4);    printf("\n");    LessTifTestBtn1Down(cascade1);    LessTifTestBtn1Up(pane1_tear_off);    LessTifTestWaitForIt(XtParent(pane1));    LessTifTestBtn1Down(cascade1);    LessTifTestBtn1Up(pane1_tear_off);    LessTifTestWaitForIt(XtParent(pane1));    LessTifTestBtn1Down(cascade2);    LessTifTestBtn1Up(pane2_tear_off);    LessTifTestWaitForIt(XtParent(pane2));    LessTifTestBtn1Down(button2);    LessTifTestBtn1Up(button2);#if 0    LessTifTestEsc(button2);    LessTifTestEsc(button1);    XtVaSetValues(button3,    	XmNmnemonic, 'b',    	NULL);    LessTifTestKeyPress(cascade1, XK_Alt_L, 0x0);    LessTifTestKeyPress(cascade1, XK_C, 0x8);    LessTifTestKeyRelease(XtParent(cascade1), XK_C, 0x8);    LessTifTestKeyRelease(XtParent(cascade1), XK_Alt_L, 0x8);    LessTifTestWaitForIt(XtParent(pane1));    LessTifTestKeyRelease(XtParent(cascade1), XK_B, 0x0);    LessTifTestBtn1Down(cascade1);    LessTifTestBtn1Up(cascade1);    LessTifTestBtn3Down(cascade3);    LessTifTestBtn3Up(cascade3);    printf("\n");    /*    LessTifTestPrintEvents(toplevel, False);    */    printf("\n"); /* need final \n for output file or sed doesn't work on		     SGI */#endif    printf("%s\n", GlobalErrors == 0 ? "All okay" : "One or more failed");    LessTifTestMainLoop(toplevel);    exit(0);}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -