オプションの監視について - Printable Version +- Curl Global Community (https://communities.curl.com) +-- Forum: Discussions (https://communities.curl.com/forumdisplay.php?fid=1) +--- Forum: General Curl questions (https://communities.curl.com/forumdisplay.php?fid=2) +--- Thread: オプションの監視について (/showthread.php?tid=391) |
オプションの監視について - umemura - 01-17-2012 あるインスタンスの、ある値の「変更」を監視したい場合、どのような方法がありますか? 目的はデバッグではなく、たとえば、あるCommandButton の enabled? をfalse にした際、 監視していたそのボタンのラベル自身が、自分の表示文字を切り替える、というような場合を考えています。 Observerを利用したり、コマンドボタンの継承クラスに同様の機能を実装することができることは理解していますが、 今回の目的は、既存のコードになるべく影響を出さないように、継承クラスなどはつくら渦に実現できればと思っています。 言い換えると、on-action などのイベントと同じように、「enable? の値が変わったら」という記述方法があるか、 というイメージになります。 register-options を利用して、下記のようなコードで実現できるのではと予想したのですが、 監視するオプションの指定方法が分かりません。 Code: {def cb:CommandButton = {CommandButton label = "押せます"}} RE: オプションの監視について - c-s - 01-18-2012 register-optionsがcallback的じゃなくて、そう使えませんね。 非ローカルなら、option-childを追加して、そこから監視出来るでしょう? RE: オプションの監視について - umemura - 12-04-2012 とりあえず、option-changed を使って、こんな感じでできました。 Code: {define-class public CustomCB {inherits CommandButton} |