List of usage examples for org.eclipse.jface.viewers IStructuredSelection toArray
public Object[] toArray();
From source file:com.siteview.mde.internal.ui.editor.category.CategorySection.java
License:Open Source License
public void createClient(Section section, FormToolkit toolkit) { fModel = (ISiteModel) getPage().getModel(); fModel.addModelChangedListener(this); Composite container = createClientContainer(section, 2, toolkit); createViewerPartControl(container, SWT.MULTI, 2, toolkit); fCategoryTreePart = getTreePart();//ww w .j a va 2 s .c o m fCategoryViewer = fCategoryTreePart.getTreeViewer(); fCategoryViewer.setContentProvider(new CategoryContentProvider()); fSiteLabelProvider = new CategoryLabelProvider(); fCategoryViewer.setLabelProvider(fSiteLabelProvider); fCategoryViewer.setInput(fModel.getSite()); int ops = DND.DROP_COPY | DND.DROP_MOVE | DND.DROP_DEFAULT; Transfer[] transfers = new Transfer[] { ModelDataTransfer.getInstance() }; if (isEditable()) { fCategoryViewer.addDropSupport(ops, transfers, new ViewerDropAdapter(fCategoryViewer) { public void dragEnter(DropTargetEvent event) { Object target = determineTarget(event); if (target == null && event.detail == DND.DROP_COPY) { event.detail = DND.DROP_MOVE; } super.dragEnter(event); } /* * (non-Javadoc) * * @see org.eclipse.jface.viewers.ViewerDropAdapter#dragOperationChanged(org.eclipse.swt.dnd.DropTargetEvent) */ public void dragOperationChanged(DropTargetEvent event) { Object target = determineTarget(event); if (target == null && event.detail == DND.DROP_COPY) { event.detail = DND.DROP_MOVE; } super.dragOperationChanged(event); } /* * (non-Javadoc) * * @see org.eclipse.jface.viewers.ViewerDropAdapter#dragOver(org.eclipse.swt.dnd.DropTargetEvent) */ public void dragOver(DropTargetEvent event) { Object target = determineTarget(event); if (target == null && event.detail == DND.DROP_COPY) { event.detail = DND.DROP_MOVE; } super.dragOver(event); } /** * Returns the position of the given event's coordinates * relative to its target. The position is determined to * be before, after, or on the item, based on some * threshold value. * * @param event * the event * @return one of the <code>LOCATION_* </code> * constants defined in this class */ protected int determineLocation(DropTargetEvent event) { if (!(event.item instanceof Item)) { return LOCATION_NONE; } Item item = (Item) event.item; Point coordinates = new Point(event.x, event.y); coordinates = getViewer().getControl().toControl(coordinates); if (item != null) { Rectangle bounds = getBounds(item); if (bounds == null) { return LOCATION_NONE; } } return LOCATION_ON; } public boolean performDrop(Object data) { if (!(data instanceof Object[])) return false; Object target = getCurrentTarget(); int op = getCurrentOperation(); Object[] objects = (Object[]) data; if (objects.length > 0 && objects[0] instanceof SiteFeatureAdapter) { if (op == DND.DROP_COPY && target != null) { copyFeature((SiteFeatureAdapter) objects[0], target); } else { moveFeature((SiteFeatureAdapter) objects[0], target); } return true; } return false; } public boolean validateDrop(Object target, int operation, TransferData transferType) { return (target instanceof ISiteCategoryDefinition || target == null); } }); } fCategoryViewer.addDragSupport(DND.DROP_MOVE | DND.DROP_COPY, transfers, new DragSourceListener() { public void dragStart(DragSourceEvent event) { IStructuredSelection ssel = (IStructuredSelection) fCategoryViewer.getSelection(); if (ssel == null || ssel.isEmpty() || !(ssel.getFirstElement() instanceof SiteFeatureAdapter)) { event.doit = false; } } public void dragSetData(DragSourceEvent event) { IStructuredSelection ssel = (IStructuredSelection) fCategoryViewer.getSelection(); event.data = ssel.toArray(); } public void dragFinished(DragSourceEvent event) { } }); fCategoryTreePart.setButtonEnabled(BUTTON_ADD_CATEGORY, isEditable()); fCategoryTreePart.setButtonEnabled(BUTTON_ADD_FEATURE, isEditable()); // fCategoryViewer.expandAll(); toolkit.paintBordersFor(container); section.setClient(container); initialize(); }
From source file:com.siteview.mde.internal.ui.editor.MDEFormEditor.java
License:Open Source License
private void copyToClipboard(ISelection selection) { Object[] objects = null;/*ww w.j a va 2s. c o m*/ String textVersion = null; if (selection instanceof IStructuredSelection) { IStructuredSelection ssel = (IStructuredSelection) selection; if (ssel == null || ssel.size() == 0) return; objects = ssel.toArray(); StringWriter writer = new StringWriter(); PrintWriter pwriter = new PrintWriter(writer); Class objClass = null; for (int i = 0; i < objects.length; i++) { Object obj = objects[i]; if (objClass == null) objClass = obj.getClass(); else if (objClass.equals(obj.getClass()) == false) return; if (obj instanceof IWritable) { // Add a customized delimiter in between all serialized // objects to format the text representation if ((i != 0) && (obj instanceof IWritableDelimiter)) { ((IWritableDelimiter) obj).writeDelimeter(pwriter); } ((IWritable) obj).write("", pwriter); //$NON-NLS-1$ } else if (obj instanceof String) { // Delimiter is always a newline pwriter.println((String) obj); } } pwriter.flush(); textVersion = writer.toString(); try { pwriter.close(); writer.close(); } catch (IOException e) { } } else if (selection instanceof ITextSelection) { textVersion = ((ITextSelection) selection).getText(); } if ((textVersion == null || textVersion.length() == 0) && objects == null) return; // set the clipboard contents Object[] o = null; Transfer[] t = null; if (objects == null) { o = new Object[] { textVersion }; t = new Transfer[] { TextTransfer.getInstance() }; } else if (textVersion == null || textVersion.length() == 0) { o = new Object[] { objects }; t = new Transfer[] { ModelDataTransfer.getInstance() }; } else { o = new Object[] { objects, textVersion }; t = new Transfer[] { ModelDataTransfer.getInstance(), TextTransfer.getInstance() }; } clipboard.setContents(o, t); }
From source file:com.siteview.mde.internal.ui.editor.monitor.LibraryVisibilitySection.java
License:Open Source License
private void handleRemove() { IStructuredSelection ssel = (IStructuredSelection) fPackageExportViewer.getSelection(); Object[] items = ssel.toArray(); try {/* w w w . ja v a2 s . c o m*/ for (int i = 0; i < items.length; i++) { fCurrentLibrary.removeContentFilter(items[i].toString()); } } catch (CoreException e) { } }
From source file:com.siteview.mde.internal.ui.editor.product.FeatureSection.java
License:Open Source License
private void handleProperties() { IStructuredSelection ssel = (IStructuredSelection) fFeatureTable.getSelection(); if (ssel.size() == 1) { IProductFeature feature = (IProductFeature) ssel.toArray()[0]; VersionDialog dialog = new VersionDialog(MDEPlugin.getActiveWorkbenchShell(), isEditable(), feature.getVersion());//from www . ja v a 2 s. c om dialog.create(); SWTUtil.setDialogSize(dialog, 400, 200); if (dialog.open() == Window.OK) { feature.setVersion(dialog.getVersion()); } } }
From source file:com.siteview.mde.internal.ui.editor.product.FeatureSection.java
License:Open Source License
private void handleDelete() { IStructuredSelection ssel = (IStructuredSelection) fFeatureTable.getSelection(); if (ssel.size() > 0) { Object[] objects = ssel.toArray(); IProductFeature[] features = new IProductFeature[objects.length]; System.arraycopy(objects, 0, features, 0, objects.length); getProduct().removeFeatures(features); }/*from w w w . ja v a 2s . com*/ }
From source file:com.siteview.mde.internal.ui.editor.product.PluginConfigurationSection.java
License:Open Source License
private void handleRemove() { IStructuredSelection ssel = (IStructuredSelection) fConfigurationsTable.getSelection(); if (ssel.size() > 0) { Object[] objects = ssel.toArray(); IPluginConfiguration[] configurations = new IPluginConfiguration[objects.length]; System.arraycopy(objects, 0, configurations, 0, objects.length); getProduct().removePluginConfigurations(configurations); }//from www .j ava2 s . c o m clearEditors(); }
From source file:com.siteview.mde.internal.ui.editor.product.PluginSection.java
License:Open Source License
private void handleProperties() { IStructuredSelection ssel = (IStructuredSelection) fPluginTable.getSelection(); if (ssel.size() == 1) { IProductPlugin plugin = (IProductPlugin) ssel.toArray()[0]; VersionDialog dialog = new VersionDialog(MDEPlugin.getActiveWorkbenchShell(), isEditable(), plugin.getVersion());/*from w ww . j a va 2 s .co m*/ dialog.create(); SWTUtil.setDialogSize(dialog, 400, 200); if (dialog.open() == Window.OK) { plugin.setVersion(dialog.getVersion()); } } }
From source file:com.siteview.mde.internal.ui.editor.product.PluginSection.java
License:Open Source License
private void handleDelete() { IStructuredSelection ssel = (IStructuredSelection) fPluginTable.getSelection(); if (ssel.size() > 0) { Object[] objects = ssel.toArray(); IProductPlugin[] plugins = new IProductPlugin[objects.length]; System.arraycopy(objects, 0, plugins, 0, objects.length); getProduct().removePlugins(plugins); }/*www .j av a 2 s . c om*/ }
From source file:com.siteview.mde.internal.ui.editor.product.PropertiesSection.java
License:Open Source License
private void handleRemove() { IStructuredSelection ssel = (IStructuredSelection) fPropertiesTable.getSelection(); if (ssel.size() > 0) { Object[] objects = ssel.toArray(); IConfigurationProperty[] properties = new IConfigurationProperty[objects.length]; System.arraycopy(objects, 0, properties, 0, objects.length); getProduct().removeConfigurationProperties(properties); fPropertiesTable.refresh(false); }/*from ww w . j av a 2 s. com*/ }
From source file:com.siteview.mde.internal.ui.editor.schema.SchemaIdentifierAttributeDetails.java
License:Open Source License
public void hookListeners() { super.hookListeners(); IActionBars actionBars = getPage().getMDEEditor().getEditorSite().getActionBars(); fReferenceEntry.setFormEntryListener(new FormEntryAdapter(this, actionBars) { public void textValueChanged(FormEntry entry) { if (blockListeners()) return; getAttribute().setBasedOn(fReferenceEntry.getValue()); }/*from w w w .j a v a 2s. co m*/ public void browseButtonSelected(FormEntry entry) { if (blockListeners()) return; doOpenSelectionDialog(fReferenceEntry); } }); fAddRestriction.addSelectionListener(new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { if (blockListeners()) return; NewRestrictionDialog dialog = new NewRestrictionDialog(getPage().getSite().getShell()); if (dialog.open() != Window.OK) return; String text = dialog.getNewRestriction(); if (text != null && text.length() > 0) { ISchemaSimpleType type = getAttribute().getType(); ChoiceRestriction res = (ChoiceRestriction) type.getRestriction(); Vector vres = new Vector(); if (res != null) { Object[] currRes = res.getChildren(); for (int i = 0; i < currRes.length; i++) { vres.add(currRes[i]); } } vres.add(new SchemaEnumeration(getAttribute().getSchema(), text)); if (res == null) res = new ChoiceRestriction(getAttribute().getSchema()); res.setChildren(vres); if (type instanceof SchemaSimpleType) ((SchemaSimpleType) type).setRestriction(res); fRestrictionsTable.refresh(); } } }); fRemoveRestriction.addSelectionListener(new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { if (blockListeners()) return; ISelection selection = fRestrictionsTable.getSelection(); if (selection.isEmpty()) return; if (!(selection instanceof IStructuredSelection)) return; IStructuredSelection sselection = (IStructuredSelection) selection; Object[] aselection = sselection.toArray(); ISchemaSimpleType type = getAttribute().getType(); ChoiceRestriction res = (ChoiceRestriction) type.getRestriction(); Vector vres = new Vector(); if (res != null) { Object[] currRes = res.getChildren(); for (int i = 0; i < currRes.length; i++) { boolean stays = true; for (int j = 0; j < aselection.length; j++) { if (currRes[i].equals(aselection[j])) stays = false; } if (stays) vres.add(currRes[i]); } res.setChildren(vres); if (type instanceof SchemaSimpleType) { if (vres.size() == 0) ((SchemaSimpleType) type).setRestriction(null); else ((SchemaSimpleType) type).setRestriction(res); } fRestrictionsTable.refresh(); } } }); fRestrictionsTable.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { if (blockListeners()) return; fRemoveRestriction .setEnabled(getAttribute().getSchema().isEditable() && !event.getSelection().isEmpty()); } }); }