diff --git a/.idea/workspace.xml b/.idea/workspace.xml index 0eb6511..f3fed0c 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -82,6 +82,8 @@ + + @@ -104,6 +106,6 @@ - + \ No newline at end of file diff --git a/changelog-UC.txt b/changelog-UC.txt index 8de5c3d..83368fe 100644 --- a/changelog-UC.txt +++ b/changelog-UC.txt @@ -37,3 +37,6 @@ - Modyfikacja interfejsu - Dodanie możliwości dołączenia plików csv do eksportowanych plików (tylko kontrolki) - Usprawnienia kodu + +4.0 Alpha (Build 19353) +- Ukończenie ustawień diff --git a/components/__pycache__/dialog.cpython-38.pyc b/components/__pycache__/dialog.cpython-38.pyc index 11877d6..b077ec0 100644 Binary files a/components/__pycache__/dialog.cpython-38.pyc and b/components/__pycache__/dialog.cpython-38.pyc differ diff --git a/components/__pycache__/load_config.cpython-38.pyc b/components/__pycache__/load_config.cpython-38.pyc index 5ec8301..974b39d 100644 Binary files a/components/__pycache__/load_config.cpython-38.pyc and b/components/__pycache__/load_config.cpython-38.pyc differ diff --git a/components/__pycache__/load_format.cpython-38.pyc b/components/__pycache__/load_format.cpython-38.pyc index 6d8186b..4cfe6fa 100644 Binary files a/components/__pycache__/load_format.cpython-38.pyc and b/components/__pycache__/load_format.cpython-38.pyc differ diff --git a/components/dialog.py b/components/dialog.py index 537e2ab..5d05e46 100644 --- a/components/dialog.py +++ b/components/dialog.py @@ -26,18 +26,20 @@ E.append(["Bład pliku konfiguracyjnego (config.cfg).\nNiepoprawne dane w wiersz E.append(["Bład pliku konfiguracyjnego (config.cfg).\nNiepoprawne dane w wierszu 2\nPrzywróć plik. (E01x0012)", True]) #3 E.append(["Nie znaleziono pliku składowego (instruction.txt)\nPrzywróć plik. (E03x0010)", False]) #4 E.append(["Nie znaleziono pliku formatu (format.fmt).\nPrzywróć plik (E02x0000)", True]) #5 -E.append(["Błąd pliku formatu (format.fmt).\nNie poprawne dane w formacie uczniów.\nIlość znaczników klasy w formacie uczniów nie jest równa 1 (E02x0002)", True]) #6 -E.append(["Błąd pliku formatu (format.fmt).\nNie poprawne dane w formacie uczniów.\nIlość znaczników oddziału w formacie uczniów nie jest równa 1 (E02x0003)", True]) #7 -E.append(["Błąd pliku formatu (format.fmt).\nNie poprawne dane w formacie uczniów.\nIlość znaczników nazwiska w formacie uczniów nie jest równa 1 (E02x0004)", True]) #8 -E.append(["Błąd pliku formatu (format.fmt).\nNie poprawne dane w formacie uczniów.\nIlość znaczników imienia w formacie uczniów nie jest równa 1 (E02x0005)", True]) #9 -E.append(["Błąd pliku formatu (format.fmt).\nNie poprawne dane w formacie uczniów.\nIlość znaczników loginu w formacie uczniów nie jest równa 1 (E02x0006)", True]) #10 -E.append(["Błąd pliku formatu (format.fmt).\nPusty wiersz w formacie uczniów (E02x0001).", True]) #11 -E.append(["Błąd pliku formatu (format.fmt).\nPusty wiersz w formacie nauczycieli (E02x0011).", True]) #12 -E.append(["Błąd pliku formatu (format.fmt).\nNie poprawne dane w formacie nauczycieli.\nIlość znaczników nazwiska w formacie nauczycieli nie jest równa 1 (E02x0012)", True]) #13 -E.append(["Błąd pliku formatu (format.fmt).\nNie poprawne dane w formacie nauczycieli.\nIlość znaczników imienia w formacie nauczycieli nie jest równa 1 (E02x0013)", True]) #14 -E.append(["Błąd pliku formatu (format.fmt).\nNie poprawne dane w formacie nauczycieli.\nIlość znaczników loginu w formacie nauczycieli nie jest równa 1 (E02x0014)", True]) #15 -E.append(["Błąd pliku formatu (format.fmt).\nNiedozwolone znaki w formacie. (E02x0020).", True]) #16 +E.append(["Błąd pliku formatu (format.fmt).\nNie poprawne dane w formacie uczniów.\nIlość znaczników klasy w formacie uczniów nie jest równa 1 (E02x0002)", False]) #6 +E.append(["Błąd pliku formatu (format.fmt).\nNie poprawne dane w formacie uczniów.\nIlość znaczników oddziału w formacie uczniów nie jest równa 1 (E02x0003)", False]) #7 +E.append(["Błąd pliku formatu (format.fmt).\nNie poprawne dane w formacie uczniów.\nIlość znaczników nazwiska w formacie uczniów nie jest równa 1 (E02x0004)", False]) #8 +E.append(["Błąd pliku formatu (format.fmt).\nNie poprawne dane w formacie uczniów.\nIlość znaczników imienia w formacie uczniów nie jest równa 1 (E02x0005)", False]) #9 +E.append(["Błąd pliku formatu (format.fmt).\nNie poprawne dane w formacie uczniów.\nIlość znaczników loginu w formacie uczniów nie jest równa 1 (E02x0006)", False]) #10 +E.append(["Błąd pliku formatu (format.fmt).\nPusty wiersz w formacie uczniów (E02x0001).", False]) #11 +E.append(["Błąd pliku formatu (format.fmt).\nPusty wiersz w formacie nauczycieli (E02x0011).", False]) #12 +E.append(["Błąd pliku formatu (format.fmt).\nNie poprawne dane w formacie nauczycieli.\nIlość znaczników nazwiska w formacie nauczycieli nie jest równa 1 (E02x0012)", False]) #13 +E.append(["Błąd pliku formatu (format.fmt).\nNie poprawne dane w formacie nauczycieli.\nIlość znaczników imienia w formacie nauczycieli nie jest równa 1 (E02x0013)", False]) #14 +E.append(["Błąd pliku formatu (format.fmt).\nNie poprawne dane w formacie nauczycieli.\nIlość znaczników loginu w formacie nauczycieli nie jest równa 1 (E02x0014)", False]) #15 +E.append(["Błąd pliku formatu (format.fmt).\nNiedozwolone znaki w formacie. (E02x0020).", False]) #16 E.append(["Bład pliku konfiguracyjnego (config.cfg).\nNiepoprawne dane w wierszu 4\nPrzywróć plik. (E01x0013)", True]) #17 +E.append(["Bład pliku konfiguracyjnego (config.cfg).\nNiepoprawne dane w wierszu 6\nPrzywróć plik. (E01x0014)", True]) #18 +E.append(["Bład pliku konfiguracyjnego (config.cfg).\nNiepoprawne dane w wierszu 7\nPrzywróć plik. (E01x0015)", True]) #19 I = [] # Informacje @@ -47,6 +49,7 @@ I.append(["Pomyślnie zapisano!\nDla niektórych zmian może być wymagane ponow A = [] # Zapytania A.append("Czy na pewno chcesz rozpocząć generowanie?") #0 (A0001) +A.append("Czy chcesz zapisać ustawienia?") #1 (A0002) @@ -91,7 +94,7 @@ def inf(InfoIndex): # Okno dialogowe zapytania -def Ask(AskIndex): +def ask(AskIndex): if TKmsb.askokcancel('Pytanie', A[AskIndex]): return True else: diff --git a/components/load_config.py b/components/load_config.py index 39067e2..2d13677 100644 --- a/components/load_config.py +++ b/components/load_config.py @@ -45,7 +45,7 @@ except ModuleNotFoundError: def CheckConfig(settings): # Ilość wierszy try: - if len(settings) != 5: + if len(settings) != 7: error = int('x') except ValueError: MDdlg.err(1) @@ -72,6 +72,17 @@ def CheckConfig(settings): except ValueError: MDdlg.err(17) + # Linia 6 (int) + try: + x = int(settings[5]) + except ValueError: + MDdlg.err(18) + + # Linia 7 (int) + try: + x = int(settings[6]) + except ValueError: + MDdlg.err(19) # Odczytywanie ustawień z pliku konfiguracyjnego @@ -104,8 +115,9 @@ def edit(settings): SettingsToSave.append('Kodowanie wyjsciowe: ' + str(settings[1]) + '\n') SettingsToSave.append('Domena: ' + str(settings[2]) + '\n') SettingsToSave.append('Quota: ' + str(settings[3]) + '\n') - SettingsToSave.append('Kraj: ' + str(settings[4])) + SettingsToSave.append('Kraj: ' + str(settings[4]) + '\n') + SettingsToSave.append('Dlugosc liceum: ' + str(settings[5]) + '\n') + SettingsToSave.append('Dlugosc branzowej: ' + str(settings[6])) with open('.\config.cfg', 'w') as cfg: for x in SettingsToSave: - cfg.write(x) - MDdlg.inf(0) \ No newline at end of file + cfg.write(x) \ No newline at end of file diff --git a/components/load_format.py b/components/load_format.py index 54b4b37..6576274 100644 --- a/components/load_format.py +++ b/components/load_format.py @@ -40,82 +40,142 @@ except ModuleNotFoundError: # --------------------------------------------------- # Funkcje # ---------------------------------------------------- # # Wewnętrzna funkcja sprawdzająca błędy pliku formatu -def CheckFormat(format): - uczniowiefmt = '' - for x in format[0]: - uczniowiefmt += x +def CheckFormat(Read, format): + poprawne = True + check = True + while check: + uczniowiefmt = '' + for x in format[0]: + uczniowiefmt += x - try: - if format[0].count('') > 0: - error = int('x') - except ValueError: - MDdlg.err(11) - - try: - if uczniowiefmt.count('K') != 1: - error = int('x') - except ValueError: - MDdlg.err(6) - - try: - if uczniowiefmt.count('O') != 1: - error = int('x') - except ValueError: - MDdlg.err(7) - - try: - if uczniowiefmt.count('N') != 1: - error = int('x') - except ValueError: - MDdlg.err(8) - - try: - if uczniowiefmt.count('I') != 1: - error = int('x') - except ValueError: - MDdlg.err(9) - - try: - if uczniowiefmt.count('L') != 1: - error = int('x') - except ValueError: - MDdlg.err(10) - - try: - if format[1].count('') > 0: - error = int('x') - except ValueError: - MDdlg.err(12) - - nauczycielefmt = '' - for x in format[1]: - nauczycielefmt += x - - try: - if nauczycielefmt.count('N') != 1: - error = int('x') - except ValueError: - MDdlg.err(13) - - try: - if nauczycielefmt.count('I') != 1: - error = int('x') - except ValueError: - MDdlg.err(14) - - try: - if nauczycielefmt.count('L') != 1: - error = int('x') - except ValueError: - MDdlg.err(15) - - NiedozwoloneZnaki = ['1','2','3','4','5','6','7','8','9','0','W','E','R','T','Y','U','P','A','S','D','F','G','H','J','Z','C','V','B','M'] - try: - for x in NiedozwoloneZnaki: - if x in nauczycielefmt+uczniowiefmt: + try: + if format[0].count('') > 0: error = int('x') - except ValueError: - MDdlg.err(16) + except ValueError: + MDdlg.err(11) + if Read: + SS.exit(0) + else: + poprawne = False + break + + try: + if uczniowiefmt.count('K') != 1: + error = int('x') + except ValueError: + MDdlg.err(6) + if Read: + SS.exit(0) + else: + poprawne = False + break + + try: + if uczniowiefmt.count('O') != 1: + error = int('x') + except ValueError: + MDdlg.err(7) + if Read: + SS.exit(0) + else: + poprawne = False + break + + try: + if uczniowiefmt.count('N') != 1: + error = int('x') + except ValueError: + MDdlg.err(8) + if Read: + SS.exit(0) + else: + poprawne = False + break + + try: + if uczniowiefmt.count('I') != 1: + error = int('x') + except ValueError: + MDdlg.err(9) + if Read: + SS.exit(0) + else: + poprawne = False + break + + try: + if uczniowiefmt.count('L') != 1: + error = int('x') + except ValueError: + MDdlg.err(10) + if Read: + SS.exit(0) + else: + poprawne = False + break + + try: + if format[1].count('') > 0: + error = int('x') + except ValueError: + MDdlg.err(12) + if Read: + SS.exit(0) + else: + poprawne = False + break + + nauczycielefmt = '' + for x in format[1]: + nauczycielefmt += x + + try: + if nauczycielefmt.count('N') != 1: + error = int('x') + except ValueError: + MDdlg.err(13) + if Read: + SS.exit(0) + else: + poprawne = False + break + + try: + if nauczycielefmt.count('I') != 1: + error = int('x') + except ValueError: + MDdlg.err(14) + if Read: + SS.exit(0) + else: + poprawne = False + break + + try: + if nauczycielefmt.count('L') != 1: + error = int('x') + except ValueError: + MDdlg.err(15) + if Read: + SS.exit(0) + else: + poprawne = False + break + + NiedozwoloneZnaki = ['1','2','3','4','5','6','7','8','9','0','W','E','R','T','Y','U','P','A','S','D','F','G','H','J','Z','C','V','B','M'] + try: + for x in NiedozwoloneZnaki: + if x in nauczycielefmt+uczniowiefmt: + error = int('x') + except ValueError: + MDdlg.err(16) + if Read: + SS.exit(0) + else: + poprawne = False + break + check = False + return poprawne @@ -131,22 +191,28 @@ def read(): format = [] for x in fmt: format.append(x.split('\n')) - CheckFormat(format) + CheckFormat(True, format) return format # Zapis ustawień do pliku formatu def edit(format): - CheckFormat(format) - try: - check = open(r'.\format.fmt') - except FileNotFoundError: - MDdlg.err(5) + xformat = [] + for x in format: + xformat.append(x.split('\n')[:-1]) + if CheckFormat(False, xformat): + try: + check = open(r'.\format.fmt') + except FileNotFoundError: + MDdlg.err(5) + else: + FormatToSaveX = [] + for x in xformat: + FormatToSaveX.append('\n'.join(x)) + FormatToSave = FormatToSaveX[0] + '\n\n' + FormatToSaveX[1] + with open(r'.\format.fmt', 'w') as fmt: + fmt.write(FormatToSave) + return True else: - FormatToSaveX = [] - for x in format: - FormatToSaveX.append('\n'.join(x)) - FormatToSave = FormatToSaveX[0] + '\n\n' + FormatToSaveX[1] - with open(r'.\format.fmt', 'w') as fmt: - fmt.write(FormatToSave) \ No newline at end of file + return False diff --git a/components/main.py b/components/main.py index 6521d30..2759a1a 100644 --- a/components/main.py +++ b/components/main.py @@ -478,6 +478,7 @@ class Settings(TK.Toplevel): self.resizable(width = False, height = False) self.configure(bg = M_tlo) + liczbawierszy = 0 # Tytuł Tytul = TK.Label(self) @@ -490,6 +491,7 @@ class Settings(TK.Toplevel): # Frame1 - Motyw + liczbawierszy += 1 Ramka1 = TK.LabelFrame(self) Ramka1.config(text = ' Motyw programu ') Ramka1.config(bg = M_tlo) @@ -497,24 +499,22 @@ class Settings(TK.Toplevel): Ramka1.config(borderwidth = M_framewielkosc) Ramka1.grid(row = 1, pady = 5) - Motyw_var = TK.StringVar() - if int(MDlcg.read()[0]) == 1: - Motyw_var.set('Ciemny') - Motyw_list_set = 'Ciemny' - else: - Motyw_var.set('Jasny') - Motyw_list_set = 'Jasny' + if int(MDlcg.read()[0]) == 1: + Motyw_list_set = 1 + else: + Motyw_list_set = 0 Motyw_list = TKttk.Combobox(Ramka1) - Motyw_list.config(textvariable = Motyw_var) + Motyw_list.config(textvariable = TK.StringVar()) Motyw_list.config(state = 'readonly') Motyw_list.config(width = 93) Motyw_list.grid(row = 0, pady = 5, padx = 5) Motyw_list['values'] = ('Jasny', 'Ciemny') - Motyw_list.set(Motyw_list_set) + Motyw_list.current(Motyw_list_set) # Frame2 - Kodowanie + liczbawierszy += 1 Ramka2 = TK.LabelFrame(self) Ramka2.config(text = ' Kodowanie wyjściowe ') Ramka2.config(bg = M_tlo) @@ -522,11 +522,8 @@ class Settings(TK.Toplevel): Ramka2.config(borderwidth = M_framewielkosc) Ramka2.grid(row = 2, pady = 5) - Code_var = TK.StringVar() - Code_var.set(MDlcg.read()[1]) - Code_list = TKttk.Combobox(Ramka2) - Code_list.config(textvariable = Code_var) + Code_list.config(textvariable = TK.StringVar()) Code_list.config(state = 'readonly') Code_list.config(width = 93) Code_list.grid(row = 0, pady = 5, padx = 5) @@ -538,6 +535,7 @@ class Settings(TK.Toplevel): SzerokoscPolaWej = 35 WysokoscPolaWej = 8 + liczbawierszy += 1 Ramka3 = TK.LabelFrame(self) Ramka3.config(text = ' Format plików wejściowych ') Ramka3.config(bg = M_tlo) @@ -579,50 +577,214 @@ class Settings(TK.Toplevel): NauczycieleFormat.grid(row = 1, column = 1, padx = 5, pady = 5) NauczycieleFormat.insert(TK.END, nczfmt) + OpisFmt = TK.LabelFrame(Ramka3) + OpisFmt.config(bg=M_tlo) + OpisFmt.config(fg=M_text) + OpisFmt.config(borderwidth=0) + OpisFmt.grid(row=2, pady=5, columnspan=4) + + Opis1 = TK.Label(OpisFmt) + Opis1.config(text='Dozwolone znaki:') + Opis1.config(bg=M_tlo) + Opis1.config(fg=M_text) + Opis1.grid(row=0, columnspan=7) + + Opis2_1 = TK.Label(OpisFmt) + Opis2_1.config(text='K - Klasa') + Opis2_1.config(bg=M_tlo) + Opis2_1.config(fg=M_text) + Opis2_1.grid(row=1, column=0) + + Opis2_2 = TK.Label(OpisFmt) + Opis2_2.config(text='O - Oddzial') + Opis2_2.config(bg=M_tlo) + Opis2_2.config(fg=M_text) + Opis2_2.grid(row=1, column=1) + + Opis2_3 = TK.Label(OpisFmt) + Opis2_3.config(text='N - Nazwisko') + Opis2_3.config(bg=M_tlo) + Opis2_3.config(fg=M_text) + Opis2_3.grid(row=1, column=2) + + Opis2_4 = TK.Label(OpisFmt) + Opis2_4.config(text='I - Imię') + Opis2_4.config(bg=M_tlo) + Opis2_4.config(fg=M_text) + Opis2_4.grid(row=1, column=3) + + Opis2_5 = TK.Label(OpisFmt) + Opis2_5.config(text='L - Login') + Opis2_5.config(bg=M_tlo) + Opis2_5.config(fg=M_text) + Opis2_5.grid(row=1, column=4) + + Opis2_6 = TK.Label(OpisFmt) + Opis2_6.config(text = 'X - Dane nieznaczące') + Opis2_6.config(bg = M_tlo) + Opis2_6.config(fg = M_text) + Opis2_6.grid(row = 1, column = 5) + + Opis2_6 = TK.Label(OpisFmt) + Opis2_6.config(text='Q - Pusta linia') + Opis2_6.config(bg=M_tlo) + Opis2_6.config(fg=M_text) + Opis2_6.grid(row=1, column=6) + + Opis3 = TK.Label(OpisFmt) + Opis3.config(text='Pozostałe znaki oprócz cyfr i pozostałych liter') + Opis3.config(bg=M_tlo) + Opis3.config(fg=M_text) + Opis3.grid(row=2, columnspan = 7) + # Frame4 - Stałe + liczbawierszy += 1 Ramka4 = TK.LabelFrame(self) - Ramka4.config(text = ' Stałe ') + Ramka4.config(text = ' Ustawienia generowania ') Ramka4.config(bg = M_tlo) Ramka4.config(fg = M_text) Ramka4.config(borderwidth = M_framewielkosc) Ramka4.grid(row = 4, pady = 5) + + # Długość liceum i branżowej + RamkaDl = TK.LabelFrame(Ramka4) + RamkaDl.config(bg = M_tlo) + RamkaDl.config(fg = M_text) + RamkaDl.config(borderwidth = 0) + RamkaDl.grid(row = 0, pady = 5, columnspan = 2) + + DlLicLabel = TK.Label(RamkaDl) + DlLicLabel.config(text = 'Lata nauki w liceum') + DlLicLabel.config(width = SzerokoscOpisu + 5) + DlLicLabel.config(bg = M_tlo) + DlLicLabel.config(fg = M_text) + DlLicLabel.grid(row = 0, column = 0) + + DlLicValue = TK.IntVar() + DlLicPole = TK.Spinbox(RamkaDl) + DlLicPole.config(textvariable = DlLicValue) + DlLicPole.config(from_ = 1, to = 10) + DlLicPole.config(width = 18) + DlLicPole.config(bg = M_entrytlo) + DlLicPole.config(fg = M_text) + DlLicPole.grid(row = 0, column = 1, padx = 5, pady = 5) + DlLicPole.delete(0, 'end') + DlLicPole.insert(0, int(MDlcg.read()[5])) + + DlBrLabel = TK.Label(RamkaDl) + DlBrLabel.config(text='Lata nauki w branżowej') + DlBrLabel.config(width = SzerokoscOpisu + 5) + DlBrLabel.config(bg = M_tlo) + DlBrLabel.config(fg = M_text) + DlBrLabel.grid(row = 0, column = 2) + + DlBrValue = TK.IntVar() + DlBrPole = TK.Spinbox(RamkaDl) + DlBrPole.config(textvariable = DlBrValue) + DlBrPole.config(from_ = 1, to=10) + DlBrPole.config(width = 18) + DlBrPole.config(bg = M_entrytlo) + DlBrPole.config(fg = M_text) + DlBrPole.grid(row = 0, column = 3, padx = 5, pady = 5) + DlBrPole.delete(0, 'end') + DlBrPole.insert(0, int(MDlcg.read()[6])) + + + # Domena + DomenaLabel = TK.Label(Ramka4) DomenaLabel.config(text = 'Domena') - DomenaLabel.config(width = SzerokoscOpisu3) + DomenaLabel.config(width = SzerokoscOpisu + 5) DomenaLabel.config(bg = M_tlo) DomenaLabel.config(fg = M_text) - DomenaLabel.grid(row = 0, column = 0) + DomenaLabel.grid(row = 2, column = 0) text1 = TK.StringVar() PoleDomena = TK.Entry(Ramka4) PoleDomena.config(textvariable = text1) - PoleDomena.config(width = 83) + PoleDomena.config(width = 69) PoleDomena.config(bg = M_entrytlo) PoleDomena.config(fg = M_text) - PoleDomena.grid(row = 0, column = 1, padx = 5, pady = 5) + PoleDomena.grid(row = 2, column = 1, padx = 5, pady = 5) PoleDomena.insert(0, MDlcg.read()[2]) + + # Quota + QuotaLabel = TK.Label(Ramka4) QuotaLabel.config(text = 'Quota (MB)') - QuotaLabel.config(width = SzerokoscOpisu3) + QuotaLabel.config(width = SzerokoscOpisu) QuotaLabel.config(bg = M_tlo) QuotaLabel.config(fg = M_text) - QuotaLabel.grid(row = 1, column = 0) + QuotaLabel.grid(row = 3, column = 0) value2 = TK.IntVar() PoleQuota = TK.Spinbox(Ramka4) PoleQuota.config(textvariable = value2) PoleQuota.config(from_ = 1, to = 100000) - PoleQuota.config(width = 81) + PoleQuota.config(width = 67) PoleQuota.config(bg = M_entrytlo) PoleQuota.config(fg = M_text) - PoleQuota.grid(row=1, column=1, padx=5, pady=5) + PoleQuota.grid(row = 3, column = 1, padx = 5, pady = 5) + PoleQuota.delete(0, 'end') PoleQuota.insert(0, int(MDlcg.read()[3])) - print(int(MDlcg.read()[3])) + # Kraj + + KrajLabel = TK.Label(Ramka4) + KrajLabel.config(text = 'Kraj') + KrajLabel.config(width = SzerokoscOpisu + 5) + KrajLabel.config(bg = M_tlo) + KrajLabel.config(fg = M_text) + KrajLabel.grid(row = 4, column = 0) + + KrajValue = TK.StringVar() + KrajPole = TK.Entry(Ramka4) + KrajPole.config(textvariable = KrajValue) + KrajPole.config(width = 69) + KrajPole.config(bg = M_entrytlo) + KrajPole.config(fg = M_text) + KrajPole.grid(row = 4, column = 1, padx = 5, pady = 5) + KrajPole.insert(0, MDlcg.read()[4]) + + + # Przycisk ZAPISZ + def save(): + if MDdlg.ask(1): + motyw = Motyw_list.get() + if motyw == 'Jasny': + motyw = '0' + else: + motyw = '1' + kodowanie = Code_list.get() + uczniowiefmt = UczniowieFormat.get('1.0', 'end') + nauczycielefmt = NauczycieleFormat.get('1.0', 'end') + liclata = DlLicPole.get() + brlata = DlBrPole.get() + domena = PoleDomena.get() + quota = PoleQuota.get() + kraj = KrajPole.get() + SettingsToSave = [motyw, kodowanie, domena, quota, kraj, liclata, brlata] + FormatToSave = [uczniowiefmt, nauczycielefmt] + if MDlfm.edit(FormatToSave): + MDlcg.edit(SettingsToSave) + MDdlg.inf(0) + self.destroy() + else: + pass + PrzyciskZAPISZ = TK.Button(self) + PrzyciskZAPISZ.config(text = 'ZAPISZ') + PrzyciskZAPISZ.config(command = save) + PrzyciskZAPISZ.config(width = 50) + PrzyciskZAPISZ.config(bg = M_przycisktlo) + PrzyciskZAPISZ.config(fg = M_przycisktext) + PrzyciskZAPISZ.config(relief = 'flat') + PrzyciskZAPISZ.config(activebackground = M_przycisktlo) + PrzyciskZAPISZ.grid(row = liczbawierszy + 1, pady = 15) + OknoGlowne = Main() diff --git a/config.cfg b/config.cfg index 3e913f8..59688b9 100644 --- a/config.cfg +++ b/config.cfg @@ -2,4 +2,6 @@ Ciemny motyw(0/1): 1 Kodowanie wyjsciowe: utf-8 Domena: losobolew.pl Quota: 500 -Kraj: Rzeczypospolita Polska \ No newline at end of file +Kraj: Rzeczypospolita Polska +Dlugosc liceum: 4 +Dlugosc branzowej: 3 \ No newline at end of file