Skip to content

Instantly share code, notes, and snippets.

@juriad
Created August 5, 2017 19:36
Show Gist options
  • Save juriad/3195eafdffea2ed3b191e06e88c9a1b4 to your computer and use it in GitHub Desktop.
Save juriad/3195eafdffea2ed3b191e06e88c9a1b4 to your computer and use it in GitHub Desktop.
Game board update
def create_board(root, images, handler):
board = ttk.LabelFrame(root, text="Board")
handler = partial(handler, setter)
setters = [None] * 28
create_sub_board(board, images, 0, 13, 12, handler, setters)
setters[0] = create_stack_top(board, images, 7, partial(handler, 'bar', 'w'))
setters[25] = create_stack_bottom(board, images, 7, partial(handler, 'bar', 'b'))
create_sub_board(board, images, 9, 19, 6, handler, setters)
setters[27] = reate_stack_top(board, images, 16, partial(handler, 'out', 'b'))
setters[26] = create_stack_bottom(board, images, 16, partial(handler, 'out', 'w'))
def setter(state):
for i, w in enumerate(state['white']):
if w > 0:
setters[i](w)
for i, b in enumerate(state['black']):
if b > 0:
setters[i](b)
return board, setter
def handler(state, setter, where, what):
update_state(state, where, what) # updating of state
setter(state) # refreshing the gui
def main():
state = initial_state()
board, setter = create_board(root, images, partial(handler, state))
setter(state)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment