예제 #1
0
파일: ofertas.py 프로젝트: dravix/pyventa
    def __init__(self,parent,ide=-1):
    		QDialog.__init__(self)
		self.setupUi(self)
		self.cursor=parent.cursor
		self.curser=parent.curser
		self.parent=parent
		self.ide=ide
		self.banderas={'edicion':False}
		self.matriz={'productos':[],'familias':[],'departamentos':[]}
		self.lista=[]
		self.menuAdd = QMenu(self)
		#Menu contextual de tipos de impresion
		self.menuAdd.addAction("Productos",self.listarProds)
		self.menuAdd.addAction("Familias",self.listarFams)
		self.menuAdd.addAction("Departamentos",self.listarDeps)
		self.tbMas.setMenu(self.menuAdd)
		self.tbMas.setPopupMode(2)
		self.CP=CalculaPrecio(self)

		#self.connect(self.rbDepa, SIGNAL("clicked ()"), self.listarDeps)
		#self.connect(self.rbFam, SIGNAL("clicked ()"), self.listarFams)
		#self.connect(self.rbProd, SIGNAL("clicked ()"), self.listarProds)

		self.connect(self.tbPublicar, SIGNAL("clicked ( )"), self.terminar)
		self.connect(self.tbCerrar, SIGNAL("clicked ()"), self.close)
		self.connect(self.tbMenos, SIGNAL("clicked ()"), self.quitar)
		self.connect(self.tbCalcDes, SIGNAL("clicked ()"), self.calcularPrecio)
		self.connect(self.sbMinimo,SIGNAL("editingFinished ()"),self.checkMaximo)		
		self.connect(self.CP.dsbDescuento,SIGNAL("valueChanged ( double )"),lambda:self.dsDescuento.setValue(self.CP.dsbDescuento.value()))		
		
        	self.deInicio.setDate(QDate.currentDate())
        	self.deFin.setDate(QDate.currentDate())
        	self.promo={'nombre':'','descuento':'','inicio':'','fin':'','minimo':''}
        	self.iniciar()
예제 #2
0
 def __init__( self, ganttWidget ):
     super(XGanttWidgetItem, self).__init__()
     
     # set default properties
     self.setFixedHeight(ganttWidget.cellHeight())
     for i in range(1, 20):
         self.setTextAlignment(i, Qt.AlignCenter)
     
     # define custom properties
     self._blockedAdjustments        = {}
     self._viewItem                  = self.createViewItem()
     self._dateStart                 = QDate.currentDate()
     self._dateEnd                   = QDate.currentDate()
     self._allDay                    = True
     self._timeStart                 = QTime(0, 0, 0)
     self._timeEnd                   = QTime(23, 59, 59)
     self._name                      = "NONE"
     self._properties                = {}
     self._itemStyle                 = XGanttWidgetItem.ItemStyle.Normal
     self._useGroupStyleWithChildren = True
     self._dependencies              = {}
     self._reverseDependencies       = {}
     self._dbEntry                   = None
     self._workdays                  = 0
     self._ganttWidget               = ganttWidget
     #self._calculateWeekdays         = 0
     #self._dbDepartmentAssignment    = ''
 
     self.setPrivelages()
예제 #3
0
    def __init__( self, parent = None ):
        """
        Constructor
        """

        super( FrmEstadoResultado, self ).__init__( parent )
        self.setupUi( self )
        self.parentWindow = parent
#        self.editmodel = None
        self.user = user.LoggedUser
        self.status = True
        self.dtPicker.setMaximumDate( QDate.currentDate() )
        self.dtPicker.setDate( QDate.currentDate() )
예제 #4
0
	def AddProject(self):
		self._myXGanttWidgetItem = XGanttWidgetItem(self._myXGanttWidget)
		#self._myXGanttViewItem = self._myXGanttWidgetItem.createViewItem()
		self._myXGanttWidgetItem.setName("test")
		self._myXGanttWidgetItem.setDateEnd(QDate.currentDate().addMonths(+1))
		self._myXGanttWidgetItem.setDateStart(QDate.currentDate().addDays(+1))
		
		self._myXGanttWidgetItem.setProperty("Start",QDate(2014,10,1))
		self._myXGanttWidgetItem.setProperty("End",QDate(2014,10,2))
		self._myXGanttWidgetItem.setProperty("Calendar Days",2)
		self._myXGanttWidgetItem.setProperty("Work Days",2)
		
		self._myXGanttWidget.addTopLevelItem(self._myXGanttWidgetItem)
		self._myXGanttWidget.show()
예제 #5
0
    def printDocument1(self):
        html = u""

        date = QDate.currentDate().toString(self.DATE_FORMAT)
        
        address = Qt.escape("Bario francisco mesa").replace(",","<br>")
        contact = Qt.escape("Luis Mejia")
        balance = 5000
        html += ("<p align=right><img src=':/logo.png'></p>"
                 "<p> align = right>Greasy hands ltd."
                 "<br>New Lombard Street"
                 "<br>London<br>WC13 4PX<br>%s</p>"
                 "<p>%s</p><p>Dear %s, </p>"
                 "<p>The balance of your account is %s.")% (
                   date, address, contact, QString("$ %L1").arg(float(balance),0,"f",2))
                 
        if balance <0 :
            html += ("<p><font color =red><b> Please remit the amount owing immediately.</b></font>")
        else:
            html += "We are delighted to have done business with you."
        
        html += ("</p><p>&nbsp;</p><p>"
                "<table border=1 cellpadding=2 cellspacing=2><tr><td colspan=3>Transaction</td></tr>")
        transactions = [
                        (QDate.currentDate(),500),
                        (QDate.currentDate(),500),
                        (QDate.currentDate(),-500),
                        (QDate.currentDate(),500)
                        ]
        for date, amount in transactions:
            color, status = "black", "Credit"
            if amount <0:
                color, status = "red", "Debid"
            
            html += ("<tr>"
                        "<td align= right>%s</td>"
                        "<td>%s</td><td align=right><font color=%s>%s</font></td></tr>" % (
                        date.toString(self.DATE_FORMAT), status,color, QString("$ %L1").arg(float(abs(amount)), 0, "f",2)))
            
        html += ("</table></p><p style='page-break-after=always;'>"
                 "We hope to continue doing business with you</p>")
                 
        
        pdialog = QPrintDialog() 
        if pdialog.exec_() == QDialog.Accepted:
            printer = pdialog.printer()
            document = QTextDocument()
            document.setHtml(html)
            document.print_(printer)
예제 #6
0
 def get_talks_by_room_and_time(self, room):
     """Returns the talks hosted in a specified room, starting from the current date and time"""
     current_date = QDate.currentDate().toString(1)  # yyyy-mm-dd
     current_time = QTime.currentTime().toString()  # hh:mm:ss
     return QtSql.QSqlQuery('''SELECT * FROM presentations
                               WHERE Room='{}' AND Date='{}'
                               AND StartTime >= '{}' ORDER BY StartTime ASC'''.format(room, current_date, current_time))
예제 #7
0
	def updateDateGame_era(self, era):
		"""
		Der Ära des Spiels verändert das maximale Datum des Spiels.
		"""

		if Config.era_auto_select:
			eraBeginDates = list( Config.ERAS.values() )
			eraBeginDates.sort()

			beginYear = Config.ERAS[era]
			endYear = QDate.currentDate()
			endYear = endYear.year()
			for year in eraBeginDates:
				if year > beginYear:
					endYear = year - 1
					break

			dateEraBegins = QDate(beginYear, 1, 1)
			dateEraEnds = QDate(endYear, 12, 31)

			eraModified = True
			newDate = None
			if self.ui.dateEdit_dateGame.date() < dateEraBegins:
				newDate = dateEraBegins
			elif self.ui.dateEdit_dateGame.date() > dateEraEnds:
				newDate = dateEraEnds
			else:
				eraModified = False

			if eraModified:
				self.ui.dateEdit_dateGame.setDate(newDate)
				text = self.tr("Date of game is set to {day}. {month}. {year} to be in the {era} era".format(day=newDate.day(), month=newDate.month(), year=newDate.year(), era=era))
				self.notificationSent.emit(text)
		else:
			self.__character.era = era
예제 #8
0
 def validarCierreMensual(self):
     try:
         query=QSqlQuery()
         q=u"""
             SELECT d.iddocumento 
             FROM documentos d 
             WHERE d.idtipodoc=%d  
             AND YEAR(d.fechacreacion)=%s""" %(constantes.IDCIERREMENSUAL,self.fecha.toString( "yyyy" ))
         query.prepare(q)
         
         if not query.exec_():
             raise UserWarning( "No se pudo ejecutar la consulta para determinar si existe algun cierre en el año" )         
         if query.size()>0:
             mes=self.fecha.addMonths(-1)             
             q=u"""
                 SELECT d.iddocumento 
                 FROM documentos d 
                 WHERE d.idtipodoc=%d 
                 AND MONTH(fechacreacion)=%s 
                 AND YEAR(d.fechacreacion)=%s""" %(constantes.IDCIERREMENSUAL,mes.toString( "MM"),self.fecha.toString( "yyyy" ))
             query.prepare(q)
             
             if not query.exec_():
                 raise UserWarning( "No se pudo ejecutar la consulta para determinar si se cerro el mes anterior" )         
             if query.size()==0:
                 raise UserWarning( "No se ha cerrado el mes anterior" )        
         
               
         #Verifico si existe un cierre para el mes en proceso
         q = """
         SELECT
             d2.iddocumento
         FROM documentos d
         JOIN docpadrehijos dp ON d.iddocumento=dp.idpadre
         JOIN documentos d2 ON d2.iddocumento=dp.idhijo
         WHERE d2.idtipodoc=%d and month(d2.fechacreacion)=%s
         LIMIT 1
         """ % ( constantes.IDCIERREMENSUAL, self.fecha.toString( "MM" ) )
         
         query.prepare( q )
         
         if not query.exec_():
             raise UserWarning( "No se pudo ejecutar la consulta para "\
                                + "verificar si existe un cierre contable" )
         
         #El mes actual no se puede cerrar
         
         hoy=QDate.currentDate()
         if self.fecha.month()==hoy.month() and self.fecha.year() == hoy.year():
             raise UserWarning( "No se puede cerrar el mes en proceso" )
 
         return True
     
     except Exception as inst:
         logging.critical( unicode( inst ) )
         self.toolBar.removeAction( self.actionSave )
         QMessageBox.warning( self,
          qApp.organizationName(),unicode(inst))
          
     return False
예제 #9
0
    def __init__( self, user, parent = None ):
        """
        Constructor
        """
        super( FrmBalanceGeneral, self ).__init__( parent )
        self.setupUi( self )


        self.user = user
        self.pasivofiltermodel = QSortFilterProxyModel()
        self.model = CuentasModel( self.dtPicker.date() )
        self.activofiltermodel = QSortFilterProxyModel()
        self.capitalfiltermodel = QSortFilterProxyModel()

        self.dtPicker.setMaximumDate( QDate.currentDate() )
        self.dtPicker.setDate( QDate.currentDate() )
예제 #10
0
    def setUp( self ):
        _app = QCoreApplication( [] )

        datosSesion = DatosSesion()
        datosSesion.usuarioId = 1
        datosSesion.sesionId = 1
        datosSesion.tipoCambioId = 1
        datosSesion.tipoCambioOficial = Decimal( 21 )
        datosSesion.tipoCambioBanco = Decimal( 20 )
        datosSesion.fecha = QDate.currentDate()
        datosSesion.cajaId = 1

        self.factura = FacturaModel( datosSesion )
        self.factura.ivaTasa = Decimal( '15' )
        self.factura.bodegaId = 1
        self.factura.insertRow( 0 )
        self.factura.ivaId = 1

        self.factura.setData( 
                             self.factura.index( 0, DESCRIPCION ),
                              [
                                 1,
                                 "Baterias DURUN",
                                 "100",
                                 "80",
                                 "10",
                                 "1"
                               ] )

        self.factura.setData( self.factura.index( 0, CANTIDAD ),
                              QVariant( "1" ) )
예제 #11
0
 def minimum( self ):
     """
     Returns the minimum value for this ruler.  If the cached value is None,
     then a default value will be specified based on the ruler type.
     
     :return     <variant>
     """
     if ( self._minimum is not None ):
         return self._minimum
     
     rtype = self.rulerType()
     
     if ( rtype == XChartRuler.Type.Number ):
         self._minimum = 0
         
     elif ( rtype == XChartRuler.Type.Date ):
         self._minimum = QDate.currentDate()
     
     elif ( rtype == XChartRuler.Type.Datetime ):
         self._minimum = QDateTime.currentDateTime()
     
     elif ( rtype == XChartRuler.Type.Time ):
         self._minimum = QDateTime.currentDateTime().time()
     
     else:
         notches = self.notches()
         if ( notches ):
             self._minimum = notches[0]
     
     return self._minimum
예제 #12
0
파일: apricot.py 프로젝트: Ciwara/GCiss
    def __init__(self, parent=0, *args, **kwargs):
        super(ApricotsViewWidget, self).__init__(
            parent=parent, *args, **kwargs)
        self.parentWidget().setWindowTitle(Config.APP_NAME + u"    La Caise")

        self.parent = parent

        tablebox = QVBoxLayout()
        gridbox = QGridLayout()
        self.title = "La caise"
        tablebox.addWidget(FPageTitle(self.title))

        self.date_ = FormatDate(QDate.currentDate())
        self.table_op = ApricotsTableWidget(parent=self)
        tablebox.addWidget(self.table_op)
        # self.date_.setFont(QFont("Courier New", 10, True))
        self.date_.dateChanged.connect(self.table_op.refresh_)
        self.btt_export = BttExportXLS(u"Exporter")
        self.btt_export.clicked.connect(self.export_xls)

        gridbox.addWidget(self.date_, 0, 0)
        gridbox.addWidget(self.btt_export, 0, 2)
        gridbox.setColumnStretch(1, 5)

        vbox = QVBoxLayout()
        vbox.addLayout(gridbox)
        vbox.addLayout(tablebox)
        self.setLayout(vbox)
