List of usage examples for org.eclipse.jface.viewers TreeViewerColumn TreeViewerColumn
public TreeViewerColumn(TreeViewer viewer, TreeColumn column)
From source file:com.arm.cmsis.pack.ui.widgets.RteComponentSelectorWidget.java
License:Open Source License
@Override public Composite createControl(Composite parent) { Tree tree = new Tree(parent, SWT.FULL_SELECTION | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER); tree.setHeaderVisible(true);/* w ww .j av a2 s . c om*/ tree.setLinesVisible(true); viewer = new TreeViewer(tree); ColumnViewerToolTipSupport.enableFor(viewer); fColumnAdvisor = new RteComponentColumnAdvisor(viewer); // Tree item name TreeViewerColumn column0 = new TreeViewerColumn(viewer, SWT.LEFT); column0.getColumn().setAlignment(SWT.LEFT); column0.getColumn().setText(CpStringsUI.RteComponentTreeWidget_SoftwareComponents); column0.getColumn().setWidth(180); column0.setEditingSupport(new AdvisedEditingSupport(viewer, fColumnAdvisor, 0)); AdvisedCellLabelProvider col0LabelProvider = new AdvisedCellLabelProvider(fColumnAdvisor, 0); // workaround jface bug: first owner-draw column is not correctly painted when column is resized col0LabelProvider.setOwnerDrawEnabled(false); column0.setLabelProvider(col0LabelProvider); // Check box for selection TreeViewerColumn column1 = new TreeViewerColumn(viewer, SWT.CENTER); column1.getColumn().setAlignment(SWT.CENTER); column1.getColumn().setText(CpStringsUI.RteComponentTreeWidget_Sel); column1.getColumn().setWidth(35); column1.setEditingSupport(new AdvisedEditingSupport(viewer, fColumnAdvisor, 1)); column1.setLabelProvider(new AdvisedCellLabelProvider(fColumnAdvisor, 1)); // Variant TreeViewerColumn column2 = new TreeViewerColumn(viewer, SWT.RIGHT); column2.getColumn().setAlignment(SWT.LEFT); column2.getColumn().setText(CpStringsUI.RteComponentTreeWidget_Variant); column2.getColumn().setWidth(110); column2.setEditingSupport(new AdvisedEditingSupport(viewer, fColumnAdvisor, 2)); column2.setLabelProvider(new AdvisedCellLabelProvider(fColumnAdvisor, 2)); // Vendor TreeViewerColumn column3 = new TreeViewerColumn(viewer, SWT.RIGHT); column3.getColumn().setAlignment(SWT.LEFT); column3.getColumn().setText(CpStringsUI.RteComponentTreeWidget_Vendor); column3.getColumn().setWidth(110); column3.setEditingSupport(new AdvisedEditingSupport(viewer, fColumnAdvisor, 3)); column3.setLabelProvider(new AdvisedCellLabelProvider(fColumnAdvisor, 3)); // Version TreeViewerColumn column4 = new TreeViewerColumn(viewer, SWT.RIGHT); column4.getColumn().setAlignment(SWT.LEFT); column4.getColumn().setText(CpStringsUI.RteComponentTreeWidget_Version); column4.getColumn().setWidth(70); column4.setEditingSupport(new AdvisedEditingSupport(viewer, fColumnAdvisor, 4)); column4.setLabelProvider(new AdvisedCellLabelProvider(fColumnAdvisor, 4)); // Description/URL TreeViewerColumn column5 = new TreeViewerColumn(viewer, SWT.RIGHT); column5.getColumn().setAlignment(SWT.LEFT); column5.getColumn().setText(CpStringsUI.RteComponentTreeWidget_Description); column5.getColumn().setWidth(400); column5.setEditingSupport(new AdvisedEditingSupport(viewer, fColumnAdvisor, 5)); column5.setLabelProvider(new AdvisedCellLabelProvider(fColumnAdvisor, 5)); RteComponentContentProvider rteContentProvider = new RteComponentContentProvider(); viewer.setContentProvider(rteContentProvider); GridData gridData = new GridData(); gridData.horizontalAlignment = SWT.FILL; gridData.verticalAlignment = SWT.FILL; gridData.grabExcessHorizontalSpace = true; gridData.grabExcessVerticalSpace = true; gridData.horizontalSpan = 2; tree.setLayoutData(gridData); if (getModelController() != null) { viewer.setInput(getModelController()); } hookContextMenu(); return tree; }
From source file:com.arm.cmsis.pack.ui.widgets.RtePackSelectorWidget.java
License:Open Source License
@Override public Composite createControl(Composite parent) { Tree tree = new Tree(parent, SWT.FULL_SELECTION | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER); tree.setHeaderVisible(true);//from w ww . j av a 2 s. c om viewer = new TreeViewer(tree); ColumnViewerToolTipSupport.enableFor(viewer); // Tree item name TreeViewerColumn column0 = new TreeViewerColumn(viewer, SWT.LEFT); tree.setLinesVisible(true); column0.getColumn().setAlignment(SWT.LEFT); column0.getColumn().setText(CpStrings.Pack); column0.getColumn().setWidth(180); fColumnAdvisor = new RtePackSelectorColumnAdvisor(viewer); column0.setEditingSupport(new AdvisedEditingSupport(viewer, fColumnAdvisor, COLPACK)); AdvisedCellLabelProvider col0LabelProvider = new AdvisedCellLabelProvider(fColumnAdvisor, COLPACK); // workaround jface bug: first owner-draw column is not correctly painted when column is resized col0LabelProvider.setOwnerDrawEnabled(false); column0.setLabelProvider(col0LabelProvider); // Check/menu box for selection TreeViewerColumn column1 = new TreeViewerColumn(viewer, SWT.LEFT); tree.setLinesVisible(true); column1.getColumn().setAlignment(SWT.LEFT); column1.getColumn().setText(CpStrings.Selection); column1.getColumn().setWidth(100); column1.setEditingSupport(new AdvisedEditingSupport(viewer, fColumnAdvisor, COLSEL)); column1.setLabelProvider(new AdvisedCellLabelProvider(fColumnAdvisor, COLSEL)); // Version TreeViewerColumn column2 = new TreeViewerColumn(viewer, SWT.RIGHT); column2.getColumn().setAlignment(SWT.LEFT); column2.getColumn().setText(CpStringsUI.RteComponentTreeWidget_Version); column2.getColumn().setWidth(70); column2.setEditingSupport(new AdvisedEditingSupport(viewer, fColumnAdvisor, COLVERSION)); column2.setLabelProvider(new AdvisedCellLabelProvider(fColumnAdvisor, COLVERSION)); // Description/URL TreeViewerColumn column3 = new TreeViewerColumn(viewer, SWT.RIGHT); column3.getColumn().setAlignment(SWT.LEFT); column3.getColumn().setText(CpStringsUI.RteComponentTreeWidget_Description); column3.getColumn().setWidth(400); column3.setEditingSupport(new AdvisedEditingSupport(viewer, fColumnAdvisor, COLDESCR)); column3.setLabelProvider(new AdvisedCellLabelProvider(fColumnAdvisor, COLDESCR)); viewer.setContentProvider(new RtePackProvider()); GridData gridData = new GridData(); gridData.horizontalAlignment = SWT.FILL; gridData.verticalAlignment = SWT.FILL; gridData.grabExcessHorizontalSpace = true; gridData.grabExcessVerticalSpace = true; gridData.horizontalSpan = 2; tree.setLayoutData(gridData); // hookContextMenu(); return tree; }
From source file:com.arm.cmsis.pack.ui.widgets.RteValidateWidget.java
License:Open Source License
@Override public Composite createControl(Composite parent) { Tree tree = new Tree(parent, SWT.FULL_SELECTION | SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER); tree.setHeaderVisible(true);//w ww . j av a 2 s . com fViewer = new TreeViewer(tree); ColumnViewerToolTipSupport.enableFor(fViewer); fColumnAdvisor = new RteValidateColumnAdvisor(fViewer); TreeViewerColumn column0 = new TreeViewerColumn(fViewer, SWT.LEFT); tree.setLinesVisible(true); column0.getColumn().setAlignment(SWT.LEFT); column0.getColumn().setText(CpStringsUI.RteValidateWidget_ValidationOutput); column0.getColumn().setWidth(400); column0.setEditingSupport(new AdvisedEditingSupport(fViewer, fColumnAdvisor, 0)); fViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { handleTreeSelectionChanged(event); } }); AdvisedCellLabelProvider col0LabelProvider = new AdvisedCellLabelProvider(fColumnAdvisor, 0); // workaround jface bug: first owner-draw column is not correctly painted when column is resized col0LabelProvider.setOwnerDrawEnabled(false); column0.setLabelProvider(col0LabelProvider); TreeViewerColumn column1 = new TreeViewerColumn(fViewer, SWT.RIGHT); column1.getColumn().setAlignment(SWT.LEFT); column1.getColumn().setText(CpStringsUI.RteValidateWidget_Description); column1.getColumn().setWidth(500); column1.setEditingSupport(new AdvisedEditingSupport(fViewer, fColumnAdvisor, 1)); column1.setLabelProvider(new AdvisedCellLabelProvider(fColumnAdvisor, 1)); RteValidateContentProvider validateProvider = new RteValidateContentProvider(); fViewer.setContentProvider(validateProvider); GridData gridData = new GridData(); gridData.horizontalAlignment = SWT.FILL; gridData.verticalAlignment = SWT.FILL; gridData.grabExcessHorizontalSpace = true; gridData.grabExcessVerticalSpace = true; tree.setLayoutData(gridData); if (getModelController() != null) { fViewer.setInput(getModelController()); } return tree; }
From source file:com.arm.cmsis.pack.widgets.RteComponentTreeWidget.java
License:Apache License
/** * Create a widget containing the RTE component * @param parent a parent composite containing this RTE component tree widget *///from w ww . jav a 2s .c om public void createControl(Composite parent) { Tree tree = new Tree(parent, SWT.FULL_SELECTION | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER); tree.setHeaderVisible(true); viewer = new TreeViewer(tree); ColumnViewerToolTipSupport.enableFor(viewer); // Tree item name TreeViewerColumn column0 = new TreeViewerColumn(viewer, SWT.LEFT); tree.setLinesVisible(true); column0.getColumn().setAlignment(SWT.LEFT); column0.getColumn().setText(SOFTWARECOMPONENT); column0.getColumn().setWidth(180); IColumnAdvisor columnAdvisor = new ColumnAdvisor(); column0.setEditingSupport(new AdvisedEditingSupport(viewer, columnAdvisor, 0)); AdvisedCellLabelProvider col0LabelProvider = new AdvisedCellLabelProvider(columnAdvisor, 0); // workaround jface bug: first owner-draw column is not correctly painted when column is resized col0LabelProvider.setOwnerDrawEnabled(false); column0.setLabelProvider(col0LabelProvider); // Check box for selection TreeViewerColumn column1 = new TreeViewerColumn(viewer, SWT.CENTER); tree.setLinesVisible(true); column1.getColumn().setAlignment(SWT.CENTER); column1.getColumn().setText("Sel."); column1.getColumn().setWidth(35); column1.setEditingSupport(new AdvisedEditingSupport(viewer, columnAdvisor, 1)); column1.setLabelProvider(new AdvisedCellLabelProvider(columnAdvisor, 1)); // Variant TreeViewerColumn column2 = new TreeViewerColumn(viewer, SWT.RIGHT); column2.getColumn().setAlignment(SWT.LEFT); column2.getColumn().setText("Variant"); column2.getColumn().setWidth(110); column2.setEditingSupport(new AdvisedEditingSupport(viewer, columnAdvisor, 2)); column2.setLabelProvider(new AdvisedCellLabelProvider(columnAdvisor, 2)); // Vendor TreeViewerColumn column3 = new TreeViewerColumn(viewer, SWT.RIGHT); column3.getColumn().setAlignment(SWT.LEFT); column3.getColumn().setText("Vendor"); column3.getColumn().setWidth(110); column3.setEditingSupport(new AdvisedEditingSupport(viewer, columnAdvisor, 3)); column3.setLabelProvider(new AdvisedCellLabelProvider(columnAdvisor, 3)); // Version TreeViewerColumn column4 = new TreeViewerColumn(viewer, SWT.RIGHT); column4.getColumn().setAlignment(SWT.LEFT); column4.getColumn().setText("Version"); column4.getColumn().setWidth(70); column4.setEditingSupport(new AdvisedEditingSupport(viewer, columnAdvisor, 4)); column4.setLabelProvider(new AdvisedCellLabelProvider(columnAdvisor, 4)); // Description/URL TreeViewerColumn column5 = new TreeViewerColumn(viewer, SWT.RIGHT); column5.getColumn().setAlignment(SWT.LEFT); column5.getColumn().setText("Description"); column5.getColumn().setWidth(400); column5.setEditingSupport(new AdvisedEditingSupport(viewer, columnAdvisor, 5)); column5.setLabelProvider(new AdvisedCellLabelProvider(columnAdvisor, 5)); RteContentProvider rteContentProvider = new RteContentProvider(); viewer.setContentProvider(rteContentProvider); GridData gridData = new GridData(); gridData.horizontalAlignment = SWT.FILL; gridData.verticalAlignment = SWT.FILL; gridData.grabExcessHorizontalSpace = true; gridData.grabExcessVerticalSpace = true; gridData.horizontalSpan = 2; tree.setLayoutData(gridData); if (getConfiguration() != null) { viewer.setInput(getConfiguration().getComponents()); } }
From source file:com.arm.cmsis.pack.widgets.RteValidateWidget.java
License:Apache License
public void createControl(Composite parent) { Tree tree = new Tree(parent, SWT.FULL_SELECTION | SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER); tree.setHeaderVisible(true);// ww w . jav a 2 s . c o m fViewer = new TreeViewer(tree); ColumnViewerToolTipSupport.enableFor(fViewer); TreeViewerColumn column0 = new TreeViewerColumn(fViewer, SWT.LEFT); tree.setLinesVisible(true); column0.getColumn().setAlignment(SWT.LEFT); column0.getColumn().setText("Validation Output"); column0.getColumn().setWidth(500); IColumnAdvisor columnAdvisor = new ColumnAdvisor(); column0.setEditingSupport(new AdvisedEditingSupport(fViewer, columnAdvisor, 0)); fViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { handleTreeSelectionChanged(event); } }); AdvisedCellLabelProvider col0LabelProvider = new AdvisedCellLabelProvider(columnAdvisor, 0); // workaround jface bug: first owner-draw column is not correctly painted when column is resized col0LabelProvider.setOwnerDrawEnabled(false); column0.setLabelProvider(col0LabelProvider); TreeViewerColumn column1 = new TreeViewerColumn(fViewer, SWT.RIGHT); column1.getColumn().setAlignment(SWT.LEFT); column1.getColumn().setText("Description"); column1.getColumn().setWidth(500); column1.setEditingSupport(new AdvisedEditingSupport(fViewer, columnAdvisor, 1)); column1.setLabelProvider(new AdvisedCellLabelProvider(columnAdvisor, 1)); ValidateProvider validateProvider = new ValidateProvider(); fViewer.setContentProvider(validateProvider); GridData gridData = new GridData(); gridData.horizontalAlignment = SWT.FILL; gridData.verticalAlignment = SWT.FILL; gridData.grabExcessHorizontalSpace = true; gridData.grabExcessVerticalSpace = true; tree.setLayoutData(gridData); if (getConfiguration() != null) { fViewer.setInput(getConfiguration()); } }
From source file:com.bdaum.zoom.peer.internal.preferences.PeerPreferencePage.java
License:Open Source License
@SuppressWarnings("unused") private Control createSharedGroup(CTabFolder parent) { Composite comp = new Composite(parent, SWT.NONE); comp.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); comp.setLayout(new GridLayout()); Composite innerComp = new Composite(comp, SWT.NONE); GridLayout layout = new GridLayout(2, false); layout.marginWidth = 0;//from ww w .j av a2s . c o m layout.marginHeight = 20; innerComp.setLayout(layout); innerComp.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); Label label = new Label(innerComp, SWT.WRAP); label.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false, 2, 1)); label.setText(Messages.PeerPreferencePage_shared_cats_msg); catViewer = new TreeViewer(innerComp, SWT.FULL_SELECTION | SWT.SINGLE | SWT.BORDER | SWT.V_SCROLL); catViewer.getTree().setLinesVisible(true); catViewer.getTree().setHeaderVisible(true); catViewer.getTree().setLayoutData(new GridData(SWT.BEGINNING, SWT.FILL, false, true)); TreeViewerColumn col1 = new TreeViewerColumn(catViewer, SWT.NONE); col1.getColumn().setWidth(400); col1.getColumn().setText(Messages.PeerPreferencePage_path); col1.setLabelProvider(ZColumnLabelProvider.getDefaultInstance()); TreeViewerColumn col2 = new TreeViewerColumn(catViewer, SWT.NONE); col2.getColumn().setWidth(200); col2.getColumn().setText(Messages.PeerPreferencePage_privacy); col2.setLabelProvider(new ZColumnLabelProvider() { @Override public String getText(Object element) { if (element instanceof SharedCatalog) return translatePrivacy(((SharedCatalog) element).getPrivacy()); if (element instanceof PeerDefinition) return ((PeerDefinition) element).getRightsLabel(); return ""; //$NON-NLS-1$ } }); col1.setEditingSupport(new EditingSupport(catViewer) { @Override protected void setValue(Object element, Object value) { if (element instanceof PeerDefinition && value instanceof PeerDefinition) { ((PeerDefinition) element).setHost(((PeerDefinition) value).getHost()); ((PeerDefinition) element).setPort(((PeerDefinition) value).getPort()); catViewer.update(element, null); validate(); } } @Override protected Object getValue(Object element) { if (element instanceof PeerDefinition) return element; return null; } @Override protected CellEditor getCellEditor(final Object element) { if (element instanceof PeerDefinition) { return new DialogCellEditor(catViewer.getTree()) { @Override protected Object openDialogBox(Control cellEditorWindow) { PeerDefinitionDialog dialog = new PeerDefinitionDialog(cellEditorWindow.getShell(), (PeerDefinition) element, true, true, true); if (dialog.open() == Window.OK) return dialog.getResult(); return null; } }; } return null; } @Override protected boolean canEdit(Object element) { return (element instanceof PeerDefinition); } }); col2.setEditingSupport(new EditingSupport(catViewer) { @Override protected void setValue(Object element, Object value) { if (element instanceof SharedCatalog && value instanceof Integer) { ((SharedCatalog) element).setPrivacy((Integer) value); catViewer.update(element, null); } else if (element instanceof PeerDefinition && value instanceof PeerDefinition) { ((PeerDefinition) element).setRights(((PeerDefinition) value).getRights()); catViewer.update(element, null); } } @Override protected Object getValue(Object element) { if (element instanceof SharedCatalog) return ((SharedCatalog) element).getPrivacy(); if (element instanceof PeerDefinition) return element; return null; } @Override protected CellEditor getCellEditor(final Object element) { if (element instanceof SharedCatalog) { ComboBoxViewerCellEditor editor = new ComboBoxViewerCellEditor(catViewer.getTree()); editor.setLabelProvider(new LabelProvider() { @Override public String getText(Object element) { return translatePrivacy(((Integer) element)); } }); editor.setContentProvider(ArrayContentProvider.getInstance()); editor.setInput(((SharedCatalog) element).getRestrictions().isEmpty() ? new Integer[] { QueryField.SAFETY_RESTRICTED, QueryField.SAFETY_MODERATE, QueryField.SAFETY_SAFE, QueryField.SAFETY_LOCAL } : new Integer[] { QueryField.SAFETY_RESTRICTED, QueryField.SAFETY_MODERATE, QueryField.SAFETY_SAFE }); return editor; } if (element instanceof PeerDefinition) { return new DialogCellEditor(catViewer.getTree()) { @Override protected Object openDialogBox(Control cellEditorWindow) { PeerDefinitionDialog dialog = new PeerDefinitionDialog(cellEditorWindow.getShell(), (PeerDefinition) element, false, true, false); if (dialog.open() == Window.OK) return dialog.getResult(); return null; } @Override protected void updateContents(Object value) { if (value instanceof PeerDefinition) super.updateContents(((PeerDefinition) value).getRightsLabel()); } }; } return null; } @Override protected boolean canEdit(Object element) { return true; } }); catViewer.setContentProvider(new ITreeContentProvider() { public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { // do nothing } public void dispose() { // do nothing } public boolean hasChildren(Object element) { if (element instanceof SharedCatalog) return !((SharedCatalog) element).getRestrictions().isEmpty(); return false; } public Object getParent(Object element) { if (element instanceof PeerDefinition) return ((PeerDefinition) element).getParent(); return null; } public Object[] getElements(Object inputElement) { if (inputElement instanceof Collection<?>) return ((Collection<?>) inputElement).toArray(); return EMPTY; } public Object[] getChildren(Object parentElement) { if (parentElement instanceof SharedCatalog) return ((SharedCatalog) parentElement).getRestrictions().toArray(); return EMPTY; } }); new SortColumnManager(catViewer, new int[] { SWT.UP, SWT.NONE }, 0); catViewer.setComparator(ZViewerComparator.INSTANCE); UiUtilities.installDoubleClickExpansion(catViewer); Composite buttonGroup = new Composite(innerComp, SWT.NONE); buttonGroup.setLayoutData(new GridData(SWT.END, SWT.BEGINNING, false, true)); buttonGroup.setLayout(new GridLayout()); addCurrentButton = new Button(buttonGroup, SWT.PUSH); addCurrentButton.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false)); addCurrentButton.setText(Messages.PeerPreferencePage_add_current); addCurrentButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { String catFile = Core.getCore().getDbManager().getFileName(); SharedCatalog cat = new SharedCatalog(catFile, QueryField.SAFETY_RESTRICTED); @SuppressWarnings("unchecked") List<SharedCatalog> catalogs = (List<SharedCatalog>) catViewer.getInput(); catalogs.add(cat); catViewer.setInput(catalogs); catViewer.setSelection(new StructuredSelection(cat)); updateButtons(); } }); final Button addButton = new Button(buttonGroup, SWT.PUSH); addButton.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false)); addButton.setText(Messages.PeerPreferencePage_add); addButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { FileDialog dialog = new FileDialog(getShell(), SWT.OPEN); dialog.setFileName(Core.getCore().getDbManager().getFileName()); String filename = dialog.open(); if (filename != null) { SharedCatalog cat = new SharedCatalog(filename, QueryField.SAFETY_RESTRICTED); @SuppressWarnings("unchecked") List<SharedCatalog> catalogs = (List<SharedCatalog>) catViewer.getInput(); catalogs.add(cat); catViewer.setInput(catalogs); catViewer.setSelection(new StructuredSelection(cat)); } } }); addRestrictionButton = new Button(buttonGroup, SWT.PUSH); addRestrictionButton.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false)); addRestrictionButton.setText(Messages.PeerPreferencePage_add_restriction); addRestrictionButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { IStructuredSelection selection = (IStructuredSelection) catViewer.getSelection(); Object firstElement = selection.getFirstElement(); if (firstElement instanceof SharedCatalog) { PeerDefinitionDialog dialog = new PeerDefinitionDialog(getControl().getShell(), null, true, true, true); if (dialog.open() == PeerDefinitionDialog.OK) { PeerDefinition result = dialog.getResult(); result.setParent((SharedCatalog) firstElement); catViewer.setInput(catViewer.getInput()); catViewer.expandToLevel(firstElement, 1); catViewer.setSelection(new StructuredSelection(result)); validate(); } } } }); removeCatButton = new Button(buttonGroup, SWT.PUSH); removeCatButton.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false)); removeCatButton.setText(Messages.PeerPreferencePage_remove); removeCatButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { IStructuredSelection sel = (IStructuredSelection) catViewer.getSelection(); Object firstElement = sel.getFirstElement(); if (firstElement instanceof SharedCatalog) { @SuppressWarnings("unchecked") List<SharedCatalog> catalogs = (List<SharedCatalog>) catViewer.getInput(); catalogs.remove(firstElement); catViewer.setInput(catalogs); validate(); updateButtons(); } } }); catViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { updateButtons(); } }); return comp; }
From source file:com.bdaum.zoom.ui.internal.dialogs.AlbumSelectionDialog.java
License:Open Source License
@SuppressWarnings("unused") @Override//from ww w .ja v a 2 s .c o m protected Control createDialogArea(final Composite parent) { Composite area = (Composite) super.createDialogArea(parent); Composite composite = new Composite(area, SWT.NONE); composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); composite.setLayout(new GridLayout()); composite.setLayout(new GridLayout(2, false)); viewer = new CheckboxTreeViewer(composite, SWT.BORDER | SWT.V_SCROLL | SWT.FULL_SELECTION); TreeViewerColumn col1 = new TreeViewerColumn(viewer, SWT.NONE); col1.getColumn().setWidth(200); col1.getColumn().setText(Messages.AlbumSelectionDialog_name); col1.setLabelProvider(new ZColumnLabelProvider() { @Override public String getText(Object element) { if (element instanceof SmartCollectionImpl) return ((SmartCollectionImpl) element).getName(); return element.toString(); } }); if (!small) { TreeViewerColumn col2 = new TreeViewerColumn(viewer, SWT.NONE); col2.getColumn().setWidth(250); col2.getColumn().setText(Messages.AlbumSelectionDialog_description); col2.setLabelProvider(new ZColumnLabelProvider() { @Override public String getText(Object element) { if (element instanceof SmartCollectionImpl) return ((SmartCollectionImpl) element).getDescription(); return element.toString(); } }); viewer.getTree().setHeaderVisible(true); } viewer.setContentProvider(new ITreeContentProvider() { public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { // do nothing } public void dispose() { // do nothing } public boolean hasChildren(Object element) { if (element instanceof SmartCollection) return !((SmartCollection) element).getSubSelection().isEmpty(); return false; } public Object getParent(Object element) { if (element instanceof SmartCollection) return ((SmartCollection) element).getSmartCollection_subSelection_parent(); return null; } public Object[] getElements(Object inputElement) { if (inputElement instanceof List) { List<SmartCollection> rootalbums = new ArrayList<SmartCollection>(); for (Object obj : (List<?>) inputElement) if (obj instanceof SmartCollection) { SmartCollection album = (SmartCollection) obj; if (album.getSmartCollection_subSelection_parent() == null) rootalbums.add(album); } return rootalbums.toArray(); } return null; } public Object[] getChildren(Object parentElement) { if (parentElement instanceof SmartCollection) return ((SmartCollection) parentElement).getSubSelection().toArray(); return EMPTY; } }); UiUtilities.installDoubleClickExpansion(viewer); viewer.addCheckStateListener(new ICheckStateListener() { public void checkStateChanged(CheckStateChangedEvent event) { validate(); } }); GridData layoutData = new GridData(SWT.FILL, SWT.FILL, true, true); layoutData.heightHint = small ? 150 : 400; viewer.getControl().setLayoutData(layoutData); viewer.setComparator(ZViewerComparator.INSTANCE); if (assignedAlbums != null && !assignedAlbums.isEmpty()) viewer.setFilters(new ViewerFilter[] { new ViewerFilter() { @Override public boolean select(Viewer v, Object parentElement, Object element) { return !assignedAlbums.contains(((SmartCollectionImpl) element).getName()); } } }); viewer.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { if (cntrlDwn) { SmartCollectionImpl sm = (SmartCollectionImpl) ((IStructuredSelection) viewer.getSelection()) .getFirstElement(); if (sm != null) { CollectionEditDialog dialog = new CollectionEditDialog(getShell(), sm, Messages.AlbumSelectionDialog_edit_person, Messages.AlbumSelectionDialog_person_album_msg, false, true, false, false); if (dialog.open() == Window.OK) { final SmartCollectionImpl album = dialog.getResult(); if (album != null) { Set<Object> toBeDeleted = new HashSet<Object>(); List<Object> toBeStored = new ArrayList<Object>(); Utilities.updateCollection(dbManager, sm, album, toBeDeleted, toBeStored); dbManager.safeTransaction(toBeDeleted, toBeStored); } viewer.update(sm, null); } } cntrlDwn = false; } validate(); } }); viewer.getControl().addKeyListener(new KeyAdapter() { @Override public void keyPressed(KeyEvent e) { if (e.keyCode == SWT.CTRL) cntrlDwn = true; } @Override public void keyReleased(KeyEvent e) { if (e.keyCode == SWT.CTRL) cntrlDwn = false; } }); if (!small) new AllNoneGroup(composite, new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { if (e.widget.getData() == AllNoneGroup.ALL) { viewer.expandAll(); viewer.setCheckedElements(albums.toArray()); } else viewer.setCheckedElements(EMPTY); validate(); } }); return area; }
From source file:com.bdaum.zoom.ui.internal.dialogs.CodesDialog.java
License:Open Source License
private void createTreeColumn(TreeViewer treeViewer, int width, String text, int index) { TreeViewerColumn col = new TreeViewerColumn(treeViewer, SWT.NONE); col.getColumn().setWidth(width);/*from www .j a va 2 s. c om*/ col.getColumn().setText(text); col.setLabelProvider(new TopicLabelProvider(index)); }
From source file:com.bdaum.zoom.ui.internal.dialogs.ExhibitionEditDialog.java
License:Open Source License
private void createColumn(TreeViewer aViewer, final int index, int width, String label, int align, final boolean frame) { TreeViewerColumn col = new TreeViewerColumn(aViewer, SWT.NONE); TreeColumn column = col.getColumn(); column.setWidth(width);// w w w . j a v a2s. com column.setText(label); column.setAlignment(align); col.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { int tara = 0; if (element instanceof Exhibit) tara = computeTara(frame, (Exhibit) element); switch (index) { case 0: if (element instanceof Wall) return ((Wall) element).getLocation(); if (element instanceof Exhibit) return ((Exhibit) element).getTitle(); break; case 1: if (element instanceof Exhibit) return printDistance(((Exhibit) element).getX(), tara); break; case 2: if (element instanceof Exhibit) return printDistance(((Exhibit) element).getY(), tara); break; case 3: if (element instanceof Exhibit) return printDimension(((Exhibit) element).getWidth(), tara); break; case 4: if (element instanceof Exhibit) return printDimension(((Exhibit) element).getHeight(), tara); break; case 5: if (element instanceof Exhibit) { Exhibit exhibit = (Exhibit) element; AssetImpl asset = dbManager.obtainAsset(exhibit.getAsset()); if (asset != null) return String.valueOf((int) (asset.getWidth() * 25.4d / exhibit.getWidth())); } break; case 6: if (element instanceof Exhibit) return ((Exhibit) element).getSold() ? Messages.ExhibitionEditDialog_sold : ""; //$NON-NLS-1$ break; } return ""; //$NON-NLS-1$ } protected String printDistance(int dist, int tara) { af.setMaximumFractionDigits(2); af.setMinimumFractionDigits(2); if (unit == 'i') return af.format((dist + 2 * tara) / 304.8d) + " ft"; //$NON-NLS-1$ return af.format((dist + tara) / 1000d) + " m"; //$NON-NLS-1$ } protected String printDimension(int dim, int tara) { af.setMaximumFractionDigits(1); af.setMinimumFractionDigits(1); if (unit == 'i') return af.format((dim + 2 * tara) / 25.4d) + " in"; //$NON-NLS-1$ return af.format((dim + 2 * tara) / 10d) + " cm"; //$NON-NLS-1$ } }); }
From source file:com.bdaum.zoom.ui.internal.preferences.HoverPreferencePage.java
License:Open Source License
@SuppressWarnings("unused") private Composite createTemplatesPage(CTabFolder tabFolder) { Composite comp = new Composite(tabFolder, SWT.NONE); comp.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); comp.setLayout(new GridLayout()); new Label(comp, SWT.WRAP).setText(Messages.getString("HoverPreferencePage.define")); //$NON-NLS-1$ new Label(comp, SWT.NONE); Composite composite = new Composite(comp, SWT.NONE); composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); composite.setLayout(new GridLayout(2, false)); viewer = new TreeViewer(composite, SWT.BORDER | SWT.V_SCROLL | SWT.SINGLE | SWT.FULL_SELECTION); GridData layoutData = new GridData(SWT.FILL, SWT.FILL, true, true); layoutData.heightHint = 250;/*from w w w . j a v a 2 s . c om*/ viewer.getTree().setLayoutData(layoutData); viewer.setContentProvider(new ITreeContentProvider() { @Override public boolean hasChildren(Object element) { return element instanceof Category; } @Override public Object getParent(Object element) { if (element instanceof HoverNode) return ((HoverNode) element).getParent(); return null; } @Override public Object[] getElements(Object inputElement) { if (inputElement instanceof Object[]) return (Object[]) inputElement; return null; } @Override public Object[] getChildren(Object parentElement) { if (parentElement instanceof Category) return ((Category) parentElement).getChildren().toArray(); return null; } }); viewer.setComparator(new ViewerComparator()); ZColumnViewerToolTipSupport.enableFor(viewer); TreeViewerColumn col1 = new TreeViewerColumn(viewer, SWT.NONE); col1.getColumn().setWidth(280); col1.setLabelProvider(new ZColumnLabelProvider() { @Override public String getText(Object element) { return element.toString(); } @Override public String getToolTipText(Object element) { if (element instanceof HoverNode && UiActivator.getDefault().getShowHover()) return ((HoverNode) element).getContribution().getDescription(); return super.getToolTipText(element); } }); viewer.addDoubleClickListener(this); viewer.addSelectionChangedListener(this); TreeViewerColumn col2 = new TreeViewerColumn(viewer, SWT.NONE); col2.getColumn().setWidth(80); col2.setLabelProvider(new ZColumnLabelProvider() { @Override public String getText(Object element) { if (element instanceof HoverNode) return testForUnModified((HoverNode) element) ? Messages.getString("HoverPreferencePage.default") //$NON-NLS-1$ : Messages.getString("HoverPreferencePage.modified"); //$NON-NLS-1$ return ""; //$NON-NLS-1$ } }); viewer.addDoubleClickListener(this); viewer.addSelectionChangedListener(this); Composite buttonArea = new Composite(composite, SWT.NONE); buttonArea.setLayoutData(new GridData(SWT.END, SWT.FILL, false, true)); buttonArea.setLayout(new GridLayout()); editButton = new Button(buttonArea, SWT.PUSH); editButton.setText(Messages.getString("HoverPreferencePage.edit")); //$NON-NLS-1$ editButton.addListener(SWT.Selection, this); resetButton = new Button(buttonArea, SWT.PUSH); resetButton.setText(Messages.getString("HoverPreferencePage.reset")); //$NON-NLS-1$ resetButton.addListener(SWT.Selection, this); return comp; }