List of usage examples for org.eclipse.jface.viewers IStructuredSelection iterator
@Override
public Iterator iterator();
From source file:de.topicmapslab.onotoa.search.dialogs.CleanSchemaComposite.java
License:Open Source License
/** * Add actual selected TopicType from the list of unused TopicTypes (left * table) to the list of selected TopicTypes (right table) *///from w w w . j a v a 2 s . c o m private void deleteSelection() { // iterate over all selected types (multi selection is allowed!) IStructuredSelection sel = (IStructuredSelection) unusedTopicsTable.getSelection(); for (Iterator it = sel.iterator(); it.hasNext();) { selectedSet.add((TopicType) it.next()); } unusedTopicsTable.refresh(); // change button immediately to re-enable restoring deleteButton.setEnabled(false); restoreButton.setEnabled(true); }
From source file:de.topicmapslab.onotoa.search.dialogs.CleanSchemaComposite.java
License:Open Source License
/** * Remove actual selected TopicType from the list selected TopicTypes (right * table)/*from www . j a v a 2 s. co m*/ */ private void restoreSelection() { // iterate over all selected types (multi selection is allowed!) IStructuredSelection sel = (IStructuredSelection) unusedTopicsTable.getSelection(); for (Iterator it = sel.iterator(); it.hasNext();) { selectedSet.remove((TopicType) it.next()); } unusedTopicsTable.refresh(); // change button immediately to re-enable deleting deleteButton.setEnabled(true); restoreButton.setEnabled(false); }
From source file:de.topicmapslab.onotoa.wordlisteditor.editor.WordListEditor.java
License:Open Source License
/** * Creates the table viewer and columns. * /* www. j a v a 2 s. 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; } }); }
From source file:de.topicmapslab.tmcledit.diagram.editor.TMCLDiagramEditor.java
License:Open Source License
public void selectionChanged(SelectionChangedEvent event) { IStructuredSelection sel = (IStructuredSelection) event.getSelection(); updateSelectionDependentActions(sel); if (sel.isEmpty()) return;/* www. j a v a 2s. c om*/ else { Iterator<?> it = sel.iterator(); List<Object> selected = new ArrayList<Object>(); while (it.hasNext()) { Object o = it.next(); if (o instanceof EditPart) { EditPart part = (EditPart) o; cmProvider.setSelectedEditPart(part); if (part instanceof MoveableLabelEditPart) { part = part.getParent(); } Object model = part.getModel(); if (model instanceof TypeNode) { TypeNode node = (TypeNode) model; selected.add(node.getTopicType()); } else if (model instanceof AssociationNode) { AssociationNode node = (AssociationNode) model; selected.add(node.getAssociationConstraint()); } else if (model instanceof Edge) { Edge edge = (Edge) model; EObject tmp = edge.getRoleConstraint(); if (tmp != null) selected.add(tmp); else { tmp = ((TypeNode) edge.getSource()).getTopicType(); selected.add(tmp); } } else { selected.add(model); } } } currentSelection = new StructuredSelection(selected); fireSelectionChanged(); } }
From source file:de.topicmapslab.tmcledit.diagram.editor.TMCLEditorContextMenuProvider.java
License:Open Source License
@SuppressWarnings("unchecked") private boolean mayMove() { IStructuredSelection sel = (IStructuredSelection) getViewer().getSelection(); if (sel.isEmpty()) return false; Iterator it = sel.iterator(); while (it.hasNext()) { Object next = it.next();/*from w w w . ja va 2 s .com*/ if (next instanceof EditPart) { if (((EditPart) next).getModel() instanceof Node) return true; } } return false; }
From source file:de.topicmapslab.tmcledit.domaindiagram.editor.DomainDiagramEditor.java
License:Open Source License
public void selectionChanged(SelectionChangedEvent event) { IStructuredSelection sel = (IStructuredSelection) event.getSelection(); updateSelectionDependentActions(sel); if (sel.isEmpty()) return;/*from w w w.j a v a2s . com*/ else { Iterator<?> it = sel.iterator(); List<Object> selected = new ArrayList<Object>(); while (it.hasNext()) { Object o = it.next(); if (o instanceof EditPart) { EditPart part = (EditPart) o; if (part instanceof MoveableLabelEditPart) { part = part.getParent(); } cmProvider.setSelectedEditPart(part); Object model = part.getModel(); if (model instanceof TypeNode) { TypeNode node = (TypeNode) model; selected.add(node.getTopicType()); } else if (model instanceof AssociationNode) { AssociationNode node = (AssociationNode) model; selected.add(node.getAssociationConstraint()); } else if (model instanceof Edge) { Edge edge = (Edge) model; EObject tmp = edge.getRoleConstraint(); if (tmp != null) selected.add(tmp); else { tmp = ((TypeNode) edge.getSource()).getTopicType(); selected.add(tmp); } } else { selected.add(model); } } } currentSelection = new StructuredSelection(selected); fireSelectionChanged(); } }
From source file:de.topicmapslab.tmcledit.model.actions.DeleteDiagramAction.java
License:Open Source License
/** * Sets the diagram to delete//ww w . ja va2s. com * @param sel a selection containing one or more {@link Diagram}s */ public void setDiagram(IStructuredSelection sel) { diagrams.clear(); if (sel != null) { Iterator it = sel.iterator(); while (it.hasNext()) { Object o = it.next(); if (o instanceof Diagram) { diagrams.add((Diagram) o); } } } setEnabled(!diagrams.isEmpty()); }
From source file:de.topicmapslab.tmcledit.model.actions.DeleteTMCLConstruct.java
License:Open Source License
/** * {@inheritDoc}// w w w. ja va 2 s . c o m */ public void selectionChanged(SelectionChangedEvent event) { getConstructList().clear(); if ((!event.getSelection().isEmpty()) && (((event.getSelection() instanceof IStructuredSelection)))) { IStructuredSelection sel = (IStructuredSelection) event.getSelection(); Object obj = sel.getFirstElement(); Iterator<?> it = sel.iterator(); while (it.hasNext()) { obj = it.next(); if ((obj instanceof TMCLConstruct) && (!(obj instanceof TopicMapSchema)) && (!(obj instanceof File))) { getConstructList().add((TMCLConstruct) obj); } } } setEnabled(!getConstructList().isEmpty()); }
From source file:de.topicmapslab.tmcledit.model.dialogs.StringListSelectionDialog.java
License:Open Source License
private void removeSelection() { IStructuredSelection sel = (IStructuredSelection) stringListViewer.getSelection(); for (Iterator it = sel.iterator(); it.hasNext();) { stringList.remove((String) it.next()); }/*from w ww.j av a 2 s . com*/ stringListViewer.refresh(); if (stringList.size() <= 0) removeAllButton.setEnabled(false); }
From source file:de.topicmapslab.tmcledit.model.dialogs.TopicSelectionDialog.java
License:Open Source License
private void addSelection() { IStructuredSelection sel = (IStructuredSelection) availableTopicList.getSelection(); for (Iterator it = sel.iterator(); it.hasNext();) { selectedTopics.add((TopicType) it.next()); }//w w w .ja v a 2 s . co m validate(); availableTopicList.refresh(); selectedTopicList.refresh(); }