Giraffe+ 0.5.0.29b

Download
前リリースからの変化
言語部分(gs)

  • expr::nth_literalを、文字列以外のリテラルを無視する仕様にした
  • Object::castを、to_*を呼ぶときにcall_safeするようにした

言語部分以外(Giraffe+)

  • MFC_CListBoxのメンバを全て定義した
  • Giraffe.EditとGiraffe.ListBoxのインターフェース用のメンバを全て定義した
  • String.file_timeを定義(戻り値はcreation, last_access, last_writeをメンバに持ち、それらの型はtime_t)
  • String.file_sizeをFindFirstFileを使うようにした(c:\pagefile.sysとかがこれじゃないと取得できない)
  • view-and-sort:last-modが日時の文字列を比較してたのをちゃんと数値にした
  • アイコンの大きさがListBoxとEditとで違う場合に、テキストの開始位置を合わせるようにした
  • Giraffe.Event.AdjustListBoxPosでListBoxの位置や大きさを自由に変えられるようにした
  • Script/settings/hotkey/SwitchWindow.giraffe(Alt+Tabの代替もどき)を追加

Giraffe.EditとGiraffe.ListBoxを普通に使えるようになりました。
MFCのクラスのスクリプトオブジェクト化はある程度自動でやってるんですが、gs::class_がデフォルト引数に対応したらたぶん今までのを(少しですが)書き直すことになると思うので、GDIオブジェクト等、便利だろうけど当面必要なさそうなものは保留です。MFC_CListBoxはとりあえずGiraffe.ListBoxを終わらせたかったのでやりました。ちなみに、Giraffe.Editの親は仕様も実装もスクリプトC++もCEditじゃないです。
あと、バージョンナンバーのビルドカウントをビルド時に自動でインクリメントするようにしときました。(最後のbの字の意味は、開発版とか「仕様が不安定」版とか、そんな感じです。)