예제 #13
0
    def __init__(self, table_p, parent, provid_clt=None, type_=None, refund=None, *args, **kwargs):
        QDialog.__init__(self, parent, *args, **kwargs)

        self.type_ = type_
        self.refund = refund
        self.parent = parent
        self.table_p = table_p
        self.provid_clt = provid_clt
        self.new = True
        if self.refund:
            self.new = False
            self.last_r = self.refund
            self.type_ = refund.type_
            self.refund_date_field = FormatDate(self.refund.date)
            self.refund_date_field.setEnabled(False)
            self.title = u"Modification de {} {}".format(self.refund.type_,
                                                         self.refund.invoice.client)
            self.succes_msg = u"{} a été bien mise à jour".format(
                self.refund.type_)
            self.amount = refund.amount
            self.provid_clt = refund.provider_client
        else:
            self.refund_date_field = FormatDate(QDate.currentDate())
            self.succes_msg = u"Client a été bien enregistré"
            self.title = u"Création d'un nouvel client"
            self.amount = ""
            self.refund = Refund()
            self.last_r = Refund.select().where(
                Refund.provider_client == provid_clt).order_by(Refund.date.desc()).get()

        self.setWindowTitle(self.title)
        self.amount_field = IntLineEdit(unicode(self.amount))

        vbox = QVBoxLayout()
        self.last_remaining = self.last_r.refund_remaing()
        print(self.last_remaining)
        # try:
        #     self.last_r.refund_remaing()
        # self.remaining = self.last_r.remaining
        # except Exception as e:
        #     self
        #     print("last_r except ", e)
        #     self.last_r = None
        # self.close()

        formbox = QFormLayout()
        formbox.addRow(FormLabel("Client :"),
                       FormLabel(self.provid_clt.name))
        formbox.addRow(FormLabel("Dette restante :"),
                       FormLabel(str(formatted_number(self.last_remaining)) + Config.DEVISE))
        formbox.addRow(FormLabel(u"Date : *"), self.refund_date_field)
        formbox.addRow(FormLabel(u"Montant : *"), self.amount_field)

        butt = Button_save(u"Enregistrer")
        butt.clicked.connect(self.save_edit)
        formbox.addRow("", butt)
        # formbox.addRow("", "Le client {} n'est pas endetté")

        vbox.addLayout(formbox)
        self.setLayout(vbox)
예제 #14
0
    def __init__(self, movies, movie=None, parent=None):
        super(AddEditMovieDlg, self).__init__(parent)
        self.setupUi(self)

        self.movies = movies
        self.movie = movie
        self.acquiredDateEdit.setDisplayFormat(moviedata.DATEFORMAT)
        if movie is not None:
            self.titleLineEdit.setText(movie.title)
            self.yearSpinBox.setValue(movie.year)
            self.minutesSpinBox.setValue(movie.minutes)
            self.acquiredDateEdit.setDate(movie.acquired)
            self.acquiredDateEdit.setEnabled(False)
            self.locationLineEdit.setText(movie.location)
            self.notesTextEdit.setPlainText(movie.notes)
            self.notesTextEdit.setFocus()
            self.buttonBox.button(QDialogButtonBox.Ok).setText(
                                  "&Accept")
            self.setWindowTitle("My Movies - Edit Movie")
        else:
            today = QDate.currentDate()
            self.acquiredDateEdit.setDateRange(today.addDays(-5),
                                               today)
            self.acquiredDateEdit.setDate(today)
            self.titleLineEdit.setFocus()
        self.on_titleLineEdit_textEdited(QString())
예제 #15
0
파일: order_view.py 프로젝트: Ciwara/GCiss
    def __init__(self, parent=0, *args, **kwargs):
        super(OrderViewWidget, self).__init__(parent=parent, *args, **kwargs)

        self.order_table = OrederTableWidget(parent=self)
        self.parentWidget().setWindowTitle(Config.NAME_ORGA + u"    COMMANDE")

        self.title = FPageTitle(u"Faire une Commande")

        self.com_date = FormatDate(QDate.currentDate())
        vbox = QVBoxLayout()

        self.export_xls_btt = BttExportXLS(u"Exporter")
        self.connect(self.export_xls_btt, SIGNAL('clicked()'),
                     self.export_xls_order)

        # self.save_order_btt = Button_save(u"enregistre")
        # self.connect(self.save_order_btt, SIGNAL('clicked()'),
        #              self.save_order)

        self.restor_order_btt = Deleted_btt(u"vider")
        self.connect(self.restor_order_btt, SIGNAL('clicked()'),
                     self.remove_save)

        # Grid
        gridbox = QGridLayout()
        gridbox.addWidget(FormLabel(u"Date"), 0, 0)
        gridbox.addWidget(self.com_date, 0, 1)
        gridbox.setColumnStretch(1, 5)
        gridbox.addWidget(self.restor_order_btt, 2, 2)
        # gridbox.addWidget(self.save_order_btt, 2, 3)
        gridbox.addWidget(self.export_xls_btt, 2, 4)
        vbox.addWidget(self.title)
        vbox.addLayout(gridbox)
        vbox.addWidget(self.order_table)
        self.setLayout(vbox)
예제 #16
0
    def __init__(self, id):
        super(CatalogFilterDate, self).__init__(id)
        self.label = QLabel(TEXT_LABEL_BETWEEN)

        self.datetime_begin_edit = QDateEdit(QDate.currentDate())
        self.datetime_end_edit = QDateEdit(QDate.currentDate())
        self.datetime_begin_edit.setCalendarPopup(True)
        self.datetime_end_edit.setCalendarPopup(True)
        self.expand_widget(self.datetime_begin_edit)
        self.expand_widget(self.datetime_end_edit)

        value_item = QGridLayout()
        value_item.addWidget(self.datetime_begin_edit, 0, 0)
        value_item.addWidget(QLabel(TEXT_LABEL_AND), 0, 1)
        value_item.addWidget(self.datetime_end_edit, 0, 2)
        self.value_item = value_item
예제 #17
0
파일: period_by.py 프로젝트: Ciwara/GCiss
    def __init__(self, parent=0, *args, **kwargs):
        super(PeriodByViewWidget, self).__init__(
            parent=parent, *args, **kwargs)
        self.parent = parent
        self.title = FPageTitle(_(u"Periodic report"))

        self.on_date = FormatDate(QDate(date.today().year, 1, 1))
        self.end_date = FormatDate(QDate.currentDate())
        self.Button = Button(u"OK")
        self.Button.clicked.connect(self.rapport_filter)
        self.current_period = FLabel(self.format_period(self.on_date.text(),
                                                        self.end_date.text()))
        vbox = QVBoxLayout()
        # Grid
        gridbox = QGridLayout()
        gridbox.addWidget(FormLabel(u"Date debut"), 0, 0)
        gridbox.addWidget(self.on_date, 0, 1)
        gridbox.addWidget(FormLabel(u"Date fin"), 1, 0)
        gridbox.addWidget(self.end_date, 1, 1)
        gridbox.addWidget(self.Button, 1, 2)
        gridbox.setColumnStretch(3, 1)

        gridbox.addWidget(self.current_period, 1, 4)

        self.table = By_periodTableWidget(parent=self)

        vbox.addWidget(self.title)
        vbox.addLayout(gridbox)
        vbox.addWidget(self.table)
        self.setLayout(vbox)
예제 #18
0
    def saveSketch(self):
        self.settings['measure']['time'].elapsed()
        self.sketchSubFolder = QDate.currentDate().toString('yyyy-MM-dd_') + QTime.currentTime().toString('HH-mm-ss')

        if not os.path.exists(self.storeFolder + self.sketchSubFolder):
            os.makedirs(self.storeFolder + self.sketchSubFolder)


        data = self.sketchFile
        self.sketchOutDir = str(self.storeFolder + self.sketchSubFolder+'/')
        fname = self.sketchOutDir + 'out.txt'
        f = open(fname, 'w')
        f.write(data)
        f.close()
        try:
            self.plotFrame.savePlot(self.sketchOutDir+'currentSketchView.png')
        except:
            pass
        try:
            filename = sorted(os.listdir(self.afmImageFolder))[-1]
            shutil.copy2(self.afmImageFolder + filename,self.sketchOutDir+filename)
            shutil.copy2('D:/lithography/current.png',self.sketchOutDir+'currentAFMImage.png')
        except:
            pass

        self.log('sketch', str(self.storeFolder + self.sketchSubFolder))
예제 #19
0
 def on_tblCuenta_currentChanged( self, _current, _previous ):
     fila = self.tblCuenta.selectionModel().currentIndex().row()
     fecha = self.filtermodel.index( fila, 6 ).data().toDate()
     if fecha.toString() != "":
         self.dtPicker.setDate( fecha )
     else:
         fecha = QDate.currentDate()
예제 #20
0
 def aceptar( self ):
     fecha = QDate.currentDate()
     fecha = QDate( fecha.year(), fecha.month(), fecha.daysInMonth() )
     if self.dtPicker.date() > fecha:
         QMessageBox.information( None, "Cuentas Bancarias", "La cuenta seleccionada ya fue conciliada" )
     else:
         return self.accept()
    def test_value_date(self):
        test_property = DateProperty("test name", QDate.currentDate(), "gco:Date")

        test_property.value = QDate.fromString("2015-06-07")

        with self.assertRaises(TypeError):
            test_property.value = 20150607
예제 #22
0
def test_wizard(mocker, qtbot, os, bits, wizard_class, pages):
    mozinfo = mocker.patch('mozregui.wizard.mozinfo')
    mozinfo.os = os
    mozinfo.bits = bits

    wizard = wizard_class()
    qtbot.addWidget(wizard)
    wizard.show()
    qtbot.waitForWindowShown(wizard)

    for page_class in pages:
        assert isinstance(wizard.currentPage(), page_class)
        wizard.next()

    # everything has been visited
    assert wizard.visitedPages() == wizard.pageIds()

    fetch_config, options = wizard.options()

    now = QDate.currentDate()

    assert isinstance(fetch_config, CommonConfig)
    assert fetch_config.app_name == 'firefox'  # this is the default
    assert fetch_config.os == os
    assert fetch_config.bits == bits
    assert fetch_config.build_type == 'shippable'
    assert not fetch_config.repo

    assert options['profile'] == ''
    if isinstance(wizard, SingleRunWizard):
        assert options['launch'] == now.addDays(-3).toPyDate()
    else:
        assert options['good'] == now.addYears(-1).toPyDate()
        assert options['bad'] == now.toPyDate()
    def __init__(self, iface, dbm):
        QDialog.__init__(self)
        self.iface = iface
        self.dbm = dbm
        self.setupUi(self)

        self.accepted.connect(self.onAccepted)

        now = QDate.currentDate()
        self.uiSearchDate.setDate(now)
        self.uiSearchDate.setMaximumDate(now)
        self.uiToDate.setDate(now)
        self.uiToDate.setMaximumDate(now)
        # FIXME next two lines into def => update on change of one of the two Date edits
        # FIXME next two lines into def => update on change of one of the two Date edits
        self.uiFromDate.setMaximumDate(self.uiToDate.date())
        self.uiToDate.setMinimumDate(self.uiFromDate.date())

        # Signals
        self.uiVerticalChk.stateChanged.connect(self.onFilmModeChange)
        self.uiObliqueChk.stateChanged.connect(self.onFilmModeChange)

        #self.uiSearchDate.dateChanged.connect()

        #self.uiMilitaryNumberEdit.textChanged()
        self.setupMilitaryCombo()

        self.uiFromDate.dateChanged.connect(self.timeSpanChanged)
        self.uiToDate.dateChanged.connect(self.timeSpanChanged)
        self.uiFromChk.stateChanged.connect(self.timeSpanConstraints)
        self.uiToChk.stateChanged.connect(self.timeSpanConstraints)
예제 #24
0
def clearRkd(rkdForm):
    rkdForm.rkdDocNoText.setText(u'自动编号')
    rkdForm.CustomText.clear()
    rkdForm.ItemText.clear()
    rkdForm.weightText.clear()
    rkdForm.inDateEdit.setDate(QDate.currentDate())
    rkdForm.stockText.clear()
예제 #25
0
 def __init__(self, minimum=QDate(),
              maximum=QDate.currentDate(),
              format="yyyy-MM-dd", parent=None):
     super(DateColumnDelegate, self).__init__(parent)
     self.minimum = minimum
     self.maximum = maximum
     self.format = QString(format)
예제 #26
0
    def __init__(self, parent=None):
        QtGui.QWidget.__init__(self, parent)
	self.text = 'Wybierz wpis \n <----'	
	self.setWindowIcon(QtGui.QIcon('./Icon/diary-no2.png'))        
	self.ui = Ui_editor()
        self.ui.setupUi(self)
	self.index = 0
	self.ui.textEdit.setText(self.text)
	self.ui.actionClear.triggered.connect(self.clear)
	self.ui.actionOpen.triggered.connect(self.file_open)
	self.ui.actionSave.triggered.connect(self.file_save)
	self.ui.actionSave_as.triggered.connect(self.file_save_as)		
	self.ui.actionInfo.triggered.connect(self.ShowAboutPopup)	
	self.ui.actionRemove.triggered.connect(self.remove_file)
	self.ui.actionnew_day.triggered.connect(self.next_day)
	self.ui.actionHelp.triggered.connect(self.Help)	
	self.currentDate = QDate.currentDate()	
	self.today = datetime.date.today().strftime('%d-%m-%Y')
	self.today_full = datetime.date.today().strftime('%A %d %B %Y')
	self.ui.label_date.setText('Dzisiaj jest: '+self.today_full.decode('utf-8'))	
    	self.filemodel = QtGui.QFileSystemModel()
	self.filemodel.setFilter(QtCore.QDir.NoDotAndDotDot | QtCore.QDir.Files)
	self.filemodel.sort(3,1)	
	self.ui.listView.setModel(self.filemodel)	
        root_index = self.filemodel.setRootPath('./Data')	
	self.ui.listView.setRootIndex(root_index)
	self.ui.listView.clicked.connect(self.clicked)
	self.ui.listView.activated.connect(self.clicked) 		
