Exemplo n.º 1
0
    def _createHeizungFrame(self, lf, row, padx, pady) -> None:
        f = ttk.Frame(lf)
        f.grid(column=0, row=row, sticky='nswe', padx=padx, pady=pady)

        padx = (0, padx)
        MyLabel(f, 'Heizung:', 0, 0, 'nswe', 'w', padx, pady)
        cbo = MyCombobox(f)
        cbo.setItems(('', 'Gas-Etagenheizung', 'Oel Zentral', 'Gas Zentral',
                      'Fernwaerme', 'Nachtspeicher'))
        cbo.setIndex(1)
        cbo.registerModifyCallback(self._onModified)
        cbo.grid(column=1, row=0, sticky='nswe', padx=padx, pady=pady)
        self._cboHeizung = cbo
Exemplo n.º 2
0
    def _createGui(self, whgList: CheckableItemList):
        cbo = MyCombobox(self)
        cbo.setItems(datehelper.getLastYears(3))
        cbo.setIndex(1)
        cbo.setTextPadding('Vj.TCombobox', 5, 5, 0)
        cbo.setWidth(5)
        cbo.setFont('Helvetica 16 bold')
        cbo.setReadonly(True)

        cbo.grid(column=0, row=0, columnspan=2, padx=5, pady=5)
        self._cbo = cbo

        itemTable = CheckableItemTableView(self)
        itemTable.setCheckableItemList(whgList)
        itemTable.grid(column=0, row=1, columnspan=2, padx=5, pady=5)
        self._itemTableView = itemTable

        okBtn = ttk.Button(self, text='OK', command=self._onOk)
        okBtn.grid(column=0, row=2, sticky='nswe', padx=5, pady=5)

        cancelBtn = ttk.Button(self, text='Abbrechen', command=self._onCancel)
        cancelBtn.grid(column=1, row=2, sticky='nswe', padx=5, pady=5)
