Skip to content

Commit

Permalink
fixed test_stack_widgets
Browse files Browse the repository at this point in the history
  • Loading branch information
cudmore committed Dec 30, 2024
1 parent ba35397 commit 168011e
Show file tree
Hide file tree
Showing 10 changed files with 97 additions and 373 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ on:
pull_request:
branches: [main]
push:
branches: [main]
branches: [main, cudmore-dev]

permissions:
contents: read
Expand Down
45 changes: 0 additions & 45 deletions pyinstaller/windows/windows.spec

This file was deleted.

40 changes: 37 additions & 3 deletions src/pymapmanager/annotations/baseAnnotationsCore.py
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ def _buildTimepoint(self):
"""Build single timepoint by calling getTimepoint(timepoint).
"""
logger.warning(f'building SingleTimePointAnnotations {self.getClassName()}')
self._singleTimePoint = self._fullMap.getTimepoint(self._timepoint)
self._singleTimePoint : SingleTimePointAnnotations = self._fullMap.getTimepoint(self._timepoint)

@property
def singleTimepoint(self) -> SingleTimePointAnnotations:
Expand Down Expand Up @@ -368,6 +368,9 @@ def getRoi(self, rowIdx : int, roiType : str): # -> Optional[(list[int], list[i
Each is a df with (spineID, x, y).
"""

if not self.spineID_Exists(rowIdx):
return

if roiType == 'roiHead':
df = self.singleTimepoint.points["roiHead"].get_coordinates()
# df = self.getMapPoints().getPointsColumn(self.timepoint, 'roiHead')
Expand Down Expand Up @@ -405,6 +408,7 @@ def addSpine(self, segmentID : int, x : int, y : int, z : int) -> int:
z=z)

if newSpineID is None: # User made an incorrect spine Addition (Out of image)
logger.warning('did not add spine')
return None # -> send None for StackWidget 2 to handle

newSpineID = int(newSpineID)
Expand All @@ -426,6 +430,9 @@ def deleteAnnotation(self, rowIdx : Union[int, List[int]]) -> bool:
"""
# logger.info(f'DELETING ANNOTATION rowIdx:{rowIdx}')

if not self.spineID_Exists(rowIdx):
return False

# self.getMapPoints().deleteSpine(self.timepoint, rowIdx)
self.singleTimepoint.deleteSpine(rowIdx)

Expand All @@ -445,19 +452,40 @@ def editSpine(self, editSpineProperty : List[dict]):
col = item['col']
value = item['value']

if not self.spineID_Exists(spineID):
continue

self.setValue(col, spineID, value)

self._buildDataFrame()

self._setDirty(True) #abj

def spineID_Exists(self, spineID : int) -> bool:
if not isinstance(spineID, int):
logger.error(f'got bad spineID:{spineID}, expecting int')
return False
if spineID not in self.singleTimepoint.points.index:
logger.error(f'spineID:{spineID} does not exists')
# print(self.singleTimepoint.points.index)
return False

logger.info(f'spineID:{spineID}')
print(self.singleTimepoint.points.index)
return True

def moveSpine(self, spineID :int, x, y, z):
"""Move a spine to new (x,y,z).
"""
if not isinstance(spineID, int):
logger.error(f'got bad spineID:{spineID}, expecting int')
return

if not self.spineID_Exists(spineID):
return False

logger.info(f'spineID:{spineID}')

# _moved = self.getMapPoints().moveSpine(self.timepoint, spineID, x=x, y=y, z=z)
_moved = self.singleTimepoint.moveSpine(spineID, x=x, y=y, z=z)

Expand All @@ -478,7 +506,10 @@ def manualConnectSpine(self, spineID : int, x, y, z):
if not isinstance(spineID, int):
logger.error(f'got bad spineID:{spineID}, expecting int')
return


if not self.spineID_Exists(spineID):
return False

# _moved = self._fullMap.moveAnchor((spineID, self.sessionID), x=x, y=y, z=z)
# _moved = self.getMapPoints().moveAnchor(self.timepoint, spineID, x=x, y=y, z=z)
_moved = self.singleTimepoint.moveAnchor(spineID, x=x, y=y, z=z)
Expand All @@ -494,7 +525,10 @@ def autoResetBrightestIndex(self, spineID, segmentID, point, findBrightest : boo
if not isinstance(spineID, int):
logger.error(f'got bad spineID:{spineID}, expecting int')
return


if not self.spineID_Exists(spineID):
return False

# Update brightest path
# self.getMapPoints().autoConnectBrightestIndex(self.timepoint, spineID, segmentID, point, findBrightest)
self.singleTimepoint.autoConnectBrightestIndex(spineID, segmentID, point, findBrightest)
Expand Down
11 changes: 8 additions & 3 deletions src/pymapmanager/interface2/core/scatter_plot_widget.py
Original file line number Diff line number Diff line change
Expand Up @@ -1248,9 +1248,14 @@ def selectHighlighterPoints(self, rowIndexes : List[int]):
columnNameY = self.yPlotWidget.getCurrentStat()

# pull x/y values from selected row(s)
xSelectValues = self._df.loc[rowIndexes, columnNameX].tolist()
ySelectValues = self._df.loc[rowIndexes, columnNameY].tolist()

try:
xSelectValues = self._df.loc[rowIndexes, columnNameX].tolist()
ySelectValues = self._df.loc[rowIndexes, columnNameY].tolist()
except (KeyError) as e:
logger.error(f'rowIndexes:{rowIndexes} either columnNameX:{columnNameX} or columnNameY:{columnNameY}')
logger.error(e)
return

self.myHighlighter._setData(xSelectValues, ySelectValues)

# Store selected rows for later use
Expand Down
135 changes: 0 additions & 135 deletions src/pymapmanager/tests/_ignore_test_multi_timepoint_map.py

This file was deleted.

75 changes: 0 additions & 75 deletions src/pymapmanager/tests/interface/_broken_test_load_tif.py

This file was deleted.

Loading

0 comments on commit 168011e

Please sign in to comment.