예제 #27
0
파일: printer.py 프로젝트: maximerobin/Ufwi
def interval_previous_week():
    date = QDate.currentDate()
    end = QDateTime(date.addDays(-(date.dayOfWeek() - 1)))
    begin = QDateTime(date.addDays(-(date.dayOfWeek() - 1) - 7))
    return {'start_time': begin.toTime_t(),
            'end_time':   end.toTime_t()
           }
예제 #28
0
파일: printer.py 프로젝트: maximerobin/Ufwi
def interval_previous_month():
    date = QDate.currentDate()
    end = QDateTime(date.addDays(-date.day() + 1))
    begin = QDateTime(end.date().addDays(-end.date().addDays(-1).daysInMonth()))
    return {'start_time': begin.toTime_t(),
            'end_time':   end.toTime_t()
           }
 def _getCalendar(self, display_format, value = None):
     '''
     Get a combobox filled with the given values
     
     :param values: The values as key = value, value = description or text
     :type values: Dict
     
     :returns: A combobox
     :rtype: QWidget
     '''
     
     
     widget = QWidget()
     calendar = QDateTimeEdit()
     calendar.setCalendarPopup(True)
     calendar.setDisplayFormat(display_format)
     if value is not None:
         calendar.setDate(QDate.fromString(value, display_format))
     else:
         calendar.setDate(QDate.currentDate())
     layout = QHBoxLayout(widget)
     layout.addWidget(calendar, 1);
     layout.setAlignment(Qt.AlignCenter);
     layout.setContentsMargins(5,0,5,0);
     widget.setLayout(layout);
             
     return widget
예제 #30
0
파일: inventory.py 프로젝트: Ciwara/GCiss
    def __init__(self, parent=0, *args, **kwargs):
        super(InventoryViewWidget, self).__init__(
            parent=parent, *args, **kwargs)

        self.parentWidget().setWindowTitle(
            Config.APP_NAME + u"     INVENTAIRE")

        self.parent = parent

        self.title = u"Inventaire"

        self.on_date = FormatDate(QDate(date.today().year, 1, 1))
        self.end_date = FormatDate(QDate.currentDate())
        self.button = Button(u"Ok")
        self.button.clicked.connect(self.rapport_filter)
        self.btt_export = BttExportXLS(u"Exporter")
        self.btt_export.clicked.connect(self.export_xls)

        self.invent_table = InventaireTableWidget(parent=self)
        # Grid
        gridbox = QGridLayout()
        gridbox.addWidget(FormLabel(u"Date debut"), 0, 1)
        gridbox.addWidget(self.on_date, 0, 2)
        gridbox.addWidget(FormLabel(u"Date fin"), 1, 1)
        gridbox.addWidget(self.end_date, 1, 2)
        gridbox.addWidget(self.button, 1, 3)
        gridbox.addWidget(self.btt_export, 1, 6)
        gridbox.setColumnStretch(4, 5)
        vbox = QVBoxLayout()
        vbox.addWidget(FPageTitle(self.title))
        vbox.addLayout(gridbox)
        vbox.addWidget(self.invent_table)
        self.setLayout(vbox)
        self.refresh()
예제 #31
0
#-*- coding: utf8 -*-

if __name__ == "__main__":
    from PyQt4.QtCore import QDate

    date = QDate.currentDate()
    print date.toString("yyyy-MM-dd")
예제 #32
0
    def __init__(self, parent=None, _availabilityEnabled=0):
        super(XGanttWidget, self).__init__(parent)
        '''
	menubar = QMenuBar(self)
	#menubar.sizeHint(QSize.setHeight(10))
	
	fileMenu = menubar.addMenu('&File')
	
	fileMenu.addAction('Create Project')
	fileMenu.addSeparator()
	fileMenu.addAction('Save')
	fileMenu.addSeparator()
	fileMenu.addAction('Exit')
	fileMenu.triggered.connect( self.fileMenuActions )
	'''

        # load the user interface
        if getattr(sys, 'frozen', None):
            #print (sys._MEIPASS+"/ui/xganttwidget.ui");
            projexui.loadUi(sys._MEIPASS,
                            self,
                            uifile=(sys._MEIPASS + "/ui/xganttwidget.ui"))

        else:
            projexui.loadUi(__file__, self)

        # define custom properties
        self._backend = None
        self._dateStart = QDate.currentDate()
        self._dateEnd = QDate.currentDate().addMonths(12)
        self._alternatingRowColors = False
        self._cellWidth = 15
        self._cellHeight = 15
        self._first = True
        self._dateFormat = 'M/d/yy'
        self._timescale = XGanttWidget.Timescale.Year
        self._scrolling = False

        # setup the palette colors
        palette = self.palette()
        color = palette.color(palette.Base)

        self._gridPen = QPen(color.darker(135))
        self._brush = QBrush(color)
        self._alternateBrush = QBrush(color.darker(105))
        self._currentDayBrush = QBrush(QColor(146, 252, 186))
        self._holidayBrush = QBrush(QColor(166, 46, 46))
        self._bookedBrush = QBrush(QColor(20, 250, 0))
        self._unavailableBrush = QBrush(QColor(75, 75, 75))
        self._underbookedBrush = QBrush(QColor(255, 255, 20))
        self._overbookedBrush = QBrush(QColor(255, 25, 25))
        self._overbookedAmount = {}
        self._unassignedBrush = QBrush(QColor(25, 25, 255))

        weekendColor = color.darker(148)

        self._availabilityEnabled = _availabilityEnabled

        self._weekendBrush = QBrush(weekendColor)

        # setup the columns for the tree
        if _availabilityEnabled:
            self.setColumns(['Name'])
        else:
            self.setColumns(
                ['Name', 'Start', 'End', 'Calendar Days', 'Work Days'])
        header = self.uiGanttTREE.header()
        header.setFixedHeight(self._cellHeight * 2)
        header.setResizeMode(0, header.ResizeToContents)
        header.setDefaultSectionSize(60)
        headerItem = self.uiGanttTREE.headerItem()
        headerItem.setSizeHint(0, QSize(10, header.height()))

        self.uiGanttTREE.setContextMenuPolicy(Qt.CustomContextMenu)

        # connect signals
        self.uiGanttTREE.customContextMenuRequested.connect(
            self.showProjectMenu)

        # initialize the tree widget
        self.uiGanttTREE.setShowGrid(False)

        #enable drag and drop
        self.uiGanttTREE.setDragDropFilter(
            self.uiGanttTREE.setDragDropFilter(XGanttWidget.handleDragDrop))

        if (sharedDB.currentUser._idPrivileges == 3):
            self.uiGanttTREE.setEditable(False)
        for act in sharedDB.mainWindow._fileMenu.actions():
            if act.text() == "Save" or act.text() == "Create Project":
                act.setEnabled(False)

        else:
            self.uiGanttTREE.setEditable(True)

        self.uiGanttTREE.setHorizontalScrollBarPolicy(Qt.ScrollBarAlwaysOn)
        self.uiGanttTREE.setVerticalScrollBarPolicy(Qt.ScrollBarAlwaysOff)
        self.uiGanttTREE.setVerticalScrollMode(self.uiGanttTREE.ScrollPerPixel)

        #left half size
        self.uiGanttTREE.resize(400, 20)

        # initialize the view widget
        #self.uiGanttVIEW.setDragMode( self.uiGanttVIEW.RubberBandDrag )
        self.uiGanttVIEW.setHorizontalScrollBarPolicy(Qt.ScrollBarAlwaysOn)
        self.uiGanttVIEW.setAlignment(Qt.AlignTop | Qt.AlignLeft)
        self.uiGanttVIEW.setScene(XGanttScene(self))
        self.uiGanttVIEW.installEventFilter(self)
        #self.uiGanttVIEW.horizontalScrollBar().setValue(50)

        # create connections
        self.uiGanttTREE.itemExpanded.connect(self.syncView)
        self.uiGanttTREE.itemCollapsed.connect(self.syncView)

        # connect scrollbars
        tree_bar = self.uiGanttTREE.verticalScrollBar()
        view_bar = self.uiGanttVIEW.verticalScrollBar()

        tree_bar.rangeChanged.connect(self.__updateViewRect)
        tree_bar.valueChanged.connect(self.__scrollView)
        view_bar.valueChanged.connect(self.__scrollTree)

        # connect selection
        self.uiGanttTREE.itemSelectionChanged.connect(self.__selectView)
        self.uiGanttVIEW.scene().selectionChanged.connect(self.__selectTree)
        self.uiGanttTREE.itemChanged.connect(self.updateItemData)

        if self._availabilityEnabled:
            self._currentDayBrush = None
            self._holidayBrush = QBrush(QColor(75, 75, 75))
            weekendColor = QBrush(QColor(75, 75, 75))
            self.uiGanttTREE.setEditable(False)
    def initParametersPan(self):
        ui = Ui_GeoDetermine()
        self.parametersPanel = ui
        FlightPlanBaseDlg.initParametersPan(self)

        self.parametersPanel.pnlStartPosP = PositionPanel(
            self.parametersPanel.gbStartPosP, None, None, "Degree")
        # self.parametersPanel.pnlStartPosP.degreeFormat = "ddmmss.ssssH"
        self.parametersPanel.pnlStartPosP.alwwaysShowString = "Degree"
        #         self.parametersPanel.pnlWaypoint.groupBox.setTitle("FAWP")
        self.parametersPanel.pnlStartPosP.btnCalculater.hide()
        self.parametersPanel.pnlStartPosP.hideframe_Altitude()
        # self.parametersPanel.pnlStartPosP.showframe_ID()
        self.parametersPanel.pnlStartPosP.setObjectName("pnlStartPosP")
        self.connect(self.parametersPanel.pnlStartPosP,
                     SIGNAL("positionChanged"), self.autoCalcFinishMagVar)

        ui.verticalLayout_gbStartPosP.addWidget(
            self.parametersPanel.pnlStartPosP)

        self.parametersPanel.pnlVarStartP = DegreesBoxPanel(self)
        self.parametersPanel.pnlVarStartP.CaptionLabel = "Magnetic Variation"
        self.connect(self.parametersPanel.pnlVarStartP,
                     SIGNAL("btnDegreeBoxPanel_clicked"), self.method_32_P)
        self.connect(self.parametersPanel.pnlVarStartP,
                     SIGNAL("txtDegreeBox_textChanged"),
                     self.txtDegreeBox_textChangedP)
        ui.verticalLayout_gbStartPosP.addWidget(
            self.parametersPanel.pnlVarStartP)

        self.parametersPanel.pnlVarFinishP = DegreesBoxPanel(self)
        self.parametersPanel.pnlVarFinishP.ButtonVisible = False
        self.parametersPanel.pnlVarFinishP.Enabled = False
        self.parametersPanel.pnlVarFinishP.CaptionLabel = "Magnetic Variation at Finish"
        ui.vLayout_grbParametersP.insertWidget(
            1, self.parametersPanel.pnlVarFinishP)
        # self.connect(self.parametersPanel.pnlVarStartP, SIGNAL("btnDegreeBoxPanel_clicked"), self.method_32_P)

        self.parametersPanel.pnlStartPosBD = PositionPanel(
            self.parametersPanel.gbFinishPosBD, None, None, "Degree")
        #         self.parametersPanel.pnlStartPosBD.groupBox.setTitle("FAWP")
        #         self.parametersPanel.pnlStartPosBD.degreeFormat = "ddmmss.ssssH"
        self.parametersPanel.pnlStartPosBD.alwwaysShowString = "Degree"
        self.parametersPanel.pnlStartPosBD.btnCalculater.hide()
        self.parametersPanel.pnlStartPosBD.hideframe_Altitude()
        self.parametersPanel.pnlStartPosBD.showframe_ID()
        self.parametersPanel.pnlStartPosBD.setObjectName("pnlStartPosBD")
        ui.verticalLayout_gbStartPosBD.insertWidget(
            0, self.parametersPanel.pnlStartPosBD)
        self.connect(self.parametersPanel.pnlStartPosBD,
                     SIGNAL("positionChanged"), self.positionChangedStartBD)

        self.parametersPanel.pnlVarStartBD = DegreesBoxPanel(self)
        self.parametersPanel.pnlVarStartBD.CaptionLabel = "Magnetic Variation"
        # self.parametersPanel.pnlVarStartBD.Enabled = False
        self.connect(self.parametersPanel.pnlVarStartBD,
                     SIGNAL("btnDegreeBoxPanel_clicked"), self.method_34_BD)
        # self.connect(self.parametersPanel.pnlVarStartBD, SIGNAL("txtDegreeBox_textChanged"), self.txtDegreeBox_textChangedP)
        ui.verticalLayout_gbStartPosBD.addWidget(
            self.parametersPanel.pnlVarStartBD)

        self.parametersPanel.pnlFinishPosBD = PositionPanel(
            self.parametersPanel.gbFinishPosBD, None, None, "Degree")
        #         self.parametersPanel.pnlStartPosBD.groupBox.setTitle("FAWP")
        #         self.parametersPanel.pnlFinishPosBD.degreeFormat = "ddmmss.ssssH"
        self.parametersPanel.pnlFinishPosBD.alwwaysShowString = "Degree"
        self.parametersPanel.pnlFinishPosBD.btnCalculater.hide()
        self.parametersPanel.pnlFinishPosBD.hideframe_Altitude()
        self.parametersPanel.pnlFinishPosBD.showframe_ID()
        self.parametersPanel.pnlFinishPosBD.setObjectName("pnlFinishPosBD")
        ui.verticalLayout_gbFinishPosBD.insertWidget(
            0, self.parametersPanel.pnlFinishPosBD)
        self.connect(self.parametersPanel.pnlFinishPosBD,
                     SIGNAL("positionChanged"), self.positionChangedFinishBD)

        self.parametersPanel.pnlVarFinishBD = DegreesBoxPanel(self)
        self.parametersPanel.pnlVarFinishBD.CaptionLabel = "Magnetic Variation"
        # self.parametersPanel.pnlVarFinishBD.Enabled = False
        self.connect(self.parametersPanel.pnlVarFinishBD,
                     SIGNAL("btnDegreeBoxPanel_clicked"), self.method_36_BD)
        # self.connect(self.parametersPanel.pnlVarFinishBD, SIGNAL("txtDegreeBox_textChanged"), self.txtDegreeBox_textChangedP)
        ui.verticalLayout_gbFinishPosBD.addWidget(
            self.parametersPanel.pnlVarFinishBD)

        self.parametersPanel.pnlPositionMVD = PositionPanel(
            self.parametersPanel.tabGeoDetermineMV, None, None, "Degree")
        self.parametersPanel.pnlPositionMVD.groupBox.setTitle("Position")
        self.parametersPanel.pnlPositionMVD.alwwaysShowString = "Degree"
        self.parametersPanel.pnlPositionMVD.btnCalculater.hide()
        self.parametersPanel.pnlPositionMVD.setObjectName("pnlPositionMVD")
        ui.verticalLayout_3.insertWidget(0,
                                         self.parametersPanel.pnlPositionMVD)
        self.connect(self.parametersPanel.pnlPositionMVD,
                     SIGNAL("positionChanged"), self.method_28_MVD)

        self.connect(self.parametersPanel.txtForwardTP, SIGNAL("Event_0"),
                     self.txtForwardTP_textChanged)
        self.connect(self.parametersPanel.chbAutoFinishMagVar,
                     SIGNAL("Event_0"), self.chbAutoFinishMagVar_clicked)
        self.connect(self.parametersPanel.txtDistanceP, SIGNAL("Event_0"),
                     self.autoCalcFinishMagVar)

        self.connect(self.parametersPanel.txtForwardMP, SIGNAL("Event_0"),
                     self.txtForwardMP_textChanged)
        self.parametersPanel.btnResultP.clicked.connect(
            self.btnResultP_clicked)
        self.parametersPanel.tabGeneral.currentChanged.connect(
            self.tabGeneral_CurrentChanged)
        self.parametersPanel.chbAutoVarBD.clicked.connect(
            self.chbAutoVarBD_clicked)
        self.parametersPanel.dtpDate.dateChanged.connect(self.method_28_MVD)
        self.connect(self.parametersPanel.cmbModel, SIGNAL("Event_0"),
                     self.method_28_MVD)
        self.parametersPanel.btnDtpDate.clicked.connect(
            self.btnDtpDate_clicked)

        self.resultModelP = QStandardItemModel()
        self.parametersPanel.tblResultP.setModel(self.resultModelP)

        self.resultModelBD = QStandardItemModel()
        self.parametersPanel.tblResultBD.setModel(self.resultModelBD)

        self.ttt = 0
        self.txtForwardTP_textChanged()

        self.setHistoryData()

        self.autoVarSet = False
        self.dateBD = QDate.currentDate()
        self.modelBD = MagneticModel.WMM2010
        self.parametersPanel.btnResultBD.setVisible(False)

        self.parametersPanel.dtpDate.setDate(QDate.currentDate())

        self.calendar = QCalendarWidget()
        self.calendar.clicked.connect(self.calendar_clicked)

        self.menu = QMenu()
        layout = QVBoxLayout(self.menu)
        layout.addWidget(self.calendar)
