List of usage examples for org.eclipse.jface.viewers TreeViewer TreeViewer
public TreeViewer(Composite parent, int style)
From source file:com.application.areca.launcher.gui.composites.SearchComposite.java
License:Open Source License
private Composite buildBottomComposite(Composite parent) { Composite panel = new Composite(parent, SWT.NONE); panel.setLayout(new GridLayout(2, false)); TreeViewer tv = new TreeViewer(panel, SWT.BORDER); tree = tv.getTree();/*from w w w .j a v a 2s . c o m*/ tree.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 2, 1)); tree.setLinesVisible(AbstractWindow.getTableLinesVisible()); tree.addMouseListener(this); lblLog = new Label(panel, SWT.NONE); lblLog.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false)); btnClear = new Button(panel, SWT.PUSH); btnClear.setLayoutData(new GridData(SWT.RIGHT, SWT.BOTTOM, false, false)); btnClear.setText(RM.getLabel("search.clearall.label")); btnClear.addListener(SWT.Selection, this); return panel; }
From source file:com.application.areca.launcher.gui.composites.TreeComposite.java
License:Open Source License
public TreeComposite(Composite parent) { super(parent, SWT.NONE); setLayout(new FillLayout()); TreeViewer viewer = new TreeViewer(this, SWT.BORDER); tree = viewer.getTree();// w ww . ja va 2 s . c om tree.addMouseListener(this); tree.addListener(SWT.Selection, this); viewer.addDoubleClickListener(new IDoubleClickListener() { public void doubleClick(DoubleClickEvent event) { if (application.isCurrentObjectTarget()) { application.showEditTarget(application.getCurrentTarget()); } else if (application.isCurrentObjectProcess()) { application.showEditGroup(application.getCurrentTargetGroup()); } } }); Transfer[] types = new Transfer[] { TextTransfer.getInstance() }; final int operation = DND.DROP_MOVE; final DragSource source = new DragSource(tree, operation); source.setTransfer(types); source.addDragListener(new DragSourceAdapter() { public void dragStart(DragSourceEvent event) { TreeItem[] selection = tree.getSelection(); if (selection.length > 0 && selection[0].getData() instanceof AbstractRecoveryTarget) { event.doit = true; } else { event.doit = false; } }; public void dragSetData(DragSourceEvent event) { event.data = "dummy data"; } }); DropTarget target = new DropTarget(tree, operation); target.setTransfer(types); target.addDropListener(new DropTargetAdapter() { public void dragEnter(DropTargetEvent event) { event.detail = DND.DROP_NONE; event.feedback = DND.FEEDBACK_NONE; } public void dragOver(DropTargetEvent event) { event.feedback = DND.FEEDBACK_EXPAND | DND.FEEDBACK_SCROLL; if (event.item != null && isValidTreeItem((TreeItem) event.item)) { event.feedback |= DND.FEEDBACK_SELECT; event.detail = operation; } else { event.feedback |= DND.FEEDBACK_NONE; event.detail = DND.DROP_NONE; } } public void drop(DropTargetEvent event) { if (event.item != null) { TreeItem item = (TreeItem) event.item; AbstractRecoveryTarget draggedTarget = Application.getInstance().getCurrentTarget(); TargetGroup sourceProcess = draggedTarget.getGroup(); TargetGroup destinationProcess = extractRecoveryProcess(item); if (!destinationProcess.equals(sourceProcess)) { sourceProcess.removeTarget(draggedTarget); if (destinationProcess.getTargetById(draggedTarget.getId()) != null) { // A target with same ID already exists draggedTarget.setId(destinationProcess.getNextFreeTargetId()); } destinationProcess.addTarget(draggedTarget); draggedTarget.setGroup(destinationProcess); } application.saveProcess(sourceProcess); application.saveProcess(destinationProcess); refresh(); } } }); refresh(); }
From source file:com.application.areca.launcher.gui.TargetEditionWindow.java
License:Open Source License
private void initFiltersTab(Composite composite) { composite.setLayout(initLayout(4));/* w w w .j av a 2 s . c om*/ TreeViewer viewer = new TreeViewer(composite, SWT.BORDER | SWT.SINGLE); treFilters = viewer.getTree(); GridData dt = new GridData(SWT.FILL, SWT.FILL, true, true, 4, 1); dt.heightHint = computeHeight(50); treFilters.setLayoutData(dt); TreeColumn col1 = new TreeColumn(treFilters, SWT.NONE); col1.setText(RM.getLabel("targetedition.filterstable.type.label")); col1.setWidth(computeWidth(200)); col1.setMoveable(true); TreeColumn col2 = new TreeColumn(treFilters, SWT.NONE); col2.setText(RM.getLabel("targetedition.filterstable.parameters.label")); col2.setWidth(computeWidth(200)); col2.setMoveable(true); TreeColumn col3 = new TreeColumn(treFilters, SWT.NONE); col3.setText(RM.getLabel("targetedition.filterstable.mode.label")); col3.setWidth(computeWidth(100)); col3.setMoveable(true); treFilters.setHeaderVisible(true); treFilters.setLinesVisible(AbstractWindow.getTableLinesVisible()); viewer.addDoubleClickListener(new IDoubleClickListener() { public void doubleClick(DoubleClickEvent event) { editCurrentFilter(); } }); treFilters.addKeyListener(new KeyListener() { public void keyPressed(KeyEvent evt) { if (evt.character == SWT.DEL) { deleteCurrentFilter(); } } public void keyReleased(KeyEvent evt) { } }); Transfer[] types = new Transfer[] { TextTransfer.getInstance() }; final int operation = DND.DROP_MOVE; final DragSource source = new DragSource(treFilters, operation); source.setTransfer(types); source.addDragListener(new DragSourceAdapter() { public void dragStart(DragSourceEvent event) { TreeItem[] selection = treFilters.getSelection(); if (selection.length > 0 && selection[0].getParentItem() != null) { event.doit = true; transfered = selection[0]; } else { event.doit = false; } }; public void dragSetData(DragSourceEvent event) { event.data = "dummy data"; } }); DropTarget target = new DropTarget(treFilters, operation); target.setTransfer(types); target.addDropListener(new DropTargetAdapter() { public void dragEnter(DropTargetEvent event) { event.detail = DND.DROP_NONE; event.feedback = DND.FEEDBACK_NONE; } public void dragOver(DropTargetEvent event) { event.feedback = DND.FEEDBACK_EXPAND | DND.FEEDBACK_SCROLL; TreeItem selected = getSelected(event); if (selected != null && (selected.getData() instanceof FilterGroup) && (!contains(transfered, selected))) { event.feedback |= DND.FEEDBACK_SELECT; event.detail = operation; } else { event.feedback |= DND.FEEDBACK_NONE; event.detail = DND.DROP_NONE; } } public void drop(DropTargetEvent event) { TreeItem targetItem = getSelected(event); if (targetItem != null) { FilterGroup target = (FilterGroup) targetItem.getData(); ArchiveFilter filter = (ArchiveFilter) transfered.getData(); FilterGroup parent = (FilterGroup) transfered.getParentItem().getData(); parent.remove(filter); target.addFilter(filter); updateFilterData(null); expandAll(treFilters.getItem(0)); } } }); btnAddFilter = new Button(composite, SWT.PUSH); btnAddFilter.setText(RM.getLabel("targetedition.addfilteraction.label")); btnAddFilter.addListener(SWT.Selection, new Listener() { public void handleEvent(Event event) { if (treFilters.getSelectionCount() != 0) { TreeItem parentItem = treFilters.getSelection()[0]; ArchiveFilter parent = (ArchiveFilter) parentItem.getData(); if (parent instanceof FilterGroup) { ArchiveFilter newFilter = showFilterEditionFrame(null); if (newFilter != null) { ((FilterGroup) parent).addFilter(newFilter); addFilter(parentItem, newFilter); expandAll(treFilters.getItem(0)); registerUpdate(); } } } } }); btnModifyFilter = new Button(composite, SWT.PUSH); btnModifyFilter.setText(RM.getLabel("targetedition.editfilteraction.label")); btnModifyFilter.addListener(SWT.Selection, new Listener() { public void handleEvent(Event event) { editCurrentFilter(); } }); btnRemoveFilter = new Button(composite, SWT.PUSH); btnRemoveFilter.setText(RM.getLabel("targetedition.removefilteraction.label")); btnRemoveFilter.addListener(SWT.Selection, new Listener() { public void handleEvent(Event event) { deleteCurrentFilter(); } }); treFilters.addSelectionListener(new SelectionListener() { public void widgetDefaultSelected(SelectionEvent e) { } public void widgetSelected(SelectionEvent e) { updateFilterListState(); } }); }
From source file:com.appnativa.studio.views.ToolboxView.java
License:Open Source License
/** * This is a callback that will allow us to create the viewer and initialize * it.// w w w . jav a 2 s .co m */ public void createPartControl(Composite parent) { viewer = new TreeViewer(parent, SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL); drillDownAdapter = new DrillDownAdapter(viewer); viewer.setContentProvider(new ViewContentProvider()); viewer.setLabelProvider(new ViewLabelProvider()); viewer.setInput(getViewSite()); // Create the help context id for the viewer's control PlatformUI.getWorkbench().getHelpSystem().setHelp(viewer.getControl(), "com.appnativa.studio.viewer"); makeActions(); hookContextMenu(); hookDoubleClickAction(); contributeToActionBars(); if (viewer.getTree().getItemCount() > 2) { Object item = viewer.getTree().getItem(1); viewer.setExpandedState(item, true); viewer.refresh(); } }
From source file:com.aptana.editor.common.outline.CommonOutlinePage.java
License:Open Source License
@Override public void createControl(Composite parent) { fMainControl = new Composite(parent, SWT.NONE); fMainControl.setLayout(GridLayoutFactory.fillDefaults().spacing(0, 2).create()); fMainControl.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create()); fSearchBox = new Text(fMainControl, SWT.SINGLE | SWT.BORDER | SWT.SEARCH); fSearchBox.setLayoutData(GridDataFactory.fillDefaults().grab(true, false).indent(0, 3).create()); fSearchBox.setText(INITIAL_FILTER_TEXT); fSearchBox.setForeground(fSearchBox.getDisplay().getSystemColor(SWT.COLOR_TITLE_INACTIVE_FOREGROUND)); fSearchBox.addModifyListener(fSearchModifyListener); fSearchBox.addFocusListener(new FocusListener() { public void focusLost(FocusEvent e) { if (fSearchBox.getText().length() == 0) { fSearchBox.removeModifyListener(fSearchModifyListener); fSearchBox.setText(INITIAL_FILTER_TEXT); fSearchBox.addModifyListener(fSearchModifyListener); }/*from www. jav a 2 s . c om*/ fSearchBox .setForeground(fSearchBox.getDisplay().getSystemColor(SWT.COLOR_TITLE_INACTIVE_FOREGROUND)); } public void focusGained(FocusEvent e) { if (fSearchBox.getText().equals(INITIAL_FILTER_TEXT)) { fSearchBox.removeModifyListener(fSearchModifyListener); fSearchBox.setText(StringUtil.EMPTY); fSearchBox.addModifyListener(fSearchModifyListener); } fSearchBox.setForeground(null); } }); fTreeViewer = new TreeViewer(fMainControl, SWT.VIRTUAL | SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL); fTreeViewer.addSelectionChangedListener(this); fTreeViewer.getControl().setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create()); ((IContextService) getSite().getService(IContextService.class)).activateContext(OUTLINE_CONTEXT); final TreeViewer viewer = getTreeViewer(); viewer.setUseHashlookup(true); viewer.setContentProvider(fContentProvider); viewer.setLabelProvider(fLabelProvider); fInput = new CommonOutlinePageInput(fEditor.getAST()); // Note: the input remains the same (we change its internal contents with a new ast and call refresh, // so that the outline structure is maintained). viewer.setInput(fInput); viewer.setComparator(isSortingEnabled() ? new ViewerComparator() : null); fFilter = new PatternFilter() { @Override protected boolean isLeafMatch(Viewer viewer, Object element) { String label = null; if (element instanceof CommonOutlineItem) { label = ((CommonOutlineItem) element).getLabel(); } else if (element instanceof IParseNode) { label = ((IParseNode) element).getText(); } if (label == null) { return true; } return wordMatches(label); } }; fFilter.setIncludeLeadingWildcard(true); viewer.addFilter(fFilter); viewer.addDoubleClickListener(new IDoubleClickListener() { public void doubleClick(DoubleClickEvent event) { IStructuredSelection selection = (IStructuredSelection) event.getSelection(); // expands the selection one level if applicable viewer.expandToLevel(selection.getFirstElement(), 1); // selects the corresponding text in editor if (!isLinkedWithEditor()) { setEditorSelection(selection, true); } } }); viewer.getTree().addKeyListener(new KeyListener() { public void keyPressed(KeyEvent e) { } public void keyReleased(KeyEvent e) { if (e.keyCode == '\r' && isLinkedWithEditor()) { ISelection selection = viewer.getSelection(); if (!selection.isEmpty() && selection instanceof IStructuredSelection) { IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage(); if (page != null) { // brings editor to focus page.activate(fEditor); // deselects the current selection but keeps the cursor position Object widget = fEditor.getAdapter(Control.class); if (widget instanceof StyledText) fEditor.selectAndReveal(((StyledText) widget).getCaretOffset(), 0); } } } } }); hookToThemes(); IActionBars actionBars = getSite().getActionBars(); registerActions(actionBars); actionBars.updateActionBars(); fPrefs.addPropertyChangeListener(this); fFilterRefreshJob = new WorkbenchJob("Refresh Filter") //$NON-NLS-1$ { @Override public IStatus runInUIThread(IProgressMonitor monitor) { if (isDisposed()) { return Status.CANCEL_STATUS; } fTreeViewer.refresh(); String text = fSearchBox.getText(); if (!StringUtil.isEmpty(text) && !INITIAL_FILTER_TEXT.equals(text)) { fTreeViewer.expandAll(); } return Status.OK_STATUS; } }; EclipseUtil.setSystemForJob(fFilterRefreshJob); }
From source file:com.aptana.ide.server.ui.views.GenericServersView.java
License:Open Source License
/** * Helper method to create the table viewer. * //from ww w . j av a 2s.com * @param parent */ private void createTableViewer(Composite parent) { serverViewer = new TreeViewer(parent, SWT.SINGLE | SWT.FULL_SELECTION); serverViewer.getTree().setLinesVisible(true); serverViewer.addTreeListener(new ITreeViewerListener() { public void treeExpanded(TreeExpansionEvent event) { Object server = event.getElement(); if (server instanceof IServer) { ServerUIPlugin.getDefault().getPreferenceStore().setValue( IPreferenceConstants.COLLAPSE_SERVER + "." + ((IServer) server).getId(), false); //$NON-NLS-1$ } updateCollapseAllAction(); } public void treeCollapsed(TreeExpansionEvent event) { Object server = event.getElement(); if (server instanceof IServer) { ServerUIPlugin.getDefault().getPreferenceStore().setValue( IPreferenceConstants.COLLAPSE_SERVER + "." + ((IServer) server).getId(), true); //$NON-NLS-1$ } updateCollapseAllAction(); } }); PreferenceUtils.registerBackgroundColorPreference(serverViewer.getControl(), "com.aptana.ide.core.ui.background.color.serversView"); //$NON-NLS-1$ PreferenceUtils.registerForegroundColorPreference(serverViewer.getControl(), "com.aptana.ide.core.ui.foreground.color.serversView"); //$NON-NLS-1$ createTree(); }
From source file:com.aptana.ide.syncing.ui.old.views.SmartSyncViewer.java
License:Open Source License
private TreeViewer createContents(final Composite parent) { final TreeViewer viewer = new TreeViewer(parent, SWT.FULL_SELECTION | SWT.SINGLE | SWT.BORDER); viewer.setContentProvider(fContentProvider = new SmartSyncContentProvider()); viewer.setLabelProvider(fLabelProvider = new SmartSyncLabelProvider(parent.getDisplay())); Tree tree = viewer.getTree();//from w w w .j a v a2s . co m tree.setLinesVisible(true); tree.setHeaderVisible(true); viewer.setAutoExpandLevel(2); tree.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); fInitBackground = new Color(tree.getDisplay(), 175, 238, 238); fProgressBackground = new Color(tree.getDisplay(), 72, 209, 204); tree.addDisposeListener(new DisposeListener() { public void widgetDisposed(DisposeEvent e) { fInitBackground.dispose(); fProgressBackground.dispose(); } }); parent.addControlListener(new ControlAdapter() { public void controlResized(ControlEvent e) { setWidth(parent.getSize().x); } }); // file column TreeColumn file = new TreeColumn(tree, SWT.LEFT); file.setWidth(250); file.setText(Messages.SmartSyncDialog_ColumnResources); file.setToolTipText(Messages.SmartSyncViewer_ColumnResourcesTooltip); // the column to specify whether the file should be skipped TreeColumn skip = new TreeColumn(tree, SWT.CENTER); skip.setWidth(40); skip.setText(Messages.SmartSyncDialog_ColumnSkip); skip.setToolTipText(Messages.SmartSyncViewer_ColumnSkipTooltip); // the state column on what will be done, if any, to the files from first end point fColumnEnd1 = new TreeColumn(tree, SWT.CENTER); fColumnEnd1.setWidth(125); // the state column on what will be done, if any, to the files from second end point fColumnEnd2 = new TreeColumn(tree, SWT.CENTER); fColumnEnd2.setWidth(125); Menu menu = new Menu(tree); fShowDiffs = new MenuItem(menu, SWT.PUSH); fShowDiffs.addSelectionListener(new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { if (!viewer.getSelection().isEmpty() && viewer.getSelection() instanceof IStructuredSelection) { Object selection = ((IStructuredSelection) viewer.getSelection()).getFirstElement(); if (selection instanceof SyncFile) { SyncFile file = (SyncFile) selection; if (file.getSyncState() == SyncState.ClientItemIsNewer || file.getSyncState() == SyncState.ServerItemIsNewer) { final VirtualFileSyncPair pair = file.getPair(); FileStoreCompareEditorInput input = new FileStoreCompareEditorInput( new CompareConfiguration()); input.setLeftFileStore(pair.getSourceFile()); IFileStore destinationFile = pair.getDestinationFile(); String name = destinationFile.getName(); if (destinationFile instanceof IExtendedFileStore) { // this is a remote file, so downloads to a local temp copy first for speed purpose try { File localFile = destinationFile.toLocalFile(EFS.CACHE, null); destinationFile = EFS.getLocalFileSystem() .getStore(Path.fromOSString(localFile.getAbsolutePath())); } catch (CoreException ce) { // logs as warning since we will fall back to use the remote file store directly in // this case IdeLog.logWarning(SyncingUIPlugin.getDefault(), ce); } } input.setRightFileStore(destinationFile, name); input.initializeCompareConfiguration(); CompareUI.openCompareDialog(input); } } } } }); fShowDiffs.setImage(SyncingUIPlugin.getImage("icons/full/obj16/compare_view.gif")); //$NON-NLS-1$ fShowDiffs.setText(Messages.SmartSyncDialog_ShowDiffs); fShowDiffs.setEnabled(true); tree.setMenu(menu); viewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { if (!viewer.getSelection().isEmpty() && viewer.getSelection() instanceof IStructuredSelection) { Object selection = ((IStructuredSelection) viewer.getSelection()).getFirstElement(); if (selection instanceof SyncFile) { SyncFile file = (SyncFile) selection; if (file.getSyncState() == SyncState.ClientItemIsNewer || file.getSyncState() == SyncState.ServerItemIsNewer) { fShowDiffs.setEnabled(true); return; } } } fShowDiffs.setEnabled(false); } }); viewer.setCellEditors(new CellEditor[] { null, new CheckboxCellEditor(), null, null }); viewer.setColumnProperties( new String[] { Messages.SmartSyncDialog_ColumnName, Messages.SmartSyncDialog_ColumnSkip, Messages.SmartSyncDialog_ColumnLocal, Messages.SmartSyncDialog_ColumnRemote }); return viewer; }
From source file:com.aptana.ide.syncing.ui.views.ConnectionPointComposite.java
License:Open Source License
private TreeViewer createTreeViewer(Composite parent) { fTreeViewer = new TreeViewer(parent, SWT.BORDER | SWT.MULTI | SWT.FULL_SELECTION); Tree tree = fTreeViewer.getTree();/*from ww w . j a va 2 s .c o m*/ tree.setHeaderVisible(true); TreeColumn column = new TreeColumn(tree, SWT.LEFT); column.setWidth(300); column.setText(COLUMN_NAMES[0]); column = new TreeColumn(tree, SWT.LEFT); column.setWidth(50); column.setText(COLUMN_NAMES[1]); column = new TreeColumn(tree, SWT.LEFT); column.setWidth(150); column.setText(COLUMN_NAMES[2]); fTreeViewer.setContentProvider(new FileTreeContentProvider()); fTreeViewer.setLabelProvider(new ConnectionPointLabelProvider()); fTreeViewer.setComparator(new FileTreeNameSorter()); fTreeViewer.addSelectionChangedListener(this); fTreeViewer.addDoubleClickListener(this); fTreeViewer.addDragSupport(DND.DROP_COPY | DND.DROP_DEFAULT, new Transfer[] { LocalSelectionTransfer.getTransfer() }, this); fTreeViewer.addDropSupport(DND.DROP_COPY | DND.DROP_DEFAULT, new Transfer[] { LocalSelectionTransfer.getTransfer() }, this); // builds the context menu tree.setMenu(createMenu(tree)); updateMenuStates(); return fTreeViewer; }
From source file:com.aptana.ide.syncing.ui.views.SmartSyncViewer.java
License:Open Source License
private TreeViewer createContents(final Composite parent) { final TreeViewer viewer = new TreeViewer(parent, SWT.FULL_SELECTION | SWT.SINGLE | SWT.BORDER); viewer.setContentProvider(fContentProvider = new SmartSyncContentProvider()); viewer.setLabelProvider(fLabelProvider = new SmartSyncLabelProvider(parent.getDisplay())); Tree tree = viewer.getTree();// w ww. j a v a2 s . c om tree.setLinesVisible(true); tree.setHeaderVisible(true); viewer.setAutoExpandLevel(2); tree.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); fInitBackground = new Color(tree.getDisplay(), 175, 238, 238); fProgressBackground = new Color(tree.getDisplay(), 72, 209, 204); tree.addDisposeListener(new DisposeListener() { public void widgetDisposed(DisposeEvent e) { fInitBackground.dispose(); fProgressBackground.dispose(); } }); parent.addControlListener(new ControlAdapter() { public void controlResized(ControlEvent e) { setWidth(parent.getSize().x); } }); // file column TreeColumn file = new TreeColumn(tree, SWT.LEFT); file.setWidth(250); file.setText(Messages.SmartSyncDialog_ColumnResources); file.setToolTipText(Messages.SmartSyncViewer_ColumnResourcesTooltip); // the column to specify whether the file should be skipped TreeColumn skip = new TreeColumn(tree, SWT.CENTER); skip.setWidth(40); skip.setText(Messages.SmartSyncDialog_ColumnSkip); skip.setToolTipText(Messages.SmartSyncViewer_ColumnSkipTooltip); // the state column on what will be done, if any, to the files from first end point fColumnEnd1 = new TreeColumn(tree, SWT.CENTER); fColumnEnd1.setWidth(125); // the state column on what will be done, if any, to the files from second end point fColumnEnd2 = new TreeColumn(tree, SWT.CENTER); fColumnEnd2.setWidth(125); Menu menu = new Menu(tree); fShowDiffs = new MenuItem(menu, SWT.PUSH); fShowDiffs.addSelectionListener(new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { if (!viewer.getSelection().isEmpty() && viewer.getSelection() instanceof IStructuredSelection) { Object selection = ((IStructuredSelection) viewer.getSelection()).getFirstElement(); if (selection instanceof SyncFile) { SyncFile file = (SyncFile) selection; if (file.getSyncState() == SyncState.ClientItemIsNewer || file.getSyncState() == SyncState.ServerItemIsNewer) { final VirtualFileSyncPair pair = file.getPair(); File local = null; try { local = pair.getSourceFile().toLocalFile(EFS.CACHE, null); } catch (CoreException ex) { ex.printStackTrace(); } FileCompareEditorInput input = new FileCompareEditorInput(new CompareConfiguration()) { protected void prepareFiles() { File temp = null; try { temp = pair.getDestinationFile().toLocalFile(EFS.CACHE, null); } catch (CoreException e) { e.printStackTrace(); } setRightResource(temp); } }; input.setLeftResource(local); CompareUI.openCompareDialog(input); } } } } }); fShowDiffs.setImage(SyncingUIPlugin.getImage("icons/full/obj16/compare_view.gif")); //$NON-NLS-1$ fShowDiffs.setText(Messages.SmartSyncDialog_ShowDiffs); fShowDiffs.setEnabled(true); tree.setMenu(menu); viewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { if (!viewer.getSelection().isEmpty() && viewer.getSelection() instanceof IStructuredSelection) { Object selection = ((IStructuredSelection) viewer.getSelection()).getFirstElement(); if (selection instanceof SyncFile) { SyncFile file = (SyncFile) selection; if (file.getSyncState() == SyncState.ClientItemIsNewer || file.getSyncState() == SyncState.ServerItemIsNewer) { fShowDiffs.setEnabled(true); return; } } } fShowDiffs.setEnabled(false); } }); viewer.setCellEditors(new CellEditor[] { null, new CheckboxCellEditor(), null, null }); viewer.setColumnProperties( new String[] { Messages.SmartSyncDialog_ColumnName, Messages.SmartSyncDialog_ColumnSkip, Messages.SmartSyncDialog_ColumnLocal, Messages.SmartSyncDialog_ColumnRemote }); return viewer; }
From source file:com.aptana.ide.views.model.ModelContributer.java
License:Open Source License
/** * @see com.aptana.ide.editors.unified.ContributedOutline#createControl(org.eclipse.swt.widgets.Composite) *///from w w w. j a va 2s . com public void createControl(Composite parent) { this._treeViewer = new TreeViewer(parent, SWT.H_SCROLL | SWT.V_SCROLL | SWT.SINGLE); Tree tree = this._treeViewer.getTree(); tree.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); tree.setLayout(new GridLayout(1, true)); this._treeViewer.setLabelProvider(new ModelLabelProvider()); this._treeViewer.setAutoExpandLevel(1); this._treeViewer.setContentProvider(new ModelContentProvider()); this._treeViewer.setComparer(new IElementComparer() { public boolean equals(Object a, Object b) { boolean result = false; if (a instanceof Reference && b instanceof Reference) { Reference ref1 = (Reference) a; Reference ref2 = (Reference) b; result = ref1.getPropertyName().equals(ref2.getPropertyName()); } else { result = (a == b); } return result; } public int hashCode(Object element) { return 0; } }); TreeItem item = new TreeItem(tree, SWT.NONE); item.setText(Messages.getString("ModelContributer.Select_model_tab_to_load_outline")); //$NON-NLS-1$ refresh(); }