Download
Getting Started
Members
Projects
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
More
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
Toggle navigation
Bugzilla – Attachment 77571 Details for
Bug 181878
[Site Editor] Multi-select love is needed
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
[patch]
patch proposal almost all specified function covered
patch_pde_181878.txt (text/plain), 3.47 KB, created by
bartosz michalik
on 2007-09-03 04:39:32 EDT
(
hide
)
Description:
patch proposal almost all specified function covered
Filename:
MIME Type:
Creator:
bartosz michalik
Created:
2007-09-03 04:39:32 EDT
Size:
3.47 KB
patch
obsolete
>### Eclipse Workspace Patch 1.0 >#P org.eclipse.pde.ui >Index: src/org/eclipse/pde/internal/ui/editor/site/CategorySection.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.pde.ui/src/org/eclipse/pde/internal/ui/editor/site/CategorySection.java,v >retrieving revision 1.43 >diff -u -r1.43 CategorySection.java >--- src/org/eclipse/pde/internal/ui/editor/site/CategorySection.java 15 Aug 2007 20:12:52 -0000 1.43 >+++ src/org/eclipse/pde/internal/ui/editor/site/CategorySection.java 3 Sep 2007 08:35:35 -0000 >@@ -12,6 +12,8 @@ > > import java.util.ArrayList; > import java.util.HashSet; >+import java.util.Iterator; >+import java.util.Set; > > import org.eclipse.core.runtime.CoreException; > import org.eclipse.jface.action.Action; >@@ -171,7 +173,7 @@ > fModel.addModelChangedListener(this); > > Composite container = createClientContainer(section, 2, toolkit); >- createViewerPartControl(container, SWT.SINGLE, 2, toolkit); >+ createViewerPartControl(container, SWT.MULTI, 2, toolkit); > fCategoryTreePart = getTreePart(); > fCategoryViewer = fCategoryTreePart.getTreeViewer(); > fCategoryViewer.setContentProvider(new CategoryContentProvider()); >@@ -418,13 +420,27 @@ > private boolean handleRemove() { > IStructuredSelection ssel = (IStructuredSelection) fCategoryViewer > .getSelection(); >- Object object = ssel.getFirstElement(); >- if (object == null) >- return true; >- if (object instanceof ISiteCategoryDefinition) { >- return handleRemoveCategoryDefinition((ISiteCategoryDefinition) object); >+ Iterator iterator = ssel.iterator(); >+ boolean success = true; >+ Set removedCategories = new HashSet(); >+ while(iterator.hasNext()) { >+ Object object = iterator.next(); >+ if (object == null) continue; >+ if (object instanceof ISiteCategoryDefinition) { >+ if(! handleRemoveCategoryDefinition((ISiteCategoryDefinition) object)) { >+ success = false; >+ } >+ } else { >+ //check if some of features was not removed during category removal >+ SiteFeatureAdapter fa = (SiteFeatureAdapter) object; >+ if(removedCategories.contains(fa.category)) continue; >+ >+ if(!handleRemoveSiteFeatureAdapter(fa)) { >+ success = false; >+ } >+ } > } >- return handleRemoveSiteFeatureAdapter((SiteFeatureAdapter) object); >+ return success; > } > > private boolean handleRemoveCategoryDefinition( >@@ -553,6 +569,10 @@ > if (actionId.equals(ActionFactory.DELETE.getId())) { > return handleRemove(); > } >+ if (actionId.equals(ActionFactory.SELECT_ALL.getId())) { >+ fCategoryViewer.getTree().selectAll(); >+ refresh(); >+ } > return false; > } > >@@ -642,10 +662,16 @@ > private void handleBuild() { > IStructuredSelection sel = (IStructuredSelection) fCategoryViewer > .getSelection(); >- if (!sel.isEmpty() >- && sel.getFirstElement() instanceof SiteFeatureAdapter) { >- ISiteFeature feature = ((SiteFeatureAdapter) sel.getFirstElement()).feature; >- ((SiteEditor)getPage().getPDEEditor()).handleBuild(new ISiteFeature[] { feature }); >+ if (!sel.isEmpty()) { >+ ArrayList features = new ArrayList(sel.size()); >+ Iterator iterator = sel.iterator(); >+ while(iterator.hasNext()) { >+ Object next = iterator.next(); >+ if(next instanceof SiteFeatureAdapter) { >+ features.add(((SiteFeatureAdapter) next).feature); >+ } >+ } >+ ((SiteEditor)getPage().getPDEEditor()).handleBuild((ISiteFeature[]) features.toArray(new ISiteFeature[0])); > } > } >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 181878
:
77571
|
77627
|
77647
|
77654
|
77656