No Such Blog or Diary
素朴な疑問と解決
C# で mmap 使いたいなぁと思って色々調べてたら, Windows だと MapViewOfFile という API だったのね.
それはさておき Marshal.StructToPtr は便利そうだ.
- Comments: 0
- TrackBack (Close): -
GWTのバージョンが上がってた
- 2006-11-22 (Wed)
- プログラミング
TreeItem を in-place に編集しようとテキストボックスを setHTML で指定したらキーボードイベントやらがテキストボックスに送られずまともな編集は不可能.そんなでいろいろ試行錯誤してたら先週 GWT のバージョンが上がってたようで,今度のバージョン (1.2.22) では TreeItem に widget を入れ放題とのこと.
ということで,GWTのTextBoxをつっこんで in-place 編集も可能になった.あとは Ctrl+C, Ctrl+V とかの通常のショートカットを TreeView の編集用にキャッチできれば一通り終了なのだが… ブラウザによって取得できたり出来なかったり2回取れちゃったり… 先は長いかも.まあ,D&D でコピーとか移動とか出来るから必要ないといえば必要ないのだが.
- Comments: 0
- TrackBack (Close): -
TreeItem のドラッグ続き
- 2006-11-21 (Tue)
- プログラミング
どうやら昨日の実装はおかしいらしく子要素をドラッグしても親まで一緒にドラッグしてしまう.ちょいと調べたら子供にイベントが飛ぶ前に親側でイベントが取られていたらしい.ということで,MenuBar の実装を参考にイベントのターゲットが子孫である場合の子要素へのイベント転送を実装.そしたら今度はうまくドラッグできるようになった.当たり前といえば当たり前な原因だったが… WT がUIObject にイベント関係のルーチンを書いてくれてあればこんな面倒は無かったのに…
- Comments: 0
- TrackBack (Close): -
GWTのWidgetのソースを読む
- 2006-11-20 (Mon)
- プログラミング
TreeItem の Drag & Drop を実装しようとしたら TreeItem は Widget でないし,SourcesMouseEvents のインターフェースも実装してないし(基本はWidgetしか実装できない),SourcesMouseEvents も Widget しかリスナに返せない仕様になっている.つーことは,TreeItem にマウスリスナを登録して Drag & Drop をするという単純な話にはならない.結局,前に書いた Drag & Drop の仕組みが SourcesMouseEvents を実装できれば動作するので,無理やり TreeItem に SourcesMouseEvents を実装し,マウスリスナ側には DOM element を共有した Widget (意味無い) を渡すことした.この無理やりな実装を実現するために,GWT の Widget のソースを読む羽目に.ひじゃうにめんどーだ.とにかくドラッグは出来るようになったから良いけど…
- Comments: 0
- TrackBack (Close): -