예제 #34
0
 def new_recdent(self):
     if self.recdent_period is None:
         self.recdent_period = 6
     return QDate.currentDate().addMonths(self.recdent_period).toPyDate()
예제 #35
0
    def _build_wdgs(self):
        """
        Builds own widgets.
        """

        self.ttl_lbl = QLabel(self)
        self.ttl_lbl.setObjectName(u'ttl_lbl')
        self.ttl_lbl.setAlignment(Qt.AlignRight | Qt.AlignVCenter)
        self.ttl_lbl.setText(u'title')
        self.grid_lyt.addWidget(self.ttl_lbl, 0, 0, 1, 1)

        self.ttl_le = QLineEdit(self)
        self.ttl_le.setObjectName(u'ttl_le')
        self.grid_lyt.addWidget(self.ttl_le, 0, 1, 1, 1)

        self.au_lbl = QLabel(self)
        self.au_lbl.setObjectName(u'au_lbl')
        self.au_lbl.setAlignment(Qt.AlignRight | Qt.AlignVCenter)
        self.au_lbl.setText(u'author(s)')
        self.grid_lyt.addWidget(self.au_lbl, 1, 0, 1, 1)

        self.au_le = QLineEdit(self)
        self.au_le.setObjectName(u'au_le')
        self.grid_lyt.addWidget(self.au_le, 1, 1, 1, 1)

        self.yr_lbl = QLabel(self)
        self.yr_lbl.setObjectName(u'yr_lbl')
        self.yr_lbl.setAlignment(Qt.AlignRight | Qt.AlignVCenter)
        self.yr_lbl.setText(u'year')
        self.grid_lyt.addWidget(self.yr_lbl, 2, 0, 1, 1)

        today_dt = QDate.currentDate()

        self.yr_mde = de.MtyDe(self)
        self.yr_mde.setObjectName(u'yr_mde')
        self.yr_mde.setDisplayFormat('yyyy')
        self.grid_lyt.addWidget(self.yr_mde, 2, 1, 1, 1)

        self.isbn_lbl = QLabel(self)
        self.isbn_lbl.setObjectName(u'isbn_lbl')
        self.isbn_lbl.setAlignment(Qt.AlignRight | Qt.AlignVCenter)
        self.isbn_lbl.setText(u'isbn')
        self.grid_lyt.addWidget(self.isbn_lbl, 3, 0, 1, 1)

        self.isbn_le = QLineEdit(self)
        self.isbn_le.setObjectName(u'isbn_le')
        self.grid_lyt.addWidget(self.isbn_le, 3, 1, 1, 1)

        self.issn_lbl = QLabel(self)
        self.issn_lbl.setObjectName(u'issn_lbl')
        self.issn_lbl.setAlignment(Qt.AlignRight | Qt.AlignVCenter)
        self.issn_lbl.setText(u'issn')
        self.grid_lyt.addWidget(self.issn_lbl, 4, 0, 1, 1)

        self.issn_le = QLineEdit(self)
        self.issn_le.setObjectName(u'issn_le')
        self.grid_lyt.addWidget(self.issn_le, 4, 1, 1, 1)

        self.tp_lbl = QLabel(self)
        self.tp_lbl.setObjectName(u'tp_lbl')
        self.tp_lbl.setAlignment(Qt.AlignRight | Qt.AlignVCenter)
        self.tp_lbl.setText(u'referenceType')
        self.grid_lyt.addWidget(self.tp_lbl, 5, 0, 1, 1)

        self.tp_cb = QComboBox(self)
        self.tp_cb.setObjectName(u'tp_cb')
        self.grid_lyt.addWidget(self.tp_cb, 5, 1, 1, 1)

        self.jrn_lbl = QLabel(self)
        self.jrn_lbl.setObjectName(u'jrn_lbl')
        self.jrn_lbl.setAlignment(Qt.AlignRight | Qt.AlignVCenter)
        self.jrn_lbl.setText(u'journalName')
        self.grid_lyt.addWidget(self.jrn_lbl, 6, 0, 1, 1)

        self.jrn_le = QLineEdit(self)
        self.jrn_le.setObjectName(u'jrn_le')
        self.grid_lyt.addWidget(self.jrn_le, 6, 1, 1, 1)

        self.vol_lbl = QLabel(self)
        self.vol_lbl.setObjectName(u'vol_lbl')
        self.vol_lbl.setAlignment(Qt.AlignRight | Qt.AlignVCenter)
        self.vol_lbl.setText(u'volume')
        self.grid_lyt.addWidget(self.vol_lbl, 7, 0, 1, 1)

        self.vol_le = QLineEdit(self)
        self.vol_le.setObjectName(u'vol_le')
        self.grid_lyt.addWidget(self.vol_le, 7, 1, 1, 1)

        self.pg_lbl = QLabel(self)
        self.pg_lbl.setObjectName(u'pg_lbl')
        self.pg_lbl.setAlignment(Qt.AlignRight | Qt.AlignVCenter)
        self.pg_lbl.setText(u'page')
        self.grid_lyt.addWidget(self.pg_lbl, 8, 0, 1, 1)

        self.pg_le = QLineEdit(self)
        self.pg_le.setObjectName(u'pg_le')
        self.grid_lyt.addWidget(self.pg_le, 8, 1, 1, 1)

        self.mand_wdgs = [self.ttl_le, self.au_le, self.yr_mde, self.tp_cb]

        self.iw.set_mand_wdgs(self.mand_wdgs)

        # temporary workaround
        self.vol_le.setValidator(vald.LenIntVald(self.vol_le, 1, 32767))

        self._fetch_ref_data()

        # to keep order
        self.input_wdgs = [
            self.ttl_le, self.au_le, self.yr_mde, self.isbn_le, self.issn_le,
            self.tp_cb, self.jrn_le, self.vol_le, self.pg_le
        ]

        self.btn_lyt = QHBoxLayout()
        self.grid_lyt.addLayout(self.btn_lyt, 9, 1, 1, 1)

        self.sv_btn = QPushButton(self)
        self.sv_btn.setObjectName(u'sv_btn')
        self.sv_btn.setText(u'Save')
        self.sv_btn.clicked.connect(self._save_ref)
        self.btn_lyt.addWidget(self.sv_btn)

        self.cl_btn = QPushButton(self)
        self.cl_btn.setObjectName(u'ok_btn')
        self.cl_btn.setText(u'Close')
        self.cl_btn.clicked.connect(self.close)
        self.btn_lyt.addWidget(self.cl_btn)
예제 #36
0
 def __init__(self):
     WizardPage.__init__(self)
     now = QDate.currentDate()
     self.ui.start.ui.date.setDate(now.addYears(-1))
     self.ui.end.ui.date.setDate(now)
     self.ui.find_fix.stateChanged.connect(self.change_labels)
예제 #37
0
 def updateDate(self):
     now = datetime.now()
     self.setLeftText(QDate.currentDate().toString("dddd, dd. MMMM yyyy"))
예제 #38
0
 def fullPricePaid(self):
     self.ui.paidSpinBox.setValue(float(self.ui.endPriceLabel.text()))
     self.ui.paidDateEdit.setDate(QDate.currentDate())
     self.ui.DueDateEdit.setDate(QDate.currentDate())
예제 #39
0
 def show_time(self):
     a = QTime.currentTime()
     a1 = QDate.currentDate()
     a2 = a1.toString('yyyy-MM-dd') + ' ' + a.toString('hh:mm:ss')
     self.Ctime.setText(QString(a2))
예제 #40
0
 def timeForChecking(self):
   """ determine whether it's the time for checking for news and updates now """
   if self.checkingOnStartInterval() == 0:
     return True
   settings = QSettings()
   try:
     # QSettings may contain ivalid value...
     interval = settings.value(settingsGroup+"/checkOnStartLastDate",type=QDate).daysTo(QDate.currentDate())
   except:
     interval = 0
   if interval >= self.checkingOnStartInterval():
     return True
   else:
     return False
예제 #41
0
 def saveCheckingOnStartLastDate(self):
   """ set today's date as the day of last checking  """
   settings = QSettings()
   settings.setValue(settingsGroup+"/checkOnStartLastDate", QDate.currentDate())
예제 #42
0
 def update_date(self):
     """
     Get the current date and display on the date label of the UI
     """
     self.curr_day = QDate.currentDate().toString('MMMM d, yyyy')
     self.date.setText(self.curr_day)
