onsdag 6 november 2013

Simple currency converter in Groovy Swing Style

Simple currency converter in Groovy Swing Style:

       
@Grab(group='org.codehaus.groovy.modules', module='groovyws', version='0.5.2')

 import groovyx.net.ws.WSClient

class TryIt
{
      groovy.swing.SwingBuilder swing = new groovy.swing.SwingBuilder()
      def proxy = new WSClient("http://www.webservicex.net/CurrencyConvertor.asmx?WSDL",                       TryIt.class.classLoader)
      def currency = ['USD', 'EUR', 'CAD', 'GBP', 'AUD', 'SGD','SEK','DKK','NOK']
      def rate = 0.0
      def exc = 1.0
   
     void main()
    {
           proxy.initialize()
           def refresh = swing.action( name:'Refresh', closure:this.&refreshText, mnemonic:'R' )
           def frame = swing.frame(title:'Currency Demo')
           {
                  panel
                 {
                       label 'Currency rate from '
                       comboBox(id:'from', items:currency)
                       label ' to '
                      comboBox(id:'to', items:currency)
                      label ' rate '
                      textField(id:'currency', columns:10, rate.toString(),editable:false)
                      label ' exchange '
                      textField(id:'exchange', columns:10, exc.toString())
                      button(text:'Go !', action:refresh)
               }
          }
          frame.pack()
          frame.show()
   }
   def refreshText(event)
   {
          rate = proxy.ConversionRate(swing.from.getSelectedItem(), swing.to.getSelectedItem())                               swing.currency.text = rate
          swing.exchange.text = rate*Double.parseDouble(swing.exchange.text)
   }
}

new TryIt().main()

Inga kommentarer:

Skicka en kommentar