Skip to content
Snippets Groups Projects
Commit 52ccc7b4 authored by Stéphane  DALLONGEVILLE's avatar Stéphane DALLONGEVILLE
Browse files

Added VarROIDescriptor variable for easy ROI Descriptor selector

parent 1ba47c63
No related branches found
No related tags found
No related merge requests found
package plugins.adufour.vars.lang;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import icy.roi.ROIDescriptor;
import icy.util.StringUtil;
import plugins.adufour.vars.gui.model.ValueSelectionModel;
import plugins.kernel.roi.descriptor.measure.ROIInteriorDescriptor;
/**
* EzVar representing {@link ROIDescriptor} selector
*
* @author Stephane.D
*/
public class VarROIDescriptor extends VarString
{
/**
* @param name
* Variable name
*/
public VarROIDescriptor(String name)
{
super(name, "");
final List<ROIDescriptor> roiDescriptors = new ArrayList<>(ROIDescriptor.getDescriptors().keySet());
// build list of descriptor id
final List<String> descriptorsId = new ArrayList<>();
String sizeDescriptorId = null;
for (ROIDescriptor descriptor : roiDescriptors)
{
final String id = descriptor.getId();
// keep trace of size descriptor
if (StringUtil.equals(ROIInteriorDescriptor.ID, id))
sizeDescriptorId = id;
descriptorsId.add(id);
}
// alpha sort
Collections.sort(descriptorsId);
// initialize descriptors field
setDefaultEditorModel(new ValueSelectionModel<>(descriptorsId.toArray(new String[descriptorsId.size()]),
sizeDescriptorId, false));
}
public VarROIDescriptor()
{
this("Descriptor");
}
}
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment