diff --git a/NFLmusic.py b/NFLmusic.py index b76dd9f..5212c08 100644 --- a/NFLmusic.py +++ b/NFLmusic.py @@ -80,6 +80,21 @@ def save_jsondata(): f.write(json.dumps(jsondata)) +def detect_change(): + global changed + if ( + jsondata["language"] != var5.get() or + jsondata["choice"] != repo_dict[var4.get()] or + jsondata["auto_update"] != var3.get() or + jsondata["auto_play"] != var6.get() or + jsondata["theme"] != tmla.get(la)[var1.get()] or + jsondata["path"] != var2.get() + ): + + changed = True + + + def display(window, msg, ltime=3): a = Label(window, text=msg) a.place(relx=0.5, rely=0.9, anchor="center") @@ -433,35 +448,46 @@ def open_file_dialog(): def settings(): - global page - response = tkinter.messagebox.askyesnocancel(lang.get(la, "mbox.title.save_settings"), - lang.get(la, "mbox.text.save_settings", )) - if response is not None: - if response: - if not os.path.exists(var2.get()): - tkinter.messagebox.showwarning(title=lang.get(la, "mbox.title.position_not_exist"), - message=lang.get(la, "mbox.text.position_not_exist", )) + global page, changed + detect_change() + if changed: + response = tkinter.messagebox.askyesnocancel(lang.get(la, "mbox.title.save_settings"), + lang.get(la, "mbox.text.save_settings", )) + if response is not None: + if response: + if not os.path.exists(var2.get()): + tkinter.messagebox.showwarning(title=lang.get(la, "mbox.title.position_not_exist"), + message=lang.get(la, "mbox.text.position_not_exist", )) + else: + save_jsondata() + tkinter.messagebox.showinfo(message=lang.get(la, "mbox.text.restart"), + title=lang.get(la, "mbox.title.restart", )) + restart0() else: - save_jsondata() - tkinter.messagebox.showinfo(message=lang.get(la, "mbox.text.restart"), - title=lang.get(la, "mbox.title.restart", )) - restart0() + page = will_page + if page == "homepage": + ExchangeGUI.home_page() + elif page == "about": + ExchangeGUI.about() + elif page == "versions": + ExchangeGUI.versions() + var1.set(tmla.catch(la, jsondata["theme"])) + var2.set(path) + var3.set(auto_update) + var4.set(repo_dict_reverse[choice]) + var5.set(la) + var6.set(auto_play) else: - page = will_page - if page == "homepage": - ExchangeGUI.home_page() - elif page == "about": - ExchangeGUI.about() - elif page == "versions": - ExchangeGUI.versions() - var1.set(tmla.catch(la, jsondata["theme"])) - var2.set(path) - var3.set(auto_update) - var4.set(repo_dict_reverse[choice]) - var5.set(la) - var6.set(auto_play) + pass else: - pass + page = will_page + if page == "homepage": + ExchangeGUI.home_page() + elif page == "about": + ExchangeGUI.about() + elif page == "versions": + ExchangeGUI.versions() + changed = False class joke: @@ -1121,7 +1147,7 @@ def download_version(): copy(version_json[get_treeview_index(version_list, version_download_choice)]["password"]) -version = "4.0.5" +version = "4.0.6" poem = "" appdata = os.getenv("APPDATA") make_resource() @@ -1197,6 +1223,7 @@ var5.set(la) var6 = BooleanVar() var6.set(auto_play) isJoking = False +changed = False player = None OptionMenu = ttk.OptionMenu Button = ttk.Button