From 13ca85cf3f12a374996ccbba1d6c6782b576cce2 Mon Sep 17 00:00:00 2001 From: Blake Harnden <32446120+bharnden@users.noreply.github.com> Date: Tue, 26 Nov 2019 17:00:55 -0800 Subject: [PATCH] changes to support mobility actions for mobility player dialog --- coretk/coretk/dialogs/mobilityplayer.py | 25 ++++++++++++++++++++++--- coretk/coretk/wirelessconnection.py | 1 - 2 files changed, 22 insertions(+), 4 deletions(-) diff --git a/coretk/coretk/dialogs/mobilityplayer.py b/coretk/coretk/dialogs/mobilityplayer.py index 0eee7166..3a4020e6 100644 --- a/coretk/coretk/dialogs/mobilityplayer.py +++ b/coretk/coretk/dialogs/mobilityplayer.py @@ -1,6 +1,7 @@ import tkinter as tk from tkinter import ttk +from core.api.grpc import core_pb2 from coretk.dialogs.dialog import Dialog PAD = 5 @@ -11,10 +12,13 @@ class MobilityPlayerDialog(Dialog): super().__init__( master, app, f"{canvas_node.core_node.name} Mobility Player", modal=False ) + self.canvas_node = canvas_node + self.node = canvas_node.core_node self.config = self.app.core.mobility_configs[canvas_node.core_node.id] self.play_button = None self.pause_button = None self.stop_button = None + self.progressbar = None self.draw() def draw(self): @@ -27,9 +31,9 @@ class MobilityPlayerDialog(Dialog): frame = ttk.Frame(self.top) frame.grid(sticky="ew", pady=PAD) frame.columnconfigure(0, weight=1) - progressbar = ttk.Progressbar(frame, mode="indeterminate") - progressbar.grid(row=0, column=0, sticky="ew", padx=PAD) - progressbar.start() + self.progressbar = ttk.Progressbar(frame, mode="indeterminate") + self.progressbar.grid(row=0, column=0, sticky="ew", padx=PAD) + self.progressbar.start() label = ttk.Label(frame, text="time") label.grid(row=0, column=1) @@ -63,11 +67,26 @@ class MobilityPlayerDialog(Dialog): def click_play(self): self.clear_buttons() self.play_button.state(["pressed"]) + session_id = self.app.core.session_id + self.app.core.client.mobility_action( + session_id, self.node.id, core_pb2.MobilityAction.START + ) + self.progressbar.start() def click_pause(self): self.clear_buttons() self.pause_button.state(["pressed"]) + session_id = self.app.core.session_id + self.app.core.client.mobility_action( + session_id, self.node.id, core_pb2.MobilityAction.PAUSE + ) + self.progressbar.stop() def click_stop(self): self.clear_buttons() self.stop_button.state(["pressed"]) + session_id = self.app.core.session_id + self.app.core.client.mobility_action( + session_id, self.node.id, core_pb2.MobilityAction.STOP + ) + self.progressbar.stop() diff --git a/coretk/coretk/wirelessconnection.py b/coretk/coretk/wirelessconnection.py index 7b868bea..729fd84e 100644 --- a/coretk/coretk/wirelessconnection.py +++ b/coretk/coretk/wirelessconnection.py @@ -16,7 +16,6 @@ class WirelessConnection: canvas_node_two = self.core.canvas_nodes[node_two_id] key = tuple(sorted((node_one_id, node_two_id))) if key not in self.map: - print("not in map") x1, y1 = self.canvas.coords(canvas_node_one.id) x2, y2 = self.canvas.coords(canvas_node_two.id) wlan_canvas_id = self.canvas.create_line(