プラグイン対応にしたわけ
当初はカレンダーや時計はプラグインではなく、CFusenに内包していました。 たまたま図書館で借りたLuaの本を見て、CFusenにLuaの機能を 取り込みたいと考えました(Pascal好きですので)、 ただほとんどの人はそこまでの 機能は求めているわけではないので、いろんな機能を追加していくと CFusenのファイルサイズも肥大化していく事は明白でした、 ですので、思い切ってプラグイン化を取り入れました。 C#でのプラグイン化は思っていたより簡単で、 C#のインターフェースを使えば、他の人に開発してもらえるように することも簡単にできる事がわかりました。
プラグイン化するとCFusenの機能を無計画には呼び出せなくなることと、 デバックがやりにくくなる事がありましたが、 メリットが大きいです。 またDelphiでのプラグインのデバックよりはC#の方がやりやすいと感じました。
最も気に入っているプラグインは実はLua計算器です。 数字だけ何行もあって、その合計だけ知りたいというのはよくあることです。 Excelが立ち上がってればよいですが、電卓ソフトであまりそのような作りのは ないですよね、だったら自分でつくればいいかなって感じでした。 Luaで処理していますので、Luaの数値演算の機能(sin/conなども)や自作の関数 を登録しておくことも可能です。
requireやコメント以外の合計する行の最初の行は
x =
2行目以降は
x = x +
が付加されてLuaに渡されてます。
1
2
3
と入力したとすると
x = 1
x = x + 2
x = x + 3
とLuaに渡されています。