List of usage examples for org.eclipse.jface.viewers TreeViewerColumn getColumn
public TreeColumn getColumn()
From source file:org.eclipse.mylyn.internal.reviews.ui.views.ReviewExplorer.java
License:Open Source License
void updateColumn(TreeViewer viewer, final TableColumnProvider provider) { TreeColumn column = null;/*from w w w. j a va 2 s . c om*/ TreeViewerColumn viewerColumn = new TreeViewerColumn(viewer, SWT.NONE); final DelegatingStyledCellLabelProvider styledLabelProvider = new DelegatingStyledCellLabelProvider( provider) { @Override public String getToolTipText(Object element) { //For some reason tooltips are not delegated.. return provider.getToolTipText(element); }; }; viewerColumn.setLabelProvider(styledLabelProvider); column = viewerColumn.getColumn(); column.setText(provider.getTitle()); if (!provider.isFillAvailable()) { column.setWidth(provider.getMinimumSize()); } else { int width = viewer.getTree().getClientArea().width; if (!viewer.getTree().getVerticalBar().isVisible()) { width -= viewer.getTree().getVerticalBar().getSize().x; } int allWidths = 0; for (TableColumnProvider provider2 : currentProvider.getColumnProviders()) { if (provider2 != provider) { allWidths += provider2.getMinimumSize(); } } column.setWidth((width - allWidths)); } TableLayout layout = (TableLayout) viewer.getTree().getLayout(); layout.addColumnData(new ColumnWeightData(provider.getWeight(), provider.getMinimumSize())); }
From source file:org.eclipse.mylyn.internal.team.ui.history.TaskHistoryPage.java
License:Open Source License
@Override public void createControl(Composite parent) { viewer = new TreeViewer(parent, SWT.FULL_SELECTION); Tree tree = viewer.getTree();// ww w. j a va 2 s .co m tree.setHeaderVisible(true); TreeViewerColumn authorViewerColumn = new TreeViewerColumn(viewer, SWT.LEFT); authorViewerColumn.setLabelProvider(new AuthorLabelProvider()); TreeColumn authorColumn = authorViewerColumn.getColumn(); authorColumn.setText(Messages.TaskHistoryPage_Author_Column_Label); authorColumn.setWidth(120); authorColumn.setData(AbstractColumnViewerSupport.KEY_COLUMN_CAN_HIDE, false); TreeViewerColumn timeViewerColumn = new TreeViewerColumn(viewer, SWT.LEFT); timeViewerColumn.setLabelProvider(new TimeLabelProvider()); TreeColumn timeColumn = timeViewerColumn.getColumn(); timeColumn.setText(Messages.TaskHistoryPage_Time_Column_Label); timeColumn.setWidth(140); TreeViewerColumn fieldViewerColumn = new TreeViewerColumn(viewer, SWT.LEFT); fieldViewerColumn.setLabelProvider(new FieldLabelProvider()); TreeColumn fieldColumn = fieldViewerColumn.getColumn(); fieldColumn.setText(Messages.TaskHistoryPage_Field_Column_Label); fieldColumn.setWidth(120); TreeViewerColumn removedViewerColumn = new TreeViewerColumn(viewer, SWT.LEFT); removedViewerColumn.setLabelProvider(new RemovedLabelProvider()); TreeColumn remmovedColumn = removedViewerColumn.getColumn(); remmovedColumn.setText(Messages.TaskHistoryPage_Removed_Column_Label); remmovedColumn.setWidth(120); TreeViewerColumn addedViewerColumn = new TreeViewerColumn(viewer, SWT.LEFT); addedViewerColumn.setLabelProvider(new AddedLabelProvider()); TreeColumn addedColumn = addedViewerColumn.getColumn(); addedColumn.setText(Messages.TaskHistoryPage_Added_Column_Label); addedColumn.setWidth(120); contentProvider = new TaskHistoryContentProvider(); viewer.setContentProvider(contentProvider); viewer.addDoubleClickListener(new IDoubleClickListener() { public void doubleClick(DoubleClickEvent event) { Object item = ((IStructuredSelection) event.getSelection()).getFirstElement(); if (item instanceof TaskRevision) { final TaskRevision revision = (TaskRevision) item; final TaskHistory history = (TaskHistory) viewer.getInput(); CompareConfiguration configuration = new CompareConfiguration(); configuration.setProperty(CompareConfiguration.IGNORE_WHITESPACE, Boolean.valueOf(true)); configuration.setLeftEditable(false); configuration.setLeftLabel(Messages.TaskHistoryPage_Old_Value_Label); configuration.setRightEditable(false); configuration.setRightLabel(Messages.TaskHistoryPage_New_Value_Label); CompareEditorInput editorInput = new CompareEditorInput(configuration) { @Override protected Object prepareInput(IProgressMonitor monitor) throws InvocationTargetException, InterruptedException { try { AbstractRepositoryConnector connector = TasksUiPlugin.getRepositoryManager() .getRepositoryConnector(history.getTask().getConnectorKind()); TaskData newData = connector.getTaskData(history.getRepository(), history.getTask().getTaskId(), monitor); TaskData oldData = TasksUiInternal.computeTaskData(newData, history, revision.getId(), monitor); return new TaskDataDiffNode(Differencer.CHANGE, oldData, newData); } catch (CoreException e) { throw new InvocationTargetException(e); } } }; CompareUI.openCompareEditor(editorInput); } } }); }
From source file:org.eclipse.mylyn.reviews.r4e.ui.internal.dialogs.NewAnomalyInputDialog.java
License:Open Source License
/** * Configures the dialog form and creates form content. Clients should override this method. * // w ww . j av a2 s. com * @param mform * the dialog form */ @Override protected void createFormContent(final IManagedForm mform) { final FormToolkit toolkit = mform.getToolkit(); final ScrolledForm sform = mform.getForm(); sform.setExpandVertical(true); final Composite composite = sform.getBody(); final GridLayout layout = new GridLayout(4, false); composite.setLayout(layout); GridData textGridData = null; //Basic parameters section final Section basicSection = toolkit.createSection(composite, Section.DESCRIPTION | ExpandableComposite.TITLE_BAR | ExpandableComposite.TWISTIE | ExpandableComposite.EXPANDED); final GridData basicSectionGridData = new GridData(GridData.FILL, GridData.FILL, true, false); basicSectionGridData.horizontalSpan = 4; basicSection.setLayoutData(basicSectionGridData); basicSection.setText(R4EUIConstants.BASIC_PARAMS_HEADER); basicSection.setDescription(BASIC_PARAMS_HEADER_MSG); basicSection.addExpansionListener(new ExpansionAdapter() { @Override public void expansionStateChanged(ExpansionEvent e) { getShell().setSize(getShell().computeSize(SWT.DEFAULT, SWT.DEFAULT)); } }); final Composite basicSectionClient = toolkit.createComposite(basicSection); basicSectionClient.setLayout(layout); basicSection.setClient(basicSectionClient); //Anomaly Title Label label = toolkit.createLabel(basicSectionClient, R4EUIConstants.ANOMALY_TITLE_LABEL_VALUE); label.setToolTipText(R4EUIConstants.ANOMALY_TITLE_TOOLTIP); label.setLayoutData(new GridData(GridData.BEGINNING, GridData.BEGINNING, false, false)); fAnomalyTitleInputTextField = toolkit.createText(basicSectionClient, "", SWT.SINGLE | SWT.BORDER); textGridData = new GridData(GridData.FILL, GridData.FILL, true, false); textGridData.horizontalSpan = 3; fAnomalyTitleInputTextField.setToolTipText(R4EUIConstants.ANOMALY_TITLE_TOOLTIP); fAnomalyTitleInputTextField.setLayoutData(textGridData); fAnomalyTitleInputTextField.addModifyListener(new ModifyListener() { public void modifyText(ModifyEvent e) { // ignore if (fAnomalyTitleInputTextField.getText().length() > 0 && fAnomalyDescriptionInputTextField.getText().length() > 0) { getButton(IDialogConstants.OK_ID).setEnabled(true); } else { getButton(IDialogConstants.OK_ID).setEnabled(false); } } }); //Anomaly Description label = toolkit.createLabel(basicSectionClient, R4EUIConstants.ANOMALY_DESCRIPTION_LABEL_VALUE); label.setToolTipText(R4EUIConstants.ANOMALY_DESCRIPTION_TOOLTIP); label.setLayoutData(new GridData(GridData.BEGINNING, GridData.BEGINNING, false, false)); fAnomalyDescriptionInputTextField = toolkit.createText(basicSectionClient, "", SWT.MULTI | SWT.V_SCROLL | SWT.BORDER); textGridData = new GridData(GridData.FILL, GridData.FILL, true, false); textGridData.horizontalSpan = 3; textGridData.heightHint = fAnomalyTitleInputTextField.getLineHeight() * 7; fAnomalyDescriptionInputTextField.setToolTipText(R4EUIConstants.ANOMALY_DESCRIPTION_TOOLTIP); fAnomalyDescriptionInputTextField.setLayoutData(textGridData); fAnomalyDescriptionInputTextField.addModifyListener(new ModifyListener() { public void modifyText(ModifyEvent e) { // ignore if (fAnomalyTitleInputTextField.getText().length() > 0 && fAnomalyDescriptionInputTextField.getText().length() > 0) { getButton(IDialogConstants.OK_ID).setEnabled(true); } else { getButton(IDialogConstants.OK_ID).setEnabled(false); } } }); //Extra parameters section final Section extraSection = toolkit.createSection(composite, Section.DESCRIPTION | ExpandableComposite.TITLE_BAR | ExpandableComposite.TWISTIE); final GridData extraSectionGridData = new GridData(GridData.FILL, GridData.FILL, true, true); extraSectionGridData.horizontalSpan = 4; extraSection.setLayoutData(extraSectionGridData); extraSection.setText(R4EUIConstants.EXTRA_PARAMS_HEADER); extraSection.setDescription(EXTRA_PARAMS_HEADER_MSG); extraSection.addExpansionListener(new ExpansionAdapter() { @Override public void expansionStateChanged(ExpansionEvent e) { getShell().setSize(getShell().computeSize(SWT.DEFAULT, SWT.DEFAULT)); } }); final Composite extraSectionClient = toolkit.createComposite(extraSection); extraSectionClient.setLayout(layout); extraSection.setClient(extraSectionClient); //Anomaly Class label = toolkit.createLabel(extraSectionClient, R4EUIConstants.CLASS_LABEL); label.setToolTipText(R4EUIConstants.ANOMALY_CLASS_TOOLTIP); label.setLayoutData(new GridData(GridData.BEGINNING, GridData.BEGINNING, false, false)); fAnomalyClass = new CCombo(extraSectionClient, SWT.BORDER | SWT.READ_ONLY); fAnomalyClass.setItems(UIUtils.getClasses()); int count = UIUtils.getClasses().length; fAnomalyClass.setVisibleItemCount(count); textGridData = new GridData(GridData.FILL, GridData.FILL, true, false); textGridData.horizontalSpan = 3; fAnomalyClass.setToolTipText(R4EUIConstants.ANOMALY_CLASS_TOOLTIP); fAnomalyClass.setLayoutData(textGridData); //Anomaly Rank label = toolkit.createLabel(extraSectionClient, R4EUIConstants.RANK_LABEL); label.setToolTipText(R4EUIConstants.ANOMALY_RANK_TOOLTIP); label.setLayoutData(new GridData(GridData.BEGINNING, GridData.BEGINNING, false, false)); fAnomalyRank = new CCombo(extraSectionClient, SWT.BORDER | SWT.READ_ONLY); fAnomalyRank.setItems(UIUtils.getRanks()); textGridData = new GridData(GridData.FILL, GridData.FILL, true, false); textGridData.horizontalSpan = 3; fAnomalyRank.setToolTipText(R4EUIConstants.ANOMALY_CLASS_TOOLTIP); fAnomalyRank.setLayoutData(textGridData); //Assigned To label = toolkit.createLabel(extraSectionClient, R4EUIConstants.ASSIGNED_TO_LABEL); textGridData = new GridData(GridData.FILL, GridData.FILL, false, false); textGridData.horizontalSpan = 1; label.setLayoutData(textGridData); fAssignedToCombo = new CCombo(extraSectionClient, SWT.BORDER | SWT.READ_ONLY); final String[] participants = R4EUIModelController.getActiveReview().getParticipantIDs() .toArray(new String[R4EUIModelController.getActiveReview().getParticipantIDs().size()]); fAssignedToCombo.removeAll(); fAssignedToCombo.add(""); for (String participant : participants) { fAssignedToCombo.add(participant); } textGridData = new GridData(GridData.FILL, GridData.FILL, true, false); textGridData.horizontalSpan = 3; fAssignedToCombo.setToolTipText(R4EUIConstants.ASSIGNED_TO_TOOLTIP); fAssignedToCombo.setLayoutData(textGridData); //Due Date toolkit.setBorderStyle(SWT.NULL); label = toolkit.createLabel(extraSectionClient, R4EUIConstants.DUE_DATE_LABEL); textGridData = new GridData(SWT.FILL, SWT.CENTER, false, false); textGridData.horizontalSpan = 1; label.setLayoutData(textGridData); final Composite dateComposite = toolkit.createComposite(extraSectionClient); textGridData = new GridData(SWT.FILL, SWT.CENTER, true, true); textGridData.horizontalSpan = 3; dateComposite.setToolTipText(R4EUIConstants.ANOMALY_DUE_DATE_TOOLTIP); dateComposite.setLayoutData(textGridData); dateComposite.setLayout(new GridLayout(2, false)); fDateText = toolkit.createText(dateComposite, "", SWT.READ_ONLY); fDateText.setLayoutData(new GridData(SWT.CENTER, SWT.CENTER, false, false)); fDateText.setEditable(false); toolkit.setBorderStyle(SWT.BORDER); final Composite dateButtonComposite = toolkit.createComposite(dateComposite); textGridData = new GridData(SWT.FILL, SWT.CENTER, true, true); textGridData.horizontalSpan = 1; dateButtonComposite.setToolTipText(R4EUIConstants.ANOMALY_DUE_DATE_TOOLTIP); dateButtonComposite.setLayoutData(textGridData); dateButtonComposite.setLayout(new GridLayout(2, false)); final Button calendarButton = toolkit.createButton(dateButtonComposite, R4EUIConstants.UPDATE_LABEL, SWT.NONE); calendarButton.setLayoutData(new GridData(SWT.CENTER, SWT.CENTER, false, false)); calendarButton.addSelectionListener(new SelectionListener() { public void widgetSelected(SelectionEvent e) { final ICalendarDialog dialog = R4EUIDialogFactory.getInstance().getCalendarDialog(); final int result = dialog.open(); if (result == Window.OK) { final SimpleDateFormat dateFormat = new SimpleDateFormat(R4EUIConstants.SIMPLE_DATE_FORMAT); Date dialogDate = dialog.getDate(); String dialogDateStr = dateFormat.format(dialogDate); Calendar cal = Calendar.getInstance(); cal.setTime(new Date()); cal.add(Calendar.DAY_OF_YEAR, -1); if (dialogDate.after(cal.getTime())) { fDateText.setText(dialogDateStr); fAnomalyDueDateValue = dialogDate; } else { UIUtils.displayPastDateError(dialogDate, dialogDateStr); } } } public void widgetDefaultSelected(SelectionEvent e) { // $codepro.audit.disable emptyMethod // No implementation needed } }); final Button clearButton = toolkit.createButton(dateButtonComposite, R4EUIConstants.CLEAR_LABEL, SWT.NONE); clearButton.setLayoutData(new GridData(SWT.CENTER, SWT.CENTER, false, false)); clearButton.addSelectionListener(new SelectionListener() { public void widgetSelected(SelectionEvent e) { fDateText.setText(""); fAnomalyDueDateValue = null; } public void widgetDefaultSelected(SelectionEvent e) { // $codepro.audit.disable emptyMethod // No implementation needed } }); //Rule Tree label = toolkit.createLabel(extraSectionClient, ADD_RULE_DIALOG_VALUE); textGridData = new GridData(GridData.FILL, GridData.FILL, true, false); textGridData.horizontalSpan = 4; label.setLayoutData(textGridData); fRuleTreeViewer = new TreeViewer(extraSectionClient, SWT.FULL_SELECTION | SWT.BORDER | SWT.READ_ONLY | SWT.H_SCROLL | SWT.V_SCROLL); fRuleTreeViewer.setContentProvider(new ReviewNavigatorContentProvider()); fRuleTreeViewer.getTree().setHeaderVisible(true); ColumnViewerToolTipSupport.enableFor(fRuleTreeViewer, ToolTip.NO_RECREATE); final TreeViewerColumn elementColumn = new TreeViewerColumn(fRuleTreeViewer, SWT.NONE); elementColumn.getColumn().setText("Rule Tree"); elementColumn.getColumn().setWidth(DEFAULT_ELEMENT_COLUMN_WIDTH); elementColumn.setLabelProvider(new ReviewNavigatorLabelProvider() { @Override public String getToolTipText(Object element) { if (element instanceof R4EUIRule) { return ((R4EUIRule) element).getRule().getDescription(); } return null; } @Override public void update(ViewerCell cell) { final IR4EUIModelElement element = (IR4EUIModelElement) cell.getElement(); if (element instanceof R4EUIRuleSet && !element.isOpen()) { cell.setForeground(getShell().getDisplay().getSystemColor(SWT.COLOR_RED)); } else { cell.setForeground(getShell().getDisplay().getSystemColor(SWT.COLOR_BLACK)); } cell.setText(element.getName()); cell.setImage(element.getImage(element.getImageLocation())); } }); final TreeViewerColumn titleColumn = new TreeViewerColumn(fRuleTreeViewer, SWT.NONE); titleColumn.getColumn().setText(R4EUIConstants.TITLE_LABEL); titleColumn.getColumn().setWidth(DEFAULT_TREE_COLUMN_WIDTH); titleColumn.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { if (element instanceof R4EUIRule) { return ((R4EUIRule) element).getRule().getTitle(); } return null; } @Override public String getToolTipText(Object element) { if (element instanceof R4EUIRule) { return ((R4EUIRule) element).getRule().getDescription(); } return null; } @Override public Point getToolTipShift(Object object) { return new Point(R4EUIConstants.TOOLTIP_DISPLAY_OFFSET_X, R4EUIConstants.TOOLTIP_DISPLAY_OFFSET_Y); } @Override public int getToolTipDisplayDelayTime(Object object) { return R4EUIConstants.TOOLTIP_DISPLAY_DELAY; } @Override public int getToolTipTimeDisplayed(Object object) { return R4EUIConstants.TOOLTIP_DISPLAY_TIME; } @Override public void update(ViewerCell cell) { final Object element = cell.getElement(); if (element instanceof R4EUIRule) { cell.setText(((R4EUIRule) element).getRule().getTitle()); } else { cell.setText(null); } } }); final TreeViewerColumn classColumn = new TreeViewerColumn(fRuleTreeViewer, SWT.NONE); classColumn.getColumn().setText(R4EUIConstants.CLASS_LABEL); classColumn.getColumn().setWidth(DEFAULT_TREE_COLUMN_WIDTH); classColumn.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { if (element instanceof R4EUIRule) { return UIUtils.getClassStr(((R4EUIRule) element).getRule().getClass_()); } return null; } @Override public String getToolTipText(Object element) { if (element instanceof R4EUIRule) { return ((R4EUIRule) element).getRule().getDescription(); } return null; } @Override public Point getToolTipShift(Object object) { return new Point(R4EUIConstants.TOOLTIP_DISPLAY_OFFSET_X, R4EUIConstants.TOOLTIP_DISPLAY_OFFSET_Y); } @Override public int getToolTipDisplayDelayTime(Object object) { return R4EUIConstants.TOOLTIP_DISPLAY_DELAY; } @Override public int getToolTipTimeDisplayed(Object object) { return R4EUIConstants.TOOLTIP_DISPLAY_TIME; } @Override public void update(ViewerCell cell) { final Object element = cell.getElement(); if (element instanceof R4EUIRule) { cell.setText(UIUtils.getClassStr(((R4EUIRule) element).getRule().getClass_())); } else { cell.setText(null); } } }); final TreeViewerColumn rankColumn = new TreeViewerColumn(fRuleTreeViewer, SWT.NONE); rankColumn.getColumn().setText(R4EUIConstants.RANK_LABEL); rankColumn.getColumn().setWidth(DEFAULT_TREE_COLUMN_WIDTH); rankColumn.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { if (element instanceof R4EUIRule) { return UIUtils.getRankStr(((R4EUIRule) element).getRule().getRank()); } return null; } @Override public String getToolTipText(Object element) { if (element instanceof R4EUIRule) { return ((R4EUIRule) element).getRule().getDescription(); } return null; } @Override public Point getToolTipShift(Object object) { return new Point(R4EUIConstants.TOOLTIP_DISPLAY_OFFSET_X, R4EUIConstants.TOOLTIP_DISPLAY_OFFSET_Y); } @Override public int getToolTipDisplayDelayTime(Object object) { return R4EUIConstants.TOOLTIP_DISPLAY_DELAY; } @Override public int getToolTipTimeDisplayed(Object object) { return R4EUIConstants.TOOLTIP_DISPLAY_TIME; } @Override public void update(ViewerCell cell) { final Object element = cell.getElement(); if (element instanceof R4EUIRule) { cell.setText(UIUtils.getRankStr(((R4EUIRule) element).getRule().getRank())); } else { cell.setText(null); } } }); fRuleTreeViewer.setInput(R4EUIModelController.getRootElement()); fRuleTreeViewer.addFilter(new ViewerFilter() { @Override public boolean select(Viewer viewer, Object parentElement, Object element) { //Only display rule sets that are included in the parent review group if (element instanceof R4EUIRuleSet || element instanceof R4EUIRuleArea || element instanceof R4EUIRuleViolation || element instanceof R4EUIRule) { //Get parent RuleSet IR4EUIModelElement parentRuleSetElement = (IR4EUIModelElement) element; while (!(parentRuleSetElement instanceof R4EUIRuleSet) && null != parentRuleSetElement.getParent()) { if (!parentRuleSetElement.isEnabled()) { return false; } parentRuleSetElement = parentRuleSetElement.getParent(); } //If the current review group contains a reference to this Rule Set, display it if ((((R4EUIReviewGroup) R4EUIModelController.getActiveReview().getParent()).getRuleSets() .contains(parentRuleSetElement))) { if (!parentRuleSetElement.isOpen()) { try { ((R4EUIRuleSet) parentRuleSetElement).openReadOnly(); fOpenRuleSets.add((R4EUIRuleSet) parentRuleSetElement); } catch (ResourceHandlingException e) { R4EUIPlugin.Ftracer .traceError("Exception: " + e.toString() + " (" + e.getMessage() + ")"); R4EUIPlugin.getDefault().logError("Exception: " + e.toString(), e); } catch (CompatibilityException e) { R4EUIPlugin.Ftracer .traceError("Exception: " + e.toString() + " (" + e.getMessage() + ")"); R4EUIPlugin.getDefault().logError("Exception: " + e.toString(), e); } } return true; } } return false; } }); fRuleTreeViewer.expandAll(); fRuleTreeViewer.refresh(); textGridData = new GridData(GridData.FILL, GridData.FILL, true, true); textGridData.horizontalSpan = 4; fRuleTreeViewer.getTree().setLayoutData(textGridData); fRuleTreeViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { //Only Rules are selectable if (event.getSelection() instanceof IStructuredSelection) { if (null == ((IStructuredSelection) event.getSelection()).getFirstElement()) { return; } if (((IStructuredSelection) event.getSelection()).getFirstElement() instanceof R4EUIRule) { final R4EUIRule rule = (R4EUIRule) ((IStructuredSelection) event.getSelection()) .getFirstElement(); if (!rule.equals(fSelectedRule)) { //toggle selection fAnomalyTitleInputTextField.setText(rule.getRule().getTitle()); fAnomalyDescriptionInputTextField.setText(rule.getRule().getDescription()); fAnomalyClass.select(rule.getRule().getClass_().getValue()); fAnomalyRank.select(rule.getRule().getRank().getValue()); fAnomalyClass.setEnabled(false); fAnomalyRank.setEnabled(false); fAnomalyTitleInputTextField.setEnabled(false); fSelectedRule = rule; fRuleId = buildRuleId(); return; } } } fRuleTreeViewer.setSelection(null); fAnomalyClass.setEnabled(true); fAnomalyRank.setEnabled(true); fAnomalyTitleInputTextField.setEnabled(true); fSelectedRule = null; } }); //Set default focus fAnomalyTitleInputTextField.setFocus(); }
From source file:org.eclipse.mylyn.reviews.tasks.ui.internal.editors.TreeHelper.java
License:Open Source License
public static TreeViewerColumn createColumn(TreeViewer tree, IColumnSpec<?> columnSpec) { TreeViewerColumn column = new TreeViewerColumn(tree, SWT.LEFT); column.getColumn().setText(columnSpec.getTitle()); column.getColumn().setWidth(100);//ww w . ja va2s . c o m column.getColumn().setResizable(true); return column; }
From source file:org.eclipse.nebula.widgets.pagination.snippets.tree.ModelSortPageableTreeExample.java
License:Open Source License
private static void createColumns(final TreeViewer viewer) { // First column is for the first name TreeViewerColumn col = createTreeViewerColumn(viewer, "Name", 150); col.setLabelProvider(new ColumnLabelProvider() { @Override/* w w w . java 2 s .c o m*/ public String getText(Object element) { if (element instanceof Team) { Team p = (Team) element; return p.getName(); } Person p = (Person) element; return p.getName(); } }); col.getColumn().addSelectionListener(new SortTreeColumnSelectionListener("name")); // Second column is for the adress col = createTreeViewerColumn(viewer, "Adress", 150); col.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { if (element instanceof Person) { Person p = (Person) element; Address address = p.getAddress(); if (address == null) { return ""; } return address.getName(); } return ""; } }); col.getColumn().addSelectionListener(new SortTreeColumnSelectionListener("address.name")); }
From source file:org.eclipse.nebula.widgets.pagination.snippets.tree.ModelSortPageableTreeExample.java
License:Open Source License
private static TreeViewerColumn createTreeViewerColumn(TreeViewer viewer, String title, int bound) { final TreeViewerColumn viewerColumn = new TreeViewerColumn(viewer, SWT.NONE); final TreeColumn column = viewerColumn.getColumn(); column.setText(title);/*from ww w. j ava 2s .c o m*/ column.setWidth(bound); column.setResizable(true); column.setMoveable(true); return viewerColumn; }
From source file:org.eclipse.oomph.projectconfig.presentation.sync.ProjectConfigSynchronizerDialog.java
License:Open Source License
protected void createUI(Composite container) { if (managedPropertiesInput != null) { Label label = new Label(container, SWT.NONE); label.setText("Modified Managed Properties:"); label.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); {/*from w ww . ja va2 s . c o m*/ Composite composite = new Composite(container, SWT.NONE); composite.setLayout(new GridLayout(2, false)); composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); Button overWriteButton = new Button(composite, SWT.RADIO); overWriteButton.setText("Overwrite with managing property"); if (!propagate) { overWriteButton.setSelection(true); } overWriteButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { propagate = false; ProjectConfigSynchronizerPreferences.setPropagate(false); ProjectConfigSynchronizerPreferences.flush(); } }); Button propogateButton = new Button(composite, SWT.RADIO); propogateButton.setText("Propagate to managing property"); if (propagate) { propogateButton.setSelection(true); } propogateButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { propagate = true; ProjectConfigSynchronizerPreferences.setPropagate(true); ProjectConfigSynchronizerPreferences.flush(); } }); } managedPropertiesViewer = new TreeViewer(container, SWT.FULL_SELECTION | SWT.H_SCROLL | SWT.V_SCROLL); ComposedAdapterFactory adapterFactory = new ComposedAdapterFactory( ComposedAdapterFactory.Descriptor.Registry.INSTANCE); AdapterFactoryLabelProvider labelProvider = new AdapterFactoryLabelProvider(adapterFactory); managedPropertiesViewer.setLabelProvider(labelProvider); managedPropertiesViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory)); final Tree tree = managedPropertiesViewer.getTree(); tree.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1)); tree.setLinesVisible(true); tree.setHeaderVisible(true); managedPropertiesViewer .setColumnProperties(new String[] { "property", "newValue", "profile", "profileValue" }); final TreeViewerColumn propertyViewerColumn = new TreeViewerColumn(managedPropertiesViewer, SWT.NONE); final TreeColumn propertyColumn = propertyViewerColumn.getColumn(); propertyViewerColumn .setLabelProvider(new DecoratingColumLabelProvider(labelProvider, new DialogLabelDecorator())); propertyColumn.setText("Property"); propertyColumn.setResizable(true); final TreeViewerColumn newValueViewerColumn = new TreeViewerColumn(managedPropertiesViewer, SWT.NONE); newValueViewerColumn .setLabelProvider(new DecoratingColumLabelProvider(labelProvider, new DialogLabelDecorator()) { @Override public String getText(Object element) { if (element instanceof PropertyItem) { PropertyItem propertyItem = (PropertyItem) element; return PreferencesFactory.eINSTANCE .convertEscapedString(propertyItem.getProperty().getValue()); } return ""; } @Override public Image getImage(Object element) { return null; } }); final TreeColumn newValueColumn = newValueViewerColumn.getColumn(); newValueColumn.setText("New Value"); newValueColumn.setResizable(true); final TreeViewerColumn profileViewerColumn = new TreeViewerColumn(managedPropertiesViewer, SWT.NONE); profileViewerColumn .setLabelProvider(new DecoratingColumLabelProvider(labelProvider, new DialogLabelDecorator()) { @Override public String getText(Object element) { if (element instanceof PropertyItem) { PropertyItem propertyItem = (PropertyItem) element; Property managingProperty = propertyItem.getOtherProperty(); PreferenceFilter managingFilter = getManagingFilter(managingProperty); if (managingFilter != null) { PreferenceProfile preferenceProfile = managingFilter.getPreferenceProfile(); Project project = preferenceProfile.getProject(); return project.getPreferenceNode().getName() + "/" + preferenceProfile.getName(); } } return ""; } private PreferenceFilter getManagingFilter(Property managingProperty) { String name = managingProperty.getName(); PreferenceNode preferenceNode = managingProperty.getParent(); WorkspaceConfiguration workspaceConfiguration = (WorkspaceConfiguration) managingProperty .eResource().getContents().get(0); String projectName = managingProperty.getScope().getName(); Project project = workspaceConfiguration.getProject(projectName); for (PreferenceProfile preferenceProfile : project.getPreferenceProfiles()) { for (PreferenceFilter preferenceFilter : preferenceProfile.getPreferenceFilters()) { if (preferenceFilter.getPreferenceNode() == preferenceNode && preferenceFilter.matches(name)) { return preferenceFilter; } } } return null; } @Override public Image getImage(Object element) { if (element instanceof PropertyItem) { PropertyItem propertyItem = (PropertyItem) element; PreferenceFilter managingFilter = getManagingFilter( propertyItem.getOtherProperty()); if (managingFilter != null) { return labelProvider.getImage(managingFilter.getPreferenceProfile()); } } return null; } }); final TreeColumn profileColumn = profileViewerColumn.getColumn(); profileColumn.setText("Profile"); profileColumn.setResizable(true); final TreeViewerColumn profileValueViewerColumn = new TreeViewerColumn(managedPropertiesViewer, SWT.NONE); profileValueViewerColumn .setLabelProvider(new DecoratingColumLabelProvider(labelProvider, new DialogLabelDecorator()) { @Override public String getText(Object element) { if (element instanceof PropertyItem) { PropertyItem propertyItem = (PropertyItem) element; return PreferencesFactory.eINSTANCE .convertEscapedString(propertyItem.getOtherProperty().getValue()); } return ""; } @Override public Image getImage(Object element) { return null; } }); final TreeColumn profileValueColumn = profileValueViewerColumn.getColumn(); profileValueColumn.setText("Profile Value"); profileValueColumn.setResizable(true); final ControlAdapter columnResizer = new ControlAdapter() { @Override public void controlResized(ControlEvent e) { int width = tree.getSize().x; ScrollBar bar = tree.getVerticalBar(); if (bar != null && bar.isVisible()) { width -= bar.getSize().x; } int columnWidth = width * 4 / 9; propertyColumn.setWidth(columnWidth); int remainingWidth = width - columnWidth; columnWidth = remainingWidth * 4 / 9; profileColumn.setWidth(columnWidth); remainingWidth -= columnWidth; newValueColumn.setWidth(remainingWidth / 2); profileValueColumn.setWidth(remainingWidth - remainingWidth / 2); tree.removeControlListener(this); } }; tree.addControlListener(columnResizer); managedPropertiesViewer.setInput(managedPropertiesInput); managedPropertiesViewer.expandAll(); Label separator = new Label(container, SWT.HORIZONTAL | SWT.SEPARATOR); separator.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); } if (unmanagedPropertiesInput != null) { Label label = new Label(container, SWT.NONE); label.setText("Unmanaged Properties:"); label.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); Button editButton = new Button(container, SWT.CHECK); editButton.setText("Edit"); editButton.setSelection(edit); editButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { edit = !edit; ProjectConfigSynchronizerPreferences.setEdit(edit); ProjectConfigSynchronizerPreferences.flush(); } }); editButton.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); unmanagedPropertiesViewer = new TreeViewer(container, SWT.FULL_SELECTION | SWT.H_SCROLL | SWT.V_SCROLL); ComposedAdapterFactory adapterFactory = new ComposedAdapterFactory( ComposedAdapterFactory.Descriptor.Registry.INSTANCE); AdapterFactoryLabelProvider labelProvider = new AdapterFactoryLabelProvider(adapterFactory); unmanagedPropertiesViewer.setLabelProvider(labelProvider); unmanagedPropertiesViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory)); final Tree tree = unmanagedPropertiesViewer.getTree(); tree.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1)); tree.setLinesVisible(true); tree.setHeaderVisible(true); unmanagedPropertiesViewer.setColumnProperties(new String[] { "property", "newValue", "oldValue" }); final TreeViewerColumn propertyViewerColumn = new TreeViewerColumn(unmanagedPropertiesViewer, SWT.NONE); final TreeColumn propertyColumn = propertyViewerColumn.getColumn(); propertyViewerColumn .setLabelProvider(new DecoratingColumLabelProvider(labelProvider, new DialogLabelDecorator())); propertyColumn.setText("Property"); propertyColumn.setResizable(true); final TreeViewerColumn newValueViewerColumn = new TreeViewerColumn(unmanagedPropertiesViewer, SWT.NONE); newValueViewerColumn .setLabelProvider(new DecoratingColumLabelProvider(labelProvider, new DialogLabelDecorator()) { @Override public String getText(Object element) { if (element instanceof PropertyItem) { PropertyItem propertyItem = (PropertyItem) element; return PreferencesFactory.eINSTANCE .convertEscapedString(propertyItem.getProperty().getValue()); } return ""; } @Override public Image getImage(Object element) { return null; } }); final TreeColumn newValueColumn = newValueViewerColumn.getColumn(); newValueColumn.setText("New Value"); newValueColumn.setResizable(true); final TreeViewerColumn oldValueValuerColumn = new TreeViewerColumn(unmanagedPropertiesViewer, SWT.NONE); oldValueValuerColumn .setLabelProvider(new DecoratingColumLabelProvider(labelProvider, new DialogLabelDecorator()) { @Override public String getText(Object element) { if (element instanceof PropertyItem) { PropertyItem propertyItem = (PropertyItem) element; Property otherProperty = propertyItem.getOtherProperty(); if (otherProperty != null) { return PreferencesFactory.eINSTANCE .convertEscapedString(otherProperty.getValue()); } } return ""; } @Override public Image getImage(Object element) { return null; } }); final TreeColumn oldValueColumn = oldValueValuerColumn.getColumn(); oldValueColumn.setText("Old Value"); oldValueColumn.setResizable(true); final ControlAdapter columnResizer = new ControlAdapter() { @Override public void controlResized(ControlEvent e) { int width = tree.getSize().x; ScrollBar bar = tree.getVerticalBar(); if (bar != null && bar.isVisible()) { width -= bar.getSize().x; } int columnWidth = width / 2; propertyColumn.setWidth(columnWidth); int remainingWidth = width - columnWidth; columnWidth = remainingWidth * 2; newValueColumn.setWidth(remainingWidth / 2); oldValueColumn.setWidth(remainingWidth - remainingWidth / 2); tree.removeControlListener(this); } }; tree.addControlListener(columnResizer); unmanagedPropertiesViewer.setInput(unmanagedPropertiesInput); unmanagedPropertiesViewer.expandAll(); Label separator = new Label(container, SWT.HORIZONTAL | SWT.SEPARATOR); separator.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); } }
From source file:org.eclipse.paho.mqtt.ui.support.tree.TreeViewerColumnBuilder.java
License:Open Source License
/** * Builds the column and returns the TreeViewerColumn *//* w w w . j a v a2 s . c o m*/ @SuppressWarnings({ "unchecked", "rawtypes" }) public TreeViewerColumn build() { // create column TreeViewerColumn viewerColumn = new TreeViewerColumn(builder.getViewer(), style); TreeColumn column = viewerColumn.getColumn(); if (headerText != null) { column.setText(headerText); } column.setMoveable(moveable); column.setResizable(resizable); // set label provider if (cellLabelProvider != null) { viewerColumn.setLabelProvider(cellLabelProvider); } else { if (propertyName == null) { viewerColumn.setLabelProvider(new ColumnLabelProvider()); } else { PropertyDescriptor descriptor = builder.getPropertyDescriptor(propertyName); viewerColumn.setLabelProvider(new PropertyCellLabelProvider(descriptor, valueFormatter)); } } // set editing support if (editingSupport != null) { viewerColumn.setEditingSupport(editingSupport); } return viewerColumn; }
From source file:org.eclipse.paho.mqtt.ui.views.NavigationView.java
License:Open Source License
@Override public void createPartControl(Composite parent) { setPartName(Messages.NAV_TREE_TITLE); // load the data from data store connections.addAll(Paho.loadConnections()); Collections.sort(connections, new Comparator<Connection>() { @Override//from w w w.jav a 2s. c om public int compare(Connection o1, Connection o2) { return o1.getName().compareToIgnoreCase(o2.getName()); } }); // build tree TreeViewerBuilder builder = new TreeViewerBuilder(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION | SWT.BORDER); builder.contentProvider(new NavTreeContentProvider()).labelProvider(new NavTreeLabelProvider()) .selectionChangedListener(new ISelectionChangedListener() { @SuppressWarnings("unchecked") public void selectionChanged(final SelectionChangedEvent event) { Display.getDefault().asyncExec(new Runnable() { @Override public void run() { IStructuredSelection selection = (IStructuredSelection) event.getSelection(); selectedConnections = selection.toList(); // only open one connection each selection Connection connection = (Connection) selection.getFirstElement(); if (connection != null) { IEditorPart editor = Paho.openConnectionEditor(connection); editors.put(connection.getId(), editor); } } }); } }).makeEditable().input(connections); // build view viewer = builder.build(); // build column final TreeViewerColumn column = builder.columnBuilder().labelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { return ((Connection) element).getName(); } @Override public Image getImage(Object obj) { return Images.get(ImageKeys.IMG_CONNECTION); } @Override public String getToolTipText(Object element) { return Messages.TOOLTIP_DBCLICK_TO_EDIT; } }).editingSupport(new NavTreeEditor(viewer)).build(); // control listener viewer.getControl().addControlListener(new ControlAdapter() { @Override public void controlResized(ControlEvent e) { column.getColumn().setWidth(((Tree) e.getSource()).getBounds().width - 10); } }); // Add action final Action addAction = new Action() { @Override public String getText() { return Messages.LABEL_NEW_CONNECTION; } @Override public ImageDescriptor getImageDescriptor() { return Images.getDescriptor(ImageKeys.IMG_ADD); } @Override public void run() { // send new connection event to request connection creation on // nav tree Paho.getEventService().sendEvent(Events.of(Selector.ofNewConnection())); } }; // Delete action final Action deleteAction = new Action() { @Override public String getText() { return Messages.LABEL_DELETE; } @Override public ImageDescriptor getImageDescriptor() { return Images.getDescriptor(ImageKeys.IMG_REMOVE); } @Override public void run() { // confirm deletion if (!MessageDialog.openConfirm(getViewSite().getShell(), Messages.NAV_TREE_DELETE_CONFIRM_TITLE, Messages.NAV_TREE_DELETE_CONFIRM_MESSAGE)) { return; } // delete connections for (Connection connection : selectedConnections) { doDelete(connection); } // make selection after deletion if (!connections.isEmpty()) { // should be previous or next of the removed? viewer.setSelection(new TreeSelection(new TreePath(new Object[] { connections.getLast() })), true); } // refresh view viewer.refresh(); } /** * @param connection */ private void doDelete(Connection connection) { // try disconnect it Paho.getConnectionManager().disconnect(connection); // remove from the view IEditorPart editor = editors.get(connection.getId()); if (editor != null) { Paho.closeConnectionEditor(editor, true); } // remove from model connections.remove(connection); // perform persistence deletion Paho.deleteConnection(connection); } }; MenuManager menuMgr = new MenuManager(); Menu menu = menuMgr.createContextMenu(viewer.getControl()); menuMgr.addMenuListener(new IMenuListener() { @Override public void menuAboutToShow(IMenuManager manager) { manager.add(addAction); ISelection selection = viewer.getSelection(); if (!selection.isEmpty()) { if (selection instanceof IStructuredSelection) { Connection connection = (Connection) ((IStructuredSelection) selection).getFirstElement(); if (connection != null) { manager.add(deleteAction); } } } } }); menuMgr.setRemoveAllWhenShown(true); viewer.getControl().setMenu(menu); // register event handlers eventService = Paho.getEventService(); eventService.registerHandler(Selector.ofNewConnection(), new IEventHandler<Void>() { @Override public void handleEvent(Event<Void> e) { Display.getDefault().asyncExec(new Runnable() { @Override public void run() { Connection connection = new Connection("connection" + index++); //$NON-NLS-1$ connections.add(connection); viewer.refresh(); // select and begin edit viewer.setSelection(new TreeSelection(new TreePath(new Object[] { connection })), true); viewer.editElement(connection, 0); // save connection Paho.saveConnection(connection); } }); } }); // auto save the connection final Runnable autoSaveJob = new Runnable() { @Override public void run() { List<Connection> copiedConnections = new ArrayList<Connection>(); copiedConnections.addAll(connections); for (Connection connection : copiedConnections) { // save connection Paho.saveConnection(connection); } } }; // save changes on data model when shutting down Runtime.getRuntime().addShutdownHook(new Thread(autoSaveJob)); }
From source file:org.eclipse.papyrus.diagram.common.dialogs.AbstractCheckedTreeColumnViewerSelectionDialog.java
License:Open Source License
/** * /* ww w.j a v a2 s . com*/ * @see org.eclipse.papyrus.diagram.common.dialogs.CustomCheckedTreeSelectionDialog#createDialogArea(org.eclipse.swt.widgets.Composite) * * @param parent * @return */ @Override protected Control createDialogArea(Composite parent) { Control ctrl = super.createDialogArea(parent); for (int i = 0; i < nbColumns; i++) { TreeViewerColumn column = new TreeViewerColumn(getTreeViewer(), SWT.NONE); column.getColumn().setText(columnTitles[i]); column.getColumn().setWidth(columnWidths[i]); column.setLabelProvider(columnCellLabelProvider[i]); EditingSupport support = getEditingSupport(i); if (support != null) { column.setEditingSupport(support); } } getTreeViewer().getTree().setLinesVisible(true); getTreeViewer().getTree().setHeaderVisible(true); getTreeViewer().getTree().addMouseListener(new MouseListener() { /** * * @see org.eclipse.swt.events.MouseListener#mouseUp(org.eclipse.swt.events.MouseEvent) * * @param e */ public void mouseUp(MouseEvent e) { //nothing to do } /** * * @see org.eclipse.swt.events.MouseListener#mouseDown(org.eclipse.swt.events.MouseEvent) * * @param e */ public void mouseDown(MouseEvent e) { //nothing to do } /** * * @see org.eclipse.swt.events.MouseListener#mouseDoubleClick(org.eclipse.swt.events.MouseEvent) * * @param e */ public void mouseDoubleClick(MouseEvent e) { //we expand the selected element Tree source = (Tree) e.getSource(); TreeItem[] item = source.getSelection(); List<?> expandedElements = Arrays.asList(getTreeViewer().getExpandedElements()); if (getTreeViewer().isExpandable(item[0].getData())) { boolean isExpanded = expandedElements.contains(item[0].getData()); item[0].setExpanded(!isExpanded); } } }); return ctrl; }