Документ взят из кэша поисковой машины. Адрес оригинального документа : http://kodomo.fbb.msu.ru/hg/cca/annotate/721fdbb815c8/Interface.py
Дата изменения: Unknown
Дата индексирования: Fri Feb 28 23:49:33 2014
Кодировка:
cca: Interface.py annotate

cca

annotate Interface.py @ 6:721fdbb815c8

basic structure of interface
author Ilia
date Fri, 03 Dec 2010 23:05:02 +0300
parents 9194e2a2e45c
children e56a5e838f37
rev   line source
Ilia@6 1 from Tkinter import *
Ilia@2 2
Ilia@2 3 class Handlers(object):
is_rusinov@5 4
Ilia@6 5 def __init__(self, scale, speed, offset_x, offset_y):
is_rusinov@5 6 self.scale = scale
is_rusinov@5 7 self.speed = speed
Ilia@6 8 self.offset_x = offset_x
Ilia@6 9 self.offset_y = offset_y
is_rusinov@5 10 self.after_id = 0
is_rusinov@5 11
is_rusinov@5 12 def start(self):
is_rusinov@5 13 self.nextStep()
is_rusinov@5 14 self.after_id = canvas.after(self.speed, self.start)
is_rusinov@5 15
is_rusinov@5 16 def stop(self):
is_rusinov@5 17 self.canvas.after_cancel(self.after_id)
is_rusinov@5 18
is_rusinov@5 19 def next_step(self):
is_rusinov@5 20 automata.nextStep()
is_rusinov@5 21 self.draw()
is_rusinov@5 22
is_rusinov@5 23 def save_file():
Ilia@2 24 pass
is_rusinov@5 25
is_rusinov@5 26 def open_file():
Ilia@2 27 pass
is_rusinov@5 28
Ilia@2 29 def help():
Ilia@2 30 pass
is_rusinov@5 31
is_rusinov@5 32 def close_help_window
is_rusinov@5 33
is_rusinov@5 34 def zoom_in():
Ilia@2 35 pass
is_rusinov@5 36
is_rusinov@5 37 def zoom_out():
Ilia@2 38 pass
is_rusinov@5 39
Ilia@2 40 def slower():
Ilia@2 41 pass
is_rusinov@5 42
Ilia@2 43 def faster():
Ilia@2 44 pass
is_rusinov@5 45
is_rusinov@5 46 def change_size():
Ilia@2 47 pass
is_rusinov@5 48
Ilia@2 49 def draw():
Ilia@2 50 pass
is_rusinov@5 51
Ilia@2 52 def press1():# ?????????
Ilia@2 53 pass
is_rusinov@5 54
Ilia@2 55 def motion1():# ?????????
Ilia@2 56 pass
is_rusinov@5 57
Ilia@2 58 def press3():# ?????????
Ilia@2 59 pass
is_rusinov@5 60
Ilia@2 61 def motion3():# ?????????
Ilia@2 62 pass
is_rusinov@5 63
is_rusinov@5 64 def press_key1():# ?????????+??????????? ?? ???? (?????+ctrl)
Ilia@2 65 pass
is_rusinov@5 66
is_rusinov@5 67 def motion_key1():# ?????????+??????????? ?? ???? (?????+ctrl)
Ilia@2 68 pass
is_rusinov@5 69
Ilia@2 70 def press12():# zoom
Ilia@2 71 pass
is_rusinov@5 72
Ilia@2 73 def motion12():# zoom
Ilia@2 74 pass
is_rusinov@5 75
is_rusinov@5 76 def change_states():# ????????? ?????? ??? ????????? ??????? ?????????: ?????? ??????????, ????? ??????? ???? ??? ??? ? ???? ??? ??????: toTop toBottom switch delete
Ilia@2 77 pass
is_rusinov@5 78
is_rusinov@5 79 def to_top():# ?????????? ???? ??????? ?????? ? ??????
Ilia@2 80 pass
is_rusinov@5 81
is_rusinov@5 82 def to_bottom():# ?????????? ???? ??????? ?????? ? ?????
Ilia@2 83 pass
is_rusinov@5 84
Ilia@2 85 def switch():# ?????? ??? ????????? ???????? ???????
Ilia@2 86 pass
is_rusinov@5 87
is_rusinov@5 88 def delete_state():
Ilia@2 89 pass
is_rusinov@5 90
is_rusinov@5 91 def close_change_window():# ????????? ???? ????????? ??????? ?????????
Ilia@2 92 pass
is_rusinov@5 93
is_rusinov@5 94 def add_state():# ???????? ?????? ??????????, ??? ??????: add close
is_rusinov@5 95 pass
is_rusinov@5 96
Ilia@2 97 def add():
Ilia@2 98 pass
is_rusinov@5 99
is_rusinov@5 100 def close_add_window():
Ilia@2 101 pass
is_rusinov@5 102
is_rusinov@5 103 def change_state_parameters():# ????????? ??????, ? ??????? ???? ?????? ?????????, ??????? ????? ?????? ? ?????????, ??????? ??????????????? ??? ????????? ????????? ??????, ???? ?????? OK close delete
Ilia@2 104 pass
is_rusinov@5 105
Ilia@2 106 def ok():
Ilia@2 107 pass
Ilia@2 108 #deleteState ??? ????
is_rusinov@5 109
is_rusinov@5 110 def close_state_window():
Ilia@2 111 pass
Ilia@6 112
Ilia@6 113 def show_frame():
Ilia@6 114 frame1.pack(side="right", fill="y", expand="no", before=canvas)
Ilia@6 115
Ilia@6 116
Ilia@6 117 root = Tk()
Ilia@6 118 root.title("Cyclyc Cell Automata")
Ilia@6 119
Ilia@6 120 canvas = Canvas(root, background="white")
Ilia@6 121 canvas.config(width=500, height=400)
Ilia@6 122 canvas.pack(fill="both", expand="yes")
Ilia@6 123
Ilia@6 124 automata = Automata()
Ilia@6 125 handlers = Handlers(1, 1, 0, 0)
Ilia@6 126
Ilia@6 127 states = []
Ilia@6 128 symboles = dict()
Ilia@6 129
Ilia@6 130 #infoPanel=Frame
Ilia@6 131 frame1=Frame(root, background="grey")
Ilia@6 132 statelist=Listbox(frame1, selectmode="extended")
Ilia@6 133 for state in states:
Ilia@6 134 statelist.insert("end", state)
Ilia@6 135 statelist.pack(side="top", fill="y")
Ilia@6 136 up = Button(frame1, text="Up", state="disable")
Ilia@6 137 up.config(bg="red")
Ilia@6 138 down = Button(frame1, text="Down", state="disable")
Ilia@6 139 down.config(bg="orange")
Ilia@6 140 to_top = Button(frame1, text="To Top", state="disable")
Ilia@6 141 to_top.config(bg="yellow")
Ilia@6 142 to_bottom = Button(frame1, text="To Bottom", state="disable")
Ilia@6 143 to_bottom.config(bg="green")
Ilia@6 144 hide = Button(frame1, text="hide", command=frame1.forget)
Ilia@6 145 hide.config(bg="cyan")
Ilia@6 146 up.pack(side="top", fill="x")
Ilia@6 147 down.pack(side="top", fill="x")
Ilia@6 148 to_top.pack(side="top", fill="x")
Ilia@6 149 to_bottom.pack(side="top", fill="x")
Ilia@6 150 hide.pack(side="bottom", fill="x")
Ilia@6 151
Ilia@6 152
Ilia@6 153 menubar = Menu(root)
Ilia@6 154 root.config(menu=menubar)
Ilia@6 155
Ilia@6 156 menu_file = Menu(menubar)
Ilia@6 157 menu_file.add_command(label="New")
Ilia@6 158 menu_file.add_command(label="Open...")
Ilia@6 159 menu_file.add_command(label="Save...")
Ilia@6 160 menu_file.add_separator()
Ilia@6 161 menu_file.add_command(label="Exit")
Ilia@6 162 menubar.add_cascade(label="File", menu=menu_file)
Ilia@6 163
Ilia@6 164 menu_action = Menu(menubar)
Ilia@6 165 menu_action.add_command(label="Start")
Ilia@6 166 menu_action.add_command(label="Stop")
Ilia@6 167 menu_action.add_command(label="Next Step")
Ilia@6 168 menu_action.add_command(label="Increase speed")
Ilia@6 169 menu_action.add_command(label="Decrease speed")
Ilia@6 170 menu_action.add_command(label="Zoom In")
Ilia@6 171 menu_action.add_command(label="Zoom Out")
Ilia@6 172 menu_action.add_command(label="Clean field")
Ilia@6 173 menu_action.add_command(label="Fill randomly")
Ilia@6 174 menubar.add_cascade(label="Action", menu=menu_action)
Ilia@6 175
Ilia@6 176 menubar.add_command(label="Automata", command=handlers.show_frame)
Ilia@6 177
Ilia@6 178 menubar.add_command(label="Help")
Ilia@6 179
Ilia@6 180 root.mainloop()
Ilia@6 181