Advertisement
Guest User

masterLoki

a guest
Feb 18th, 2010
156
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.91 KB | None | 0 0
  1. # -*- coding: utf-8 -*-
  2. # Implementation of the main form operations
  3.  
  4. import sys
  5. from PyQt4 import QtCore, QtGui, uic
  6.  
  7. class StartApp(QtGui.QMainWindow):
  8.  
  9.   #{{{ __init__ -- Initial operations
  10.   def __init__(self, parent=None):
  11.     self.cText = QtCore.QString()
  12.     QtGui.QWidget.__init__(self, parent)
  13.     self.ui = uic.loadUi("mainForm.ui")
  14.     self.ui.show()
  15.     self.SpecialKeys()
  16.     self.ui.WRITE.setVisible(False)
  17.     self.ui.ENTER.setVisible(False)
  18.     self.ShowHideKeys(False)
  19.     self.ui.layout().setSizeConstraint(QtGui.QLayout.SetMinAndMaxSize)
  20.    #}}}
  21.  
  22.   #{{{ SpeakReset -- Post-Speaking operations
  23.   def SpeakReset(self):
  24.     finalTxt = unicode(self.cText)
  25.     self.words.checkWords(finalTxt)
  26.     self.Voice.Speak(finalTxt)
  27.     self.CleanData()
  28.   #}}}
  29.  
  30.   #{{{ changeState -- Changes state between Speaking and writing
  31.   def changeState(self, flag):
  32.     if flag:
  33.       self.setWriteMode()
  34.     else:
  35.       self.setSpeakMode()
  36.   #}}}
  37.  
  38.   #{{{ ShowHideKeys -- Show and hide keys depending on the mode
  39.   def ShowHideKeys(self, flag):
  40.     self.ui.quest.setVisible(flag)
  41.     self.ui.iquest.setVisible(flag)
  42.     self.ui.slash.setVisible(flag)
  43.     self.ui.bang.setVisible(flag)
  44.     self.ui.oBang.setVisible(flag)
  45.     self.ui.equal.setVisible(flag)
  46.     self.ui.parentesis.setVisible(flag)
  47.     self.ui.parentesis_2.setVisible(flag)
  48.     self.ui.comma.setVisible(flag)
  49.     self.ui.period.setVisible(flag)
  50.     self.ui.semicolon.setVisible(flag)
  51.     self.ui.dash.setVisible(flag)
  52.     self.ui.downdash.setVisible(flag)
  53.     self.ui.quote.setVisible(flag)
  54.     self.ui.arroba.setVisible(flag)
  55.     self.ui.asterix.setVisible(flag)
  56.     self.ui.add.setVisible(flag)
  57.   #}}}
  58.  
  59.   #{{{ SpecialKeys -- Connects special keys
  60.   def SpecialKeys(self):
  61.     self.connect(self.ui.wrtButton, QtCore.SIGNAL("clicked()"), lambda flag = True: self.changeState(flag))
  62.     self.connect(self.ui.spkButton, QtCore.SIGNAL("clicked()"), lambda flag = False: self.changeState(flag))
  63.   #}}}
  64.  
  65.   #{{{ setWriteMode -- Operations to set the form to write mode
  66.   def setWriteMode(self):
  67.     self.ui.wrtButton.setStyleSheet("background-color:rgb(0,255,0)")
  68.     self.ui.spkButton.setStyleSheet("background-color:rgb(255,0,0)")
  69.     self.ShowHideKeys(True)
  70.     self.ui.SPEAK.setVisible(False)
  71.     self.ui.WRITE.setVisible(True)
  72.     self.ui.ENTER.setVisible(True)
  73.     self.ui.outputTxt.setVisible(False)
  74.   #}}}
  75.  
  76.   #{{{ setSpeakMode -- Operations to set the form to speak mode
  77.   def setSpeakMode(self):
  78.     self.ui.spkButton.setStyleSheet("background-color:rgb(0,255,0)")
  79.     self.ui.wrtButton.setStyleSheet("background-color:rgb(255,0,0)")
  80.     self.ShowHideKeys(False)
  81.     self.ui.SPEAK.setVisible(True)
  82.     self.ui.WRITE.setVisible(False)
  83.     self.ui.ENTER.setVisible(False)
  84.     self.ui.outputTxt.setVisible(True)
  85.   #}}}
  86.  
  87. if __name__=="__main__":
  88.   app = QtGui.QApplication(sys.argv)
  89.   myapp = StartApp()
  90.   sys.exit(app.exec_())
  91.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement