use of org.eclipse.swt.events.MouseEvent in project translationstudio8 by heartsome.
the class GridCopyEnable method initListener.
private void initListener() {
gridTable.addListener(SWT.MouseDown, new Listener() {
public void handleEvent(Event e) {
if ((e.button != 1) || (IS_MAC && (e.stateMask & SWT.MOD4) != 0)) {
return;
}
clickCount = e.count;
doMouseLocationChange(e.x, e.y, false);
}
});
gridTable.addListener(SWT.MouseUp, new Listener() {
public void handleEvent(Event e) {
clickCount = 0;
}
});
gridTable.addMouseMoveListener(new MouseMoveListener() {
public void mouseMove(MouseEvent e) {
if (clickCount > 0) {
gridTable.update();
doMouseLocationChange(e.x, e.y, true);
}
}
});
gridTable.addListener(SWT.KeyDown, new Listener() {
public void handleEvent(Event event) {
int t = event.keyCode | event.stateMask;
if (t == ('C' | SWT.MOD1) || t == ('c' | SWT.MOD1)) {
// copy event
doAction(ST.COPY);
}
}
});
gridTable.getVerticalBar().addListener(SWT.Selection, new Listener() {
public void handleEvent(Event event) {
handleVerticalScroll(event);
}
});
gridTable.addDisposeListener(new DisposeListener() {
public void widgetDisposed(DisposeEvent e) {
if (clipboard != null) {
clipboard.dispose();
}
if (defaultCaret != null) {
defaultCaret.dispose();
}
}
});
}
use of org.eclipse.swt.events.MouseEvent in project cogtool by cogtool.
the class WebCrawlImportDialog method buildDialog.
@Override
protected void buildDialog() {
dialog.setLayout(new FillLayout());
// 525, 350
dialog.setMinimumSize(485, 325);
sc1 = new ScrolledComposite(dialog, SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER);
sc1.setLayout(new FillLayout());
comp = new Composite(sc1, SWT.NONE);
comp.setLayout(new FormLayout());
//different images needed to match the different backgrounds of the dialog box
questionImage = GraphicsUtil.getImageFromResource("edu/cmu/cs/hcii/cogtool/resources/question_button.jpg");
questionImageMac = GraphicsUtil.getImageFromResource("edu/cmu/cs/hcii/cogtool/resources/question_button_mac.jpg");
questionImageMacShadow = GraphicsUtil.getImageFromResource("edu/cmu/cs/hcii/cogtool/resources/question_button_shadow.jpg");
imagePlus = GraphicsUtil.getImageFromResource("edu/cmu/cs/hcii/cogtool/resources/plus_sign.jpg");
imagePlusMac = GraphicsUtil.getImageFromResource("edu/cmu/cs/hcii/cogtool/resources/plus_sign_mac.jpg");
imagePlusMacDisabled = GraphicsUtil.getImageFromResource("edu/cmu/cs/hcii/cogtool/resources/plus_sign_mac_disabled.jpg");
imageMinus = GraphicsUtil.getImageFromResource("edu/cmu/cs/hcii/cogtool/resources/minus_sign.jpg");
imageMinusMac = GraphicsUtil.getImageFromResource("edu/cmu/cs/hcii/cogtool/resources/minus_sign_mac.jpg");
imageMinusMacDisabled = GraphicsUtil.getImageFromResource("edu/cmu/cs/hcii/cogtool/resources/minus_sign_mac_disabled.jpg");
Label dialogTitle = new Label(comp, SWT.NONE);
dialogTitle.setText(IMPORT_WEB_CRAWL_TITLE);
dialogTitle.setFont(TITLE_FONT);
Label intoDesignLbl = new Label(comp, SWT.NONE);
intoDesignLbl.setText(INTO_DESIGN_LABEL);
designCombo = new ComboWithEnableFix(comp, SWT.DROP_DOWN | SWT.READ_ONLY);
designCombo.add(CREATE_NEW_DESIGN);
Iterator<Design> designs = project.getDesigns().iterator();
while (designs.hasNext()) {
Design design = designs.next();
designCombo.add(SWTStringUtil.insertEllipsis(design.getName(), StringUtil.EQUAL, designCombo.getFont()));
// TODO: We'll need to observe Design name changes if
// it ever becomes possible to change a design name other than
// through the Project editor -- remember to remove the handler
// when this dialog box gets disposed!
}
designCombo.select(0);
designCombo.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent evt) {
String selectedName = designCombo.getText();
Design design = project.getDesign(selectedName);
if (design != null) {
if (sameURLGroup == null) {
buildSameURLGroup();
}
//insert the name of the selected Design into the Group Label
int index = SAME_URL_GROUP.indexOf("Design") + 6;
String titleGroup = SAME_URL_GROUP.substring(0, index);
titleGroup += " (" + design.getName() + ")";
titleGroup += SAME_URL_GROUP.substring(index);
sameURLGroup.setText(titleGroup);
displaySameURLGroup(true);
} else if (sameURLGroup != null) {
displaySameURLGroup(false);
}
repaint();
}
});
designCombo.addTraverseListener(new TraverseListener() {
public void keyTraversed(TraverseEvent evt) {
if (evt.detail == SWT.TRAVERSE_TAB_NEXT) {
evt.detail = SWT.TRAVERSE_NONE;
urlText.forceFocus();
}
}
});
useSelectionGroup = new Group(comp, SWT.SHADOW_NONE);
useSelectionGroup.setText(URL_SELECTION_GROUP);
useSelectionGroup.setLayout(new FormLayout());
typeHTMLGroup = new Group(useSelectionGroup, SWT.SHADOW_NONE);
typeHTMLGroup.setText("Starting URL #1");
typeHTMLGroup.setLayout(new FormLayout());
urlText = new TextWithEnableFix(typeHTMLGroup, SWT.BORDER | SWT.SINGLE);
urlText.setText("http://");
urlText.addTraverseListener(new TraverseListener() {
public void keyTraversed(TraverseEvent e) {
if (e.detail == SWT.TRAVERSE_TAB_PREVIOUS) {
e.detail = SWT.TRAVERSE_NONE;
designCombo.forceFocus();
}
}
});
addGroupListener = new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent evt) {
if (numOfGroups == 1) {
if (urlText2 == null) {
buildSecondGroup();
}
displaySecondGroup(true);
FormData formData = new FormData();
formData.top = new FormAttachment(typeHTMLGroup, 5, SWT.BOTTOM);
formData.left = new FormAttachment(typeHTMLGroup, 0, SWT.LEFT);
formData.right = new FormAttachment(100, -6);
typeHTMLGroup2.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(typeHTMLGroup2, 5, SWT.TOP);
formData.left = new FormAttachment(urlText, 0, SWT.LEFT);
formData.right = new FormAttachment(urlText, 350, SWT.LEFT);
urlText2.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(urlText2, 1, SWT.TOP);
formData.left = new FormAttachment(urlText2, 5, SWT.RIGHT);
plusButton2.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(plusButton2, 5, SWT.TOP);
formData.left = new FormAttachment(plusButton2, 10, SWT.RIGHT);
minusButton2.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(urlText2, 5, SWT.BOTTOM);
formData.left = new FormAttachment(urlText2, 10, SWT.LEFT);
maximumDepthToCrawlLabel2.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(maximumDepthToCrawlLabel2, 0, SWT.TOP);
formData.left = new FormAttachment(maximumDepthToCrawlLabel2, 3, SWT.RIGHT);
questionMarkButtonDepth2.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(maximumDepthToCrawlLabel2, 0, SWT.TOP);
formData.left = new FormAttachment(questionMarkButtonDepth2, 10, SWT.RIGHT);
maxDepthCombo2.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(maximumDepthToCrawlLabel2, 15, SWT.BOTTOM);
formData.left = new FormAttachment(urlText2, 10, SWT.LEFT);
restrictDomainLabel2.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(restrictDomainLabel2, 0, SWT.TOP);
formData.left = new FormAttachment(restrictDomainLabel2, 3, SWT.RIGHT);
questionMarkButtonDomain2.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(restrictDomainLabel2, 10, SWT.BOTTOM);
formData.left = new FormAttachment(0, 25);
useHTML4.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(useHTML4, 0, SWT.TOP);
formData.left = new FormAttachment(useHTML4, 0, SWT.RIGHT);
urlPath4.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(useHTML4, 8, SWT.BOTTOM);
formData.left = new FormAttachment(useHTML4, 0, SWT.LEFT);
useHTML5.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(useHTML5, 0, SWT.TOP);
formData.left = new FormAttachment(useHTML5, 0, SWT.RIGHT);
urlPath5.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(useHTML5, 8, SWT.BOTTOM);
formData.left = new FormAttachment(useHTML5, 0, SWT.LEFT);
useHTML6.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(useHTML6, 0, SWT.TOP);
formData.left = new FormAttachment(useHTML6, 0, SWT.RIGHT);
urlPath6.setLayoutData(formData);
formData = new FormData();
formData.left = new FormAttachment(urlPath6, 0, SWT.RIGHT);
formData.top = new FormAttachment(urlPath6, 0, SWT.TOP);
urlPath6b.setLayoutData(formData);
minusButton.setEnabled(true);
if (OSUtils.MACOSX) {
minusButton.getItem(0).setImage(imageMinusMac);
}
numOfGroups++;
repaint();
} else if (numOfGroups == 2) {
if (urlText3 == null) {
buildThirdGroup();
}
displayThirdGroup(true);
FormData formData = new FormData();
formData.top = new FormAttachment(typeHTMLGroup2, 5, SWT.BOTTOM);
formData.left = new FormAttachment(typeHTMLGroup2, 0, SWT.LEFT);
formData.right = new FormAttachment(100, -6);
typeHTMLGroup3.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(typeHTMLGroup3, 5, SWT.TOP);
formData.left = new FormAttachment(urlText2, 0, SWT.LEFT);
formData.right = new FormAttachment(urlText2, 350, SWT.LEFT);
urlText3.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(urlText3, 1, SWT.TOP);
formData.left = new FormAttachment(urlText3, 5, SWT.RIGHT);
plusButton3.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(plusButton3, 4, SWT.TOP);
formData.left = new FormAttachment(plusButton3, 10, SWT.RIGHT);
minusButton3.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(urlText3, 5, SWT.BOTTOM);
formData.left = new FormAttachment(urlText3, 10, SWT.LEFT);
maximumDepthToCrawlLabel3.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(maximumDepthToCrawlLabel3, 0, SWT.TOP);
formData.left = new FormAttachment(maximumDepthToCrawlLabel3, 3, SWT.RIGHT);
questionMarkButtonDepth3.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(maximumDepthToCrawlLabel3, 0, SWT.TOP);
formData.left = new FormAttachment(questionMarkButtonDepth3, 10, SWT.RIGHT);
maxDepthCombo3.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(maximumDepthToCrawlLabel3, 15, SWT.BOTTOM);
formData.left = new FormAttachment(urlText3, 10, SWT.LEFT);
restrictDomainLabel3.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(restrictDomainLabel3, 0, SWT.TOP);
formData.left = new FormAttachment(restrictDomainLabel3, 3, SWT.RIGHT);
questionMarkButtonDomain3.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(restrictDomainLabel3, 10, SWT.BOTTOM);
formData.left = new FormAttachment(0, 25);
useHTML7.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(useHTML7, 0, SWT.TOP);
formData.left = new FormAttachment(useHTML7, 0, SWT.RIGHT);
urlPath7.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(useHTML7, 8, SWT.BOTTOM);
formData.left = new FormAttachment(useHTML7, 0, SWT.LEFT);
useHTML8.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(useHTML8, 0, SWT.TOP);
formData.left = new FormAttachment(useHTML8, 0, SWT.RIGHT);
urlPath8.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(useHTML8, 8, SWT.BOTTOM);
formData.left = new FormAttachment(useHTML8, 0, SWT.LEFT);
useHTML9.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(useHTML9, 0, SWT.TOP);
formData.left = new FormAttachment(useHTML9, 0, SWT.RIGHT);
urlPath9.setLayoutData(formData);
formData = new FormData();
formData.left = new FormAttachment(urlPath9, 0, SWT.RIGHT);
formData.top = new FormAttachment(urlPath9, 0, SWT.TOP);
urlPath9b.setLayoutData(formData);
numOfGroups++;
repaint();
}
}
};
minusGroupListener1 = new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent evt) {
if (numOfGroups > 1) {
moveGroupTwoToOne();
minusGroupTwo();
}
}
};
plusButton = makeToolBarButton(typeHTMLGroup, addGroupListener, questionImages.PLUS_IMAGE);
minusButton = makeToolBarButton(typeHTMLGroup, minusGroupListener1, questionImages.MINUS_IMAGE);
minusButton.setEnabled(false);
if (OSUtils.MACOSX) {
minusButton.getItem(0).setImage(imageMinusMacDisabled);
}
maximumDepthToCrawlLabel = new Label(typeHTMLGroup, SWT.NONE);
maximumDepthToCrawlLabel.setText("Maximum Depth To Crawl: ");
depthListener = new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent evt) {
messageBox("Select 0 to import only the page at the URL you entered.\n" + "Select 1 to import that page and all pages a user could " + "get to by clicking one link.\n" + "Select 2 to import that page and all pages a user could " + "get to by clicking two links.\n" + "Etc.\n" + "Select Unlimited to allow any page accessible from the " + "URL you entered, no matter how many links need to be " + "clicked to get there. However, to avoid importing the " + "entire Web, consider restricting the domain or entering " + "a maximum number of pages to import.", SWT.ICON_INFORMATION);
}
};
questionMarkButtonDepth = makeToolBarButton(typeHTMLGroup, depthListener, questionImages.QUESTION_SHADOW);
maxDepthCombo = new ComboWithEnableFix(typeHTMLGroup, SWT.DROP_DOWN | SWT.READ_ONLY);
maxDepthCombo.add("Unlimited");
for (int i = 0; i < 100; i++) {
maxDepthCombo.add("" + i);
}
maxDepthCombo.select(2);
maxDepthCombo.setVisibleItemCount(21);
maximumDepth = 1;
maximumDepth2 = 1;
maximumDepth3 = 1;
comboListener = new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent evt) {
maximumDepth = Integer.MAX_VALUE;
if (!maxDepthCombo.getText().equals("Unlimited")) {
maximumDepth = Integer.parseInt(maxDepthCombo.getText());
}
if ((maxDepthCombo2 != null) && (maxDepthCombo2.getVisible())) {
maximumDepth2 = Integer.MAX_VALUE;
if (!maxDepthCombo2.getText().equals("Unlimited")) {
maximumDepth2 = Integer.parseInt(maxDepthCombo2.getText());
}
}
if ((maxDepthCombo3 != null) && (maxDepthCombo3.getVisible())) {
maximumDepth3 = Integer.MAX_VALUE;
if (!maxDepthCombo3.getText().equals("Unlimited")) {
maximumDepth3 = Integer.parseInt(maxDepthCombo3.getText());
}
}
}
};
maxDepthCombo.addSelectionListener(comboListener);
restrictDomainLabel = new Label(typeHTMLGroup, SWT.NONE);
restrictDomainLabel.setText("Restrict Domain: ");
domainHelpListener = new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent evt) {
messageBox("Select Unlimited to import any pages that could be reached " + "from the URL entered above. " + "The radio buttons reflect the host name and path name of the URL " + "entered above. Select a more restrictive radio button to only import " + "pages whose URL begins as shown.\n\n" + "It is useful to restrict the domain when you want to evaluate a " + "particular site, but that site points out to other places on the Web.", SWT.ICON_INFORMATION);
}
};
questionMarkButtonDomain = makeToolBarButton(typeHTMLGroup, domainHelpListener, questionImages.QUESTION_SHADOW);
questionMarkButtonDomain.addTraverseListener(new TraverseListener() {
public void keyTraversed(TraverseEvent e) {
if (e.detail == SWT.TRAVERSE_TAB_NEXT) {
if (numOfGroups > 1) {
e.detail = SWT.TRAVERSE_NONE;
urlText2.forceFocus();
}
}
}
});
minusGroupListener2 = new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent evt) {
minusGroupTwo();
}
};
minusGroupListener3 = new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent evt) {
numOfGroups--;
displayThirdGroup(false);
repaint();
}
};
useHTML1 = new Button(typeHTMLGroup, SWT.RADIO);
useHTML1.setSelection(true);
domainListener = new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent evt) {
if (useHTML1.getSelection()) {
restrictedDomain = "Unrestricted ";
} else if (useHTML2.getSelection()) {
restrictedDomain = urlPath2.getText();
} else {
restrictedDomain = urlPath3.getText();
}
if ((useHTML4 != null) && (useHTML4.getSelection())) {
restrictedDomain2 = "Unrestricted ";
} else if ((useHTML5 != null) && (useHTML5.getSelection())) {
restrictedDomain2 = urlPath5.getText();
} else if (useHTML6 != null) {
restrictedDomain2 = urlPath6.getText();
}
if ((useHTML7 != null) && (useHTML7.getSelection())) {
restrictedDomain3 = "Unrestricted ";
} else if ((useHTML8 != null) && (useHTML8.getSelection())) {
restrictedDomain3 = urlPath8.getText();
} else if (useHTML9 != null) {
restrictedDomain3 = urlPath9.getText();
}
}
};
useHTML1.addSelectionListener(domainListener);
useHTML1.setSelection(true);
useHTML2 = new Button(typeHTMLGroup, SWT.RADIO);
useHTML2.addSelectionListener(domainListener);
useHTML2.setEnabled(false);
useHTML3 = new Button(typeHTMLGroup, SWT.RADIO);
useHTML3.addSelectionListener(domainListener);
useHTML3.setEnabled(false);
urlPath1 = new Label(typeHTMLGroup, SWT.NONE);
urlPath1.setText("Unrestricted");
urlPath2 = new Label(typeHTMLGroup, SWT.NONE);
urlPath2.setText("http://www.host_name/");
urlPath2.setFont(URL_PATH_FONT);
urlPath3 = new Label(typeHTMLGroup, SWT.NONE);
urlPath3.setText("http://www.host_name/path");
urlPath3.setFont(URL_PATH_FONT);
urlPath3b = new Label(typeHTMLGroup, SWT.NONE);
urlPath3b.setText("path");
urlPath3b.setFont(URL_PATH_FONT);
urlPath3b.setVisible(false);
urlText.addFocusListener(new TextFocusListener(urlText, urlPath2, urlPath3, useHTML1, useHTML2, useHTML3, 1));
capturePageImagesOption = new Button(comp, SWT.CHECK);
capturePageImagesOption.setText(CAPTURE_IMAGES_LABEL);
capturePageImagesOption.setSelection(capturePageImages);
SelectionListener imageListener = new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent evt) {
messageBox("Check this box to set a picture of each page as the background of " + "its frame. The picture will be the size of the browser width and " + "height set below, so it will not be of the entire page if the user " + "would have to scroll to see it all.\n\n" + "It is useful to capture pictures to convey the look of the site in " + "presentations, but CogTool predictions will not be affected by " + "having a picture or not. Having pictures increases the size of " + "CogTool project files and having many of them may slow down interaction.", SWT.ICON_INFORMATION);
}
};
questionMarkButtonCaptureImage = makeToolBarButton(comp, imageListener, questionImages.QUESTION_IMAGE);
maxPagesToImport = new IntegerEntry(comp, SWT.BORDER);
maxPagesToImport.setAllowNegative(false);
maxPagesToImport.setText(USE_SYSTEM_DEFAULT_VALUE);
maxPagesToImport.setText("500");
maxPagesToImport.addFocusListener(new ManageSystemDefault(maxPagesToImport, 500, Integer.MAX_VALUE));
maxPagesLabel = new Label(comp, SWT.NONE);
maxPagesLabel.setText(MAX_PAGES_LABEL);
SelectionListener pagesListener = new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent evt) {
messageBox("Use this field to limit the number of pages imported into a design. " + "It is especially important to use a reasonable maximum when you have " + "not restricted the domain and have specified a maximum depth greater " + "than 2. " + "The default, 500 pages, is sufficient for most projects, but leave " + "the field empty to have no restriction at all", SWT.ICON_INFORMATION);
}
};
questionMarkButtonMaxPages = makeToolBarButton(comp, pagesListener, questionImages.QUESTION_IMAGE);
Label browserWidthLbl = new Label(comp, SWT.NONE);
browserWidthLbl.setText(BROWSER_WIDTH_LABEL);
Label browserHeightLbl = new Label(comp, SWT.NONE);
browserHeightLbl.setText(BROWSER_HEIGHT_LABEL);
browserWidthEntry = new IntegerEntry(comp, SWT.BORDER);
browserWidthEntry.setAllowNegative(false);
browserWidthEntry.setText(USE_SYSTEM_DEFAULT_VALUE);
browserWidthEntry.setText("900");
browserWidthEntry.addFocusListener(new ManageSystemDefault(browserWidthEntry, 900, 2100));
browserHeightEntry = new IntegerEntry(comp, SWT.BORDER);
browserHeightEntry.setAllowNegative(false);
browserHeightEntry.setText(USE_SYSTEM_DEFAULT_VALUE);
browserHeightEntry.setText("600");
browserHeightEntry.addFocusListener(new ManageSystemDefault(browserHeightEntry, 600, 1200));
okButton = new Button(comp, SWT.PUSH);
okButton.addMouseListener(new MouseAdapter() {
@Override
public void mouseUp(MouseEvent evt) {
wasEditing = null;
}
});
okButton.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent evt) {
Text textBox = null;
String text = null;
String errorText = "";
int count = 1;
boolean proceed = false;
isValidURL = false;
isValidURL2 = false;
isValidURL3 = false;
HashMap<Integer, String> errorMap = new HashMap<Integer, String>();
errorMap.put(SITE_VALID, "");
errorMap.put(SITE_INVALID, "The given URL for URL #");
errorMap.put(SITE_BAD_EXTENSION, "The given extension for URL # ");
errorMap.put(SITE_EXCEPTION, "");
/*
* The while loop checks all three of the given URLs, the loop
* breaks if the user has not entered up to 3 urls
*/
boolean exception = false;
while (count < 4) {
textBox = null;
proceed = false;
if (count == 1) {
/*
* Trim is needed to ensure all leading and trailing
* spaces are eliminated. checkProtocol(text, boolean)
* checks to make sure that there is valid protocol
*/
textBox = urlText;
text = urlText.getText().trim();
proceed = checkProtocol(text, true);
} else if (count == 2) {
if (numOfGroups > 1) {
textBox = urlText2;
text = textBox.getText().trim();
proceed = checkProtocol(text, true);
} else {
break;
}
} else if (count == 3) {
if (numOfGroups > 2) {
textBox = urlText3;
text = textBox.getText().trim();
proceed = checkProtocol(text, true);
} else {
break;
}
}
/* There was not a valid protocol at the
* first try so now append http:// at the beginning so there
* will be a valid protocol. For example, if the user enters
* www.cmu.edu, http:// is appended here because a protocol
* is needed to check to see if the url is valid.
*/
if (!proceed) {
try {
proceed = checkProtocol(URLCrawlEntry.ensureAbsolute(text), true);
if (proceed) {
textBox.setText("http://" + text);
}
} catch (Exception ex) {
}
}
if (proceed) {
String givenURL = textBox.getText().trim();
if ("".equals(givenURL)) {
textBox.setText(USE_SYSTEM_DEFAULT_VALUE);
textBox.setForeground(DISABLED_TEXT_COLOR);
}
String st = givenURL.substring(givenURL.indexOf("//") + 2);
if (!givenURL.startsWith("file:")) {
int exist = exists(givenURL);
for (int pow = 3; pow >= 0; pow--) {
int getError = (int) Math.pow(2, pow);
if (exist >= getError) {
errorText += errorMap.get(getError);
if (getError == SITE_VALID) {
validURLS(count);
} else if (getError == SITE_INVALID) {
errorText += count + " is not a valid URL.\n";
} else if (getError == SITE_BAD_EXTENSION) {
errorText += count + " is not valid.\n";
} else if (getError == SITE_EXCEPTION) {
exception = true;
}
exist -= getError;
}
}
/*
* if(exist == SITE_VALID){
* System.out.println("it exists");
* validURLS(count); }
*
* else if(exist == SITE_INVALID){ errorText+=
* "The given URL caught for URL #" + count+
* " is not a valid URL."; } else
* if(exist==SITE_EXCEPTION) { errorText+=
* "There may be no internet connectivity at the moment."
* ; }
*/
}
} else {
errorText += "The given URL for URL #" + count + " must start with either \"http://\", \"https://\", or \"file://\".\n";
}
count++;
}
if (exception) {
errorText += "There may be no internet connectivity at the moment.\n";
}
if (!errorText.equals("")) {
boolean tryAgain = messageBox(errorText, SWT.ICON_ERROR);
if (tryAgain) {
if (!isValidURL) {
urlText.forceFocus();
} else if (!isValidURL2) {
urlText2.forceFocus();
} else {
urlText3.forceFocus();
}
}
} else {
saveSettings();
userResponse = OK;
dialog.close();
}
}
});
cancelButton = new Button(comp, SWT.PUSH);
cancelButton.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent evt) {
userResponse = CANCEL;
dialog.close();
}
});
if (buttonFont != null) {
okButton.setFont(buttonFont);
cancelButton.setFont(buttonFont);
}
okButton.setText(L10N.get("B.OK", "OK"));
cancelButton.setText(L10N.get("B.CANCEL", "Cancel"));
dialog.setDefaultButton(okButton);
FormData formData = new FormData();
formData.left = new FormAttachment(0, 5);
formData.top = new FormAttachment(0, 5);
dialogTitle.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(dialogTitle, 20, SWT.BOTTOM);
formData.left = new FormAttachment(0, 100);
intoDesignLbl.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(intoDesignLbl, 0, SWT.CENTER);
formData.left = new FormAttachment(intoDesignLbl, 5, SWT.RIGHT);
designCombo.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(intoDesignLbl, 13, SWT.BOTTOM);
formData.left = new FormAttachment(0, 6);
formData.right = new FormAttachment(100, -6);
useSelectionGroup.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(0, 3);
formData.left = new FormAttachment(0, 3);
formData.right = new FormAttachment(100, -3);
typeHTMLGroup.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(typeHTMLGroup, 10, SWT.BOTTOM);
formData.left = new FormAttachment(typeHTMLGroup, 0, SWT.LEFT);
formData.right = new FormAttachment(typeHTMLGroup, 350, SWT.LEFT);
urlText.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(urlText, 1, SWT.TOP);
formData.left = new FormAttachment(urlText, 5, SWT.RIGHT);
plusButton.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(plusButton, 5, SWT.TOP);
formData.left = new FormAttachment(plusButton, 10, SWT.RIGHT);
minusButton.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(urlText, 5, SWT.BOTTOM);
formData.left = new FormAttachment(urlText, 10, SWT.LEFT);
maximumDepthToCrawlLabel.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(maximumDepthToCrawlLabel, 0, SWT.TOP);
formData.left = new FormAttachment(maximumDepthToCrawlLabel, 3, SWT.RIGHT);
questionMarkButtonDepth.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(maximumDepthToCrawlLabel, 0, SWT.TOP);
formData.left = new FormAttachment(questionMarkButtonDepth, 10, SWT.RIGHT);
maxDepthCombo.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(maximumDepthToCrawlLabel, 15, SWT.BOTTOM);
formData.left = new FormAttachment(urlText, 10, SWT.LEFT);
restrictDomainLabel.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(restrictDomainLabel, 0, SWT.TOP);
formData.left = new FormAttachment(restrictDomainLabel, 3, SWT.RIGHT);
questionMarkButtonDomain.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(restrictDomainLabel, 10, SWT.BOTTOM);
formData.left = new FormAttachment(0, 25);
useHTML1.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(useHTML1, 0, SWT.TOP);
formData.left = new FormAttachment(useHTML1, 0, SWT.RIGHT);
urlPath1.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(useHTML1, 8, SWT.BOTTOM);
formData.left = new FormAttachment(useHTML1, 0, SWT.LEFT);
useHTML2.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(useHTML2, 0, SWT.TOP);
formData.left = new FormAttachment(useHTML2, 0, SWT.RIGHT);
urlPath2.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(useHTML2, 8, SWT.BOTTOM);
formData.left = new FormAttachment(useHTML2, 0, SWT.LEFT);
useHTML3.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(useHTML3, 0, SWT.TOP);
formData.left = new FormAttachment(useHTML3, 0, SWT.RIGHT);
urlPath3.setLayoutData(formData);
formData = new FormData();
formData.left = new FormAttachment(urlPath3, 0, SWT.RIGHT);
formData.top = new FormAttachment(urlPath3, 0, SWT.TOP);
urlPath3b.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(useSelectionGroup, 7, SWT.BOTTOM);
formData.left = new FormAttachment(maxPagesLabel, 0, SWT.LEFT);
capturePageImagesOption.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(capturePageImagesOption, 0, SWT.TOP);
formData.left = new FormAttachment(capturePageImagesOption, 3, SWT.RIGHT);
questionMarkButtonCaptureImage.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(capturePageImagesOption, 15, SWT.BOTTOM);
formData.right = new FormAttachment(intoDesignLbl, 0, SWT.RIGHT);
maxPagesLabel.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(maxPagesLabel, 0, SWT.CENTER);
formData.left = new FormAttachment(maxPagesLabel, 5, SWT.RIGHT);
formData.right = new FormAttachment(maxPagesLabel, 140, SWT.RIGHT);
maxPagesToImport.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(maxPagesToImport, 0, SWT.TOP);
formData.left = new FormAttachment(maxPagesToImport, 3, SWT.RIGHT);
questionMarkButtonMaxPages.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(maxPagesLabel, 11, SWT.BOTTOM);
formData.right = new FormAttachment(maxPagesLabel, 0, SWT.RIGHT);
browserWidthLbl.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(browserWidthLbl, 0, SWT.CENTER);
formData.left = new FormAttachment(browserWidthLbl, 5, SWT.RIGHT);
formData.right = new FormAttachment(browserWidthLbl, 140, SWT.RIGHT);
browserWidthEntry.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(browserWidthLbl, 11, SWT.BOTTOM);
formData.right = new FormAttachment(browserWidthLbl, 0, SWT.RIGHT);
browserHeightLbl.setLayoutData(formData);
formData = new FormData();
formData.top = new FormAttachment(browserHeightLbl, 0, SWT.CENTER);
formData.left = new FormAttachment(browserHeightLbl, 5, SWT.RIGHT);
formData.right = new FormAttachment(browserHeightLbl, 140, SWT.RIGHT);
browserHeightEntry.setLayoutData(formData);
Composite spacer = new Composite(comp, SWT.NONE);
formData = new FormData();
formData.top = new FormAttachment(browserHeightEntry, 13, SWT.BOTTOM);
formData.bottom = new FormAttachment(okButton, 0, SWT.TOP);
spacer.setLayoutData(formData);
formData = new FormData();
formData.right = new FormAttachment(100, -13);
formData.bottom = new FormAttachment(100, -13);
formData.left = new FormAttachment(100, -95);
formData.top = new FormAttachment(browserHeightEntry, 10, SWT.BOTTOM);
Button other;
if (OSUtils.MACOSX) {
okButton.setLayoutData(formData);
other = okButton;
} else {
cancelButton.setLayoutData(formData);
other = cancelButton;
}
formData = new FormData();
formData.right = new FormAttachment(other, -13, SWT.LEFT);
formData.bottom = new FormAttachment(100, -13);
formData.left = new FormAttachment(other, -95, SWT.LEFT);
formData.top = new FormAttachment(browserHeightEntry, 10, SWT.BOTTOM);
if (OSUtils.MACOSX) {
cancelButton.setLayoutData(formData);
} else {
okButton.setLayoutData(formData);
}
sc1.setContent(comp);
sc1.layout();
// dialog.pack();
repaint();
}
use of org.eclipse.swt.events.MouseEvent in project translationstudio8 by heartsome.
the class InnerTag method init.
// 初始化组件。
private void init() {
addPaintListener(new PaintListener() {
public void paintControl(PaintEvent e) {
tagRender.draw(e.gc, innerTagBean, 0, 0);
}
});
addMouseListener(new MouseAdapter() {
@Override
public void mouseDown(MouseEvent e) {
Control parent = getParent();
if (parent instanceof StyledText) {
StyledText text = (StyledText) parent;
Point size = getSize();
Point p = getLocation();
int offset = text.getOffsetAtLocation(p);
int mouseX = e.x;
if (mouseX > size.x / 2) {
text.setCaretOffset(offset + 1);
} else {
text.setCaretOffset(offset);
}
}
}
});
}
use of org.eclipse.swt.events.MouseEvent in project translationstudio8 by heartsome.
the class AboutComposite method init.
/**
* 初始化界面
* ;
*/
private void init() {
Color white = Display.getDefault().getSystemColor(SWT.COLOR_WHITE);
parent.setBackground(white);
GridData data = new GridData(GridData.GRAB_HORIZONTAL | GridData.FILL_HORIZONTAL);
Label lblName = new Label(parent, SWT.CENTER);
lblName.setText(name);
lblName.setLayoutData(data);
lblName.setBackground(white);
Image image = new Image(Display.getDefault(), imagePath);
Label lblImage = new Label(parent, SWT.CENTER);
lblImage.setImage(image);
lblImage.setLayoutData(new GridData(GridData.FILL_BOTH));
lblImage.setBackground(white);
Label lblVersion = new Label(parent, SWT.CENTER);
lblVersion.setText(version);
lblVersion.setLayoutData(data);
lblVersion.setBackground(white);
new Label(parent, SWT.None).setForeground(white);
Label lblCopyRight = new Label(parent, SWT.CENTER);
lblCopyRight.setText(PluginConstants.PLUGIN_COPY_RIGHT);
lblCopyRight.setLayoutData(data);
lblCopyRight.setBackground(white);
Label lblWebSite = new Label(parent, SWT.CENTER);
lblWebSite.setText(PluginConstants.PLUGIN_WEB_SITE);
lblWebSite.setLayoutData(data);
lblWebSite.setBackground(white);
lblWebSite.setForeground(Display.getDefault().getSystemColor(SWT.COLOR_BLUE));
lblWebSite.setCursor(cursorHand);
lblWebSite.addMouseListener(new MouseListener() {
public void mouseUp(MouseEvent e) {
}
public void mouseDown(MouseEvent e) {
Program.launch(PluginConstants.PLUGIN_WEB_SITE);
}
public void mouseDoubleClick(MouseEvent e) {
}
});
}
use of org.eclipse.swt.events.MouseEvent in project translationstudio8 by heartsome.
the class CheckBoxCellEditor method activateCell.
/**
* As soon as the editor is activated, flip the current data value and commit it.<br/>
* The repaint will pick up the new value and flip the image.
*/
@Override
protected Control activateCell(Composite parent, Object originalCanonicalValue, Character initialEditValue) {
setCanonicalValue(originalCanonicalValue);
checked = !checked;
canvas = new Canvas(parent, SWT.NONE);
canvas.addPaintListener(new PaintListener() {
public void paintControl(PaintEvent paintEvent) {
Rectangle bounds = canvas.getBounds();
Rectangle rect = new Rectangle(0, 0, bounds.width, bounds.height);
checkBoxCellPainter.paintIconImage(paintEvent.gc, rect, bounds.height / 2 - checkBoxCellPainter.getPreferredHeight(checked) / 2, checked);
}
});
canvas.addMouseListener(new MouseAdapter() {
@Override
public void mouseUp(MouseEvent e) {
checked = !checked;
canvas.redraw();
}
});
commit(MoveDirectionEnum.NONE, false);
return canvas;
}
Aggregations