From 21376b3811ff882c4f2f68913a654a7eda66f023 Mon Sep 17 00:00:00 2001 From: Ingo Maier Date: Tue, 14 Apr 2009 09:07:12 +0000 Subject: Fixes for #1587 and #1844 --- src/swing/scala/swing/Dialog.scala | 13 +++++++------ src/swing/scala/swing/FileChooser.scala | 7 ++++--- src/swing/scala/swing/Key.scala | 1 - src/swing/scala/swing/Swing.scala | 1 + 4 files changed, 12 insertions(+), 10 deletions(-) (limited to 'src/swing') 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) -- cgit v1.2.3