[Squeak-ja: 3047] Re: PluggableTextMorphをつまむ方法

kubo-o kubo-o @ mbox.kyoto-inet.or.jp
2006年 7月 12日 (水) 22:19:55 JST


鷲見さん、早速ありがとうございました。
on:のはたらきについてはよく判りました。
もう一つの方のことですが、a Rectangle-Morph のようなクリックしてピックアップ
できるタイプのモーフでないと、PluggableTextMorphは直接にはmouseでつかめない
のでしょうか。
はじめにworld上でopenInHnadをやるときだけはつかめていますが。
on:などの引数付きのPluggableTextMorphに、なにか他の引数を追加すれば、
eventhandlingが使えるのでしょうか。
久保 道

-----Original Message-----
From: squeak-ja-bounces @ smalltalk.jp
[mailto:squeak-ja-bounces @ smalltalk.jp]On Behalf Of Masato Sumi
Sent: Wednesday, July 12, 2006 5:20 PM
To: Squeak discussion in Japanese
Subject: [Squeak-ja: 3044] Re: PluggableTextMorphをつまむ方法


久保さん、ごきげんよう。鷲見です。

on: のところに挿入する引数は、このカード(a PluggableTextMorph)に
入力された内容を別のオブジェクト(モデルと呼ぶ)で管理しているときに
それを当てはめます。たとえば、

| model field |
model := ProcessBrowser new.
model openAsMorph.

field := PluggableTextMorph
   on: model
   text: #selectedMethod
   accept: nil
   readSelection: nil
   menu: nil.
field center: Point fromUser.
field openInWorld.

というスクリプトを評価して、クリックして指定した場所に a Pluggable-
TextMorph を設置してから、同時に開くプロセスブラウザの右手のリスト
から適当な項目を選んだときに起こることを観察してみてください。

この仕組みはカードを動かす目的とは直接関係ないので、たとえば、
alt/cmd + ドラッグでの移動を使う…というのではダメでしょうか。

あるいは、カードを a PluggableTextMorph だけではなく、a Rectangle-
Morph のようなクリックしてピックアップできるタイプのモーフのサブ
モーフとして a PlugableTextMorph を組み合わせた、複合モーフのクラスとして
新しく定義する…という方法もあるかもしれません。

06/07/12 に kubo-o<kubo-o @ mbox.kyoto-inet.or.jp> さんは書きました:
> handlesMouseDown:やmouseDown:を
> 作用させるにはどうすればよいのでしょうか。
> 上のon:selfの「selfを自分のクラスのinstanceで
> 置き換えるのかとも思うのですが、
> よく判っていません。
> そもそもon:はどういう機能を持つのでしょうか。
> どうか宜しくお願い致します。
> 久保 道

--
Masato Sumi




Squeak-ja メーリングリストの案内