1 package jp.ymir.taskReporter.ui
2 import com.toedter.calendar._
3 import java.beans.PropertyChangeEvent
4 import java.beans.PropertyChangeListener
5 import java.util.Calendar
8 import scala.swing.event._
10 class DateChooser extends Component {
11 override lazy val peer = new JDateChooser()
13 case class DateChanged(from: Option[Date], to: Option[Date]) extends Event
15 peer.addPropertyChangeListener("date", new PropertyChangeListener {
16 def propertyChange(e: PropertyChangeEvent) {
17 if (e.getPropertyName == "date") {
20 from = Option(e.getOldValue.asInstanceOf[Date]),
21 to = Option(e.getNewValue.asInstanceOf[Date])))
26 def calendar: Option[Calendar] = peer.getCalendar match {
30 def calendar_=(cal: Option[Calendar])
31 = peer.setCalendar(cal.getOrElse(null))
33 def calendarChooser: CalendarChooser = new CalendarChooser(peer.getJCalendar)
35 def dateFormatString: String = peer.getDateFormatString
36 def dateFormatString_=(fmt: String) = peer.setDateFormatString(fmt)