use of org.eclipse.swt.events.MouseTrackAdapter in project eclipse.platform.text by eclipse.
the class ProjectionRulerColumn method createControl.
@Override
public Control createControl(CompositeRuler parentRuler, Composite parentControl) {
Control control = super.createControl(parentRuler, parentControl);
// set background
Color background = getCachedTextViewer().getTextWidget().getBackground();
control.setBackground(background);
// install hover listener
control.addMouseTrackListener(new MouseTrackAdapter() {
@Override
public void mouseExit(MouseEvent e) {
if (clearCurrentAnnotation())
redraw();
}
});
// install mouse move listener
control.addMouseMoveListener(new MouseMoveListener() {
@Override
public void mouseMove(MouseEvent e) {
boolean redraw = false;
ProjectionAnnotation annotation = findAnnotation(toDocumentLineNumber(e.y), false);
if (annotation != fCurrentAnnotation) {
if (fCurrentAnnotation != null) {
fCurrentAnnotation.setRangeIndication(false);
redraw = true;
}
fCurrentAnnotation = annotation;
if (fCurrentAnnotation != null && !fCurrentAnnotation.isCollapsed()) {
fCurrentAnnotation.setRangeIndication(true);
redraw = true;
}
}
if (redraw)
redraw();
}
});
return control;
}
use of org.eclipse.swt.events.MouseTrackAdapter in project tmdm-studio-se by Talend.
the class ViewMainPage method addListener.
private void addListener() {
combox_policy.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
boolean toSelectXPath = combox_policy.getText().equals(selectXPath);
if (toSelectXPath) {
String modelName = getDatamodelName();
String entityName = concept;
XpathSelectDialog dlg = getXPathSelectionDialog(Messages.ViewMainPage_titleSelectField, modelName, new SortFieldSelectionFilter());
dlg.setConceptName(entityName);
String xpath = null;
if (dlg.open() == IDialogConstants.OK_ID) {
xpath = dlg.getXpath();
}
if (xpath != null) {
combox_policy.setItems(new String[] { SORT_FIELD[0], SORT_FIELD[1], xpath, selectXPath });
combox_policy.setText(xpath);
combox_sortdirection.setVisible(true);
combox_sortdirection.select(0);
markDirtyWithoutCommit();
} else {
lastSortField = lastSortField == null ? SORT_FIELD[0] : lastSortField;
combox_policy.setText(lastSortField);
}
} else if (combox_policy.getSelectionIndex() != 0 && combox_policy.getSelectionIndex() != 1) {
combox_sortdirection.setVisible(true);
combox_sortdirection.select(0);
lastSortField = combox_policy.getText();
markDirtyWithoutCommit();
} else {
lastSortField = combox_policy.getText();
combox_sortdirection.setVisible(false);
markDirtyWithoutCommit();
}
}
});
combox_policy.addMouseTrackListener(new MouseTrackAdapter() {
@Override
public void mouseHover(MouseEvent e) {
combox_policy.setToolTipText(combox_policy.getText());
}
});
combox_sortdirection.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
markDirtyWithoutCommit();
}
});
}
use of org.eclipse.swt.events.MouseTrackAdapter in project webtools.sourceediting by eclipse.
the class AbstractExtensionsSection method createContents.
public void createContents(Composite parent) {
// TODO (cs) add assertion
if (extensionTreeContentProvider == null)
return;
IEditorPart editor = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getActiveEditor();
documentChangeNotifier = (IDocumentChangedNotifier) editor.getAdapter(IDocumentChangedNotifier.class);
if (documentChangeNotifier != null) {
documentChangeNotifier.addListener(internalNodeAdapter);
}
composite = getWidgetFactory().createFlatFormComposite(parent);
GridLayout gridLayout = new GridLayout();
gridLayout.marginTop = 0;
gridLayout.marginBottom = 0;
gridLayout.numColumns = 1;
composite.setLayout(gridLayout);
GridData gridData = new GridData();
page = getWidgetFactory().createComposite(composite);
gridLayout = new GridLayout();
gridLayout.marginTop = 0;
gridLayout.marginBottom = 0;
gridLayout.numColumns = 1;
page.setLayout(gridLayout);
gridData = new GridData();
gridData.grabExcessHorizontalSpace = true;
gridData.grabExcessVerticalSpace = true;
gridData.verticalAlignment = GridData.FILL;
gridData.horizontalAlignment = GridData.FILL;
page.setLayoutData(gridData);
SashForm sashForm = new SashForm(page, SWT.HORIZONTAL);
// Try to limit the initial width of the section
int w = SWT.DEFAULT;
try {
IWorkbenchPart part = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getActivePart();
// Find the width of the Tabbed Property Sheet's composite excluding the tab
if (part instanceof PropertySheet) {
PropertySheet sheet = (PropertySheet) part;
if (sheet.getCurrentPage() instanceof TabbedPropertySheetPage) {
TabbedPropertySheetPage tabbedPage = (TabbedPropertySheetPage) sheet.getCurrentPage();
Composite targetComposite = null;
if (tabbedPage.getControl() instanceof Composite) {
Composite c = (Composite) tabbedPage.getControl();
int length = c.getChildren().length;
for (int i = 0; i < length; i++) {
Control ctrl = c.getChildren()[i];
int length2 = (((Composite) ctrl).getChildren()).length;
for (int j = 0; j < length2; j++) {
if ((((Composite) ctrl).getChildren())[j] instanceof ScrolledComposite) {
targetComposite = (Composite) (((Composite) ctrl).getChildren())[j];
break;
}
}
}
}
if (targetComposite != null) {
// ensure scrollbars don't show
w = targetComposite.getSize().x - 20;
}
// The above can be accomplished by the following code
// but because TabbedPropertyComposite is in an internal package, I will get a discouraged
// access warning.
// w = ((TabbedPropertyComposite)(tabbedPage.getControl())).getTabComposite().getSize().x;
}
}
} catch (Exception e) {
w = SWT.DEFAULT;
}
gridData = new GridData();
gridData.grabExcessHorizontalSpace = true;
gridData.grabExcessVerticalSpace = true;
gridData.verticalAlignment = GridData.FILL;
gridData.horizontalAlignment = GridData.FILL;
// The initial size should be set, not the widthHint, which forces the width
// to remain constant.
sashForm.setSize(w, SWT.DEFAULT);
sashForm.setLayoutData(gridData);
sashForm.setForeground(ColorConstants.white);
sashForm.setBackground(ColorConstants.white);
Control[] children = sashForm.getChildren();
for (int i = 0; i < children.length; i++) {
children[i].setVisible(false);
}
Composite leftContent = getWidgetFactory().createComposite(sashForm, SWT.FLAT);
gridLayout = new GridLayout();
gridLayout.numColumns = 1;
leftContent.setLayout(gridLayout);
Section section = getWidgetFactory().createSection(leftContent, SWT.FLAT | ExpandableComposite.TITLE_BAR);
section.setText(Messages._UI_LABEL_EXTENSIONS);
section.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
Composite tableAndButtonComposite = getWidgetFactory().createComposite(leftContent, SWT.FLAT);
tableAndButtonComposite.setLayoutData(new GridData(GridData.FILL_BOTH));
gridLayout = new GridLayout();
gridLayout.numColumns = 2;
tableAndButtonComposite.setLayout(gridLayout);
extensionTreeViewer = new TreeViewer(tableAndButtonComposite, SWT.FLAT | SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL | SWT.LINE_SOLID);
MenuManager menuManager = new MenuManager();
extensionTreeViewer.getTree().setMenu(menuManager.createContextMenu(extensionTreeViewer.getTree()));
menuManager.addMenuListener(new DOMExtensionItemMenuListener(extensionTreeViewer));
gridLayout = new GridLayout();
gridLayout.numColumns = 1;
extensionTreeViewer.getTree().setLayout(gridLayout);
gridData = new GridData();
gridData.grabExcessHorizontalSpace = true;
gridData.grabExcessVerticalSpace = true;
gridData.verticalAlignment = GridData.FILL;
gridData.horizontalAlignment = GridData.FILL;
extensionTreeViewer.getTree().setLayoutData(gridData);
extensionTreeViewer.setContentProvider(extensionTreeContentProvider);
extensionTreeViewer.setLabelProvider(extensionTreeLabelProvider);
elementSelectionChangedListener = new ElementSelectionChangedListener();
extensionTreeViewer.addSelectionChangedListener(elementSelectionChangedListener);
extensionTreeViewer.getTree().addMouseTrackListener(new MouseTrackAdapter() {
public void mouseHover(org.eclipse.swt.events.MouseEvent e) {
ISelection selection = extensionTreeViewer.getSelection();
if (selection instanceof StructuredSelection) {
Object obj = ((StructuredSelection) selection).getFirstElement();
if (obj instanceof Element) {
Element element = (Element) obj;
ExtensionsSchemasRegistry registry = getExtensionsSchemasRegistry();
// ApplicationSpecificSchemaProperties[] properties =
// registry.getAllApplicationSpecificSchemaProperties();
// ApplicationSpecificSchemaProperties[] properties =
// (ApplicationSpecificSchemaProperties[])
// registry.getAllApplicationSpecificSchemaProperties().toArray(new
// ApplicationSpecificSchemaProperties[0]);
List properties = registry.getAllExtensionsSchemasContribution();
int length = properties.size();
for (int i = 0; i < length; i++) {
SpecificationForExtensionsSchema current = (SpecificationForExtensionsSchema) properties.get(i);
if (current.getNamespaceURI().equals(element.getNamespaceURI())) {
extensionTreeViewer.getTree().setToolTipText(current.getDescription());
break;
}
}
}
}
}
});
PlatformUI.getWorkbench().getHelpSystem().setHelp(extensionTreeViewer.getControl(), XSDEditorCSHelpIds.EXTENSIONS_TAB__EXTENSIONS);
Composite buttonComposite = getWidgetFactory().createComposite(tableAndButtonComposite, SWT.FLAT);
// ColumnLayout columnLayout = new ColumnLayout();
// buttonComposite.setLayout(columnLayout);
buttonComposite.setLayoutData(new GridData(GridData.VERTICAL_ALIGN_BEGINNING));
gridLayout = new GridLayout();
gridLayout.marginTop = 0;
gridLayout.marginBottom = 0;
gridLayout.numColumns = 1;
gridLayout.makeColumnsEqualWidth = true;
buttonComposite.setLayout(gridLayout);
addButton = getWidgetFactory().createButton(buttonComposite, Messages._UI_ACTION_ADD_WITH_DOTS, SWT.FLAT);
addButton.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
addButton.addSelectionListener(this);
addButton.setToolTipText(Messages._UI_ACTION_ADD_EXTENSION_COMPONENT);
// addButton.setLayoutData(new ColumnLayoutData(ColumnLayoutData.FILL));
addButton.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
PlatformUI.getWorkbench().getHelpSystem().setHelp(addButton, XSDEditorCSHelpIds.EXTENSIONS_TAB__ADD);
removeButton = getWidgetFactory().createButton(buttonComposite, Messages._UI_DELETE_BUTTON, SWT.FLAT);
removeButton.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
removeButton.addSelectionListener(this);
removeButton.setToolTipText(Messages._UI_ACTION_DELETE_EXTENSION_COMPONENT);
PlatformUI.getWorkbench().getHelpSystem().setHelp(removeButton, XSDEditorCSHelpIds.EXTENSIONS_TAB__DELETE);
// removeButton.setLayoutData(new ColumnLayoutData(ColumnLayoutData.FILL));
// TODO (cs) uncomment the up/down button when we have time to implement
//
// Button up = getWidgetFactory().createButton(buttonComposite, Messages._UI_LABEL_UP, SWT.FLAT);
// up.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
// Button down = getWidgetFactory().createButton(buttonComposite, Messages._UI_LABEL_DOWN, SWT.FLAT);
// down.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
Composite rightContent = getWidgetFactory().createComposite(sashForm, SWT.FLAT);
Section section2 = getWidgetFactory().createSection(rightContent, SWT.FLAT | ExpandableComposite.TITLE_BAR);
section2.setText(Messages._UI_LABEL_EXTENSION_DETAILS);
section2.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
// contentLabel = getWidgetFactory().createLabel(rightContent, "Content");
Composite testComp = getWidgetFactory().createComposite(rightContent, SWT.FLAT);
gridLayout = new GridLayout();
gridLayout.marginTop = 0;
gridLayout.marginBottom = 0;
gridLayout.marginLeft = 0;
gridLayout.marginRight = 0;
gridLayout.numColumns = 1;
gridLayout.marginHeight = 3;
gridLayout.marginWidth = 3;
rightContent.setLayout(gridLayout);
gridData = new GridData();
gridData.grabExcessHorizontalSpace = true;
gridData.grabExcessVerticalSpace = true;
gridData.verticalAlignment = GridData.FILL;
gridData.horizontalAlignment = GridData.FILL;
rightContent.setLayoutData(gridData);
gridLayout = new GridLayout();
gridLayout.marginTop = 0;
gridLayout.marginLeft = 0;
gridLayout.marginRight = 0;
gridLayout.marginBottom = 0;
gridLayout.marginHeight = 3;
gridLayout.marginWidth = 3;
gridLayout.numColumns = 2;
testComp.setLayout(gridLayout);
gridData = new GridData();
gridData.grabExcessHorizontalSpace = true;
gridData.grabExcessVerticalSpace = true;
gridData.verticalAlignment = GridData.FILL;
gridData.horizontalAlignment = GridData.FILL;
testComp.setLayoutData(gridData);
createElementContentWidget(testComp);
int[] weights = { 40, 60 };
sashForm.setWeights(weights);
}
use of org.eclipse.swt.events.MouseTrackAdapter in project azure-tools-for-java by Microsoft.
the class AbstractNotificationPopup method createTitleArea.
protected void createTitleArea(Composite parent) {
((GridData) parent.getLayoutData()).heightHint = 24;
Label titleImageLabel = new Label(parent, 0);
titleImageLabel.setImage(this.getPopupShellImage());
Label titleTextLabel = new Label(parent, 0);
titleTextLabel.setText(this.getPopupShellTitle());
titleTextLabel.setFont(CommonFonts.BOLD);
titleTextLabel.setForeground(this.getTitleForeground());
titleTextLabel.setLayoutData(new GridData(SWT.FILL, 16777216, true, true));
titleTextLabel.setCursor(parent.getDisplay().getSystemCursor(21));
final Label button = new Label(parent, 0);
button.setImage(CommonImages.getImage(CommonImages.NOTIFICATION_CLOSE));
button.addMouseTrackListener(new MouseTrackAdapter() {
public void mouseEnter(MouseEvent e) {
button.setImage(CommonImages.getImage(CommonImages.NOTIFICATION_CLOSE_HOVER));
}
public void mouseExit(MouseEvent e) {
button.setImage(CommonImages.getImage(CommonImages.NOTIFICATION_CLOSE));
}
});
button.addMouseListener(new MouseAdapter() {
public void mouseUp(MouseEvent e) {
AbstractNotificationPopup.this.close();
AbstractNotificationPopup.this.setReturnCode(1);
}
});
}
use of org.eclipse.swt.events.MouseTrackAdapter in project archi by archimatetool.
the class AbstractDiagramEditor method configurePaletteViewer.
/**
* Configure the Palette Viewer
*/
protected void configurePaletteViewer(final PaletteViewer viewer) {
PaletteViewerPreferences prefs = viewer.getPaletteViewerPreferences();
// Don't use large icons
prefs.setUseLargeIcons(PaletteViewerPreferences.LAYOUT_ICONS, false);
prefs.setUseLargeIcons(PaletteViewerPreferences.LAYOUT_COLUMNS, false);
prefs.setUseLargeIcons(PaletteViewerPreferences.LAYOUT_DETAILS, false);
prefs.setUseLargeIcons(PaletteViewerPreferences.LAYOUT_LIST, false);
// First time use so set to icons layout
if (!InternalGEFPlugin.getDefault().getPreferenceStore().getBoolean("com.archimatetool.paletteSet")) {
// $NON-NLS-1$
// $NON-NLS-1$
InternalGEFPlugin.getDefault().getPreferenceStore().setValue("com.archimatetool.paletteSet", true);
prefs.setLayoutSetting(PaletteViewerPreferences.LAYOUT_ICONS);
prefs.setCurrentUseLargeIcons(false);
}
// Register as drag source to drag onto the canvas
viewer.addDragSourceListener(new TemplateTransferDragSourceListener(viewer));
/*
* Tool Changed
*/
viewer.addPaletteListener(new PaletteListener() {
@Override
public void activeToolChanged(PaletteViewer palette, ToolEntry toolEntry) {
CreationFactory factory = (CreationFactory) toolEntry.getToolProperty(CreationTool.PROPERTY_CREATION_FACTORY);
if (factory != null) {
ComponentSelectionManager.INSTANCE.fireSelectionEvent(toolEntry, factory.getObjectType());
}
}
});
/*
* Mouse Hover
*/
viewer.getControl().addMouseTrackListener(new MouseTrackAdapter() {
@Override
public void mouseHover(MouseEvent e) {
ToolEntry toolEntry = findToolEntryAt(viewer, new Point(e.x, e.y));
if (toolEntry != null) {
CreationFactory factory = (CreationFactory) toolEntry.getToolProperty(CreationTool.PROPERTY_CREATION_FACTORY);
if (factory != null) {
ComponentSelectionManager.INSTANCE.fireSelectionEvent(toolEntry, factory.getObjectType());
}
}
}
});
viewer.getControl().addMouseListener(new MouseAdapter() {
/*
* If Shift key is pressed set Tool Entry to unload or not
*/
@Override
public void mouseDown(MouseEvent e) {
ToolEntry toolEntry = findToolEntryAt(viewer, new Point(e.x, e.y));
if (toolEntry != null) {
boolean shiftKey = (e.stateMask & SWT.SHIFT) != 0;
toolEntry.setToolProperty(AbstractTool.PROPERTY_UNLOAD_WHEN_FINISHED, !shiftKey);
}
}
/*
* Double-click on Format Painter
*/
@Override
public void mouseDoubleClick(MouseEvent e) {
ToolEntry toolEntry = findToolEntryAt(viewer, new Point(e.x, e.y));
if (toolEntry instanceof FormatPainterToolEntry) {
FormatPainterInfo.INSTANCE.reset();
}
}
});
}
Aggregations