ひまわりユーザー プログラム掲示板 バックアップ
注意
ひまわりのススメ  □ ひまわり本家Home  □ 新着記事  □ 新規投稿  □ SEARCH  □ 参考プログラム集
ツリー表示

MESSAGE 命令集追加護衛艦(バージョン 0.70β) /senkun (02/01/31(Thu) 11:31) [362]
......MESSAGE 命令集追加護衛艦(バージョン 0.70β) /senkun (02/02/27(Wed) 00:30) [533]
......MESSAGE 感想 /クジラ飛行机 (02/03/03(Sun) 20:08) [559]
......MESSAGE 命令集追加護衛艦(バージョン 0.70) /senkun (02/04/06(Sat) 13:23) [717]


親記事 / ▼[ 533 ] ▼[ 559 ] ▼[ 717 ]
NO.362  命令集追加護衛艦(バージョン 0.70β)
□投稿者/ senkun -(2002/01/31(Thu) 11:31:50)
□U R L/
{---プログラム掲示板投稿フォーム---
【ソフト名】命令集追加護衛艦(バージョン 0.70β)
【作 成 者】senkun
【種  別】フリーソフトウェア
【ひまわりのバージョン】ver.1.22
【転  件】可(転載条件:ご連絡があると幸いです!)
【ひまわり本体への梱包】可
【実行時に利用作成するファイル】有
【コメント】
この際、UPLOAD機能も付けちゃいました。といっても、
掲示板に書き込むだけすけど・・・
チェックがあまいので、問題はかなりあります。
そのつもりで使ってください!
機能追加に走りましたので、今後、様子を見てチェック・修正に励みますので、
安定版を望まず、試してやろうと言う方のご使用を奨めます!
(ちなみに、このプロも本機能でUP!)

---投稿フォームここまで---}
現在のVersion="0.70β"

命令集フォルダパス=母艦のパス&『lib\』
命令集フォルダパスへ、作業フォルダ変更。
護衛艦説明ファイル=『goeikan.txt』

'INIファイルの位置は、ランタイムのパス&『goeikan.ini』
INIファイルの位置は、母艦のパス&『goeikan.ini』
INIファイルの位置から、フォームの位置復元。

INIファイルの位置の、INIファイル開く。
   『PATH』の、『lib』を、INIファイル読む。
   
   もし、(それ="")ならば、
      (命令集フォルダパス=母艦のパス&『lib\』)
      違えば、
      (
      命令集フォルダパス=それ {にセットする}
      )
   『Private』の、『Name』を、INIファイル読む。
   ハンドルネームは、それ。
   『Private』の、『Mail』を、INIファイル読む。
   メールアドレスは、それ。
   『Private』の、『HP』を、INIファイル読む。
   ホームページは、『http://』&それ。
   『Env』の、『DDE』を、INIファイル読む。
   DDEフラグは、それ。
   
   INIファイル閉じる。

母艦の、テキストは、「 命令集追加護衛艦 Version {現在のVersion}」
護衛艦の背景色は、RGB(175,175,220)。

'*初期化処理
護衛艦の背景色で、画面クリア。

ヘルプメニューを、メニュー作成。
その、テキストは、「ヘルプ(&H)」。'...を、...に、設定。と同じ。
ヘルプメニューに、使い方メニューを、メニュー追加。
ヘルプメニューに、情報メニューを、メニュー追加。

使い方メニューの、イベントを、使い方メニュー押下時に、設定。
その、テキストを、「護衛艦の使い方...」に、設定。

情報メニューの、イベントを、情報メニュー押下時に、設定。
その、テキストを、「Version 情報...」に、設定。

命令集表示欄ラベルを、ラベルとして、作成。
その、サイズは、(0,8,220,30)
その、テキストを、「【 命令集一覧 】」に、設定。

命令集表示欄を、リストとして、作成。
その、サイズは、(10,30,220,360)
その、イベントを、命令集選択時に、設定。

内容表示欄ラベルを、ラベルとして、作成。
その、サイズは、(220,8,220,30)
その、テキストを、「【 内容表示欄 】」に、設定。

DDEチェックを、チェックとして、作成。
その、サイズは、(380,10,520,30)
その、テキストを、「DDE送信する」に、設定。
その、背景色は、護衛艦の背景色。
その、イベントは、DDE送信押下時。
その、値は、DDEフラグ。
内容表示欄を、メモとして、作成。
その、サイズは、(230,30,530,360)

処理ラベルを、ラベルとして、作成。
その、サイズは、(540,8,220,30)
その、テキストを、「【 処 理 】」に、設定。

'// 画面作成
貼り付けボタンを、ボタンとして、作成。
その、高さは、30
その、幅は、90
その、テキストを、「貼付(&P)」に、設定。
その、イベントを、貼り付け押下時に、設定

読み込みボタンを、ボタンとして、作成。
その、高さは、30
その、幅は、90
その、テキストを、「読込(&L)」に、設定。
その、イベントを、読み込み押下時に、設定

