in CasViewerEclipsePlugin/uimaj-ep-casviewer-core/src/main/java/org/apache/uima/casviewer/ui/internal/document/AnnotatedTextSectionPart.java [331:379]
private void createSearchField (Composite parent, FormToolkit toolkit) {
Label label = toolkit.createLabel(parent, "Search text: ");
label.setForeground(toolkit.getColors().getColor(IFormColors.TITLE));
final Text text = toolkit.createText(parent, "", SWT.SEARCH | SWT.CANCEL);
GridData gd1 = new GridData(GridData.FILL_HORIZONTAL);
gd1.grabExcessHorizontalSpace = true;
text.setLayoutData(gd1);
ToolBar toolBar = new ToolBar (parent, SWT.FLAT);
searchNextToolItem = new ToolItem (toolBar, SWT.PUSH);
ImageDescriptor descriptor = ImageLoader.getInstance().getImageDescriptor(ImageLoader.ICON_SEARCH_NEXT);
searchNextToolItem.setImage(descriptor.createImage());
searchNextToolItem.setToolTipText("Show Next Match");
searchNextToolItem.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
// Find Next
lastModelOffset = ((CasSourceViewer) sourceViewer).findAndSelect(sourceViewer.getTextWidget().getCaretOffset(),
text.getText().trim(), true);
if (lastModelOffset == -1) {
// String Not Found
lastModelOffset = 0;
}
}
});
searchPreviousToolItem = new ToolItem (toolBar, SWT.PUSH);
descriptor = ImageLoader.getInstance().getImageDescriptor(ImageLoader.ICON_SEARCH_PREV);
searchPreviousToolItem.setImage(descriptor.createImage());
searchPreviousToolItem.setToolTipText("Show Previous Match");
searchPreviousToolItem.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
// Find Previous
Point selectedRange = sourceViewer.getSelectedRange();
if (selectedRange != null) {
lastModelOffset = selectedRange.x;
} else {
lastModelOffset = sourceViewer.getTextWidget().getCaretOffset();
}
lastModelOffset = ((CasSourceViewer) sourceViewer).findAndSelect(lastModelOffset,
text.getText().trim(), false);
if (lastModelOffset == -1) {
// String Not Found
lastModelOffset = 0;
}
}
});
// searchPreviousToolItem.setEnabled(false);
}