org.eclipse.swt.widgets.Table#setMenu ( )源码实例Demo

下面列出了org.eclipse.swt.widgets.Table#setMenu ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: nebula   文件: ColumnBrowserWidget.java
/**
 * Create a column that displays data
 */
private void createTable() {
	final Table table = new Table(composite, SWT.SINGLE | SWT.H_SCROLL | SWT.FULL_SELECTION | SWT.BORDER);
	new TableColumn(table, SWT.LEFT);

	table.setLayoutData(new RowData(150, 175));
	columns.add(table);

	addTableListeners(table);

	if (super.getBackground() != null && super.getBackground().getRed() != 240 && super.getBackground().getGreen() != 240 && super.getBackground().getBlue() != 240) {
		table.setBackground(super.getBackground());
	}
	table.setBackgroundImage(super.getBackgroundImage());
	table.setBackgroundMode(super.getBackgroundMode());
	table.setCursor(super.getCursor());
	table.setFont(super.getFont());
	table.setForeground(super.getForeground());
	table.setMenu(super.getMenu());
	table.setToolTipText(super.getToolTipText());

}
 
源代码2 项目: tlaplus   文件: FilteredItemsSelectionDialog.java
private void createPopupMenu() {
	removeHistoryItemAction = new RemoveHistoryItemAction();
	removeHistoryActionContributionItem = new ActionContributionItem(
			removeHistoryItemAction);

	contextMenuManager = new MenuManager();
	contextMenuManager.setRemoveAllWhenShown(true);
	contextMenuManager.addMenuListener(new IMenuListener() {
		
		public void menuAboutToShow(IMenuManager manager) {
			fillContextMenu(manager);
		}
	});

	final Table table = list.getTable();
	Menu menu= contextMenuManager.createContextMenu(table);
	table.setMenu(menu);
}
 
源代码3 项目: logbook   文件: AbstractTableDialogEx.java
/**
 * テーブルを追加します
 *
 * @param parent テーブルの親コンポジット
 * @return TableWrapper
 */
protected TableWrapper<T> addTable(Composite parent) {
    // テーブル
    Table table = new Table(parent, SWT.FULL_SELECTION | SWT.MULTI);
    table.setLinesVisible(true);
    table.setHeaderVisible(true);
    table.addKeyListener(new TableKeyShortcutAdapter(table));

    // テーブル右クリックメニュー
    Menu tablemenu = new Menu(table);
    table.setMenu(tablemenu);
    MenuItem sendclipbord = new MenuItem(tablemenu, SWT.NONE);
    sendclipbord.addSelectionListener(new TableToClipboardAdapter(table));
    sendclipbord.setText("クリップボードにコピー(&C)");
    MenuItem reloadtable = new MenuItem(tablemenu, SWT.NONE);
    reloadtable.setText("再読み込み(&R)");
    reloadtable.addSelectionListener(new TableReloadAdapter());

    TableWrapper<T> wrapper = new TableWrapper<T>(table, this.clazz)
            .setDialogClass(this.getClass())
            .setDecorator(TableItemDecorator.stripe(SWTResourceManager.getColor(AppConstants.ROW_BACKGROUND)));
    this.tables.add(wrapper);
    return wrapper;
}
 
源代码4 项目: olca-app   文件: Actions.java
/**
 * Creates a context menu with the given actions on the table viewer.
 */
public static void bind(TableViewer viewer, Action... actions) {
	Table table = viewer.getTable();
	if (table == null)
		return;
	MenuManager menu = new MenuManager();
	for (Action action : actions)
		menu.add(action);
	table.setMenu(menu.createContextMenu(table));
}
 
源代码5 项目: depan   文件: FilterTableControl.java
public void createContextMenu(MenuManager mgr) {
  Table filterTable = filterViewer.getTable();
  Menu menu = mgr.createContextMenu(filterTable);
  filterTable.setMenu(menu);
}
 
源代码6 项目: APICloud-Studio   文件: ProjectNaturesPage.java
@Override
protected Control createContents(Composite parent)
{
	Composite composite = new Composite(parent, SWT.NONE);
	composite.setLayout(new GridLayout());
	composite.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());

	fProject = (IProject) getElement().getAdapter(IResource.class);
	try
	{
		if (fProject.isOpen())
		{
			// Can only access decription if project exists and is open...
			fCurrentProjectNatures = fProject.getDescription().getNatureIds();
		}
		else
		{
			fCurrentProjectNatures = new String[0];
		}
	}
	catch (CoreException e)
	{
		IdeLog.logError(UIEplPlugin.getDefault(), EplMessages.ProjectNaturesPage_ERR_RetrieveNatures, e);
		fCurrentProjectNatures = new String[0];
	}
	fLabelProvider = new NaturesLabelProvider(fNatureDescriptions);

	// assumes the first one in the array is the primary nature
	fInitialPrimaryNature = fCurrentProjectNatures.length == 0 ? null : fCurrentProjectNatures[0];
	updatePrimaryNature(fInitialPrimaryNature);

	setDescription(MessageFormat.format(EplMessages.ProjectNaturesPage_Description, fProject.getName()));
	Label description = createDescriptionLabel(composite);
	description.setLayoutData(GridDataFactory.fillDefaults().grab(true, false).create());

	Composite tableComposite = new Composite(composite, SWT.NONE);
	tableComposite.setLayout(GridLayoutFactory.fillDefaults().numColumns(2).create());
	tableComposite.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());

	fTableViewer = CheckboxTableViewer.newCheckList(tableComposite, SWT.TOP | SWT.BORDER);
	Table table = fTableViewer.getTable();
	table.setLinesVisible(true);
	table.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());

	TableColumn column = new TableColumn(table, SWT.LEFT);
	column.setWidth(350);

	fTableViewer.setContentProvider(getContentProvider());
	fTableViewer.setLabelProvider(getLabelProvider());
	fTableViewer.setComparator(getViewerComperator());
	fTableViewer.setInput(fProject.getWorkspace());
	if (!fProject.isAccessible())
	{
		fTableViewer.getControl().setEnabled(false);
	}
	fTableViewer.setCheckedElements(fCurrentProjectNatures);
	fTableViewer.addCheckStateListener(this);
	fTableViewer.addSelectionChangedListener(new ISelectionChangedListener()
	{
		public void selectionChanged(SelectionChangedEvent event)
		{
			updateButtons();
		}
	});
	fInitialCheckedItems = fTableViewer.getCheckedElements();
	table.setMenu(createMenu(table));

	// Add the buttons
	Composite buttons = new Composite(tableComposite, SWT.NONE);
	buttons.setLayout(GridLayoutFactory.fillDefaults().create());
	buttons.setLayoutData(GridDataFactory.fillDefaults().grab(false, true).create());
	fMakePrimaryButton = createButton(EplMessages.ProjectNaturesPage_LBL_MakePrimary, buttons);
	updateButtons();

	noDefaultAndApplyButton();

	return composite;
}
 
源代码7 项目: APICloud-Studio   文件: WizardFolderImportPage.java
/**
 * @see org.eclipse.jface.dialogs.IDialogPage#createControl(org.eclipse.swt.widgets.Composite)
 */
public void createControl(Composite parent)
{
	// Collect the existing project names to avoid conflicts.
	IProject[] projects = ResourcesPlugin.getWorkspace().getRoot().getProjects();
	projectsNames = new HashSet<String>();
	for (IProject project : projects)
	{
		projectsNames.add(project.getName());
	}
	modifyListener = new InputModifyListener();
	initializeDialogUnits(parent);

	Composite workArea = new Composite(parent, SWT.NONE);
	setControl(workArea);

	workArea.setLayout(new GridLayout());
	workArea.setLayoutData(new GridData(GridData.FILL_BOTH | GridData.GRAB_HORIZONTAL | GridData.GRAB_VERTICAL));

	createProjectsRoot(workArea);

	Dialog.applyDialogFont(workArea);
	fLabelProvider = new NaturesLabelProvider(fNatureDescriptions);

	Label l = new Label(workArea, SWT.NONE);
	l.setText(EplMessages.WizardFolderImportPage_project_type_title);

	natureContributors = PrimaryNaturesManager.getManager().getContributorsMap();

	Composite tableComposite = new Composite(workArea, SWT.NONE);
	tableComposite.setLayout(GridLayoutFactory.fillDefaults().numColumns(2).create());
	tableComposite.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());

	// Table for project natures
	fTableViewer = CheckboxTableViewer.newCheckList(tableComposite, SWT.TOP | SWT.BORDER);
	Table table = fTableViewer.getTable();
	table.setLinesVisible(true);
	table.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());

	TableColumn column = new TableColumn(table, SWT.LEFT);
	column.setWidth(350);

	fTableViewer.setContentProvider(getContentProvider());
	fTableViewer.setLabelProvider(getLabelProvider());
	fTableViewer.setComparator(getViewerComperator());
	fTableViewer.setInput(ResourcesPlugin.getWorkspace());
	fTableViewer.addCheckStateListener(this);
	fTableViewer.addSelectionChangedListener(new ISelectionChangedListener()
	{
		public void selectionChanged(SelectionChangedEvent event)
		{
			updateButtons();
		}
	});
	table.setMenu(createMenu(table));

	// Add the buttons
	Composite buttons = new Composite(tableComposite, SWT.NONE);
	buttons.setLayout(GridLayoutFactory.fillDefaults().create());
	buttons.setLayoutData(GridDataFactory.fillDefaults().grab(false, true).create());
	fMakePrimaryButton = createButton(EplMessages.WizardFolderImportPage_make_primary_label, buttons);
	updateButtons();

	setPageComplete(false);
	setPrimaryNatureFromContributions(null);
	fTableViewer.setCheckedElements(new String[] { fPrimaryNature });

	if (!StringUtil.isEmpty(directoryPath))
	{
		directoryPathField.setText(directoryPath);
		setProjectName();
		setPageComplete(true);
	}
}
 
源代码8 项目: dawnsci   文件: LegendTable.java
/**
 * @param parent
 * @param style
 */
public LegendTable(Composite parent, int style) {
	
	super(parent, style);
	this.setLayout(new GridLayout(1, false));
	editors = new LinkedList<TableEditor>();
	buttons = new LinkedList<Button>();
	tblLegend = new Table(this, SWT.DOUBLE_BUFFERED );
	tblLegend.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));
	tblLegend.setHeaderVisible(false);
	tblLegend.setLinesVisible(true);
	tblLegend.setEnabled(true);
	tblLegend.addKeyListener(this);
	{
		TableColumn tblclmnColour = new TableColumn(tblLegend, SWT.NONE);
		tblclmnColour.setWidth(82);
		tblclmnColour.setResizable(false);
		tblclmnColour.setText("Colour");
	}
	{
		TableColumn tblclmnDescription = new TableColumn(tblLegend, SWT.NONE);
		tblclmnDescription.setWidth(250);
		tblclmnDescription.setResizable(true);
		tblclmnDescription.setText("Description");
	}
	if (isRequireActiveButton()) {
		TableColumn tblclmnVisible = new TableColumn(tblLegend, SWT.NONE);
		tblclmnVisible.setWidth(80);
		tblclmnVisible.setResizable(false);
		tblclmnVisible.setText("Visible");
	}
	// The headers have to be visible to resize the column. Sometimes people
	// use long dataset names, therefore need to resize the legend to see
	// what's plotted. We add a right click action to the table to show headers
	// which then allow it to be resized. There may be an easier way to do this.
	final MenuManager man = new MenuManager();
	man.add(new Action("Resizable", IAction.AS_CHECK_BOX) {
		private boolean show = false;
		 @Override
		public void run() {
			show = !show;
			tblLegend.setHeaderVisible(show);
		}
	});
	final Menu menu = man.createContextMenu(tblLegend);
	tblLegend.setMenu(menu);
}
 
源代码9 项目: elexis-3-core   文件: UsageSettings.java
public void addContextMenuSupport(TableViewer tableViewer, MenuManager menuManager){
	Table table = tableViewer.getTable();
	Menu menu = menuManager.createContextMenu(table);
	table.setMenu(menu);
}
 
源代码10 项目: nebula   文件: ColumnBrowserWidget.java
/**
 * Sets the receiver's pop up menu to the argument. All controls may optionally
 * have a pop up menu that is displayed when the user requests one for the
 * control. The sequence of key strokes, button presses and/or button releases
 * that are used to request a pop up menu is platform specific.
 * <p>
 * Note: Disposing of a control that has a pop up menu will dispose of the menu.
 * To avoid this behavior, set the menu to null before the control is disposed.
 * </p>
 *
 * @param menu the new pop up menu
 *
 * @exception IllegalArgumentException
 *                <ul>
 *                <li>ERROR_MENU_NOT_POP_UP - the menu is not a pop up menu</li>
 *                <li>ERROR_INVALID_PARENT - if the menu is not in the same
 *                widget tree</li>
 *                <li>ERROR_INVALID_ARGUMENT - if the menu has been disposed
 *                </li>
 *                </ul>
 * @exception SWTException
 *                <ul>
 *                <li>ERROR_WIDGET_DISPOSED - if the receiver has been
 *                disposed</li>
 *                <li>ERROR_THREAD_INVALID_ACCESS - if not called from the
 *                thread that created the receiver</li>
 *                </ul>
 * @see org.eclipse.swt.widgets.Control#setMenu(org.eclipse.swt.widgets.Menu)
 */
@Override
public void setMenu(final Menu menu) {
	super.setMenu(menu);
	for (final Table column : columns) {
		column.setMenu(menu);
	}
}