import ie.dcu.segment.painters.SegmentationPainter;
import ie.dcu.swt.*;
import ie.dcu.swt.event.*;
+import ie.dcu.apps.ist.activelearning.*;
import java.io.BufferedReader;
import java.io.InputStreamReader;
private final AnnotatedImageControl view;
// tool bars
- private final ToolBar mainToolbar, viewSelectionToolbar, termLookupBar;
+ private final ToolBar mainToolbar, viewSelectionToolbar;
// Composite for Term details
- private Composite termDetailComposite;
+ private Composite termLookupComposite, termDetailComposite;
// term detail table
private static Table termDetailTable;
Background,
OperatingMode,
FormSegment,
+ PredictSegments,
ZoomIn,
ZoomOut,
ZoomOriginal,
painters = new PainterRegistry();
mainToolbar = new ToolBar(this, SWT.RIGHT | SWT.FLAT);
viewSelectionToolbar = new ToolBar(this, SWT.RIGHT | SWT.FLAT);
- termLookupBar = new ToolBar(this, SWT.RIGHT | SWT.FLAT | SWT.BORDER);
+ termLookupComposite = new Composite(this, SWT.RIGHT | SWT.FLAT);
view = new AnnotatedImageControl(this, SWT.BORDER);
termDetailComposite = new Composite(this, SWT.RIGHT | SWT.FLAT);
//create all visual controls
createToolMainToolbar();
createToolViewSelectionToolbar();
- createToolTermLookupBar();
+ createToolTermLookupComposite();
createTermDetailTable();
createTermSynonymTable();
createTermDetailFields();
//m.add(getAction(Tool.Background));
m.add(getAction(Tool.OperatingMode));
m.add(getAction(Tool.FormSegment));
+ m.add(getAction(Tool.PredictSegments));
m.add(new Separator());
m.add(getAction(Tool.ZoomIn));
m.add(getAction(Tool.ZoomOut));
/**
* Third tool bar for holding the Annotate Combo box.
*/
- private void createToolTermLookupBar() {
- SwtUtils.addLabel(termLookupBar, getAction(Tool.SetLabel).getText());
- comboLabel = SwtUtils.addCombo(termLookupBar, 250, SWT.SIMPLE);
+ private void createToolTermLookupComposite() {
+ SwtUtils.addLabelToComposite(termLookupComposite, getAction(Tool.SetLabel).getText());
+ comboLabel = SwtUtils.addComboToComposite(termLookupComposite, 250, SWT.SIMPLE);
comboLabel.setToolTipText( getAction(Tool.SetLabel).getToolTipText());
comboLabel.addKeyListener(new KeyAdapter() {
public void keyReleased(KeyEvent e) {
termDetailLookup(parseAccessionIdFromComboLabel(comboLabel));
}
});
- assign = SwtUtils.addButton(termLookupBar, 55, "Assign");
+ assign = SwtUtils.addButtonToComposite(termLookupComposite, 55, "Assign");
assign.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent arg0) {
if(view.getContext().isEnabled())
execute(Tool.AssignButton, null);
}
});
- termLookupBar.pack();
}
/**
gd.verticalAlignment = SWT.FILL;
gd.widthHint = 880;
view.setLayoutData(gd);
-
- // Layout term lookup toolbar
+
+ GridLayout termLookupLayout = new GridLayout(3, false);
+ termLookupComposite.setLayout(termLookupLayout);
+
+ // Layout term lookup composite
gd = new GridData();
- gd.horizontalAlignment = SWT.FILL;
- gd.grabExcessHorizontalSpace = true;
- gd.heightHint = heightHint;
- termLookupBar.setLayoutData(gd);
+ termLookupComposite.setLayoutData(gd);
// Layout term detail Composite
GridLayout termDetailLayout = new GridLayout(2, false);
updateToolStates();
}
+ /**
+ * Predicts the segments in the image using active learning.
+ */
+ public void predictSegments() {
+
+ SIFTDescriptor sift = new SIFTDescriptor();
+// sift.calculateDescriptors(view.getContext().getImage());
+ updateToolStates();
+ }
public boolean isAutoApply() {
return this.auto;
case FormSegment:
formSegmetationObject();
break;
+ case PredictSegments:
+ predictSegments();
+ break;
case ZoomIn:
zoomIn();
break;
Tool.Background.action.setEnabled(!getLabelMode() && canZoomIn());
Tool.OperatingMode.action.setEnabled(canZoomIn());
Tool.FormSegment.action.setEnabled(CanLabel());
+ Tool.PredictSegments.action.setEnabled(canZoomIn());
// Always enabled if view enabled
Tool.SetBrushSize.action.setEnabled(true);