List of usage examples for org.eclipse.jface.viewers ColumnViewerEditorActivationEvent MOUSE_CLICK_SELECTION
int MOUSE_CLICK_SELECTION
To view the source code for org.eclipse.jface.viewers ColumnViewerEditorActivationEvent MOUSE_CLICK_SELECTION.
Click Source Link
From source file:com.gorillalogic.monkeyconsole.tableview.MonkeyTalkTabularEditor.java
License:Open Source License
/** * Creates the main window's contents//from w w w.j a v a2s.c o m * * @param parent * the main window * @return Control */ protected Control createContents(Composite parent) { Composite composite = new Composite(parent, SWT.NONE); composite.setLayout(new GridLayout(1, false)); // Add the TableViewer tv = new TableViewer(composite, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION | SWT.BORDER); tv.setContentProvider(new CommandContentProvider()); tv.setInput(commands); table = tv.getTable(); table.setLayoutData(new GridData(GridData.FILL_BOTH)); TableColumnLayout layout = new TableColumnLayout(); composite.setLayout(layout); // Row Number Column TableViewerColumn row_col = createTableViewerColumn(ROW, 100, 0); row_col.setLabelProvider(new RowNumberLabelProvider(commands)); layout.setColumnData(row_col.getColumn(), new ColumnWeightData(10)); // Component Type Column TableViewerColumn component_col = createTableViewerColumn(COMPONENT, 100, 1); component_col.setLabelProvider(new ComponentLabelProvider()); component_col.setEditingSupport(new ComponentEditingSupport(tv, limitedComponentSet) { public void dataChanged() { MonkeyTalkTabularEditor.this.doDataChanged(); }; }); layout.setColumnData(component_col.getColumn(), new ColumnWeightData(30)); TableViewerColumn monkeyid_col = createTableViewerColumn(MONKEYID, 100, 2); monkeyid_col.setLabelProvider(new MonkeyidLabelProvider()); monkeyid_col.setEditingSupport(new MonkeyidEditingSupport(tv) { public void dataChanged() { MonkeyTalkTabularEditor.this.doDataChanged(); }; }); layout.setColumnData(monkeyid_col.getColumn(), new ColumnWeightData(25)); TableViewerColumn action_col = createTableViewerColumn(ACTION, 100, 3); action_col.setLabelProvider(new ActionLabelProvider()); action_col.setEditingSupport(new ActionEditingSupport(tv) { public void dataChanged() { MonkeyTalkTabularEditor.this.doDataChanged(); }; }); layout.setColumnData(action_col.getColumn(), new ColumnWeightData(30)); TableViewerColumn args_col = createTableViewerColumn(ARGS, 100, 4); args_col.setLabelProvider(new ArgsLabelProvider()); args_col.setEditingSupport(new ArgsEditingSupport(tv) { public void dataChanged() { MonkeyTalkTabularEditor.this.doDataChanged(); }; }); layout.setColumnData(args_col.getColumn(), new ColumnWeightData(40)); TableViewerColumn timeout_col = createTableViewerColumn(TIMEOUT, 100, 5); timeout_col.setLabelProvider(new TimeoutLabelProvider()); timeout_col.setEditingSupport(new TimeoutEditingSupport(tv) { public void dataChanged() { MonkeyTalkTabularEditor.this.doDataChanged(); }; }); layout.setColumnData(timeout_col.getColumn(), new ColumnWeightData(20)); TableViewerColumn thinktime_col = createTableViewerColumn(THINKTIME, 100, 6); thinktime_col.setLabelProvider(new ThinktimeLabelProvider()); thinktime_col.setEditingSupport(new ThinktimeEditingSupport(tv) { public void dataChanged() { MonkeyTalkTabularEditor.this.doDataChanged(); }; }); layout.setColumnData(thinktime_col.getColumn(), new ColumnWeightData(20)); String extencion = FilenameUtils .getExtension(((FileEditorInput) this.getEditorInput()).getPath().toFile().getName()); if (extencion.equals("mt")) { TableViewerColumn shouldfail_col = createTableViewerColumn(SHOULDFAIL, 100, 7); shouldfail_col.getColumn().setAlignment(SWT.CENTER); shouldfail_col.setLabelProvider(new ShouldFailLabelProvider(tv)); shouldfail_col.setEditingSupport(new ShouldFailEditingSupport(tv) { public void dataChanged() { MonkeyTalkTabularEditor.this.doDataChanged(); }; }); layout.setColumnData(shouldfail_col.getColumn(), new ColumnWeightData(15)); } tv.getTable().addListener(SWT.MenuDetect, new Listener() { public void handleEvent(Event event) { if (menueventsCaught != event.time) { new ContextMenu(MonkeyTalkTabularEditor.this, event).show(); menueventsCaught = event.time; } } }); table.addListener(SWT.MouseDoubleClick, new Listener() { @Override public void handleEvent(Event e) { TableItem item = table.getItem(new Point(e.x, e.y)); if (item == null) { } else { // click link case String comp = ((TableRow) item.getData()).getComponentType(); if (comp != null && (comp.equalsIgnoreCase("Script") || comp.equalsIgnoreCase("Test") || comp.equalsIgnoreCase("SetUp") || comp.equalsIgnoreCase("Teardown"))) { try { IEditorPart ieditorpart = MonkeyTalkTabularEditor.this.getEditorSite().getPage() .getActiveEditor(); String dotMt = ".mt"; if (((TableRow) item.getData()).getMonkeyId().contains(".mt") || ((TableRow) item.getData()).getMonkeyId().contains(".js")) { dotMt = ""; } IFile fileToBeOpened = ((IFileEditorInput) ieditorpart.getEditorInput()).getFile() .getProject().getFile(((TableRow) item.getData()).getMonkeyId() + dotMt); IEditorInput editorInput = new FileEditorInput(fileToBeOpened); MonkeyTalkTabularEditor.this.getEditorSite().getPage().openEditor(editorInput, "com.gorillalogic.monkeyconsole.editors.FoneMonkeyTestEditor"); commandKeyDown = false; } catch (CoreException e2) { // TODO Auto-generated catch block e2.printStackTrace(); } } } } }); table.addListener(SWT.MouseUp, new Listener() { @Override public void handleEvent(Event e) { TableItem item = table.getItem(new Point(e.x, e.y)); if (item == null) { if (e.y < (table.getItemCount() * table.getItemHeight()) + table.getItemHeight()) { appendRow(); } } else { // click link case String comp = ((TableRow) item.getData()).getComponentType(); if (comp != null && commandKeyDown && tv.getCell(new Point(e.x, e.y)).getColumnIndex() == 2 && (comp.equalsIgnoreCase("Script") || comp.equalsIgnoreCase("Test") || comp.equalsIgnoreCase("Run") || comp.equalsIgnoreCase("RunWith") || comp.equalsIgnoreCase("SetUp") || comp.equalsIgnoreCase("Teardown"))) { try { IEditorPart ieditorpart = MonkeyTalkTabularEditor.this.getEditorSite().getPage() .getActiveEditor(); IFile fileToBeOpened = ((IFileEditorInput) ieditorpart.getEditorInput()).getFile() .getProject().getFile(tv.getCell(new Point(e.x, e.y)).getText() + ".mt"); IEditorInput editorInput = new FileEditorInput(fileToBeOpened); MonkeyTalkTabularEditor.this.getEditorSite().getPage().openEditor(editorInput, "com.gorillalogic.monkeyconsole.editors.FoneMonkeyTestEditor"); commandKeyDown = false; } catch (CoreException e2) { // TODO Auto-generated catch block e2.printStackTrace(); } } } } }); // FOCUS TRAVERSAL FocusCellHighlighter highlighter = new FocusCellHighlighter(tv) { }; TableViewerFocusCellManager focusCellManager = new TableViewerFocusCellManager(tv, highlighter) { }; ColumnViewerEditorActivationStrategy actSupport = new ColumnViewerEditorActivationStrategy(tv) { protected boolean isEditorActivationEvent(ColumnViewerEditorActivationEvent event) { return event.eventType == ColumnViewerEditorActivationEvent.TRAVERSAL || event.eventType == ColumnViewerEditorActivationEvent.MOUSE_CLICK_SELECTION || (event.eventType == ColumnViewerEditorActivationEvent.KEY_PRESSED && event.keyCode == SWT.CR) || event.eventType == ColumnViewerEditorActivationEvent.PROGRAMMATIC; } }; TableViewerEditor.create(tv, focusCellManager, actSupport, ColumnViewerEditor.TABBING_HORIZONTAL | ColumnViewerEditor.TABBING_MOVE_TO_ROW_NEIGHBOR | ColumnViewerEditor.TABBING_VERTICAL | ColumnViewerEditor.KEYBOARD_ACTIVATION); table.setHeaderVisible(true); table.setLinesVisible(true); table.addKeyListener(new KeyListener() { @Override public void keyPressed(KeyEvent arg0) { if (arg0.keyCode == SWT.CTRL || arg0.keyCode == SWT.COMMAND) { commandKeyDown = true; } } @Override public void keyReleased(KeyEvent arg0) { if (arg0.keyCode == SWT.CTRL || arg0.keyCode == SWT.COMMAND) { commandKeyDown = false; } if (commandKeyDown && (arg0.character == 'P' || arg0.character == 'p')) { if (monkeyControls.isCurrentlyConnected() && !monkeyControls.isRecordingON() && getLimitedComponentSet() == null) monkeyControls.startReplayRange(tv.getTable().getSelectionIndex(), tv.getTable().getSelectionIndex() + tv.getTable().getSelectionCount()); } System.out.println(arg0.keyCode); if (arg0.keyCode == SWT.DEL || arg0.keyCode == 8) { deleteRows(getTv().getTable().getSelectionIndices()); } } }); int ops = DND.DROP_COPY | DND.DROP_MOVE; Transfer[] transfers = new Transfer[] { TextTransfer.getInstance() }; tv.addDropSupport(ops, transfers, new GadgetTableDropAdapter(tv)); return composite; }
From source file:com.ibm.etools.mft.conversion.esb.editor.parameter.GlobalOptionsEditor.java
License:Open Source License
protected TableViewer createConverterSection(final ScrolledForm form, String sectionTitle, String sectionDesc, String[] columnHeadings, String[] columnProperties, int[] columnWidthes, final String classSelectionMessage, ILabelProvider labelProvider, final Class baseClass) { Section section = getToolkit().createSection(form.getBody(), Section.DESCRIPTION | Section.TITLE_BAR | Section.TWISTIE | Section.EXPANDED); TableWrapData td = new TableWrapData(TableWrapData.FILL_GRAB); td.colspan = 1;//from w ww .ja v a 2s .com section.setLayoutData(td); section.addExpansionListener(new ExpansionAdapter() { public void expansionStateChanged(ExpansionEvent e) { form.reflow(true); } }); section.setText(sectionTitle); section.setDescription(sectionDesc); Composite sectionClient = getToolkit().createComposite(section); sectionClient.setLayout(new GridLayout(2, false)); section.setClient(sectionClient); final TableViewer viewer = new TableViewer(sectionClient, SWT.BORDER | SWT.FULL_SELECTION); viewer.getTable().setHeaderVisible(true); viewer.getTable().setLinesVisible(true); GridData data = new GridData(GridData.FILL_BOTH); data.heightHint = 130; viewer.getControl().setLayoutData(data); viewer.setContentProvider(new ArrayContentProvider()); viewer.setLabelProvider(labelProvider); viewer.addDoubleClickListener(this); viewer.setSorter(new ViewerSorter() { @Override public int compare(Viewer viewer, Object e1, Object e2) { Converter c1 = (Converter) e1; Converter c2 = (Converter) e2; return c1.getType().compareTo(c2.getType()); } }); for (int i = 0; i < columnHeadings.length; i++) { TableColumn column = new TableColumn(viewer.getTable(), SWT.None); column.setText(columnHeadings[i]); column.setResizable(true); column.setWidth(columnWidthes[i]); } viewer.setColumnProperties(columnProperties); viewer.setCellEditors( new CellEditor[] { null, null, null, new DialogCellEditor((Composite) viewer.getControl()) { @Override protected Object openDialogBox(Control cellEditorWindow) { Converter converter = (Converter) ((IStructuredSelection) viewer.getSelection()) .getFirstElement(); ClassSelectionDialog d = new ClassSelectionDialog(cellEditorWindow.getShell(), (ClassDefinition) getValue(), converter.getType(), classSelectionMessage, baseClass); if (d.open() == ClassSelectionDialog.OK) { if (d.getClazz() == null) { return d.getModel(); } if (d.getClazz().length() == 0) { doSetValue(null); return null; } ClassDefinition def = new ClassDefinition(); def.setResourceType(d.getResourceType()); def.setResourcePath(d.getResourcePath()); def.setClazz(d.getClazz()); return def; } return d.getModel(); } protected void updateContents(Object value) { if (value != null) { if (value != null && value.toString().length() == 0) { value = WESBConversionMessages.GlobalOptionsEditor_defaultConverter; } else if (value instanceof ClassDefinition) { value = ((ClassDefinition) value).getClazz(); } } else { ClassDefinition oldValue = null; if (converterBeingEditted != null) { oldValue = converterBeingEditted.getClazz(); converterBeingEditted.setClazz(null); } try { if (converterBeingEditted instanceof PrimitiveConverter) { IPrimitiveConverter ci = PrimitiveManager .getConverter(converterBeingEditted.getType(), null, getModel()); String s = ci.getClass().getName(); value = PrimitiveManager.getConverterDisplayName(s); } else if (converterBeingEditted instanceof BindingConverter) { IBindingConverter ci = BindingManager .getConverter(converterBeingEditted.getType(), null, getModel()); String s = ci.getClass().getName(); value = BindingManager.getConverterDisplayName(s); } } catch (Exception e) { value = ""; //$NON-NLS-1$ } finally { if (converterBeingEditted != null) { converterBeingEditted.setClazz(oldValue); } } } super.updateContents(value); } } }); viewer.setCellModifier(new ICellModifier() { @Override public void modify(Object element, String property, Object value) { TableItem ti = (TableItem) element; Converter c = (Converter) ti.getData(); c.setClazz((ClassDefinition) value); viewer.refresh(c); changed(); } @Override public Object getValue(Object element, String property) { Converter c = (Converter) element; converterBeingEditted = (Converter) element; return c.getClazz(); } @Override public boolean canModify(Object element, String property) { if ("Converter Class".equals(property)) { //$NON-NLS-1$ return true; } return false; } }); FocusCellOwnerDrawHighlighter highlighter = new FocusCellOwnerDrawHighlighter(viewer); if (WESBConversionMessages.GlobalOptionsEditor_primitiveConverters.equals(sectionTitle)) primitiveHighlighter = highlighter; else if (WESBConversionMessages.GlobalOptionsEditor_bindingConverters.equals(sectionTitle)) bindingHighlighter = highlighter; TableViewerFocusCellManager focusCellManager = new TableViewerFocusCellManager(viewer, highlighter); ColumnViewerEditorActivationStrategy activationSupport = new ColumnViewerEditorActivationStrategy(viewer) { @Override protected boolean isEditorActivationEvent(ColumnViewerEditorActivationEvent event) { return event.eventType == ColumnViewerEditorActivationEvent.TRAVERSAL || event.eventType == ColumnViewerEditorActivationEvent.MOUSE_CLICK_SELECTION || (event.eventType == ColumnViewerEditorActivationEvent.KEY_PRESSED && event.keyCode == SWT.CR) || event.eventType == ColumnViewerEditorActivationEvent.PROGRAMMATIC; } }; activationSupport.setEnableEditorActivationWithKeyboard(true); TableViewerEditor.create(viewer, focusCellManager, activationSupport, ColumnViewerEditor.TABBING_HORIZONTAL | ColumnViewerEditor.TABBING_MOVE_TO_ROW_NEIGHBOR | ColumnViewerEditor.TABBING_VERTICAL | ColumnViewerEditor.KEYBOARD_ACTIVATION); return viewer; }
From source file:com.ibm.etools.mft.conversion.esb.editor.parameter.SourceProjectEditor.java
License:Open Source License
@Override public void createControls(Composite parent) { updateProjectsInModel();//w ww . j a va 2 s . c o m Composite container = new Composite(parent, SWT.None); container.setLayout(new GridLayout(2, false)); container.setLayoutData(new GridData(GridData.FILL_BOTH)); rootComposite = container; importLink = new Link(container, SWT.None); importLink.setText(WESBConversionMessages.SourceProjectEditor_importLink); GridData data = new GridData(); data.verticalAlignment = SWT.BEGINNING; data.horizontalSpan = 2; importLink.setLayoutData(data); importLink.addSelectionListener(this); viewer = new CheckboxTreeViewer(container, SWT.BORDER | SWT.V_SCROLL | SWT.FULL_SELECTION); viewer.getTree().setLinesVisible(true); viewer.getTree().setHeaderVisible(true); data = new GridData(GridData.FILL_BOTH); data.horizontalSpan = 2; // data.heightHint = 200; viewer.getTree().setLayoutData(data); for (int i = 0; i < COLUMN_HEADINGS.length; i++) { TreeColumn column = new TreeColumn(viewer.getTree(), SWT.None); column.setText(COLUMN_HEADINGS[i]); column.setResizable(true); column.setWidth(WIDTHES[i]); } viewer.addCheckStateListener(this); viewer.setContentProvider(new WESBProjectContentProvider()); viewer.setLabelProvider(new ProjectLabelProvider()); CustomTextCellEditor cellEditor = new CustomTextCellEditor(viewer.getTree()) { @Override public String isValid(Object value) { return getErrorMessage(); } }; viewer.setCellEditors(new CellEditor[] { null, cellEditor }); cellEditor.setValidator(new ICellEditorValidator() { @Override public String isValid(Object value) { return isValidTargetName(value.toString()); } }); viewer.setCellModifier(new ICellModifier() { @Override public void modify(Object element, String property, Object value) { IProject p = (IProject) ((TreeItem) element).getData(); WESBProject wesbp = projectsInModel.get(p.getName()); if (wesbp == null) { wesbp = new WESBProject(); wesbp.setName(p.getName()); getModel().getSourceProjects().add(wesbp); updateProjectsInModel(); } if (value != null) { wesbp.setTargetName(value.toString()); viewer.refresh(p); changed(); } } @Override public Object getValue(Object element, String property) { IProject p = (IProject) element; WESBProject wesbp = projectsInModel.get(p.getName()); if (wesbp == null) { return ""; //$NON-NLS-1$ } String targetName = wesbp.getTargetName(); return targetName == null ? "" : targetName; //$NON-NLS-1$ } @Override public boolean canModify(Object element, String property) { projectBeingEditted = (IProject) element; return true; } }); viewer.setInput(ResourcesPlugin.getWorkspace()); viewer.setColumnProperties(PROPERTIES); FocusCellOwnerDrawHighlighter projectHighlighter = new FocusCellOwnerDrawHighlighter(viewer); TreeViewerFocusCellManager focusCellManager = new TreeViewerFocusCellManager(viewer, projectHighlighter); ColumnViewerEditorActivationStrategy activationSupport = new ColumnViewerEditorActivationStrategy(viewer) { @Override protected boolean isEditorActivationEvent(ColumnViewerEditorActivationEvent event) { return event.eventType == ColumnViewerEditorActivationEvent.TRAVERSAL || event.eventType == ColumnViewerEditorActivationEvent.MOUSE_CLICK_SELECTION || (event.eventType == ColumnViewerEditorActivationEvent.KEY_PRESSED && event.keyCode == SWT.CR) || event.eventType == ColumnViewerEditorActivationEvent.PROGRAMMATIC; } }; activationSupport.setEnableEditorActivationWithKeyboard(true); TreeViewerEditor.create(viewer, focusCellManager, activationSupport, ColumnViewerEditor.TABBING_HORIZONTAL | ColumnViewerEditor.TABBING_MOVE_TO_ROW_NEIGHBOR | ColumnViewerEditor.TABBING_VERTICAL | ColumnViewerEditor.KEYBOARD_ACTIVATION); Composite container2 = new Composite(container, SWT.None); GridLayout layout = new GridLayout(2, false); layout.marginWidth = 0; container2.setLayout(layout); data = new GridData(); data.horizontalSpan = 2; data.horizontalIndent = 0; container2.setLayoutData(data); selectAll = new Button(container2, SWT.NONE); selectAll.setText(WESBConversionMessages.projectSelectionPage_SelectAll); data = new GridData(); data.horizontalAlignment = SWT.BEGINNING; selectAll.setLayoutData(data); selectAll.addSelectionListener(this); deselectAll = new Button(container2, SWT.NONE); deselectAll.setText(WESBConversionMessages.projectSelectionPage_DeselectAll); data = new GridData(); data.horizontalAlignment = SWT.BEGINNING; deselectAll.setLayoutData(data); deselectAll.addSelectionListener(this); includeReferencedProjectOption = new Button(container, SWT.CHECK); includeReferencedProjectOption .setText(WESBConversionMessages.projectSelectionPage_IncludeReferencedProject); includeReferencedProjectOption .setSelection(getModel().getGlobalConfiguration().isIncludeReferencedProject()); updateViewer(); if (includeReferencedProjectOption.getSelection()) { ensureAllReferencedProjectsAreChecked(); updateModel(); } includeReferencedProjectOption.addSelectionListener(this); ResourcesPlugin.getWorkspace().addResourceChangeListener(this, IResourceChangeEvent.POST_CHANGE); }
From source file:com.mentor.nucleus.bp.ui.sem.viewers.SEMTableViewer.java
License:Open Source License
public SEMTableViewer(Composite parent, int style) { super(parent, style); getTable().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1)); getTable().setHeaderVisible(true);/* ww w . j a v a 2 s. c om*/ getTable().setLinesVisible(true); TableViewerFocusCellManager focusCellManager = new TableViewerFocusCellManager(this, new SEMFocusCellHighlighter(this)); ColumnViewerEditorActivationStrategy actSupport = new ColumnViewerEditorActivationStrategy(this) { protected boolean isEditorActivationEvent(ColumnViewerEditorActivationEvent event) { return event.eventType == ColumnViewerEditorActivationEvent.TRAVERSAL || event.eventType == ColumnViewerEditorActivationEvent.MOUSE_CLICK_SELECTION || (event.eventType == ColumnViewerEditorActivationEvent.KEY_PRESSED && event.keyCode == SWT.CR) || event.eventType == ColumnViewerEditorActivationEvent.PROGRAMMATIC; } }; TableViewerEditor.create(this, focusCellManager, actSupport, ColumnViewerEditor.TABBING_HORIZONTAL | ColumnViewerEditor.TABBING_MOVE_TO_ROW_NEIGHBOR | ColumnViewerEditor.TABBING_VERTICAL | ColumnViewerEditor.KEYBOARD_ACTIVATION); }
From source file:com.rcpcompany.uibindings.internal.ManagerImpl.java
License:Open Source License
@Override public boolean isEditorActivationEvent(ColumnViewerEditorActivationEvent event, IValueBindingCell cell) { Class<?> dataType = null; /*/* w w w . jav a 2 s. com*/ * The tree column of a tree is special: mouse clicks does not work! * * Otherwise, it will not be possible to click or double click on a item in the column to * open and editor... */ boolean treeColumn = false; if (cell != null) { dataType = cell.getLabelBinding().getDataType().getDataType(); final IColumnBinding column = cell.getColumnBinding(); if (column != null) { final IViewerBinding vb = column.getViewerBinding(); if (vb.getControl() instanceof Tree && (vb.getColumns().indexOf(column) == 0)) { treeColumn = true; } } } final boolean isBoolean = dataType == Boolean.class || dataType == Boolean.TYPE; switch (event.eventType) { case ColumnViewerEditorActivationEvent.TRAVERSAL: /* * Travesal within a table or tree with TAB or arrows. */ return true; case ColumnViewerEditorActivationEvent.MOUSE_CLICK_SELECTION: if (treeColumn) return false; /* * Filter out the cases where a modifier - e.g. CTRL - has been pressed. */ final MouseEvent e = (MouseEvent) event.sourceEvent; if ((isEditCellSingleClick() || isBoolean) && (e.button == 1) && (e.stateMask == 0)) return true; return false; case ColumnViewerEditorActivationEvent.MOUSE_DOUBLE_CLICK_SELECTION: if (treeColumn) return false; return true; case ColumnViewerEditorActivationEvent.KEY_PRESSED: if ((event.keyCode == SWT.CR || event.keyCode == SWT.F2) && (event.stateMask == 0)) return true; if (treeColumn) return false; if (isBoolean && (event.character == ' ')) return true; if (isEditCellAnyKey() && !isBoolean) { /* * If auto-editing is enabled, every character - expect control characters - will * start editing */ if (event.character != 0 && !Character.isISOControl(event.character)) return true; } return false; default: break; } return false; }
From source file:com.spextreme.jenkins.remote.ui.ConfigurationDialog.java
License:Apache License
/** * Creates the section that defines items used to access and control jenkins. * /* w ww.j a va 2 s . co m*/ * @param parent The parent composite. */ private void createJenkinsSection(final Composite parent) { final GridLayout gridLayout = new GridLayout(); gridLayout.numColumns = 1; final GridData gridData1 = new GridData(); gridData1.grabExcessHorizontalSpace = true; gridData1.horizontalAlignment = GridData.FILL; gridData1.verticalAlignment = GridData.FILL; gridData1.grabExcessVerticalSpace = true; final Composite compositeTop = new Composite(parent, SWT.NONE); compositeTop.setLayout(gridLayout); mServerTableViewer = new TableViewer(compositeTop, SWT.FULL_SELECTION | SWT.MULTI | SWT.BORDER); mServerTableViewer.setLabelProvider(new ServerLabelProvider()); mServerTableViewer.setContentProvider(getContentProvider()); mServerTableViewer.setSorter(new ViewerSorter()); mServerTableViewer.getControl().setLayoutData(gridData1); createTableColumns(mServerTableViewer); createCellEditor(mServerTableViewer); mServerTableViewer.setInput(mConfigData.getServers()); mServerTableViewer.getTable().pack(); final TableViewerFocusCellManager focusManager = new TableViewerFocusCellManager(mServerTableViewer, new FocusCellOwnerDrawHighlighter(mServerTableViewer)); final ColumnViewerEditorActivationStrategy actSupport = new ColumnViewerEditorActivationStrategy( mServerTableViewer) { @Override protected boolean isEditorActivationEvent(final ColumnViewerEditorActivationEvent event) { final boolean result = (event.eventType == ColumnViewerEditorActivationEvent.TRAVERSAL) || (event.eventType == ColumnViewerEditorActivationEvent.MOUSE_DOUBLE_CLICK_SELECTION) || (event.eventType == ColumnViewerEditorActivationEvent.MOUSE_CLICK_SELECTION) || ((event.eventType == ColumnViewerEditorActivationEvent.KEY_PRESSED) && (event.keyCode == SWT.CR)) || (event.eventType == ColumnViewerEditorActivationEvent.PROGRAMMATIC); return result; } }; TableViewerEditor.create(mServerTableViewer, focusManager, actSupport, ColumnViewerEditor.TABBING_HORIZONTAL | ColumnViewerEditor.TABBING_MOVE_TO_ROW_NEIGHBOR | ColumnViewerEditor.TABBING_VERTICAL | ColumnViewerEditor.KEYBOARD_ACTIVATION); createCompositeTopButtons(compositeTop); }
From source file:com.xored.q7.quality.mockups.issues.parts.internal.AbstractComboBoxCellEditor.java
License:Open Source License
public void activate(ColumnViewerEditorActivationEvent activationEvent) { super.activate(activationEvent); if (activationStyle != SWT.NONE) { boolean dropDown = false; if ((activationEvent.eventType == ColumnViewerEditorActivationEvent.MOUSE_CLICK_SELECTION || activationEvent.eventType == ColumnViewerEditorActivationEvent.MOUSE_DOUBLE_CLICK_SELECTION) && (activationStyle & DROP_DOWN_ON_MOUSE_ACTIVATION) != 0) { dropDown = true;//from www . ja v a 2 s. co m } else if (activationEvent.eventType == ColumnViewerEditorActivationEvent.KEY_PRESSED && (activationStyle & DROP_DOWN_ON_KEY_ACTIVATION) != 0) { dropDown = true; } else if (activationEvent.eventType == ColumnViewerEditorActivationEvent.PROGRAMMATIC && (activationStyle & DROP_DOWN_ON_PROGRAMMATIC_ACTIVATION) != 0) { dropDown = true; } else if (activationEvent.eventType == ColumnViewerEditorActivationEvent.TRAVERSAL && (activationStyle & DROP_DOWN_ON_TRAVERSE_ACTIVATION) != 0) { dropDown = true; } if (dropDown) { getControl().getDisplay().asyncExec(new Runnable() { public void run() { ((CCombo) getControl()).setListVisible(true); } }); } } }
From source file:cop.swt.widgets.viewers.ibm._AbstractComboBoxCellEditor.java
License:Open Source License
@Override public void activate(ColumnViewerEditorActivationEvent activationEvent) { super.activate(activationEvent); if (activationStyle != SWT.NONE) { boolean dropDown = false; if ((activationEvent.eventType == ColumnViewerEditorActivationEvent.MOUSE_CLICK_SELECTION || activationEvent.eventType == ColumnViewerEditorActivationEvent.MOUSE_DOUBLE_CLICK_SELECTION) && (activationStyle & DROP_DOWN_ON_MOUSE_ACTIVATION) != 0) { dropDown = true;// w w w .j a va 2 s. co m } else if (activationEvent.eventType == ColumnViewerEditorActivationEvent.KEY_PRESSED && (activationStyle & DROP_DOWN_ON_KEY_ACTIVATION) != 0) { dropDown = true; } else if (activationEvent.eventType == ColumnViewerEditorActivationEvent.PROGRAMMATIC && (activationStyle & DROP_DOWN_ON_PROGRAMMATIC_ACTIVATION) != 0) { dropDown = true; } else if (activationEvent.eventType == ColumnViewerEditorActivationEvent.TRAVERSAL && (activationStyle & DROP_DOWN_ON_TRAVERSE_ACTIVATION) != 0) { dropDown = true; } if (dropDown) { getControl().getDisplay().asyncExec(new Runnable() { @Override public void run() { ((CCombo) getControl()).setListVisible(true); } }); } } }
From source file:de.byteholder.geoclipse.mapprovider.DialogMPProfile.java
License:Open Source License
private Control createUI114Viewer(final Composite parent, final PixelConverter pixelConverter) { final TreeColumnLayout treeLayout = new TreeColumnLayout(); final Composite layoutContainer = new Composite(parent, SWT.NONE); layoutContainer.setLayout(treeLayout); GridDataFactory.fillDefaults().grab(true, true).applyTo(layoutContainer); {//from ww w .j ava 2 s . c o m final Tree tree = new Tree(layoutContainer, SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER | SWT.FULL_SELECTION); tree.setHeaderVisible(true); tree.setLinesVisible(true); /* * tree viewer */ _treeViewer = new ContainerCheckedTreeViewer(tree); _treeViewer.setContentProvider(new MapContentProvider()); _treeViewer.setUseHashlookup(true); _treeViewer.addDoubleClickListener(new IDoubleClickListener() { public void doubleClick(final DoubleClickEvent event) { final Object selectedItem = ((IStructuredSelection) _treeViewer.getSelection()) .getFirstElement(); if (selectedItem != null) { if (selectedItem instanceof TVIMapProvider) { // expand/collapse current item final MP mapProvider = ((TVIMapProvider) selectedItem).getMapProviderWrapper().getMP(); if ((mapProvider instanceof MPWms) == false) { // all none wms map provider can be toggled toggleMapVisibility(tree); } else { // expand/collapse item if (_treeViewer.getExpandedState(selectedItem)) { _treeViewer.collapseToLevel(selectedItem, 1); } else { _treeViewer.expandToLevel(selectedItem, 1); } } } else if (selectedItem instanceof TVIWmsLayer) { toggleMapVisibility(tree); } } } }); _treeViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(final SelectionChangedEvent event) { onSelectMP(event.getSelection()); } }); _treeViewer.addDragSupport(DND.DROP_MOVE, new Transfer[] { LocalSelectionTransfer.getTransfer() }, new DragSourceListener() { public void dragFinished(final DragSourceEvent event) { final LocalSelectionTransfer transfer = LocalSelectionTransfer.getTransfer(); if (event.doit == false) { return; } transfer.setSelection(null); transfer.setSelectionSetTime(0); } public void dragSetData(final DragSourceEvent event) { // data are set in LocalSelectionTransfer } public void dragStart(final DragSourceEvent event) { final LocalSelectionTransfer transfer = LocalSelectionTransfer.getTransfer(); final ITreeSelection selection = (ITreeSelection) _treeViewer.getSelection(); transfer.setSelection(selection); transfer.setSelectionSetTime(_dragStartTime = event.time & 0xFFFFFFFFL); // only ONE map provider/layer is allowed to be dragged final Object firstElement = selection.getFirstElement(); event.doit = (selection.size() == 1) && ((firstElement instanceof TVIMapProvider) || (firstElement instanceof TVIWmsLayer)); } }); _treeViewer.addDropSupport(DND.DROP_MOVE, new Transfer[] { LocalSelectionTransfer.getTransfer() }, new ProfileDropAdapter(this, _treeViewer)); tree.addKeyListener(new KeyListener() { public void keyPressed(final KeyEvent e) { /* * toggle the visibility with the space key */ if (e.keyCode == ' ') { toggleMapVisibility(tree); } } public void keyReleased(final KeyEvent e) { } }); /* * add editing support for the tree */ final TreeViewerFocusCellManager focusCellManager = new TreeViewerFocusCellManager(_treeViewer, new FocusCellOwnerDrawHighlighter(_treeViewer)); final ColumnViewerEditorActivationStrategy actSupport = new ColumnViewerEditorActivationStrategy( _treeViewer) { @Override protected boolean isEditorActivationEvent(final ColumnViewerEditorActivationEvent event) { return (event.eventType == ColumnViewerEditorActivationEvent.TRAVERSAL) || (event.eventType == ColumnViewerEditorActivationEvent.MOUSE_CLICK_SELECTION) || ((event.eventType == ColumnViewerEditorActivationEvent.KEY_PRESSED) && (event.keyCode == SWT.F2)) || (event.eventType == ColumnViewerEditorActivationEvent.PROGRAMMATIC); } }; TreeViewerEditor.create(_treeViewer, // focusCellManager, actSupport, ColumnViewerEditor.TABBING_HORIZONTAL // | ColumnViewerEditor.TABBING_MOVE_TO_ROW_NEIGHBOR // | ColumnViewerEditor.TABBING_VERTICAL | ColumnViewerEditor.KEYBOARD_ACTIVATION); } createUI116ViewerColumns(treeLayout, pixelConverter); return layoutContainer; }
From source file:de.topicmapslab.onotoa.wordlisteditor.editor.WordListEditor.java
License:Open Source License
/** * Creates the table viewer and columns. * /*from ww w .j a va2s . c o m*/ * @param table * the table which will be used by the wrapper */ private void initTable(final Table table) { TableColumnLayout layout = (TableColumnLayout) table.getParent().getLayout(); table.setLinesVisible(true); table.setHeaderVisible(true); table.setMenu(new Menu(table)); table.addKeyListener(new KeyAdapter() { /** * {@inheritDoc} */ @Override public void keyPressed(KeyEvent e) { if ((e.keyCode == (int) 'c') && ((e.stateMask & SWT.CTRL) != 0)) { Clipboard clipboard = new Clipboard(e.widget.getDisplay()); StringBuilder builder = new StringBuilder(); String lineSeparator = System.getProperty("line.separator"); IStructuredSelection sel = (IStructuredSelection) viewer.getSelection(); Iterator<?> it = sel.iterator(); while (it.hasNext()) { Word w = (Word) it.next(); builder.append("\""); builder.append(w.getWord()); builder.append("\""); builder.append(";"); builder.append(w.getType().getName()); if (it.hasNext()) { builder.append(lineSeparator); } } clipboard.setContents(new Object[] { builder.toString() }, new Transfer[] { TextTransfer.getInstance() }); clipboard.dispose(); } } }); viewer = new CheckboxTableViewer(table); viewer.setContentProvider(ArrayContentProvider.getInstance()); viewer.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { removeButton.setEnabled(viewer.getCheckedElements().length != 0); } }); ColumnViewerEditorActivationStrategy actSupport = new ColumnViewerEditorActivationStrategy(viewer) { protected boolean isEditorActivationEvent(ColumnViewerEditorActivationEvent event) { return event.eventType == ColumnViewerEditorActivationEvent.TRAVERSAL || event.eventType == ColumnViewerEditorActivationEvent.MOUSE_CLICK_SELECTION || (event.eventType == ColumnViewerEditorActivationEvent.KEY_PRESSED && event.keyCode == SWT.CR) || event.eventType == ColumnViewerEditorActivationEvent.PROGRAMMATIC; } }; TableViewerEditor.create(viewer, null, actSupport, ColumnViewerEditor.TABBING_HORIZONTAL | ColumnViewerEditor.TABBING_MOVE_TO_ROW_NEIGHBOR | ColumnViewerEditor.TABBING_VERTICAL | ColumnViewerEditor.KEYBOARD_ACTIVATION); // word column TableViewerColumn tvc = new TableViewerColumn(viewer, SWT.NONE); layout.setColumnData(tvc.getColumn(), new ColumnWeightData(1)); tvc.getColumn().setText("Word"); tvc.setLabelProvider(new CellLabelProvider() { @Override public void update(ViewerCell cell) { cell.setText(((Word) cell.getElement()).getWord()); } }); tvc.setEditingSupport(new EditingSupport(viewer) { @Override protected void setValue(Object element, Object value) { WordListContainer wlc = (WordListContainer) viewer.getInput(); Word w = (Word) element; if (w.getWord().equals(value)) return; if (wlc.containsWord((String) value)) { MessageDialog.openInformation(table.getShell(), "Word already entered", "The word <" + value + "> was already entered"); return; } AbstractCommand cmd = null; cmd = new ModifyWordCommand(w, (String) value); commandStack.execute(cmd); viewer.refresh(element); } @Override protected Object getValue(Object element) { Word w = (Word) element; return w.getWord(); } @Override protected CellEditor getCellEditor(Object element) { return new TextCellEditor(table); } @Override protected boolean canEdit(Object element) { return true; } }); // create column sorter new AbstractColumnViewerSorter(viewer, tvc) { @Override public String getText(Object element) { return ((Word) element).getWord(); } }; // type column tvc = new TableViewerColumn(viewer, SWT.NONE); tvc.getColumn().setText("Type"); layout.setColumnData(tvc.getColumn(), new ColumnWeightData(1)); tvc.setLabelProvider(new CellLabelProvider() { @Override public void update(ViewerCell cell) { String name = ((Word) cell.getElement()).getType().getName(); cell.setText(name); cell.setImage(ImageProvider.getImageOfKindOfTopic(KindOfTopicType.getByName(name))); } }); tvc.setEditingSupport(new EditingSupport(viewer) { final String[] ITEMS = { KindOfTopicType.TOPIC_TYPE.getName(), KindOfTopicType.OCCURRENCE_TYPE.getName(), KindOfTopicType.NAME_TYPE.getName(), KindOfTopicType.ROLE_TYPE.getName(), KindOfTopicType.ASSOCIATION_TYPE.getName(), KindOfTopicType.NO_TYPE.getName() }; @Override protected void setValue(Object element, Object value) { int val = (Integer) value; // jump from scope to no type index if (val == 5) val = 6; KindOfTopicType type = KindOfTopicType.get(val); WordListContainer wlc = (WordListContainer) viewer.getInput(); Word w = (Word) element; AbstractCommand cmd = null; if (wlc.contains(w)) { cmd = new ModifyWordTypeCommand((Word) element, type); commandStack.execute(cmd); viewer.refresh(element); } else { cmd = new AddWordCommand(wlc, w.getWord(), type); commandStack.execute(cmd); viewer.refresh(); } } @Override protected Object getValue(Object element) { int val = ((Word) element).getType().getValue(); // switching from scope to no type if (val == 6) val = 5; return val; } @Override protected CellEditor getCellEditor(Object element) { ComboBoxCellEditor comboBoxCellEditor = new ComboBoxCellEditor(table, ITEMS, SWT.READ_ONLY); return comboBoxCellEditor; } @Override protected boolean canEdit(Object element) { return true; } }); // create column sorter new AbstractColumnViewerSorter(viewer, tvc) { @Override public String getText(Object element) { if (((WordListContainer) viewer.getInput()).contains(element)) return ((Word) element).getType().getName(); // hack so hopefully the new element is always the last else return "zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzZ"; } }; tvc = new TableViewerColumn(viewer, SWT.NONE); layout.setColumnData(tvc.getColumn(), new ColumnWeightData(2)); tvc.getColumn().setText("Comment"); tvc.setLabelProvider(new CellLabelProvider() { @Override public void update(ViewerCell cell) { String tmp = ((Word) cell.getElement()).getComment(); if (tmp == null) tmp = ""; cell.setText(tmp); } }); tvc.setEditingSupport(new EditingSupport(viewer) { @Override protected void setValue(Object element, Object value) { AbstractCommand cmd = null; cmd = new ModifyWordCommentCommand((Word) element, (String) value); commandStack.execute(cmd); viewer.refresh(element); } @Override protected Object getValue(Object element) { String tmp = ((Word) element).getComment(); if (tmp == null) return ""; return tmp; } @Override protected CellEditor getCellEditor(Object element) { return new TextCellEditor(table); } @Override protected boolean canEdit(Object element) { return true; } }); }