Exemplo n.º 3
0
    def _createUI(self):
        padx = pady = 5
        self.columnconfigure(1, weight=1)

        MyLabel(self, 'Straße: ', 0, 0, 'nswe', 'e', padx, pady)
        self._teStrasse = TextEntry(self, 1, 0, 'nswe', padx, pady)
        self._teStrasse.setBackground('My.TEntry', 'lightyellow')
        self._teStrasse.setWidth(30)
        self._teStrasse.registerModifyCallback(self._onWohnungModified)

        MyLabel(self, 'PLZ/Ort: ', 0, 1, 'nswe', 'e', padx, pady)
        f = ttk.Frame(self)
        f.columnconfigure(1, weight=1)
        self._tePlz = TextEntry(f, 0, 0, 'nsw', padx=(0, 3))
        self._tePlz['width'] = 6
        self._tePlz.setBackground('My.TEntry', 'lightyellow')
        self._tePlz.registerModifyCallback(self._onWohnungModified)

        self._teOrt = TextEntry(f, 1, 0, 'nswe')
        self._teOrt.setBackground('My.TEntry', 'lightyellow')
        self._teOrt.setWidth(30)
        self._teOrt.registerModifyCallback(self._onWohnungModified)
        f.grid(column=1, row=1, sticky='nswe', padx=padx, pady=pady)

        MyLabel(self, 'Whg.-Bez.: ', 0, 2, 'nswe', 'e', padx, pady)
        self._teWhg_bez = TextEntry(self, 1, 2, 'nswe', padx, pady)
        self._teWhg_bez.setBackground('My.TEntry', 'lightyellow')
        self._teWhg_bez.registerModifyCallback(self._onWohnungModified)

        MyLabel(self, 'Angeschafft am: ', 0, 3, 'nswe', 'e', padx, pady)
        de = DateEntry(self)
        de.setUseCalendar(False)
        de['width'] = 10
        de.grid(column=1, row=3, sticky='nw', padx=padx, pady=pady)
        self._deAngeschafft_am = de
        self._deAngeschafft_am.registerModifyCallback(self._onWohnungModified)

        MyLabel(self, 'Einhts.wert-Az: ', 0, 4, 'nswe', 'e', padx, pady)
        self._teEinhwert_az = TextEntry(self, 1, 4, 'nswe', padx, pady)
        #self._teEinhwert_az.grid(columnspan=2)
        self._teEinhwert_az.registerModifyCallback(self._onWohnungModified)

        MyLabel(self,
                'Vermieter:',
                column=0,
                row=5,
                sticky='nse',
                anchor='e',
                padx=padx,
                pady=pady)
        cbo = MyCombobox(self)
        cbo.setReadonly(True)
        cbo.registerModifyCallback(self._onWohnungModified)
        cbo.grid(column=1, row=5, sticky='we', padx=padx, pady=pady)
        self._cboVermieter = cbo

        btn = ButtonFactory.getNewButton(
            self, 'Neuen Vermieter anlegen',
            partial(self._onAction, StammdatenAction.new_vermieter))
        btn.grid(column=2, row=5, sticky='swe', padx=(0, 0), pady=pady)
        btnEdit = ButtonFactory.getEditButton(
            self, 'Vermieterdaten ändern',
            partial(self._onAction, StammdatenAction.edit_vermieter))
        btnEdit.grid(column=3, row=5, sticky='swe', padx=(0, 0), pady=pady)

        MyLabel(self,
                'Verwalter:',
                column=0,
                row=6,
                sticky='nse',
                padx=padx,
                pady=pady)
        cbo = MyCombobox(self)
        cbo.setReadonly(True)
        cbo.registerModifyCallback(self._onWohnungModified)
        cbo.grid(column=1, row=6, sticky='we', padx=padx, pady=pady)
        self._cboVerwalter = cbo

        btn2 = ButtonFactory.getNewButton(
            self, 'Neuen Verwalter anlegen',
            partial(self._onAction, StammdatenAction.new_verwalter))
        btn2.grid(column=2, row=6, sticky='swe', padx=(0, 0), pady=pady)
        btnEdit2 = ButtonFactory.getEditButton(
            self, 'Verwalterdaten ändern',
            partial(self._onAction, StammdatenAction.edit_verwalter))
        btnEdit2.grid(column=3, row=6, sticky='swe', padx=(0, 0), pady=pady)

        f: ttk.Frame = self._createSaveCancelButtons()
        f.grid(column=1, columnspan=3, sticky='e', padx=padx, pady=pady)
Exemplo n.º 4
0
    def _createAfaLabelframe(self, padx: int, pady: int) -> ttk.Labelframe:
        lf = ttk.Labelframe(self, text='AfA')
        #lf.columnconfigure(1, weight=1)

        MyLabel(lf, 'Art der Absetzung: ', 0, 1, 'nswe', 'e', padx, pady)
        cb = MyCombobox(lf)
        cb.setBackground('AfA.TCombobox', 'lightyellow')
        cb.setItems(('', 'linear', 'degressiv'))
        cb.setIndex(0)
        cb.setReadonly(True)
        cb.registerModifyCallback(self._onAfaModified)
        cb.grid(column=1, row=1, sticky='w', padx=padx, pady=pady)
        self._art_afa = cb

        MyLabel(lf, 'Prozentsatz:  ', 2, 1, 'nswe', 'e', padx, pady)
        f = FloatEntry(lf)
        f.grid(column=3, row=1, sticky='w', padx=padx, pady=pady)
        f['width'] = 4
        f.registerModifyCallback(self._onAfaModified)
        self._prozent_afa = f

        MyLabel(lf, 'Betrag: ', 0, 2, 'nswe', 'e', padx, pady)
        f = IntEntry(lf)
        f.setBackground('AfA.TEntry', 'lightyellow')
        f.grid(column=1, row=2, sticky='w', padx=padx, pady=pady)
        f.setWidth(8)
        f.registerModifyCallback(self._onAfaModified)
        self._betrag_afa = f

        MyLabel(lf, 'Wie Vorjahr: ', 2, 2, 'nswe', 'e', padx, pady)
        c = MyCombobox(lf)
        #c.setBackground('AfA.TCombobox', 'red')
        c.setStyle('AfA.TCombobox')
        c.setItems(('', 'Ja', 'Nein'))
        c.setIndex(0)
        c.setWidth(4)
        c.setReadonly(True)
        c.registerModifyCallback(self._onAfaModified)
        c.grid(column=3, row=2, sticky='w', padx=padx, pady=pady)
        self._afa_wie_vj = c

        return lf
Exemplo n.º 5
0
    def _createVjFrame(self, parent, padx, pady) -> ttk.Frame:
        f = ttk.Frame(parent)
        f.columnconfigure(0, weight=1)
        f.columnconfigure(3, weight=2)
        #
        l = MyLabel(f, 'Veranlagungsjahr', 1, 0, 'w', 'w', padx, pady)
        l.setWidth(16)

        c = MyCombobox(f)
        c.setTextPadding('Vj.TCombobox', 5, 5, 0)
        c.setWidth(5)
        c.setFont('Helvetica 16 bold')
        yearlist = datehelper.getLastYears(3)
        yearlist.insert(0, '')
        c.setItems(yearlist)
        c.setIndex(0)
        c.setReadonly(True)
        c.registerModifyCallback(self._onAfaModified)
        c.grid(column=2, row=0, sticky='w', pady=pady)
        c.bind('<<ComboboxSelected>>', self._onVjSelectionChanged)
        self._vj_combo = c

        return f
Exemplo n.º 6
0
    def _createMieterFrame(self, row, xmargins: int, topmargin: int,
                           bottommargin: int):
        padx = xmargins
        pady = (topmargin, bottommargin)
        lf = ttk.Labelframe(self, text='Mieter', style='my.TLabelframe')
        lf.grid(column=0, row=row, sticky='nswe', padx=padx, pady=pady)

        padx = (5, 6)
        pady = (5, 5)
        col = row = 0
        ######### Anrede
        MyLabel(lf, 'Anrede:', col, row, 'nswe', 'w', padx, pady)
        col += 1
        cbo = MyCombobox(lf)
        cbo.setItems(('Frau', 'Herr'))
        cbo.setWidth(4)
        cbo.registerModifyCallback(self._onModified)
        cbo.grid(column=col, row=row, sticky='nsw', padx=padx, pady=pady)
        self._cboAnrede = cbo

        ######### Name
        col += 1
        MyLabel(lf, 'Name:', col, row, 'nswe', 'w', padx, pady)
        col += 1
        te = TextEntry(lf, col, row, 'nswe', padx, pady)
        te.registerModifyCallback(self._onModified)
        self._teName = te

        ######### Vorname
        col += 1
        MyLabel(lf, 'Vorname:', col, row, 'nswe', 'w', padx, pady)
        col += 1
        te = TextEntry(lf, col, row, 'nswe', padx, pady)
        te.registerModifyCallback(self._onModified)
        self._teVorname = te

        ######### Geburtstag
        row += 1
        col = 0
        MyLabel(lf, 'Geburtstag:', col, row, 'nswe', 'w', padx, pady)
        col += 1
        te = TextEntry(lf, col, row, 'nswe', padx, pady)
        te.registerModifyCallback(self._onModified)
        self._teGeboren_am = te

        ######### Perso-Nr.
        col += 1
        MyLabel(lf, 'Personalausweis-Nr.:', col, row, 'nswe', 'w', padx, pady)
        col += 1
        te = TextEntry(lf, col, row, 'nswe', padx, pady)
        te.grid(columnspan=2)
        te.registerModifyCallback(self._onModified)
        self._teAusweisId = te

        ######## Telefon
        row += 1
        col = 0
        MyLabel(lf, 'Telefon:', col, row, 'nswe', 'w', padx, pady)
        col += 1
        te = TextEntry(lf, col, row, 'nswe', padx, pady)
        te.registerModifyCallback(self._onModified)
        self._teTelefon = te

        ######### mailto
        col += 1
        MyLabel(lf, 'Mailto:', col, row, 'nswe', 'w', padx, pady)
        col += 1
        te = TextEntry(lf, col, row, 'nswe', padx, pady)
        te.grid(columnspan=2)
        te.registerModifyCallback(self._onModified)
        self._teMailto = te

        ######## Bankverbindung
        row += 1
        col = 0
        MyLabel(lf, 'IBAN:', col, row, 'nswe', 'w', padx, pady)
        col += 1
        te = TextEntry(lf, col, row, 'nswe', padx, pady)
        te.registerModifyCallback(self._onModified)
        te.grid(columnspan=2)
        self._teIban = te
