initial commit
This commit is contained in:
108
maintk.py
Executable file
108
maintk.py
Executable file
@@ -0,0 +1,108 @@
|
||||
from Plotter import *
|
||||
from Command import *
|
||||
from Program import *
|
||||
import Tkinter as tk
|
||||
import tkMessageBox
|
||||
import tkFileDialog
|
||||
from hpglView import HPGLView
|
||||
import os.path
|
||||
|
||||
|
||||
class App:
|
||||
def __init__(self):
|
||||
self.programs=[]
|
||||
self.filename=None
|
||||
self.window=tk.Tk()
|
||||
self.window.title('Mimaki 0.1')
|
||||
self.create_menu()
|
||||
self.create_lb()
|
||||
self.view=HPGLView(self.window)
|
||||
self.view.pack(side=tk.RIGHT,expand=True,fill=tk.BOTH)
|
||||
self.view.programs=self.programs
|
||||
|
||||
def create_menu(self):
|
||||
menu=tk.Menu(self.window)
|
||||
self.window.config(menu=menu)
|
||||
filemenu=tk.Menu(menu)
|
||||
filemenu.add_command(label="Open",command=self.file_open)
|
||||
filemenu.add_command(label="Save",command=self.file_save)
|
||||
filemenu.add_command(label="Save as",command=self.file_saveas)
|
||||
menu.add_cascade(label="File", menu=filemenu)
|
||||
editmenu=tk.Menu(menu)
|
||||
editmenu.add_command(label="Scale",command=self.edit_scale)
|
||||
editmenu.add_command(label="Flip",command=self.edit_flip)
|
||||
editmenu.add_command(label="Move",command=self.edit_move)
|
||||
menu.add_cascade(label="Edit", menu=editmenu)
|
||||
plotmenu=tk.Menu(menu)
|
||||
plotmenu.add_command(label="Write",command=self.plot_write)
|
||||
plotmenu.add_command(label="Centralize",command=self.plot_center)
|
||||
plotmenu.add_command(label="Full",command=self.plot_full)
|
||||
menu.add_cascade(label="Plot", menu=plotmenu)
|
||||
|
||||
def plot_write():
|
||||
pass
|
||||
|
||||
def plot_center():
|
||||
pass
|
||||
|
||||
def plot_full():
|
||||
pass
|
||||
|
||||
def create_lb(self):
|
||||
listFrame = tk.Frame(self.window)
|
||||
self.listBox = tk.Listbox(listFrame)
|
||||
self.listBox.pack(expand=True,fill=tk.BOTH)
|
||||
listFrame.pack(side=tk.LEFT,fill=tk.Y)
|
||||
scrollBar = tk.Scrollbar(listFrame)
|
||||
self.listBox.config(yscrollcommand=scrollBar.set)
|
||||
|
||||
|
||||
def run(self):
|
||||
self.window.mainloop()
|
||||
|
||||
def edit_scale(self):
|
||||
pass
|
||||
|
||||
|
||||
def edit_flip(self):
|
||||
for element in self.programs:
|
||||
if element.active:
|
||||
element= element.flip()
|
||||
|
||||
def edit_move(self):
|
||||
pass
|
||||
|
||||
def file_open(self):
|
||||
filename = tkFileDialog.askopenfilename()
|
||||
if filename:
|
||||
p=Program()
|
||||
p.parsefile(filename)
|
||||
self.programs.append(p)
|
||||
self.filename = filename
|
||||
self.listBox.insert(tk.END, os.path.basename(filename))
|
||||
|
||||
def file_save(self):
|
||||
if self.program:
|
||||
if self.filename:
|
||||
self.save()
|
||||
else:
|
||||
self.file_saveas()
|
||||
else:
|
||||
tkMessageBox.showwarning("No!")
|
||||
|
||||
def file_saveas(self):
|
||||
filename = tkFileDialog.asksaveasfilename()
|
||||
if filename:
|
||||
self.filename = filename
|
||||
self.save()
|
||||
|
||||
def save(self):
|
||||
if self.program:
|
||||
with open(self.filename,"w") as file:
|
||||
file.write(str(self.program))
|
||||
else:
|
||||
tkMessageBox.showwarning("Nope!")
|
||||
|
||||
app=App()
|
||||
app.run()
|
||||
|
||||
Reference in New Issue
Block a user