命令化ボタンを、ボタンとして、作成。
その、高さは、30
その、幅は、90

その、テキストを、「命令化(&E)」に、設定。
その、イベントを、命令化押下時に、設定

命令削除ボタンを、ボタンとして、作成。
その、高さは、30
その、幅は、90
その、テキストを、「削除(&D)」に、設定。
その、イベントを、命令削除押下時に、設定

ダウンロードボタンを、ボタンとして、作成。
その、高さは、30
その、幅は、90
その、テキストを、「WebDown」に、設定。
その、イベントを、ダウンロード押下時に、設定

アップロードボタンを、ボタンとして、作成。
その、高さは、30
その、幅は、90
その、テキストを、「WebUp」に、設定。
その、イベントを、アップロード押下時に、設定

実行ボタンを、ボタンとして、作成。
その、高さは、30
その、幅は、90
その、テキストを、「実行(&R)」に、設定。
その、イベントを、実行押下時に、設定。

管理ボタンを、ボタンとして、作成。
その、高さは、30
その、幅は、90
その、テキストを、「位置管理」に、設定。
その、イベントを、管理押下時に、設定。

個人ボタンを、ボタンとして、作成。
その、高さは、30
その、幅は、90
その、テキストを、「個人情報」に、設定。
その、イベントを、個人押下時に、設定。

閉じるボタンを、ボタンとして、作成。
その、高さは、30
その、幅は、90
その、テキストを、「閉じる(&Q)」に、設定。
その、イベントを、閉じる押下時に、設定。

母艦の、変更した時を、リフレッシュに、設定。
リフレッシュを、呼ぶ。

命令集表示欄への読み込み処理を、呼ぶ。
閉じる押下時に、終了処理設定。
待機。
'=====================================================================================================
'****************************************** イベント処理群 ******************************************
'=====================================================================================================
*DDE送信押下時
INIファイルの位置の、INIファイル開く。
   それは、DDEチェック。
   『Env』の、『DDE』へ、INIファイル書く。
INIファイル閉じる。

戻る。
*命令集選択時
命令集は、それ。
内容表示欄は、""。
命令集表示欄の、値を、索引に、得る。
(命令集フォルダパス & 命令集全部#索引 & ".hmm")を、読む。

命令集内容は、それ。
内容表示欄は、命令集内容。
戻る。

*貼り付け押下時
挿入命令集は、内容表示欄。
もし、(DDEチェック=1)ならば、(
   "himapad"の、"command"へ、"insert {挿入命令集}" を、DDE送信。
   おわり。)
違えば、
   挿入命令集を、クリップボードへ、書く。
   待機。
)


*読み込み押下時
命令集フォルダパスへ、作業フォルダ変更。
'-- この命令が効かない(前にこの操作をした場所を記憶しているみたい。)

"*"の、 読込ファイル選択
選択ファイルは、それ。
選択ファイルの、要素数。{行数でも、同じ結果です!}

もし(それ=0)ならば、
   待機。
もし(それ=1)ならば、
   読み込みファイルは、選択ファイル#0
もし(それ>1)ならば、
   (
   それは、選択ファイル
   「\n」を、「|」に、置換。
   「選択項目を1つに絞ってください。」が,それの, どれか尋ねる。
   読み込みファイルは、それ。'-- 本当は、選択項目にあるかのチェックが必要!
)
もし、読み込みファイル=""ならば、
   待機。
   
読み込みファイルを、読む。
内容表示欄は、それ。
戻る。
*ダウンロード押下時
「取得したいひまわりプログラムのあるURLを\n入力してください。」を、メモ記入。
ダウンロードURLは、それ。

もし、それ=「」ならば、待機。
それを、『m!http://([^/]+)(/[^\\s]*)!』で、正規表現マッチ。
もし、それ=「」ならば、待機。

今。
『:』を,『』に,置換。
HHMMSSは、それ。
ワークダウンロードファイル=Temp&HHMMSS

ダウンロードURLを、母艦のパス&ワークダウンロードファイルへ、HTTPダウンロード。
母艦のパス&ワークダウンロードファイルを、読む。
取得HTMLは、それ。

「-ひまわりの板-にあるソースの場合は、ソースのみ取得が可能です。
加工処理を行いますか?
(ただし、HTMLタグの切出しを行う為、ソース自体にタグが含まれると、
正しい結果が得られません。)」、と、二択。

もし、(それ=はい)ならば、(
   '// ひまわりの板ならば、以下の操作でソースを切り分ける。
   それは、取得HTML。
   それの、「---投稿フォームここまで---}」から、「記事引用」までの、範囲を切り取る。
   'それの、「{---プログラム掲示板投稿フォーム---」から、「記事引用」までの、範囲を切り取る。
   『<br>』を、「\n」に、置換。
   「記事引用」を、「」に、置換。
   それから、タグ削除。
   『&amp;』を『&』に、置換。
   『&lt;』を『<』に、置換。
   『&gt;』を『>』に、置換。
   『&quot;』を『"』に、置換。
   それの、0行目を、行削除。
   取得HTMLは、それ。)

