/** * Clear the selection, so that no objects of any kind are selected. * * @param hierarchy */ public static void deselectAll(final PathObjectHierarchy hierarchy) { hierarchy.getSelectionModel().clearSelection(); }
/** * Delete the selected objects from the current hierarchy, optoonally keeping their child (descendant) objects. * * @param keepChildren */ public static void clearSelectedObjects(boolean keepChildren) { PathObjectHierarchy hierarchy = getCurrentHierarchy(); if (hierarchy == null) return; Collection<PathObject> selectedRaw = hierarchy.getSelectionModel().getSelectedObjects(); List<PathObject> selected = selectedRaw.stream().filter(p -> !(p instanceof TMACoreObject)).collect(Collectors.toList()); hierarchy.removeObjects(selected, keepChildren); hierarchy.getSelectionModel().clearSelection(); }
@Override protected Collection<? extends PathObject> getParentObjects(PluginRunner<T> runner) { return runner.getHierarchy().getSelectionModel().getSelectedObjects().stream().filter(p -> p.isAnnotation()).collect(Collectors.toList()); }
@Override public PathObject getSelectedObject() { PathObjectHierarchy hierarchy = getHierarchy(); return hierarchy == null ? null : hierarchy.getSelectionModel().getSelectedObject(); }
public static void clearTMAGrid() { PathObjectHierarchy hierarchy = getCurrentHierarchy(); if (hierarchy == null) return; hierarchy.setTMAGrid(null); PathObject selected = hierarchy.getSelectionModel().getSelectedObject(); if (selected instanceof TMACoreObject) hierarchy.getSelectionModel().setSelectedObject(null); }
public static PathObject getSelectedObject() { PathObjectHierarchy hierarchy = getCurrentHierarchy(); if (hierarchy == null) return null; return hierarchy.getSelectionModel().getSelectedObject(); }
/** * Set selected objects to contain (only) all objects in the specified hierarchy according to a specified predicate. * * @param predicate * @return */ public static void selectObjects(final PathObjectHierarchy hierarchy, final Predicate<PathObject> predicate) { hierarchy.getSelectionModel().setSelectedObjects(getObjects(hierarchy, predicate), null); }
/** * Select all TMA core objects in the specified hierarchy, optionally including missing cores. * @param hierarchy */ public static void selectTMACores(final PathObjectHierarchy hierarchy, final boolean includeMissing) { hierarchy.getSelectionModel().setSelectedObjects(PathObjectTools.getTMACoreObjects(hierarchy, includeMissing), null); }
public static void resetSelection() { PathObjectHierarchy hierarchy = getCurrentHierarchy(); if (hierarchy == null) return; hierarchy.getSelectionModel().clearSelection(); }
public static Collection<PathObject> getSelectedObjects() { PathObjectHierarchy hierarchy = getCurrentHierarchy(); if (hierarchy == null) return null; return hierarchy.getSelectionModel().getSelectedObjects(); }
public static boolean setSelectedObject(PathObject pathObject) { PathObjectHierarchy hierarchy = getCurrentHierarchy(); if (hierarchy == null) return false; hierarchy.getSelectionModel().setSelectedObject(pathObject); return true; }
/** * Set intensity classifications for all selected (detection) objects. * * @param hierarchy * @param measurementName * @param thresholds */ public static void setIntensityClassificationsForSelected(final PathObjectHierarchy hierarchy, final String measurementName, final double... thresholds) { // Get all selected detections List<PathObject> pathObjects = hierarchy.getSelectionModel().getSelectedObjects() .stream().filter(p -> p.isDetection()).collect(Collectors.toList()); setIntensityClassifications(pathObjects, measurementName, thresholds); hierarchy.fireObjectClassificationsChangedEvent(QP.class, pathObjects); }
@Override public void taskComplete() { if (toRemove != null && !toRemove.isEmpty()) { if (deleteImmediately) imageData.getHierarchy().removeObjects(toRemove, false); else { imageData.getHierarchy().getSelectionModel().deselectObject(parentObject); imageData.getHierarchy().getSelectionModel().selectObjects(toRemove); } toRemove = null; nObjectsRemoved.addAndGet(nRemoved); } }
public static void clearAllObjects(final Class<? extends PathObject> cls) { if (cls == null) { clearAllObjects(); return; } PathObjectHierarchy hierarchy = getCurrentHierarchy(); if (hierarchy == null) return; List<PathObject> pathObjects = hierarchy.getObjects(null, cls); hierarchy.removeObjects(pathObjects, true); PathObject selected = hierarchy.getSelectionModel().getSelectedObject(); if (selected != null && selected.getClass().isAssignableFrom(cls)) hierarchy.getSelectionModel().setSelectedObject(null); }
/** * Set selected objects to contain (only) all objects in the current hierarchy according to a specified predicate. * * @param predicate * @return */ public static void selectObjects(final Predicate<PathObject> predicate) { PathObjectHierarchy hierarchy = getCurrentHierarchy(); if (hierarchy != null) hierarchy.getSelectionModel().setSelectedObjects(getObjects(hierarchy, predicate), null); }
@Override protected Collection<PathObject> getParentObjects(final PluginRunner<BufferedImage> runner) { return runner.getImageData().getHierarchy().getSelectionModel().getSelectedObjects(); // return runner.getImageData().getHierarchy().getSelectionModel().getSelectedObjects(); // return runner.getImageData().getHierarchy().getObjects(null, PathDetectionObject.class); }
public static void clearAllObjects() { PathObjectHierarchy hierarchy = getCurrentHierarchy(); if (hierarchy == null) return; hierarchy.clearAll(); hierarchy.getSelectionModel().clearSelection(); }
@Override protected Collection<? extends PathObject> getParentObjects(PluginRunner<T> runner) { return runner.getImageData().getHierarchy().getSelectionModel().getSelectedObjects(); }
@Override protected Collection<PathObject> getParentObjects(final PluginRunner<BufferedImage> runner) { return runner.getImageData().getHierarchy().getSelectionModel().getSelectedObjects(); }
public static void createSelectAllObject(final boolean setSelected) { ImageData<?> imageData = getCurrentImageData(); if (imageData == null) return; ImageServer<?> server = imageData.getServer(); PathObject pathObject = new PathAnnotationObject(new RectangleROI(0, 0, server.getWidth(), server.getHeight(), 0, 0, 0)); imageData.getHierarchy().addPathObject(pathObject, false); if (setSelected) imageData.getHierarchy().getSelectionModel().setSelectedObject(pathObject); }