v2.10.1/src/swing/scala/swing/Component.scala
《前の記事|記事一覧|次の記事》
Java.use(better, src=Scala)
ソースコードを散策する #063
■ v2.10.1
v2.10.1/src/swing/scala/swing/Component.scalaobject mouse { /** * Publishes clicks, presses and releases. */ val clicks: Publisher = new LazyPublisher { lazy val l = new MouseListener { def mouseEntered(e: java.awt.event.MouseEvent) {} def mouseExited(e: java.awt.event.MouseEvent) {} def mouseClicked(e: java.awt.event.MouseEvent) { publish(new MouseClicked(e)) } def mousePressed(e: java.awt.event.MouseEvent) { publish(new MousePressed(e)) } def mouseReleased(e: java.awt.event.MouseEvent) { publish(new MouseReleased(e)) } } def onFirstSubscribe() = peer.addMouseListener(l) def onLastUnsubscribe() = peer.removeMouseListener(l) }
- 新たに LazyPublisher が追加され、旧来の addMouseListener/removeMouseListener に代えて、今後は onFirstSubscribe/onLastUnsubscribe を利用することが望まれます。