netail.net
自作フリーソフトや,ゲームに関する雑記を公開してます.
日記はソフトウェア工学の論文ネタが中心です.
最近のお知らせ (古いものはこちら)
2002-12-20 古い日記からの変換データ ▲
_ AspectJ ▲
AspectJ のサイトが,いつの間にやらeclipse.org に移動してしまっていた.メーリングリストのアーカイブを見るのにニュースグループのアカウントがいるらしいので,さっそく申請.
_ リンク ▲
アスペクト指向についてリンク集がないかなぁと探してたら,Mix Juice の一杉さんのサイトにあったものを発見.http://staff.aist.go.jp/y-ichisugi/ja/mj/soc.html
関連研究がいっぱいリンクされていて,たいへん参考になる.見習わないといけないかも.
_ Eclipse ▲
落とし穴をひとつ発見.って,AspectJ でないので書く場所がない.
ファイルの絶対パス名から,それがプロジェクト内のどのファイルかを取得しようと,プロジェクト内のファイルを表現するFile(java.io.File ではない)を使って実装しようとしていたのだが,project_root.getFile(filename) で絶対パスを与えてオブジェクトを探しても,実際にはプロジェクト内のものとはみなされない.プロジェクト内部のファイルは標準では相対パスで保存してるためだろうか.
それ自体は特に問題ではなかったのだが,この絶対パスを与えて作った File オブジェクトに対するファイルの絶対パスを受け取る File.getLocation() の戻り値が,与えたはずの元のパスではなく,なぜか Workspaceのディレクトリ + ファイルのフルパスとなるような意味のないパスが生成されてしまっていて,しばらくはまった.たしかに,通常の File は相対パスを格納しているからその実装は分からなくもないが…….
結局,ワークスペースのあるディレクトリの位置をWorkspaceRoot や Project といったオブジェクトが保持していてくれたので,そのディレクトリ分を絶対パスから削って取得することになった.
2003-12-20 古い日記からの変換データ ▲
_ Delphi ▲
ツリービューにて,MouseDown でノードのドラッグ開始処理,DblClick でノードの値編集ダイアログを表示,としていたらダブルクリック操作したときは先に DblClick のメッセージが実行されて(MouseDown はキューに入れられて)ダイアログ表示→戻ってきたらドラッグ開始となってしまう.
普通は MouseUp でドラッグ終了するのだけど,DblClick でダイアログを表示するとダイアログが MouseDown を持っていってツリービュー側に MouseUp が届かなくなるみたい.今回はDblClick時にフラグをセットして回避することにした.
_ Calendar ▲
月曜始まりで表示する機能を実装してみる.元々,グリッドのセル単位で描画していたので,グリッドのセル座標から日付の対応付けを行う関数を修正して,逆に日付から座標を計算していた部分も関数としてくくりだして(一箇所しかなかったけど)修正するだけで無事終了.
実装の都合上,任意の日から週を開始することが可能なのだということが判明したけど,さすがに需要もないだろうし,余計なオプションが増えるのもうれしくないので,「カレンダーを月曜始まりにする」オプションだけを追加.
周期予定まわりのインタフェースを書き直しているのもあと少しで終わりそうだし,1月上旬には確実にリリースできそう.できればもう少し早めたいところではあるけど.