def __init__( self ): QForm.__init__( self ) self.setWindowTitle( 'Login' + ' - ' + DBConf.get( 'appname' ) ) self.resize( 450, 200 ) self.move( 350, 350 ) grid = QtGui.QGridLayout() self.heading = QtGui.QLabel( 'Please enter your login and password' ) grid.addWidget( self.heading, 0, 0, 1, 2 ) self.status = QtGui.QLabel( '' ) grid.addWidget( self.status, 1, 0, 1, 2 ) grid.addWidget( QtGui.QLabel( 'username' ), 2, 0 ) grid.addWidget( self.lineEditField( 'username', DBConf.get( 'username' ), 'username' ), 2, 1 ) grid.addWidget( QtGui.QLabel( 'password' ), 3, 0 ) grid.addWidget( self.lineEditField( 'passwd', DBConf.get( 'passwd' ), 'password' ), 3, 1 ) self.submit = QtGui.QPushButton( 'Login', self ) self.submit.clicked.connect( lambda: QHelper.master().emit( QtCore.SIGNAL( 'loginSubmit' ), QHelper.getValue( self.fields['username'] ), QHelper.getValue( self.fields['passwd'] ) ) ) self.quit = QtGui.QPushButton( 'Cancel', self ) self.quit.clicked.connect( lambda: QHelper.master().emit( QtCore.SIGNAL( 'loginCancel' ) ) ) self.preferences = QtGui.QPushButton( 'Preferences', self ) self.submit.clicked.connect( lambda: QHelper.master().emit( QtCore.SIGNAL( 'loginSubmit' ), QHelper.getValue( self.fields['username'] ), QHelper.getValue( self.fields['passwd'] ) ) ) QHelper.master().connect( self.preferences, QtCore.SIGNAL( 'clicked()' ), lambda:self.hide() or QHelper.master().Action.preferencesActionCallback() ) hbox = QtGui.QHBoxLayout() hbox.addStretch( 1 ) hbox.addWidget( self.preferences ) hbox.addWidget( self.submit ) hbox.addWidget( self.quit ) buttons = QtGui.QWidget() buttons.setLayout( hbox ) grid.addWidget( buttons, 4, 0, 1 ,2 ) self.setLayout( grid ) self.connect( QHelper.master(), QtCore.SIGNAL( 'loginSubmit' ), self.loginSubmitCallback ) self.connect( QHelper.master(), QtCore.SIGNAL( 'loginSuccess' ), self.loginSuccessCallback ) self.connect( QHelper.master(), QtCore.SIGNAL( 'loginError' ), self.loginErrorCallback ) self.connect( QHelper.master(), QtCore.SIGNAL( 'loginCancel' ), self.loginCancelCallback ) self.connect( QHelper.master(), QtCore.SIGNAL( 'preferencesSubmit' ), self.preferencesSubmitCallback ) self.connect( QHelper.master(), QtCore.SIGNAL( 'preferencesCancel' ), self.preferencesCancelCallback )
def loginSuccessCallback( self ): QHelper.log( '::CONNECT:QLoginView:loginSuccess' ) DBConf.set( 'username', QHelper.getValue( self.fields['username'] ) ) DBConf.set( 'passwd', QHelper.getValue( self.fields['passwd'] ) ) self.hide() self.status.setText( '' )
def values( self ): return dict( [( k, QHelper.getValue( v ) ) for k, v in self.fields.items()] )