No Such Blog or Diary

«Prev || 1 | 2 | 3 |...| 31 | 32 | 33 |...| 57 | 58 | 59 || Next»

GWTのWidgetのソースを読む

TreeItem の Drag & Drop を実装しようとしたら TreeItem は Widget でないし,SourcesMouseEvents のインターフェースも実装してないし(基本はWidgetしか実装できない),SourcesMouseEvents も Widget しかリスナに返せない仕様になっている.つーことは,TreeItem にマウスリスナを登録して Drag & Drop をするという単純な話にはならない.結局,前に書いた Drag & Drop の仕組みが SourcesMouseEvents を実装できれば動作するので,無理やり TreeItem に SourcesMouseEvents を実装し,マウスリスナ側には DOM element を共有した Widget (意味無い) を渡すことした.この無理やりな実装を実現するために,GWT の Widget のソースを読む羽目に.ひじゃうにめんどーだ.とにかくドラッグは出来るようになったから良いけど…

System4.0プレゼン

Alicesoft の System4.0 + SACT2 を使ってプレゼンする.スライド切り替え時のエフェクトを使いたい放題.効果音もやりたい放題.書くスライドでしゃべることはメッセージとして表示.オートも音声付も可能? バックログもあるので前を振り返りやすい.途中画面のスナップショットも取れる.

こまる点:スクリーンサイズが起動時に固定.フルスクリーンにしても解像度が低いと泣ける?

とりあえず,スライドはPDFを画像化->固める,メッセージはテキストファイル->圧縮,音なし,というものは一日で出来た.Java/C++ と近い文法なのでとっつきやすかったし.VMにJITが入ってたり気合入ってるし.スプライトエンジン(など)である SACT2 も使いやすくてありがたい.外部DLLに PDFlib を呼ぶ部分を用意して pdf をダイレクトに読めるようにできるといいなぁ.

Prim と Kruskal のアルゴリズム

Kruskal はソートと union/find があれば出来る.Prim はヒープ(バイナリヒープ)があれば出来る.これだけみると Prim のほうが単純そうなんだけどなぁ… ゼロから実装してみた感じでは Kruskal の方が断然単純だった気がする.実用上はどっちの方が速いのだろうか?

Jをちょっと

折角APLというものの存在を知ったので,その発展である J を少し使えるようになろうかと考えた.J の実行環境としては JSoftwareからインタプリタがダウンロード可能.JAPLA のシンポジウムの資料を見つつ簡単なところからやってみる.

とりあえず,配列の定義. i. という動詞(関数)で 0 から n-1 の要素を持つ長さ n の配列を作る.代入は =: ないし =. とのことで,値の出力は ] とのこと.

  ] D=: i.8
0 1 2 3 4 5 6 7

すでに分かりにくい.

ついで,reduction に手を出してみる.正確には insertion とか言うらしいが… BMF の reduce と同じで左にオペレータを取って配列をぶっ潰す.和を求めるのも簡単.

  sum =: +/
  ] sum D
28

これはまだ分かりやすい.

次に訳の分からん(気がする)動詞の fork 合成を試す.fork は3つの動詞からなり, f g h という fork に引数 x を適用すると (f x) g (h x) とかになるらしい.こんなのどこに使えばいいか良くわからんが,とりあえず平均がこれで書ける.# は要素数を返す演算子で % は割り算(剰余ではないらしい)の演算子.

  mean =: +/%#
  ] mean D
3.5

うーん,微妙に気持ち悪い気がしなくも無い.Lisp の括弧だらけの式を読むのと APL ないし J の式を読むのとどっちが面倒なんだか…

すとーる

うーん,GWT の widget から element を抜き出して javascript に渡した後にその element に対応するもとの widget を知るにはどうしたらよいか? これが出来ないと仕事が進まないので失速中.やっぱ JSNI 使わないほうが楽なのかなぁ…

GWTで

Drag and Drop が標準では実装されてない.マウスイベント取れるから自前で実装できるけれど面倒.Developper forum のほうにコードがあるからもって来ればいいのだがマウスを押したとこからドラッグが始まってくれてもちょっと困るので... 毎度のごとく多少動いたらドラッグ開始に書き換えねば.ついでにドラッグしてるものは半透明にしたいので...

 filter: alpha(opacity=25);
 -moz-opacity:0.25;
 opacity:0.25;

あたりの設定を style に入れときゃいいのかな.先は長い.

«Prev || 1 | 2 | 3 |...| 31 | 32 | 33 |...| 57 | 58 | 59 || Next»
Search
Feeds

Page Top