From: Kevin A. <ka...@us...> - 2005-03-28 05:49:26
|
Update of /cvsroot/pythoncard/PythonCard/samples/conversions In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13067/samples/conversions Modified Files: conversions.py conversions.rsrc.py Log Message: added UK <-> US to conversions.py and simplified SOAP.py module check Index: conversions.py =================================================================== RCS file: /cvsroot/pythoncard/PythonCard/samples/conversions/conversions.py,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** conversions.py 5 May 2004 16:53:25 -0000 1.14 --- conversions.py 28 Mar 2005 05:49:14 -0000 1.15 *************** *** 7,10 **** --- 7,16 ---- from PythonCard import model + try: + import SOAP + SOAP_AVAILABLE = True + except ImportError: + SOAP_AVAILABLE = False + class Conversion: *************** *** 95,110 **** class CurrencyConversion(Conversion): - def __init__(self, components): - components.labelUp.text = 'Aussie Dollars' - components.btnConvertUp.label = 'US Dollars to Aussie Dollars' - components.btnConvertDown.label = 'Aussie Dollars to US Dollars' - components.labelDown.text = 'US Dollars' - - def toDown(self, txt): - return self.convertToUS(txt) - - def toUp(self, txt): - return self.convertToAus(txt) - def convert(self, fromCur, toCur, txt): import SOAP --- 101,104 ---- *************** *** 121,124 **** --- 115,150 ---- return str(float(txt) * rate) + class CurrencyConversionUKUS(CurrencyConversion): + def __init__(self, components): + components.labelUp.text = 'UK Pounds' + components.btnConvertUp.label = 'US Dollars to UK Pounds' + components.btnConvertDown.label = 'UK Pounds to US Dollars' + components.labelDown.text = 'US Dollars' + + def toDown(self, txt): + return self.convertToUS(txt) + + def toUp(self, txt): + return self.convertToUK(txt) + + def convertToUS(self, txt): + return self.convert('UK', 'US', txt) + + def convertToUK(self, txt): + return self.convert('US', 'UK', txt) + + class CurrencyConversionAUSUS(CurrencyConversion): + def __init__(self, components): + components.labelUp.text = 'Aussie Dollars' + components.btnConvertUp.label = 'US Dollars to Aussie Dollars' + components.btnConvertDown.label = 'Aussie Dollars to US Dollars' + components.labelDown.text = 'US Dollars' + + def toDown(self, txt): + return self.convertToUS(txt) + + def toUp(self, txt): + return self.convertToAus(txt) + def convertToUS(self, txt): return self.convert('Australia', 'US', txt) *************** *** 127,134 **** return self.convert('US', 'Australia', txt) class Conversions(model.Background): def on_initialize(self, event): ! self.conversion = TemperatureConversion(self.components) def on_btnConvertDown_mouseClick(self, event): --- 153,168 ---- return self.convert('US', 'Australia', txt) + class Conversions(model.Background): def on_initialize(self, event): ! # only enable currency conversion option if the SOAP module is installed ! if not SOAP_AVAILABLE: ! self.menuBar.setChecked('menuConvertCurrencyUKUS', False) ! self.menuBar.setEnabled('menuConvertCurrencyUKUS', False) ! self.menuBar.setChecked('menuConvertCurrencyAUSUS', False) ! self.menuBar.setEnabled('menuConvertCurrencyAUSUS', False) ! #self.conversion = TemperatureConversion(self.components) ! self.on_menuConvertTemperature_select(None) def on_btnConvertDown_mouseClick(self, event): *************** *** 137,165 **** def on_btnConvertUp_mouseClick(self, event): self.components.field1.text = self.conversion.toUp(self.components.field2.text) def on_menuConvertMorseCode_select(self, event): self.conversion = MorseCodeConversion(self.components) self.menuBar.setChecked('menuConvertMorseCode') - self.menuBar.setChecked('menuConvertTemperature', 0) - self.menuBar.setChecked('menuConvertCurrency', 0) def on_menuConvertTemperature_select(self, event): self.conversion = TemperatureConversion(self.components) ! self.menuBar.setChecked('menuConvertMorseCode', 0) self.menuBar.setChecked('menuConvertTemperature') - self.menuBar.setChecked('menuConvertCurrency', 0) ! def on_menuConvertCurrency_select(self, event): ! "We only enable this option if the SOAP module is installed" ! try: ! import SOAP ! except ImportError: ! self.menuBar.setChecked('menuConvertCurrency', 0) ! self.menuBar.setEnabled('menuConvertCurrency', 0) ! return ! self.conversion = CurrencyConversion(self.components) ! self.menuBar.setChecked('menuConvertMorseCode', 0) ! self.menuBar.setChecked('menuConvertTemperature', 0) ! self.menuBar.setChecked('menuConvertCurrency') --- 171,200 ---- def on_btnConvertUp_mouseClick(self, event): self.components.field1.text = self.conversion.toUp(self.components.field2.text) + + def uncheckAllMenuItems(self): + self.menuBar.setChecked('menuConvertMorseCode', False) + self.menuBar.setChecked('menuConvertTemperature', False) + self.menuBar.setChecked('menuConvertCurrencyUKUS', False) + self.menuBar.setChecked('menuConvertCurrencyAUSUS', False) def on_menuConvertMorseCode_select(self, event): self.conversion = MorseCodeConversion(self.components) + self.uncheckAllMenuItems() self.menuBar.setChecked('menuConvertMorseCode') def on_menuConvertTemperature_select(self, event): self.conversion = TemperatureConversion(self.components) ! self.uncheckAllMenuItems() self.menuBar.setChecked('menuConvertTemperature') ! def on_menuConvertCurrencyUKUS_select(self, event): ! self.conversion = CurrencyConversionUKUS(self.components) ! self.uncheckAllMenuItems() ! self.menuBar.setChecked('menuConvertCurrencyUKUS') ! ! def on_menuConvertCurrencyAUSUS_select(self, event): ! self.conversion = CurrencyConversionAUSUS(self.components) ! self.uncheckAllMenuItems() ! self.menuBar.setChecked('menuConvertCurrencyAUSUS') Index: conversions.rsrc.py =================================================================== RCS file: /cvsroot/pythoncard/PythonCard/samples/conversions/conversions.rsrc.py,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** conversions.rsrc.py 31 Jul 2004 06:27:51 -0000 1.10 --- conversions.rsrc.py 28 Mar 2005 05:49:14 -0000 1.11 *************** *** 37,43 **** 'checked':1}, { 'type':'MenuItem', ! 'name':'menuConvertCurrency', ! 'label':'Currency', ! 'checkable':1 }] } ] --- 37,48 ---- 'checked':1}, { 'type':'MenuItem', ! 'name':'menuConvertCurrencyUKUS', ! 'label':'Currency - UK <-> US', ! 'checkable':1 }, ! { 'type':'MenuItem', ! 'name':'menuConvertCurrencyAUSUS', ! 'label':'Currency - AUS <-> US', ! 'checkable':1 }, ! ] } ] |