From 57e8dfd55aa68b7d8edc10fd26c5b661642f6f61 Mon Sep 17 00:00:00 2001 From: Ingo Maier Date: Sun, 2 Nov 2008 09:13:05 +0000 Subject: added location and icon methods to Frame, impli... added location and icon methods to Frame, implicit conversion for pairs to Dimension and Point --- src/swing/scala/swing/Frame.scala | 5 +++++ src/swing/scala/swing/Swing.scala | 8 +++++++- 2 files changed, 12 insertions(+), 1 deletion(-) (limited to 'src/swing') diff --git a/src/swing/scala/swing/Frame.scala b/src/swing/scala/swing/Frame.scala index fc2ebe297d..4e82ad1e58 100644 --- a/src/swing/scala/swing/Frame.scala +++ b/src/swing/scala/swing/Frame.scala @@ -1,5 +1,6 @@ package scala.swing +import java.awt.{Image, Point} import javax.swing._ import event._ @@ -34,6 +35,10 @@ class Frame extends UIElement with RootPanel with Publisher { def menuBar_=(m: MenuBar) = peer.setJMenuBar(m.peer) def setLocationRelativeTo(c: UIElement) { peer.setLocationRelativeTo(c.peer) } + def location_=(p: Point) { peer.setLocation(p) } + + def iconImage: Image = peer.getIconImage + def iconImage_=(i: Image) { peer.setIconImage(i) } peer.addWindowListener(new java.awt.event.WindowListener { def windowActivated(e: java.awt.event.WindowEvent) { publish(WindowActivated(Frame.this)) } diff --git a/src/swing/scala/swing/Swing.scala b/src/swing/scala/swing/Swing.scala index 3026cf4dd2..45fa79b0fd 100644 --- a/src/swing/scala/swing/Swing.scala +++ b/src/swing/scala/swing/Swing.scala @@ -2,7 +2,7 @@ package scala.swing import java.awt.event._ import javax.swing.event._ -import java.awt.{Color, Dimension} +import java.awt.{Color, Dimension, Point} import javax.swing.border._ import javax.swing.{JComponent, Icon, BorderFactory} @@ -16,6 +16,12 @@ object Swing { 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 + 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) + + /** + * Allows one to use blocks as runnables. + */ implicit def block2Runnable(block: =>Unit): Runnable = new Runnable { override def run = block } -- cgit v1.2.3