Skip to content

Commit bff6554

Browse files
authored
Merge pull request #85 from funkelab/83-bug-invalid-integer-dtype
83 bug invalid integer dtype
2 parents ec6a5c5 + a183c84 commit bff6554

File tree

1 file changed

+9
-18
lines changed

1 file changed

+9
-18
lines changed

finn/track_data_views/views/layers/track_labels.py

Lines changed: 9 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,6 @@
1414
from finn.track_data_views.views_coordinator.tracks_viewer import TracksViewer
1515
from finn.utils.events import Event
1616

17-
from finn.track_data_views.graph_attributes import NodeAttr
18-
1917

2018
def new_label(layer: TrackLabels):
2119
"""A function to override the default finn labels new_label function.
@@ -47,7 +45,7 @@ def _new_label(layer: TrackLabels, new_track_id=True):
4745
"to be able to set the current select label to the next one available"
4846
)
4947
else:
50-
if new_track_id:
48+
if new_track_id or layer.selected_track is None:
5149
new_selected_track = layer.tracks_viewer.tracks.get_next_track_id()
5250
layer.selected_track = new_selected_track
5351
layer.selected_label = new_selected_label
@@ -345,7 +343,9 @@ def update_selected_label(self):
345343

346344
self.events.selected_label.disconnect(self._ensure_valid_label)
347345
if len(self.tracks_viewer.selected_nodes) > 0:
348-
self.selected_label = int(self.tracks_viewer.selected_nodes[0])
346+
node = int(self.tracks_viewer.selected_nodes[0])
347+
self.selected_label = node
348+
self.selected_track = int(self.tracks_viewer.tracks.get_track_id(node))
349349
self.events.selected_label.connect(self._ensure_valid_label)
350350

351351
def _ensure_valid_label(self, event: Event | None = None):
@@ -384,12 +384,10 @@ def _ensure_valid_label(self, event: Event | None = None):
384384
# if a node with the given label is already in the graph
385385
if self.tracks_viewer.tracks.graph.has_node(self.selected_label):
386386
# Update the track id
387-
self.selected_track = self.tracks_viewer.tracks._get_node_attr(
388-
self.selected_label, NodeAttr.TRACK_ID.value
389-
)
390-
existing_time = self.tracks_viewer.tracks._get_node_attr(
391-
self.selected_label, NodeAttr.TIME.value
387+
self.selected_track = self.tracks_viewer.tracks.get_track_id(
388+
self.selected_label
392389
)
390+
existing_time = self.tracks_viewer.tracks.get_time(self.selected_label)
393391
if existing_time == current_timepoint:
394392
# we are changing the existing node. This is fine
395393
pass
@@ -402,9 +400,7 @@ def _ensure_valid_label(self, event: Event | None = None):
402400
self.selected_track
403401
]:
404402
if (
405-
self.tracks_viewer.tracks._get_node_attr(
406-
node, NodeAttr.TIME.value
407-
)
403+
self.tracks_viewer.tracks.get_time(node)
408404
== current_timepoint
409405
):
410406
self.selected_label = int(node)
@@ -430,12 +426,7 @@ def _ensure_valid_label(self, event: Event | None = None):
430426
for node in self.tracks_viewer.tracks.track_id_to_node[
431427
self.selected_track
432428
]:
433-
if (
434-
self.tracks_viewer.tracks._get_node_attr(
435-
node, NodeAttr.TIME.value
436-
)
437-
== current_timepoint
438-
):
429+
if self.tracks_viewer.tracks.get_time(node) == current_timepoint:
439430
self.selected_label = int(node)
440431
edit = True
441432
break

0 commit comments

Comments
 (0)