//limemo up for1.5002
!母艦設計=「母艦の可視はオフ」
!APPタイトル=「えっくすめも」
!DTD=「limemo012.dtd」
!データヘッダー=「
]>
」
!データフッター=「」
データベース=「xmlmemo_012.xml」
母艦のタイトルはAPPタイトル
母艦のクライアントHは200
母艦のクライアントWは380
母艦の背景色はウィンドウ背景色
母艦の終了可能は0
母艦を中央移動
更新タイマーとはタイマー
その値は500
機能タブとはタブページ
そのレイアウトは全体
機能タブに「メモ」をタブ追加
機能タブに「リスト」をタブ追加
機能タブの表示タブは0
メモエリアとはメモ
その親部品は機能タブ
そのレイアウトは全体
その文字サイズは10
その文字書体は「MS Pゴシック」
//そのスクロールバーは「縦」
機能タブの表示タブは1
タイトル一覧とはリスト
その親部品は機能タブ
そのレイアウトは全体
「,mf,ファイル(&F)
-,f1,新規(&N),F8,,新規作成
-,f2,クリップボードから取り込み(&I),F7,,新規クリップ
-,fb_1,-,,,
-,f3,削除(&D),F12,,データ削除
-,fb_2,-,,,
-,fx,閉じる(&X),ESC,,終わる
,me,編集(&E)
-,eu,戻す(&Z),Ctrl+Z,,メモエリアをUNDO
-,er,やり直す(&Y),Ctrl+Y,,メモエリアをREDO
-,eb_1,-,,,
-,ea,すべて選択(&A),Ctrl+A,,エリア全選択
-,eb_2,-,,,
-,et,タブ切り替え(&T),Ctrl+SPACE,,タブ切り替え
,mh,ヘルプ(&H)
-,h1,{APPタイトル}について(&A),,,アバウト」をメニュー一括作成
母艦の閉じた時は〜
新規作成
メインデータをデータベースにデータベース書き込み
母艦の終了可能は1
終わり
タイトル一覧のダブルクリックした時は〜
「{タイトル一覧の値}」のログ読み込み
タイトル一覧のキー離した時は〜
もし、タイトル一覧の押された仮想キーが13ならば、
「{タイトル一覧の値}」のログ読み込み
メモエリアの変更した時は〜
機能タブの表示タブは0。
編集フラグ=1
更新タイマーの時満ちた時は〜
タイトル更新
更新タイマーの開始
メモエリアに注目
母艦の可視はオン
描画処理反映
データベース読み込み
新規作成
●データベース読み込み
もし((データベースが存在するか)=0)ならば
データヘッダー&データフッターをデータベースへ保存。
メモDB=データベースを開く
メインデータ=メモDBから「memo-list」のタグ切り出し
メインデータ=メインデータの「」を「」に置換
メインデータ=メインデータの「」を「」に置換
リスト初期化
●ログ読み込み(Sの)
もしS>-1ならば
メモID2=IDリスト[S]
日付2=日付リスト[S]
新規作成
メモID=メモID2
日付=日付2
メモIDのデータロード
●データロード(Sの)
IDリストを反復
もしそれ=「{S}」ならば
メモエリア=メモリスト[回数-1]のタグ還元
タイトル一覧の値は(回数-1)
抜ける
編集フラグ=0
新規フラグ=0
●新規クリップ
新規作成
メモエリア=クリップボード取得
●エリア全選択
機能タブの表示タブは0。
メモエリアを全選択。
●タブ切り替え
もし(機能タブの表示タブ=0)ならば
機能タブの表示タブは1
違えば、
機能タブの表示タブは0
●新規作成
もし((メモエリア !=「」)&&(編集フラグ=1))ならば、データベース更新
リスト初期化
メモID=0
もしIDリストが空でなければ
メモID=((IDリストの配列最大値)+1)
日付=今日&「 」&今
現在記事数=日付
編集記事=現在記事数
タイトル一覧のアイテムはタイトルリスト
機能タブの表示タブは0
メモエリア=「」
編集フラグ=0
新規フラグ=1
●タイトル更新
バッファ=メモエリア
バッファ=バッファの「{\n}」まで切り取る
もし、バッファが空ならば、バッファは日付
メモタイトル=バッファ
もし((新規フラグ=0)&&(編集フラグ=1))ならば、
母艦は「"{バッファ}..."* - {APPタイトル}」
違えばもし((新規フラグ=0)&&(編集フラグ=0))ならば
母艦は「"{バッファ}..." - {APPタイトル}」
違えばもし((新規フラグ=1)&&(編集フラグ=1))ならば
母艦は「新規"{バッファ}..."* - {APPタイトル}」
違えば
母艦は「新規 - {APPタイトル}」
母艦ステータス=「ID:{メモID} - {日付}」
●データベース更新
もし新規フラグが1ならば、
メインデータにメモエリアをXML要素追加
違えば、
メモIDのメモエリアでメインデータをXML要素変更
●データ削除
「メモID:{メモID}番の記事、{~}”{メモタイトル}”を削除します。{~}よろしいですか?」と二択
もし、((それ=はい)&&(新規フラグ=0))ならば
メインデータのメモIDをXML要素削除
メモエリア=「」
新規作成
違えば、もし、(それ=はい)ならば
メモエリア=「」
新規作成
●リスト初期化
IDリスト=メインデータの「memo/id」をXMLリスト作成
タイトルリスト=メインデータの「memo/title」をXMLリスト作成
日付リスト=メインデータの「memo/date」をXMLリスト作成
メモリスト=メインデータの「memo/text」をXMLリスト作成
IDリスト=IDリストのタグ削除
タイトルリスト=タイトルリストのタグ削除
タイトルリスト=タイトルリストのタグ改行なし還元
日付リスト=日付リストのタグ削除
メモリスト=メモリストの「」を「」に置換
●タグ置換({参照渡し}Sの)
S=Sの「&」を「&」に置換
S=Sの「<」を「<」に置換
S=Sの「>」を「>」に置換
S=Sの「,」を「,」に置換
S=Sの「{\t}」を「&tab;」に置換
S=Sの「{\n}」を「&br;」に置換
Sを戻す
●タグ還元({参照渡し}Sの)
S=Sの「&br;」を「{\n}」に置換
S=Sの「&tab;」を「{\t}」に置換
S=Sの「,」を「,」に置換
S=Sの「<」を「<」に置換
S=Sの「>」を「>」に置換
S=Sの「&」を「&」に置換
Sを戻す
●タグ改行なし還元({参照渡し}Sの)
S=Sの「&br;」を「」に置換
S=Sの「&tab;」を「」に置換
S=Sの「,」を「,」に置換
S=Sの「<」を「<」に置換
S=Sの「>」を「>」に置換
S=Sの「&」を「&」に置換
Sを戻る
●XMLリスト作成({参照渡し}SのAを)
B=SからAの階層タグ切り出し
B=Bの「{\n}」を「」に置換
B=Bの「*>」を「{\n}」にワイルドカード置換
Bを戻す
●XML要素変更(Sの{参照渡し}Aで{参照渡し}Bを)
IDリストを反復
もし、それ=「{S}」ならば
メモリスト[回数-1]=Aのタグ置換
タイトルリスト[回数-1]=メモタイトルのタグ置換
日付リスト[回数-1]=日付
抜ける
B=「」
IDリストを反復
B=「{B}{~}{~} {それ}{~} {タイトルリスト[回数-1]}{~} {日付リスト[回数-1]}{~} {メモリスト[回数-1]}{~}{~}」
●XML要素削除({参照渡し}SのAを)
IDリストを反復
もしそれ=「{A}」ならば
IDリスト[回数-1]=「」
メモリスト[回数-1]=「」
タイトルリスト[回数-1]=「」
日付リスト[回数-1]=「」
抜ける
S=「」
IDリストを反復
もしそれ !=「」ならば
S=「{S}{~}{~} {それ}{~} {タイトルリスト[回数-1]}{~} {日付リスト[回数-1]}{~} {メモリスト[回数-1]}{~}{~}」
●XML要素追加({参照渡し}Sに{参照渡し}Aを)
A=Aのタグ置換
B=メモタイトルのタグ置換
もしBが空ならば
Bは日付
S=「{~}{~} {メモID}{~} {B}{~} {日付}{~} {A}{~}{~}{S}」
●データベース書き込み({参照渡し}SをAに)
B=「{データヘッダー}{S}{データフッター}」
BをAに保存。
Aが存在
もしそれが0ならば
「保存失敗」という。
●アバウト
「{APPタイトル}{~}XMLを使ったメモアプリケーション」という