예제 #43
0
    def resetCharacter(self):
        ## Der Charkater wird umorganisiert, ohne daß wir haufenweise Warnhinweise haben wollen.
        self.isLoading = True
        # Standardspezies ist der Mensch.
        self.species = Config.SPECIES_INITIAL
        # Zeitalter festlegen.
        self.era = Config.ERA_INITIAL
        ## Anfangsdatum setzen.
        self.dateGame = QDate.currentDate()
        self.dateBirth = QDate(self.dateGame.year() - Config.AGE_INITIAL,
                               self.dateGame.month(), self.dateGame.day())
        self.dateBecoming = QDate(self.dateGame.year() - Config.AGE_ADULT,
                                  self.dateGame.month(), self.dateGame.day())

        # Löschen aller Identitäten.
        self.identity.reset()

        #Debug.debug(self.__storage.virtues[0])
        #Debug.debug(self.__storage.virtues[0]["name"])
        self.virtue = self.__storage.virtues[0]["name"]
        self.vice = self.__storage.vices[0]["name"]
        self.breed = ""
        self.bonus = ""
        self.kith = ""
        self.faction = ""
        self.height = 1.60
        self.weight = 60
        self.eyes = ""
        self.hair = ""
        self.nationality = ""
        # Nicht notwendig, da ja schon die Spezies gewechselt wird, was automatisch diese Felder zurücksetzt.
        #self.breed = self.__storage.breeds(Config.SPECIES_INITIAL)[0]
        self.__derangements = {}
        self.party = ""
        self.description = ""

        # Menschen haben eine Leere liste, also kann ich auch die Indizes nicht ändern.
        #// setBreed(storage.breedNames(species()).at(0));
        #// setFaction(storage.breedNames(species()).at(0));

        # Attribute und andere Eigenschaften auf Anfangswerte setzen.
        for item in self.__traits:
            val = 0
            if item == "Attribute":
                val = 1
            for subitem in self.__traits[item]:
                for subsubitem in self.__traits[item][subitem].values():
                    subsubitem.value = val
                    subsubitem.customText = ""
                    subsubitem.specialties = []

        self.morality = Config.TRAIT_MORALITY_VALUE_DEFAULT

        # Übernatürliche Eigenschaft festlegen.
        self.powerstat = Config.TRAIT_POWERSTAT_VALUE_DEFAULT

        # Beim Löschen ist darauf zu achten, daß ich nicht aus der Liste löschen kann, über die ich iteriere. Sonst wird nicht alles gelöscht.
        for category in self.__weapons:
            ## Kopie erstellen
            weaponList = self.__weapons[category][:]
            for weapon in weaponList:
                self.deleteWeapon(category, weapon)
        self.setArmor(name="")
        ## Kopie erstellen
        eqipmentList = self.__equipment[:]
        for item in eqipmentList:
            self.deleteEquipment(item)
        for category in self.__automobiles:
            ## Kopie erstellen
            automobileList = self.__automobiles[category][:]
            for automobile in automobileList:
                self.deleteAutomobile(category, automobile)
        for typ in self.__extraordinaryItems:
            ## Kopie erstellen
            extraordinaryItemList = self.__extraordinaryItems[typ][:]
            for item in extraordinaryItemList:
                self.deleteExtraordinaryItem(typ, item)
        self.magicalTool = ""
        self.nimbus = ""
        self.paradoxMarks = ""
        for vinculum in self.__vinculi:
            vinculum.name = ""
            vinculum.value = 0

        self.companionName = ""
        self.companionPower = 0
        self.companionFinesse = 0
        self.companionResistance = 0
        self.companionSize = 0
        self.companionSpeedFactor = 0
        self.companionFuel = 0
        for companionInfluence in self.__companionInfluences:
            companionInfluence.name = ""
            companionInfluence.value = 0
        self.companionNumina = []
        self.companionBan = ""

        self.picture = QPixmap()

        ## Fertig mit dem Laden der enuen Werte.
        self.isLoading = False
    def __init__(self, student, term, edit=None, parent=None):
        super(FormStudentMisconduct, self).__init__(parent)
        self.student = student
        self.term = term

        self.db_class = 'student_class' + str(self.term)
        self.db_subject = 'student_subject' + str(self.term)

        student = self.pullData('students', 1, {'id': self.student})
        term = self.pullData('terms', 1, {'id': self.term})
        session = self.pullData('session', 1, {'id': term['sessionID']})

        self.session = str(
            str(session['name']) + " " + str(term['name'] + " Term")).title()
        self.fullname = str(
            str(student['surname']) + " " + str(student['firstname'])).title()
        self.sessionID = session['id']

        fullnameLbl = QLabel(self.fullname)
        fullnameLbl.setFont(QFont("Candara", 14, QFont.Bold))
        termLbl = QLabel(self.session)
        termLbl.setFont(QFont("Candara", 12, QFont.Bold))

        actionLbl = QLabel('Action')
        reactionLbl = QLabel('Corrective/Punitive Measure')
        issuerLbl = QLabel('Issuer')
        self.actionData = QPlainTextEdit()
        self.reactionData = QPlainTextEdit()
        self.staffData = QLineEdit()
        self.staffData.setPlaceholderText(
            'Staff Name or  Deparment or Organisation')

        self.pb = QPushButton()
        self.pb.setObjectName("close")
        self.pb.setText("Close")

        self.pb1 = QPushButton()
        self.pb1.setObjectName("Add")
        self.pb1.setText("Add")

        self.pb2 = QPushButton()
        self.pb2.setObjectName("Edit")
        self.pb2.setText("Edit")

        self.connect(self.pb1, SIGNAL("clicked()"),
                     lambda: self.button_click())
        self.connect(self.pb2, SIGNAL("clicked()"), lambda: self.button_edit())
        self.connect(self.pb, SIGNAL("clicked()"), lambda: self.button_close())

        self.dateLbl = QLabel('Choose Date:')
        currentDate = QDate()
        self.dateData = QDateEdit()
        self.dateData.setDate(currentDate.currentDate())
        self.dateData.setCalendarPopup(True)

        h_box = QHBoxLayout()
        h_box.addWidget(self.dateLbl)
        h_box.addWidget(self.dateData)

        h_box2 = QHBoxLayout()
        h_box2.addWidget(issuerLbl)
        h_box2.addWidget(self.staffData)

        h_box1 = QHBoxLayout()
        h_box1.addWidget(self.pb)
        h_box1.addWidget(self.pb1)
        h_box1.addWidget(self.pb2)

        self.v_box = QVBoxLayout()
        self.v_box.addWidget(fullnameLbl)
        self.v_box.addWidget(termLbl)
        self.v_box.addLayout(h_box)
        self.v_box.addWidget(actionLbl)
        self.v_box.addWidget(self.actionData)
        self.v_box.addWidget(reactionLbl)
        self.v_box.addWidget(self.reactionData)
        self.v_box.addLayout(h_box2)
        self.v_box.addLayout(h_box1)

        if edit and len(edit) > 0:
            self.edit = edit
            self.editRow(edit)
            self.pb1.hide()
            self.pb2.show()
        else:
            self.edit = None
            self.pb1.show()
            self.pb2.hide()

        self.setLayout(self.v_box)
        self.setWindowTitle("Misconduct Report Form")
예제 #45
0
 def __init__(self):
     WizardPage.__init__(self)
     now = QDate.currentDate()
     self.ui.build.ui.date.setDate(now.addDays(-3))
예제 #46
0
    def rebuild(self):
        """
        Rebuilds the scene based on the current settings.
        
        :param      start | <QDate>
                    end   | <QDate>
        """
        gantt = self.ganttWidget()
        start = gantt.dateStart()
        end = gantt.dateEnd()
        cell_width = gantt.cellWidth()
        cell_height = gantt.cellHeight()
        rect = self.sceneRect()
        view = gantt.viewWidget()
        height = rect.height()
        header = gantt.treeWidget().header()
        header_height = header.height()

        if (not header.isVisible()):
            header_height = 0

        self._labels = []
        self._hlines = []
        self._vlines = []
        self._weekendRects = []
        self._bookedRects = []
        self._unavailableRects = []
        self._overbookedRects = []
        self._underbookedRects = []
        self._unassignedRects = []
        self._holidayRects = []
        self._currentDayRects = []
        self._alternateRects = []
        self._topLabels = []

        # generate formatting info
        top_format = 'MMM'
        Week = 'd'
        label_format = 'd'
        increment = 1  # days

        # generate vertical lines
        x = 0
        i = 0
        half = header_height / 2.0
        curr = start
        top_label = start.toString(top_format)
        top_rect = QRect(0, 0, 0, half)
        alt_rect = None

        while (curr < end):
            # update the month rect
            new_top_label = curr.toString(top_format)
            if (new_top_label != top_label):
                top_rect.setRight(x)
                self._topLabels.append((top_rect, top_label))
                top_rect = QRect(x, 0, 0, half)
                top_label = new_top_label

                if (alt_rect is not None):
                    alt_rect.setRight(x)
                    self._alternateRects.append(alt_rect)
                    alt_rect = None
                else:
                    alt_rect = QRect(x, 0, 0, height)

            # create the line
            self._hlines.append(QLine(x, 0, x, height))

            # create the header label/rect
            label = str(curr.toString(label_format))
            rect = QRect(x, half, cell_width, half)
            self._labels.append((rect, label))

            # store weekend rectangles
            if (curr.dayOfWeek() in (6, 7)):
                rect = QRect(x, 0, cell_width, height)
                self._weekendRects.append(rect)

# store current day rectangle
            elif (curr.toString("ddMMyyyy") == QDate.currentDate().toString(
                    "ddMMyyyy")):
                rect = QRect(x, 0, cell_width, height)
                self._currentDayRects.append(rect)

# store holiday rectangles

# increment the dates
            curr = curr.addDays(increment)
            x += cell_width
            i += 1

        self._maxOverbooked = 0

        if gantt._availabilityEnabled:
            #iterate through rows
            for itemcount in range(0, gantt.topLevelItemCount()):
                #check top item, then check child items
                item = gantt.topLevelItem(itemcount)
                if item._dbEntry is not None:
                    if item._dbEntry._type == "phase":
                        phase = item._dbEntry
                        for key in phase._availability.keys():
                            if QDate.fromString(key, "yyyy-MM-dd") >= start:
                                diff = start.daysTo(
                                    QDate.fromString(key, "yyyy-MM-dd"))
                                rect = QRect(
                                    (diff) * cell_width,
                                    header_height + cell_height * (itemcount),
                                    cell_width, cell_height)
                                if phase._availability[key] == 1:
                                    self._underbookedRects.append(rect)
                                elif phase._availability[key] == 2:
                                    self._bookedRects.append(rect)
                                elif phase._availability[key] > 2:
                                    if self._maxOverbooked < int(
                                            phase._availability[key]):
                                        self._maxOverbooked = int(
                                            phase._availability[key])
                                    self._overbookedRects.append(
                                        [rect,
                                         int(phase._availability[key])])
                        '''
			for pa in item._dbEntry._phaseAssignments.values():
			    for key in pa._availability.keys():						    
				if pa._availability[key] > 8:
				    if QDate.fromString(key,"yyyy-MM-dd") >= start:
					diff = start.daysTo(QDate.fromString(key,"yyyy-MM-dd"))
					rect = QRect((diff)*cell_width, header_height+cell_height*(itemcount), cell_width, cell_height)
					self._overbookedRects.append(rect)
			'''

# update the month rect
        top_rect.setRight(x)
        top_label = end.toString(top_format)
        self._topLabels.append((top_rect, top_label))

        if (alt_rect is not None):
            alt_rect.setRight(x)
            self._alternateRects.append(alt_rect)

        # resize the width to match the last date range
        new_width = x
        self.setSceneRect(0, 0, new_width, height)

        # generate horizontal lines
        y = 0
        h = height
        width = new_width

        while (y < h):
            self._vlines.append(QLine(0, y, width, y))
            y += cell_height

        # clear the dirty flag
        self._dirty = False
예제 #47
0
    def getPage(self, fs):
        (db, conninfo) = self.plugin.opendb()
        if db is None:
            return

        qry = QSqlQuery(db)
        if qry.exec_(
                "SELECT 1 FROM pg_attribute WHERE attrelid=(SELECT oid FROM pg_class WHERE relname='eignerart') AND attname='anteil'"
        ) and qry.next():
            exists_ea_anteil = qry.value(0) == 1
        else:
            exists_ea_anteil = False

        html = ""
        for i in range(0, len(fs)):
            flsnr = fs[i]['flsnr']

            best = self.fetchall(
                db,
                ("SELECT " + "ea.bvnr" + ",'' as pz" +
                 ",(SELECT eignerart FROM eign_shl WHERE ea.b=b) as eignerart"
                 + ",%s as anteil" + ",ea.ff_stand AS zhist" + ",b.bestdnr" +
                 ",b.gbbz" + ",b.gbblnr" + ",b.bestfl" +
                 ",b.ff_stand AS bhist" + " FROM eignerart ea" +
                 " JOIN bestand b ON ea.bestdnr = b.bestdnr" +
                 " WHERE ea.flsnr = '%s'" + " ORDER BY zhist,bhist,b") %
                ("ea.anteil" if exists_ea_anteil else "''", flsnr))

            res = self.fetchall(
                db,
                "SELECT f.*,g.gemarkung FROM flurst f LEFT OUTER JOIN gema_shl g ON (f.gemashl=g.gemashl) WHERE f.flsnr='%s' AND f.ff_stand=0"
                % flsnr)
            if len(res) == 1:
                res = res[0]
            else:
                QMessageBox.information(
                    None, "Fehler",
                    u"Flurstück %s nicht gefunden.\n[%s]" % (flsnr, repr(fs)))
                return

            res['datum'] = QDate.currentDate().toString("d. MMMM yyyy")
            res['hist'] = 0

            res['str'] = self.fetchall(
                db,
                "SELECT sstr.strname,str.hausnr FROM str_shl sstr JOIN strassen str ON str.strshl=sstr.strshl WHERE str.flsnr='%s' AND str.ff_stand=0"
                % flsnr)
            res['nutz'] = self.fetchall(
                db,
                "SELECT n21.*, nu.nutzshl, nu.nutzung FROM nutz_21 n21, nutz_shl nu WHERE n21.flsnr='%s' AND n21.nutzsl=nu.nutzshl AND n21.ff_stand=0"
                % flsnr)
            res['klas'] = self.fetchall(
                db,
                "SELECT kl.*, kls.klf_text FROM klas_3x kl, kls_shl kls WHERE kl.flsnr='%s' AND kl.klf=kls.klf AND kl.ff_stand=0"
                % flsnr)
            res['afst'] = self.fetchall(
                db,
                "SELECT au.*, af.afst_txt FROM ausfst au,afst_shl af WHERE au.flsnr='%s' AND au.ausf_st=af.ausf_st AND au.ff_stand=0"
                % flsnr)
            res['best'] = self.fetchall(
                db,
                "SELECT ea.bvnr,'' as pz,(SELECT eignerart FROM eign_shl WHERE ea.b = b) as eignerart,%s as anteil,ea.ff_stand AS zhist,b.bestdnr,b.gbbz,b.gbblnr,b.bestfl,b.ff_stand AS bhist FROM eignerart ea JOIN bestand b ON ea.bestdnr = b.bestdnr WHERE ea.flsnr='%s' ORDER BY zhist,bhist,b"
                % ("ea.anteil" if exists_ea_anteil else "''", flsnr))

            for b in res['best']:
                b['bse'] = self.fetchall(
                    db,
                    "SELECT * FROM eigner WHERE bestdnr='%s' AND ff_stand=0" %
                    b['bestdnr'])

