summaryrefslogtreecommitdiff
path: root/src/swing
diff options
context:
space:
mode:
authorIngo Maier <ingo.maier@epfl.ch>2010-02-23 11:18:34 +0000
committerIngo Maier <ingo.maier@epfl.ch>2010-02-23 11:18:34 +0000
commit6022f4b5d2ff03628648f23690e63f4add50afae (patch)
tree898ad47c20e1425d8df162be6fb71684285e39be /src/swing
parent84ecd8c45a66c2e27eb4b0782f0d1b3c4c55466d (diff)
downloadscala-6022f4b5d2ff03628648f23690e63f4add50afae.tar.gz
scala-6022f4b5d2ff03628648f23690e63f4add50afae.tar.bz2
scala-6022f4b5d2ff03628648f23690e63f4add50afae.zip
Added TextComponent.paste, made some accidentia...
Added TextComponent.paste, made some accidentially public publisher methods protected.
Diffstat (limited to 'src/swing')
-rw-r--r--src/swing/scala/swing/Component.scala2
-rw-r--r--src/swing/scala/swing/Publisher.scala8
-rw-r--r--src/swing/scala/swing/TextComponent.scala1
-rw-r--r--src/swing/scala/swing/TextField.scala4
-rw-r--r--src/swing/scala/swing/UIElement.scala4
5 files changed, 12 insertions, 7 deletions
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 {}
}