本文整理汇总了Java中org.eclipse.swt.events.MenuDetectEvent类的典型用法代码示例。如果您正苦于以下问题:Java MenuDetectEvent类的具体用法?Java MenuDetectEvent怎么用?Java MenuDetectEvent使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
MenuDetectEvent类属于org.eclipse.swt.events包,在下文中一共展示了MenuDetectEvent类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: createContextMenu
import org.eclipse.swt.events.MenuDetectEvent; //导入依赖的package包/类
protected void createContextMenu(final List list) {
contextMenu = new Menu(list);
copyMenuItem = createCopyMenuItem(list);
new MenuItem(contextMenu, SWT.SEPARATOR);
selectAllMenuItem = createSelectAllMenuItem(list);
new MenuItem(contextMenu, SWT.SEPARATOR);
clearMenuItem = createClearMenuItem();
list.addMenuDetectListener(new MenuDetectListener() {
@Override
public void menuDetected(final MenuDetectEvent mde) {
final boolean notEmpty = !isEmpty();
selectAllMenuItem.setEnabled(notEmpty);
clearMenuItem.setEnabled(notEmpty);
copyMenuItem.setEnabled(list.getSelectionCount() > 0);
contextMenu.setVisible(true);
}
});
list.setMenu(contextMenu);
}
示例2: createContextMenu
import org.eclipse.swt.events.MenuDetectEvent; //导入依赖的package包/类
protected void createContextMenu(final StyledText styledText) {
contextMenu = new Menu(styledText);
copyMenuItem = createCopyMenuItem(styledText);
new MenuItem(contextMenu, SWT.SEPARATOR);
selectAllMenuItem = createSelectAllMenuItem(styledText);
new MenuItem(contextMenu, SWT.SEPARATOR);
clearMenuItem = createClearMenuItem();
styledText.addMenuDetectListener(new MenuDetectListener() {
@Override
public void menuDetected(final MenuDetectEvent mde) {
final boolean notEmpty = !isEmpty();
selectAllMenuItem.setEnabled(notEmpty);
clearMenuItem.setEnabled(notEmpty);
copyMenuItem.setEnabled(styledText.getSelectionCount() > 0);
}
});
styledText.setMenu(contextMenu);
}
示例3: MergeTreeViewer
import org.eclipse.swt.events.MenuDetectEvent; //导入依赖的package包/类
public MergeTreeViewer(TreeTableComposite treeComposite, final TreeTableColumnConfiguration configuration, IWorkbenchPartSite site) {
super(treeComposite, configuration, site);
addFilter(new VisabilityFilter());
treeComposite.getTree().addTreeListener(new PlanElementTreeListener()); // will be disposed with the Tree
final Tree tree = getTree();
tree.addMenuDetectListener(new MenuDetectListener() {
@Override
public void menuDetected(MenuDetectEvent e) {
Point point = tree.toControl(e.x, e.y);
Rectangle clientArea = tree.getClientArea();
if (clientArea.y <= point.y && point.y < (clientArea.y + tree.getHeaderHeight())) {
e.doit = false;
int columnIndex = getColumnIndex(point.x);
fillHeaderContextMenu(e.display, columnIndex, point, configuration.getColumns());
}
}
});
}
示例4: makePopupMenu
import org.eclipse.swt.events.MenuDetectEvent; //导入依赖的package包/类
public void makePopupMenu(final TreeViewer viewer) {
final Tree tree = viewer.getTree();
tree.addMenuDetectListener(new MenuDetectListener() {
@Override
public void menuDetected(MenuDetectEvent event) {
Point clickedAt = tree.toControl(event.x, event.y);
Point displayAt = viewer.getControl().toDisplay(clickedAt);
final TreeItem treeItem = tree.getItem(clickedAt);
if (treeItem != null) {
Object objectInTree = treeItem.getData();
List<ContextualCommandContributor> menuContributors = getMenuContributors(objectInTree);
if (!menuContributors.isEmpty()) {
Shell shell = viewer.getControl().getShell();
popupMenu(objectInTree, menuContributors, shell, displayAt);
event.doit = false;
}
}
}
});
}
示例5: initQuickFixMenu
import org.eclipse.swt.events.MenuDetectEvent; //导入依赖的package包/类
/**
* Initialize quick fix menu for content assist.
*/
protected void initQuickFixMenu( )
{
if ( hasQuickFix( ) )
{
controlDecoration.addMenuDetectListener( new MenuDetectListener( ) {
public void menuDetected( MenuDetectEvent event )
{
// no quick fix if we aren't in error state.
if ( isValid( ) )
{
return;
}
if ( quickFixMenu == null )
{
quickFixMenu = FieldAssistHelper.getInstance( )
.createQuickFixMenu( AssistField.this );
}
quickFixMenu.setLocation( event.x, event.y );
quickFixMenu.setVisible( true );
}
} );
}
}
示例6: NumericWidget
import org.eclipse.swt.events.MenuDetectEvent; //导入依赖的package包/类
/**
* @param parent
* Composite
* @param style
* Integer
* @param labelText
* String
* @param regex
* String
*/
public NumericWidget(Composite parent, int style, final String labelText, RegexValidation regex) {
super(parent, style, labelText, regex);
// Create quickFix menu listener
this.controlDecoration.addMenuDetectListener(new MenuDetectListener() {
public void menuDetected(MenuDetectEvent event) {
// no quick fix if we aren't in error state.
if (NumericWidget.this.smartField.isValid()) {
return;
}
if (NumericWidget.this.smartField.quickFixMenu == null) {
NumericWidget.this.smartField.quickFixMenu = NumericWidget.this
.createQuickFixMenu((SmartNumericField) NumericWidget.this.smartField);
}
NumericWidget.this.smartField.quickFixMenu.setLocation(event.x, event.y);
NumericWidget.this.smartField.quickFixMenu.setVisible(true);
}
});
}
示例7: sendMenuEventToFX
import org.eclipse.swt.events.MenuDetectEvent; //导入依赖的package包/类
private void sendMenuEventToFX(MenuDetectEvent me) {
if (scenePeer == null /*|| !isFxEnabled()*/) {
return;
}
Point pt = toControl(me.x, me.y);
scenePeer.menuEvent(pt.x, pt.y, me.x, me.y, false);
}
示例8: menuDetected
import org.eclipse.swt.events.MenuDetectEvent; //导入依赖的package包/类
@Override
public void menuDetected(final MenuDetectEvent mde) {
final Earthquake selection = (Earthquake) resultsTable.getTableViewer().getStructuredSelection().getFirstElement();
resultsTable.getContextMenu().getShowMapMenuItem().setEnabled(selection != null && selection.getEnclosure() != null);
resultsTable.getContextMenu().getCopyLinkMenuItem().setEnabled(selection != null && selection.getLink() != null);
resultsTable.getContextMenu().getOpenBrowserMenuItem().setEnabled(selection != null && selection.getLink() != null);
resultsTable.getContextMenu().getGoogleMapsBrowserMenuItem().setEnabled(selection != null);
resultsTable.getContextMenu().getGoogleMapsPopupMenuItem().setEnabled(selection != null);
resultsTable.getContextMenu().getExportCsvMenuItem().setEnabled(resultsTable.getTableViewer().getTable() != null && resultsTable.getTableViewer().getTable().getItemCount() > 0);
resultsTable.getContextMenu().getMenu().setVisible(true);
}
示例9: menuDetected
import org.eclipse.swt.events.MenuDetectEvent; //导入依赖的package包/类
@Override
public void menuDetected(final MenuDetectEvent mde) {
final DataTable dataTable = gui.getDataTable();
dataTable.getCopyMenuItem().setEnabled(dataTable.canCopy());
dataTable.getDeleteMenuItem().setEnabled(dataTable.canDelete());
dataTable.getSelectAllMenuItem().setEnabled(dataTable.canSelectAll());
dataTable.getClearMenuItem().setEnabled(dataTable.canClear());
dataTable.getContextMenu().setVisible(true);
}
示例10: fireMenuDetect
import org.eclipse.swt.events.MenuDetectEvent; //导入依赖的package包/类
/**
* A context menu has been requested for the selected breadcrumb item.
*
* @param event the event issued the menu detection
*/
void fireMenuDetect(MenuDetectEvent event) {
Object[] listeners = fMenuListeners.getListeners();
for (int i = 0; i < listeners.length; i++) {
((MenuDetectListener) listeners[i]).menuDetected(event);
}
}
示例11: menuDetected
import org.eclipse.swt.events.MenuDetectEvent; //导入依赖的package包/类
@Override
public void menuDetected(final MenuDetectEvent e) {
//if a drag source is installed, selection event fires after menu detect but selection
//should always change before menu detection
//Not sure if this is necessary for nattable but it does not harm anyway
setSelectionChangedIfNeccessary();
//stop editing before popup opens
stopEditing();
Point point = new Point(e.x, e.y);
point = table.toControl(point);
final Position position = new Position(point.x, point.y);
final int rowPositionByY = table.getRowPositionByY(point.y);
final int columnPositionByX = table.getColumnPositionByX(point.x);
final int rowIndex = table.getRowIndexByPosition(rowPositionByY);
final int columnIndex = table.getColumnIndexByPosition(columnPositionByX);
if (rowPositionByY == 0 && columnIndex != -1) {
tableColumnPopupDetectionObservable.firePopupDetected(new TableColumnPopupEvent(columnIndex, position));
}
else if (rowIndex != -1 && columnIndex != -1) {
tableCellPopupDetectionObservable.firePopupDetected(new TableCellPopupEvent(rowIndex, columnIndex, position));
}
else {
getPopupDetectionObservable().firePopupDetected(position);
}
}
示例12: fireMenuDetect
import org.eclipse.swt.events.MenuDetectEvent; //导入依赖的package包/类
/**
* A context menu has been requested for the selected breadcrumb item.
*
* @param event the event issued the menu detection
*/
void fireMenuDetect(MenuDetectEvent event) {
Object[] listeners= fMenuListeners.getListeners();
for (int i= 0; i < listeners.length; i++) {
((MenuDetectListener)listeners[i]).menuDetected(event);
}
}
示例13: notifyMenuDetectListeners
import org.eclipse.swt.events.MenuDetectEvent; //导入依赖的package包/类
private void notifyMenuDetectListeners(Event event) {
if (getDecorationRectangle(null).contains(event.x, event.y)) {
MenuDetectEvent clientEvent = new MenuDetectEvent(event);
clientEvent.data = this;
Object[] listeners = menuDetectListeners.getListeners();
for (int i = 0; i < listeners.length; i++) {
((MenuDetectListener) listeners[i]).menuDetected(clientEvent);
}
}
}
示例14: sendMenuEventToFX
import org.eclipse.swt.events.MenuDetectEvent; //导入依赖的package包/类
private void sendMenuEventToFX(MenuDetectEvent me) {
if (this.scenePeer == null /*|| !isFxEnabled()*/) {
return;
}
Point pt = this.toControl(me.x, me.y);
this.scenePeer.menuEvent(pt.x, pt.y, me.x, me.y, false);
}
示例15: fireMenuDetect
import org.eclipse.swt.events.MenuDetectEvent; //导入依赖的package包/类
/**
* A context menu has been requested for the selected breadcrumb item.
*
* @param event
* the event issued the menu detection
*/
void fireMenuDetect( MenuDetectEvent event )
{
Object[] listeners = fMenuListeners.getListeners( );
for ( int i = 0; i < listeners.length; i++ )
{
( (MenuDetectListener) listeners[i] ).menuDetected( event );
}
}