Exemplo n.º 7
0
    def _createZubehoerFrame(self, row, padx, pady):
        lf = ttk.Labelframe(self,
                            text='Weitere Merkmale der Wohnung',
                            style='my.TLabelframe')
        lf.grid(column=0,
                row=row,
                sticky='nswe',
                padx=padx,
                pady=(pady + 8, pady))
        c = r = 0
        padx = (1, padx)

        ########### Balkon
        MyLabel(lf, 'Balkon: ', c, r, 'nsw', 'w', padx, pady)
        c += 1
        cbo = MyCombobox(lf)
        cbo.setItems(('', 'Keiner', 'Nord', 'Ost', 'Süd', 'West'))
        cbo.setWidth(7)
        cbo.setIndex(0)
        cbo.registerModifyCallback(self._onModified)
        cbo.grid(column=c, row=r, sticky='nswe', padx=padx, pady=pady)
        self._cboBalkon = cbo

        c += 1
        cb = ttk.Checkbutton(lf,
                             text='Kellerabteil',
                             variable=self._ivarKellerabteil)
        cb.grid(column=c, row=r, sticky='nswe', padx=(28, 5), pady=pady)
        self._cbKellerabteil = cb

        c += 1
        MyLabel(lf, 'Garage: ', c, r, 'nswe', 'w', (28, 5), pady)
        c += 1
        cbo = MyCombobox(lf)
        cbo.setItems(('', 'Keine', 'Stellplatz', 'TG-Stellplatz', 'Garage'))
        cbo.setWidth(13)
        cbo.setIndex(0)
        cbo.registerModifyCallback(self._onModified)
        cbo.grid(column=c, row=r, sticky='nswe', padx=padx, pady=pady)
        self._cboGarage = cbo
Exemplo n.º 8
0
    def _createKuecheLabelframe(self, parent, padx, pady):
        s = ttk.Style()
        s.configure('ital.TLabelframe.Label', font=('courier', 13, 'italic'))
        lfKueche = ttk.Labelframe(parent,
                                  text='Küche',
                                  style='ital.TLabelframe')
        lfKueche.grid(column=0, row=0, sticky='nswe', padx=padx, pady=pady)
        c = r = 0
        padx = (1, padx)

        ##### Art der Küche
        MyLabel(lfKueche, 'Küche ist', c, r, 'nswe', 'w', padx, pady)
        c += 1
        cbo = MyCombobox(lfKueche)
        cbo.setItems(
            ('', 'Küchenzeile im Wohnraum', 'eigener Raum', 'Wohnküche'))
        cbo.setIndex(0)
        cbo.registerModifyCallback(self._onModified)
        cbo.grid(column=c,
                 row=r,
                 columnspan=3,
                 sticky='nswe',
                 padx=padx,
                 pady=pady)
        self._cboKueche = cbo

        ########## Einbauküche? Mit welchen Geräten?
        c = 0
        r = 1
        cb = ttk.Checkbutton(lfKueche,
                             text='Einbauküche',
                             variable=self._ivarEbk)
        cb.grid(column=c,
                row=r,
                columnspan=2,
                sticky='nswe',
                padx=padx,
                pady=pady)
        self._cbEbk = cb

        c += 2
        MyLabel(lfKueche, 'Geräte:', c, r, 'nswe', 'w', padx, pady)
        c += 1
        cbo = MyCombobox(lfKueche)
        cbo.setItems(('', 'Keine', 'Herd', 'Herd, Kühlschrank',
                      'Herd, Kühlschrank, Geschirrspüler'))
        cbo.setWidth(26)
        cbo.setIndex(0)
        cbo.registerModifyCallback(self._onModified)
        cbo.grid(column=c, row=r, sticky='nswe', padx=padx, pady=pady)
        self._cboKuechenGeraete = cbo
