diff gui.py @ 11:2ec81711f0c7

Move python files to this repo
author Paper <mrpapersonic@gmail.com>
date Wed, 26 Jan 2022 20:36:07 -0500
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/gui.py	Wed Jan 26 20:36:07 2022 -0500
@@ -0,0 +1,58 @@
+import tkinter
+import tkinter.filedialog
+import msvpvf
+import os
+
+def round_down(num, divisor):
+    return num - (num%divisor)
+
+def open_veg_file():
+    filepath.set(tkinter.filedialog.askopenfilename(title="Select project file", filetypes=[("Project files", ".veg .vf"), ("All Files", "*.*")]))
+    with open(filepath.get(), 'rb') as file:
+        version_of_file.set("Project file version: %s" % (str(bytearray(file.read())[0x46])))
+        window.update_idletasks()
+    # eventually add shit here
+
+def save_veg_file():
+    with open(filepath.get(), 'rb') as f:
+        path = bytearray(f.read())
+    for i in listbox.curselection():
+        prefix, data = msvpvf.type_hex(i)
+    path[0x18:0x27] = data
+    path[0x46] = int(default_version.get())
+    outputfn = prefix + "_V" + default_version.get() + "_" + os.path.basename(os.path.splitext(filepath.get())[0])
+    outputfn += ".vf" if prefix == "MS" else ".veg"
+    name = tkinter.filedialog.asksaveasfilename(defaultextension='.vf' if prefix == "MS" else '.veg', initialfile=outputfn, filetypes=[("Project files", ".veg .vf"), ("All Files", "*.*")])
+    with open(name, 'wb') as f:
+        f.write(path)
+    
+
+window = tkinter.Tk()
+window.geometry("225x200")
+
+filepath = tkinter.StringVar(window)
+version_of_file = tkinter.StringVar(window)
+selected_version = tkinter.IntVar()
+
+
+button = tkinter.Button(text="Open", command=open_veg_file)
+button.pack(pady=5)
+list_items = tkinter.StringVar(value=("VEGAS Pro", "Movie Studio"))
+listbox = tkinter.Listbox(window, height=2, listvariable=list_items)
+listbox.select_set(0)
+listbox.pack(pady=5)
+
+supported_versions = ["8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18"]
+default_version = tkinter.StringVar()
+default_version.set(supported_versions[3])
+
+menu = tkinter.OptionMenu(window, default_version, *supported_versions)
+menu.pack(pady=5)
+button = tkinter.Button(text="Save", command=save_veg_file)
+button.pack(pady=5)
+
+tkinter.Label(window, textvariable=version_of_file).pack(pady=5)
+window.title("msvpvf")
+window.minsize(225, 200)
+
+window.mainloop()