scala/ScalaBook/chapter-06/dialog1.scala
import scala.swing._
import scala.swing.event._
object dialog extends SimpleGUIApplication {
def top = new MainFrame {
title = "Greetings"
preferredSize = (250,180)
val label = new Label {
text = "Hello World!"
font = new java.awt.Font("Verdana",
java.awt.Font.BOLD, 22)
}
val close_button = new Button {
text = "Close Window"
font = new java.awt.Font("Verdana",
java.awt.Font.PLAIN, 14)
}
contents = new GridBagPanel {
var c = new Constraints
c.gridwidth = java.awt.GridBagConstraints.REMAINDER
add(label,c)
add(Swing.VStrut(20), c)
add(close_button, c)
background = java.awt.Color.yellow
border = Swing.EmptyBorder(50, 50, 50, 50)
}
listenTo(close_button)
reactions += {
case ButtonClicked(b2) => {
import Dialog._
var s = showConfirmation(close_button, "I feel something is wrong!",
"Warning", Options.Default,
Message.Warning, null)
if ( s == Result.Yes )
exit(0)
}
}
}
}