List of usage examples for org.eclipse.jface.viewers ColumnViewerEditorActivationListener ColumnViewerEditorActivationListener
ColumnViewerEditorActivationListener
From source file:com.buildml.eclipse.outline.OutlinePage.java
License:Open Source License
@Override public void createControl(Composite parent) { super.createControl(parent); /* // w w w .j a v a 2 s .com * Configure the view's (pre-existing) TreeViewer with necessary helper objects that * will display the BuildML editor's package structure. */ treeViewer = getTreeViewer(); treeViewer.setContentProvider(new OutlineContentProvider(pkgMgr, true)); treeViewer.setLabelProvider(new OutlineLabelProvider(pkgMgr)); treeViewer.addSelectionChangedListener(this); treeViewer.setInput(new UIPackageFolder[] { new UIPackageFolder(pkgMgr.getRootFolder()) }); treeViewer.expandToLevel(2); /* * Create the context menu. It'll be populated by the rules in plugin.xml. */ MenuManager menuMgr = new MenuManager(); menuMgr.setRemoveAllWhenShown(true); menuMgr.addMenuListener(new IMenuListener() { @Override public void menuAboutToShow(IMenuManager manager) { manager.add(new Separator("buildmladditions")); } }); Menu menu = menuMgr.createContextMenu(treeViewer.getControl()); treeViewer.getControl().setMenu(menu); getSite().registerContextMenu("org.eclipse.ui.views.ContentOutline", menuMgr, treeViewer); getSite().setSelectionProvider(treeViewer); /* * When the user double-clicks on a folder name, automatically expand the content * of that folder. If they double-click on a package name, open that package * as a new Diagram in the main editor. */ treeViewer.addDoubleClickListener(new IDoubleClickListener() { @Override public void doubleClick(DoubleClickEvent event) { IStructuredSelection selection = (IStructuredSelection) event.getSelection(); Object node = selection.getFirstElement(); if (treeViewer.isExpandable(node)) { treeViewer.setExpandedState(node, !treeViewer.getExpandedState(node)); } /* else, open the package diagram editor */ else { if (node instanceof UIPackage) { int selectedPkgId = ((UIPackage) node).getId(); if (selectedPkgId != pkgMgr.getImportPackage()) { mainEditor.openPackageDiagram(selectedPkgId); } } } } }); /* * Configure the ability to edit cells in the package/folder tree. The * OutlineContentCellModifier class does most of the hard work. */ treeViewer.setColumnProperties(new String[] { "NAME" }); treeViewer.setCellModifier(new OutlineContentCellModifier(mainEditor)); treeViewer.setCellEditors(new CellEditor[] { new TextCellEditor(treeViewer.getTree()) }); /* * Arrange it so that cell editing is only possible when we call editElement(), rather * than when the user clicks on the label. */ treeViewer.getColumnViewerEditor().addEditorActivationListener(new ColumnViewerEditorActivationListener() { public void beforeEditorActivated(ColumnViewerEditorActivationEvent event) { if (event.eventType != ColumnViewerEditorActivationEvent.PROGRAMMATIC) { event.cancel = true; } } public void beforeEditorDeactivated(ColumnViewerEditorDeactivationEvent event) { } public void afterEditorDeactivated(ColumnViewerEditorDeactivationEvent event) { } public void afterEditorActivated(ColumnViewerEditorActivationEvent event) { } }); /* * Listen to our own selection events, which is necessary to learn which element is * selected when we want to add or delete elements. */ addSelectionChangedListener(this); /* * Add the DragSource and DropTarget so that we can copy/move packages around. */ new OutlineDragSource(treeViewer, this); new OutlineDropTarget(treeViewer, this); /* * Add the undo/redo actions from the main editor to our action bar. This allows * the user to use Ctrl-Z etc. to undo/redo while focused on our window. */ getSite().getActionBars().setGlobalActionHandler(ActionFactory.UNDO.getId(), undoAction); getSite().getActionBars().setGlobalActionHandler(ActionFactory.REDO.getId(), redoAction); }
From source file:com.rcpcompany.uibindings.extests.valueBindings.ValueEditCellStrategiesTest.java
License:Open Source License
@Before public void before() { BaseUIBTestUtils.resetAll();/*from ww w.j a v a 2s . c om*/ IManager.Factory.getManager().setTextCommitStrategy(TextCommitStrategy.ON_MODIFY); IManager.Factory.getManager().setEditCellAnyKey(myEditCellAnyKey); IManager.Factory.getManager().setEditCellSingleClick(myEditCellSingleClick); createShop(); createView(); bindUI(); myView.getSite().getPage().activate(myView); myBody.layout(); // final Listener listener = new Listener() { // @Override // public void handleEvent(Event event) { // LogUtils.debug(this, ToStringUtils.toString(event)); // } // }; // for (int i = SWT.None; i <= SWT.ImeComposition; i++) { // myTable.getDisplay().addFilter(i, listener); // } // myTableViewer.getColumnViewerEditor() .addEditorActivationListener(new ColumnViewerEditorActivationListener() { @Override public void beforeEditorDeactivated(ColumnViewerEditorDeactivationEvent event) { LogUtils.debug(this, ""); } @Override public void beforeEditorActivated(ColumnViewerEditorActivationEvent event) { LogUtils.debug(this, ""); } @Override public void afterEditorDeactivated(ColumnViewerEditorDeactivationEvent event) { LogUtils.debug(this, ""); } @Override public void afterEditorActivated(ColumnViewerEditorActivationEvent event) { LogUtils.debug(this, ""); } }); }
From source file:com.rcpcompany.uibindings.extests.viewerBindings.ViewerEditCellCommitStrategiesTest.java
License:Open Source License
@Before public void before() { BaseUIBTestUtils.resetAll();/*from ww w. ja v a 2 s.c o m*/ manager.setTextCommitStrategy(TextCommitStrategy.ON_MODIFY); manager.setEditCellAnyKey(false); manager.setEditCellSingleClick(false); createShop(); createView(); bindUI(); myView.getSite().getPage().activate(myView); myBody.layout(); myTableViewer.getColumnViewerEditor() .addEditorActivationListener(new ColumnViewerEditorActivationListener() { @Override public void beforeEditorDeactivated(ColumnViewerEditorDeactivationEvent event) { // LogUtils.debug(this, ""); } @Override public void beforeEditorActivated(ColumnViewerEditorActivationEvent event) { // LogUtils.debug(this, ""); } @Override public void afterEditorDeactivated(ColumnViewerEditorDeactivationEvent event) { // LogUtils.debug(this, ""); } @Override public void afterEditorActivated(ColumnViewerEditorActivationEvent event) { // LogUtils.debug(this, ""); } }); }
From source file:gov.redhawk.sca.internal.ui.properties.SequencePropertyValueWizardPage.java
License:Open Source License
private TableViewer createTableViewer(final Composite parent) { final TableViewer viewer; if (this.property instanceof ScaSimpleSequenceProperty) { final TableColumnLayout layout = new TableColumnLayout(); parent.setLayout(layout);//from w w w .jav a 2 s. c o m viewer = new TableViewer(parent, SWT.BORDER | SWT.MULTI | SWT.FULL_SELECTION | SWT.V_SCROLL | SWT.H_SCROLL); createSimpleSequenceColumns(viewer, layout, (ScaSimpleSequenceProperty) this.property); viewer.getTable().setHeaderVisible(true); viewer.getTable().setLinesVisible(true); viewer.setContentProvider(new AdapterFactoryContentProvider(this.adapterFactory)); } else { viewer = ScaComponentFactory.createStructSequenceTable(parent, SWT.BORDER | SWT.MULTI | SWT.FULL_SELECTION | SWT.V_SCROLL | SWT.H_SCROLL, this.adapterFactory, (ScaStructSequenceProperty) this.property); viewer.getColumnViewerEditor().addEditorActivationListener(new ColumnViewerEditorActivationListener() { @Override public void beforeEditorDeactivated(final ColumnViewerEditorDeactivationEvent event) { // TODO Auto-generated method stub } @Override public void beforeEditorActivated(final ColumnViewerEditorActivationEvent event) { // TODO Auto-generated method stub } @Override public void afterEditorDeactivated(final ColumnViewerEditorDeactivationEvent event) { viewer.refresh(true); } @Override public void afterEditorActivated(final ColumnViewerEditorActivationEvent event) { } }); } viewer.setInput(this.property); viewer.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(final SelectionChangedEvent event) { updateButtonState(); } }); return viewer; }
From source file:gov.redhawk.sca.ui.ScaPropertiesViewer.java
License:Open Source License
protected void addEditorActivationListener() { viewer.getColumnViewerEditor().addEditorActivationListener(new ColumnViewerEditorActivationListener() { @Override//from www. j ava 2s. c o m public void beforeEditorDeactivated(final ColumnViewerEditorDeactivationEvent event) { } @Override public void beforeEditorActivated(final ColumnViewerEditorActivationEvent event) { } @Override public void afterEditorDeactivated(final ColumnViewerEditorDeactivationEvent event) { if (event.eventType == ColumnViewerEditorDeactivationEvent.EDITOR_SAVED) { viewer.refresh(); viewer.setSelection(viewer.getSelection()); } } @Override public void afterEditorActivated(final ColumnViewerEditorActivationEvent event) { } }); }
From source file:org.bonitasoft.studio.businessobject.ui.wizard.BusinessDataModelWizardPage.java
License:Open Source License
protected IViewerObservableValue createListOfBusinessObjects(final Composite mainComposite, final DataBindingContext ctx) { final Group group = new Group(mainComposite, SWT.NONE); group.setLayoutData(GridDataFactory.fillDefaults().grab(false, true).create()); group.setLayout(GridLayoutFactory.fillDefaults().numColumns(2).margins(5, 5).spacing(5, 0).create()); group.setText(Messages.listOfBusinessObjects); final Composite buttonsComposite = new Composite(group, SWT.NONE); buttonsComposite.setLayoutData(GridDataFactory.fillDefaults().grab(false, true).indent(0, 20).create()); buttonsComposite/* ww w.ja v a2s . co m*/ .setLayout(GridLayoutFactory.fillDefaults().numColumns(1).margins(0, 0).spacing(0, 3).create()); final Button addButton = new Button(buttonsComposite, SWT.FLAT); addButton.setLayoutData(GridDataFactory.fillDefaults().grab(true, false) .minSize(IDialogConstants.BUTTON_WIDTH, SWT.DEFAULT).create()); addButton.setText(Messages.add); final Button deleteButton = new Button(buttonsComposite, SWT.FLAT); deleteButton.setLayoutData(GridDataFactory.fillDefaults().grab(true, false) .minSize(IDialogConstants.BUTTON_WIDTH, SWT.DEFAULT).create()); deleteButton.setText(Messages.delete); deleteButton.setEnabled(false); final TableViewer boTableViewer = new TableViewer(group, SWT.BORDER | SWT.V_SCROLL | SWT.H_SCROLL); boTableViewer.getControl() .setLayoutData(GridDataFactory.fillDefaults().grab(true, true).hint(200, SWT.DEFAULT).create()); boTableViewer.getTable().setLinesVisible(true); boTableViewer.getTable().setHeaderVisible(true); final TableLayout tableLayout = new TableLayout(); tableLayout.addColumnData(new ColumnWeightData(1)); boTableViewer.getTable().setLayout(tableLayout); boTableViewer.setContentProvider(new ObservableListContentProvider()); final IViewerObservableValue observeSingleSelection = ViewersObservables .observeSingleSelection(boTableViewer); boTableViewer.getColumnViewerEditor() .addEditorActivationListener(new ColumnViewerEditorActivationListener() { @Override public void beforeEditorDeactivated(final ColumnViewerEditorDeactivationEvent event) { } @Override public void beforeEditorActivated(final ColumnViewerEditorActivationEvent event) { } @Override public void afterEditorDeactivated(final ColumnViewerEditorDeactivationEvent event) { final ISelection selection = boTableViewer.getSelection(); if (selection != null && ((IStructuredSelection) selection).getFirstElement() != null) { businessObjectDescriptionGroup.setText(NamingUtils.getSimpleName( ((BusinessObject) ((IStructuredSelection) selection).getFirstElement()) .getQualifiedName())); boTableViewer.refresh(); } else { businessObjectDescriptionGroup.setText(Messages.selectABusinessObjectToEdit); } } @Override public void afterEditorActivated(final ColumnViewerEditorActivationEvent event) { } }); createBusinessObjectNameColumn(ctx, observeSingleSelection, boTableViewer); final UpdateValueStrategy enableStrategy = new UpdateValueStrategy(); enableStrategy.setConverter(new Converter(Object.class, Boolean.class) { @Override public Object convert(final Object fromObject) { return fromObject != null; } }); ctx.bindValue(SWTObservables.observeEnabled(deleteButton), observeSingleSelection, new UpdateValueStrategy(UpdateValueStrategy.POLICY_NEVER), enableStrategy); final IObservableList businessObjectObserveList = PojoObservables.observeList(businessObjectModel, "businessObjects"); boTableViewer.setInput(businessObjectObserveList); addButton.addSelectionListener(new SelectionAdapter() { /* * (non-Javadoc) * @see org.eclipse.swt.events.SelectionAdapter#widgetSelected(org.eclipse.swt.events.SelectionEvent) */ @Override public void widgetSelected(final SelectionEvent e) { addBusinessObject(boTableViewer, businessObjectObserveList); } }); deleteButton.addSelectionListener(new SelectionAdapter() { /* * (non-Javadoc) * @see org.eclipse.swt.events.SelectionAdapter#widgetSelected(org.eclipse.swt.events.SelectionEvent) */ @Override public void widgetSelected(final SelectionEvent e) { deleteBusinessObject(boTableViewer, observeSingleSelection, businessObjectObserveList); } }); return observeSingleSelection; }
From source file:org.bonitasoft.studio.connector.model.definition.wizard.InputsWizardPage.java
License:Open Source License
@Override public void createControl(Composite parent) { context = new EMFDataBindingContext(); final Composite mainComposite = new Composite(parent, SWT.NONE); mainComposite.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create()); mainComposite.setLayout(GridLayoutFactory.fillDefaults().numColumns(2).margins(15, 15).create()); final TableViewer inputsViewer = new TableViewer(mainComposite, SWT.BORDER | SWT.FULL_SELECTION | SWT.MULTI); inputsViewer.getTable().setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create()); inputsViewer.getTable().setHeaderVisible(true); inputsViewer.getTable().setLinesVisible(true); inputsViewer.addSelectionChangedListener(this); inputsViewer.setContentProvider(new ArrayContentProvider()); TableLayout layout = new TableLayout(); layout.addColumnData(new ColumnWeightData(25)); layout.addColumnData(new ColumnWeightData(20)); layout.addColumnData(new ColumnWeightData(30)); layout.addColumnData(new ColumnWeightData(25)); inputsViewer.getTable().setLayout(layout); inputsViewer.getColumnViewerEditor() .addEditorActivationListener(new ColumnViewerEditorActivationListener() { @Override/*from w w w . j a v a2 s . co m*/ public void beforeEditorDeactivated(ColumnViewerEditorDeactivationEvent event) { } @Override public void beforeEditorActivated(ColumnViewerEditorActivationEvent event) { } @Override public void afterEditorDeactivated(ColumnViewerEditorDeactivationEvent event) { inputsViewer.refresh(); } @Override public void afterEditorActivated(ColumnViewerEditorActivationEvent event) { } }); TableViewerColumn inputNameColumn = new TableViewerColumn(inputsViewer, SWT.FILL); inputNameColumn.getColumn().setText(Messages.name); inputNameColumn.setEditingSupport(new InputNameEditingSupport(inputsViewer, definition, context)); inputNameColumn.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { return ((Input) element).getName(); } }); TableViewerColumn mandatoryColumn = new TableViewerColumn(inputsViewer, SWT.FILL); mandatoryColumn.getColumn().setText(Messages.mandatory); mandatoryColumn.setEditingSupport(new InputMandatoryEditingSupport(inputsViewer, context)); mandatoryColumn.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { if (((Input) element).isMandatory()) { return Messages.mandatory; } else { return Messages.optional; } } }); TableViewerColumn inputTypeColumn = new TableViewerColumn(inputsViewer, SWT.FILL); inputTypeColumn.getColumn().setText(Messages.type); inputTypeColumn.setEditingSupport(new InputTypeEditingSupport(inputsViewer, context)); inputTypeColumn.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { return ((Input) element).getType(); } }); TableViewerColumn defautltValueColumn = new TableViewerColumn(inputsViewer, SWT.FILL); defautltValueColumn.getColumn().setText(Messages.defaultValue); defautltValueColumn.setEditingSupport(new DefaultValueEditingSupport(inputsViewer, context)); defautltValueColumn.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { return ((Input) element).getDefaultValue(); } }); context.bindValue(ViewersObservables.observeInput(inputsViewer), EMFObservables.observeValue(definition, ConnectorDefinitionPackage.Literals.CONNECTOR_DEFINITION__INPUT)); final Composite buttonComposite = new Composite(mainComposite, SWT.NONE); buttonComposite.setLayoutData(GridDataFactory.fillDefaults().grab(false, true).create()); buttonComposite .setLayout(GridLayoutFactory.fillDefaults().numColumns(1).margins(0, 0).spacing(0, 3).create()); final Button addButton = new Button(buttonComposite, SWT.FLAT); addButton.setText(Messages.add); addButton.setLayoutData(GridDataFactory.fillDefaults().grab(true, false) .hint(DEFAULT_BUTTON_WIDTH_HINT, SWT.DEFAULT).create()); addButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { Input input = ConnectorDefinitionFactory.eINSTANCE.createInput(); input.setName(generateInputName()); input.setType(String.class.getName()); definition.getInput().add(input); inputsViewer.refresh(); inputsViewer.editElement(input, 0); } }); upButton = new Button(buttonComposite, SWT.FLAT); upButton.setText(Messages.up); upButton.setLayoutData(GridDataFactory.fillDefaults().grab(true, false) .hint(DEFAULT_BUTTON_WIDTH_HINT, SWT.DEFAULT).create()); upButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { Input selectedInput = (Input) ((IStructuredSelection) inputsViewer.getSelection()) .getFirstElement(); int index = definition.getInput().indexOf(selectedInput); if (index > 0) { definition.getInput().move(index - 1, selectedInput); } inputsViewer.refresh(); } }); downButton = new Button(buttonComposite, SWT.FLAT); downButton.setText(Messages.down); downButton.setLayoutData(GridDataFactory.fillDefaults().grab(true, false) .hint(DEFAULT_BUTTON_WIDTH_HINT, SWT.DEFAULT).create()); downButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { Input selectedInput = (Input) ((IStructuredSelection) inputsViewer.getSelection()) .getFirstElement(); int index = definition.getInput().indexOf(selectedInput); if (index < definition.getInput().size() - 1) { definition.getInput().move(index + 1, selectedInput); } } }); removeButton = new Button(buttonComposite, SWT.FLAT); removeButton.setText(Messages.remove); removeButton.setLayoutData(GridDataFactory.fillDefaults().grab(true, false) .hint(DEFAULT_BUTTON_WIDTH_HINT, SWT.DEFAULT).create()); removeButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { definition.getInput().removeAll(((IStructuredSelection) inputsViewer.getSelection()).toList()); inputsViewer.refresh(); } }); updateButtons(new StructuredSelection()); pageSupport = WizardPageSupport.create(this, context); setControl(mainComposite); }
From source file:org.bonitasoft.studio.connector.model.definition.wizard.OutputsWizardPage.java
License:Open Source License
@Override public void createControl(Composite parent) { context = new EMFDataBindingContext(); final Composite mainComposite = new Composite(parent, SWT.NONE); mainComposite.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create()); mainComposite.setLayout(GridLayoutFactory.fillDefaults().numColumns(2).margins(15, 15).create()); final TableViewer outputsViewer = new TableViewer(mainComposite, SWT.BORDER | SWT.FULL_SELECTION | SWT.MULTI); outputsViewer.getTable().setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create()); outputsViewer.getTable().setHeaderVisible(true); outputsViewer.getTable().setLinesVisible(true); outputsViewer.addSelectionChangedListener(this); outputsViewer.setContentProvider(new ArrayContentProvider()); TableLayout layout = new TableLayout(); layout.addColumnData(new ColumnWeightData(30)); layout.addColumnData(new ColumnWeightData(70)); outputsViewer.getTable().setLayout(layout); outputsViewer.getColumnViewerEditor() .addEditorActivationListener(new ColumnViewerEditorActivationListener() { @Override//from w ww . ja va 2s. c om public void beforeEditorDeactivated(ColumnViewerEditorDeactivationEvent event) { } @Override public void beforeEditorActivated(ColumnViewerEditorActivationEvent event) { } @Override public void afterEditorDeactivated(ColumnViewerEditorDeactivationEvent event) { outputsViewer.refresh(); } @Override public void afterEditorActivated(ColumnViewerEditorActivationEvent event) { } }); TableViewerColumn outputNameColumn = new TableViewerColumn(outputsViewer, SWT.FILL); outputNameColumn.getColumn().setText(Messages.name); outputNameColumn.setEditingSupport(new OutputNameEditingSupport(outputsViewer, definition, context)); outputNameColumn.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { return ((Output) element).getName(); } }); TableViewerColumn outputTypeColumn = new TableViewerColumn(outputsViewer, SWT.FILL); outputTypeColumn.getColumn().setText(Messages.type); outputTypeColumn.setEditingSupport(new OutputTypeEditingSupport(outputsViewer, context)); outputTypeColumn.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { return ((Output) element).getType(); } }); context.bindValue(ViewersObservables.observeInput(outputsViewer), EMFObservables.observeValue(definition, ConnectorDefinitionPackage.Literals.CONNECTOR_DEFINITION__OUTPUT)); final Composite buttonComposite = new Composite(mainComposite, SWT.NONE); buttonComposite.setLayoutData(GridDataFactory.fillDefaults().grab(false, true).create()); buttonComposite .setLayout(GridLayoutFactory.fillDefaults().numColumns(1).margins(0, 0).spacing(0, 3).create()); final Button addButton = new Button(buttonComposite, SWT.FLAT); addButton.setText(Messages.add); addButton.setLayoutData(GridDataFactory.fillDefaults().grab(true, false) .hint(DEFAULT_BUTTON_WIDTH_HINT, SWT.DEFAULT).create()); addButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { Output input = ConnectorDefinitionFactory.eINSTANCE.createOutput(); input.setName(generateOutputName()); input.setType(String.class.getName()); definition.getOutput().add(input); outputsViewer.refresh(); outputsViewer.editElement(input, 0); } }); upButton = new Button(buttonComposite, SWT.FLAT); upButton.setText(Messages.up); upButton.setLayoutData(GridDataFactory.fillDefaults().grab(true, false) .hint(DEFAULT_BUTTON_WIDTH_HINT, SWT.DEFAULT).create()); upButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { Output selectedInput = (Output) ((IStructuredSelection) outputsViewer.getSelection()) .getFirstElement(); int index = definition.getOutput().indexOf(selectedInput); if (index > 0) { definition.getOutput().move(index - 1, selectedInput); } outputsViewer.refresh(); } }); downButton = new Button(buttonComposite, SWT.FLAT); downButton.setText(Messages.down); downButton.setLayoutData(GridDataFactory.fillDefaults().grab(true, false) .hint(DEFAULT_BUTTON_WIDTH_HINT, SWT.DEFAULT).create()); downButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { Output selectedInput = (Output) ((IStructuredSelection) outputsViewer.getSelection()) .getFirstElement(); int index = definition.getOutput().indexOf(selectedInput); if (index < definition.getOutput().size() - 1) { definition.getOutput().move(index + 1, selectedInput); } } }); removeButton = new Button(buttonComposite, SWT.FLAT); removeButton.setText(Messages.remove); removeButton.setLayoutData(GridDataFactory.fillDefaults().grab(true, false) .hint(DEFAULT_BUTTON_WIDTH_HINT, SWT.DEFAULT).create()); removeButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { definition.getOutput().removeAll(((IStructuredSelection) outputsViewer.getSelection()).toList()); outputsViewer.refresh(); } }); updateButtons(new StructuredSelection()); pageSupport = WizardPageSupport.create(this, context); setControl(mainComposite); }
From source file:org.bonitasoft.studio.connector.model.definition.wizard.PageWidgetsWizardPage.java
License:Open Source License
protected void createWidgetViewer(Composite parent) { final Composite viewerComposite = new Composite(parent, SWT.NONE); viewerComposite.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create()); viewerComposite.setLayout(GridLayoutFactory.fillDefaults().numColumns(2).create()); final TreeViewer inputsViewer = new TreeViewer(viewerComposite, SWT.BORDER | SWT.FULL_SELECTION); inputsViewer.getTree().setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create()); inputsViewer.getTree().setHeaderVisible(true); inputsViewer.addSelectionChangedListener(this); inputsViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory)); inputsViewer.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory)); inputsViewer.getColumnViewerEditor() .addEditorActivationListener(new ColumnViewerEditorActivationListener() { @Override//from www .j a v a 2 s . c om public void beforeEditorDeactivated(ColumnViewerEditorDeactivationEvent event) { } @Override public void beforeEditorActivated(ColumnViewerEditorActivationEvent event) { } @Override public void afterEditorDeactivated(ColumnViewerEditorDeactivationEvent event) { inputsViewer.setSelection(new StructuredSelection()); } @Override public void afterEditorActivated(ColumnViewerEditorActivationEvent event) { } }); final TableLayout layout = new TableLayout(); layout.addColumnData(new ColumnWeightData(70)); layout.addColumnData(new ColumnWeightData(30)); inputsViewer.getTree().setLayout(layout); TreeViewerColumn widgetColumn = new TreeViewerColumn(inputsViewer, SWT.FILL); widgetColumn.getColumn().setText(Messages.widget); widgetColumn.setLabelProvider(new ColumnLabelProvider() { WidgetLabelProvider labelProvider = new WidgetLabelProvider(); @Override public String getText(Object element) { Component comp = (Component) element; String label = messageProvider.getFieldLabel(messages, comp.getId()); if (label == null || label.isEmpty()) { label = comp.getId(); } return labelProvider.getText(comp.eClass()) + " " + label; } }); TreeViewerColumn inputNameColumn = new TreeViewerColumn(inputsViewer, SWT.FILL); inputNameColumn.getColumn().setText(Messages.input); inputNameColumn .setEditingSupport(new WidgetInputNameEditingSupport(inputsViewer, definition, page, context)); inputNameColumn.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { if (element instanceof WidgetComponent) { return ((WidgetComponent) element).getInputName(); } else { return ""; } } }); context.bindValue(ViewersObservables.observeInput(inputsViewer), PojoProperties.value(PageWidgetsWizardPage.class, "page").observe(this)); inputsViewer.expandAll(); final Composite buttonComposite = new Composite(viewerComposite, SWT.NONE); buttonComposite.setLayoutData(GridDataFactory.fillDefaults().grab(false, true).create()); buttonComposite .setLayout(GridLayoutFactory.fillDefaults().numColumns(1).margins(0, 0).spacing(0, 3).create()); final Button addButton = new Button(buttonComposite, SWT.FLAT); addButton.setText(Messages.Add); addButton.setLayoutData(GridDataFactory.fillDefaults().grab(true, false) .hint(DEFAULT_BUTTON_WIDTH_HINT, SWT.DEFAULT).create()); addButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { SelectPageWidgetDialog dialog = new SelectPageWidgetDialog(Display.getDefault().getActiveShell(), definition, page, null, null); if (dialog.open() == Dialog.OK) { Component widget = dialog.getWidget(); messageProvider.setFieldLabel(messages, widget.getId(), dialog.getDisplayName()); messageProvider.setFieldDescription(messages, widget.getId(), dialog.getDescription()); Component component = (Component) ((IStructuredSelection) inputsViewer.getSelection()) .getFirstElement(); if (component instanceof Group) { ((Group) component).getWidget().add(widget); } else { page.getWidget().add(widget); } inputsViewer.refresh(); getContainer().updateMessage(); getContainer().updateButtons(); } } }); editButton = new Button(buttonComposite, SWT.FLAT); editButton.setText(Messages.update); editButton.setLayoutData(GridDataFactory.fillDefaults().grab(true, false) .hint(DEFAULT_BUTTON_WIDTH_HINT, SWT.DEFAULT).create()); editButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { Component component = (Component) ((IStructuredSelection) inputsViewer.getSelection()) .getFirstElement(); SelectPageWidgetDialog dialog = new SelectPageWidgetDialog(Display.getDefault().getActiveShell(), definition, page, component, EcoreUtil.copy(component)); dialog.setDisplayName(messageProvider.getFieldLabel(messages, component.getId())); dialog.setDescription(messageProvider.getFieldDescription(messages, component.getId())); if (dialog.open() == Dialog.OK) { Component widget = dialog.getWidget(); messageProvider.setFieldLabel(messages, widget.getId(), dialog.getDisplayName()); messageProvider.setFieldDescription(messages, widget.getId(), dialog.getDescription()); if (component != null && component.eContainer() instanceof Group) { Group group = (Group) component.eContainer(); int i = group.getWidget().indexOf(component); group.getWidget().remove(i); group.getWidget().add(i, widget); } else { int i = page.getWidget().indexOf(component); page.getWidget().remove(i); page.getWidget().add(i, widget); } inputsViewer.refresh(); getContainer().updateMessage(); getContainer().updateButtons(); } } }); upButton = new Button(buttonComposite, SWT.FLAT); upButton.setText(Messages.up); upButton.setLayoutData(GridDataFactory.fillDefaults().grab(true, false) .hint(DEFAULT_BUTTON_WIDTH_HINT, SWT.DEFAULT).create()); upButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { Component selectedWidget = (Component) ((IStructuredSelection) inputsViewer.getSelection()) .getFirstElement(); int index = page.getWidget().indexOf(selectedWidget); if (index > 0) { page.getWidget().move(index - 1, selectedWidget); } inputsViewer.refresh(); } }); downButton = new Button(buttonComposite, SWT.FLAT); downButton.setText(Messages.down); downButton.setLayoutData(GridDataFactory.fillDefaults().grab(true, false) .hint(DEFAULT_BUTTON_WIDTH_HINT, SWT.DEFAULT).create()); downButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { Component selectedWidget = (Component) ((IStructuredSelection) inputsViewer.getSelection()) .getFirstElement(); int index = page.getWidget().indexOf(selectedWidget); if (index < page.getWidget().size() - 1) { page.getWidget().move(index + 1, selectedWidget); } inputsViewer.refresh(); } }); removeButton = new Button(buttonComposite, SWT.FLAT); removeButton.setText(Messages.remove); removeButton.setLayoutData(GridDataFactory.fillDefaults().grab(true, false) .hint(DEFAULT_BUTTON_WIDTH_HINT, SWT.DEFAULT).create()); removeButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { page.getWidget().removeAll(((IStructuredSelection) inputsViewer.getSelection()).toList()); inputsViewer.refresh(); } }); }
From source file:org.bonitasoft.studio.parameters.wizard.page.ParametersConfigurationWizardPage.java
License:Open Source License
protected void createParameterComposite(final Composite parent) { final Composite parameterComposite = new Composite(parent, SWT.NONE); parameterComposite.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create()); parameterComposite.setLayout(GridLayoutFactory.fillDefaults().numColumns(1).margins(0, 0).create()); final Label descriptionLabel = new Label(parameterComposite, SWT.WRAP); descriptionLabel.setText(getDescription()); descriptionLabel.setLayoutData(GridDataFactory.swtDefaults().grab(true, false).create()); parameterTableViewer = new TableViewer(parameterComposite, SWT.FULL_SELECTION | SWT.BORDER | SWT.MULTI | SWT.V_SCROLL); parameterTableViewer.getTable().setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create()); parameterTableViewer.setContentProvider(ArrayContentProvider.getInstance()); final TableLayout tableLayout = new TableLayout(); tableLayout.addColumnData(new ColumnWeightData(25)); tableLayout.addColumnData(new ColumnWeightData(25)); tableLayout.addColumnData(new ColumnWeightData(50)); parameterTableViewer.getTable().setLayout(tableLayout); parameterTableViewer.getColumnViewerEditor() .addEditorActivationListener(new ColumnViewerEditorActivationListener() { @Override//from w w w. j a va2s . c o m public void beforeEditorDeactivated(final ColumnViewerEditorDeactivationEvent event) { } @Override public void beforeEditorActivated(final ColumnViewerEditorActivationEvent event) { } @Override public void afterEditorDeactivated(final ColumnViewerEditorDeactivationEvent event) { if (getContainer() != null) { getContainer().updateMessage(); } } @Override public void afterEditorActivated(final ColumnViewerEditorActivationEvent event) { } }); final TableViewerColumn columnNameViewer = new TableViewerColumn(parameterTableViewer, SWT.NONE); columnNameViewer.setLabelProvider(new ParameterNameLabelProvider()); final TableColumn column = columnNameViewer.getColumn(); column.setText(Messages.name); final TableViewerColumn columnTypeViewer = new TableViewerColumn(parameterTableViewer, SWT.NONE); columnTypeViewer.setLabelProvider(new ParameterTypeLabelProvider()); final TableColumn column3 = columnTypeViewer.getColumn(); column3.setText(Messages.type); final TableViewerColumn columnValueViewer = new TableViewerColumn(parameterTableViewer, SWT.NONE); columnValueViewer.setLabelProvider(new ParameterValueLabelProvider()); valueEditingSupport = new ParameterValueEditingSupport(columnValueViewer.getViewer(), this); columnValueViewer.setEditingSupport(valueEditingSupport); final TableColumn column2 = columnValueViewer.getColumn(); column2.setText(Messages.value); parameterTableViewer.getTable().setHeaderVisible(true); parameterTableViewer.getTable().setLinesVisible(true); final TableColumnSorter sorter = new TableColumnSorter(parameterTableViewer); sorter.setColumn(column); }