class LoginScreen(FloatLayout): # x = ListProperty([]) # print x def __init__(self, **kwargs): super(LoginScreen, self).__init__(**kwargs) # gc.disable() self.DropdownObjects = [] self.add_widget( Label( text="Wilkommen [color=ff3333] [sub] bei der [/sub][/color][color=3333ff][b] Bonierungs[sup][color=#098125ff]App[/sup][/b][/color]", markup=True, pos_hint={"top": 1.2}, font_size="20sp", ) ) self.GridlayoutS1 = GridLayout(cols=2, size_hint_y=1 / 5, pos_hint={"top": 0.6}) self.add_widget(self.GridlayoutS1) self.GridlayoutS1.add_widget(Label(text="User Name")) # , size_hint_x = 0.2, size_hint_y = 0.2)) self.username = TextInput(multiline=False) # , size_hint_x = 0.2, size_hint_y = 0.2) self.username.bind(on_text_validate=self.on_enter) self.GridlayoutS1.add_widget(self.username) self.GridlayoutS1.add_widget(Label(text="password")) # ,size_hint_x = 0.2, size_hint_y = 0.2)) self.password = TextInput(password=True, multiline=False) # , size_hint_x = 0.2, size_hint_y = 0.2) self.GridlayoutS1.add_widget(self.password) self.BenutzerListe = {"": ""} self.add_widget( Button(text="Einloggen", size_hint_y=1 / 5, pos_hint={"top": 0.4}, on_release=self.AbfrageLogin) ) self.LabelLoginanzeiger = Label(size_hint_y=1 / 5) self.add_widget(self.LabelLoginanzeiger) def on_enter(self, instance): print ("User pressed enter in", instance) self.password.focus = True def AbfrageLogin(self, widget): Username = self.username.text Passwort = self.password.text if Username in self.BenutzerListe and Passwort == self.BenutzerListe[Username]: self.LabelLoginanzeiger.text = "Login korrekt" self.clear_widgets() self.HauptProgramm() else: self.LabelLoginanzeiger.text = "Login inkorrekt" def HauptProgramm(self, *args): print "das ist das Hauptprogramm" self.BilderListeVorlaeufer = [] self.BilderListeVorlaeufer = os.listdir(os.getcwd() + "/pictures") self.Pfade = [] for i in self.BilderListeVorlaeufer: Pfad = os.path.join("pictures", i) if os.path.isfile(Pfad) == True: self.Pfade.append(Pfad) self.HauptCarousel = Carousel(scroll_timeout=100) App.Pfade = self.Pfade self.add_widget(self.HauptCarousel) #################################################################################################### ### Erste Seite im HauptCarousel momentan mit den produktbildern self.HauptCarousel.FloatLayout = FloatLayout() self.HauptCarousel.add_widget(self.HauptCarousel.FloatLayout) self.HauptCarousel.FloatLayout.GridLayout = GridLayout(cols=3, pos_hint={"x": 0, "y": 0}, size_hint=[1, 0.9]) self.HauptCarousel.FloatLayout.add_widget(self.HauptCarousel.FloatLayout.GridLayout) for i in range(9): button = Button( background_normal=self.Pfade[i], background_down="bilder_oberflaeche/1361740537_Ball Green_mitHaken.png", mipmap=True, ) self.HauptCarousel.FloatLayout.GridLayout.add_widget(button) ## self.HauptCarousel.FloatLayout.GridLayout.add_widget(Button(text='test')) ## self.HauptCarousel.FloatLayout.GridLayout.add_widget(Button(text='test2')) ##################################################################################################### ### 2 Seite im Hauptcarousel mit testbutton zur datei Erstellung ### 2 Page in MainCarousel with testbutton for creating /exporting to a file self.HauptCarousel2 = BoxLayout(orientation="vertical") ###############self.HauptCarousel.add_widget(self.HauptCarousel2) self.HauptCarousel2.Texteingabe = TextInput(multiline=True) self.HauptCarousel2.add_widget(self.HauptCarousel2.Texteingabe) self.HauptCarousel2.ButtonSchreiben = Button(text="datei schreiben", on_release=self.datenpickeln) self.HauptCarousel2.add_widget(self.HauptCarousel2.ButtonSchreiben) ####################################################################### ### 3 Seite im Hauptcarousel momentan mit Datei Auslesefunktion ### 3 Page in MainCarousel atm with functionality to read from file self.HauptCarousel3 = BoxLayout(orientation="vertical") ######################self.HauptCarousel.add_widget(self.HauptCarousel3) self.HauptCarousel3.Textausgabe = TextInput(multiline=True, readonly=True) self.HauptCarousel3.add_widget(self.HauptCarousel3.Textausgabe) self.HauptCarousel3.ButtonLesen = Button(text="datei auslesen", on_release=self.datenentpickeln) self.HauptCarousel3.add_widget(self.HauptCarousel3.ButtonLesen) ####################################################################### ### 4 Seite im Hauptcarousel momentan mit Tischmanager ### 4 Page in Maincarousel atm with some kind of Table Manager BackgroundcolorListe = [(1, 0, 0, 1), (0, 1, 0, 1), (0, 0, 1, 1), (1, 1, 0, 1)] self.CustomLayout = CustomLayout() self.HauptCarousel.add_widget(self.CustomLayout) # self.CustomLayout.TopLabel = Label(text = 'Tisch[sup][color=#098125ff]Organizer[/sup][/b][/color]', markup = True, # halign= 'left', valign= 'top', text_size= self.size, pos_hint={'x':0, 'y': 0}, font_size= '30sp') self.CustomLayout.TopLabel = Label( text="Tisch[sup][color=#098125ff]Organizer[/sup][/b][/color]", markup=True, halign="left", font_size="30sp" ) # self.CustomLayout.add_widget(self.CustomLayout.TopLabel) self.CustomLayout.BoxLayout = BoxLayout( orientation="horizontal", size_hint=[1, 0.05], pos_hint={"x": 0, "y": 0.95} ) self.CustomLayout.add_widget(self.CustomLayout.BoxLayout) self.CustomLayout.BoxLayout.add_widget(self.CustomLayout.TopLabel) ButtonMenu1 = self.DropdownbuttonCreator() self.CustomLayout.BoxLayout.Button1 = ButtonMenu1 ## self.CustomLayout.BoxLayout.Button2 = Button(text = 'Tisch+' , on_release = self.tischhinzufuegen) ## self.CustomLayout.BoxLayout.Button3 = Button(text = 'Spalte+', on_release = self.spaltehinzufuegen) ## self.CustomLayout.BoxLayout.Button4 = Button(text = 'Zeile+', on_release = self.zeilehinzufuegen) self.CustomLayout.BoxLayout.add_widget(self.CustomLayout.BoxLayout.Button1) ## self.CustomLayout.BoxLayout.add_widget(self.CustomLayout.BoxLayout.Button2) ## self.CustomLayout.BoxLayout.add_widget(self.CustomLayout.BoxLayout.Button3) ## self.CustomLayout.BoxLayout.add_widget(self.CustomLayout.BoxLayout.Button4) self.CustomLayoutGridLayout = GridLayout( cols=3, rows=4, padding=[20, 20], spacing=[30, 30], size_hint=[1, 0.95], pos_hint={"x": 0, "y": 0} ) # cGridLayout = StackLayout(orientation = "tb-lr", padding = [20,20], spacing = [30,30], size_hint = [1,0.9], pos_hint={'x':0, 'y': 0}) self.CustomLayout.add_widget(self.CustomLayoutGridLayout) self.Tischliste = [] Auswahlliste = ["Bestellung", "Abrechnung", "Best. Aendern", "Bennenen"] AnzahlTische = 12 Zielwidget = self.CustomLayoutGridLayout self.tischerstellung(Zielwidget, AnzahlTische, Auswahlliste, BackgroundcolorListe) self.ProduktOrganizerInstanz = ProduktOrganizer() self.HauptCarousel.add_widget(self.ProduktOrganizerInstanz) ButtonHinzufuegen = self.ProduktOrganizerInstanz.ids.ProduktlisteButtonHinzufuegen ButtonHinzufuegen.on_release = self.produkthinzufuegen self.PopupInst = PopupBildAuswaehlenProduktorganizer() popup = self.PopupInst.ids.a self.ProduktOrganizerInstanz.ids.ProduktBildAuswaehlen.on_release = popup.open self.CustomScrollviewProduktOrganizer = CustomScrollviewProduktOrganizer self.CustomScrollviewProduktOrganizerInstanz = CustomScrollviewProduktOrganizer() self.ProduktOrganizerItemInstanz = CustomScrollviewItem() self.ProduktOrganizerInstanz.add_widget(Button(text="test", on_release=self.listeaktualisieren)) # self.ProduktOrganizerInstanz.ids.ProduktlisteButtonHinzufuegen.on_release = self.listeaktualisieren self.ProduktOrganizerInstanz.add_widget(Button(text="manuell", on_release=self.itemmanuellhinzufuegen)) self.ProduktOrganizerInstanz.add_widget(Button(text="listeaktualisiern+pos", on_release=self.positionenzeigen)) def itemmanuellhinzufuegen(self, widget): self.CustomScrollviewProduktOrganizerInstanz = CustomScrollviewProduktOrganizer() # print dir(self.CustomScrollviewProduktOrganizerInstanz.ids.content2.children) self.CustomScrollviewProduktOrganizerInstanz.ids.content2.clear_widgets() self.testButtonx = Button(text="testbutton", size_hint=(1, 1)) # self.CustomScrollviewProduktOrganizerInstanz.ids.content2.add_widget(self.testButtonx) # print dir(self.CustomScrollviewProduktOrganizerInstanz.ids) def positionenzeigen(self, widget): # print self.testButtonx.pos # print self.testButtonx.size self.listeaktualisieren(self) def listeaktualisieren(self, widget): # print 'listeacktualisieren wurde ausgefuert' # self.CustomScrollviewProduktOrganizer = CustomScrollviewProduktOrganizer() # print [str(i) for i in range(30)] # self.CustomScrollviewProduktOrganizerInstanz.data = ['0','1','2','3','4'] self.CustomScrollviewProduktOrganizerInstanz.data = [str(i) for i in App.HauptListeDictonaries] # print dir(self.CustomScrollviewProduktOrganizer.children)#content2.clear_widgets() def produkthinzufuegen(self): NeuesDict = {} WertEingabeFeldBezeichnung = self.ProduktOrganizerInstanz.ids.EingabeFeldBezeichnung.text WertEingabeFeldPreis = self.ProduktOrganizerInstanz.ids.EingabeFeldPreis.text ## StatusCheckBoxVerkauf = self.ProduktOrganizerInstanz.ids.CheckBoxVerkauf.active WertSpinnerKategorie = self.ProduktOrganizerInstanz.ids.SpinnerKategorie.text filechooser = self.PopupInst.ids.filechooser DateiAuswahl = (str(filechooser.selection))[((str(filechooser.selection)).find("/pictures")) : -2] # print 'hallo', WertEingabeFeldBezeichnung, WertEingabeFeldPreis,DateiAuswahl,WertSpinnerKategorie NeuesDict = { "Bezeichnung": WertEingabeFeldBezeichnung, "Preis": WertEingabeFeldPreis, "Bild": DateiAuswahl, "Kategorie": WertSpinnerKategorie, } # print 'len(App.HauptListeDictonaries)', (len(App.HauptListeDictonaries)) if len(App.HauptListeDictonaries) < 1: App.HauptListeDictonaries.append(NeuesDict) print "Fall 1" else: for i in range(len(App.HauptListeDictonaries[:])): print "App.HauptListeDictonaries[i][Bezeichnung] ist", App.HauptListeDictonaries[i]["Bezeichnung"] Bezeichnungdict = str(App.HauptListeDictonaries[i]["Bezeichnung"]) Bezeichnungneuesdict = str(NeuesDict["Bezeichnung"]) if Bezeichnungdict == Bezeichnungneuesdict: Treffer = True break else: Treffer = False if Treffer == True: # print 'Dieses Produkt existiert schon' ButtonVerstanden = Button(text="Verstanden") popup = Popup( title="Dieses Produkt existiert bereits ", size_hint=(0.5, 0.25), content=ButtonVerstanden ) popup.open() ButtonVerstanden.on_release = popup.dismiss else: App.HauptListeDictonaries.append(NeuesDict) print len(App.HauptListeDictonaries) for index, item in enumerate(App.HauptListeDictonaries): print index, item def DropdownbuttonCreator(self): Auswahlliste = ["Tisch +", "Tisch -", "Spalte + ", "Spalte -", "Reihe + ", "Reihe -"] BackgroundcolorListe = [(0, 1, 0, 1), (1, 0, 0, 1), (0, 1, 0, 1), (1, 0, 0, 1), (0, 1, 0, 1), (1, 0, 0, 1)] Aktionsliste = [ self.tischhinzufuegen, self.tischentfernen, self.spaltehinzufuegen, self.spalteentfernen, self.zeilehinzufuegen, self.zeileentfernen, ] DropdownObjekt = CustomDropDown() DropdownObjektButton = CustomButton( text="Menue", # DropdownObjektButton = ToggleButton(text="Menue", size_hint=[1, 1], background_color=(0.8, 0.8, 0.00, 1), background_normal="bilder_oberflaeche/white2.png", background_down="bilder_oberflaeche/white3.png", ) # self.CustomLayout.add_widget(DropdownObjektButton) DropdownObjektButton.bind(on_release=DropdownObjekt.open) self.DropdownObjects.append(DropdownObjekt) for x in range(len(Auswahlliste)): DropdownUnterbutton = Button( text=Auswahlliste[x], font_size=15, size_hint_y=None, height=60, background_color=BackgroundcolorListe[x], background_normal="bilder_oberflaeche/white2.png", background_down="bilder_oberflaeche/white3.png", opacity=0.8, on_release=Aktionsliste[x], ) DropdownObjekt.add_widget(DropdownUnterbutton) ButtonMenu1 = DropdownObjektButton return ButtonMenu1 def tischerstellung(self, Zielwidget, AnzahlTische, Auswahlliste, BackgroundcolorListe): Auswahlliste = ["Bestellung", "Abrechnung", "Best. Aendern", "Bennenen"] BackgroundcolorListe = [(1, 0, 0, 1), (0, 1, 0, 1), (0, 0, 1, 1), (1, 1, 0, 1)] Aktionsliste = [self.bestellung, self.abrechnung, self.bestellungaendern, self.tischbenennen] # self.DropdownObjects = [] for i in range(AnzahlTische): if self.Tischliste != []: LetzterTisch = self.Tischliste[-1]["Nummer"] ## print LetzterTisch + 1 else: LetzterTisch = 0 TischNr = str(LetzterTisch + 1) TischButtonText = "T " + TischNr DropdownObjekt = CustomDropDown() # von kovak hinzugefuegt # DropdownObjektButton = CustomButton(text = TischButtonText, DropdownObjektButton = ToggleButton( text=TischButtonText, group="Tische", background_normal="bilder_oberflaeche/white2.png", background_down="bilder_oberflaeche/white4.png", background_color=(0.79, 0.39, 0.09, 0.6), ) Zielwidget.add_widget(DropdownObjektButton) DropdownObjektButton.bind(on_release=DropdownObjekt.open) self.DropdownObjects.append(DropdownObjekt) # von kovak hinzugefuegt for x in range(len(Auswahlliste)): DropdownUnterbutton = Button( text=Auswahlliste[x], id=TischNr, # auto_width='False', # width = '200sp', font_size=15, size_hint_y=None, height=60, background_normal="bilder_oberflaeche/white2.png", background_down="bilder_oberflaeche/white3.png", background_color=BackgroundcolorListe[x], on_release=Aktionsliste[x], ) DropdownObjekt.add_widget(DropdownUnterbutton) # print' button', i, 'unterbutton', x DropdownObjektButton.text = TischButtonText self.TischButtondict = {"Nummer": (LetzterTisch + 1), "Objekt": DropdownObjektButton} self.Tischliste.append(self.TischButtondict) def garbagecollectortracking(self, widget): for i in self.Tischliste: a = i print gc.is_tracked(a) ### function for Editing a Table####################################### # def tischmanipulieren(self, widget): # widget.text = 'mein text' #### function for adding an extra table to layout ########################## def tischhinzufuegen(self, widget): if len(self.Tischliste) >= 1: if hasattr(self, "CustomLayoutBottomLabel"): self.CustomLayout.remove_widget(self.CustomLayoutBottomLabel) AnzahlTische = 1 Zielwidget = self.CustomLayoutGridLayout Auswahlliste = ["Bestellung", "Abrechnung", "Best. Aendern", "Bennenen"] BackgroundcolorListe = [(1, 0, 0, 1), (0, 1, 0, 1), (0, 0, 1, 1), (1, 1, 0, 1)] LetzterTisch = self.Tischliste[-1]["Nummer"] if (self.CustomLayoutGridLayout.cols * self.CustomLayoutGridLayout.rows) <= (LetzterTisch + 1): self.CustomLayoutGridLayout.rows = self.CustomLayoutGridLayout.rows + 1 self.tischerstellung(Zielwidget, AnzahlTische, Auswahlliste, BackgroundcolorListe) def tischentfernen(self, widget): self.Warnlabel = 0 if len(self.Tischliste) <= 1: if hasattr(self, "CustomLayoutBottomLabel"): # obj.attr_name exists. if self.CustomLayoutBottomLabel in self.CustomLayout.children: self.Warnlabel = 1 print "das ist der Letzte Tisch, der kann nicht entfernt werden" if self.Warnlabel == 0: self.CustomLayoutBottomLabel = Label( text="Das ist der Letzte Tisch,\n der kann nicht \n entfernt werden", text_size=self.size ) self.CustomLayout.add_widget(self.CustomLayoutBottomLabel) else: Zielwidget = self.CustomLayoutGridLayout Zielwidget.remove_widget(self.Tischliste[-1]["Objekt"]) del self.Tischliste[-1] LetzterTisch = self.Tischliste[-1]["Nummer"] print "die anzahl der Tische ist nun:", LetzterTisch pass #### function for adding a column to layout #################################### def spaltehinzufuegen(self, widget): if self.CustomLayoutGridLayout.cols >= 1: if hasattr(self, "CustomLayoutBottomLabel"): self.CustomLayout.remove_widget(self.CustomLayoutBottomLabel) self.WarnLabel = 0 self.CustomLayoutGridLayout.cols = self.CustomLayoutGridLayout.cols + 1 print "Zeile hinzufuegen" def spalteentfernen(self, widget): self.Warnlabel = 0 if self.CustomLayoutGridLayout.cols <= 1: if hasattr(self, "CustomLayoutBottomLabel"): # obj.attr_name exists. if self.CustomLayoutBottomLabel in self.CustomLayout.children: self.Warnlabel = 1 print "das ist die letzte Tischreihe, sie kann nicht entfernt werden" if self.Warnlabel == 0: self.CustomLayoutBottomLabel = Label( text="Das ist die letzte Tischreihe,\n sie kann nicht \n entfernt werden", text_size=self.size ) self.CustomLayout.add_widget(self.CustomLayoutBottomLabel) else: TischanzahlVerbleibend = (self.CustomLayoutGridLayout.cols - 1) * self.CustomLayoutGridLayout.rows for i in range(len(self.Tischliste[TischanzahlVerbleibend:])): self.CustomLayoutGridLayout.remove_widget(self.Tischliste[TischanzahlVerbleibend + i]["Objekt"]) del self.Tischliste[TischanzahlVerbleibend:] self.CustomLayoutGridLayout.cols = self.CustomLayoutGridLayout.cols - 1 #### function for adding a row to layout #################################### def zeilehinzufuegen(self, widget): if self.CustomLayoutGridLayout.rows >= 1: if hasattr(self, "CustomLayoutBottomLabel"): self.CustomLayout.remove_widget(self.CustomLayoutBottomLabel) self.WarnLabel = 0 self.CustomLayoutGridLayout.rows = self.CustomLayoutGridLayout.rows + 1 print "Zeile hinzufuegen" def zeileentfernen(self, widget): self.Warnlabel = 0 if self.CustomLayoutGridLayout.rows <= 1: if hasattr(self, "CustomLayoutBottomLabel"): # obj.attr_name exists. if self.CustomLayoutBottomLabel in self.CustomLayout.children: self.Warnlabel = 1 print "das ist die letzte Tischreihe, sie kann nicht entfernt werden" if self.Warnlabel == 0: self.CustomLayoutBottomLabel = Label( text="Das ist die letzte Tischreihe,\n sie kann nicht \n entfernt werden", text_size=self.size ) self.CustomLayout.add_widget(self.CustomLayoutBottomLabel) else: TischanzahlVerbleibend = (self.CustomLayoutGridLayout.rows - 1) * self.CustomLayoutGridLayout.cols for i in range(len(self.Tischliste[TischanzahlVerbleibend:])): self.CustomLayoutGridLayout.remove_widget(self.Tischliste[TischanzahlVerbleibend + i]["Objekt"]) del self.Tischliste[TischanzahlVerbleibend:] self.CustomLayoutGridLayout.rows = self.CustomLayoutGridLayout.rows - 1 def bestellung(self, widget): TischNr = widget.id PopupFloatLayout = FloatLayout(size_hint=(1, 1)) self.PopupScrollview = CustomScrollviewPopupContent() self.PopupScrollviewItem = CustomButton2() self.PopupScrollview.data = [str(i) for i in range(10)] # content = self.PopupScrollview.ids.content # item = self.PopupScrollviewItem popup = Popup(title="Bestellung für Tisch " + str(TischNr), content=PopupFloatLayout) ## for i in range(9): ## content.add_widget(CustomButton(text = str(i))) # self.PopupScrollview.ids.CSPopup.open() # print dir(CustomScrollviewPopupContent.data) ButtonExit = Button( text="Exit", pos_hint={"x": 0.825, "y": 1.005}, size_hint=[0.2, 0.065], on_release=popup.dismiss ) PopupFloatLayout.add_widget(ButtonExit) self.PopupScrollview.size_hint = [1.05, 1.017] self.PopupScrollview.center = popup.center PopupFloatLayout.add_widget(self.PopupScrollview) self.PopupScrollview.ids.populate.on_release = self.kasse popup.open() ## ## def on_data(self, instance, value): ## content_add = self.PopupScrollview.ids.content.add_widget ## for item in value: ## print item ## content_add(CustomButton2(text=item)) # return CustomScrollviewPopupContent() def kasse(self): self.PopupScrollview.data = [str(i) for i in range(30)] # print dir(CustomScrollviewPopupContent().ids.viewitems) # y.ids.content.clear_widgets() ## x.data = ListProperty([str(i) for i in range(10)]) ## print 'x.data', x.data ## ## print CustomScrollviewPopupContent.data ## CustomScrollviewPopupContent.data = x.data ## print '2ens', CustomScrollviewPopupContent.data def groesse(self, widget): print "die buttongroesse ist:", widget.size def abrechnung(self, widget): TischNr = widget.id PopupFloatLayout = FloatLayout() self.ScreenmanagerPopup = CustomScreenManager() self.ScreenPopup = CustomScreen for x in xrange(4): self.ScreenmanagerPopup.add_widget(self.ScreenPopup(name="Screen %d" % x)) # popup = Popup(title='Abrechnung für ' + str(TischNr), # content=self.ScreenmanagerPopup,size_hint=(1, 1) ) popup = Popup(title="Abrechnung für Tisch" + str(TischNr), content=PopupFloatLayout) # , # size_hint=(1, 1), # pos_hint={'x': 0.5, 'y': 0.5} ) self.ScreenmanagerPopup.pos_hint = {"x": 0, "y": 0} PopupFloatLayout.add_widget(self.ScreenmanagerPopup) ButtonExit = Button( text="Exit", pos_hint={"x": 0.8, "y": 1.005}, size_hint=[0.2, 0.065], on_release=popup.dismiss ) PopupFloatLayout.add_widget(ButtonExit) popup.open() def bestellungaendern(self, widget): pass def tischbenennen(self, widget): TischNr = widget.id PopupBox1LayoutTischBennenen = BoxLayout(orientation="vertical") popup = Popup( title="Tisch Nr. " + str(TischNr) + "benennen", content=PopupBox1LayoutTischBennenen, size_hint=(0.75, 0.5) ) EingabeTextfeld = TextInput(text="hier Tischbezeichnung eintragen - Funktion muss noch eingebaut werden") PopupBox1LayoutTischBennenen.add_widget(EingabeTextfeld) PopupBoxLayoutTischBenennen = BoxLayout(orientation="horizontal", size_hint=(1, 1)) ButtonAbbrechenTischBenennen = Button(text="Abbrechen", size_hint=(0.5, 0.5)) ButtonAbbrechenTischBenennen.bind(on_press=popup.dismiss) ButtonOkTischBenennen = Button(text="OK", size_hint=(0.5, 0.5)) ButtonOkTischBenennen.bind(on_press=popup.dismiss) PopupBox1LayoutTischBennenen.add_widget(PopupBoxLayoutTischBenennen) PopupBoxLayoutTischBenennen.add_widget(ButtonAbbrechenTischBenennen) PopupBoxLayoutTischBenennen.add_widget(ButtonOkTischBenennen) # popup.add_widget popup.open() pass #### function for exporting Data to file #################################### def datenpickeln(self, widget): BonListe = self.HauptCarousel2.Texteingabe.text """function to pickle data to make it ready for sending""" try: with open("bonliste.txt", "w+b") as BonListeDaten_File: pickle.dump(BonListe, BonListeDaten_File) except IOError as err: print ("Dateifehler: " + str(err)) except pickle.PickleError as perr: print ("Pickling Fehler: " + str(perr)) #### function for importing Data to file #################################### def datenentpickeln(self, widget): with open("bonliste.txt", "rb") as BonListeDaten_File_entpickelt: BonListeWiederhergestellt = pickle.load(BonListeDaten_File_entpickelt) print "die entpickelte BinListe ist: " print BonListeWiederhergestellt BonListe = BonListeWiederhergestellt self.HauptCarousel3.Textausgabe.text = BonListe
def HauptProgramm(self, *args): print "das ist das Hauptprogramm" self.BilderListeVorlaeufer = [] self.BilderListeVorlaeufer = os.listdir(os.getcwd() + "/pictures") self.Pfade = [] for i in self.BilderListeVorlaeufer: Pfad = os.path.join("pictures", i) if os.path.isfile(Pfad) == True: self.Pfade.append(Pfad) self.HauptCarousel = Carousel(scroll_timeout=100) App.Pfade = self.Pfade self.add_widget(self.HauptCarousel) #################################################################################################### ### Erste Seite im HauptCarousel momentan mit den produktbildern self.HauptCarousel.FloatLayout = FloatLayout() self.HauptCarousel.add_widget(self.HauptCarousel.FloatLayout) self.HauptCarousel.FloatLayout.GridLayout = GridLayout(cols=3, pos_hint={"x": 0, "y": 0}, size_hint=[1, 0.9]) self.HauptCarousel.FloatLayout.add_widget(self.HauptCarousel.FloatLayout.GridLayout) for i in range(9): button = Button( background_normal=self.Pfade[i], background_down="bilder_oberflaeche/1361740537_Ball Green_mitHaken.png", mipmap=True, ) self.HauptCarousel.FloatLayout.GridLayout.add_widget(button) ## self.HauptCarousel.FloatLayout.GridLayout.add_widget(Button(text='test')) ## self.HauptCarousel.FloatLayout.GridLayout.add_widget(Button(text='test2')) ##################################################################################################### ### 2 Seite im Hauptcarousel mit testbutton zur datei Erstellung ### 2 Page in MainCarousel with testbutton for creating /exporting to a file self.HauptCarousel2 = BoxLayout(orientation="vertical") ###############self.HauptCarousel.add_widget(self.HauptCarousel2) self.HauptCarousel2.Texteingabe = TextInput(multiline=True) self.HauptCarousel2.add_widget(self.HauptCarousel2.Texteingabe) self.HauptCarousel2.ButtonSchreiben = Button(text="datei schreiben", on_release=self.datenpickeln) self.HauptCarousel2.add_widget(self.HauptCarousel2.ButtonSchreiben) ####################################################################### ### 3 Seite im Hauptcarousel momentan mit Datei Auslesefunktion ### 3 Page in MainCarousel atm with functionality to read from file self.HauptCarousel3 = BoxLayout(orientation="vertical") ######################self.HauptCarousel.add_widget(self.HauptCarousel3) self.HauptCarousel3.Textausgabe = TextInput(multiline=True, readonly=True) self.HauptCarousel3.add_widget(self.HauptCarousel3.Textausgabe) self.HauptCarousel3.ButtonLesen = Button(text="datei auslesen", on_release=self.datenentpickeln) self.HauptCarousel3.add_widget(self.HauptCarousel3.ButtonLesen) ####################################################################### ### 4 Seite im Hauptcarousel momentan mit Tischmanager ### 4 Page in Maincarousel atm with some kind of Table Manager BackgroundcolorListe = [(1, 0, 0, 1), (0, 1, 0, 1), (0, 0, 1, 1), (1, 1, 0, 1)] self.CustomLayout = CustomLayout() self.HauptCarousel.add_widget(self.CustomLayout) # self.CustomLayout.TopLabel = Label(text = 'Tisch[sup][color=#098125ff]Organizer[/sup][/b][/color]', markup = True, # halign= 'left', valign= 'top', text_size= self.size, pos_hint={'x':0, 'y': 0}, font_size= '30sp') self.CustomLayout.TopLabel = Label( text="Tisch[sup][color=#098125ff]Organizer[/sup][/b][/color]", markup=True, halign="left", font_size="30sp" ) # self.CustomLayout.add_widget(self.CustomLayout.TopLabel) self.CustomLayout.BoxLayout = BoxLayout( orientation="horizontal", size_hint=[1, 0.05], pos_hint={"x": 0, "y": 0.95} ) self.CustomLayout.add_widget(self.CustomLayout.BoxLayout) self.CustomLayout.BoxLayout.add_widget(self.CustomLayout.TopLabel) ButtonMenu1 = self.DropdownbuttonCreator() self.CustomLayout.BoxLayout.Button1 = ButtonMenu1 ## self.CustomLayout.BoxLayout.Button2 = Button(text = 'Tisch+' , on_release = self.tischhinzufuegen) ## self.CustomLayout.BoxLayout.Button3 = Button(text = 'Spalte+', on_release = self.spaltehinzufuegen) ## self.CustomLayout.BoxLayout.Button4 = Button(text = 'Zeile+', on_release = self.zeilehinzufuegen) self.CustomLayout.BoxLayout.add_widget(self.CustomLayout.BoxLayout.Button1) ## self.CustomLayout.BoxLayout.add_widget(self.CustomLayout.BoxLayout.Button2) ## self.CustomLayout.BoxLayout.add_widget(self.CustomLayout.BoxLayout.Button3) ## self.CustomLayout.BoxLayout.add_widget(self.CustomLayout.BoxLayout.Button4) self.CustomLayoutGridLayout = GridLayout( cols=3, rows=4, padding=[20, 20], spacing=[30, 30], size_hint=[1, 0.95], pos_hint={"x": 0, "y": 0} ) # cGridLayout = StackLayout(orientation = "tb-lr", padding = [20,20], spacing = [30,30], size_hint = [1,0.9], pos_hint={'x':0, 'y': 0}) self.CustomLayout.add_widget(self.CustomLayoutGridLayout) self.Tischliste = [] Auswahlliste = ["Bestellung", "Abrechnung", "Best. Aendern", "Bennenen"] AnzahlTische = 12 Zielwidget = self.CustomLayoutGridLayout self.tischerstellung(Zielwidget, AnzahlTische, Auswahlliste, BackgroundcolorListe) self.ProduktOrganizerInstanz = ProduktOrganizer() self.HauptCarousel.add_widget(self.ProduktOrganizerInstanz) ButtonHinzufuegen = self.ProduktOrganizerInstanz.ids.ProduktlisteButtonHinzufuegen ButtonHinzufuegen.on_release = self.produkthinzufuegen self.PopupInst = PopupBildAuswaehlenProduktorganizer() popup = self.PopupInst.ids.a self.ProduktOrganizerInstanz.ids.ProduktBildAuswaehlen.on_release = popup.open self.CustomScrollviewProduktOrganizer = CustomScrollviewProduktOrganizer self.CustomScrollviewProduktOrganizerInstanz = CustomScrollviewProduktOrganizer() self.ProduktOrganizerItemInstanz = CustomScrollviewItem() self.ProduktOrganizerInstanz.add_widget(Button(text="test", on_release=self.listeaktualisieren)) # self.ProduktOrganizerInstanz.ids.ProduktlisteButtonHinzufuegen.on_release = self.listeaktualisieren self.ProduktOrganizerInstanz.add_widget(Button(text="manuell", on_release=self.itemmanuellhinzufuegen)) self.ProduktOrganizerInstanz.add_widget(Button(text="listeaktualisiern+pos", on_release=self.positionenzeigen))