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

📄 complexmsgfindwinc.c

📁 linux下的E_MAIL客户端源码
💻 C
📖 第 1 页 / 共 3 页
字号:
//       PushButton	   lePB//       PushButton	   eqPB//       PushButton	   gePB//       PushButton	   gtPB//       PushButton	   nePB//   Widget	numPD = XmCreatePulldownMenu(*termRC, "numPD", 0,0);   args.Reset();   args.UserData((XtPointer)MsgNumExpC::LT);   ltPB = XmCreatePushButton(numPD, "ltPB", ARGS);   args.UserData((XtPointer)MsgNumExpC::LE);   lePB = XmCreatePushButton(numPD, "lePB", ARGS);   args.UserData((XtPointer)MsgNumExpC::EQ);   eqPB = XmCreatePushButton(numPD, "eqPB", ARGS);   args.UserData((XtPointer)MsgNumExpC::GE);   gePB = XmCreatePushButton(numPD, "gePB", ARGS);   args.UserData((XtPointer)MsgNumExpC::GT);   gtPB = XmCreatePushButton(numPD, "gtPB", ARGS);   args.UserData((XtPointer)MsgNumExpC::NE);   nePB = XmCreatePushButton(numPD, "nePB", ARGS);   XtAddCallback(ltPB, XmNactivateCallback, (XtCallbackProc)ChangeNumOp,		 (XtPointer)this);   XtAddCallback(lePB, XmNactivateCallback, (XtCallbackProc)ChangeNumOp,		 (XtPointer)this);   XtAddCallback(eqPB, XmNactivateCallback, (XtCallbackProc)ChangeNumOp,		 (XtPointer)this);   XtAddCallback(gePB, XmNactivateCallback, (XtCallbackProc)ChangeNumOp,		 (XtPointer)this);   XtAddCallback(gtPB, XmNactivateCallback, (XtCallbackProc)ChangeNumOp,		 (XtPointer)this);   XtAddCallback(nePB, XmNactivateCallback, (XtCallbackProc)ChangeNumOp,		 (XtPointer)this);   XtVaSetValues(numOM, XmNsubMenuId, numPD, NULL);   wlist[0] = ltPB;   wlist[1] = lePB;   wlist[2] = eqPB;   wlist[3] = gePB;   wlist[4] = gtPB;   wlist[5] = nePB;   XtManageChildren(wlist, 6);	// numPD children//// Create linePD hierarchy////    PulldowmMenu	linePD//       PushButton	   ltPB//       PushButton	   lePB//       PushButton	   eqPB//       PushButton	   gePB//       PushButton	   gtPB//       PushButton	   nePB//   Widget	linePD = XmCreatePulldownMenu(*termRC, "linePD", 0,0);   args.Reset();   args.UserData((XtPointer)MsgLineExpC::LT);   ltPB = XmCreatePushButton(linePD, "ltPB", ARGS);   args.UserData((XtPointer)MsgLineExpC::LE);   lePB = XmCreatePushButton(linePD, "lePB", ARGS);   args.UserData((XtPointer)MsgLineExpC::EQ);   eqPB = XmCreatePushButton(linePD, "eqPB", ARGS);   args.UserData((XtPointer)MsgLineExpC::GE);   gePB = XmCreatePushButton(linePD, "gePB", ARGS);   args.UserData((XtPointer)MsgLineExpC::GT);   gtPB = XmCreatePushButton(linePD, "gtPB", ARGS);   args.UserData((XtPointer)MsgLineExpC::NE);   nePB = XmCreatePushButton(linePD, "nePB", ARGS);   XtAddCallback(ltPB, XmNactivateCallback, (XtCallbackProc)ChangeLineOp,		 (XtPointer)this);   XtAddCallback(lePB, XmNactivateCallback, (XtCallbackProc)ChangeLineOp,		 (XtPointer)this);   XtAddCallback(eqPB, XmNactivateCallback, (XtCallbackProc)ChangeLineOp,		 (XtPointer)this);   XtAddCallback(gePB, XmNactivateCallback, (XtCallbackProc)ChangeLineOp,		 (XtPointer)this);   XtAddCallback(gtPB, XmNactivateCallback, (XtCallbackProc)ChangeLineOp,		 (XtPointer)this);   XtAddCallback(nePB, XmNactivateCallback, (XtCallbackProc)ChangeLineOp,		 (XtPointer)this);   XtVaSetValues(lineOM, XmNsubMenuId, linePD, NULL);   wlist[0] = ltPB;   wlist[1] = lePB;   wlist[2] = eqPB;   wlist[3] = gePB;   wlist[4] = gtPB;   wlist[5] = nePB;   XtManageChildren(wlist, 6);	// linePD children//// Create bytePD hierarchy////    PulldowmMenu	bytePD//       PushButton	   ltPB//       PushButton	   lePB//       PushButton	   eqPB//       PushButton	   gePB//       PushButton	   gtPB//       PushButton	   nePB//   Widget	bytePD = XmCreatePulldownMenu(*termRC, "bytePD", 0,0);   args.Reset();   args.UserData((XtPointer)MsgByteExpC::LT);   ltPB = XmCreatePushButton(bytePD, "ltPB", ARGS);   args.UserData((XtPointer)MsgByteExpC::LE);   lePB = XmCreatePushButton(bytePD, "lePB", ARGS);   args.UserData((XtPointer)MsgByteExpC::EQ);   eqPB = XmCreatePushButton(bytePD, "eqPB", ARGS);   args.UserData((XtPointer)MsgByteExpC::GE);   gePB = XmCreatePushButton(bytePD, "gePB", ARGS);   args.UserData((XtPointer)MsgByteExpC::GT);   gtPB = XmCreatePushButton(bytePD, "gtPB", ARGS);   args.UserData((XtPointer)MsgByteExpC::NE);   nePB = XmCreatePushButton(bytePD, "nePB", ARGS);   XtAddCallback(ltPB, XmNactivateCallback, (XtCallbackProc)ChangeByteOp,		 (XtPointer)this);   XtAddCallback(lePB, XmNactivateCallback, (XtCallbackProc)ChangeByteOp,		 (XtPointer)this);   XtAddCallback(eqPB, XmNactivateCallback, (XtCallbackProc)ChangeByteOp,		 (XtPointer)this);   XtAddCallback(gePB, XmNactivateCallback, (XtCallbackProc)ChangeByteOp,		 (XtPointer)this);   XtAddCallback(gtPB, XmNactivateCallback, (XtCallbackProc)ChangeByteOp,		 (XtPointer)this);   XtAddCallback(nePB, XmNactivateCallback, (XtCallbackProc)ChangeByteOp,		 (XtPointer)this);   XtVaSetValues(byteOM, XmNsubMenuId, bytePD, NULL);   wlist[0] = ltPB;   wlist[1] = lePB;   wlist[2] = eqPB;   wlist[3] = gePB;   wlist[4] = gtPB;   wlist[5] = nePB;   XtManageChildren(wlist, 6);	// bytePD children   int	wcount = 0;   wlist[wcount++] = fromPB;   wlist[wcount++] = fromContLabel;   wlist[wcount++] = fromTF;   wlist[wcount++] = toPB;   wlist[wcount++] = toContLabel;   wlist[wcount++] = toTF;   wlist[wcount++] = subjPB;   wlist[wcount++] = subjContLabel;   wlist[wcount++] = subjTF;   wlist[wcount++] = headPB;   wlist[wcount++] = headContLabel;   wlist[wcount++] = headTF;   wlist[wcount++] = bodyPB;   wlist[wcount++] = bodyContLabel;   wlist[wcount++] = bodyTF;   wlist[wcount++] = msgPB;   wlist[wcount++] = msgContLabel;   wlist[wcount++] = msgTF;   wlist[wcount++] = datePB;   wlist[wcount++] = dateOM;   wlist[wcount++] = dateTF;   wlist[wcount++] = statPB;   wlist[wcount++] = statIsLabel;   wlist[wcount++] = statOM;   wlist[wcount++] = numPB;   wlist[wcount++] = numOM;   wlist[wcount++] = numTF;   wlist[wcount++] = linePB;   wlist[wcount++] = lineOM;   wlist[wcount++] = lineTF;   wlist[wcount++] = bytePB;   wlist[wcount++] = byteOM;   wlist[wcount++] = byteTF;   XtManageChildren(wlist, wcount);	// termRC children   XtManageChild(*termRC);	// termForm children//// Tell the RowColC about it's children//   wcount = 0;   wlist[wcount++] = fromPB;   wlist[wcount++] = fromContLabel;   wlist[wcount++] = fromTF;   wlist[wcount++] = toPB;   wlist[wcount++] = toContLabel;   wlist[wcount++] = toTF;   wlist[wcount++] = subjPB;   wlist[wcount++] = subjContLabel;   wlist[wcount++] = subjTF;   wlist[wcount++] = headPB;   wlist[wcount++] = headContLabel;   wlist[wcount++] = headTF;   wlist[wcount++] = bodyPB;   wlist[wcount++] = bodyContLabel;   wlist[wcount++] = bodyTF;   wlist[wcount++] = msgPB;   wlist[wcount++] = msgContLabel;   wlist[wcount++] = msgTF;   wlist[wcount++] = datePB;   wlist[wcount++] = dateOM;   wlist[wcount++] = dateTF;   wlist[wcount++] = statPB;   wlist[wcount++] = statIsLabel;   wlist[wcount++] = statOM;   wlist[wcount++] = numPB;   wlist[wcount++] = numOM;   wlist[wcount++] = numTF;   wlist[wcount++] = linePB;   wlist[wcount++] = lineOM;   wlist[wcount++] = lineTF;   wlist[wcount++] = bytePB;   wlist[wcount++] = byteOM;   wlist[wcount++] = byteTF;   termRC->AddChildren(wlist, wcount);   termRC->Defer(False);//// Add "find prev" and "find all" buttons after the apply button//   args.Reset();   args.PositionIndex(2);   Widget findPrevPB = XmCreatePushButton(buttonRC, "findPrevPB", ARGS);   XtAddCallback(findPrevPB, XmNactivateCallback, (XtCallbackProc)DoFindPrev,		 (XtPointer)this);   XtManageChild(findPrevPB);   args.PositionIndex(3);   Widget findAllPB = XmCreatePushButton(buttonRC, "findAllPB", ARGS);   XtAddCallback(findAllPB, XmNactivateCallback, (XtCallbackProc)DoFindAll,		 (XtPointer)this);   XtManageChild(findAllPB);   XtUnmanageChild(okPB);	// We only use the apply button   ShowInfoMsg();		// Add message line   HandleHelp();   AddApplyCallback((CallbackFn *)DoFind, (void *)this);} // End constructor/*--------------------------------------------------------------- *  Method to display dialog */voidComplexMsgFindWinC::Show(){   findIndex = 0;   BoolExpWinC::Show();}/*--------------------------------------------------------------- *  Callback routine to add terms to window */voidComplexMsgFindWinC::AddFrom(Widget, ComplexMsgFindWinC *This, XtPointer){   char *cs = XmTextFieldGetString(This->fromTF);   This->AddTermExp(new MsgFromExpC(cs));   XtFree(cs);}voidComplexMsgFindWinC::AddTo(Widget, ComplexMsgFindWinC *This, XtPointer){   char *cs = XmTextFieldGetString(This->toTF);   This->AddTermExp(new MsgToExpC(cs));   XtFree(cs);}voidComplexMsgFindWinC::AddSubject(Widget, ComplexMsgFindWinC *This, XtPointer){   char *cs = XmTextFieldGetString(This->subjTF);   This->AddTermExp(new MsgSubjExpC(cs));   XtFree(cs);}voidComplexMsgFindWinC::AddHead(Widget, ComplexMsgFindWinC *This, XtPointer){   char *cs = XmTextFieldGetString(This->headTF);   This->AddTermExp(new MsgHeadExpC(cs));   XtFree(cs);}voidComplexMsgFindWinC::AddBody(Widget, ComplexMsgFindWinC *This, XtPointer){   char *cs = XmTextFieldGetString(This->bodyTF);   This->AddTermExp(new MsgBodyExpC(cs));   XtFree(cs);}voidComplexMsgFindWinC::AddMsg(Widget, ComplexMsgFindWinC *This, XtPointer){   char *cs = XmTextFieldGetString(This->msgTF);   This->AddTermExp(new MsgMsgExpC(cs));   XtFree(cs);}voidComplexMsgFindWinC::AddDate(Widget, ComplexMsgFindWinC *This, XtPointer){   char *cs = XmTextFieldGetString(This->dateTF);   This->AddTermExp(new MsgDateExpC(This->dateOp, cs));   XtFree(cs);}voidComplexMsgFindWinC::AddStatus(Widget, ComplexMsgFindWinC *This, XtPointer){   This->AddTermExp(new MsgStatExpC(This->stat));}voidComplexMsgFindWinC::AddNumber(Widget, ComplexMsgFindWinC *This, XtPointer){   char *cs = XmTextFieldGetString(This->numTF);   This->AddTermExp(new MsgNumExpC(This->numOp, atoi(cs)));   XtFree(cs);}voidComplexMsgFindWinC::AddLine(Widget, ComplexMsgFindWinC *This, XtPointer){   char *cs = XmTextFieldGetString(This->lineTF);   This->AddTermExp(new MsgLineExpC(This->lineOp, atoi(cs)));   XtFree(cs);}voidComplexMsgFindWinC::AddByte(Widget, ComplexMsgFindWinC *This, XtPointer){   char *cs = XmTextFieldGetString(This->byteTF);   This->AddTermExp(new MsgByteExpC(This->byteOp, atoi(cs)));   XtFree(cs);}/*--------------------------------------------------------------- *  Callback routine to handle entry of text in a text field.  The given

⌨️ 快捷键说明

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