Giraffe+ 0.5.37.528
前リリースからの変化
- コマンド起動後のウインドウを隠す処理がおかしくなってたのを修正
- doc\object_tree.xmlでconstをconstとして表示するようにした
- 定数オブジェクトの内部式を文字列化した場合にリテラルにならないようにした
- NULL文字のto_Stringは空文字を返すようにした
- Windows_LPCTSTR等の@typeにChar等のメソッドが無駄にコピーされていたのを修正
- doc\giraffe-mode.lを書き直した
- settings\setup\http-iconが.icoで終わるURLを無視していたのを修正
- Giraffe.ListBox.eachを定義した
- Regex_iterator.scanを定義した
- Ctrl+Shift+DeleteがUnicodeファイルの削除に失敗していたのを修正
コマンド起動後のウインドウを隠す処理がおかしくなってたのを修正
GetEventがMethodを返すようになり、それがifの第一引数となった結果、to_Boolを持たないMethodは常にfalseを返すということになっていたようです。
Method.to_Boolを定義しました。インスタンスが無い場合のみfalseを返します。
doc\object_tree.xmlでconstをconstとして表示するようにした
例えばWindows_LPCTSTRはTchar constのポインタですが、それがTcharのポインタのように表現されていました。
NULL文字のto_Stringは空文字を返すようにした
NULL一文字の文字列を返していましたが、その結果、NULL文字を含むエラーダイアログで文字列が中断していました。
Windows_LPCTSTR等の@typeにChar等のメソッドが無駄にコピーされていたのを修正
Char.constizeしたものを持たせていたわけですが、constizeはcopy.constize!なので、スロットもコピーされていました。
Char.clone.constize!するようにしました。
doc\giraffe-mode.lを書き直した
ずっと放置してましたが、急に思い立ってやりました。やっと新言語に対応した自動インデントができるようになりました。
Giraffe.ListBox.eachを定義した
スクリプトで適当に実装しました。Script\GiraffeListBox.giraffeです。
使用例:
//リストボックスの文字列を全て大文字化 Giraffe.ListBox.each& `item[ item.SetText(item.Text.to_upper) ] Giraffe.ListBox.RedrawWindow
このイテレータの実質は単なるUintです。それにメソッドを定義してそれっぽくしてるだけです。