ど素人のためのど素人によるSqueak入門引越し中

ど素人のためのど素人によるSqueak入門ですが、スパム対策のために長らくコメント投稿を含む書き込みを禁止していましたが(まぁ2年ほどSqueakとは無縁だったわけですが...)、別サイトにてDrupalで再度構築しなおしています。まだまだですが、squeak.sitej.net です。よろしくお願いします。

あー忘却

仕事などの忙しさにかまけて、2年間ほどSqueakから遠ざかってました。1週間前からいじりはじめたが、もうすっかり忘れてます。CMSdrupalに興味もあったんで、いま某所でSqueakとかlinuxとかのくだらないことを書いています。なんかはてなも、変わってましたねぇ。

scriptaculousを使ってコンポーネントを作ってみた

チェックボックスと文字列、スライダーで構成されたコンポーネントを作ってみました。
http://squeak.qp.land.to/img/scriptaculous001.png
今まで同様WAComponentから継承しても作れますが、

rendererClass
	^ WARenderCanvas

としてやらないとダメなようです。Seaside2.7からデフォルトのレンダラクラスがWARenderCanvasになるというのも、scriptaculousからみか?まぁWARenderCanvasなら、ギシギシhtmlソースみたいにならないので、個人的にはいい方向のような気がする。

実際のソースはこんな感じです。サンプルをほとんどそのままなので、まぁあまり参考になりませんが、赤文字部分がいわゆるAjaxとかいうものを使う、まじないですね。

renderContentOn: html 
ckboxId formId trackId handleId positionId
ckboxId := 'checkbox'. formId := 'form'. trackId := 'track'. handleId := 'handle'. positionId := 'position'. super renderContentOn: html. html div id: 'jobitem'; with: [html form id: formId; with: [html checkbox value: status; callback: [:value | status := value]; onClick: (html updater id: ckboxId; triggerForm: formId; callback: [:r | r render: status])]. html text: item. html div id: trackId; with: [html div id: handleId]. html div id: positionId; with: position. html script: (html slider handleId: handleId; trackId: trackId; value: position; range: (0 to: 100); onSlide: (html updater id: positionId; triggerSliderCallback: [:value | position := value asInteger]; callback: [:render | render render: position]))]

更新

FrontPage - ど素人のためのど素人によるSqueak入門でSeaside関連コンテンツを追記しました。現在スパム対策のため書き込み禁止としているのでツッコミなどありましたらここのコメントに記入願います。

Seaside-Reference

入門者向けのSeasideのExamplesとReferenceです。コードとそれを実際に実行した結果を見ることが出来ます。Seaside2.5,2.6に対応しています。Seaside2.5のみ実装されているものも含まれます。
Squeak Goodies - 役に立たないかもしれない・・・(こちらからダウンロードできます)
http://squeak.qp.land.to/img/Seaside-Reference.png