内容表示欄は、取得HTML。

戻る。
*アップロード押下時
ひまHTML=『
<html><head>
<STYLE TYPE="text/css">
<!--
A:link { text-decoration:none; }
A:visited{ text-decoration:none; }
A:hover { color:#FF9900; text-decoration:underline; }
BODY,TD{ font-family:"MS Pゴシック"; font-size:10pt; }
TH,B { font-family:"MS Pゴシック"; font-size:10pt; }
-->
</STYLE>
<title>ひまわりユーザー プログラム掲示板 バックアップ</title>
<META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=x-sjis"></head>
<body text=#990000 link=#0099ff vlink=#000099 bgcolor=#FFFFFF>
<center>
***** ひまわり <プログラムの板> 専用 U P L O A D E R *****
<ul>
<form action="http://www.text2music.com/cgi/bbs/hiptree/cbbs.cgi" method="POST">
<input type=hidden name=N value=>
<input type=hidden name=mode value=wri>
<input type=hidden name=type value=0>
<input type=hidden name=kiji value=0>
<input type=hidden name=space value=0>
<table>

ひまHTML=ひまHTML&
「<tr><td bgcolor=#FF0000>Name</td><td>/<input type=text name='name' value='{ハンドルネーム}' size=25></td></tr>」&
「<tr><td bgcolor=#FF0000>E-Mail</td><td>/<input type=text name='email' value='{メールアドレス}' size=40></td></tr>」&
「<tr><td bgcolor=#FF0000>Title</td><td>/<input type=text name='d_may' size=40 value=''></td></tr>」&
「<tr><td bgcolor=#FF0000>URL</td><td>/<input type=text name='url' value='{ホームページ}' size=65></td></tr>」

ひまHTML=ひまHTML&『
<tr><td colspan=2 bgcolor=#FF0000>Comment/
通常モード-&gt;<input type=radio name=pre value=0 checked> 
図表モード-&gt;<input type=radio name=pre value=1>
(適当に改行を入れて下さい)<br>

<textarea name="comment" rows=30 cols=75 wrap=soft >
{---プログラム掲示板投稿フォーム---
【ソフト名】xxx (バージョン 1.00)
【作 成 者】xxx (連絡先:xxx)
【種  別】フリーソフトウェア
【ひまわりのバージョン】ver.1.xx
【転  件】可/不可(転載条件:作者にメールで連絡すること/ご自由に)
【ひまわり本体への梱包】可/不可
【実行時に利用作成するファイル】有/無(score_data.ini)
【コメント】
---投稿フォームここまで---}

ひまHTML=ひまHTML& 内容表示欄

ひまHTML=ひまHTML&『
</textarea></td></tr>
<tr><td bgcolor=#FF0000>削除キー</td><td>/
<input type=password name=delkey value="" size=8>
<small>(半角8文字以内)</small> 
<input type=submit value=" 送 信 ">
<input type=reset value="リセット"></td></tr></table></form></ul>
</center>
</form>
</body></html>

ひまHTMLを、母艦のパス&『himahtml.htm』へ、書く。
母艦のパス&『himahtml.htm』を、起動。
戻る。
*命令化押下時
"登録する命令集の名前"と, 尋ねる。

登録命令集名は、それ。

もし(登録命令集名={キャンセル}"")ならば、
   待機。
   
選択登録ファイル名は、登録命令集名 & ".hmm"
(命令集フォルダパス & 選択登録ファイル名)が、存在するか。

もし、(それ<>0)ならば、
   ("以前に作成された命令集を上書きしますが、よろしいですか?"と、二択。
   もし、(それ=0)ならば、命令化押下時へ、飛ぶ。   
   )
'-- 保存処理   
それは、内容表示欄。
(命令集フォルダパス & 選択登録ファイル名)へ、保存。
命令集表示欄への読み込み処理を、呼ぶ。
待機。

*命令削除押下時
命令集表示欄の、値を、削除索引に、得る。

もし、削除索引が、-1{選択されてない・・・}ならば、
   (
   それは、命令集全部。
   「削除する命令を、1つ選択してください。」が,それの, どれか尋ねる。
   削除対象は、それ。
   )
違えば、{選択れていれば・・・}
   (
   削除対象は、命令集全部#削除索引。
   )
   
もし、削除対象が、"" ならば、待機。
   
(命令集フォルダパス&削除対象& ".hmm")を、ファイル削除。
命令集表示欄への読み込み処理を、呼ぶ。
待機。

*管理押下時
命令集フォルダパスへ、作業フォルダ変更。
フォルダ選択。

もし、(それ="")ならば、待機。

INIファイルの位置の、INIファイル開く。
『PATH』の、『lib』へ、INIファイル書く。
INIファイル閉じる。

命令集フォルダパスは、それ。
母艦の、テキストは、「 命令集追加護衛艦」
命令集表示欄への読み込み処理を、呼ぶ。
待機。

*個人押下時
「個人情報の設定を行いますか?
(既にデータが存在するときは、上書きします。)」と、二択。
もし(それ=いいえ)ならば、待機。

INIファイルの位置の、INIファイル開く。
   「あなたの名前(ハンドルネーム)は?」と、尋ねる。
   『Private』の、『Name』へ、INIファイル書く。
   「あなたのE-Mail は?」と、尋ねる。
   『Private』の、『Mail』へ、INIファイル書く。
   「あなたのHomePage は?」と、尋ねる。
   『Private』の、『HP』へ、INIファイル書く。
INIファイル閉じる。
「個々で登録された情報は、必要に応じてWeb上に公開します。
望まない場合は、再度個人情報を設定してください。」と、言う。

戻る。
*実行押下時
'内容表示欄を、ひまわりする。
'// ひまわりによる実行方式に変更する。
今。
『:』を,『』に,置換。
HHMMSSは、それ。
ワーク実行ファイル=Temp&HHMMSS&『.hmw』
それは、内容表示欄。
母艦のパス&ワーク実行ファイルへ、書く。
母艦のパス&ワーク実行ファイルを、起動して終了まで待機。

母艦のパス&ワーク実行ファイルを,ファイル削除。
待機。

*閉じる押下時
母艦元のサイズ。
INIファイルの位置へ、フォームの位置記録。

おわり。

*使い方メニュー押下時
『護衛艦の使い方.hmw』を、起動。

待機。
*情報メニュー押下時
'護衛艦説明ファイルが,存在するか。 -- 「存在するか。」で、相対パスが利用できない!
母艦のパス&護衛艦説明ファイルが,存在するか。
もし、(それ<>0)ならば、
   (
      護衛艦説明ファイルを,読む。
      ヘルプテキストは、それ。
      ヘルプテキストの、「#2」から、「#3」までの,範囲を切り取る。
      ヘルプテキストの、0行目を、行削除。
      それを、言う。
   )違えば、
   (
   「****** Presented by senkun ***** 」と、言う。
)
戻る。

'==================================================================================================
'****************************************** その他処理群 ******************************************
'==================================================================================================
*命令集表示欄への読み込み処理
命令集表示欄の、アイテムを、""に、設定。
内容表示欄=""

'//--○拡張子取り除いて表示。20011017 ADD
命令集フォルダパス&『*.hmm』の,ファイル列挙。
ファイル全部は、それ。
正=0
命令集全部=""
ファイル全部を、反復(   
   列挙ファイル名は、それ。
   それから,拡張子を切り出す。。
'-- 拡張子hmmのものだけを格納。
   列挙ファイル名から、4文字、右端を切り取る。
   命令集全部#正は、列挙ファイル名。
   正は、正+1。
'   *次の周回
)

命令集表示欄の、アイテムを、命令集全部に、設定。
戻る。

*リフレッシュ
'// リサイズに対応。
'-- とりあえずできたけど、画面部品もうちょっと考えて作るべし!
護衛艦の背景色で、画面クリア。
母艦の、Xを、母艦のXに、得る。
母艦の、Yを、母艦のYに、得る。

母艦の、幅を、 母艦の幅に、得る。
母艦の、高さを、母艦の高さに、得る。
ボタンの幅は、90。
処理ラベルの、 Xは、(母艦の幅 -188+ボタンの幅)
貼り付けボタンの、Xは、(母艦の幅 -188+ボタンの幅)
読み込みボタンの、Xは、(母艦の幅 -188+ボタンの幅)
ダウンロードボタンの、Xは、(母艦の幅 -188+ボタンの幅)
アップロードボタンの、Xは、(母艦の幅 -188+ボタンの幅)
命令化ボタンの、 Xは、(母艦の幅 -188+ボタンの幅)
命令削除ボタンの、Xは、(母艦の幅 -188+ボタンの幅)
管理ボタンの、 Xは、(母艦の幅 -188+ボタンの幅)
個人ボタンの、 Xは、(母艦の幅 -188+ボタンの幅)
実行ボタンの、 Xは、(母艦の幅 -188+ボタンの幅)
閉じるボタンの、 Xは、(母艦の幅 -188+ボタンの幅)
閉じるボタンの、 Yは、(母艦の高さ -50)

内容表示欄の、サイズは、(230,30,(母艦の幅-188+ボタンの幅-10),0)

命令集表示欄の、高さは、(母艦の高さ -50)。
内容表示欄の、 高さは、(母艦の高さ -50)。

'// 最低サイズの設定
母艦の、幅を、 母艦の幅に、得る。
母艦の、高さを、母艦の高さに、得る。
もし、(母艦の幅<640)ならば、母艦の、幅を、640に、設定。
もし、(母艦の高さ<480)ならば、母艦の、高さを、480に、設定。

'INIファイルの位置へ、フォームの位置記録。

戻る。




▲[ 362 ] / 返信無し
NO.533  命令集追加護衛艦(バージョン 0.70β)
□投稿者/ senkun -(2002/02/27(Wed) 00:30:29)
□U R L/
現在、アップロード機能に不具合が多少ありますが、調査中です。



▲[ 362 ] / 返信無し
NO.559  感想
□投稿者/ クジラ飛行机 -(2002/03/03(Sun) 20:08:44)
□U R L/ http://www.text2music.com
細かい機能が、少しずつ追加されて、良い感じですね!
βが取れて、本体に収録しても良い場合は、一声かけてくださいね!



▲[ 362 ] / 返信無し
NO.717  命令集追加護衛艦(バージョン 0.70)
□投稿者/ senkun -(2002/04/06(Sat) 13:23:07)
□U R L/
{---プログラム掲示板投稿フォーム---
【ソフト名】命令集追加護衛艦(バージョン 0.70)
【作 成 者】senkun
【種  別】フリーソフトウェア
【ひまわりのバージョン】ver.1.22
【転  件】可(転載条件:ご連絡があると幸いです!)
【ひまわり本体への梱包】可
【実行時に利用作成するファイル】有
【コメント】βをつけたままで、忘れていました。制限はありますが、
0.70としては、正式Upします。
ただし、ほとんどそのままのUpです。すいません。
確認済みの制限事項
WebDown :最近URLをだけをUpされる方が多いので、そのページは
非対応です。

---投稿フォームここまで---}

現在のVersion="0.70"

命令集フォルダパス=母艦のパス&『lib\』
命令集フォルダパスへ、作業フォルダ変更。
護衛艦説明ファイル=『goeikan.txt』

'INIファイルの位置は、ランタイムのパス&『goeikan.ini』
INIファイルの位置は、母艦のパス&『goeikan.ini』
INIファイルの位置から、フォームの位置復元。

INIファイルの位置の、INIファイル開く。
   『PATH』の、『lib』を、INIファイル読む。
   
   もし、(それ="")ならば、
      (命令集フォルダパス=母艦のパス&『lib\』)
      違えば、
      (
      命令集フォルダパス=それ {にセットする}
      )
   『Private』の、『Name』を、INIファイル読む。
   ハンドルネームは、それ。
   『Private』の、『Mail』を、INIファイル読む。
   メールアドレスは、それ。
   『Private』の、『HP』を、INIファイル読む。
   ホームページは、『http://』&それ。
   『Env』の、『DDE』を、INIファイル読む。
   DDEフラグは、それ。
   
   INIファイル閉じる。

母艦の、テキストは、「 命令集追加護衛艦 Version {現在のVersion}」
護衛艦の背景色は、RGB(175,175,220)。

'*初期化処理
護衛艦の背景色で、画面クリア。

ヘルプメニューを、メニュー作成。
その、テキストは、「ヘルプ(&H)」。'...を、...に、設定。と同じ。
ヘルプメニューに、使い方メニューを、メニュー追加。
ヘルプメニューに、情報メニューを、メニュー追加。

使い方メニューの、イベントを、使い方メニュー押下時に、設定。
その、テキストを、「護衛艦の使い方...」に、設定。

情報メニューの、イベントを、情報メニュー押下時に、設定。
その、テキストを、「Version 情報...」に、設定。

命令集表示欄ラベルを、ラベルとして、作成。
その、サイズは、(0,8,220,30)
その、テキストを、「【 命令集一覧 】」に、設定。

命令集表示欄を、リストとして、作成。
その、サイズは、(10,30,220,360)
その、イベントを、命令集選択時に、設定。

内容表示欄ラベルを、ラベルとして、作成。
その、サイズは、(220,8,220,30)
その、テキストを、「【 内容表示欄 】」に、設定。

DDEチェックを、チェックとして、作成。
その、サイズは、(380,10,520,30)
その、テキストを、「DDE送信する」に、設定。
その、背景色は、護衛艦の背景色。
その、イベントは、DDE送信押下時。
その、値は、DDEフラグ。
内容表示欄を、メモとして、作成。
その、サイズは、(230,30,530,360)

処理ラベルを、ラベルとして、作成。
その、サイズは、(540,8,220,30)
その、テキストを、「【 処 理 】」に、設定。

'// 画面作成
貼り付けボタンを、ボタンとして、作成。
その、高さは、30
その、幅は、90
その、テキストを、「貼付(&P)」に、設定。
その、イベントを、貼り付け押下時に、設定

読み込みボタンを、ボタンとして、作成。
その、高さは、30
その、幅は、90
その、テキストを、「読込(&L)」に、設定。
その、イベントを、読み込み押下時に、設定

命令化ボタンを、ボタンとして、作成。
その、高さは、30
その、幅は、90

その、テキストを、「命令化(&E)」に、設定。
その、イベントを、命令化押下時に、設定

命令削除ボタンを、ボタンとして、作成。
その、高さは、30
その、幅は、90
その、テキストを、「削除(&D)」に、設定。
その、イベントを、命令削除押下時に、設定

ダウンロードボタンを、ボタンとして、作成。
その、高さは、30
その、幅は、90
その、テキストを、「WebDown」に、設定。
その、イベントを、ダウンロード押下時に、設定

アップロードボタンを、ボタンとして、作成。
その、高さは、30
その、幅は、90
その、テキストを、「WebUp」に、設定。
その、イベントを、アップロード押下時に、設定

実行ボタンを、ボタンとして、作成。
その、高さは、30
その、幅は、90
その、テキストを、「実行(&R)」に、設定。
その、イベントを、実行押下時に、設定。

管理ボタンを、ボタンとして、作成。
その、高さは、30
その、幅は、90
その、テキストを、「位置管理」に、設定。
その、イベントを、管理押下時に、設定。

個人ボタンを、ボタンとして、作成。
その、高さは、30
その、幅は、90
その、テキストを、「個人情報」に、設定。
その、イベントを、個人押下時に、設定。

閉じるボタンを、ボタンとして、作成。
その、高さは、30
その、幅は、90
その、テキストを、「閉じる(&Q)」に、設定。
その、イベントを、閉じる押下時に、設定。

母艦の、変更した時を、リフレッシュに、設定。
リフレッシュを、呼ぶ。

命令集表示欄への読み込み処理を、呼ぶ。
閉じる押下時に、終了処理設定。
待機。
'=====================================================================================================
'****************************************** イベント処理群 ******************************************
'=====================================================================================================
*DDE送信押下時
INIファイルの位置の、INIファイル開く。
   それは、DDEチェック。
   『Env』の、『DDE』へ、INIファイル書く。
INIファイル閉じる。

戻る。
*命令集選択時
命令集は、それ。
内容表示欄は、""。
命令集表示欄の、値を、索引に、得る。
(命令集フォルダパス & 命令集全部#索引 & ".hmm")を、読む。

命令集内容は、それ。
内容表示欄は、命令集内容。
戻る。

*貼り付け押下時
挿入命令集は、内容表示欄。
もし、(DDEチェック=1)ならば、(
   "himapad"の、"command"へ、"insert {挿入命令集}" を、DDE送信。
   おわり。)
違えば、
   挿入命令集を、クリップボードへ、書く。
   待機。
)


*読み込み押下時
命令集フォルダパスへ、作業フォルダ変更。
'-- この命令が効かない(前にこの操作をした場所を記憶しているみたい。)

"*"の、 読込ファイル選択
選択ファイルは、それ。
選択ファイルの、要素数。{行数でも、同じ結果です!}

もし(それ=0)ならば、
   待機。
もし(それ=1)ならば、
   読み込みファイルは、選択ファイル#0
もし(それ>1)ならば、
   (
   それは、選択ファイル
   「\n」を、「|」に、置換。
   「選択項目を1つに絞ってください。」が,それの, どれか尋ねる。
   読み込みファイルは、それ。'-- 本当は、選択項目にあるかのチェックが必要!
)
もし、読み込みファイル=""ならば、
   待機。
   
読み込みファイルを、読む。
内容表示欄は、それ。
戻る。
*ダウンロード押下時
「取得したいひまわりプログラムのあるURLを\n入力してください。」を、メモ記入。
ダウンロードURLは、それ。

もし、それ=「」ならば、待機。
それを、『m!http://([^/]+)(/[^\\s]*)!』で、正規表現マッチ。
もし、それ=「」ならば、待機。

今。
『:』を,『』に,置換。
HHMMSSは、それ。
ワークダウンロードファイル=Temp&HHMMSS

ダウンロードURLを、母艦のパス&ワークダウンロードファイルへ、HTTPダウンロード。
母艦のパス&ワークダウンロードファイルを、読む。
取得HTMLは、それ。

「-ひまわりの板-にあるソースの場合は、ソースのみ取得が可能です。
加工処理を行いますか?
(ただし、HTMLタグの切出しを行う為、ソース自体にタグが含まれると、
正しい結果が得られません。)」、と、二択。

もし、(それ=はい)ならば、(
   '// ひまわりの板ならば、以下の操作でソースを切り分ける。
   それは、取得HTML。
   それの、「---投稿フォームここまで---}」から、「記事引用」までの、範囲を切り取る。
   'それの、「{---プログラム掲示板投稿フォーム---」から、「記事引用」までの、範囲を切り取る。
   『<br>』を、「\n」に、置換。
   「記事引用」を、「」に、置換。
   それから、タグ削除。
   『&amp;』を『&』に、置換。
   『&lt;』を『<』に、置換。
   『&gt;』を『>』に、置換。
   『&quot;』を『"』に、置換。
   それの、0行目を、行削除。
   取得HTMLは、それ。)

