From 6022f4b5d2ff03628648f23690e63f4add50afae Mon Sep 17 00:00:00 2001 From: Ingo Maier Date: Tue, 23 Feb 2010 11:18:34 +0000 Subject: Added TextComponent.paste, made some accidentia... Added TextComponent.paste, made some accidentially public publisher methods protected. --- src/swing/scala/swing/Component.scala | 2 +- src/swing/scala/swing/Publisher.scala | 8 ++++++-- src/swing/scala/swing/TextComponent.scala | 1 + src/swing/scala/swing/TextField.scala | 4 ++-- src/swing/scala/swing/UIElement.scala | 4 ++-- 5 files changed, 12 insertions(+), 7 deletions(-) (limited to 'src/swing') diff --git a/src/swing/scala/swing/Component.scala b/src/swing/scala/swing/Component.scala index ebf6c2dda4..8dc1169395 100644 --- a/src/swing/scala/swing/Component.scala +++ b/src/swing/scala/swing/Component.scala @@ -198,7 +198,7 @@ abstract class Component extends UIElement { def requestFocusInWindow() = peer.requestFocusInWindow() def hasFocus: Boolean = peer.isFocusOwner - override def onFirstSubscribe { + protected override def onFirstSubscribe { super.onFirstSubscribe // TODO: deprecated, remove after 2.8 peer.addComponentListener(new java.awt.event.ComponentListener { diff --git a/src/swing/scala/swing/Publisher.scala b/src/swing/scala/swing/Publisher.scala index cf33dca60a..cf60293ada 100644 --- a/src/swing/scala/swing/Publisher.scala +++ b/src/swing/scala/swing/Publisher.scala @@ -52,11 +52,15 @@ trait Publisher extends Reactor { listenTo(this) } +/** + * A publisher that subscribes itself to an underlying event source not before the first + * reaction is installed. Can unsubscribe itself when the last reaction is uninstalled. + */ private[swing] trait LazyPublisher extends Publisher { import Reactions._ - def onFirstSubscribe() - def onLastUnsubscribe() + protected def onFirstSubscribe() + protected def onLastUnsubscribe() override def subscribe(listener: Reaction) { if(listeners.size == 1) onFirstSubscribe() diff --git a/src/swing/scala/swing/TextComponent.scala b/src/swing/scala/swing/TextComponent.scala index f2ecd3d040..f249d57d0e 100644 --- a/src/swing/scala/swing/TextComponent.scala +++ b/src/swing/scala/swing/TextComponent.scala @@ -66,6 +66,7 @@ class TextComponent extends Component with Publisher { def editable_=(x: Boolean) = peer.setEditable(x) def cut() { peer.cut() } def copy() { peer.copy() } + def paste() { peer.paste() } def selected: String = peer.getSelectedText def selectAll() { peer.selectAll() } diff --git a/src/swing/scala/swing/TextField.scala b/src/swing/scala/swing/TextField.scala index 540d4da0be..437871f9f3 100644 --- a/src/swing/scala/swing/TextField.scala +++ b/src/swing/scala/swing/TextField.scala @@ -48,7 +48,7 @@ class TextField(text0: String, columns0: Int) extends TextComponent with TextCom publish(EditDone(TextField.this)) } - override def onFirstSubscribe { + protected override def onFirstSubscribe { super.onFirstSubscribe peer.addActionListener(actionListener) peer.addFocusListener(new FocusAdapter { @@ -56,7 +56,7 @@ class TextField(text0: String, columns0: Int) extends TextComponent with TextCom }) } - override def onLastUnsubscribe { + protected override def onLastUnsubscribe { super.onLastUnsubscribe peer.removeActionListener(actionListener) } diff --git a/src/swing/scala/swing/UIElement.scala b/src/swing/scala/swing/UIElement.scala index 8a661626f4..6ebf8b865b 100644 --- a/src/swing/scala/swing/UIElement.scala +++ b/src/swing/scala/swing/UIElement.scala @@ -119,7 +119,7 @@ trait UIElement extends Proxy with LazyPublisher { def ignoreRepaint: Boolean = peer.getIgnoreRepaint def ignoreRepaint_=(b: Boolean) { peer.setIgnoreRepaint(b) } - def onFirstSubscribe { + protected def onFirstSubscribe { peer.addComponentListener(new java.awt.event.ComponentListener { def componentHidden(e: java.awt.event.ComponentEvent) { publish(UIElementHidden(UIElement.this)) @@ -135,5 +135,5 @@ trait UIElement extends Proxy with LazyPublisher { } }) } - def onLastUnsubscribe {} + protected def onLastUnsubscribe {} } -- cgit v1.2.3