Files
@ 630c42e6d376
Branch filter:
Location: OneEye/src/gui/mainwindow.py - annotation
630c42e6d376
1.5 KiB
text/x-python
requirements.txt
4b4cae6939e8 d138366bd4bb 4b4cae6939e8 5f2136fcbebd 5f2136fcbebd 4b4cae6939e8 9fa3f70d50ba 5a1d87ee0f8a 4b4cae6939e8 4b4cae6939e8 5f2136fcbebd 4b4cae6939e8 4b4cae6939e8 4b4cae6939e8 4b4cae6939e8 d138366bd4bb 4b4cae6939e8 4b4cae6939e8 4b4cae6939e8 9fa3f70d50ba 928d9a0edc05 4b4cae6939e8 bc96e653888e bc96e653888e 5f2136fcbebd bc96e653888e 4b4cae6939e8 9fa3f70d50ba 9fa3f70d50ba 4b4cae6939e8 9fa3f70d50ba 4b4cae6939e8 4b4cae6939e8 d138366bd4bb d138366bd4bb d138366bd4bb 4b4cae6939e8 d138366bd4bb d138366bd4bb d138366bd4bb d138366bd4bb 5a1d87ee0f8a 5a1d87ee0f8a 5a1d87ee0f8a 5a1d87ee0f8a 5a1d87ee0f8a 4b4cae6939e8 9fa3f70d50ba 4b4cae6939e8 4b4cae6939e8 4b4cae6939e8 9fa3f70d50ba 5a1d87ee0f8a 5a1d87ee0f8a 5a1d87ee0f8a 5a1d87ee0f8a 5a1d87ee0f8a 5a1d87ee0f8a 5a1d87ee0f8a 5a1d87ee0f8a | import tkinter as tk
from tkinter import N,S,E,W
from .util import MsgMixin
from .menu import MainMenu
from .boardview import BoardView
from .imgview import ImgView
from .statusbar import StatusBar
class MainWindow(tk.Frame,MsgMixin):
def __init__(self,parent,master=None):
self.parent=parent
tk.Frame.__init__(self, master)
self.grid(column=0,row=0,sticky=(N,S,E,W))
self._createWidgets()
def setCurrentFrame(self,frame):
self.imgView.setImg(frame)
def _createWidgets(self):
# menu
self.parent.root.option_add('*tearOff',False)
self._menu=MainMenu(self.parent,self.parent.root)
# a captured frame with overlay graphics
self._imgWrapper=tk.Frame(self,width=480,height=360)
self.imgView=ImgView(self._imgWrapper,self)
self._imgWrapper.grid(column=0,row=0,sticky=(N,S,E,W))
# board with detected stones
self._boardWrapper=tk.Frame(self,width=360,height=360)
self.boardView=BoardView(self._boardWrapper)
self._boardWrapper.grid(column=1,row=0,sticky=(N,S,E,W))
self.columnconfigure(0,weight=1)
self.columnconfigure(1,weight=1)
self.rowconfigure(0,weight=1)
self._statusBar=StatusBar(self)
self._statusBar.grid(column=0,row=1,columnspan=2,sticky=(S,E,W))
self.rowconfigure(1,weight=0)
# render everything
self.imgView.redraw()
## Redraws the current image and its overlay.
def redrawImgView(self):
self.imgView.redraw()
def setUp(self):
self._statusBar.setUp()
self.imgView.setUp()
def setRecording(self):
self._statusBar.setRecording()
self.imgView.setRecording()
|