home *** CD-ROM | disk | FTP | other *** search
/ DOS/V Power Report 1997 October / VPR9710A.ISO / Ffilly / TFYW111 / RTW_OPT.MAC < prev    next >
Text File  |  1997-07-14  |  6KB  |  259 lines

  1. //オプションメニュー
  2. main:
  3.     menu
  4.         "コンパイル(&C)",
  5.         "Filly実行(&R)",
  6.         "TOFFYヘルプ(&H)",
  7.         "説明書(&T)",
  8. //        "設定(&F)...",
  9.         "バージョン情報...(&A)";
  10.     if(result == 0) goto macro_cancel;
  11.     else if(result == 1) call compile;
  12.     else if(result == 2) call fillyrun;
  13.     else if(result == 3) call help;
  14.     else if(result == 4) call viewtext;
  15. //    else if(result == 5) call config;
  16.     else if(result == 5) call about;
  17.     goto macro_end;
  18.  
  19.  
  20. macro_end:
  21.     endmacro;
  22.  
  23.  
  24. macro_cancel:
  25.     writeininum "tfywrite.ini", "Control", "MenuCancel", 1;
  26.     endmacro;
  27.  
  28.  
  29. //編集中のTOFFYファイルを保存後、コンパイル&Filly実行
  30. compile:
  31.     save;
  32.     $fildir = getinistr("inst.ini", "Directory", "system");
  33.     run $fildir + "\\" + "toffy.exe /f " + filename;
  34.     if (result == false) message "TOFFYの起動に失敗しました。";
  35.     goto macro_end;
  36.  
  37.  
  38. //コンパイル済みのFillyタイトルを実行
  39. fillyrun:
  40.     $fildir = getinistr("inst.ini", "Directory", "system");
  41.     #a = strlen(filename);
  42.     run $fildir + "\\" + "filly.exe " + leftstr(filename, #a-3) + "fil";
  43.     if (result == false) message "Fillyの起動に失敗しました。";
  44.     goto macro_end;
  45.  
  46.  
  47. //Toffyヘルプの表示
  48. help:
  49.     $fildir = getinistr("inst.ini", "Directory", "system");
  50.     run "winhelp " + $fildir + "\\toffy.hlp";
  51.     if (result == false) message "ヘルプの起動に失敗しました。";
  52.     goto macro_end;
  53.  
  54.  
  55. //説明書の表示
  56. viewtext:
  57.     readonlyopenfile "tfywrite.txt";
  58.     goto macro_end;
  59.  
  60.  
  61. //設定
  62. config:
  63.     $MacFolder = getinistr("tfywrite.ini","Folder","MacroFolder");
  64.     $Comment   = getinistr("tfywrite.ini","Config","Comment");
  65.  
  66.     call DlgInit "56","設定";
  67.  
  68.     ddepoke "newcontrol", "text,,マクロのフォルダ(&F)";
  69.     ddepoke "part", "13";
  70.     ddepoke "newcontrol", "edit,MacroFolder," + $MacFolder;
  71.  
  72.     ddepoke "newcontrol", "radio,Comment,コメントのタイプ(&C)";
  73.     ddepoke "item", "//";
  74.     ddepoke "item", "/* */";
  75.     if($Comment == "1" || $Comment == "2") ddepoke "default", $Comment;
  76.  
  77.     ddepoke "newcontrol", "text,,";    
  78.     ddepoke "part", "36";
  79.     ddepoke "newcontrol", "okcancel,Ok,";
  80.  
  81.     call MakeDialog;
  82.  
  83.     if( $$return == "0" ) goto macro_end;
  84.  
  85.     $NMacFolder = dderequest("getstring MacFolder");
  86.     $NComment   = dderequest("getstate Comment");
  87.  
  88.     
  89.  
  90.     writeinistr "tfywrite.ini","Folder","MacFolder",$NMacFolder;
  91.     writeinistr "tfywrite.ini","Config","Comment",$NComment;
  92.  
  93.     ddeexecute "exit";
  94.     goto macro_end;
  95.     
  96.  
  97.  
  98.  
  99. //バージョン情報の表示
  100. about:
  101.     $fildir = getinistr("inst.ini", "Directory", "system");
  102.  
  103.     call DlgInit "56","バージョン情報";
  104.  
  105.     call DlgText "らくらくToffyライター for 秀丸エディタ Ver.1.11";
  106.     call DlgText "Copyright (C) 1997 みかぜ(VFG01632@niftyserve.or.jp)";
  107.     call DlgText "――――――――――――――――――――――――――――――――――――――――";
  108.     call DlgText "Fillyのインストールされているディレクトリ:";
  109.     call DlgText "  "+$fildir;    
  110. //    call DlgText "";
  111. //    call DlgText "マクロのインストールされているディレクトリ:";
  112. //    call DlgText "  "+$Folder;
  113.     call DlgText "";
  114.  
  115.     ddepoke "newcontrol", "text,,";    
  116.     ddepoke "part", "22";
  117.     ddepoke "newcontrol", "defbutton,,OK";
  118.     ddepoke "notify", "Ok";
  119.     ddepoke "part", "12";
  120.     ddepoke "newcontrol", "text,,";    
  121.  
  122.     call MakeDialog;
  123.  
  124.     if($$return == "Ok") goto macro_end;
  125.  
  126.     ddeexecute "exit";
  127.     goto macro_end;
  128.  
  129.  
  130. //ダイアログボックス関連サブルーチン
  131.  
  132. //ダイアログボックスの準備
  133. DlgInit:
  134.     //第1引数 ダイアログボックス幅
  135.     //第2引数 ダイアログボックス名
  136.  
  137.     escape;
  138.     run "macserv.exe /h";
  139.     ddeinitiate "HideMacroServer", "DlgService";
  140.     if( !result ) {
  141.         message "ddeinitiate failed";
  142.         endmacro;
  143.     }
  144.     ddeexecute "setcurdir " + directory;
  145.     ddepoke "newdialog", $$1 + "," + $$2;
  146.     return; 
  147.  
  148.  
  149. MakeDialog:
  150.     #hwnd = hidemaruhandle(0);
  151.     ddeexecute "dialog " + str(#hwnd);
  152.     $$a = "";
  153.     ddestartadvice "dlgresult", $$a;
  154.     while( strlen($$a) == 0 ) {
  155.         ddewaitadvice $$a, 100;
  156.     }
  157.     ddestopadvice "dlgresult";
  158.     ddeexecute "enddialog";
  159.     return $$a;
  160.  
  161.  
  162. //エディットボックスの作成
  163. DlgEdit:
  164.     //第1引数 テキスト
  165.     //第2引数 テキストの幅(0=改行)
  166.     //第3引数 コントロール名
  167.  
  168.     ddepoke "newcontrol", "text,," + $$1;
  169.     if($$2 != "0") ddepoke "part", $$2;
  170.     ddepoke "newcontrol", "edit," + $$3 + ",";
  171.     return;
  172.  
  173.  
  174. //リストボックスの作成
  175. DlgList:
  176.     //第1引数 テキスト
  177.     //第2引数 テキストの幅(0=改行)
  178.     //第3引数 コントロール名
  179.     //第4引数 高さ
  180.     //第5~9引数 内容
  181.  
  182.     ddepoke "newcontrol", "text,," + $$1;
  183.     if($$2 != "0") ddepoke "part", $$2;
  184.     ddepoke "newcontrol", "list," + $$3 + ",";
  185.     if($$5 != "") ddepoke "item", $$5;
  186.     if($$6 != "") ddepoke "item", $$6;
  187.     if($$7 != "") ddepoke "item", $$7;
  188.     if($$8 != "") ddepoke "item", $$8;
  189.     if($$9 != "") ddepoke "item", $$9;
  190.     if($$4 != "0") ddepoke "height", $$4;
  191.     return;
  192.  
  193.  
  194. //ラジオボックスの作成
  195. DlgRadio:
  196.     //第1引数 テキスト
  197.     //第2引数 コントロール名
  198.     //第3~7引数 内容
  199.     ddepoke "newcontrol", "radio," + $$2 + "," + $$1;
  200.     if($$3 != "") ddepoke "item", $$3;
  201.     if($$4 != "") ddepoke "item", $$4;
  202.     if($$5 != "") ddepoke "item", $$5;
  203.     if($$6 != "") ddepoke "item", $$6;
  204.     if($$7 != "") ddepoke "item", $$7;
  205.     if($$8 != "") ddepoke "item", $$8;
  206.     if($$9 != "") ddepoke "item", $$9;
  207.     return;
  208.  
  209.  
  210. //アイテムの追加
  211. DlgItem:
  212.     //第1~9引数 内容
  213.  
  214.     if($$1 != "") ddepoke "item", $$1;
  215.     if($$2 != "") ddepoke "item", $$2;
  216.     if($$3 != "") ddepoke "item", $$3;
  217.     if($$4 != "") ddepoke "item", $$4;
  218.     if($$5 != "") ddepoke "item", $$5;
  219.     if($$6 != "") ddepoke "item", $$6;
  220.     if($$7 != "") ddepoke "item", $$7;
  221.     if($$8 != "") ddepoke "item", $$8;
  222.     if($$9 != "") ddepoke "item", $$9;
  223.     return;
  224.  
  225.  
  226. //新しい横の列
  227. DlgNP:
  228.     //第1引数 コントロールの幅
  229.     ddepoke "newpage", $$1;
  230.     return;
  231.  
  232.  
  233. //新しい縦の列
  234. DlgNC:
  235.     //第1引数 コントロールの幅
  236.     ddepoke "newcolumn", $$1;
  237.     return;
  238.  
  239.  
  240. //OK,Cancelボタンの作成
  241. DlgOk:
  242.     //第1引数 左余白の幅
  243.     if($$1 != "0"){
  244.         ddepoke "newcontrol", "text,,";
  245.         ddepoke "part", $$1;
  246.     }
  247.     ddepoke "newcontrol", "okcancel,Ok";
  248.     return;
  249.  
  250.  
  251. //テキストの表示
  252. DlgText:
  253.     //第1引数 テキスト
  254.     //第2引数 テキストの幅(0=改行)
  255.     ddepoke "newcontrol", "text,," + $$1;
  256.     if($$2 !="" && $$2 !="0") ddepoke "part", $$2;
  257.     return;
  258.  
  259.