#help_index "DolDoc/Task;StdOut/Task" public CDoc *DocBorderNew(CDoc *pdoc) {//Make new std border doc. CDocEntry *doc_e; CDoc *bdoc; bdoc=DocNew; bdoc->flags|=DOCF_BORDER_DOC; if (pdoc) { DocPrint(bdoc,"$$CM+H+BY+RX+NC,-7,1$$"); doc_e=DocPrint(bdoc,"$$TX+H+BD+TC,\" \"$$"); doc_e->user_data=pdoc; doc_e->tag_cb=&EdFilterCB; doc_e=DocPrint(bdoc,"$$TX+H+BD+TC,\" \"$$"); doc_e->user_data=pdoc; doc_e->tag_cb=&EdOverStrikeCB; doc_e=DocPrint(bdoc,"$$TX+H+BD+TC,\" \"$$"); doc_e->user_data=pdoc; doc_e->tag_cb=&EdDollarCB; DocPrint(bdoc,"$$CM+H+BY+RX+NC,-18,1$$"); doc_e=DocPrint(bdoc,"$$TX+BD+TC,\" \"$$"); doc_e->user_data=pdoc; doc_e->tag_cb=&EdMoreCB; doc_e=DocPrint(bdoc,"$$TX+H+BD+TC,\" \"$$"); doc_e->user_data=pdoc; doc_e->tag_cb=&EdDollarTypeCB; } DocPrint(bdoc,"$$CM+H+TY+NC,0,-1$$"); doc_e=DocPrint(bdoc,"$$DA+H-TRM-P+BD+RD+CX+IV,LEN=STR_LEN-1," "A=\"%%s...\",SCX=15$$"); doc_e->data=&Fs->task_title; DocDataFmt(bdoc,doc_e); DocPrint(bdoc,"$$CM+H+NC,1,0$$$$TX+H+BD+IV,\"%X\"$$",Fs); DocPrint(bdoc,"$$TX+H+RX+BD,\"[X]\"$$"); DocPrint(bdoc,"$$BK,1$$$$TX+H+LX+BD,\"MENU\"$$$$BK,0$$"); return bdoc; } public U0 DocTermNew() {//Make into term win task with Put/Display/Border docs. CDoc *pdoc=DocNew; pdoc->right_click_link=&TermRightClickLink; pdoc->max_entries=4096; Fs->border_src=BDS_CUR_DRV; pdoc->desc='Term'; Fs->put_doc=Fs->display_doc=pdoc; Fs->border_doc=DocBorderNew(pdoc); Fs->cur_menu=MenuFile("::/Doc/EdPullDown.DD"); WinScrollsInit(Fs); Raw(OFF); } #help_index "DolDoc" #define RIGHT_INCLUDE 0 #define RIGHT_AINCLUDE 1 #define RIGHT_COPY 2 #define RIGHT_MOVE 3 #define RIGHT_DELETE 4 #define RIGHT_TYPE 5 #define RIGHT_ED 6 #define RIGHT_MOUNT 7 #define RIGHT_PLAIN 8 #define RIGHT_INFILE 9 I64 PopUpTermRight(U8 *header) { I64 i; CDoc *doc=DocNew; if (header) DocPrint(doc,"%s",header); DocPrint(doc,"\n\n" "TXT=%s\nDD=%s\nJIT=%s\nGR=%s" "$$CM+LX,1,3 $$$$BT,\"IncludeJIT\",LE=RIGHT_INCLUDE$$" "$$CM+LX,25,0$$$$BT,\"Adam IncludeJIT\",LE=RIGHT_AINCLUDE$$" "$$CM+LX,1,3 $$$$BT,\"Copy\",LE=RIGHT_COPY$$" "$$CM+LX,25,0$$$$BT,\"Moveor Rename\",LE=RIGHT_MOVE$$" "$$CM+LX,1,3 $$$$BT,\"Delete\",LE=RIGHT_DELETE$$" "$$CM+LX,25,0$$$$BT,\"TypeTXT;GR\",LE=RIGHT_TYPE$$" "$$CM+LX,1,3 $$$$BT,\"DolDocEditDD\",LE=RIGHT_ED$$" "$$CM+LX,25,0$$$$BT,\"MountISO.C\",LE=RIGHT_MOUNT$$" "$$CM+LX,1,3 $$$$BT,\"PlainText EditTXT\",LE=RIGHT_PLAIN$$" "$$CM+LX,25,0$$$$BT,\"InfileIN\",LE=RIGHT_INFILE$$" "$$CM+LX,1,3 $$$$BT,\"Cancel\",LE=DOCM_CANCEL$$\n", FILEMASK_TXT,FILEMASK_DD,FILEMASK_JIT,FILEMASK_GR); i=PopUpMenu(doc); DocDel(doc); return i; } I64 EdLeftClickLink(CDoc *doc,CDocEntry *doc_e) {//Called with doc locked, exit unlocked Bool res; U8 *st; if (st=DocEntryLink(doc,doc_e)) { DocUnlock(doc); if (doc_e->de_flags & DOCEF_POPUP) res=PopUpEd(st); else res=Ed(st); Free(st); return res; } } I64 TermRightClickLink(CDoc *doc,CDocEntry *doc_e) {//Called with doc locked, exit unlocked Bool send_new_line=FALSE,res=FALSE; U8 *st,*st2; I64 i; CEdFileName fn; if (st2=DocEntryLink(doc,doc_e)) { if (st=DocLinkFile(st2)) { DocUnlock(doc); if ((i=PopUpTermRight(st))>=0) { DocBottom(doc); switch (i) { case RIGHT_INCLUDE: if (FileExtDot(st) && !FilesFindMatch(st,FILEMASK_JIT)) { if (!PopUpCancelOk(ST_WARN_ST "Not .HC File\n\n")) { send_new_line=TRUE; break; } } "#include \"%s\";\n$$PT$$$$FG$$$$BG$$",st; WinZBufUpdate; ExeFile(st,CCF_CMD_LINE); res=TRUE; break; case RIGHT_AINCLUDE: if (FileExtDot(st) && !FilesFindMatch(st,FILEMASK_JIT)) { if (!PopUpCancelOk(ST_WARN_ST "Not .HC File\n\n")) { send_new_line=TRUE; break; } } "Adam(\"#include \\\"%s\\\"\" );\n$$PT$$$$FG$$$$BG$$",st; WinZBufUpdate; AdamFile(st,FALSE); res=TRUE; break; case RIGHT_COPY: StrCpy(fn.name,st); if (DocForm(&fn)) { res=ToBool(Copy(st,fn.name)); } else send_new_line=TRUE; break; case RIGHT_MOVE: StrCpy(fn.name,st); if (DocForm(&fn)) res=Move(st,fn.name); else send_new_line=TRUE; break; case RIGHT_DELETE: res=ToBool(Del(st)); break; case RIGHT_TYPE: res=Type(st); break; case RIGHT_ED: if (FileExtDot(st) && !FilesFindMatch(st,FILEMASK_DD)) { if (!PopUpCancelOk(ST_WARN_ST "Not DolDoc File\n\n")) { send_new_line=TRUE; break; } } "Ed(\"%s\");\n$$PT$$$$FG$$$$BG$$",st; res=Ed(st); break; case RIGHT_MOUNT: if (FileExtDot(st) && !FilesFindMatch(st,"*.ISO.C")) { if (!PopUpCancelOk(ST_WARN_ST "Not .ISO.C File\n\n")) { send_new_line=TRUE; break; } } "MountFile(\"%s\");\n$$PT$$$$FG$$$$BG$$",st; WinZBufUpdate; MountFile(st); res=TRUE; break; case RIGHT_PLAIN: "Plain(\"%s\");\n$$PT$$$$FG$$$$BG$$",st; res=Plain(st); break; case RIGHT_INFILE: if (FileExtDot(st) && !FilesFindMatch(st,"*.IN*")) { if (!PopUpCancelOk(ST_WARN_ST "Not .IN File\n\n")) { send_new_line=TRUE; break; } } "InFile(\"%s\");\n$$PT$$$$FG$$$$BG$$",st; WinZBufUpdate; InFile(st); res=TRUE; break; } } else send_new_line=TRUE; Free(st); } else send_new_line=TRUE; Free(st2); } else send_new_line=TRUE; DocBottom(doc); "$$PT$$$$FG$$$$BG$$"; if (send_new_line) '\n'; return res; }