Exemplo n.º 9
0
    def _createAllgemeinFrame(self, row, padx, pady):
        lf = ttk.Labelframe(self,
                            text='Allgemeine Daten',
                            style='my.TLabelframe')
        lf.grid(column=0,
                row=row,
                sticky='nswe',
                padx=padx,
                pady=(pady + 8, pady))

        ### Combo und Label für Etage
        col = 0
        cbo = MyCombobox(lf)
        cbo.setItems((1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15))
        cbo.setWidth(3)
        cbo.registerModifyCallback(self._onModified)
        cbo.grid(column=col, row=0, sticky='nswe', padx=padx, pady=pady)

        col += 1
        self._cboEtage = cbo
        MyLabel(lf, '. Etage', col, 0, 'nswe', 'w', (0, padx), pady)

        #### Entry und Label für qm
        col += 1
        ie = IntEntry(lf)
        ie.setWidth(3)
        ie.registerModifyCallback(self._onModified)
        ie.grid(column=col, row=0, sticky='nswe', padx=padx, pady=pady)
        self._ieQm = ie

        col += 1
        lbl = MyLabel(lf, 'qm', col, 0, 'nswe', 'w', (0, padx), pady)

        ### Combo und Label für Zimmer
        col += 1
        cbo = MyCombobox(lf)
        cbo.setItems((1, 1.5, 2, 2.5, 3, 3.5, 4, 5))
        cbo.setIndex(2)
        cbo.setWidth(3)
        cbo.registerModifyCallback(self._onModified)
        cbo.grid(column=col, row=0, sticky='nswe', padx=padx, pady=pady)
        self._cboZimmer = cbo

        col += 1
        MyLabel(lf, 'Zimmer', col, 0, 'nswe', 'w', (0, padx), pady)

        ### Entry und Label für Anteile
        col += 1
        ie = IntEntry(lf)
        ie.setWidth(3)
        ie.grid(column=col, row=0, sticky='nswe', padx=padx, pady=pady)
        ie.registerModifyCallback(self._onModified)
        self._ieAnteil = ie

        col += 1
        MyLabel(lf, 'Anteile am Gesamtobjekt', col, 0, 'nswe', 'w', (0, padx),
                pady)

        ### neue Zeile
        ### Checkbutton für Aufzug
        col = 0
        cb = ttk.Checkbutton(lf,
                             text='Aufzug im Haus',
                             variable=self._ivarAufzug)
        cb.grid(column=col,
                row=1,
                columnspan=2,
                sticky='nswe',
                padx=padx,
                pady=pady)
        self._cbAufzug = cb

        ### neue Zeile
        ### Label und Entry für IBAN
        col = 0
        lbl = MyLabel(lf, 'IBAN der WEG ', 0, 2, 'nswe', 'w', padx, pady)
        lbl.grid(columnspan=2)

        col += 2
        te = TextEntry(lf, col, 2, 'nswe', (padx), pady)
        te.registerModifyCallback(self._onModified)
        te.grid(columnspan=5)
        self._teIbanWEG = te