#                        for k,v in res.iteritems():
#                                qDebug( u"%s:%s\n" % ( k, unicode(v) ) )

            html = u"""
<HTML xmlns="http://www.w3.org/1999/xhtml">
  <HEAD>
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  </HEAD>
  <BODY>
<style>
.fls_tab{width:100%%;empty-cells:show}
.fls_time{text-align:right;width:100%%}
.fls_headline_col{background-color:#EEEEEE;width:100%%;height:30px;text-align:center;}
.fls_headline{font-weight:bold;font-size:24px;}
.fls_col_names{font-weight:bold;}
.fls_col_values{vertical-align:top;}
.fls_bst{width:100%%;empty-cells:show}
.fls_hr{border:dotted 1px;color:#080808;}
</style>

<TABLE class="fls_tab" border="0">
    <TR><TD>Flurst&uuml;cksnachweis</TD><TD class="fls_time" colspan="6"><span>%(datum)s</TD></TR>
    <TR><TD colspan="7"><hr style="width:100%%"></TD></TR>
    <TR class="fls_headline_col">
        <TD colspan="7"><span class="fls_headline">Flurst&uuml;cksnachweis<span></TD>
    </TR>
    <TR><TD colspan="7">&nbsp;</TD></TR>
    <TR>
        <TD colspan="7"><h3>Flurst&uuml;ck<hr style="width:100%%"></h3></TD>
    </TR>
    <TR class="fls_col_names">
        <TD width="15%%">Gemarkung</TD>
        <TD width="6%%">Flur</TD>
        <TD width="15%%">Flurst&uuml;ck</TD>
        <TD width="20%%">Flurkarte</TD>
        <TD width="17%%">Entstehung</TD>
        <TD width="17%%">Fortf&uuml;hrung</TD>
        <TD width="5%%">Fl&auml;che</TD>
    </TR>
    <TR class="fls_col_values">
        <TD>%(gemashl)s<br>%(gemarkung)s</TD>
        <TD>%(flr)s</TD>
        <TD>%(flsnrk)s</TD>
        <TD>%(flurknr)s</TD>
        <TD>%(entst)s</TD>
        <TD>%(fortf)s</TD>
        <TD>%(flsfl)s m&sup2;</TD>
    </TR>
</TABLE>
""" % res

            if res['blbnr']:
                html += """
<TABLE border="0" class="fls_tab">
    <TR class="fls_col_names">
        <TD width="21%%"></TD>
        <TD width="79%%">Baulastenblattnr.</TD>
    </TR>
    <TR class="fls_col_values">
        <TD></TD>
        <TD>%(blbnr)s</TD>
    </TR>
</TABLE>
""" % res

            if res['lagebez'] or res['anl_verm']:
                html += """
<TABLE border="0" class="fls_tab">
    <TR class="fls_col_names">
        <TD width="21%%"></TD>
        <TD width="52%%">Lage</TD>
        <TD width="27%%">Anliegervermerk</TD>
    </TR>
    <TR class="fls_col_values">
        <TD></TD>
        <TD>%(lagebez)s</TD>
        <TD>%(anl_verm)s</TD>
    </TR>
</TABLE>
""" % res

            if res['str']:
                html += """
<TABLE border="0" class="fls_tab">
    <TR class="fls_col_names">
        <TD></TD><TD>Strasse</TD><TD>Hausnummer</TD>
    </TR>
"""

                for strres in res['str']:
                    html += """
    <TR class="fls_col_values">
        <TD></TD><TD>%(strname)s</TD><TD>%(hausnr)s</TD></TR>
    </TR>
""" % strres

                html += """
</TABLE>
"""

            if res['nutz']:
                html += """
<TABLE border="0" class="fls_tab">
        <TR class="fls_col_names"><TD width="21%%"></TD><TD width="69%%">Nutzung</TD><TD width="10%%">Fl&auml;che</TD></TR>
"""

                for nutz in res['nutz']:
                    html += """
        <TR class="fls_col_values"><TD></TD><TD>21%(nutzshl)s - %(nutzung)s</TD><TD>%(fl)s m&sup2;</TD></TR>
""" % nutz

                html += """
</TABLE>
"""
            else:
                html += """
        <p>Keine Nutzungen.</p>
"""

            if res['klas']:
                html += """
<TABLE border="0" class="fls_tab">
        <TR class="fls_col_names"><TD></TD><TD>Klassifizierung</TD><TD>Fl&auml;che</TD></TR>
"""

                for klas in res['klas']:
                    html += """
        <TR class="fls_col_values"><TD></TD><TD>%(klf_text)s</TD><TD>%(fl)s m&sup2;</TD></TR>
""" % klas

                html += """
</TABLE>
"""
            else:
                html += """
        <p>Keine Klassifizierungen.</p>
"""

            if res['afst']:
                html += """
<TABLE border="0" class="fls_tab">
        <TR class="fls_col_names"><TD width="21%%"></TD><TD width="79%%">Ausf&uuml;hrende Stelle</TD></TR>
"""

                for afst in res['afst']:
                    html += """
        <TR class="fls_col_values"><TD></TD><TD>%(afst_txt)s</TD></TR>
""" % afst

                html += """
</TABLE>
"""
            else:
                html += """
        <p>Keine ausf&uuml;hrenden Stellen.</p>
"""

            if res['best']:
                html += """
<TABLE border="0" class="fls_bst">
        <TR><TD colspan="6"><h3>Best&auml;nde<hr style="width:100%%"></h3></TD></TR>
"""

                for best in res['best']:
                    html += """
        <TR class="fls_col_names">
                <TD>Bestandsnummer</TD>
                <TD>Grundbuchbezirk</TD>
                <TD colspan="2">Grundbuchblattnr.</TD>
                <TD>Anteil</TD>
        </TR>
        <TR class="fls_col_values">
                <TD>%(bestdnr)s</TD>
                <TD>%(gbbz)s</TD>
                <TD colspan="2">%(gbblnr)s</TD>
                <TD>%(anteil)s</TD>
        </TR>
        <TR class="fls_col_names">
                <TD></TD>
                <TD>Buchungskennz.</TD>
                <TD>BVNR</TD>
                <TD>PZ</TD>
""" % best

                    if res['hist']:
                        html += """
                <TD>Hist. Bestand</TD><TD>Hist. Zuordnung</TD>
"""
                    else:
                        html += """
                <TD></TD><TD></TD>
"""

                    html += """
        </TR>
        <TR class="fls_col_values">
                <TD></TD>
                <TD>%(eignerart)s</TD>
                <TD>%(bvnr)s</TD>
                <TD>%(pz)s</TD>
""" % best

                    html += "<TD>%s</TD>" % ("ja" if res['hist']
                                             and best['bhist'] else "")
                    html += "<TD>%s</TD>" % ("ja" if res['hist']
                                             and best['zhist'] else "")

                    html += """
        </TR>
"""

                if best['bse']:
                    html += """
        <TR class="fls_col_names"><TD>Anteil</TD><TD colspan="5">Namensinformation</TD></TR>
"""

                    for bse in best['bse']:
                        html += """
        <TR class="fls_col_values">
                <TD>%(antverh)s</TD>
                <TD colspan="5">%(name1)s %(name2)s<br>%(name3)s<br>%(name4)s</TD>
        </TR>
""" % bse
                else:
                    html += """
        <p>Keine Eigner gefunden.</p>
"""

                    html += """
        <TR><TD colspan="6"><hr class="fls_hr"></TD></TR>
"""

            html += """
        </TABLE>
</BODY>
</HTML>
"""

#               f = open("c:/cygwin/tmp/fs.html", "w")
#               f.write(html.encode('utf8'))
#               f.close()

        return html
예제 #48
0
 def update_date(self):
     self.start_time = datetime.datetime.now().strftime('%Y%m%d_%H%M%S')
     self.curr_day = QDate.currentDate().toString('MMMM d, yyyy')
     self.date.setText(self.curr_day)
예제 #49
0
 def clear(self):
     self.control.setDate(QDate.currentDate())
예제 #50
0
#TEST SETTINGS
ignoreVersion = 0
testDB = 0
debugging = 0
disableSaving = 0
autologin = 0
localDB = 0
remote = 0
autoCreateShotTasks = 0
testPrivileges = 0
testuser = 0
#freezeDBUpdates = 1

currentDate = date.today()

earliestDate = QDate.currentDate().toPyDate()
'''Database Lists'''
myDepartments = {}
myStatuses = {}
myPhases = {}
myShots = {}
myTasks = {}
myUsers = {}
myClients = {}
myIps = {}
myProjects = {}
mySequences = {}
myPhaseAssignments = {}
myUserAssignments = {}
myHours = {}
    def __init__(self, student, term, edit=None, parent=None):
        super(FormStudentMedical, self).__init__(parent)
        self.student = student
        self.term = term

        self.db_class = 'student_class' + str(self.term)
        self.db_subject = 'student_subject' + str(self.term)

        student = self.pullData('students', 1, {'id': self.student})
        term = self.pullData('terms', 1, {'id': self.term})
        session = self.pullData('session', 1, {'id': term['sessionID']})

        self.session = str(
            str(session['name']) + " " + str(term['name'] + " Term")).title()
        self.fullname = str(
            str(student['surname']) + " " + str(student['firstname'])).title()
        self.sessionID = session['id']

        fullnameLbl = QLabel(self.fullname)
        fullnameLbl.setFont(QFont("Candara", 14, QFont.Bold))
        termLbl = QLabel(self.session)
        termLbl.setFont(QFont("Candara", 12, QFont.Bold))

        ailmentLbl = QLabel('Ailment/Allergies')
        treatmentLbl = QLabel('Treatment/Medication')
        self.ailmentData = QPlainTextEdit()
        self.treatmentData = QPlainTextEdit()

        self.pb = QPushButton()
        self.pb.setObjectName("close")
        self.pb.setText("Close")

        self.pb1 = QPushButton()
        self.pb1.setObjectName("Add")
        self.pb1.setText("Add")

        self.pb2 = QPushButton()
        self.pb2.setObjectName("Edit")
        self.pb2.setText("Edit")

        self.connect(self.pb1, SIGNAL("clicked()"),
                     lambda: self.button_click())
        self.connect(self.pb2, SIGNAL("clicked()"), lambda: self.button_edit())
        self.connect(self.pb, SIGNAL("clicked()"), lambda: self.button_close())

        self.dateLbl = QLabel('Choose Date:')
        currentDate = QDate()
        self.dateData = QDateEdit()
        self.dateData.setDate(currentDate.currentDate())
        self.dateData.setCalendarPopup(True)

        h_box = QHBoxLayout()
        h_box.addWidget(self.dateLbl)
        h_box.addWidget(self.dateData)

        h_box1 = QHBoxLayout()
        h_box1.addWidget(self.pb)
        h_box1.addWidget(self.pb1)
        h_box1.addWidget(self.pb2)

        self.v_box = QVBoxLayout()
        self.v_box.addWidget(fullnameLbl)
        self.v_box.addWidget(termLbl)
        self.v_box.addLayout(h_box)
        self.v_box.addWidget(ailmentLbl)
        self.v_box.addWidget(self.ailmentData)
        self.v_box.addWidget(treatmentLbl)
        self.v_box.addWidget(self.treatmentData)
        self.v_box.addLayout(h_box1)

        if edit and len(edit) > 0:
            self.edit = edit
            self.editRow(edit)
            self.pb1.hide()
            self.pb2.show()
        else:
            self.edit = None
            self.pb1.show()
            self.pb2.hide()

        self.setLayout(self.v_box)
        self.setWindowTitle("Medical Report Form")
예제 #52
0
 def __init__(self, parent=None):
     super(XDateEdit, self).__init__(parent)
     
     # define custom properties
     self.setCalendarPopup(True)
     self.setDate(QDate.currentDate())
예제 #53
0
 def default(self):
     return QDate.currentDate()
예제 #54
0
        def initGui():
            def setData():
                buttonPath.setText(self.data["path"])
                radioVisual.setChecked(self.data["isVisual"])
                radioAnalytic.setChecked(not self.data["isVisual"])
                chkBoxSquare.setChecked(self.data["isSquare"])
                d1 = self.data["date1"]
                d2 = self.data["date2"]
                date1.setDate(d1)
                date2.setDate(d2)
                date1.setMaximumDate(d2.addDays(-1))
                date2.setMinimumDate(d1.addDays(+1))
                spinDay.setValue(d1.daysTo(d2))

            def connect():
                buttonOK.clicked.connect(self.onOK)
                buttonPath.clicked.connect(self.onPath)
                date1.dateChanged.connect(self.onDateChanged1)
                date2.dateChanged.connect(self.onDateChanged2)
                spinDay.valueChanged.connect(self.onValueChanged)

            windowTitle = "Setting download images Planet Labs"
            self.setWindowTitle(windowTitle)
            self.setWindowIcon(icon)

            grpImage = QGroupBox("Images", self)
            radioVisual = QRadioButton("Visual", grpImage)
            radioVisual.setObjectName("rbVisual")
            radioAnalytic = QRadioButton("Analytic", grpImage)
            chkBoxSquare = QCheckBox("Square thumbnail", grpImage)
            chkBoxSquare.setObjectName("cbBoxSquare")
            buttonPath = QPushButton(self.titleSelectDirectory, grpImage)
            buttonPath.setObjectName("pbPath")

            layoutRadioButtons = QHBoxLayout()
            for item in (radioVisual, radioAnalytic):
                layoutRadioButtons.addWidget(item)

            layoutImage = QVBoxLayout(grpImage)
            layoutImage.addLayout(layoutRadioButtons)
            layoutImage.addWidget(chkBoxSquare)
            layoutImage.addWidget(buttonPath)

            grpDateSearch = QGroupBox("Dates for search", self)
            date1 = QDateEdit(grpDateSearch)
            date1.setObjectName("deDate1")
            date2 = QDateEdit(grpDateSearch)
            date2.setObjectName("deDate2")
            for item in [date1, date2]:
                item.setCalendarPopup(True)
                format = item.displayFormat().replace("yy", "yyyy")
                item.setDisplayFormat(format)
            spinDay = QSpinBox(grpDateSearch)
            spinDay.setObjectName("sbDay")
            spinDay.setSingleStep(1)
            spinDay.setSuffix(" Days")
            spinDay.setRange(1, 1000 * 360)

            layoutDate = QHBoxLayout(grpDateSearch)
            layoutDate.addWidget(QLabel("From", grpDateSearch))
            layoutDate.addWidget(date1)
            layoutDate.addWidget(QLabel("To", grpDateSearch))
            layoutDate.addWidget(date2)
            layoutDate.addWidget(spinDay)

            buttonOK = QPushButton("OK", self)

            layout = QVBoxLayout(self)
            layout.addWidget(grpImage)
            layout.addWidget(grpDateSearch)
            layout.addWidget(buttonOK)

            self.resize(5 * len(windowTitle) + 200, 30)

            if not self.data is None:
                setData()
            else:
                radioVisual.setChecked(True)
                radioAnalytic.setChecked(False)
                chkBoxSquare.setChecked(False)
                d2 = QDate.currentDate()
                d1 = d2.addMonths(-1)
                date1.setDate(d1)
                date2.setDate(d2)
                date1.setMaximumDate(d2.addDays(-1))
                date2.setMinimumDate(d1.addDays(+1))
                spinDay.setValue(d1.daysTo(d2))

            connect()
