📄 mainmsg.c
字号:
// Find the next message// MsgC *next; MsgItemC *item; VItemListC& selList = This->msgVBox->SelItems(); VItemListC& visList = This->msgVBox->VisItems(); if ( This->pub->curMsgList->size() == 1 ) { item = (MsgItemC*)(*This->pub->curMsgList)[0]; next = This->pub->NextReadable(item->msg); } else if ( selList.size() > 0 ) { item = (MsgItemC*)selList[selList.size()-1]; next = This->pub->NextReadable(item->msg); This->msgVBox->DeselectAllItems(); } else if ( visList.size() > 0 ) { item = (MsgItemC*)visList[0]; next = item->msg; } ishApp->DisplayMessage(next); This->pub->Refresh();} // End DoMsgNext/*--------------------------------------------------------------- * Callback to handle message-read-next-unread */voidMainWinP::DoMsgNextUnread(Widget, MainWinP *This, XtPointer){ ishApp->VerifyMailCheck();//// Find the next message// MsgC *next; MsgItemC *item; VItemListC& selList = This->msgVBox->SelItems(); VItemListC& visList = This->msgVBox->VisItems(); if ( This->pub->curMsgList->size() == 1 ) { item = (MsgItemC*)(*This->pub->curMsgList)[0]; next = This->pub->NextUnread(item->msg); } else if ( selList.size() > 0 ) { item = (MsgItemC*)selList[selList.size()-1]; next = This->pub->NextUnread(item->msg); } else if ( visList.size() > 0 ) { item = (MsgItemC*)visList[0]; next = item->msg; } ishApp->DisplayMessage(next);} // End DoMsgNextUnread/*--------------------------------------------------------------- * Callback to handle message-read-next-sender */voidMainWinP::DoMsgNextSender(Widget, MainWinP *This, XtPointer){ ishApp->VerifyMailCheck();//// Find the next message// MsgC *next; MsgItemC *item; VItemListC& selList = This->msgVBox->SelItems(); VItemListC& visList = This->msgVBox->VisItems(); if ( This->pub->curMsgList->size() == 1 ) { item = (MsgItemC*)(*This->pub->curMsgList)[0]; next = This->pub->NextSender(item->msg); } else if ( selList.size() > 0 ) { item = (MsgItemC*)selList[selList.size()-1]; next = This->pub->NextSender(item->msg); } else if ( visList.size() > 0 ) { item = (MsgItemC*)visList[0]; next = item->msg; } ishApp->DisplayMessage(next);} // End DoMsgNextSender/*--------------------------------------------------------------- * Callback to handle message-read-next-subject */voidMainWinP::DoMsgNextSubject(Widget, MainWinP *This, XtPointer){ ishApp->VerifyMailCheck();//// Find the next message// MsgC *next; MsgItemC *item; VItemListC& selList = This->msgVBox->SelItems(); VItemListC& visList = This->msgVBox->VisItems(); if ( This->pub->curMsgList->size() == 1 ) { item = (MsgItemC*)(*This->pub->curMsgList)[0]; next = This->pub->NextSubject(item->msg); } else if ( selList.size() > 0 ) { item = (MsgItemC*)selList[selList.size()-1]; next = This->pub->NextSubject(item->msg); } else if ( visList.size() > 0 ) { item = (MsgItemC*)visList[0]; next = item->msg; } ishApp->DisplayMessage(next);} // End DoMsgNextSubject/*--------------------------------------------------------------- * Callback to handle message-read-prev */voidMainWinP::DoMsgPrev(Widget, MainWinP *This, XtPointer){ ishApp->VerifyMailCheck();//// Find the previous message// MsgC *prev; MsgItemC *item; VItemListC& selList = This->msgVBox->SelItems(); VItemListC& visList = This->msgVBox->VisItems(); if ( This->pub->curMsgList->size() == 1 ) { item = (MsgItemC*)(*This->pub->curMsgList)[0]; prev = This->pub->PrevReadable(item->msg); } else if ( selList.size() > 0 ) { item = (MsgItemC*)selList[0]; prev = This->pub->PrevReadable(item->msg); } else if ( visList.size() > 0 ) { item = (MsgItemC*)visList[visList.size()-1]; prev = item->msg; } ishApp->DisplayMessage(prev);} // End DoMsgPrev/*--------------------------------------------------------------- * Callback to handle message-read-prev-unread */voidMainWinP::DoMsgPrevUnread(Widget, MainWinP *This, XtPointer){ ishApp->VerifyMailCheck();//// Find the previous message// MsgC *prev; MsgItemC *item; VItemListC& selList = This->msgVBox->SelItems(); VItemListC& visList = This->msgVBox->VisItems(); if ( This->pub->curMsgList->size() == 1 ) { item = (MsgItemC*)(*This->pub->curMsgList)[0]; prev = This->pub->PrevUnread(item->msg); } else if ( selList.size() > 0 ) { item = (MsgItemC*)selList[0]; prev = This->pub->PrevUnread(item->msg); } else if ( visList.size() > 0 ) { item = (MsgItemC*)visList[visList.size()-1]; prev = item->msg; } ishApp->DisplayMessage(prev);} // End DoMsgPrevUnread/*--------------------------------------------------------------- * Callback to handle message-read-prev-sender */voidMainWinP::DoMsgPrevSender(Widget, MainWinP *This, XtPointer){ ishApp->VerifyMailCheck();//// Find the previous message// MsgC *prev; MsgItemC *item; VItemListC& selList = This->msgVBox->SelItems(); VItemListC& visList = This->msgVBox->VisItems(); if ( This->pub->curMsgList->size() == 1 ) { item = (MsgItemC*)(*This->pub->curMsgList)[0]; prev = This->pub->PrevSender(item->msg); } else if ( selList.size() > 0 ) { item = (MsgItemC*)selList[0]; prev = This->pub->PrevSender(item->msg); } else if ( visList.size() > 0 ) { item = (MsgItemC*)visList[visList.size()-1]; prev = item->msg; } ishApp->DisplayMessage(prev);} // End DoMsgPrevSender/*--------------------------------------------------------------- * Callback to handle message-read-prev-subject */voidMainWinP::DoMsgPrevSubject(Widget, MainWinP *This, XtPointer){ ishApp->VerifyMailCheck();//// Find the previous message// MsgC *prev; MsgItemC *item; VItemListC& selList = This->msgVBox->SelItems(); VItemListC& visList = This->msgVBox->VisItems(); if ( This->pub->curMsgList->size() == 1 ) { item = (MsgItemC*)(*This->pub->curMsgList)[0]; prev = This->pub->PrevSubject(item->msg); } else if ( selList.size() > 0 ) { item = (MsgItemC*)selList[0]; prev = This->pub->PrevSubject(item->msg); } else if ( visList.size() > 0 ) { item = (MsgItemC*)visList[visList.size()-1]; prev = item->msg; } ishApp->DisplayMessage(prev);} // End DoMsgPrevSubject/*--------------------------------------------------------------- * Callback to handle file-print and message-print */voidMainWinP::DoMsgPrint(Widget, MainWinP *This, XtPointer){ This->pub->popupMsg = NULL; if ( !This->printWin ) This->printWin = new PrintWinC(*This->pub); if ( This->msgTBox->num_selected() > 1 ) This->printWin->ShowOrder(); else This->printWin->HideOrder(); This->printWin->Show(*This->pub);}voidMainWinP::DoMsgPUPrint(Widget, MainWinP *This, XtPointer){ if ( !This->printWin ) This->printWin = new PrintWinC(*This->pub); if ( This->pub->popupOnSelected && This->msgTBox->num_selected() > 1 ) This->printWin->ShowOrder(); else This->printWin->HideOrder(); This->printWin->Show(*This->pub);}/*--------------------------------------------------------------- * Callback to handle file-pipe and message-pipe */voidMainWinP::DoMsgPipe(Widget, MainWinP *This, XtPointer){ This->pub->popupMsg = NULL; if ( !This->pipeWin ) This->pipeWin = new PipeWinC(*This->pub); if ( This->msgTBox->num_selected() > 1 ) This->pipeWin->ShowOrder(); else This->pipeWin->HideOrder(); This->pipeWin->Show(*This->pub);}voidMainWinP::DoMsgPUPipe(Widget, MainWinP *This, XtPointer){ if ( !This->pipeWin ) This->pipeWin = new PipeWinC(*This->pub); if ( This->pub->popupOnSelected && This->msgTBox->num_selected() > 1 ) This->pipeWin->ShowOrder(); else This->pipeWin->HideOrder(); This->pipeWin->Show(*This->pub);}/*--------------------------------------------------------------- * Callback to handle file-compose */voidMainWinP::DoMsgCompose(Widget, MainWinP*, XtPointer){ SendWinC *sendWin = ishApp->GetSendWin(); sendWin->Show();}/*--------------------------------------------------------------- * Callback to handle message-reply */voidMainWinP::DoMsgReply(Widget, MainWinP *This, XtPointer){ SendWinC *sendWin = ishApp->GetSendWin(); VItemListC& list = This->msgVBox->SelItems(); MsgItemC *item = (MsgItemC*)list[0]; sendWin->Reply(item->msg, /*all*/False, /*inc*/False);}voidMainWinP::DoMsgPUReply(Widget, MainWinP *This, XtPointer){ SendWinC *sendWin = ishApp->GetSendWin(); sendWin->Reply(This->pub->popupMsg, /*all*/False, /*inc*/False);}/*--------------------------------------------------------------- * Callback to handle message-reply-include */voidMainWinP::DoMsgReplyInc(Widget, MainWinP *This, XtPointer){ SendWinC *sendWin = ishApp->GetSendWin(); VItemListC& list = This->msgVBox->SelItems(); MsgItemC *item = (MsgItemC*)list[0]; sendWin->Reply(item->msg, /*all*/False, /*inc*/True);}voidMainWinP::DoMsgPUReplyInc(Widget, MainWinP *This, XtPointer){ SendWinC *sendWin = ishApp->GetSendWin(); sendWin->Reply(This->pub->popupMsg, /*all*/False, /*inc*/True);}/*--------------------------------------------------------------- * Callback to handle message-reply-all */voidMainWinP::DoMsgReplyAll(Widget, MainWinP *This, XtPointer){ SendWinC *sendWin = ishApp->GetSendWin(); VItemListC& list = This->msgVBox->SelItems(); MsgItemC *item = (MsgItemC*)list[0]; sendWin->Reply(item->msg, /*all*/True, /*inc*/False);}voidMainWinP::DoMsgPUReplyAll(Widget, MainWinP *This, XtPointer){ SendWinC *sendWin = ishApp->GetSendWin(); sendWin->Reply(This->pub->popupMsg, /*all*/True, /*inc*/False);}/*--------------------------------------------------------------- * Callback to handle message-reply-all-include */voidMainWinP::DoMsgReplyAllInc(Widget, MainWinP *This, XtPointer){ SendWinC *sendWin = ishApp->GetSendWin(); VItemListC& list = This->msgVBox->SelItems(); MsgItemC *item = (MsgItemC*)list[0]; sendWin->Reply(item->msg, /*all*/True, /*inc*/True);}voidMainWinP::DoMsgPUReplyAllInc(Widget, MainWinP *This, XtPointer){ SendWinC *sendWin = ishApp->GetSendWin(); sendWin->Reply(This->pub->popupMsg, /*all*/True, /*inc*/True);}/*--------------------------------------------------------------- * Callbacks to handle message-forward */voidMainWinP::DoMsgForward(Widget, MainWinP *This, XtPointer){ SendWinC *sendWin = ishApp->GetSendWin(); VItemListC& itemList = This->msgVBox->SelItems(); u_int count = itemList.size(); MsgListC msgList; for (int i=0; i<count; i++) { MsgItemC *item = (MsgItemC*)itemList[i]; msgList.add(item->msg); } sendWin->Forward(msgList, /*encapsulate*/False);}voidMainWinP::DoMsgPUForward(Widget, MainWinP *This, XtPointer){ if ( This->pub->popupOnSelected ) DoMsgForward(NULL, This, NULL); else { SendWinC *sendWin = ishApp->GetSendWin(); MsgListC msgList; msgList.add(This->pub->popupMsg); sendWin->Forward(msgList, /*encapsulate*/False); }}/*--------------------------------------------------------------- * Callbacks to handle message-forward-encapsulated */voidMainWinP::DoMsgForward822(Widget, MainWinP *This, XtPointer){ SendWinC *sendWin = ishApp->GetSendWin(); VItemListC& itemList = This->msgVBox->SelItems(); u_int count = itemList.size(); MsgListC msgList; for (int i=0; i<count; i++) { MsgItemC *item = (MsgItemC*)itemList[i]; msgList.add(item->msg); } sendWin->Forward(msgList, /*encapsulate*/True);}voidMainWinP::DoMsgPUForward822(Widget, MainWinP *This, XtPointer){ if ( This->pub->popupOnSelected ) DoMsgForward822(NULL, This, NULL); else { SendWinC *sendWin = ishApp->GetSendWin(); MsgListC msgList; msgList.add(This->pub->popupMsg); sendWin->Forward(msgList, /*encapsulate*/True); }}/*--------------------------------------------------------------- * Callback to handle message-resend */voidMainWinP::DoMsgResend(Widget, MainWinP *This, XtPointer){ SendWinC *sendWin = ishApp->GetSendWin(); VItemListC& itemList = This->msgVBox->SelItems(); u_int count = itemList.size(); MsgListC msgList; for (int i=0; i<count; i++) { MsgItemC *item = (MsgItemC*)itemList[i]; msgList.add(item->msg); } sendWin->Resend(msgList);}voidMainWinP::DoMsgPUResend(Widget, MainWinP *This, XtPointer){ if ( This->pub->popupOnSelected ) DoMsgResend(NULL, This, NULL); else { SendWinC *sendWin = ishApp->GetSendWin(); MsgListC msgList; msgList.add(This->pub->popupMsg); sendWin->Resend(msgList); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -