List of usage examples for org.eclipse.jface.viewers TableViewer getTable
public Table getTable()
From source file:com.aptana.ide.search.MatchesContentProvider.java
License:Open Source License
/** * handles updates//from ww w.j a va 2s . c om * @param updatedElements * updates elements */ public void elementsChanged(Object[] updatedElements) { StructuredViewer viewer2 = this.aptanaFileSearchPage.getViewer(); TableViewer viewer = (TableViewer) viewer2; int elementLimit = this.getElementLimit(); boolean tableLimited = getElementLimit() == -1; AbstractTextSearchResult input = this.aptanaFileSearchPage.getInput(); for (int i = 0; i < updatedElements.length; i++) { Object element = updatedElements[i]; Match[] matchs = (Match[]) this.mmap.get(element); if (matchs == null) { matchs = AptanaFileSearchPage.NO_MATCH; } if (input.getMatchCount(element) > 0) { Match[] matches = input.getMatches(element); HashSet set = new HashSet(Arrays.asList(matches)); for (int a = 0; a < matchs.length; a++) { Match m = matchs[a]; if (!set.contains(m)) { viewer.remove(m); } else { set.remove(m); } } this.mmap.put(element, matches); for (Iterator iterator = set.iterator(); iterator.hasNext();) { Match name = (Match) iterator.next(); if (!tableLimited || (viewer.getTable().getItemCount() < elementLimit)) { viewer.add(name); } else { break; } } } else { viewer.remove(matchs); } } }
From source file:com.aptana.ide.search.ui.filesystem.AptanaFileSystemSearchPage.java
License:Open Source License
/** * @see org.eclipse.search.internal.ui.text.FileSearchPage#getLabel() *///w w w . j a v a 2 s . c o m public String getLabel() { if (this.layout == LAYOUT_MATCHES) { AbstractTextSearchResult input = getInput(); if (input != null) { String label = input.getLabel(); TableViewer viewer = (TableViewer) getViewer(); int itemCount = viewer.getTable().getItemCount(); int matchCount = input.getMatchCount(); if (itemCount < matchCount) { return Messages.format(com.aptana.ide.search.Messages.AptanaFileSearchPage_NOT_ALL_MATCHES, new Object[] { label, new Integer(itemCount), new Integer(matchCount) }); } } else { return ""; //$NON-NLS-1$ } } return super.getLabel(); }
From source file:com.aptana.ide.search.ui.filesystem.AptanaFileSystemSearchPage.java
License:Open Source License
/** * @see org.eclipse.search.ui.text.AbstractTextSearchViewPage#handleSearchResultChanged(org.eclipse.search.ui.SearchResultEvent) *///from www. jav a 2 s .c o m protected void handleSearchResultChanged(final SearchResultEvent e) { if (this.layout != LAYOUT_MATCHES) { super.handleSearchResultChanged(e); return; } if (e instanceof MatchEvent) { MatchEvent me = (MatchEvent) e; int kind = me.getKind(); if ((Display.getCurrent() != null) && (kind == MatchEvent.REMOVED)) { TableViewer cc = (TableViewer) getViewer(); Table table = cc.getTable(); int selectionIndex = table.getSelectionIndex(); cc.refresh(); if (selectionIndex != -1) { if (selectionIndex < table.getItemCount()) { TableItem item = cc.getTable().getItem(selectionIndex); cc.setSelection(new StructuredSelection(item.getData())); } } } else { super.handleSearchResultChanged(e); } } else if (e instanceof RemoveAllEvent) { super.handleSearchResultChanged(e); } }
From source file:com.aptana.ide.search.ui.filesystem.AptanaFileSystemSearchPage.java
License:Open Source License
private void reconfigureTableViewer() { TableViewer tViewer = (TableViewer) getViewer(); TableColumn[] columns = tViewer.getTable().getColumns(); for (int a = 0; a < columns.length; a++) { columns[a].dispose();/*from ww w. j a v a2 s . c om*/ } metrics = new PixelConverter(tViewer.getControl()); tViewer.getTable().setHeaderVisible(true); TableColumn clmn = new TableColumn(tViewer.getTable(), SWT.LEFT); clmn.setText(com.aptana.ide.search.Messages.AptanaFileSearchPage_File); TableColumn clmn1 = new TableColumn(tViewer.getTable(), SWT.LEFT); clmn1.setText(com.aptana.ide.search.Messages.AptanaFileSearchPage_Line); TableColumn clmn2 = new TableColumn(tViewer.getTable(), SWT.LEFT); clmn2.setText(com.aptana.ide.search.Messages.AptanaFileSearchPage_Source); TableLayout tableLayout = new TableLayout(); tableLayout.addColumnData(new ColumnWeightData(1)); tableLayout.addColumnData(new ColumnPixelData(50)); tableLayout.addColumnData(new ColumnWeightData(1)); PreferenceUtils.persist(Activator.getDefault().getPreferenceStore(), tViewer.getTable(), "tviewer"); //$NON-NLS-1$ this.listener = new Listener() { public void handleEvent(Event event) { if (event.index == 2) { AptanaFileSystemMatch aptanaFileMatch = ((AptanaFileSystemMatch) event.item.getData()); if (aptanaFileMatch != null) { event.gc.drawText(aptanaFileMatch.getLineContent(), event.x, event.y); } } } }; this.listener1 = new Listener() { public void handleEvent(Event event) { if (event.index == 2) { AptanaFileSystemMatch aptanaFileMatch = ((AptanaFileSystemMatch) event.item.getData()); if (aptanaFileMatch != null) { event.width = AptanaFileSystemSearchPage.this.metrics .convertWidthInCharsToPixels(aptanaFileMatch.getLineContent().length()); } } } }; tViewer.getTable().addListener(SWT.PaintItem, this.listener); tViewer.getTable().setLayout(tableLayout); this.baseLabelProvider = (LabelProvider) tViewer.getLabelProvider(); tViewer.setInput(null); tViewer.setLabelProvider(new MatchesTableLabelProvider()); final IContentProvider contentProvider = tViewer.getContentProvider(); this.structuredContentProvider = new MatchesContentProvider(this, contentProvider); tViewer.setContentProvider(this.structuredContentProvider); tViewer.setInput(this.getInput()); tViewer.getTable().getParent().layout(true); }
From source file:com.aptana.ide.search.ui.filesystem.MatchesContentProvider.java
License:Open Source License
/** * handles updates// w w w .ja v a 2 s .com * * @param updatedElements * updates elements */ public void elementsChanged(Object[] updatedElements) { StructuredViewer viewer2 = this.aptanaFileSearchPage.getViewer(); TableViewer viewer = (TableViewer) viewer2; int elementLimit = getElementLimit(); boolean tableLimited = getElementLimit() == -1; AbstractTextSearchResult input = this.aptanaFileSearchPage.getInput(); for (Object element : updatedElements) { Match[] matchs = this.mmap.get(element); if (matchs == null) { matchs = AptanaFileSystemSearchPage.NO_MATCH; } if (input.getMatchCount(element) > 0) { Match[] matches = input.getMatches(element); Set<Match> set = new HashSet<Match>(Arrays.asList(matches)); for (Match m : matches) { if (!set.contains(m)) { viewer.remove(m); } else { set.remove(m); } } this.mmap.put(element, matches); for (Match name : set) { if (!tableLimited || (viewer.getTable().getItemCount() < elementLimit)) { viewer.add(name); } else { break; } } } else { viewer.remove(matchs); } } }
From source file:com.aptana.ide.server.ui.views.ServersView.java
License:Open Source License
private TableViewer createServerTable(Composite parent) { TableViewer view = new TableViewer(parent, SWT.SINGLE | SWT.FULL_SELECTION); Table serverTable = view.getTable(); serverTable.setHeaderVisible(true);/* ww w. ja v a 2 s . com*/ serverTable.setLinesVisible(true); serverTable.setLayoutData(new GridData(GridData.FILL_BOTH)); TableColumn imageCol = new TableColumn(serverTable, SWT.LEFT); imageCol.setWidth(20); TableColumn nameCol = new TableColumn(serverTable, SWT.LEFT); nameCol.setText(Messages.ServersView_NAME); nameCol.setWidth(100); TableColumn statusCol = new TableColumn(serverTable, SWT.LEFT); statusCol.setText(Messages.ServersView_STATUS); statusCol.setWidth(125); ServerManager.getInstance().addServerListener(this); view.setLabelProvider(new ServerLabelProvider()); view.setContentProvider(new ServerContentProvider()); PreferenceUtils.registerBackgroundColorPreference(view.getControl(), "com.aptana.ide.core.ui.background.color.serversView"); //$NON-NLS-1$ PreferenceUtils.registerForegroundColorPreference(view.getControl(), "com.aptana.ide.core.ui.foreground.color.serversView"); //$NON-NLS-1$ return view; }
From source file:com.aptana.js.debug.ui.internal.xhr.AJAXMonitorPage.java
License:Open Source License
private void createDetailsPart(Composite parent, String name, Viewer[] viewers) { Composite container = new Composite(parent, SWT.NONE); container.setLayoutData(new GridData(GridData.FILL_BOTH)); GridLayout layout = new GridLayout(1, false); layout.marginHeight = 0;/*from w ww . j a va 2 s . co m*/ layout.horizontalSpacing = 0; layout.marginWidth /= 2; container.setLayout(layout); Label label = new Label(container, SWT.NONE); label.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); label.setText(name); CTabFolder tab = new CTabFolder(container, SWT.BOTTOM | SWT.FLAT | SWT.BORDER); tab.setLayoutData(new GridData(GridData.FILL_BOTH)); TableViewer viewer = new TableViewer(tab, /* SWT.VIRTUAL | */SWT.SINGLE | SWT.FULL_SELECTION); Table table = viewer.getTable(); TableLayout tableLayout = new TableLayout(); table.setLayout(tableLayout); table.setHeaderVisible(false); table.setLinesVisible(true); // CHECKSTYLE:OFF TableColumn column = new TableColumn(table, SWT.LEFT); column.setText(Messages.AJAXMonitorPage_Name); tableLayout.addColumnData(new ColumnWeightData(50)); column = new TableColumn(table, SWT.LEFT); column.setText(Messages.AJAXMonitorPage_Value); tableLayout.addColumnData(new ColumnWeightData(50)); // CHECKSTYLE:ON viewer.setContentProvider(new XHRContentProvider()); viewer.setLabelProvider(new XHRLabelProvider()); viewers[0] = viewer; CTabItem item = new CTabItem(tab, SWT.NONE); item.setControl(viewers[0].getControl()); item.setText(Messages.AJAXMonitorPage_Headers); TextViewer textViewer = new TextViewer(tab, SWT.READ_ONLY | SWT.V_SCROLL | SWT.H_SCROLL); item = new CTabItem(tab, SWT.NONE); item.setControl(textViewer.getControl()); item.setText(Messages.AJAXMonitorPage_Body); textViewer.setEditable(false); textViewer.setDocument(new Document()); viewers[1] = textViewer; tab.setSelection(item); }
From source file:com.aptana.webserver.ui.internal.views.ServersView.java
License:Open Source License
private TableViewer createServerTable(Composite parent) { TableViewer tableViewer = new TableViewer(parent, SWT.SINGLE | SWT.FULL_SELECTION); Table serverTable = tableViewer.getTable(); serverTable.setHeaderVisible(true);//from w w w. j ava2s . c o m serverTable.setLinesVisible(true); serverTable.setLayoutData(new GridData(GridData.FILL_BOTH)); TableColumn nameCol = new TableColumn(serverTable, SWT.LEFT); nameCol.setText(Messages.ServersView_NAME); nameCol.setWidth(150); TableColumn statusCol = new TableColumn(serverTable, SWT.LEFT); statusCol.setText(Messages.ServersView_STATUS); statusCol.setWidth(75); TableColumn typeColumn = new TableColumn(serverTable, SWT.LEFT); typeColumn.setText(Messages.ServersView_TYPE); typeColumn.setWidth(125); TableColumn hostColumn = new TableColumn(serverTable, SWT.LEFT); hostColumn.setText(Messages.GenericServersView_HOST); hostColumn.setWidth(150); TableColumn portColumn = new TableColumn(serverTable, SWT.LEFT); portColumn.setText(Messages.GenericServersView_PORT); portColumn.setWidth(50); WebServerCorePlugin.getDefault().getServerManager().addServerChangeListener(this); tableViewer.setLabelProvider(new ServerLabelProvider()); tableViewer.setContentProvider(ArrayContentProvider.getInstance()); tableViewer.setInput(WebServerCorePlugin.getDefault().getServerManager().getServers()); ThemePlugin.getDefault().getControlThemerFactory().apply(tableViewer); return tableViewer; }
From source file:com.asakusafw.shafu.internal.ui.preferences.ShafuPreferencePage.java
License:Apache License
private void createPropertiesField(Composite pane, final String key, int span, String title) { Group group = new Group(pane, SWT.NONE); group.setText(title);// w ww .j a v a2 s .c o m group.setLayoutData( GridDataFactory.swtDefaults().align(SWT.FILL, SWT.FILL).grab(true, true).span(span, 1).create()); group.setLayout(new GridLayout(2, false)); final Map<String, String> contents = new LinkedHashMap<String, String>(); final TableViewer viewer = new TableViewer(group, SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER | SWT.FULL_SELECTION); viewer.getControl().setLayoutData(GridDataFactory.fillDefaults().grab(true, true).span(1, 3) .indent(BasicField.getDecorationWidth(), 0).create()); viewer.setContentProvider(new PropertiesContentProvider()); viewer.setLabelProvider(new PropertiesLabelProvider()); viewer.setInput(contents); viewer.getTable().setLinesVisible(true); viewer.getTable().setHeaderVisible(true); TableColumn keyColumn = new TableColumn(viewer.getTable(), SWT.NONE, 0); keyColumn.setResizable(true); keyColumn.setText(Messages.ShafuPreferencePage_propertiesKeyLabel); keyColumn.setWidth(convertWidthInCharsToPixels(20)); TableColumn valueColumn = new TableColumn(viewer.getTable(), SWT.NONE, 1); valueColumn.setResizable(true); valueColumn.setText(Messages.ShafuPreferencePage_propertiesValueLabel); valueColumn.setWidth(convertWidthInCharsToPixels(40)); viewer.addDoubleClickListener(new IDoubleClickListener() { @Override public void doubleClick(DoubleClickEvent event) { ISelection s = event.getSelection(); if (s.isEmpty()) { return; } if ((s instanceof IStructuredSelection) == false) { return; } Map.Entry<?, ?> first = (Map.Entry<?, ?>) ((IStructuredSelection) s).iterator().next(); String oldKey = (String) first.getKey(); String oldValue = (String) first.getValue(); PropertyEntryInputDialog dialog = new PropertyEntryInputDialog(getShell(), contents, oldKey, oldValue); if (dialog.open() != Window.OK) { return; } contents.remove(oldKey); contents.put(dialog.getInputKey(), dialog.getInputValue()); viewer.refresh(); setPreferenceValue(key, encodeMap(contents)); } }); final Button addButton = new Button(group, SWT.PUSH); addButton.setText(Messages.ShafuPreferencePage_propertiesAddLabel); addButton.setLayoutData(GridDataFactory.swtDefaults().align(SWT.FILL, SWT.BEGINNING).create()); addButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { PropertyEntryInputDialog dialog = new PropertyEntryInputDialog(getShell(), contents); if (dialog.open() != Window.OK) { return; } contents.put(dialog.getInputKey(), dialog.getInputValue()); viewer.refresh(); setPreferenceValue(key, encodeMap(contents)); } }); final Button removeButton = new Button(group, SWT.PUSH); removeButton.setText(Messages.ShafuPreferencePage_propertiesRemoveLabel); removeButton.setLayoutData(GridDataFactory.swtDefaults().align(SWT.FILL, SWT.BEGINNING).create()); removeButton.setEnabled(false); removeButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { ISelection selection = viewer.getSelection(); if (selection instanceof IStructuredSelection) { Iterator<?> iter = ((IStructuredSelection) selection).iterator(); Set<String> keys = new HashSet<String>(); while (iter.hasNext()) { Map.Entry<?, ?> entry = (Map.Entry<?, ?>) iter.next(); keys.add((String) entry.getKey()); } contents.keySet().removeAll(keys); viewer.refresh(); setPreferenceValue(key, encodeMap(contents)); } } }); viewer.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { removeButton.setEnabled(event.getSelection().isEmpty() == false); } }); registerField(new PreferenceField(key, viewer.getControl()) { @Override public void refresh() { String value = getPreferenceValue(key); Map<String, String> map = decodeToMap(value); contents.clear(); contents.putAll(map); viewer.refresh(); setPreferenceValue(key, encodeMap(contents)); } }); }
From source file:com.astra.ses.spell.database.db.ui.editor.DatabaseEditor.java
License:Open Source License
@Override protected void configureTable(TableViewer tableViewer) { super.configureTable(tableViewer); /*//from ww w. ja va2s . com * In this case we want to add column headers */ tableViewer.getTable().setHeaderVisible(true); }