List of usage examples for org.eclipse.jface.viewers TreeViewerColumn TreeViewerColumn
public TreeViewerColumn(TreeViewer viewer, TreeColumn column)
From source file:com.android.ide.eclipse.gltrace.editors.GLFunctionTraceViewer.java
License:Apache License
private void createFrameTraceView(Composite parent) { Composite c = new Composite(parent, SWT.NONE); c.setLayout(new GridLayout(2, false)); GridData gd = new GridData(GridData.FILL_BOTH); c.setLayoutData(gd);//from ww w. j av a 2 s . c o m final Tree tree = new Tree(c, SWT.BORDER | SWT.FULL_SELECTION | SWT.MULTI); gd = new GridData(GridData.FILL_BOTH); tree.setLayoutData(gd); tree.setLinesVisible(true); tree.setHeaderVisible(true); mFrameTreeViewer = new TreeViewer(tree); CellLabelProvider labelProvider = new GLFrameLabelProvider(); // column showing the GL context id TreeViewerColumn tvc = new TreeViewerColumn(mFrameTreeViewer, SWT.NONE); tvc.setLabelProvider(labelProvider); TreeColumn column = tvc.getColumn(); column.setText("Function"); column.setWidth(500); // column showing the GL function duration (wall clock time) tvc = new TreeViewerColumn(mFrameTreeViewer, SWT.NONE); tvc.setLabelProvider(labelProvider); column = tvc.getColumn(); column.setText("Wall Time (ns)"); column.setWidth(150); column.setAlignment(SWT.RIGHT); // column showing the GL function duration (thread time) tvc = new TreeViewerColumn(mFrameTreeViewer, SWT.NONE); tvc.setLabelProvider(labelProvider); column = tvc.getColumn(); column.setText("Thread Time (ns)"); column.setWidth(150); column.setAlignment(SWT.RIGHT); mFrameTreeViewer.setContentProvider(new GLFrameContentProvider()); mGLCallFilter = new GLCallFilter(); mFrameTreeViewer.addFilter(mGLCallFilter); // when the control is resized, give all the additional space // to the function name column. tree.addControlListener(new ControlAdapter() { @Override public void controlResized(ControlEvent e) { int w = mFrameTreeViewer.getTree().getClientArea().width; if (w > 200) { mFrameTreeViewer.getTree().getColumn(2).setWidth(100); mFrameTreeViewer.getTree().getColumn(1).setWidth(100); mFrameTreeViewer.getTree().getColumn(0).setWidth(w - 200); } } }); mDurationMinimap = new DurationMinimap(c, mTrace); gd = new GridData(GridData.FILL_VERTICAL); gd.widthHint = gd.minimumWidth = mDurationMinimap.getMinimumWidth(); mDurationMinimap.setLayoutData(gd); mDurationMinimap.addCallSelectionListener(new ICallSelectionListener() { @Override public void callSelected(int selectedCallIndex) { if (selectedCallIndex > 0 && selectedCallIndex < mTreeViewerNodes.size()) { TreeItem item = tree.getItem(selectedCallIndex); tree.select(item); tree.setTopItem(item); } } }); mVerticalScrollBar = tree.getVerticalBar(); mVerticalScrollBar.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { updateVisibleRange(); } }); }
From source file:com.android.sdkuilib.internal.repository.sdkman2.PackagesPage.java
License:Apache License
@SuppressWarnings("unused") private void createContents(Composite parent) { GridLayoutBuilder.create(parent).noMargins().columns(2); mGroupSdk = new Composite(parent, SWT.NONE); GridDataBuilder.create(mGroupSdk).hFill().vCenter().hGrab().hSpan(2); GridLayoutBuilder.create(mGroupSdk).columns(2); Label label1 = new Label(mGroupSdk, SWT.NONE); label1.setText("SDK Path:"); mTextSdkOsPath = new Text(mGroupSdk, SWT.NONE); GridDataBuilder.create(mTextSdkOsPath).hFill().vCenter().hGrab(); mTextSdkOsPath.setEnabled(false);/* w ww. j a v a 2 s. com*/ mGroupPackages = new Group(parent, SWT.NONE); GridDataBuilder.create(mGroupPackages).fill().grab().hSpan(2); mGroupPackages.setText("Packages"); GridLayoutBuilder.create(mGroupPackages).columns(1); mTreeViewer = new CheckboxTreeViewer(mGroupPackages, SWT.BORDER); mTreeViewer.addFilter(new ViewerFilter() { @Override public boolean select(Viewer viewer, Object parentElement, Object element) { return filterViewerItem(element); } }); mTreeViewer.addCheckStateListener(new ICheckStateListener() { public void checkStateChanged(CheckStateChangedEvent event) { onTreeCheckStateChanged(event); //$hide$ } }); mTreeViewer.addDoubleClickListener(new IDoubleClickListener() { public void doubleClick(DoubleClickEvent event) { onTreeDoubleClick(event); //$hide$ } }); mTree = mTreeViewer.getTree(); mTree.setLinesVisible(true); mTree.setHeaderVisible(true); GridDataBuilder.create(mTree).fill().grab(); // column name icon is set when loading depending on the current filter type // (e.g. API level or source) mColumnName = new TreeViewerColumn(mTreeViewer, SWT.NONE); mTreeColumnName = mColumnName.getColumn(); mTreeColumnName.setText("Name"); mTreeColumnName.setWidth(340); mColumnApi = new TreeViewerColumn(mTreeViewer, SWT.NONE); TreeColumn treeColumn2 = mColumnApi.getColumn(); treeColumn2.setText("API"); treeColumn2.setAlignment(SWT.CENTER); treeColumn2.setWidth(50); mColumnRevision = new TreeViewerColumn(mTreeViewer, SWT.NONE); TreeColumn treeColumn3 = mColumnRevision.getColumn(); treeColumn3.setText("Rev."); treeColumn3.setToolTipText("Revision currently installed"); treeColumn3.setAlignment(SWT.CENTER); treeColumn3.setWidth(50); mColumnStatus = new TreeViewerColumn(mTreeViewer, SWT.NONE); TreeColumn treeColumn4 = mColumnStatus.getColumn(); treeColumn4.setText("Status"); treeColumn4.setAlignment(SWT.LEAD); treeColumn4.setWidth(190); mGroupOptions = new Composite(mGroupPackages, SWT.NONE); GridDataBuilder.create(mGroupOptions).hFill().vCenter().hGrab(); GridLayoutBuilder.create(mGroupOptions).columns(6).noMargins(); // Options line 1, 6 columns Label label3 = new Label(mGroupOptions, SWT.NONE); label3.setText("Show:"); mCheckFilterNew = new Button(mGroupOptions, SWT.CHECK); mCheckFilterNew.setText("Updates/New"); mCheckFilterNew.setToolTipText("Show Updates and New"); mCheckFilterNew.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { refreshViewerInput(); } }); mCheckFilterNew.setSelection(true); mCheckFilterInstalled = new Button(mGroupOptions, SWT.CHECK); mCheckFilterInstalled.setToolTipText("Show Installed"); mCheckFilterInstalled.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { refreshViewerInput(); } }); mCheckFilterInstalled.setSelection(true); mCheckFilterInstalled.setText("Installed"); mCheckFilterObsolete = new Button(mGroupOptions, SWT.CHECK); mCheckFilterObsolete.setText("Obsolete"); mCheckFilterObsolete.setToolTipText("Also show obsolete packages"); mCheckFilterObsolete.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { refreshViewerInput(); } }); mCheckFilterObsolete.setSelection(false); Link linkSelectNew = new Link(mGroupOptions, SWT.NONE); // Note for i18n: we need to identify which link is used, and this is done by using the // text itself so for translation purposes we want to keep the <a> link strings separate. final String strLinkNew = "New"; final String strLinkUpdates = "Updates"; linkSelectNew.setText(String.format("Select <a>%1$s</a> or <a>%2$s</a>", strLinkNew, strLinkUpdates)); linkSelectNew.setToolTipText("Selects all items that are either new or updates."); GridDataBuilder.create(linkSelectNew).hFill().hGrab(); linkSelectNew.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { super.widgetSelected(e); boolean selectNew = e.text == null || e.text.equals(strLinkNew); onSelectNewUpdates(selectNew, !selectNew, false/*selectTop*/); } }); mButtonInstall = new Button(mGroupOptions, SWT.NONE); mButtonInstall.setText(""); //$NON-NLS-1$ placeholder, filled in updateButtonsState() mButtonInstall.setToolTipText("Install one or more packages"); GridDataBuilder.create(mButtonInstall).hFill().vCenter().hGrab(); mButtonInstall.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { onButtonInstall(); //$hide$ } }); // Options line 2, 6 columns Label label2 = new Label(mGroupOptions, SWT.NONE); label2.setText("Sort by:"); mCheckSortApi = new Button(mGroupOptions, SWT.RADIO); mCheckSortApi.setToolTipText("Sort by API level"); mCheckSortApi.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { if (mCheckSortApi.getSelection()) { refreshViewerInput(); copySelection(true /*toApi*/); syncViewerSelection(); } } }); mCheckSortApi.setText("API level"); mCheckSortApi.setSelection(true); mCheckSortSource = new Button(mGroupOptions, SWT.RADIO); mCheckSortSource.setText("Repository"); mCheckSortSource.setToolTipText("Sort by Repository"); mCheckSortSource.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { if (mCheckSortSource.getSelection()) { refreshViewerInput(); copySelection(false /*toApi*/); syncViewerSelection(); } } }); new Label(mGroupOptions, SWT.NONE); Link linkDeselect = new Link(mGroupOptions, SWT.NONE); linkDeselect.setText("<a>Deselect All</a>"); linkDeselect.setToolTipText("Deselects all the currently selected items"); GridDataBuilder.create(linkDeselect).hFill().hGrab(); linkDeselect.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { super.widgetSelected(e); onDeselectAll(); } }); mButtonDelete = new Button(mGroupOptions, SWT.NONE); mButtonDelete.setText(""); //$NON-NLS-1$ placeholder, filled in updateButtonsState() mButtonDelete.setToolTipText("Delete one ore more installed packages"); GridDataBuilder.create(mButtonDelete).hFill().vCenter().hGrab(); mButtonDelete.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { onButtonDelete(); //$hide$ } }); }
From source file:com.android.sdkuilib.internal.repository.ui.PackagesPage.java
License:Apache License
@SuppressWarnings("unused") private void createContents(Composite parent) { GridLayoutBuilder.create(parent).noMargins().columns(2); mGroupSdk = new Composite(parent, SWT.NONE); GridDataBuilder.create(mGroupSdk).hFill().vCenter().hGrab().hSpan(2); GridLayoutBuilder.create(mGroupSdk).columns(2); Label label1 = new Label(mGroupSdk, SWT.NONE); label1.setText("SDK Path:"); mTextSdkOsPath = new Text(mGroupSdk, SWT.NONE); GridDataBuilder.create(mTextSdkOsPath).hFill().vCenter().hGrab(); mTextSdkOsPath.setEnabled(false);//from w w w . j a v a 2 s . c om Group groupPackages = new Group(parent, SWT.NONE); mGroupPackages = groupPackages; GridDataBuilder.create(mGroupPackages).fill().grab().hSpan(2); groupPackages.setText("Packages"); GridLayoutBuilder.create(groupPackages).columns(1); mTreeViewer = new CheckboxTreeViewer(groupPackages, SWT.BORDER); mImpl.setITreeViewer(new PackagesPageImpl.ICheckboxTreeViewer() { @Override public Object getInput() { return mTreeViewer.getInput(); } @Override public void setInput(List<PkgCategory> cats) { mTreeViewer.setInput(cats); } @Override public void setContentProvider(PkgContentProvider pkgContentProvider) { mTreeViewer.setContentProvider(pkgContentProvider); } @Override public void refresh() { mTreeViewer.refresh(); } @Override public Object[] getCheckedElements() { return mTreeViewer.getCheckedElements(); } }); mTreeViewer.addFilter(new ViewerFilter() { @Override public boolean select(Viewer viewer, Object parentElement, Object element) { return filterViewerItem(element); } }); mTreeViewer.addCheckStateListener(new ICheckStateListener() { @Override public void checkStateChanged(CheckStateChangedEvent event) { onTreeCheckStateChanged(event); //$hide$ } }); mTreeViewer.addDoubleClickListener(new IDoubleClickListener() { @Override public void doubleClick(DoubleClickEvent event) { onTreeDoubleClick(event); //$hide$ } }); Tree tree = mTreeViewer.getTree(); tree.setLinesVisible(true); tree.setHeaderVisible(true); GridDataBuilder.create(tree).fill().grab(); // column name icon is set when loading depending on the current filter type // (e.g. API level or source) TreeViewerColumn columnName = new TreeViewerColumn(mTreeViewer, SWT.NONE); mTreeColumnName = columnName.getColumn(); mTreeColumnName.setText("Name"); mTreeColumnName.setWidth(340); TreeViewerColumn columnApi = new TreeViewerColumn(mTreeViewer, SWT.NONE); TreeColumn treeColumn2 = columnApi.getColumn(); treeColumn2.setText("API"); treeColumn2.setAlignment(SWT.CENTER); treeColumn2.setWidth(50); TreeViewerColumn columnRevision = new TreeViewerColumn(mTreeViewer, SWT.NONE); TreeColumn treeColumn3 = columnRevision.getColumn(); treeColumn3.setText("Rev."); treeColumn3.setToolTipText("Revision currently installed"); treeColumn3.setAlignment(SWT.CENTER); treeColumn3.setWidth(50); TreeViewerColumn columnStatus = new TreeViewerColumn(mTreeViewer, SWT.NONE); TreeColumn treeColumn4 = columnStatus.getColumn(); treeColumn4.setText("Status"); treeColumn4.setAlignment(SWT.LEAD); treeColumn4.setWidth(190); mImpl.setIColumns(wrapColumn(columnName), wrapColumn(columnApi), wrapColumn(columnRevision), wrapColumn(columnStatus)); mGroupOptions = new Composite(groupPackages, SWT.NONE); GridDataBuilder.create(mGroupOptions).hFill().vCenter().hGrab(); GridLayoutBuilder.create(mGroupOptions).columns(7).noMargins(); // Options line 1, 7 columns Label label3 = new Label(mGroupOptions, SWT.NONE); label3.setText("Show:"); mCheckFilterNew = new Button(mGroupOptions, SWT.CHECK); mCheckFilterNew.setText("Updates/New"); mCheckFilterNew.setToolTipText("Show Updates and New"); mCheckFilterNew.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { refreshViewerInput(); } }); mCheckFilterNew.setSelection(true); mCheckFilterInstalled = new Button(mGroupOptions, SWT.CHECK); mCheckFilterInstalled.setToolTipText("Show Installed"); mCheckFilterInstalled.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { refreshViewerInput(); } }); mCheckFilterInstalled.setSelection(true); mCheckFilterInstalled.setText("Installed"); new Label(mGroupOptions, SWT.NONE); Link linkSelectNew = new Link(mGroupOptions, SWT.NONE); // Note for i18n: we need to identify which link is used, and this is done by using the // text itself so for translation purposes we want to keep the <a> link strings separate. final String strLinkNew = "New"; final String strLinkUpdates = "Updates"; linkSelectNew.setText(String.format("Select <a>%1$s</a> or <a>%2$s</a>", strLinkNew, strLinkUpdates)); linkSelectNew.setToolTipText("Selects all items that are either new or updates."); GridDataBuilder.create(linkSelectNew).hFill(); linkSelectNew.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { super.widgetSelected(e); boolean selectNew = e.text == null || e.text.equals(strLinkNew); onSelectNewUpdates(selectNew, !selectNew, false/*selectTop*/); } }); // placeholder between "select all" and "install" Label placeholder = new Label(mGroupOptions, SWT.NONE); GridDataBuilder.create(placeholder).hFill().hGrab(); mButtonInstall = new Button(mGroupOptions, SWT.NONE); mButtonInstall.setText(""); //$NON-NLS-1$ placeholder, filled in updateButtonsState() mButtonInstall.setToolTipText("Install one or more packages"); GridDataBuilder.create(mButtonInstall).vCenter().wHint(150); mButtonInstall.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { onButtonInstall(); //$hide$ } }); // Options line 2, 7 columns new Label(mGroupOptions, SWT.NONE); mCheckFilterObsolete = new Button(mGroupOptions, SWT.CHECK); mCheckFilterObsolete.setText("Obsolete"); mCheckFilterObsolete.setToolTipText("Also show obsolete packages"); mCheckFilterObsolete.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { refreshViewerInput(); } }); mCheckFilterObsolete.setSelection(false); // placeholder before "deselect" new Label(mGroupOptions, SWT.NONE); new Label(mGroupOptions, SWT.NONE); Link linkDeselect = new Link(mGroupOptions, SWT.NONE); linkDeselect.setText("<a>Deselect All</a>"); linkDeselect.setToolTipText("Deselects all the currently selected items"); GridDataBuilder.create(linkDeselect).hFill(); linkDeselect.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { super.widgetSelected(e); onDeselectAll(); } }); // placeholder between "deselect" and "delete" placeholder = new Label(mGroupOptions, SWT.NONE); GridDataBuilder.create(placeholder).hFill().hGrab(); mButtonDelete = new Button(mGroupOptions, SWT.NONE); mButtonDelete.setText(""); //$NON-NLS-1$ placeholder, filled in updateButtonsState() mButtonDelete.setToolTipText("Delete one ore more installed packages"); GridDataBuilder.create(mButtonDelete).vCenter().wHint(150); mButtonDelete.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { onButtonDelete(); //$hide$ } }); }
From source file:com.apicloud.navigator.ui.editors.ConfigEditor.java
License:Open Source License
@Override public void createPartControl(Composite parent) { parent.setLayout(new GridLayout(1, false)); ScrolledComposite scrolledComposite = new ScrolledComposite(parent, SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL); scrolledComposite.setExpandVertical(true); scrolledComposite.setExpandHorizontal(true); scrolledComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1)); formToolkit.adapt(scrolledComposite); formToolkit.paintBordersFor(scrolledComposite); scrolledComposite.setMinWidth(600);//w ww.j a va 2s . c o m scrolledComposite.setMinHeight(1400); scrolledComposite.getVerticalBar().setIncrement(10); Composite composite_3 = new Composite(scrolledComposite, SWT.NONE); formToolkit.adapt(composite_3); formToolkit.paintBordersFor(composite_3); composite_3.setLayout(new GridLayout(1, false)); generalSection = new GeneralSectionBuilder(formToolkit, composite_3, this); generalSection.buildUI(); generalSection.bindData(config); Section preferenceSection = formToolkit.createSection(composite_3, Section.TWISTIE | Section.TITLE_BAR); preferenceSection.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); formToolkit.paintBordersFor(preferenceSection); preferenceSection.setText("\u504F\u597D\u8BBE\u7F6E"); preferenceSection.setExpanded(true); Composite preferenceComposite = formToolkit.createComposite(preferenceSection, SWT.NONE); preferenceComposite.setToolTipText(""); formToolkit.paintBordersFor(preferenceComposite); preferenceSection.setClient(preferenceComposite); preferenceComposite.setLayout(new GridLayout(2, false)); Label appBackground = new Label(preferenceComposite, SWT.NONE); appBackground.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, true, false, 1, 1)); formToolkit.adapt(appBackground, true, true); appBackground.setText("appBackground:"); Composite appBackgroundComposite = new Composite(preferenceComposite, SWT.NONE); appBackgroundComposite.setLayout(new GridLayout(1, false)); appBackgroundComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); formToolkit.adapt(appBackgroundComposite); formToolkit.paintBordersFor(appBackgroundComposite); appBackgroundText = new Text(appBackgroundComposite, SWT.BORDER); GridData gd_appBackgroundText = new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1); gd_appBackgroundText.widthHint = 200; appBackgroundText.setLayoutData(gd_appBackgroundText); appBackgroundText.setText(getPreferenceValue("appBackground", config) == null ? "" : getPreferenceValue("appBackground", config)); appBackgroundText.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent e) { String value = appBackgroundText.getText() == null ? "" : appBackgroundText.getText(); changePreferenceValue("appBackground", value); dirty = true; firePropertyChange(PROP_DIRTY); } }); formToolkit.adapt(appBackgroundText, true, true); Label windowBackground = new Label(preferenceComposite, SWT.NONE); windowBackground.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); formToolkit.adapt(windowBackground, true, true); windowBackground.setText("windowBackground:"); Composite windowBackgroundComposite = new Composite(preferenceComposite, SWT.NONE); windowBackgroundComposite.setLayout(new GridLayout(1, false)); windowBackgroundComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); formToolkit.adapt(windowBackgroundComposite); formToolkit.paintBordersFor(windowBackgroundComposite); windowBackgroundText = new Text(windowBackgroundComposite, SWT.BORDER); GridData gd_windowBackgroundText = new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1); gd_windowBackgroundText.widthHint = 200; windowBackgroundText.setLayoutData(gd_windowBackgroundText); windowBackgroundText.setText(getPreferenceValue("windowBackground", config) == null ? "" : getPreferenceValue("windowBackground", config)); windowBackgroundText.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent e) { String value = windowBackgroundText.getText() == null ? "" : windowBackgroundText.getText(); changePreferenceValue("windowBackground", value); dirty = true; firePropertyChange(PROP_DIRTY); } }); formToolkit.adapt(windowBackgroundText, true, true); Label frameBackground = new Label(preferenceComposite, SWT.NONE); frameBackground.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); formToolkit.adapt(frameBackground, true, true); frameBackground.setText("frameBackgroundColor:"); Composite frameBackgroundComposite = new Composite(preferenceComposite, SWT.NONE); frameBackgroundComposite.setLayout(new GridLayout(6, false)); frameBackgroundComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); formToolkit.adapt(frameBackgroundComposite); formToolkit.paintBordersFor(frameBackgroundComposite); frameBackgroundText = new Text(frameBackgroundComposite, SWT.BORDER); GridData gd_frameBackgroundText = new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1); gd_frameBackgroundText.widthHint = 200; frameBackgroundText.setLayoutData(gd_frameBackgroundText); frameBackgroundText.setText(getPreferenceValue("frameBackgroundColor", config) == null ? "" : getPreferenceValue("frameBackgroundColor", config)); frameBackgroundText.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent e) { String value = frameBackgroundText.getText() == null ? "" : frameBackgroundText.getText(); changePreferenceValue("frameBackgroundColor", value); dirty = true; firePropertyChange(PROP_DIRTY); } }); formToolkit.adapt(frameBackgroundText, true, true); Label lblNewLabel_4 = new Label(frameBackgroundComposite, SWT.NONE); formToolkit.adapt(lblNewLabel_4, true, true); new Label(frameBackgroundComposite, SWT.NONE); new Label(frameBackgroundComposite, SWT.NONE); new Label(frameBackgroundComposite, SWT.NONE); new Label(frameBackgroundComposite, SWT.NONE); Label pageBounce = new Label(preferenceComposite, SWT.NONE); pageBounce.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); formToolkit.adapt(pageBounce, true, true); pageBounce.setText("pageBounce:"); Composite pageBounceComposite = new Composite(preferenceComposite, SWT.NONE); pageBounceComposite.setLayout(new GridLayout(2, false)); pageBounceComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); formToolkit.adapt(pageBounceComposite); formToolkit.paintBordersFor(pageBounceComposite); pageBounceButton_ok = new Button(pageBounceComposite, SWT.RADIO | SWT.RIGHT); pageBounceButton_ok.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { changePreferenceValue("pageBounce", "true"); dirty = true; firePropertyChange(PROP_DIRTY); } }); pageBounceButton_ok.setAlignment(SWT.LEFT); formToolkit.adapt(pageBounceButton_ok, true, true); pageBounceButton_ok.setText("true"); pageBounceButton_cancel = new Button(pageBounceComposite, SWT.RADIO); if (Boolean.parseBoolean(getPreferenceValue("pageBounce", config) == null ? "false" : getPreferenceValue("pageBounce", config))) { pageBounceButton_ok.setSelection(true); changePreferenceValue("pageBounce", "true"); } else { pageBounceButton_cancel.setSelection(true); changePreferenceValue("pageBounce", "false"); } pageBounceButton_cancel.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { changePreferenceValue("pageBounce", "false"); dirty = true; firePropertyChange(PROP_DIRTY); } }); formToolkit.adapt(pageBounceButton_cancel, true, true); pageBounceButton_cancel.setText("false"); Label hScrollBarEnabled = new Label(preferenceComposite, SWT.NONE); hScrollBarEnabled.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); formToolkit.adapt(hScrollBarEnabled, true, true); hScrollBarEnabled.setText("hScrollBarEnabled:"); Composite hScrollBarEnabledComposite = new Composite(preferenceComposite, SWT.NONE); hScrollBarEnabledComposite.setLayout(new GridLayout(2, false)); hScrollBarEnabledComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); formToolkit.adapt(hScrollBarEnabledComposite); formToolkit.paintBordersFor(hScrollBarEnabledComposite); hScrollBarEnabledButton_ok = new Button(hScrollBarEnabledComposite, SWT.RADIO | SWT.RIGHT); hScrollBarEnabledButton_ok.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { changePreferenceValue("hScrollBarEnabled", "true"); dirty = true; firePropertyChange(PROP_DIRTY); } }); hScrollBarEnabledButton_ok.setAlignment(SWT.LEFT); formToolkit.adapt(hScrollBarEnabledButton_ok, true, true); hScrollBarEnabledButton_ok.setText("true"); hScrollBarEnabledButton_cancel = new Button(hScrollBarEnabledComposite, SWT.RADIO); if (Boolean.parseBoolean(getPreferenceValue("hScrollBarEnabled", config) == null ? "false" : getPreferenceValue("hScrollBarEnabled", config))) { hScrollBarEnabledButton_ok.setSelection(true); changePreferenceValue("hScrollBarEnabled", "true"); } else { hScrollBarEnabledButton_cancel.setSelection(true); changePreferenceValue("hScrollBarEnabled", "false"); } hScrollBarEnabledButton_cancel.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { changePreferenceValue("hScrollBarEnabled", "false"); dirty = true; firePropertyChange(PROP_DIRTY); } }); formToolkit.adapt(hScrollBarEnabledButton_cancel, true, true); hScrollBarEnabledButton_cancel.setText("false"); Label vScrollBarEnabled = new Label(preferenceComposite, SWT.NONE); vScrollBarEnabled.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); formToolkit.adapt(vScrollBarEnabled, true, true); vScrollBarEnabled.setText("vScrollBarEnabled:"); Composite vScrollBarEnabledComposite = new Composite(preferenceComposite, SWT.NONE); vScrollBarEnabledComposite.setLayout(new GridLayout(2, false)); vScrollBarEnabledComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); formToolkit.adapt(vScrollBarEnabledComposite); formToolkit.paintBordersFor(vScrollBarEnabledComposite); vScrollBarEnabledButton_ok = new Button(vScrollBarEnabledComposite, SWT.RADIO | SWT.RIGHT); vScrollBarEnabledButton_ok.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { changePreferenceValue("vScrollBarEnabled", "true"); dirty = true; firePropertyChange(PROP_DIRTY); } }); vScrollBarEnabledButton_ok.setAlignment(SWT.LEFT); formToolkit.adapt(vScrollBarEnabledButton_ok, true, true); vScrollBarEnabledButton_ok.setText("true"); vScrollBarEnabledButton_cancel = new Button(vScrollBarEnabledComposite, SWT.RADIO); if (Boolean.parseBoolean(getPreferenceValue("vScrollBarEnabled", config) == null ? "false" : getPreferenceValue("vScrollBarEnabled", config))) { vScrollBarEnabledButton_ok.setSelection(true); changePreferenceValue("vScrollBarEnabled", "true"); } else { vScrollBarEnabledButton_cancel.setSelection(true); changePreferenceValue("vScrollBarEnabled", "false"); } vScrollBarEnabledButton_cancel.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { changePreferenceValue("vScrollBarEnabled", "false"); dirty = true; firePropertyChange(PROP_DIRTY); } }); formToolkit.adapt(vScrollBarEnabledButton_cancel, true, true); vScrollBarEnabledButton_cancel.setText("false"); Label fullScreen = new Label(preferenceComposite, SWT.NONE); fullScreen.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); formToolkit.adapt(fullScreen, true, true); fullScreen.setText("fullScreen:"); Composite fullScreenComposite = new Composite(preferenceComposite, SWT.NONE); fullScreenComposite.setLayout(new GridLayout(2, false)); fullScreenComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); formToolkit.adapt(fullScreenComposite); formToolkit.paintBordersFor(fullScreenComposite); fullScreenButton_ok = new Button(fullScreenComposite, SWT.RADIO | SWT.RIGHT); fullScreenButton_ok.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { changePreferenceValue("fullScreen", "true"); dirty = true; firePropertyChange(PROP_DIRTY); } }); fullScreenButton_ok.setAlignment(SWT.LEFT); formToolkit.adapt(fullScreenButton_ok, true, true); fullScreenButton_ok.setText("true"); fullScreenButton_cancel = new Button(fullScreenComposite, SWT.RADIO); if (Boolean.parseBoolean(getPreferenceValue("fullScreen", config) == null ? "false" : getPreferenceValue("fullScreen", config))) { fullScreenButton_ok.setSelection(true); changePreferenceValue("fullScreen", "true"); } else { fullScreenButton_cancel.setSelection(true); changePreferenceValue("fullScreen", "false"); } fullScreenButton_cancel.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { changePreferenceValue("fullScreen", "false"); dirty = true; firePropertyChange(PROP_DIRTY); } }); formToolkit.adapt(fullScreenButton_cancel, true, true); fullScreenButton_cancel.setText("false"); Label ios7 = new Label(preferenceComposite, SWT.NONE); ios7.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); formToolkit.adapt(ios7, true, true); ios7.setText("IOS7StatusBarAppearance:"); Composite ios7Composite = new Composite(preferenceComposite, SWT.NONE); ios7Composite.setLayout(new GridLayout(2, false)); ios7Composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); formToolkit.adapt(ios7Composite); formToolkit.paintBordersFor(ios7Composite); ios7Button_ok = new Button(ios7Composite, SWT.RADIO | SWT.RIGHT); ios7Button_ok.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { changePreferenceValue("iOS7StatusBarAppearance", "true"); dirty = true; firePropertyChange(PROP_DIRTY); } }); ios7Button_ok.setAlignment(SWT.LEFT); formToolkit.adapt(ios7Button_ok, true, true); ios7Button_ok.setText("true"); ios7Button_cancel = new Button(ios7Composite, SWT.RADIO); if (Boolean.parseBoolean(getPreferenceValue("iOS7StatusBarAppearance", config) == null ? "false" : getPreferenceValue("iOS7StatusBarAppearance", config))) { ios7Button_ok.setSelection(true); changePreferenceValue("iOS7StatusBarAppearance", "true"); } else { ios7Button_cancel.setSelection(true); changePreferenceValue("iOS7StatusBarAppearance", "false"); } ios7Button_cancel.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { changePreferenceValue("iOS7StatusBarAppearance", "false"); dirty = true; firePropertyChange(PROP_DIRTY); } }); formToolkit.adapt(ios7Button_cancel, true, true); ios7Button_cancel.setText("false"); Label autoLaunch = new Label(preferenceComposite, SWT.NONE); autoLaunch.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); formToolkit.adapt(autoLaunch, true, true); autoLaunch.setText("autoLaunch:"); Composite autoLaunchComposite = new Composite(preferenceComposite, SWT.NONE); autoLaunchComposite.setLayout(new GridLayout(2, false)); autoLaunchComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); formToolkit.adapt(autoLaunchComposite); formToolkit.paintBordersFor(autoLaunchComposite); autoLaunchButton_ok = new Button(autoLaunchComposite, SWT.RADIO | SWT.RIGHT); autoLaunchButton_ok.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { changePreferenceValue("autoLaunch", "true"); dirty = true; firePropertyChange(PROP_DIRTY); } }); autoLaunchButton_ok.setAlignment(SWT.LEFT); formToolkit.adapt(autoLaunchButton_ok, true, true); autoLaunchButton_ok.setText("true"); autoLaunchButton_cancel = new Button(autoLaunchComposite, SWT.RADIO); if (Boolean.parseBoolean(getPreferenceValue("autoLaunch", config) == null ? "false" : getPreferenceValue("autoLaunch", config))) { autoLaunchButton_ok.setSelection(true); changePreferenceValue("autoLaunch", "true"); } else { autoLaunchButton_cancel.setSelection(true); changePreferenceValue("autoLaunch", "false"); } autoLaunchButton_cancel.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { changePreferenceValue("autoLaunch", "false"); dirty = true; firePropertyChange(PROP_DIRTY); } }); formToolkit.adapt(autoLaunchButton_cancel, true, true); autoLaunchButton_cancel.setText("false"); Label autoUpdate = new Label(preferenceComposite, SWT.NONE); autoUpdate.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); formToolkit.adapt(autoUpdate, true, true); autoUpdate.setText("autoUpdate:"); Composite autoUpdateComposite = new Composite(preferenceComposite, SWT.NONE); autoUpdateComposite.setLayout(new GridLayout(2, false)); autoUpdateComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); formToolkit.adapt(autoUpdateComposite); formToolkit.paintBordersFor(autoUpdateComposite); autoUpdateButton_ok = new Button(autoUpdateComposite, SWT.RADIO | SWT.RIGHT); autoUpdateButton_ok.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { changePreferenceValue("autoUpdate", "true"); dirty = true; firePropertyChange(PROP_DIRTY); } }); autoUpdateButton_ok.setAlignment(SWT.LEFT); formToolkit.adapt(autoUpdateButton_ok, true, true); autoUpdateButton_ok.setText("true"); autoUpdateButton_cancel = new Button(autoUpdateComposite, SWT.RADIO); if (Boolean.parseBoolean(getPreferenceValue("autoUpdate", config) == null ? "false" : getPreferenceValue("autoUpdate", config))) { autoUpdateButton_ok.setSelection(true); changePreferenceValue("autoUpdate", "true"); } else { autoUpdateButton_cancel.setSelection(true); changePreferenceValue("autoUpdate", "false"); } autoUpdateButton_cancel.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { changePreferenceValue("autoUpdate", "false"); dirty = true; firePropertyChange(PROP_DIRTY); } }); formToolkit.adapt(autoUpdateButton_cancel, true, true); autoUpdateButton_cancel.setText("false"); Label smartUpdate = new Label(preferenceComposite, SWT.NONE); smartUpdate.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); formToolkit.adapt(smartUpdate, true, true); smartUpdate.setText("smartUpdate:"); Composite smartUpdateComposite = new Composite(preferenceComposite, SWT.NONE); smartUpdateComposite.setLayout(new GridLayout(2, false)); smartUpdateComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); formToolkit.adapt(smartUpdateComposite); formToolkit.paintBordersFor(smartUpdateComposite); smartUpdateButton_ok = new Button(smartUpdateComposite, SWT.RADIO | SWT.RIGHT); smartUpdateButton_ok.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { changePreferenceValue("smartUpdate", "true"); dirty = true; firePropertyChange(PROP_DIRTY); } }); smartUpdateButton_ok.setAlignment(SWT.LEFT); formToolkit.adapt(smartUpdateButton_ok, true, true); smartUpdateButton_ok.setText("true"); smartUpdateButton_cancel = new Button(smartUpdateComposite, SWT.RADIO); if (Boolean.parseBoolean(getPreferenceValue("smartUpdate", config) == null ? "false" : getPreferenceValue("smartUpdate", config))) { smartUpdateButton_ok.setSelection(true); changePreferenceValue("smartUpdate", "true"); } else { smartUpdateButton_cancel.setSelection(true); changePreferenceValue("smartUpdate", "false"); } smartUpdateButton_cancel.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { changePreferenceValue("smartUpdate", "false"); dirty = true; firePropertyChange(PROP_DIRTY); } }); formToolkit.adapt(smartUpdateButton_cancel, true, true); smartUpdateButton_cancel.setText("false"); Section featureSection = formToolkit.createSection(composite_3, Section.TWISTIE | Section.TITLE_BAR); GridData gd_featureSection = new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1); gd_featureSection.heightHint = 112; featureSection.setLayoutData(gd_featureSection); formToolkit.paintBordersFor(featureSection); featureSection.setText(Messages.FEATURESETUP); featureSection.setExpanded(true); Composite composite_8 = new Composite(featureSection, SWT.NONE); formToolkit.adapt(composite_8); formToolkit.paintBordersFor(composite_8); featureSection.setClient(composite_8); composite_8.setLayout(new GridLayout(1, false)); Label lblNewLabel_1 = new Label(composite_8, SWT.NONE); lblNewLabel_1.setLayoutData(new GridData(SWT.CENTER, SWT.CENTER, false, false, 1, 1)); formToolkit.adapt(lblNewLabel_1, true, true); lblNewLabel_1.setText(Messages.SYSTEMINFO); Composite composite = new Composite(composite_8, SWT.NONE); GridData gd_composite = new GridData(SWT.CENTER, SWT.CENTER, true, false, 1, 1); gd_composite.widthHint = 380; composite.setLayoutData(gd_composite); formToolkit.adapt(composite); formToolkit.paintBordersFor(composite); final Label addFeatureLabel = formToolkit.createLabel(composite, "", SWT.NONE); addFeatureLabel.setImage(Activator.getImage("icons/addfeature.png")); addFeatureLabel.setBounds(0, 0, 90, 26); addFeatureLabel.addMouseListener(new MouseAdapter() { public void mouseUp(MouseEvent e) { AddFeatureDialog dialog = new AddFeatureDialog(getSite().getShell(), ConfigEditor.this, treeViewer, config); dialog.open(); } }); addFeatureLabel.addMouseTrackListener(new MouseTrackListener() { @Override public void mouseHover(MouseEvent e) { addFeatureLabel.setImage(Activator.getImage("icons/addfeaturefocus.png")); } @Override public void mouseExit(MouseEvent e) { addFeatureLabel.setImage(Activator.getImage("icons/addfeature.png")); } @Override public void mouseEnter(MouseEvent e) { addFeatureLabel.setImage(Activator.getImage("icons/addfeaturefocus.png")); } }); final Label addParamLabel = formToolkit.createLabel(composite, "", SWT.NONE); addParamLabel.setImage(Activator.getImage("icons/addParam.png")); addParamLabel.setBounds(95, 0, 90, 26); addParamLabel.addMouseListener(new MouseAdapter() { public void mouseUp(MouseEvent e) { if (config.getFeatures().size() == 0) { MessageDialog.openInformation(getSite().getShell(), Messages.PackageAppItemDialog_INFO, Messages.ADDFEATURE); return; } CreateParamDialog dialog = new CreateParamDialog(getSite().getShell(), ConfigEditor.this, treeViewer, config); dialog.open(); } }); addParamLabel.addMouseTrackListener(new MouseTrackListener() { @Override public void mouseHover(MouseEvent e) { addParamLabel.setImage(Activator.getImage("icons/addParamfocus.png")); } @Override public void mouseExit(MouseEvent e) { addParamLabel.setImage(Activator.getImage("icons/addParam.png")); } @Override public void mouseEnter(MouseEvent e) { addParamLabel.setImage(Activator.getImage("icons/addParamfocus.png")); } }); final Label deleteNodeLabel = formToolkit.createLabel(composite, "", SWT.NONE); deleteNodeLabel.setImage(Activator.getImage("icons/deleteNode.png")); deleteNodeLabel.setBounds(290, 0, 90, 26); deleteNodeLabel.addMouseListener(new MouseAdapter() { public void mouseUp(MouseEvent e) { if (treeViewer.getSelection() == null) return; IStructuredSelection ss = (StructuredSelection) treeViewer.getSelection(); if (ss.getFirstElement() instanceof TreeNode) { TreeNode node = (TreeNode) ss.getFirstElement(); if (node.getValue() instanceof Feature) { config.getFeatures().remove((Feature) node.getValue()); } if (node.getValue() instanceof Param) { TreeNode parent = node.getParent(); Feature feature = (Feature) parent.getValue(); Param param = (Param) node.getValue(); feature.removeParams(param); } dirty = true; firePropertyChange(PROP_DIRTY); treeViewer.setInput(config.createTreeNode()); treeViewer.refresh(); } } }); deleteNodeLabel.addMouseTrackListener(new MouseTrackListener() { @Override public void mouseHover(MouseEvent e) { deleteNodeLabel.setImage(Activator.getImage("icons/deleteNodefocus.png")); } @Override public void mouseExit(MouseEvent e) { deleteNodeLabel.setImage(Activator.getImage("icons/deleteNode.png")); } @Override public void mouseEnter(MouseEvent e) { deleteNodeLabel.setImage(Activator.getImage("icons/deleteNodefocus.png")); } }); treeViewer = new TreeViewer(composite_8, SWT.BORDER | SWT.FULL_SELECTION); Tree tree = treeViewer.getTree(); tree.setLinesVisible(true); tree.setHeaderVisible(true); GridData gd_tree = new GridData(SWT.CENTER, SWT.FILL, true, true, 1, 1); gd_tree.heightHint = 112; tree.setLayoutData(gd_tree); formToolkit.paintBordersFor(tree); this.treeViewer.setContentProvider(new TreeNodeContentProvider()); TreeViewerColumn treeViewerColumn = new TreeViewerColumn(treeViewer, SWT.NONE); TreeColumn trclmnNewColumn = treeViewerColumn.getColumn(); trclmnNewColumn.setWidth(180); trclmnNewColumn.setText("\u540D\u79F0"); treeViewerColumn.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { TreeNode treeNode = TreeNode.class.cast(element); if (treeNode.getValue() instanceof Feature) { return ((Feature) treeNode.getValue()).getName(); } if (treeNode.getValue() instanceof Param) { return ((Param) treeNode.getValue()).getName(); } return element.toString(); } }); TreeViewerColumn treeViewerColumn_1 = new TreeViewerColumn(treeViewer, SWT.NONE); TreeColumn trclmnNewColumn_1 = treeViewerColumn_1.getColumn(); trclmnNewColumn_1.setWidth(180); trclmnNewColumn_1.setText("\u503C"); treeViewerColumn_1.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { TreeNode treeNode = TreeNode.class.cast(element); if (treeNode.getValue() instanceof Feature) { return ""; } if (treeNode.getValue() instanceof Param) { return ((Param) treeNode.getValue()).getValue(); } return element.toString(); } }); this.treeViewer.setInput(config.createTreeNode()); treeViewer.setColumnProperties(new String[] { "name", "value" }); CellEditor[] treeViewer_editors = new CellEditor[tree.getColumnCount()]; treeViewer_editors[0] = new TextCellEditor(tree); treeViewer_editors[1] = new TextCellEditor(tree); treeViewer.setCellEditors(treeViewer_editors); treeViewer.setCellModifier(new ICellModifier() { @Override public boolean canModify(Object element, String property) { TreeNode treeNode = TreeNode.class.cast(element); if (treeNode.getValue() instanceof Feature && property.equals("value")) { //$NON-NLS-1$ return false; } if (property.equals("name")) return false; return true; } @Override public Object getValue(Object element, String property) { Object value = ""; //$NON-NLS-1$ TreeNode treeNode = TreeNode.class.cast(element); if (treeNode.getValue() instanceof Feature) { Feature feautre = Feature.class.cast(treeNode.getValue()); if (property.equals("name")) { value = feautre.getName(); } } if (treeNode.getValue() instanceof Param) { Param param = Param.class.cast(treeNode.getValue()); if (property.equals("name")) { value = param.getName(); } else if (property.equals("value")) { value = param.getValue(); } } return value; } @Override public void modify(Object element, String property, Object value) { TreeItem item = (TreeItem) element; Object o = item.getData(); TreeNode treeNode = TreeNode.class.cast(o); if (treeNode.getValue() instanceof Feature) { Feature feautre = Feature.class.cast(treeNode.getValue()); if (property.equals("name")) { if ("".equals(value)) { MessageDialog.openInformation(null, Messages.AddFeatureDialog_INFORMATION, Messages.CreateFeatureDialog_FEATURE_NMAE_NOT_NULL); } else { if (!feautre.getName().equals((String) value)) { feautre.setName((String) value); dirty = true; firePropertyChange(PROP_DIRTY); treeViewer.refresh(); } } } } if (treeNode.getValue() instanceof Param) { Param param = Param.class.cast(treeNode.getValue()); if (property.equals("name")) { if ("".equals(value)) { MessageDialog.openInformation(null, Messages.PackageAppItemDialog_INFO, Messages.PARAMNAMEISNULL); } else { if (!param.getName().equals((String) value)) { param.setName((String) value); dirty = true; firePropertyChange(PROP_DIRTY); treeViewer.refresh(); } } } else if (property.equals("value")) { if ("".equals(value)) { MessageDialog.openInformation(null, Messages.PackageAppItemDialog_INFO, Messages.PARAMNAMEISNULL); } else { if (!param.getValue().equals((String) value)) { param.setValue((String) value); dirty = true; firePropertyChange(PROP_DIRTY); treeViewer.refresh(); } } } } } }); final Section sctnNewSection_1 = formToolkit.createSection(composite_3, Section.TWISTIE | Section.TITLE_BAR); GridData gd_sctnNewSection_1 = new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1); gd_sctnNewSection_1.heightHint = 73; sctnNewSection_1.setLayoutData(gd_sctnNewSection_1); formToolkit.paintBordersFor(sctnNewSection_1); sctnNewSection_1.setText(Messages.PERMISSIONSETTINGS); sctnNewSection_1.setExpanded(true); Composite composite_5 = formToolkit.createComposite(sctnNewSection_1, SWT.NONE); formToolkit.paintBordersFor(composite_5); sctnNewSection_1.setClient(composite_5); composite_5.setLayout(new GridLayout(3, false)); Label lblNewLabel_2 = new Label(composite_5, SWT.NONE); lblNewLabel_2.setLayoutData(new GridData(SWT.CENTER, SWT.CENTER, true, false, 3, 1)); formToolkit.adapt(lblNewLabel_2, true, true); lblNewLabel_2.setText(Messages.PERMISSIONINFO); tableViewer_1 = new TableViewer(composite_5, SWT.BORDER | SWT.FULL_SELECTION); table_1 = tableViewer_1.getTable(); table_1.setLinesVisible(true); table_1.setHeaderVisible(true); GridData gd_table_1 = new GridData(SWT.RIGHT, SWT.CENTER, true, false, 1, 1); gd_table_1.heightHint = 250; table_1.setLayoutData(gd_table_1); formToolkit.paintBordersFor(table_1); TableViewerColumn tableViewerColumn_2 = new TableViewerColumn(tableViewer_1, SWT.NONE); TableColumn tblclmnNewColumn_2 = tableViewerColumn_2.getColumn(); tblclmnNewColumn_2.setResizable(false); tblclmnNewColumn_2.setMoveable(false); tblclmnNewColumn_2.setWidth(160); tblclmnNewColumn_2.setText(Messages.STARTED); tableViewerColumn_2.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { return ((Permission) element).getName(); } }); tableViewer_1.setContentProvider(new ArrayContentProvider()); tableViewer_1.setInput(config.getPermissions()); tableViewer_1.addDoubleClickListener(new IDoubleClickListener() { @Override public void doubleClick(DoubleClickEvent event) { StructuredSelection ss = (StructuredSelection) event.getSelection(); Permission p = (Permission) ss.getFirstElement(); config.getPermissions().remove(p); tableViewer_1.setInput(config.getPermissions()); tableViewer_3.setInput(getUnauthorized(config)); sctnNewSection_1.setExpanded(false); sctnNewSection_1.setExpanded(true); dirty = true; firePropertyChange(PROP_DIRTY); } }); table_1.addFocusListener(new FocusListener() { @Override public void focusLost(FocusEvent e) { sctnNewSection_1.setExpanded(false); sctnNewSection_1.setExpanded(true); } @Override public void focusGained(FocusEvent e) { sctnNewSection_1.setExpanded(false); sctnNewSection_1.setExpanded(true); } }); Label lblNewLabel = new Label(composite_5, SWT.NONE); lblNewLabel.setLayoutData(new GridData(SWT.CENTER, SWT.CENTER, false, false, 1, 1)); formToolkit.adapt(lblNewLabel, true, true); lblNewLabel.setText(Messages.CHANGEBUTTON); tableViewer_3 = new TableViewer(composite_5, SWT.BORDER | SWT.FULL_SELECTION); table_3 = tableViewer_3.getTable(); table_3.setLinesVisible(true); table_3.setHeaderVisible(true); table_3.setLayoutData(new GridData(SWT.LEFT, SWT.FILL, true, false, 1, 1)); formToolkit.paintBordersFor(table_3); TableViewerColumn tableViewerColumn = new TableViewerColumn(tableViewer_3, SWT.NONE); TableColumn tableColumn = tableViewerColumn.getColumn(); tableColumn.setResizable(false); tableColumn.setMoveable(false); tableColumn.setWidth(160); tableColumn.setText(Messages.UNSTARTED); tableViewerColumn.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { return ((Permission) element).getName(); } }); tableViewer_3.setContentProvider(new ArrayContentProvider()); tableViewer_3.setInput(getUnauthorized(config)); tableViewer_3.addDoubleClickListener(new IDoubleClickListener() { @Override public void doubleClick(DoubleClickEvent event) { StructuredSelection ss = (StructuredSelection) event.getSelection(); Permission p = (Permission) ss.getFirstElement(); config.getPermissions().add(p); tableViewer_1.setInput(config.getPermissions()); tableViewer_3.setInput(getUnauthorized(config)); sctnNewSection_1.setExpanded(false); sctnNewSection_1.setExpanded(true); dirty = true; firePropertyChange(PROP_DIRTY); } }); table_3.addFocusListener(new FocusListener() { @Override public void focusLost(FocusEvent e) { sctnNewSection_1.setExpanded(false); sctnNewSection_1.setExpanded(true); } @Override public void focusGained(FocusEvent e) { sctnNewSection_1.setExpanded(false); sctnNewSection_1.setExpanded(true); } }); Section sctnNewSection = formToolkit.createSection(composite_3, Section.TWISTIE | Section.TITLE_BAR); sctnNewSection.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); formToolkit.paintBordersFor(sctnNewSection); sctnNewSection.setText(Messages.ACCESSSETTINGS); sctnNewSection.setExpanded(true); Composite composite_9 = formToolkit.createComposite(sctnNewSection, SWT.NONE); formToolkit.paintBordersFor(composite_9); sctnNewSection.setClient(composite_9); composite_9.setLayout(new GridLayout(1, false)); Label lblNewLabel_9 = new Label(composite_9, SWT.NONE); lblNewLabel_9.setLayoutData(new GridData(SWT.CENTER, SWT.CENTER, false, false, 1, 1)); formToolkit.adapt(lblNewLabel_9, true, true); lblNewLabel_9.setText(Messages.ACCESSSINFO); Composite composite_2 = formToolkit.createComposite(composite_9, SWT.NONE); composite_2.setLayout(null); GridData gd_composite_2 = new GridData(SWT.CENTER, SWT.CENTER, false, false, 1, 1); gd_composite_2.widthHint = 380; composite_2.setLayoutData(gd_composite_2); formToolkit.paintBordersFor(composite_2); final Label addLabel = formToolkit.createLabel(composite_2, "", SWT.NONE); addLabel.setImage(Activator.getImage("icons/add.png")); addLabel.setBounds(0, 0, 55, 26); addLabel.addMouseListener(new MouseAdapter() { public void mouseUp(MouseEvent e) { Access a = new Access(); a.setOrigin("*"); config.getAccesses().add(a); tableViewer_2.setInput(config.getAccesses()); tableViewer_2.refresh(); dirty = true; firePropertyChange(PROP_DIRTY); } }); addLabel.addMouseTrackListener(new MouseTrackListener() { @Override public void mouseHover(MouseEvent e) { addLabel.setImage(Activator.getImage("icons/addfocus.png")); } @Override public void mouseExit(MouseEvent e) { addLabel.setImage(Activator.getImage("icons/add.png")); } @Override public void mouseEnter(MouseEvent e) { addLabel.setImage(Activator.getImage("icons/addfocus.png")); } }); final Label deleteLabel = formToolkit.createLabel(composite_2, "", SWT.NONE); deleteLabel.setImage(Activator.getImage("icons/delete.png")); deleteLabel.setBounds(60, 0, 55, 26); deleteLabel.addMouseListener(new MouseAdapter() { public void mouseUp(MouseEvent e) { StructuredSelection ss = (StructuredSelection) tableViewer_2.getSelection(); if (ss.getFirstElement() == null) { return; } Access a = (Access) ss.getFirstElement(); config.getAccesses().remove(a); tableViewer_2.refresh(); dirty = true; firePropertyChange(PROP_DIRTY); } }); deleteLabel.addMouseTrackListener(new MouseTrackListener() { @Override public void mouseHover(MouseEvent e) { deleteLabel.setImage(Activator.getImage("icons/deletefocus.png")); } @Override public void mouseExit(MouseEvent e) { deleteLabel.setImage(Activator.getImage("icons/delete.png")); } @Override public void mouseEnter(MouseEvent e) { deleteLabel.setImage(Activator.getImage("icons/deletefocus.png")); } }); tableViewer_2 = new TableViewer(composite_9, SWT.BORDER | SWT.FULL_SELECTION); table_2 = tableViewer_2.getTable(); table_2.setLinesVisible(true); table_2.setHeaderVisible(true); GridData gd_table_2 = new GridData(SWT.CENTER, SWT.CENTER, true, false, 1, 1); gd_table_2.heightHint = 120; table_2.setLayoutData(gd_table_2); formToolkit.paintBordersFor(table_2); TableViewerColumn tableViewerColumn_3 = new TableViewerColumn(tableViewer_2, SWT.NONE); TableColumn tblclmnNewColumn_3 = tableViewerColumn_3.getColumn(); tblclmnNewColumn_3.setWidth(360); tblclmnNewColumn_3.setText(Messages.SOURCE); tableViewerColumn_3.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { return ((Access) element).getOrigin(); } }); tableViewer_2.setContentProvider(new ArrayContentProvider()); tableViewer_2.setInput(config.getAccesses()); tableViewer_2.setColumnProperties(new String[] { "origin" }); CellEditor[] tableViewer2_editor = new CellEditor[table_2.getColumnCount()]; tableViewer2_editor[0] = new TextCellEditor(table_2); tableViewer_2.setCellEditors(tableViewer2_editor); tableViewer_2.setCellModifier(new ICellModifier() { @Override public boolean canModify(Object element, String property) { return true; } @Override public Object getValue(Object element, String property) { Object value = ""; //$NON-NLS-1$ Access access = Access.class.cast(element); if (property.equals("origin")) { value = access.getOrigin(); } return value; } @Override public void modify(Object element, String property, Object value) { TableItem item = (TableItem) element; Object o = item.getData(); Access access = Access.class.cast(o); if (property.equals("origin")) { if ("".equals(value)) { MessageDialog.openInformation(null, Messages.AddFeatureDialog_INFORMATION, Messages.PERMISSIONISNULL); } else { if (!access.getOrigin().equals((String) value)) { access.setOrigin((String) value); dirty = true; firePropertyChange(PROP_DIRTY); tableViewer_2.refresh(); } } } } }); scrolledComposite.setMinSize(new Point(700, 1500)); scrolledComposite.setContent(composite_3); }
From source file:com.arm.cmsis.config.editors.ConfigEditor.java
License:Open Source License
private void buildTreeViewer(Composite parent) { fViewer = new TreeViewer(parent, SWT.FULL_SELECTION | SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL); Tree tree = fViewer.getTree();/* w ww. j a va 2 s .c o m*/ tree.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 3, 1)); tree.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { TreeItem item = (TreeItem) e.item; if (item != null) { IConfigWizardItem configItem = getConfigWizardItem(item.getData()); if (configItem != null) { setCursorAndRevealAt(configItem.getStartLine()); showTooltipText(configItem); } } } }); tree.setLinesVisible(true); tree.setHeaderVisible(true); fColumnAdvisor = new ConfigColumnAdvisor(fViewer); TreeViewerColumn column0 = new TreeViewerColumn(fViewer, SWT.LEFT); column0.getColumn().setText(Messages.ConfigEditor_Option); column0.getColumn().setWidth(320); column0.setLabelProvider(new FirstColumnLabelProvider()); TreeViewerColumn column1 = new TreeViewerColumn(fViewer, SWT.LEFT); column1.getColumn().setText(Messages.ConfigEditor_Value); column1.getColumn().setWidth(100); column1.setEditingSupport(new AdvisedEditingSupport(fViewer, fColumnAdvisor, COLEDIT)); column1.setLabelProvider(new AdvisedCellLabelProvider(fColumnAdvisor, COLEDIT)); // Add an empty column and adjust its width automatically for better looking TreeViewerColumn column2 = new TreeViewerColumn(fViewer, SWT.LEFT); column2.getColumn().setWidth(1); column2.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { return ""; //$NON-NLS-1$ } }); if (System.getProperty("os.name").startsWith("Windows")) { //$NON-NLS-1$ //$NON-NLS-2$ parent.addControlListener(new ControlAdapter() { @Override public void controlResized(ControlEvent e) { Tree tree = (Tree) fViewer.getControl(); Rectangle area = parent.getClientArea(); Point preferredSize = tree.computeSize(SWT.DEFAULT, SWT.DEFAULT); int width = area.width - 2 * tree.getBorderWidth(); if (preferredSize.y > tree.getBounds().height) { // Subtract the scrollbar width from the total column width // if a vertical scrollbar will be required Point vBarSize = tree.getVerticalBar().getSize(); width -= vBarSize.x; } Point oldSize = tree.getSize(); if (oldSize.x > area.width) { // tree is getting smaller so make the columns // smaller first and then resize the tree to // match the client area width column2.getColumn().setWidth(Math.max(0, width - column0.getColumn().getWidth() - column1.getColumn().getWidth() - 10)); tree.setSize(area.width, area.height); } else { // tree is getting bigger so make the tree // bigger first and then make the columns wider // to match the client area width tree.setSize(area.width, area.height); column2.getColumn().setWidth(Math.max(0, width - column0.getColumn().getWidth() - column1.getColumn().getWidth() - 10)); } } }); } fViewer.setContentProvider(new ContentProvider()); fViewer.setInput(fParser.getConfigWizardRoot()); ColumnViewerToolTipSupport.enableFor(fViewer); }
From source file:com.arm.cmsis.pack.installer.ui.views.BoardsView.java
License:Open Source License
@Override public void createPartControl(Composite parent) { PatternFilter filter = new PatternFilter() { @Override/*from w w w. ja va 2 s . co m*/ protected boolean isLeafMatch(final Viewer viewer, final Object element) { TreeViewer treeViewer = (TreeViewer) viewer; boolean isMatch = false; ColumnLabelProvider labelProvider = (ColumnLabelProvider) treeViewer.getLabelProvider(0); String labelText = labelProvider.getText(element); isMatch |= wordMatches(labelText); return isMatch; } }; filter.setIncludeLeadingWildcard(true); fTree = new FilteredTree(parent, SWT.FULL_SELECTION | SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL, filter, true); fTree.setInitialText(Messages.BoardsView_SearchBoard); fViewer = fTree.getViewer(); fViewer.getTree().setLinesVisible(true); fViewer.getTree().setHeaderVisible(true); TreeViewerColumn column0 = new TreeViewerColumn(fViewer, SWT.LEFT); column0.getColumn().setText(CmsisConstants.BOARD_TITLE); column0.getColumn().setWidth(200); column0.setLabelProvider(new BoardsViewLabelProvider()); TreeViewerColumn column1 = new TreeViewerColumn(fViewer, SWT.LEFT); column1.getColumn().setText(CmsisConstants.SUMMARY_TITLE); column1.getColumn().setWidth(300); fColumnAdvisor = new BoardsViewColumnAdvisor(fViewer); column1.setLabelProvider(new AdvisedCellLabelProvider(fColumnAdvisor, COLURL)); fViewer.setContentProvider(new BoardViewContentProvider()); fViewer.setComparator(new BoardTreeColumnComparator(fViewer, fColumnAdvisor)); fViewer.setAutoExpandLevel(2); refresh(); ColumnViewerToolTipSupport.enableFor(fViewer); // Create the help context id for the viewer's control PlatformUI.getWorkbench().getHelpSystem().setHelp(fViewer.getControl(), IHelpContextIds.BOARDS_VIEW); getSite().setSelectionProvider(fViewer); makeActions(); hookContextMenu(); hookDoubleClickAction(); contributeToActionBars(); CpInstallerPlugInUI.registerViewPart(this); CpPlugIn.addRteListener(this); }
From source file:com.arm.cmsis.pack.installer.ui.views.DevicesView.java
License:Open Source License
@Override public void createPartControl(Composite parent) { PatternFilter filter = new PatternFilter() { @Override//from w ww . java 2 s.c o m protected boolean isLeafMatch(final Viewer viewer, final Object element) { TreeViewer treeViewer = (TreeViewer) viewer; boolean isMatch = false; ColumnLabelProvider labelProvider = (ColumnLabelProvider) treeViewer.getLabelProvider(0); String labelText = labelProvider.getText(element); isMatch |= wordMatches(labelText); return isMatch; } }; filter.setIncludeLeadingWildcard(true); fTree = new FilteredTree(parent, SWT.FULL_SELECTION | SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL, filter, true); fTree.setInitialText(Messages.DevicesView_SearchDevice); fViewer = fTree.getViewer(); fViewer.getTree().setLinesVisible(true); fViewer.getTree().setHeaderVisible(true); TreeViewerColumn column0 = new TreeViewerColumn(fViewer, SWT.LEFT); column0.getColumn().setText(CmsisConstants.DEVICE_TITLE); column0.getColumn().setWidth(200); column0.setLabelProvider(new DevicesViewLabelProvider()); TreeViewerColumn column1 = new TreeViewerColumn(fViewer, SWT.LEFT); column1.getColumn().setText(CmsisConstants.SUMMARY_TITLE); column1.getColumn().setWidth(300); fColumnAdvisor = new DevicesViewColumnAdvisor(fViewer); column1.setLabelProvider(new AdvisedCellLabelProvider(fColumnAdvisor, COLURL)); fViewer.setContentProvider(new DeviceViewContentProvider()); fViewer.setComparator(new DeviceTreeColumnComparator(fViewer, fColumnAdvisor)); fViewer.setAutoExpandLevel(2); refresh(); ColumnViewerToolTipSupport.enableFor(fViewer); // Create the help context id for the viewer's control PlatformUI.getWorkbench().getHelpSystem().setHelp(fViewer.getControl(), IHelpContextIds.DEVICES_VIEW); getSite().setSelectionProvider(fViewer); makeActions(); hookContextMenu(); hookDoubleClickAction(); contributeToActionBars(); CpInstallerPlugInUI.registerViewPart(this); CpPlugIn.addRteListener(this); }
From source file:com.arm.cmsis.pack.installer.ui.views.ExamplesView.java
License:Open Source License
@Override public void createPartControl(Composite parent) { fPacksExamplesViewFilter = PacksExamplesViewFilter.getInstance(); PatternFilter patternFilter = new PatternFilter() { @Override//from w w w . j a va 2 s . co m protected boolean isLeafMatch(final Viewer viewer, final Object element) { TreeViewer treeViewer = (TreeViewer) viewer; boolean isMatch = false; ColumnLabelProvider labelProvider = (ColumnLabelProvider) treeViewer.getLabelProvider(0); String labelText = labelProvider.getText(element); isMatch |= wordMatches(labelText); return isMatch; } }; patternFilter.setIncludeLeadingWildcard(true); fExamplesViewFilters = new ViewerFilter[] { patternFilter, fPacksExamplesViewFilter }; fTree = new FilteredTree(parent, SWT.FULL_SELECTION | SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL, patternFilter, true); fTree.setInitialText(Messages.ExamplesView_SearchExample); fViewer = fTree.getViewer(); Tree tree = fViewer.getTree(); tree.setHeaderVisible(true); tree.setLinesVisible(true); // ------ Start Setting ALL Columns for the Examples View // ------ First Column TreeViewerColumn column0 = new TreeViewerColumn(fViewer, SWT.LEFT); tree.setLinesVisible(true); column0.getColumn().setText(CmsisConstants.EXAMPLE_TITLE); column0.getColumn().setWidth(300); column0.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { ICpExample e = ((IRteExampleItem) element).getExample(); return e.getId(); } @Override public String getToolTipText(Object element) { ICpExample e = ((IRteExampleItem) element).getExample(); return constructExampleTooltipText(e); } }); // ------ Second Column TreeViewerColumn column1 = new TreeViewerColumn(fViewer, SWT.LEFT); column1.getColumn().setText(CmsisConstants.ACTION_TITLE); column1.getColumn().setWidth(90); fColumnAdvisor = new ExamplesViewColumnAdvisor(fViewer); column1.setLabelProvider(new AdvisedCellLabelProvider(fColumnAdvisor, COLBUTTON)); // ------ Third Column TreeViewerColumn column2 = new TreeViewerColumn(fViewer, SWT.LEFT); column2.getColumn().setText(CmsisConstants.DESCRIPTION_TITLE); column2.getColumn().setWidth(400); column2.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object obj) { IRteExampleItem example = getRteExampleItem(obj); if (example != null) { return example.getExample().getDescription(); } return null; } }); // ------ End Setting ALL Columns for the Examples View fViewer.setContentProvider(new TreeObjectContentProvider()); fViewer.setComparator(new ExampleTreeColumnComparator(fViewer, fColumnAdvisor)); refresh(); ColumnViewerToolTipSupport.enableFor(fViewer); // Create the help context id for the viewer's control PlatformUI.getWorkbench().getHelpSystem().setHelp(fViewer.getControl(), IHelpContextIds.EXAMPLES_VIEW); getSite().setSelectionProvider(fViewer); hookViewSelection(); makeActions(); contributeToActionBars(); CpInstallerPlugInUI.registerViewPart(this); fViewer.setFilters(fExamplesViewFilters); CpPlugIn.addRteListener(this); }
From source file:com.arm.cmsis.pack.installer.ui.views.PacksView.java
License:Open Source License
@Override public void createPartControl(Composite parent) { fPacksExamplesViewFilter = PacksExamplesViewFilter.getInstance(); PatternFilter patternFilter = new PatternFilter() { @Override/*w w w. ja v a 2s . c om*/ protected boolean isLeafMatch(final Viewer viewer, final Object element) { TreeViewer treeViewer = (TreeViewer) viewer; boolean isMatch = false; ColumnLabelProvider labelProvider = (ColumnLabelProvider) treeViewer.getLabelProvider(0); String labelText = labelProvider.getText(element); isMatch |= wordMatches(labelText); return isMatch; } }; patternFilter.setIncludeLeadingWildcard(true); fPacksViewFilters = new ViewerFilter[] { patternFilter, fPacksExamplesViewFilter }; fTree = new FilteredTree(parent, SWT.FULL_SELECTION | SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL, patternFilter, true); fTree.setInitialText(Messages.PacksView_SearchPack); fViewer = fTree.getViewer(); Tree tree = fViewer.getTree(); tree.setHeaderVisible(true); tree.setLinesVisible(true); //------ Start Setting ALL Columns for the Packs View //------ First Column TreeViewerColumn column0 = new TreeViewerColumn(fViewer, SWT.LEFT); column0.getColumn().setText(CmsisConstants.PACK_TITLE); column0.getColumn().setWidth(250); column0.setLabelProvider(fColumnLabelProviderWithImage); //------ Second Column TreeViewerColumn column1 = new TreeViewerColumn(fViewer, SWT.LEFT); column1.getColumn().setText(CmsisConstants.ACTION_TITLE); column1.getColumn().setWidth(90); fColumnAdvisor = new PacksViewColumnAdvisor(fViewer); column1.setLabelProvider(new AdvisedCellLabelProvider(fColumnAdvisor, COLBUTTON)); //------ Third Column TreeViewerColumn column2 = new TreeViewerColumn(fViewer, SWT.LEFT); column2.getColumn().setText(CmsisConstants.DESCRIPTION_TITLE); column2.getColumn().setWidth(400); column2.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object obj) { ICpItem item = getCpItem(obj); if (item == null) { return null; } // Add selection string on the first line if (item instanceof ICpPackCollection) { if (CmsisConstants.DEVICE_SPECIFIC.equals(item.getTag())) { String filterString = fPacksExamplesViewFilter.getFilterString(); return filterString == null ? null : filterString + Messages.PacksView_Selected; } else if (CmsisConstants.GENERIC.equals(item.getTag())) { return Messages.PacksView_GenericPacksDescription; } } if (item instanceof ICpPackFamily) { ICpPackFamily packFamily = (ICpPackFamily) item; if (CmsisConstants.ERRORS.equals(packFamily.getTag())) { return Messages.PacksView_CannotLoadPdscFiles; } return formatDescription(item.getDescription()); } if (CmsisConstants.RELEASE_TAG.equals(item.getTag())) { return formatDescription(item.getText()); } else if (CmsisConstants.PREVIOUS.equals(item.getTag())) { return item.getPackFamilyId() + Messages.PacksView_PreviousPackVersions; } ICpPack pack = item.getPack(); if (pack.getPackState() != PackState.ERROR) { for (ICpItem cpItem : pack.getGrandChildren(CmsisConstants.RELEASES_TAG)) { if (cpItem.getAttribute(CmsisConstants.VERSION).equals(pack.getVersion())) { return formatDescription(cpItem.getText()); } } } else { return Messages.PacksView_Location + pack.getFileName(); } return null; } // Due to the multi-line table cell in Linux, we // only use the first line when OS is Linux private String formatDescription(String description) { boolean isWinOS = System.getProperty("os.name").startsWith("Windows"); //$NON-NLS-1$ //$NON-NLS-2$ return isWinOS ? description : description.split("\\r?\\n")[0]; //$NON-NLS-1$ } }); //------ End Setting ALL Columns for the Packs View fViewer.setContentProvider(new PacksViewContentProvider()); fViewer.setComparator(new PackTreeColumnComparator(fViewer, fColumnAdvisor)); fViewer.setAutoExpandLevel(2); refresh(); ColumnViewerToolTipSupport.enableFor(fViewer); // Create the help context id for the viewer's control PlatformUI.getWorkbench().getHelpSystem().setHelp(fViewer.getControl(), IHelpContextIds.PACKS_VIEW); getSite().setSelectionProvider(fViewer); makeActions(); hookViewSelection(); hookContextMenu(); hookDoubleClickAction(); contributeToActionBars(); CpInstallerPlugInUI.registerViewPart(this); fViewer.setFilters(fPacksViewFilters); CpPlugIn.addRteListener(this); }
From source file:com.arm.cmsis.pack.project.wizards.CmsisCodeTemplateNewWizardPage.java
License:Open Source License
@Override public void createControl(Composite parent) { Composite container = new Composite(parent, SWT.NULL); GridLayout layout = new GridLayout(); container.setLayout(layout);/*from w w w . j ava2s . c om*/ layout.numColumns = 3; //layout.verticalSpacing = 5; Label label = new Label(container, SWT.NULL); label.setText(Messages.CmsisCodeTemplateNewWizardPage_Project); projectText = new Text(container, SWT.BORDER | SWT.SINGLE); projectText.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); projectText.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent e) { projectChanged(); } }); projectBrowse = new Button(container, SWT.PUSH); projectBrowse.setText(Messages.CmsisCodeTemplate_Browse); projectBrowse.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { handleProjectBrowse(); } }); fViewer = new TreeViewer(container, SWT.FULL_SELECTION | SWT.BORDER | SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL); Tree tree = fViewer.getTree(); GridData gd_tree = new GridData(SWT.FILL, SWT.FILL, true, true, 3, 1); gd_tree.heightHint = 300; tree.setLayoutData(gd_tree); tree.setHeaderVisible(true); tree.setLinesVisible(true); tree.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { Object obj = e.item.getData(); if (obj instanceof ICpCodeTemplate) { selectedCodeTemplate = (ICpCodeTemplate) obj; String[] codeTemplates = selectedCodeTemplate.getCodeTemplates(); if (codeTemplates.length == 0) { fileText.setEditable(false); fileText.setText(CmsisConstants.EMPTY_STRING); return; } fileText.setEditable(true); StringBuilder sb = new StringBuilder(Utils.extractFileName(codeTemplates[0])); for (int i = 1; i < codeTemplates.length; i++) { fileText.setEditable(false); sb.append(' '); sb.append(Utils.extractFileName(codeTemplates[i])); } fileText.setText(sb.toString()); } } }); TreeViewerColumn column0 = new TreeViewerColumn(fViewer, SWT.LEFT); column0.getColumn().setText(Messages.CmsisCodeTemplate_Component); column0.getColumn().setWidth(200); column0.setLabelProvider(new ComponentColumnLabelProvider()); TreeViewerColumn column1 = new TreeViewerColumn(fViewer, SWT.LEFT); column1.getColumn().setText(Messages.CmsisCodeTemplate_Name); column1.getColumn().setWidth(320); column1.setLabelProvider(new NameColumnLabelProvider()); fViewer.setContentProvider(new CodeTemplateContentProvider()); IRteProject rteProject = getRteProject(); if (rteProject != null) { ICpCodeTemplate codeTemplate = rteProject.getRteConfiguration().getCmsisCodeTemplate(); fViewer.setInput(codeTemplate); fViewer.getControl().setFocus(); } label = new Label(container, SWT.NULL); label.setText(Messages.CmsisCodeTemplate_Location); containerText = new Text(container, SWT.BORDER | SWT.SINGLE); containerText.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); containerText.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent e) { dialogChanged(); } }); containerBrowse = new Button(container, SWT.PUSH); containerBrowse.setText(Messages.CmsisCodeTemplate_Browse); containerBrowse.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { handleContainerBrowse(); } }); label = new Label(container, SWT.NULL); label.setText(Messages.CmsisCodeTemplate_FileName); fileText = new Text(container, SWT.BORDER | SWT.SINGLE); fileText.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); fileText.addModifyListener(new ModifyListener() { @Override public void modifyText(ModifyEvent e) { dialogChanged(); } }); initialize(); projectChanged(); setControl(container); new Label(container, SWT.NONE); PlatformUI.getWorkbench().getHelpSystem().setHelp(parent.getParent(), IHelpContextIds.CODE_TEMPLATE_WIZARD); }