summaryrefslogtreecommitdiff
path: root/src/swing
diff options
context:
space:
mode:
authorIngo Maier <ingo.maier@epfl.ch>2009-04-14 09:07:12 +0000
committerIngo Maier <ingo.maier@epfl.ch>2009-04-14 09:07:12 +0000
commit21376b3811ff882c4f2f68913a654a7eda66f023 (patch)
treee1709f51064724fa3b34d57ee7c496e6dc883e8e /src/swing
parentf5bed340661a3aaecd1e2414e9cc34a0c3bbb891 (diff)
downloadscala-21376b3811ff882c4f2f68913a654a7eda66f023.tar.gz
scala-21376b3811ff882c4f2f68913a654a7eda66f023.tar.bz2
scala-21376b3811ff882c4f2f68913a654a7eda66f023.zip
Fixes for #1587 and #1844
Diffstat (limited to 'src/swing')
-rw-r--r--src/swing/scala/swing/Dialog.scala13
-rw-r--r--src/swing/scala/swing/FileChooser.scala7
-rw-r--r--src/swing/scala/swing/Key.scala1
-rw-r--r--src/swing/scala/swing/Swing.scala1
4 files changed, 12 insertions, 10 deletions
diff --git a/src/swing/scala/swing/Dialog.scala b/src/swing/scala/swing/Dialog.scala
index d2cab71c9a..1de0f27130 100644
--- a/src/swing/scala/swing/Dialog.scala
+++ b/src/swing/scala/swing/Dialog.scala
@@ -1,6 +1,7 @@
package scala.swing
import javax.swing.{Icon, JOptionPane}
+import Swing._
/**
* Simple predefined dialogs.
@@ -43,17 +44,17 @@ object Dialog {
def showConfirmation(parent: Component, message: String, title: String,
optionType: Options.Value, messageType: Message.Value, icon: Icon): Result.Value =
- Result(JOptionPane.showConfirmDialog(parent.peer, message, title,
+ Result(JOptionPane.showConfirmDialog(nullPeer(parent), message, title,
optionType.id, messageType.id, Swing.wrapIcon(icon)))
def showConfirmation(parent: Component, message: String, title: String,
optionType: Options.Value): Result.Value =
- Result(JOptionPane.showConfirmDialog(parent.peer, message, title,
+ Result(JOptionPane.showConfirmDialog(nullPeer(parent), message, title,
optionType.id))
def showOptions(parent: Component, message: String, title: String,
optionType: Options.Value, messageType: Message.Value, icon: Icon,
entries: Seq[Any], initialEntry: Int): Result.Value = {
- val r = JOptionPane.showOptionDialog(parent.peer, message, title,
+ val r = JOptionPane.showOptionDialog(nullPeer(parent), message, title,
optionType.id, messageType.id, Swing.wrapIcon(icon),
entries.map(_.asInstanceOf[AnyRef]).toArray, entries(initialEntry))
Result(r)
@@ -64,18 +65,18 @@ object Dialog {
entries: Seq[A], initialEntry: A): Option[A] = {
val e = if (entries.isEmpty) null
else entries.map(_.asInstanceOf[AnyRef]).toArray
- val r = JOptionPane.showInputDialog(parent.peer, message, title,
+ val r = JOptionPane.showInputDialog(nullPeer(parent), message, title,
messageType.id, Swing.wrapIcon(icon),
e, initialEntry)
Swing.toOption(r)
}
def showMessage(parent: Component, message: String, title: String,
messageType: Message.Value, icon: Icon) {
- JOptionPane.showMessageDialog(parent.peer, message, title,
+ JOptionPane.showMessageDialog(nullPeer(parent), message, title,
messageType.id, Swing.wrapIcon(icon))
}
def showMessage(parent: Component, message: String) {
- JOptionPane.showMessageDialog(parent.peer, message)
+ JOptionPane.showMessageDialog(nullPeer(parent), message)
}
}
diff --git a/src/swing/scala/swing/FileChooser.scala b/src/swing/scala/swing/FileChooser.scala
index c32ace2836..412649051a 100644
--- a/src/swing/scala/swing/FileChooser.scala
+++ b/src/swing/scala/swing/FileChooser.scala
@@ -37,9 +37,10 @@ class FileChooser(dir: File) {
def this() = this(null)
- def showOpenDialog(over: Component): Result.Value = Result(peer.showOpenDialog(over.peer))
- def showSaveDialog(over: Component): Result.Value = Result(peer.showSaveDialog(over.peer))
- def showDialog(over: Component, approveText: String): Result.Value = Result(peer.showDialog(over.peer, approveText))
+ import Swing._
+ def showOpenDialog(over: Component): Result.Value = Result(peer.showOpenDialog(nullPeer(over)))
+ def showSaveDialog(over: Component): Result.Value = Result(peer.showSaveDialog(nullPeer(over)))
+ def showDialog(over: Component, approveText: String): Result.Value = Result(peer.showDialog(nullPeer(over), approveText))
def controlButtonsAreShown: Boolean = peer.getControlButtonsAreShown
def controlButtonsAreShown_=(b: Boolean) { peer.setControlButtonsAreShown(b) }
diff --git a/src/swing/scala/swing/Key.scala b/src/swing/scala/swing/Key.scala
index 7a127c1a79..487e88bb4f 100644
--- a/src/swing/scala/swing/Key.scala
+++ b/src/swing/scala/swing/Key.scala
@@ -80,7 +80,6 @@ object Key extends Enumeration {
val Numpad9 = Value(VK_NUMPAD9)
val Multiply = Value(VK_MULTIPLY)
val Add = Value(VK_ADD)
- val Separater = Value(VK_SEPARATER)
val Separator = Value(VK_SEPARATOR)
val Subtract = Value(VK_SUBTRACT)
val Decimal = Value(VK_DECIMAL)
diff --git a/src/swing/scala/swing/Swing.scala b/src/swing/scala/swing/Swing.scala
index 1dfdfac5b6..b10f2a50ed 100644
--- a/src/swing/scala/swing/Swing.scala
+++ b/src/swing/scala/swing/Swing.scala
@@ -15,6 +15,7 @@ object Swing {
protected[swing] def toNull[A>:Null<:AnyRef](a: Option[A]): A = if(a == None) null else a.get
protected[swing] def toNoIcon(i: Icon): Icon = if(i == null) EmptyIcon else i
protected[swing] def toNullIcon(i: Icon): Icon = if(i == EmptyIcon) null else i
+ protected[swing] def nullPeer(c: Component) = if (c != null) c.peer else null
implicit def pair2Dimension(p: (Int, Int)): Dimension = new Dimension(p._1, p._2)
implicit def pair2Point(p: (Int, Int)): Point = new Point(p._1, p._2)