Team Ai
Datasetpublic

hschumann2/TempleOS-Source-Code

sourceHugging Faceupdated 1y agoView on Hugging Face
0likes847downloads
DocTerm.txt215 linesDownload Raw Back to DolDoc
1 2#help_index "DolDoc/Task;StdOut/Task"3public CDoc *DocBorderNew(CDoc *pdoc)4{//Make new std border doc.5  CDocEntry *doc_e;6  CDoc *bdoc;7 8  bdoc=DocNew;9  bdoc->flags|=DOCF_BORDER_DOC;10  if (pdoc) {11    DocPrint(bdoc,"$CM+H+BY+RX+NC,-7,1$");12    doc_e=DocPrint(bdoc,"$TX+H+BD+TC,\" \"$");13    doc_e->user_data=pdoc;14    doc_e->tag_cb=&EdFilterCB;15    doc_e=DocPrint(bdoc,"$TX+H+BD+TC,\" \"$");16    doc_e->user_data=pdoc;17    doc_e->tag_cb=&EdOverStrikeCB;18    doc_e=DocPrint(bdoc,"$TX+H+BD+TC,\" \"$");19    doc_e->user_data=pdoc;20    doc_e->tag_cb=&EdDollarCB;21    DocPrint(bdoc,"$CM+H+BY+RX+NC,-18,1$");22    doc_e=DocPrint(bdoc,"$TX+BD+TC,\"     \"$");23    doc_e->user_data=pdoc;24    doc_e->tag_cb=&EdMoreCB;25    doc_e=DocPrint(bdoc,"$TX+H+BD+TC,\" \"$");26    doc_e->user_data=pdoc;27    doc_e->tag_cb=&EdDollarTypeCB;28  }29  DocPrint(bdoc,"$CM+H+TY+NC,0,-1$");30  doc_e=DocPrint(bdoc,"$DA+H-TRM-P+BD+RD+CX+IV,LEN=STR_LEN-1,"31        "A=\"%%s...\",SCX=15$");32  doc_e->data=&Fs->task_title;33  DocDataFmt(bdoc,doc_e);34  DocPrint(bdoc,"$CM+H+NC,1,0$$TX+H+BD+IV,\"%X\"$",Fs);35  DocPrint(bdoc,"$TX+H+RX+BD,\"[X]\"$");36  DocPrint(bdoc,"$BK,1$$TX+H+LX+BD,\"MENU\"$$BK,0$");37  return bdoc;38}39 40public U0 DocTermNew()41{//Make into term win task with Put/Display/Border docs.42  CDoc *pdoc=DocNew;43  pdoc->right_click_link=&TermRightClickLink;44  pdoc->max_entries=4096;45  Fs->border_src=BDS_CUR_DRV;46  pdoc->desc='Term';47  Fs->put_doc=Fs->display_doc=pdoc;48  Fs->border_doc=DocBorderNew(pdoc);49  Fs->cur_menu=MenuFile("::/Doc/EdPullDown.DD");50  WinScrollsInit(Fs);51  Raw(OFF);52}53 54#help_index "DolDoc"55 56#define RIGHT_INCLUDE   057#define RIGHT_AINCLUDE  158#define RIGHT_COPY      259#define RIGHT_MOVE      360#define RIGHT_DELETE    461#define RIGHT_TYPE      562#define RIGHT_ED        663#define RIGHT_MOUNT     764#define RIGHT_PLAIN     865#define RIGHT_INFILE    966 67I64 PopUpTermRight(U8 *header)68{69  I64 i;70  CDoc *doc=DocNew;71  if (header) DocPrint(doc,"%s",header);72  DocPrint(doc,"\n\n"73        "TXT=%s\nDD =%s\nJIT=%s\nGR =%s"74        "$CM+LX,1,3 $$BT,\"Include           JIT\",LE=RIGHT_INCLUDE$"75        "$CM+LX,25,0$$BT,\"Adam Include      JIT\",LE=RIGHT_AINCLUDE$"76        "$CM+LX,1,3 $$BT,\"Copy                 \",LE=RIGHT_COPY$"77        "$CM+LX,25,0$$BT,\"Move or Rename       \",LE=RIGHT_MOVE$"78        "$CM+LX,1,3 $$BT,\"Delete               \",LE=RIGHT_DELETE$"79        "$CM+LX,25,0$$BT,\"Type           TXT;GR\",LE=RIGHT_TYPE$"80        "$CM+LX,1,3 $$BT,\"DolDoc Edit        DD\",LE=RIGHT_ED$"81        "$CM+LX,25,0$$BT,\"Mount           ISO.C\",LE=RIGHT_MOUNT$"82        "$CM+LX,1,3 $$BT,\"Plain Text Edit   TXT\",LE=RIGHT_PLAIN$"83        "$CM+LX,25,0$$BT,\"Infile             IN\",LE=RIGHT_INFILE$"84        "$CM+LX,1,3 $$BT,\"Cancel               \",LE=DOCM_CANCEL$\n",85        FILEMASK_TXT,FILEMASK_DD,FILEMASK_JIT,FILEMASK_GR);86  i=PopUpMenu(doc);87  DocDel(doc);88  return i;89}90 91I64 EdLeftClickLink(CDoc *doc,CDocEntry *doc_e)92{//Called with doc locked, exit unlocked93  Bool res;94  U8 *st;95  if (st=DocEntryLink(doc,doc_e)) {96    DocUnlock(doc);97    if (doc_e->de_flags & DOCEF_POPUP)98      res=PopUpEd(st);99    else100      res=Ed(st);101    Free(st);102    return res;103  }104}105 106I64 TermRightClickLink(CDoc *doc,CDocEntry *doc_e)107{//Called with doc locked, exit unlocked108  Bool send_new_line=FALSE,res=FALSE;109  U8 *st,*st2;110  I64 i;111  CEdFileName fn;112  if (st2=DocEntryLink(doc,doc_e)) {113    if (st=DocLinkFile(st2)) {114      DocUnlock(doc);115      if ((i=PopUpTermRight(st))>=0) {116        DocBottom(doc);117        switch (i) {118          case RIGHT_INCLUDE:119            if (FileExtDot(st) && !FilesFindMatch(st,FILEMASK_JIT)) {120              if (!PopUpCancelOk(ST_WARN_ST "Not .HC File\n\n")) {121                send_new_line=TRUE;122                break;123              }124            }125            "#include \"%s\";\n$PT$$FG$$BG$",st;126            WinZBufUpdate;127            ExeFile(st,CCF_CMD_LINE);128            res=TRUE;129            break;130          case RIGHT_AINCLUDE:131            if (FileExtDot(st) && !FilesFindMatch(st,FILEMASK_JIT)) {132              if (!PopUpCancelOk(ST_WARN_ST "Not .HC File\n\n")) {133                send_new_line=TRUE;134                break;135              }136            }137            "Adam(\"#include \\\"%s\\\"\" );\n$PT$$FG$$BG$",st;138            WinZBufUpdate;139            AdamFile(st,FALSE);140            res=TRUE;141            break;142          case RIGHT_COPY:143            StrCpy(fn.name,st);144            if (DocForm(&fn)) {145              res=ToBool(Copy(st,fn.name));146            } else147              send_new_line=TRUE;148            break;149          case RIGHT_MOVE:150            StrCpy(fn.name,st);151            if (DocForm(&fn))152              res=Move(st,fn.name);153            else154              send_new_line=TRUE;155            break;156          case RIGHT_DELETE:157            res=ToBool(Del(st));158            break;159          case RIGHT_TYPE:160            res=Type(st);161            break;162          case RIGHT_ED:163            if (FileExtDot(st) && !FilesFindMatch(st,FILEMASK_DD)) {164              if (!PopUpCancelOk(ST_WARN_ST "Not DolDoc File\n\n")) {165                send_new_line=TRUE;166                break;167              }168            }169            "Ed(\"%s\");\n$PT$$FG$$BG$",st;170            res=Ed(st);171            break;172          case RIGHT_MOUNT:173            if (FileExtDot(st) && !FilesFindMatch(st,"*.ISO.C")) {174              if (!PopUpCancelOk(ST_WARN_ST "Not .ISO.C File\n\n")) {175                send_new_line=TRUE;176                break;177              }178            }179            "MountFile(\"%s\");\n$PT$$FG$$BG$",st;180            WinZBufUpdate;181            MountFile(st);182            res=TRUE;183            break;184          case RIGHT_PLAIN:185            "Plain(\"%s\");\n$PT$$FG$$BG$",st;186            res=Plain(st);187            break;188          case RIGHT_INFILE:189            if (FileExtDot(st) && !FilesFindMatch(st,"*.IN*")) {190              if (!PopUpCancelOk(ST_WARN_ST "Not .IN File\n\n")) {191                send_new_line=TRUE;192                break;193              }194            }195            "InFile(\"%s\");\n$PT$$FG$$BG$",st;196            WinZBufUpdate;197            InFile(st);198            res=TRUE;199            break;200        }201      } else202        send_new_line=TRUE;203      Free(st);204    } else205      send_new_line=TRUE;206    Free(st2);207  } else208    send_new_line=TRUE;209  DocBottom(doc);210  "$PT$$FG$$BG$";211  if (send_new_line)212    '\n';213  return res;214}215