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

📄 motif_i.c

📁 linux上播放midi音乐,但是要一些设置.可网上查找. 软件名称: TiMidity++-2.13.0.tar
💻 C
📖 第 1 页 / 共 3 页
字号:
    ac=0;    XtSetArg(al[ac],XmNtopAttachment,XmATTACH_FORM); ac++;    XtSetArg(al[ac],XmNbottomAttachment,XmATTACH_FORM); ac++;    XtSetArg(al[ac],XmNrightAttachment,XmATTACH_FORM); ac++;    XtSetArg(al[ac],XmNleftAttachment,XmATTACH_FORM); ac++;    mainForm=XmCreateForm(toplevel,"form",al,ac);    XtManageChild(mainForm);    CreatePixmaps(mainForm);    /* create a menu bar and attach it to the form. */    ac=0;    XtSetArg(al[ac], XmNtopAttachment,   XmATTACH_FORM); ac++;    XtSetArg(al[ac], XmNrightAttachment, XmATTACH_FORM); ac++;    XtSetArg(al[ac], XmNleftAttachment,  XmATTACH_FORM); ac++;    menu_bar=XmCreateMenuBar(mainForm,"menu_bar",al,ac);    XtManageChild(menu_bar);    create_dialog_boxes();    create_menus(menu_bar);    /*******************/    /* Message window  */    /*******************/    ac=0;    XtSetArg(al[ac], XmNleftOffset, 10); ac++;    XtSetArg(al[ac], XmNrightOffset, 10); ac++;    XtSetArg(al[ac], XmNtopOffset, 10); ac++;    XtSetArg(al[ac], XmNbottomOffset, 10); ac++;    XtSetArg(al[ac],XmNtopAttachment,XmATTACH_WIDGET); ac++;    XtSetArg(al[ac],XmNtopWidget, menu_bar); ac++;    XtSetArg(al[ac],XmNrightAttachment,XmATTACH_FORM); ac++;    XtSetArg(al[ac],XmNleftAttachment,XmATTACH_FORM); ac++;    XtSetArg(al[ac],XmNeditMode,XmMULTI_LINE_EDIT); ac++;    XtSetArg(al[ac],XmNrows,10); ac++;    XtSetArg(al[ac],XmNcolumns,10); ac++;    XtSetArg(al[ac],XmNeditable, False); ac++;    XtSetArg(al[ac],XmNwordWrap, True); ac++;    XtSetArg(al[ac],XmNvalue, "TIMIDIY RUNNING...\n"); ac++;    wpr_position+= strlen("TIMIDIY RUNNING...\n");    text=XmCreateScrolledText(mainForm,"text",al,ac);    XtManageChild(text);    /********************/    /* File_name label  */    /********************/    ac = 0;    XtSetArg(al[ac], XmNleftOffset, 20); ac++;    XtSetArg(al[ac], XmNrightOffset, 10); ac++;    XtSetArg(al[ac], XmNtopOffset, 20); ac++;    XtSetArg(al[ac], XmNbottomOffset, 20); ac++;    XtSetArg(al[ac], XmNlabelType, XmSTRING); ac++;    XtSetArg(al[ac], XmNtopAttachment, XmATTACH_WIDGET); ac++;    XtSetArg(al[ac], XmNtopWidget, text); ac++;    XtSetArg(al[ac], XmNleftAttachment,XmATTACH_FORM); ac++;    XtSetArg(al[ac], XmNtraversalOn, False); ac++;    XtSetArg(al[ac], XmNhighlightThickness,0); ac++;    XtSetArg(al[ac], XmNalignment,XmALIGNMENT_END); ac++;    XtSetArg(al[ac], XmNlabelString,	     XmStringCreate("Playing:",char_set)); ac++;    file_headlbl = XmCreateLabel(mainForm,"fileheadlbl",al,ac);    XtManageChild(file_headlbl);    ac = 0;    XtSetArg(al[ac], XmNrightOffset, 10); ac++;    XtSetArg(al[ac], XmNtopOffset, 20); ac++;    XtSetArg(al[ac], XmNbottomOffset, 20); ac++;    XtSetArg(al[ac], XmNlabelType, XmSTRING); ac++;    XtSetArg(al[ac], XmNtopAttachment, XmATTACH_WIDGET); ac++;    XtSetArg(al[ac], XmNtopWidget, text); ac++;    XtSetArg(al[ac], XmNleftAttachment,XmATTACH_WIDGET); ac++;    XtSetArg(al[ac], XmNleftWidget,file_headlbl); ac++;    XtSetArg(al[ac], XmNtraversalOn, False); ac++;    XtSetArg(al[ac], XmNhighlightThickness,0); ac++;    XtSetArg(al[ac], XmNalignment,XmALIGNMENT_BEGINNING); ac++;    XtSetArg(al[ac], XmNlabelString,	     XmStringCreate("NONE           ",char_set)); ac++;    file_namelbl = XmCreateLabel(mainForm,"filenameLbl",al,ac);    XtManageChild(file_namelbl);    /*****************************/    /* TIME LABELS IN A FORM     */    /*****************************/    /* Counters frame    */    ac=0;    XtSetArg(al[ac], XmNtopOffset, 10); ac++;    XtSetArg(al[ac], XmNbottomOffset, 10); ac++;    XtSetArg(al[ac], XmNleftOffset, 10); ac++;    XtSetArg(al[ac], XmNrightOffset, 10); ac++;    XtSetArg(al[ac],XmNtopAttachment,XmATTACH_WIDGET); ac++;    XtSetArg(al[ac],XmNtopWidget,text); ac++;    XtSetArg(al[ac],XmNrightAttachment,XmATTACH_FORM); ac++;    /*      XtSetArg(al[ac],XmNleftAttachment,XmATTACH_WIDGET); ac++;      XtSetArg(al[ac],XmNleftWidget,file_namelbl); ac++;      */    XtSetArg(al[ac],XmNshadowType,XmSHADOW_OUT); ac++;    countFrame=XmCreateFrame(mainForm,"countframe",al,ac);    XtManageChild(countFrame);    /* Counters form       */    ac=0;    XtSetArg(al[ac],XmNtopAttachment,XmATTACH_FORM); ac++;    XtSetArg(al[ac],XmNbottomAttachment,XmATTACH_FORM); ac++;    XtSetArg(al[ac],XmNrightAttachment,XmATTACH_FORM); ac++;    XtSetArg(al[ac],XmNleftAttachment,XmATTACH_FORM); ac++;    XtSetArg(al[ac],XmNleftAttachment,XmATTACH_FORM); ac++;    countForm=XmCreateForm(countFrame,"countform",al,ac);    XtManageChild(countForm);    /* HEADER label       */    ac = 0;    XtSetArg(al[ac], XmNtopOffset, 10); ac++;    XtSetArg(al[ac], XmNlabelType, XmSTRING); ac++;    XtSetArg(al[ac], XmNtopAttachment, XmATTACH_FORM); ac++;    XtSetArg(al[ac], XmNleftAttachment,XmATTACH_FORM); ac++;    XtSetArg(al[ac], XmNrightAttachment,XmATTACH_FORM); ac++;    XtSetArg(al[ac], XmNtraversalOn, False); ac++;    XtSetArg(al[ac], XmNhighlightThickness,0); ac++;    XtSetArg(al[ac], XmNlabelString,	     XmStringCreate("Time:",char_set)); ac++;    count_headlbl = XmCreateLabel(countForm,"countheadLbl",al,ac);    XtManageChild(count_headlbl);    /* current Time label       */    ac = 0;    XtSetArg(al[ac], XmNtopAttachment, XmATTACH_WIDGET); ac++;    XtSetArg(al[ac], XmNtopWidget, count_headlbl); ac++;    XtSetArg(al[ac], XmNleftAttachment,XmATTACH_FORM); ac++;    XtSetArg(al[ac], XmNbottomAttachment,XmATTACH_FORM); ac++;    XtSetArg(al[ac], XmNtraversalOn, False); ac++;    XtSetArg(al[ac], XmNhighlightThickness,0); ac++;    XtSetArg(al[ac], XmNalignment,XmALIGNMENT_END); ac++;    XtSetArg(al[ac], XmNlabelString,	     XmStringCreate("00:00",char_set)); ac++;    counterlbl = XmCreateLabel(countForm,"counterLbl",al,ac);    XtManageChild(counterlbl);    /* Total time label */    ac = 0;    XtSetArg(al[ac], XmNtopAttachment, XmATTACH_WIDGET); ac++;    XtSetArg(al[ac], XmNtopWidget, count_headlbl); ac++;    XtSetArg(al[ac], XmNleftAttachment, XmATTACH_WIDGET); ac++;    XtSetArg(al[ac], XmNleftWidget, counterlbl); ac++;    XtSetArg(al[ac], XmNrightAttachment, XmATTACH_FORM); ac++;    XtSetArg(al[ac], XmNbottomAttachment,XmATTACH_FORM); ac++;    XtSetArg(al[ac], XmNtraversalOn, False); ac++;    XtSetArg(al[ac], XmNhighlightThickness,0); ac++;    XtSetArg(al[ac], XmNalignment,XmALIGNMENT_BEGINNING); ac++;    XtSetArg(al[ac], XmNlabelString,	     XmStringCreate("/ 00:00",char_set)); ac++;    totlbl = XmCreateLabel(countForm,"TotalTimeLbl",al,ac);    XtManageChild(totlbl);    /******************/    /* Locator Scale  */    /******************/    {	/*	 * We need to add an xevent manager for buton pressing since	 * locator_scale is a critical ressource that can be modified	 * by shared by the handle input function	 */	WidgetList WList;	Cardinal Card;	ac = 0;	XtSetArg(al[ac], XmNleftOffset, 10); ac++;	XtSetArg(al[ac], XmNrightOffset, 10); ac++;	XtSetArg(al[ac], XmNtopOffset, 10); ac++;	XtSetArg(al[ac], XmNbottomOffset, 10); ac++;	XtSetArg(al[ac], XmNtopAttachment, XmATTACH_WIDGET); ac++;	XtSetArg(al[ac], XmNtopWidget, countForm); ac++;	XtSetArg(al[ac], XmNleftAttachment,XmATTACH_FORM); ac++;	XtSetArg(al[ac], XmNrightAttachment,XmATTACH_FORM); ac++;	XtSetArg(al[ac], XmNmaximum, 100); ac++;	XtSetArg(al[ac], XmNminimum, 0); ac++;	XtSetArg(al[ac], XmNshowValue, True); ac++;	XtSetArg(al[ac], XmNdecimalPoints, 0); ac++;	XtSetArg(al[ac], XmNorientation, XmHORIZONTAL); ac++;	XtSetArg(al[ac], XmNtraversalOn, False); ac++;	XtSetArg(al[ac], XmNhighlightThickness,0); ac++;	locator_scale = XmCreateScale(mainForm,"locator",al,ac);	XtManageChild(locator_scale);	XtAddCallback(locator_scale,XmNvalueChangedCallback,		      (XtCallbackProc) Generic_scaleCB,		      (XtPointer) MOTIF_CHANGE_LOCATOR);	/* Reach the scrollbar child in the scale  */	ac = 0;	XtSetArg(al[ac], XtNchildren, &WList); ac++;	XtSetArg(al[ac], XtNnumChildren, &Card); ac++;	XtGetValues(locator_scale,al,ac);	if ((Card!=2)||	    strcmp(XtName(WList[1]),"Scrollbar"))	    fprintf(stderr,"PANIC: Scale has be redefined.. may cause bugs\n"); 	XtAddEventHandler(WList[1],ButtonPressMask|ButtonReleaseMask,			  FALSE,Locator_btn,NULL);    }    /*****************************/    /* Control buttons in a form */    /*****************************/    /* create form for the row of control buttons */    ac = 0;    XtSetArg(al[ac], XmNtopOffset, 10); ac++;    XtSetArg(al[ac], XmNbottomOffset, 10); ac++;    XtSetArg(al[ac], XmNleftAttachment, XmATTACH_FORM); ac++;/*    XtSetArg(al[ac], XmNrightAttachment, XmATTACH_FORM); ac++; */    XtSetArg(al[ac],XmNtopAttachment,XmATTACH_WIDGET); ac++;    XtSetArg(al[ac], XmNtopWidget, locator_scale); ac++;    btnForm = XmCreateForm(mainForm,"btnForm", al, ac);    XtManageChild(btnForm);    /* Previous Button */    ac = 0;    XtSetArg(al[ac], XmNtopAttachment, XmATTACH_FORM); ac++;    XtSetArg(al[ac], XmNleftAttachment, XmATTACH_FORM); ac++;    XtSetArg(al[ac], XmNleftOffset, 10); ac++;    XtSetArg(al[ac], XmNshadowType, XmSHADOW_OUT); ac++;    XtSetArg(al[ac], XmNshadowThickness, 2); ac++;    XtSetArg(al[ac], XmNlabelType, XmPIXMAP); ac++;    XtSetArg(al[ac], XmNlabelPixmap, prevPixmap); ac++;    XtSetArg(al[ac], XmNhighlightThickness, 2); ac++;    prevBtn = XmCreatePushButton(btnForm, "previous",al, ac);    XtManageChild(prevBtn);    XtAddCallback(prevBtn, XmNactivateCallback,		  (XtCallbackProc) GenericCB, (XtPointer) MOTIF_PREV);    /* Backward Button */    ac = 0;    XtSetArg(al[ac], XmNtopAttachment, XmATTACH_FORM); ac++;    XtSetArg(al[ac], XmNleftAttachment, XmATTACH_WIDGET); ac++;    XtSetArg(al[ac], XmNleftWidget, prevBtn); ac++;    XtSetArg(al[ac], XmNleftOffset, 2); ac++;    XtSetArg(al[ac], XmNshadowType, XmSHADOW_OUT); ac++;    XtSetArg(al[ac], XmNshadowThickness, 2); ac++;    XtSetArg(al[ac], XmNlabelType, XmPIXMAP); ac++;    XtSetArg(al[ac], XmNlabelPixmap, backPixmap); ac++;    XtSetArg(al[ac], XmNhighlightThickness, 2); ac++;    backBtn = XmCreatePushButton(btnForm, "backward",al, ac);    XtManageChild(backBtn);    XtAddCallback(backBtn, XmNactivateCallback,		  (XtCallbackProc) GenericCB, (XtPointer) MOTIF_RWD);    /* Restart Button */    ac = 0;    XtSetArg(al[ac], XmNtopAttachment, XmATTACH_FORM); ac++;    XtSetArg(al[ac], XmNleftAttachment, XmATTACH_WIDGET); ac++;    XtSetArg(al[ac], XmNleftWidget, backBtn); ac++;    XtSetArg(al[ac], XmNleftOffset, 2); ac++;    XtSetArg(al[ac], XmNshadowType, XmSHADOW_OUT); ac++;    XtSetArg(al[ac], XmNshadowThickness, 2); ac++;    XtSetArg(al[ac], XmNlabelType, XmPIXMAP); ac++;    XtSetArg(al[ac], XmNlabelPixmap, restartPixmap); ac++;    XtSetArg(al[ac], XmNhighlightThickness, 2); ac++;    restartBtn = XmCreatePushButton(btnForm,"restartBtn", al, ac);    XtManageChild(restartBtn);    XtAddCallback(restartBtn, XmNactivateCallback,		  (XtCallbackProc) GenericCB, (XtPointer) MOTIF_RESTART);    /* Quit Button */    ac = 0;    XtSetArg(al[ac], XmNtopAttachment, XmATTACH_FORM); ac++;    XtSetArg(al[ac], XmNleftAttachment, XmATTACH_WIDGET); ac++;    XtSetArg(al[ac], XmNleftWidget, restartBtn); ac++;    XtSetArg(al[ac], XmNleftOffset, 2); ac++;    XtSetArg(al[ac], XmNshadowType, XmSHADOW_OUT); ac++;    XtSetArg(al[ac], XmNshadowThickness, 2); ac++;    XtSetArg(al[ac], XmNlabelType, XmPIXMAP); ac++;    XtSetArg(al[ac], XmNlabelPixmap, quitPixmap); ac++;    XtSetArg(al[ac], XmNhighlightThickness, 2); ac++;    quitBtn = XmCreatePushButton(btnForm,"quitBtn", al, ac);    XtManageChild(quitBtn);    XtAddCallback(quitBtn, XmNactivateCallback,		  (XtCallbackProc) GenericCB, (XtPointer) MOTIF_QUIT);    /* Pause Button */    ac = 0;    XtSetArg(al[ac], XmNtopAttachment, XmATTACH_FORM); ac++;    XtSetArg(al[ac], XmNleftAttachment, XmATTACH_WIDGET); ac++;    XtSetArg(al[ac], XmNleftWidget, quitBtn); ac++;    XtSetArg(al[ac], XmNshadowType, XmSHADOW_OUT); ac++;    XtSetArg(al[ac], XmNshadowThickness, 2); ac++;    XtSetArg(al[ac], XmNlabelType, XmPIXMAP); ac++;    XtSetArg(al[ac], XmNlabelPixmap, pausePixmap); ac++;    XtSetArg(al[ac], XmNhighlightThickness, 2); ac++;    pauseBtn =  XmCreatePushButton(btnForm,"pauseBtn", al, ac);    XtManageChild(pauseBtn);    XtAddCallback(pauseBtn, XmNactivateCallback,		  (XtCallbackProc) GenericCB,(XtPointer) MOTIF_PAUSE);    /* Forward Button */    ac = 0;    XtSetArg(al[ac], XmNtopAttachment, XmATTACH_FORM); ac++;    XtSetArg(al[ac], XmNleftAttachment, XmATTACH_WIDGET); ac++;    XtSetArg(al[ac], XmNleftWidget,pauseBtn); ac++;    XtSetArg(al[ac], XmNshadowType, XmSHADOW_OUT); ac++;    XtSetArg(al[ac], XmNshadowThickness, 2); ac++;    XtSetArg(al[ac], XmNlabelType, XmPIXMAP); ac++;    XtSetArg(al[ac], XmNlabelPixmap, fwdPixmap); ac++;    XtSetArg(al[ac], XmNhighlightThickness, 2); ac++;    fwdBtn =  XmCreatePushButton(btnForm,"fwdBtn", al, ac);    XtManageChild(fwdBtn);    XtAddCallback(fwdBtn, XmNactivateCallback,		  (XtCallbackProc) GenericCB, (XtPointer) MOTIF_FWD);    /* Next Button */    ac = 0;    XtSetArg(al[ac], XmNtopAttachment, XmATTACH_FORM); ac++;    XtSetArg(al[ac], XmNrightAttachment, XmATTACH_FORM); ac++;    XtSetArg(al[ac], XmNleftAttachment, XmATTACH_WIDGET); ac++;    XtSetArg(al[ac], XmNleftWidget, fwdBtn); ac++;    XtSetArg(al[ac], XmNleftOffset, 2); ac++;    XtSetArg(al[ac], XmNshadowType, XmSHADOW_OUT); ac++;    XtSetArg(al[ac], XmNshadowThickness, 2); ac++;    XtSetArg(al[ac], XmNlabelType, XmPIXMAP); ac++;    XtSetArg(al[ac], XmNlabelPixmap, nextPixmap); ac++;    XtSetArg(al[ac], XmNhighlightThickness, 2); ac++;    nextBtn = XmCreatePushButton(btnForm,"nextBtn", al, ac);    XtManageChild(nextBtn);    XtAddCallback(nextBtn, XmNactivateCallback,		  (XtCallbackProc) GenericCB, (XtPointer) MOTIF_NEXT);    /********************/    /* Volume scale     */    /********************/    ac = 0;    XtSetArg(al[ac], XmNleftOffset, 10); ac++;    XtSetArg(al[ac], XmNrightOffset, 10); ac++;    XtSetArg(al[ac], XmNtopOffset, 10); ac++;    XtSetArg(al[ac], XmNbottomOffset, 10); ac++;    XtSetArg(al[ac], XmNtopAttachment, XmATTACH_WIDGET); ac++;    XtSetArg(al[ac], XmNtopWidget, btnForm); ac++;    XtSetArg(al[ac], XmNleftAttachment,XmATTACH_FORM); ac++;    XtSetArg(al[ac], XmNbottomAttachment,XmATTACH_FORM); ac++;    XtSetArg(al[ac], XmNmaximum, MAX_AMPLIFICATION); ac++;    XtSetArg(al[ac], XmNminimum, 0); ac++;    XtSetArg(al[ac], XmNshowValue, True); ac++;    XtSetArg(al[ac], XmNtraversalOn, False); ac++;    XtSetArg(al[ac], XmNhighlightThickness,0); ac++;    XtSetArg(al[ac], XmNtitleString,	     XmStringCreate("VOL",char_set)); ac++;    volume_scale = XmCreateScale(mainForm,"volscale",al,ac);    XtManageChild(volume_scale);    XtAddCallback(volume_scale, XmNvalueChangedCallback,		  (XtCallbackProc) Generic_scaleCB,		  (XtPointer) MOTIF_CHANGE_VOLUME);    /********************/    /* File list        */    /********************/    ac = 0;    XtSetArg(al[ac], XmNtopOffset, 10); ac++;    XtSetArg(al[ac], XmNbottomOffset, 10); ac++;    XtSetArg(al[ac], XmNleftOffset, 10); ac++;    XtSetArg(al[ac], XmNrightOffset, 10); ac++;    XtSetArg(al[ac], XmNtopAttachment, XmATTACH_WIDGET); ac++;    XtSetArg(al[ac], XmNtopWidget, btnForm ); ac++;    XtSetArg(al[ac], XmNleftAttachment,XmATTACH_WIDGET); ac++;    XtSetArg(al[ac], XmNleftWidget, volume_scale); ac++;    XtSetArg(al[ac], XmNrightAttachment, XmATTACH_FORM); ac++;    XtSetArg(al[ac], XmNbottomAttachment,XmATTACH_FORM); ac++;    XtSetArg(al[ac], XmNselectionPolicy ,XmSINGLE_SELECT); ac++;    XtSetArg(al[ac], XmNscrollBarDisplayPolicy ,XmAS_NEEDED); ac++;    XtSetArg(al[ac], XmNlistSizePolicy ,XmRESIZE_IF_POSSIBLE); ac++;    XtSetArg(al[ac], XmNtraversalOn, False); ac++;    XtSetArg(al[ac], XmNhighlightThickness,0); ac++;    file_list = XmCreateScrolledList(mainForm,"File List",al,ac);    XtManageChild(file_list);    XtAddCallback(file_list, XmNsingleSelectionCallback,		  (XtCallbackProc) File_ListCB,		  NULL);    /*     * Last details on toplevel     */    ac=0;    /*      XtSetArg(al[ac],XmNwidth,400); ac++;      XtSetArg(al[ac],XmNheight,800); ac++;      */    XtSetArg(al[ac], XmNtitle, "TiMidity"); ac++;    XtSetArg(al[ac], XmNiconName, "NONE"); ac++;    XtSetArg(al[ac], XmNiconPixmap, timidityPixmap); ac++;    XtSetValues(toplevel,al,ac);  /*******************************************************/  /* Plug the pipe ..... and heeere we go                */  /*******************************************************/    XtAppAddInput(context,pipe_number,		  (XtPointer) XtInputReadMask,handle_input,NULL);    XtRealizeWidget(toplevel);    XtAppMainLoop(context);}

⌨️ 快捷键说明

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