内容表示欄は、取得HTML。

戻る。
*アップロード押下時
ひまHTML=『
<html><head>
<STYLE TYPE="text/css">
<!--
A:link { text-decoration:none; }
A:visited{ text-decoration:none; }
A:hover { color:#FF9900; text-decoration:underline; }
BODY,TD{ font-family:"MS Pゴシック"; font-size:10pt; }
TH,B { font-family:"MS Pゴシック"; font-size:10pt; }
-->
</STYLE>
<title>ひまわりユーザー プログラム掲示板 バックアップ</title>
<META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=x-sjis"></head>
<body text=#990000 link=#0099ff vlink=#000099 bgcolor=#FFFFFF>
<center>
***** ひまわり <プログラムの板> 専用 U P L O A D E R *****
<ul>
<form action="http://www.text2music.com/cgi/bbs/hiptree/cbbs.cgi" method="POST">
<input type=hidden name=N value=>
<input type=hidden name=mode value=wri>
<input type=hidden name=type value=0>
<input type=hidden name=kiji value=0>
<input type=hidden name=space value=0>
<table>

ひまHTML=ひまHTML&
「<tr><td bgcolor=#FF0000>Name</td><td>/<input type=text name='name' value='{ハンドルネーム}' size=25></td></tr>」&
「<tr><td bgcolor=#FF0000>E-Mail</td><td>/<input type=text name='email' value='{メールアドレス}' size=40></td></tr>」&
「<tr><td bgcolor=#FF0000>Title</td><td>/<input type=text name='d_may' size=40 value=''></td></tr>」&
「<tr><td bgcolor=#FF0000>URL</td><td>/<input type=text name='url' value='{ホームページ}' size=65></td></tr>」

ひまHTML=ひまHTML&『
<tr><td colspan=2 bgcolor=#FF0000>Comment/
通常モード-&gt;<input type=radio name=pre value=0 checked> 
図表モード-&gt;<input type=radio name=pre value=1>
(適当に改行を入れて下さい)<br>

<textarea name="comment" rows=30 cols=75 wrap=soft >
{---プログラム掲示板投稿フォーム---
【ソフト名】xxx (バージョン 1.00)
【作 成 者】xxx (連絡先:xxx)
【種  別】フリーソフトウェア
【ひまわりのバージョン】ver.1.xx
【転  件】可/不可(転載条件:作者にメールで連絡すること/ご自由に)
【ひまわり本体への梱包】可/不可
【実行時に利用作成するファイル】有/無(score_data.ini)
【コメント】
---投稿フォームここまで---}

それは、内容表示欄
   『&』を、『&amp;』に、置換。
   『<』を、『&lt;』に、置換。
   『>』を、『&gt;』に、置換。
   『"』を、『&quot;』に、置換。
内容表示欄は、それ。
ひまHTML=ひまHTML& 内容表示欄

ひまHTML=ひまHTML&『
</textarea></td></tr>
<tr><td bgcolor=#FF0000>削除キー</td><td>/
<input type=password name=delkey value="" size=8>
<small>(半角8文字以内)</small> 
<input type=submit value=" 送 信 ">
<input type=reset value="リセット"></td></tr></table></form></ul>
</center>
</form>
</body></html>

ひまHTMLを、母艦のパス&『himahtml.htm』へ、書く。
母艦のパス&『himahtml.htm』を、起動。
戻る。
*命令化押下時
"登録する命令集の名前"と, 尋ねる。

登録命令集名は、それ。

もし(登録命令集名={キャンセル}"")ならば、
   待機。
   
選択登録ファイル名は、登録命令集名 & ".hmm"
(命令集フォルダパス & 選択登録ファイル名)が、存在するか。

もし、(それ<>0)ならば、
   ("以前に作成された命令集を上書きしますが、よろしいですか?"と、二択。
   もし、(それ=0)ならば、命令化押下時へ、飛ぶ。   
   )
'-- 保存処理   
それは、内容表示欄。
(命令集フォルダパス & 選択登録ファイル名)へ、保存。
命令集表示欄への読み込み処理を、呼ぶ。
待機。

*命令削除押下時
命令集表示欄の、値を、削除索引に、得る。

もし、削除索引が、-1{選択されてない・・・}ならば、
   (
   それは、命令集全部。
   「削除する命令を、1つ選択してください。」が,それの, どれか尋ねる。
   削除対象は、それ。
   )
違えば、{選択れていれば・・・}
   (
   削除対象は、命令集全部#削除索引。
   )
   
もし、削除対象が、"" ならば、待機。
   
(命令集フォルダパス&削除対象& ".hmm")を、ファイル削除。
命令集表示欄への読み込み処理を、呼ぶ。
待機。

*管理押下時
命令集フォルダパスへ、作業フォルダ変更。
フォルダ選択。

もし、(それ="")ならば、待機。

INIファイルの位置の、INIファイル開く。
『PATH』の、『lib』へ、INIファイル書く。
INIファイル閉じる。

命令集フォルダパスは、それ。
母艦の、テキストは、「 命令集追加護衛艦」
命令集表示欄への読み込み処理を、呼ぶ。
待機。

*個人押下時
「個人情報の設定を行いますか?
(既にデータが存在するときは、上書きします。)」と、二択。
もし(それ=いいえ)ならば、待機。

INIファイルの位置の、INIファイル開く。
   「あなたの名前(ハンドルネーム)は?」と、尋ねる。
   『Private』の、『Name』へ、INIファイル書く。
   「あなたのE-Mail は?」と、尋ねる。
   『Private』の、『Mail』へ、INIファイル書く。
   「あなたのHomePage は?」と、尋ねる。
   『Private』の、『HP』へ、INIファイル書く。
INIファイル閉じる。
「個々で登録された情報は、必要に応じてWeb上に公開します。
望まない場合は、再度個人情報を設定してください。」と、言う。

戻る。
*実行押下時
'内容表示欄を、ひまわりする。
'// ひまわりによる実行方式に変更する。
'今。
'『:』を,『』に,置換。
'HHMMSSは、それ。
'ワーク実行ファイル=Temp&HHMMSS&『.hmw』
ワーク実行ファイル=「TempRun」&『.hmw』

それは、内容表示欄。
母艦のパス&ワーク実行ファイルへ、書く。
母艦のパス&ワーク実行ファイルを、起動して終了まで待機。

母艦のパス&ワーク実行ファイルを,ファイル削除。
待機。

*閉じる押下時
母艦元のサイズ。
INIファイルの位置へ、フォームの位置記録。

おわり。

*使い方メニュー押下時
『護衛艦の使い方.hmw』を、起動。

待機。
*情報メニュー押下時
'護衛艦説明ファイルが,存在するか。 -- 「存在するか。」で、相対パスが利用できない!
母艦のパス&護衛艦説明ファイルが,存在するか。
もし、(それ<>0)ならば、
   (
      護衛艦説明ファイルを,読む。
      ヘルプテキストは、それ。
      ヘルプテキストの、「#2」から、「#3」までの,範囲を切り取る。
      ヘルプテキストの、0行目を、行削除。
      それを、言う。
   )違えば、
   (
   「****** Presented by senkun ***** 」と、言う。
)
戻る。

'==================================================================================================
'****************************************** その他処理群 ******************************************
'==================================================================================================
*命令集表示欄への読み込み処理
命令集表示欄の、アイテムを、""に、設定。
内容表示欄=""

'//--○拡張子取り除いて表示。20011017 ADD
命令集フォルダパス&『*.hmm』の,ファイル列挙。
ファイル全部は、それ。
正=0
命令集全部=""
ファイル全部を、反復(   
   列挙ファイル名は、それ。
   それから,拡張子を切り出す。。
'-- 拡張子hmmのものだけを格納。
   列挙ファイル名から、4文字、右端を切り取る。
   命令集全部#正は、列挙ファイル名。
   正は、正+1。
'   *次の周回
)

命令集表示欄の、アイテムを、命令集全部に、設定。
戻る。

*リフレッシュ
'// リサイズに対応。
'-- とりあえずできたけど、画面部品もうちょっと考えて作るべし!
護衛艦の背景色で、画面クリア。
母艦の、Xを、母艦のXに、得る。
母艦の、Yを、母艦のYに、得る。

母艦の、幅を、 母艦の幅に、得る。
母艦の、高さを、母艦の高さに、得る。
ボタンの幅は、90。
処理ラベルの、 Xは、(母艦の幅 -188+ボタンの幅)
貼り付けボタンの、Xは、(母艦の幅 -188+ボタンの幅)
読み込みボタンの、Xは、(母艦の幅 -188+ボタンの幅)
ダウンロードボタンの、Xは、(母艦の幅 -188+ボタンの幅)
アップロードボタンの、Xは、(母艦の幅 -188+ボタンの幅)
命令化ボタンの、 Xは、(母艦の幅 -188+ボタンの幅)
命令削除ボタンの、Xは、(母艦の幅 -188+ボタンの幅)
管理ボタンの、 Xは、(母艦の幅 -188+ボタンの幅)
個人ボタンの、 Xは、(母艦の幅 -188+ボタンの幅)
実行ボタンの、 Xは、(母艦の幅 -188+ボタンの幅)
閉じるボタンの、 Xは、(母艦の幅 -188+ボタンの幅)
閉じるボタンの、 Yは、(母艦の高さ -50)

内容表示欄の、サイズは、(230,30,(母艦の幅-188+ボタンの幅-10),0)

命令集表示欄の、高さは、(母艦の高さ -50)。
内容表示欄の、 高さは、(母艦の高さ -50)。

'// 最低サイズの設定
母艦の、幅を、 母艦の幅に、得る。
母艦の、高さを、母艦の高さに、得る。
もし、(母艦の幅<640)ならば、母艦の、幅を、640に、設定。
もし、(母艦の高さ<480)ならば、母艦の、高さを、480に、設定。

'INIファイルの位置へ、フォームの位置記録。

戻る。



- Child Tree -