예제 #55
0
    def __init__(self, parent=None):
        super(UserDialog, self).__init__(parent)
        self.pagetitle = self.sessionname
        self.tableFont = QFont('Century Gothic', 8)
        self.table = QTableWidget()
        self.cols = [
            'SN', 'ITEM', 'QUANTITY', 'UNIT AMOUNT', 'TOTAL AMOUNT', 'DATE'
        ]
        self.h1_pull_box = QVBoxLayout()

        #self.tableFont.setFamily('Century Gothic')
        self.tableHeaderStyle = "::section {" "background-color: teal; color:white}"
        #pull all CA
        self.editID = 0
        self.hold_unit = {}
        self.hold_store = {}
        self.hold_storeGroup = {}
        self.hold_borrowed = {}

        from_label = QLabel('From:')
        to_label = QLabel('To:')
        self.fromData = QDateEdit()
        self.toData = QDateEdit()
        currentDate = QDate()
        self.fromData.setDate(currentDate.currentDate())
        self.fromData.setCalendarPopup(True)
        self.toData.setDate(currentDate.currentDate())
        self.toData.setCalendarPopup(True)
        menu = QMenu()
        menu.addAction('All', lambda: self.reloadTable(0))
        menu.addAction('In-Stock', lambda: self.reloadTable(1))
        menu.addAction('Out-Stock', lambda: self.reloadTable(2))
        menu.addAction('Damaged', lambda: self.reloadTable(3))
        menu.addAction('Borrowed', lambda: self.reloadTable(4))
        self.pull_btn = QPushButton()
        self.pull_btn.setText("Load")
        self.pull_btn.setMenu(menu)
        h_pull_box = QHBoxLayout()
        h_pull_box.addWidget(from_label)
        h_pull_box.addWidget(self.fromData)
        h_pull_box.addWidget(to_label)
        h_pull_box.addWidget(self.toData)
        h_pull_box.addWidget(self.pull_btn)

        storeGroup = self.pullGroupStore()
        unit = self.pullUnit()

        self.storeGroupText = QLabel('Category')
        self.storeGroupData = QComboBox()
        self.storeGroupData.currentIndexChanged.connect(self.reloadStore)
        self.storeText = QLabel('Items')
        self.storeData = QComboBox()

        self.amountText = QLabel('Total Cost')
        self.amountData = QLineEdit()
        self.amountData.setPlaceholderText('0000.00')
        self.tellerText = QLabel('Reciept No.')
        self.tellerData = QLineEdit()
        self.tellerData.setPlaceholderText('xxxxxxxxx')
        self.quantityText = QLabel('Quantity.')
        self.quantityData = QLineEdit()
        self.quantityData.setPlaceholderText('00.0')
        self.periodText = QLabel('Period (days)')
        self.periodData = QLineEdit()
        self.periodData.setPlaceholderText('00.0')
        self.personText = QLabel('Recieved By:')
        self.personData = QLineEdit()
        self.personData.setPlaceholderText('00.0')
        self.unitText = QLabel('Unit')
        self.unitData = QComboBox()
        self.borrowedText = QLabel('Borrowed')
        self.borrowedData = QComboBox()
        self.dateText = QLabel('Date')
        self.dateData = QDateEdit()
        self.dateData.setDate(currentDate.currentDate())
        self.dateData.setCalendarPopup(True)
        self.descriptionText = QLabel('Description')
        self.descriptionData = QPlainTextEdit()
        self.descriptionData.move(200, 100)
        self.borrowedText.hide()
        self.borrowedData.hide()

        mboz = QVBoxLayout()
        hboz = QHBoxLayout()
        self.state = QLabel('')
        self.r1 = QRadioButton('In-stock')
        self.r1.setChecked(True)
        self.r1.toggled.connect(lambda: self.changeStates())
        self.r2 = QRadioButton('Out-stock')
        self.r2.toggled.connect(lambda: self.changeStates())
        self.r3 = QRadioButton('Damaged')
        self.r3.toggled.connect(lambda: self.changeStates())
        self.r4 = QRadioButton('Borrowed')
        self.r4.toggled.connect(lambda: self.changeStates())
        self.r5 = QRadioButton('Returned')
        self.r5.toggled.connect(lambda: self.changeStates())
        hboz.addWidget(self.r1)
        hboz.addWidget(self.r2)
        hboz.addWidget(self.r3)
        hboz.addWidget(self.r4)
        hboz.addWidget(self.r5)

        i = 0
        for a in storeGroup:
            self.hold_storeGroup[i] = a['id']
            tex = str(a['name']).upper()
            self.storeGroupData.addItem(tex)
            i += 1

        i = 0
        str_key = self.hold_storeGroup[self.storeGroupData.currentIndex()]
        store = self.pullStore(str_key)
        for a in store:
            self.hold_store[i] = a['id']
            tex = str(a['name']).upper()
            self.storeData.addItem(tex)
            i += 1

        i = 0
        for a in unit:
            self.hold_unit[i] = a['id']
            tex = str(a['name']).upper()
            self.unitData.addItem(tex)
            i += 1

        self.reloadBorrowed()
        self.FormLayout = QFormLayout()
        self.FormLayout.addRow(self.storeGroupText, self.storeGroupData)
        self.FormLayout.addRow(self.storeText, self.storeData)
        self.FormLayout.addRow(self.tellerText, self.tellerData)
        self.FormLayout.addRow(self.quantityText, self.quantityData)
        self.FormLayout.addRow(self.amountText, self.amountData)
        self.FormLayout.addRow(self.dateText, self.dateData)
        self.FormLayout.addRow(self.periodText, self.periodData)
        self.FormLayout.addRow(self.borrowedText, self.borrowedData)
        self.FormLayout.addRow(self.personText, self.personData)
        self.FormLayout.addRow(self.descriptionText, self.descriptionData)
        self.periodText.hide()
        self.periodData.hide()

        mboz.addLayout(hboz)
        mboz.addLayout(self.FormLayout)
        mboz.addWidget(self.state)

        groupBox1 = QGroupBox('Add Store Item')
        groupBox1.setLayout(mboz)

        self.pb = QPushButton()
        self.pb.setObjectName("Add")
        self.pb.setText("Add Store Item")

        self.pb1 = QPushButton()
        self.pb1.setObjectName("Edit")
        self.pb1.setText("Edit Row")
        self.pb1.setEnabled(False)

        self.pb2 = QPushButton()
        self.pb2.setObjectName("Close")
        self.pb2.setText("Close")

        self.pb3 = QPushButton()
        self.pb3.setObjectName("Delete")
        self.pb3.setText("Delete Row")
        self.pb3.setEnabled(False)

        self.pb4 = QPushButton()
        self.pb4.setObjectName("Reset")
        self.pb4.setText("Reset")
        self.pb4.hide()

        self.pb5 = QPushButton()
        self.pb5.setObjectName("Change")
        self.pb5.setText("Change Store")
        self.pb5.hide()

        self.pb6 = QPushButton()
        self.pb6.setObjectName("Clear")
        self.pb6.setText("Clear Selection")
        self.pb6.setEnabled(False)

        hbo = QHBoxLayout()
        hbo.addWidget(self.pb)
        hbo.addWidget(self.pb5)
        hbo.addWidget(self.pb4)
        hbo.addWidget(self.pb2)
        groupBox2 = QGroupBox('Store Data')
        groupBox2.setLayout(hbo)

        al = self.pullStoreData(0)
        if al and len(al) > 0:
            al = al
        else:
            al = {}

        self.storeData.currentIndexChanged.connect(
            lambda: self.reloadBorrowed())

        header = self.table.horizontalHeader()
        header.setResizeMode(QHeaderView.ResizeToContents)
        header.setStretchLastSection(True)
        header.setStyleSheet(self.tableHeaderStyle)
        vheader = self.table.verticalHeader()
        vheader.setStyleSheet(self.tableHeaderStyle)
        # Body
        self.table.setWindowTitle("Store")
        self.table.setStyleSheet("color:white")
        self.table.resize(300, 250)
        self.table.setFont(self.tableFont)
        self.table.setSortingEnabled(2)
        #self.table.resizeColumnsToContents()
        self.table.setRowCount(len(al))
        self.table.setColumnCount(len(self.cols))
        self.table.setHorizontalHeaderLabels(self.cols)
        self.table.setContextMenuPolicy(Qt.CustomContextMenu)
        self.table.customContextMenuRequested.connect(self.handleHeaderMenu)
        self.table.hideColumn(0)
        self.table.setSelectionMode(QAbstractItemView.MultiSelection)
        self.table.setSelectionBehavior(QAbstractItemView.SelectRows)
        self.table.setEditTriggers(QAbstractItemView.NoEditTriggers)

        i = 0
        for q in al:
            #row id
            if q['state'] == 1:
                color = QColor(100, 0, 0)
            elif q['state'] == 2:
                color = QColor(100, 100, 0)
            elif q['state'] == 3:
                color = QColor(100, 0, 100)
            elif q['state'] == 4:
                color = QColor(0, 100, 100)
            else:
                color = QColor(0, 50, 150)

            self.table.setItem(i, 0, QTableWidgetItem(str(q['id'])))
            self.table.item(i, 0).setBackground(color)
            self.table.setItem(i, 1,
                               QTableWidgetItem(str(q['itemname']).upper()))
            self.table.item(i, 1).setBackground(color)
            self.table.setItem(i, 2,
                               QTableWidgetItem(str(q['quantity']).upper()))
            self.table.item(i, 2).setBackground(color)
            try:
                zamt = str("{:,}".format(float(q['amount'])))
            except:
                zamt = ''
            self.table.setItem(i, 3, QTableWidgetItem(zamt))
            self.table.item(i, 3).setBackground(color)
            try:
                if len(q['amount']) > 0 and float(q['amount']) > 0:
                    tot = float(q['amount']) * float(q['quantity'])
                else:
                    tot = 0
            except:
                tot = 0
            self.table.setItem(i, 4, QTableWidgetItem(str(tot).upper()))
            self.table.item(i, 4).setBackground(color)
            damz = float(q['datepaid'])
            damt = datetime.utcfromtimestamp(damz).strftime('%d-%m-%Y')
            self.table.setItem(i, 5, QTableWidgetItem(str(damt)))
            self.table.item(i, 5).setBackground(color)
            i += 1
        self.table.itemSelectionChanged.connect(self.confirmSelection)
        self.table.resizeRowsToContents()
        v_pull_box = QVBoxLayout()

        self.h1_pull_box.addWidget(self.table)
        v_pull_box.addLayout(h_pull_box)
        v_pull_box.addLayout(self.h1_pull_box)
        h2_pull_box = QHBoxLayout()
        h2_pull_box.addWidget(self.pb1)
        h2_pull_box.addWidget(self.pb3)
        h2_pull_box.addWidget(self.pb6)
        v_pull_box.addLayout(h2_pull_box)

        groupBox3 = QGroupBox()
        groupBox3.setLayout(hbo)
        groupBox2.setLayout(v_pull_box)

        grid = QGridLayout()
        grid.addWidget(groupBox1, 0, 0)
        grid.addWidget(groupBox2, 0, 1, 2, 1)
        grid.addWidget(groupBox3, 1, 0)

        self.setLayout(grid)
        self.connect(self.pb, SIGNAL("clicked()"), lambda: self.button_click())
        self.connect(self.pb1, SIGNAL("clicked()"),
                     lambda: self.button_editshow())
        self.connect(self.pb2, SIGNAL("clicked()"),
                     lambda: self.button_close(self))
        self.connect(self.pb3, SIGNAL("clicked()"),
                     lambda: self.button_delete())
        self.connect(self.pb4, SIGNAL("clicked()"),
                     lambda: self.button_reset())
        self.connect(self.pb5, SIGNAL("clicked()"), lambda: self.button_edit())
        self.connect(self.pb6, SIGNAL("clicked()"),
                     lambda: self.button_clear())
        #self.connect(self.pull_btn, SIGNAL("clicked()"), lambda x =1: self.reloadTable(x))

        self.setWindowTitle(self.pagetitle)
예제 #56
0
    def __init__(self, parent=None):
        super(TalkDetailsWidget, self).__init__(parent)

        self.layout = QGridLayout()
        self.setLayout(self.layout)

        self.buttonLayout = QHBoxLayout()

        saveIcon = QIcon.fromTheme("document-save")
        self.saveButton = QPushButton('Save Talk')
        self.saveButton.setIcon(saveIcon)
        self.buttonLayout.addWidget(self.saveButton)

        self.layout.addLayout(self.buttonLayout, 0, 1, 1, 1)

        self.titleLabel = QLabel('Title')
        self.titleLineEdit = QLineEdit()
        self.presenterLabel = QLabel('Presenter')
        self.presenterLineEdit = QLineEdit()
        self.layout.addWidget(self.titleLabel, 1, 0, 1, 1)
        self.layout.addWidget(self.titleLineEdit, 1, 1, 1, 1)
        self.layout.addWidget(self.presenterLabel, 1, 2, 1, 1)
        self.layout.addWidget(self.presenterLineEdit, 1, 3, 1, 1)

        self.eventLabel = QLabel('Event')
        self.eventLineEdit = QLineEdit()
        self.categoryLabel = QLabel('Category')
        self.categoryLineEdit = QLineEdit()

        self.layout.addWidget(self.eventLabel, 2, 0, 1, 1)
        self.layout.addWidget(self.eventLineEdit, 2, 1, 1, 1)
        self.layout.addWidget(self.categoryLabel, 2, 2, 1, 1)
        self.layout.addWidget(self.categoryLineEdit, 2, 3, 1, 1)

        self.roomLabel = QLabel('Room')
        self.roomLineEdit = QLineEdit()
        self.dateLayout = QHBoxLayout()
        self.dateLabel = QLabel('Date')
        self.dateEdit = QDateEdit()
        currentDate = QDate()
        self.dateEdit.setDate(currentDate.currentDate())
        self.dateEdit.setCalendarPopup(True)

        self.layout.addWidget(self.roomLabel, 3, 0, 1, 1)
        self.layout.addWidget(self.roomLineEdit, 3, 1, 1, 1)
        self.dateLayout.addWidget(self.dateEdit)
        self.layout.addWidget(self.dateLabel, 3, 2, 1, 1)
        self.layout.addLayout(self.dateLayout, 3, 3, 1, 1)

        self.startTimeLayout = QHBoxLayout()
        self.startTimeLabel = QLabel('Start Time')
        self.startTimeEdit = QTimeEdit()
        self.startTimeLayout.addWidget(self.startTimeEdit)
        self.endTimeLayout = QHBoxLayout()
        self.endTimeLabel = QLabel('End Time')
        self.endTimeEdit = QTimeEdit()
        self.endTimeLayout.addWidget(self.endTimeEdit)

        self.layout.addWidget(self.startTimeLabel, 4, 0, 1, 1)
        self.layout.addLayout(self.startTimeLayout, 4, 1, 1, 1)
        self.layout.addWidget(self.endTimeLabel, 4, 2, 1, 1)
        self.layout.addLayout(self.endTimeLayout, 4, 3, 1, 1)

        self.descriptionLabel = QLabel('Description')
        self.descriptionLabel.setAlignment(Qt.AlignTop)
        self.descriptionTextEdit = QPlainTextEdit()
        self.layout.addWidget(self.descriptionLabel, 5, 0, 1, 1)
        self.layout.addWidget(self.descriptionTextEdit, 5, 1, 1, 3)
