From e67eaac836d10520ba86b53bf85b3b3cca8b7ffd Mon Sep 17 00:00:00 2001 From: Mateusz Skoczek Date: Thu, 6 Aug 2020 18:25:27 +0200 Subject: [PATCH] 4.0 Alpha (Build 19353) --- .idea/workspace.xml | 4 +- changelog-UC.txt | 3 + components/__pycache__/dialog.cpython-38.pyc | Bin 3691 -> 3979 bytes .../__pycache__/load_config.cpython-38.pyc | Bin 2071 -> 2295 bytes .../__pycache__/load_format.cpython-38.pyc | Bin 2670 -> 3215 bytes components/dialog.py | 27 +- components/load_config.py | 20 +- components/load_format.py | 238 +++++++++++------- components/main.py | 208 +++++++++++++-- config.cfg | 4 +- 10 files changed, 377 insertions(+), 127 deletions(-) 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 11877d6626e689d75a6882a163566580e65fb734..b077ec01c1ea53437c1ad98a76ba2eee842405ac 100644 GIT binary patch delta 436 zcmaDY(=E>z%FD~e00aULf5++wPUMqeteU8uR?nW!w2+aJA(e3fQwmoKGLIXD$AiM- zMd9(G@c2=90w_E|6rNBDdp(l%!YGm=DNIOmq9{Bu7%!b6iaC`T=yY+IUZ4m|Dhp6V z0_-giOA^FNkxG%yVU1z~(lR;hxg1fPKrz`AX}K1LD6SOw6a^s7ouZhc1f+RVq=OkW zl{dFADsWErXZB(=n>>qIiqT}UFS8G$Ihbuac@fuS NZVpx+9u7_p4ggXlOJV>3 diff --git a/components/__pycache__/load_config.cpython-38.pyc b/components/__pycache__/load_config.cpython-38.pyc index 5ec830194ef65e6bf3edb92bba0e8db551ddcba3..974b39d16233770f8a408c55d93dad60b0b475ca 100644 GIT binary patch delta 741 zcmZuvO>fgc5Z&2bJ8s%I&PNj(5cQ=+k>G$TF1@w_aj66Wnj#e`#7^XrIAOgd5G5*7 z#TAhDfDo7P6FBl8IKst8#3fQW7r})c(=Vj%Xy1`4sdi5T;Ze(qe9EV4g=X5emv;J``2RTCl3Vv1@sUQE)Jh zPEk^vA3VtFYT;;zx$qlaY()J|AY-%9@B5)AN}8z}qJRag*=omTvlq64w#cE5Arwzw z9dS@MA}GVt5&8YCCN-r%e81 zvI*n-W3XO=2VQQUzNw7ah^~`ud(1~{k{WSjpZ?w?H^?1wm()pOV17fC^}7?}hK04j z?}jhjZcnP$W*QdMd-Jv)=6Ywh-HV!TCusV+-BnjuS~4sgUq2R&aM&C8JDR~CB8EZL zN_-L(eD+0z6IaD$EMbupu`v*V^tG9Zb?E3ryXH$7gze~Fuhw|xi$!uvi_dX2=Drum z9j%F64FoKpFb6g`ltblAl=Q6yVo42CE@ah*)XE}`Fqw*2!t8WhNj9&3rmnE7R_-sx CWtgD= delta 437 zcmZvYKTE?v7{>3tOVadDVp6fT61uKEE{ZPR!S5b;?uF-hKg=6L-_x`R;^$f!*9MV0{Tc8lVlOZb zTd0Ea;qsfzN@S7s$uSu0l{m1>wxm@|T90#?m+1t5d{TEBzEW>B z9k)R>@rMW)zc7VLa+KMVoP{JC$+LKbn5Goqo)wkL;w=F3zyeF_1S zhM}$`+>-~73{?vYy^q$=Hrhc4D2T0>=_FeTWnhYJhDsMcbn;;;0@8%Qw7_?Cq0$^a zX?xU{JJj`TpSVqjR|$fPK2^P9d!E~Dw0B#Tqf?vCh_Qbv`I2q9-XV9}84d(0V2Gta r2Lnrx{<#T=aU%va$ExZaMA?~I$Oh@eMrcmpZ&iUZ*`vBd=2i0xyuDgA diff --git a/components/__pycache__/load_format.cpython-38.pyc b/components/__pycache__/load_format.cpython-38.pyc index 6d8186b91e41f39bc6a3fb3dbf105388781fd50d..4cfe6fa39235d9b03975bba33e91107153adb7e8 100644 GIT binary patch literal 3215 zcmbVOO>7&-6`q-0E>|l`k^dt{b~kmKnogtAjvfENaGh9^?KoC!Q?X=1hOp*at1D8w z)NpA^#4-i^gZLJmiUhvUXfL@Y1=>Rn1u6kO6-AD72nrNE5a_iR7ijz5F3Au9A-LVe zyxEzZ`R2|0-pqR+jf_|fpT~dy*WKDa#{Nc){>Q||MJ!c70j$7)gDCTYXk_9qt)R~{ ze^O^|s$|I-&ggXw&>nHD)1W`%1=AI+A>hxk=MMA50)rG7k6FQjG?-Wq!w^_lXF%jx zcDVKom$Hu7mtEhLP8i5b`PcV%_Ou}@Cs?CJH2E4@|M51lgpxwm0ocS5&TZP@uz zP;9s*>@3&94f{my_*wfcds)_?;knz7;|}}@Wydb$Z`k?ZUQl-HmURR>uLn@uerPuw z+1Ppl4QFNRNpZujl)aMYuG;qlx$1;99N9+o*lf)q>A7~pcgk+V3;e)djS*^gMFz{# zS*_Ve!E?&N@?>QrYth)%VEb#|!6mjIIuO*ItxtMmt!n|;_qHEyeGavA_H-_{p3CKq z*IuJloT9h=%=cF8>DjsITegE6u5YYtKim4GC`g&kGlcaaESIoUeI5DYO@T#=v`t;E zfN1Iw2W^~9vAdaOD$=9WY1Y)&4mJ)a{VfLKIgTjlaw_D+UDH5z&*&@^$nM7pyP?+7 zAw_IPOjg2F3)!ZYZ-LPici5)BwvzDNI2h@OnMO>rq{+_)V1CnwIn=@2dI?OcgZYm> z%=3w!n_M32Lmf^~v3Fue+=*D%OoEG}X9gla?n55wAwPHtC!NLrt^sMr5LeC(y!VWBmXt8F&*IUG4Cs()sS58(rS()9~$% zhPs^FQA4Att(g(s+$U$}6q6ipAH~<(!&uKKeyvR%Z6ogeu$_+U**3)$#jm#M&Qkn? zHbtR!hQtVoQ4+79Q2e;!Clr5M@so<5Qv4moPb+>#@w1BO6rWdoTJc+o&nbRK@sAY0 zq4>Ls=M|q)9M`|B_!Y(9SG=J3CB<(m{+{C3+hd5GO{-KfsQIDNJQUV#r(AQVr3|D> zU7v#TveH~BmB{Cn?yh@bcBr7=ave}c5)2AvC8$WJ?z@Qd3%6KOnOd>odqLfE@2`eZ zBmGkdfqs$iqlPb$ZZmQGdK1B` ze?`H#j<10w!!05BZmdVSMQuSvU~5p%7>+S|W5#gI|K79rd$ULfTJiruyTAoEQP;74 zJy1h=5%*Z6jdmZ5hm5=|j*d_9qmcV0B#!^^dG!kIvRU7x`4jt(zbS@;ieB+ek4qN;E0%2n+6B}K`VVk$o5z-Z7 zLZpK+j%mjMhF=)O4zOm5uwe)Z9BUep(K4eLZN5VY5@F?;uY;CPC>frW)3}HBfAE=+ z@8YL?j|A;lPLW71wEA3jNWM?)t0XRxm?3eQL?0t7f#<7KU3#ILO~n;Dvv}zN(Fa4z&8A+xZtE~1=D*Qe7QmKlhTQcSOm0GCuy5oiN3{FipO+FLD m_h}gGN*<-m^OPEw-3w&D*sb*arj{saqRL|#^OtPI-1T1)qw;J3 literal 2670 zcmZ`*&2Jk;6rWk|+K%I-NgEo{reSHJ)GZB8=m!mq=*GX25S!>^X{@y)*mgn(M6iv5k|MFr@)LYibrhqwJbq z%$qrr74*9{FBnc4cQ!FRk}Mn2noO@+MxIqo+p_h7>!GX{xxK`VLRmisrjfUohKp;l zh}>JSH-EMae8lE`1MG^i@pyZ0!$$;RU>mBF;GAhw6_p1`|wG=TY{by_2!43J53J6cz2w5FUTb-EI* z4tetp-18JOnp621hsvzg1DMYtl{gCKbI!}B6KJTQ?&Pm}phgj?Au^Z?@M0U}x(^xJ zg$%clKeR#q>O*$yLPlE1KYd8ui*}vzpby*W!w$OfMm;RY@ z??dnLp>N;KdtvXm!(Q}Ix^!!g7 z&k7&%dG6iu+(K{hqVTb{=!_4&cNcn#7lp63MStT%@7qB`AG`$np&wp`0XP5$VGs_% z5WE69yb6cm2)qWb!%=txjzJ8L!wGm3PQoy}1@Warb**}|rXd@H$cE&D_LE$2UE$BR zB3M^eo?#ttRYrj8z9>d~Q4my|(WD?;zDRP6>Kh&<_OtP|&oX6N1hOdP&gfW)J#~X+q1|Wy=u(6HR2!$d_4y zbDIlodJ^(WBEUG01x3)4taP-Tty-pCG1=XM!%-H9&~S&%)7_SVYin7P<>gws7c~m( zYQ@gm7E4=3&itP6a|rnB8k)pd=DNiuxp|Leu2>e!%y4^|!{k9 ztX(LgE6XWm^0onsUPLH|qI2RCmd#DMqIv?Imp(&7s7j+Wq9}APw%xP`d)@!j>v30m zaP`GrUu#bKilT>hd$#7zQ-y}*lkmsi#R#%8jIB$>j!dyDsGnn}8g)=GQ6x!ABq@sI z@m6UmjQ}XE(pp#`awiI^^3@cIFm0$$Nkfw&TBl1yN->siUp-J$8o^osS5QnPb|vYA zYKlBOYsx%P$Z7Hsxk0|eGL-7GOp8oRTvNl?1m(}WBI6}iG~843d_>Sl zEG$&J$Sl!2W#(DZcBZg$z^xX38bSPwM5>$_AhZ&mb&d!cMFfD$Moh(8lZg@mSvzMX zLKcu)6rLHALrKu5c$fC0A;_thJ!w_scQ4-Vo?XY4e34vszrc<|YDE5XWSP1wQ{PcE z>U)8=Se{)VE|>Cn^SIO?Ao*-@IbKsh9l(RCAK8>5+)wJN^bH}*OHW;^X^l_~b3!qn z9@8y`!%04l5%Kq=xgd?y1OC1=o+wmeVV5F)QO;eGW}8r+z@bo=ZPOB3g_{nG1wHbn za3S60mHn)pGVZYjm(X<7KgTaick;#C;aI2)Oy^6SYmpq@rrD!dmOa0U>#;5oT3iG> zySOL 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