From 1665abd297834ae04373477d3c910795820e77b7 Mon Sep 17 00:00:00 2001 From: Oscar Gustafsson <oscar.gustafsson@gmail.com> Date: Sat, 29 Apr 2023 15:12:47 +0200 Subject: [PATCH] Do not wrap operations --- b_asic/scheduler_gui/main_window.py | 5 ++--- b_asic/scheduler_gui/scheduler_event.py | 9 +++++++-- b_asic/scheduler_gui/scheduler_item.py | 4 ---- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/b_asic/scheduler_gui/main_window.py b/b_asic/scheduler_gui/main_window.py index 5c9be8d7..e35fc985 100644 --- a/b_asic/scheduler_gui/main_window.py +++ b/b_asic/scheduler_gui/main_window.py @@ -672,9 +672,8 @@ class ScheduleMainWindow(QMainWindow, Ui_MainWindow): row = self.info_table.findItems("Operator", Qt.MatchFlag.MatchExactly) if row: row = row[0].row() - if row > 2: - for _ in range(3): - self.info_table.removeRow(1) + for _ in range(1, row): + self.info_table.removeRow(1) else: log.error("'Operator' not found in info table. It may have been renamed.") diff --git a/b_asic/scheduler_gui/scheduler_event.py b/b_asic/scheduler_gui/scheduler_event.py index fddcbc5e..1639d166 100644 --- a/b_asic/scheduler_gui/scheduler_event.py +++ b/b_asic/scheduler_gui/scheduler_event.py @@ -198,8 +198,13 @@ class SchedulerEvent: # PyQt5 pos_x += self._schedule.schedule_time redraw = True if pos_x > self._schedule.schedule_time: - pos_x = pos_x % self._schedule.schedule_time - redraw = True + # If zero execution time, keep operation at the edge + if ( + pos_x > self._schedule.schedule_time + 1 + or item.operation.execution_time + ): + pos_x = pos_x % self._schedule.schedule_time + redraw = True pos_y = self._schedule.get_y_location(item.operation.graph_id) # Check move in y-direction if pos_y != self._old_op_position: diff --git a/b_asic/scheduler_gui/scheduler_item.py b/b_asic/scheduler_gui/scheduler_item.py index 8453ea5f..c8eebe75 100644 --- a/b_asic/scheduler_gui/scheduler_item.py +++ b/b_asic/scheduler_gui/scheduler_item.py @@ -96,7 +96,6 @@ class SchedulerItem(SchedulerEvent, QGraphicsItemGroup): # PySide2 / PyQt5 pos : float The x-position to check. """ - # TODO: implement if self.schedule is None: raise ValueError("No schedule installed.") new_start_time = floor(pos) - floor(self._x_axis_indent) @@ -109,9 +108,6 @@ class SchedulerItem(SchedulerEvent, QGraphicsItemGroup): # PySide2 / PyQt5 if new_start_time < -1: # Moving one position before left edge => wrap return False - if new_start_time > self.schedule.schedule_time + 1: - # Moving one position after schedule_time => wrap - return False else: if pos < 0: return False -- GitLab