예제 #57
0
    def __init__(self, parent=None):
        '''
        Constructor
        '''
        QWidget.__init__(self, parent)
        self.mainLayout = QVBoxLayout()
        self.setLayout(self.mainLayout)

        self.addTalkGroupBox = QGroupBox("Add Talk")
        self.mainLayout.addWidget(self.addTalkGroupBox)

        self.addTalkLayout = QFormLayout()
        self.addTalkGroupBox.setLayout(self.addTalkLayout)

        # Title
        self.titleLabel = QLabel("Title")
        self.titleLineEdit = QLineEdit()
        if hasattr(QLineEdit(), 'setPlaceholderText'):
            self.titleLineEdit.setPlaceholderText("Title of the presentation")
        self.titleLabel.setBuddy(self.titleLineEdit)
        self.addTalkLayout.addRow(self.titleLabel, self.titleLineEdit)

        # Presenter
        self.presenterLabel = QLabel("Presenter")
        self.presenterLineEdit = QLineEdit()
        if hasattr(QLineEdit(), 'setPlaceholderText'):
            self.presenterLineEdit.setPlaceholderText(
                "Name person or people presenting (comma separated)")
        self.presenterLabel.setBuddy(self.presenterLineEdit)
        self.addTalkLayout.addRow(self.presenterLabel, self.presenterLineEdit)

        # Event
        self.eventLabel = QLabel("Event")
        self.eventLineEdit = QLineEdit()
        if hasattr(QLineEdit(), 'setPlaceholderText'):
            self.eventLineEdit.setPlaceholderText(
                "The name of the Event this talk is being presented at")
        self.eventLabel.setBuddy(self.eventLineEdit)
        self.addTalkLayout.addRow(self.eventLabel, self.eventLineEdit)

        # Room
        self.roomLabel = QLabel("Room")
        self.roomLineEdit = QLineEdit()
        if hasattr(QLineEdit(), 'setPlaceholderText'):
            self.roomLineEdit.setPlaceholderText(
                "The Room in which the presentation is taking place")
        self.roomLabel.setBuddy(self.roomLineEdit)
        self.addTalkLayout.addRow(self.roomLabel, self.roomLineEdit)

        # Date
        current_date = QDate()
        self.dateLabel = QLabel("Date")
        self.dateEdit = QDateEdit()
        self.dateEdit.setDate(current_date.currentDate())
        self.dateLabel.setBuddy(self.dateEdit)
        self.addTalkLayout.addRow(self.dateLabel, self.dateEdit)

        self.dateEdit.setCalendarPopup(True)

        # Time
        current_time = QTime()
        self.timeLabel = QLabel("Time")
        self.timeEdit = QTimeEdit()
        self.timeEdit.setTime(current_time.currentTime())
        self.timeLabel.setBuddy(self.dateEdit)
        self.addTalkLayout.addRow(self.timeLabel, self.timeEdit)

        # Buttons
        addIcon = QIcon.fromTheme("list-add")
        cancelIcon = QIcon.fromTheme("edit-clear")

        self.buttonsWidget = QHBoxLayout()
        self.addButton = QPushButton("Add")
        self.addButton.setIcon(addIcon)
        self.cancelButton = QPushButton("Cancel")
        self.cancelButton.setIcon(cancelIcon)
        self.buttonsWidget.addWidget(self.addButton)
        self.buttonsWidget.addWidget(self.cancelButton)
        self.addTalkLayout.addRow(None, self.buttonsWidget)
예제 #58
0
    def __init__(self, session, parent=None):
        super(ExpensesDialog, self).__init__(parent)
        self.session = session
        session = self.pullOnes('session', session)
        self.sessionname = str(session['name']) + ' Session'
        self.pagetitle = self.sessionname
        self.tableFont = QFont('Century Gothic', 8)
        #self.tableFont.setFamily('Century Gothic')
        self.tableHeaderStyle = "::section {" "background-color: teal; color:white}"
        #pull all CA
        self.editID = 0
        self.hold_account = {}
        self.hold_expenses = {}
        self.hold_expensesGroup = {}

        from_label = QLabel('From:')
        to_label = QLabel('To:')
        self.fromData = QDateEdit()
        self.toData = QDateEdit()
        currentDate = QDate()
        self.fromData.setDate(currentDate.currentDate())
        self.fromData.setCalendarPopup(True)
        self.toData.setDate(currentDate.currentDate())
        self.toData.setCalendarPopup(True)
        self.pull_btn = QPushButton()
        self.pull_btn.setText("Load")
        h_pull_box = QHBoxLayout()
        h_pull_box.addWidget(from_label)
        h_pull_box.addWidget(self.fromData)
        h_pull_box.addWidget(to_label)
        h_pull_box.addWidget(self.toData)
        h_pull_box.addWidget(self.pull_btn)

        expensesGroup = self.pullGroupExpenses()
        account = self.pullAccount()

        self.expenseGroupText = QLabel('Category')
        self.expenseGroupData = QComboBox()
        self.expenseGroupData.currentIndexChanged.connect(self.reloadExpenses)
        self.expenseText = QLabel('Expenses')
        self.expenseData = QComboBox()
        self.amountText = QLabel('Amount')
        self.amountData = QLineEdit()
        self.amountData.setPlaceholderText('0000.00')
        self.tellerText = QLabel('Teller/Reciept No.')
        self.tellerData = QLineEdit()
        self.tellerData.setPlaceholderText('xxxxxxxxx')
        self.accountText = QLabel('Account')
        self.accountData = QComboBox()
        self.dateText = QLabel('Date')
        self.dateData = QDateEdit()
        self.dateData.setDate(currentDate.currentDate())
        self.dateData.setCalendarPopup(True)
        self.descriptionText = QLabel('Brief Description')
        self.descriptionData = QPlainTextEdit()
        self.descriptionData.move(200, 100)
        hboz = QHBoxLayout()
        self.gender = QLabel('State')
        self.r1 = QRadioButton('Expenses')
        self.r1.setChecked(True)
        self.r2 = QRadioButton('Refund')
        hboz.addWidget(self.r1)
        hboz.addWidget(self.r2)

        i = 0
        for a in expensesGroup:
            self.hold_expensesGroup[i] = a['id']
            tex = str(a['name']).upper()
            self.expenseGroupData.addItem(tex)
            i += 1

        i = 0
        exp_key = self.hold_expensesGroup[self.expenseGroupData.currentIndex()]
        expenses = self.pullExpenses(exp_key)
        for a in expenses:
            self.hold_expenses[i] = a['id']
            tex = str(a['name']).upper()
            self.expenseData.addItem(tex)
            i += 1

        i = 0
        for a in account:
            self.hold_account[i] = a['id']
            tex = str(a['name']).upper()
            self.accountData.addItem(tex)
            i += 1

        self.FormLayout = QFormLayout()
        self.FormLayout.addRow(self.expenseGroupText, self.expenseGroupData)
        self.FormLayout.addRow(self.expenseText, self.expenseData)
        self.FormLayout.addRow(self.accountText, self.accountData)
        self.FormLayout.addRow(self.tellerText, self.tellerData)
        self.FormLayout.addRow(self.amountText, self.amountData)
        self.FormLayout.addRow(self.gender, hboz)
        self.FormLayout.addRow(self.dateText, self.dateData)
        self.FormLayout.addRow(self.descriptionText, self.descriptionData)

        groupBox1 = QGroupBox('Add Expenses')
        groupBox1.setLayout(self.FormLayout)

        self.pb = QPushButton()
        self.pb.setObjectName("Add")
        self.pb.setText("Add Expenses")

        self.pb1 = QPushButton()
        self.pb1.setObjectName("Edit")
        self.pb1.setText("Edit Row")
        self.pb1.setEnabled(False)

        self.pb2 = QPushButton()
        self.pb2.setObjectName("Close")
        self.pb2.setText("Close")

        self.pb3 = QPushButton()
        self.pb3.setObjectName("Delete")
        self.pb3.setText("Delete Row")
        self.pb3.setEnabled(False)

        self.pb4 = QPushButton()
        self.pb4.setObjectName("Reset")
        self.pb4.setText("Reset")
        self.pb4.hide()

        self.pb5 = QPushButton()
        self.pb5.setObjectName("Change")
        self.pb5.setText("Change Expenses")
        self.pb5.hide()

        self.pb6 = QPushButton()
        self.pb6.setObjectName("Clear")
        self.pb6.setText("Clear Selection")
        self.pb6.setEnabled(False)

        hbo = QHBoxLayout()
        hbo.addWidget(self.pb)
        hbo.addWidget(self.pb5)
        hbo.addWidget(self.pb4)
        hbo.addWidget(self.pb2)
        groupBox2 = QGroupBox('Expenses Data')
        groupBox2.setLayout(hbo)

        self.cols = ['SN', 'EXPENSES', 'ACCOUNT', 'AMOUNT', 'DATE']
        al = self.pullExpensesData()
        if len(al) > 0:
            al = al
        else:
            al = {}

        self.table = QTableWidget()
        header = self.table.horizontalHeader()
        header.setResizeMode(QHeaderView.ResizeToContents)
        header.setStretchLastSection(True)
        header.setStyleSheet(self.tableHeaderStyle)
        vheader = self.table.verticalHeader()
        vheader.setStyleSheet(self.tableHeaderStyle)
        # Body
        self.table.setWindowTitle("Expenses")
        self.table.resize(300, 250)
        self.table.setFont(self.tableFont)
        self.table.setSortingEnabled(2)
        #self.table.resizeColumnsToContents()
        self.table.setRowCount(len(al))
        self.table.setColumnCount(len(self.cols))
        self.table.setHorizontalHeaderLabels(self.cols)
        self.table.setContextMenuPolicy(Qt.CustomContextMenu)
        self.table.customContextMenuRequested.connect(self.handleHeaderMenu)
        self.table.hideColumn(0)
        self.table.setSelectionMode(QAbstractItemView.MultiSelection)
        self.table.setSelectionBehavior(QAbstractItemView.SelectRows)
        self.table.setEditTriggers(QAbstractItemView.NoEditTriggers)

        i = 0
        for q in al:
            #row id
            self.table.setItem(i, 0, QTableWidgetItem(str(q['id'])))
            self.table.setItem(i, 1,
                               QTableWidgetItem(str(q['expensename']).upper()))
            self.table.setItem(i, 2,
                               QTableWidgetItem(str(q['accountname']).upper()))
            zamt = str("{:,}".format(float(q['amount'])))
            self.table.setItem(i, 3, QTableWidgetItem(zamt))
            damz = float(q['datepaid'])
            damt = datetime.utcfromtimestamp(damz).strftime('%d-%m-%Y')
            self.table.setItem(i, 4, QTableWidgetItem(str(damt)))
            i += 1
        self.table.itemSelectionChanged.connect(self.confirmSelection)
        self.table.resizeRowsToContents()
        v_pull_box = QVBoxLayout()
        self.h1_pull_box = QVBoxLayout()
        self.h1_pull_box.addWidget(self.table)
        v_pull_box.addLayout(h_pull_box)
        v_pull_box.addLayout(self.h1_pull_box)
        h2_pull_box = QHBoxLayout()
        h2_pull_box.addWidget(self.pb1)
        h2_pull_box.addWidget(self.pb3)
        h2_pull_box.addWidget(self.pb6)
        v_pull_box.addLayout(h2_pull_box)

        groupBox3 = QGroupBox()
        groupBox3.setLayout(hbo)
        groupBox2.setLayout(v_pull_box)

        grid = QGridLayout()
        grid.addWidget(groupBox1, 0, 0)
        grid.addWidget(groupBox2, 0, 1, 2, 1)
        grid.addWidget(groupBox3, 1, 0)

        self.setLayout(grid)
        self.connect(self.pb, SIGNAL("clicked()"), lambda: self.button_click())
        self.connect(self.pb1, SIGNAL("clicked()"),
                     lambda: self.button_editshow())
        self.connect(self.pb2, SIGNAL("clicked()"),
                     lambda: self.button_close(self))
        self.connect(self.pb3, SIGNAL("clicked()"),
                     lambda: self.button_delete())
        self.connect(self.pb4, SIGNAL("clicked()"),
                     lambda: self.button_reset())
        self.connect(self.pb5, SIGNAL("clicked()"), lambda: self.button_edit())
        self.connect(self.pb6, SIGNAL("clicked()"),
                     lambda: self.button_clear())
        self.connect(self.pull_btn,
                     SIGNAL("clicked()"),
                     lambda x=1: self.reloadTable(x))

        self.setWindowTitle(self.pagetitle)
예제 #59
0
 def update_date(self):
     self.curr_day = QDate.currentDate().toString('MMMM d, yyyy')
     self.date.setText(self.curr_day)
예제 #60
0
 def toCorrectBegDate(self, datetime):
     res = self.toDateTuple(datetime)
     today = QDate.currentDate()
     if (res[0] < 0) or (res[0] > today.year()):
         res = self.toDateTuple(datetime, today)
     return res