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 165142 Details for
Bug 195729
Provide a way to import plug-ins from CVS from the plug-ins tab
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
[patch]
patch
CVS-import.patch (text/plain), 11.40 KB, created by
Darin Wright
on 2010-04-16 15:58:33 EDT
(
hide
)
Description:
patch
Filename:
MIME Type:
Creator:
Darin Wright
Created:
2010-04-16 15:58:33 EDT
Size:
11.40 KB
patch
obsolete
>### Eclipse Workspace Patch 1.0 >#P org.eclipse.pde.ui >Index: src/org/eclipse/pde/internal/ui/wizards/imports/PluginImportWizard.java >=================================================================== >RCS file: /cvsroot/eclipse/pde/ui/org.eclipse.pde.ui/src/org/eclipse/pde/internal/ui/wizards/imports/PluginImportWizard.java,v >retrieving revision 1.58 >diff -u -r1.58 PluginImportWizard.java >--- src/org/eclipse/pde/internal/ui/wizards/imports/PluginImportWizard.java 1 Mar 2010 21:04:54 -0000 1.58 >+++ src/org/eclipse/pde/internal/ui/wizards/imports/PluginImportWizard.java 16 Apr 2010 19:57:23 -0000 >@@ -1,5 +1,5 @@ > /******************************************************************************* >- * Copyright (c) 2000, 2009 IBM Corporation and others. >+ * Copyright (c) 2000, 2010 IBM Corporation and others. > * All rights reserved. This program and the accompanying materials > * are made available under the terms of the Eclipse Public License v1.0 > * which accompanies this distribution, and is available at >@@ -10,33 +10,25 @@ > *******************************************************************************/ > package org.eclipse.pde.internal.ui.wizards.imports; > >-import java.util.HashSet; >-import java.util.Iterator; >-import java.util.Map; >+import java.util.*; > import org.eclipse.core.resources.ResourcesPlugin; > import org.eclipse.core.runtime.CoreException; >-import org.eclipse.debug.core.DebugPlugin; >-import org.eclipse.debug.core.ILaunch; >-import org.eclipse.debug.core.ILaunchConfiguration; >-import org.eclipse.debug.core.ILaunchManager; >-import org.eclipse.jface.dialogs.IDialogConstants; >-import org.eclipse.jface.dialogs.IDialogSettings; >-import org.eclipse.jface.dialogs.MessageDialog; >+import org.eclipse.debug.core.*; >+import org.eclipse.jface.dialogs.*; > import org.eclipse.jface.viewers.IStructuredSelection; >-import org.eclipse.jface.wizard.IWizardPage; >-import org.eclipse.jface.wizard.Wizard; >+import org.eclipse.jface.wizard.*; > import org.eclipse.osgi.service.resolver.BundleDescription; > import org.eclipse.pde.core.plugin.IPluginModelBase; > import org.eclipse.pde.internal.core.SourceLocationManager; > import org.eclipse.pde.internal.launching.launcher.BundleLauncherHelper; >-import org.eclipse.pde.internal.ui.PDEPlugin; >-import org.eclipse.pde.internal.ui.PDEPluginImages; >-import org.eclipse.pde.internal.ui.PDEUIMessages; >+import org.eclipse.pde.internal.ui.*; >+import org.eclipse.pde.internal.ui.provisional.IBundeImportWizardPage; >+import org.eclipse.swt.widgets.Composite; > import org.eclipse.swt.widgets.Shell; > import org.eclipse.ui.IImportWizard; > import org.eclipse.ui.IWorkbench; > >-public class PluginImportWizard extends Wizard implements IImportWizard { >+public class PluginImportWizard extends Wizard implements IImportWizard, IPageChangingListener { > > private static final String STORE_SECTION = "PluginImportWizard"; //$NON-NLS-1$ > >@@ -56,6 +48,18 @@ > this.selection = selection; > } > >+ /* (non-Javadoc) >+ * @see org.eclipse.jface.wizard.Wizard#createPageControls(org.eclipse.swt.widgets.Composite) >+ */ >+ public void createPageControls(Composite pageContainer) { >+ super.createPageControls(pageContainer); >+ IWizardContainer container = getContainer(); >+ if (container instanceof WizardDialog) { >+ WizardDialog dialog = (WizardDialog) container; >+ dialog.addPageChangingListener(this); >+ } >+ } >+ > public void addPages() { > setNeedsProgressMonitor(true); > page1 = new PluginImportWizardFirstPage("first"); //$NON-NLS-1$ >@@ -92,6 +96,12 @@ > return false; > > } >+ if (page1.getImportType() == PluginImportOperation.IMPORT_FROM_REPOSITORY) { >+ if (getContainer().getCurrentPage() == page3) { >+ // ensure to set the models to import when finished is pressed without advancing to the repository pages >+ page1.configureBundleImportPages(models); >+ } >+ } > // finish contributed pages > if (!page1.finishPages()) { > return false; >@@ -195,4 +205,14 @@ > public boolean canFinish() { > return !page1.isCurrentPage() && page1.getNextPage().isPageComplete() && page1.arePagesComplete(); > } >+ >+ /* (non-Javadoc) >+ * @see org.eclipse.jface.dialogs.IPageChangingListener#handlePageChanging(org.eclipse.jface.dialogs.PageChangingEvent) >+ */ >+ public void handlePageChanging(PageChangingEvent event) { >+ if (event.getCurrentPage() == page3 && event.getTargetPage() instanceof IBundeImportWizardPage) { >+ IPluginModelBase[] models = getModelsToImport(); >+ page1.configureBundleImportPages(models); >+ } >+ } > } >Index: src/org/eclipse/pde/internal/ui/wizards/imports/PluginImportWizardFirstPage.java >=================================================================== >RCS file: /cvsroot/eclipse/pde/ui/org.eclipse.pde.ui/src/org/eclipse/pde/internal/ui/wizards/imports/PluginImportWizardFirstPage.java,v >retrieving revision 1.76 >diff -u -r1.76 PluginImportWizardFirstPage.java >--- src/org/eclipse/pde/internal/ui/wizards/imports/PluginImportWizardFirstPage.java 2 Mar 2010 16:56:09 -0000 1.76 >+++ src/org/eclipse/pde/internal/ui/wizards/imports/PluginImportWizardFirstPage.java 16 Apr 2010 19:57:23 -0000 >@@ -10,80 +10,35 @@ > *******************************************************************************/ > package org.eclipse.pde.internal.ui.wizards.imports; > >-import org.eclipse.pde.internal.ui.provisional.IBundeImportWizardPage; >- >-import org.eclipse.pde.internal.core.importing.provisional.BundleImportDescription; >- >-import org.eclipse.pde.internal.core.importing.IBundleImporter; >- > import java.io.File; > import java.lang.reflect.InvocationTargetException; > import java.net.MalformedURLException; > import java.net.URL; >-import java.util.ArrayList; >-import java.util.Collections; >-import java.util.Comparator; >-import java.util.HashMap; >-import java.util.HashSet; >-import java.util.Iterator; >-import java.util.List; >-import java.util.Map; >+import java.util.*; > import java.util.Map.Entry; >-import java.util.Set; >-import org.eclipse.core.runtime.CoreException; >-import org.eclipse.core.runtime.IConfigurationElement; >-import org.eclipse.core.runtime.IExtensionPoint; >-import org.eclipse.core.runtime.IPath; >-import org.eclipse.core.runtime.IProgressMonitor; >-import org.eclipse.core.runtime.Path; >-import org.eclipse.core.runtime.Platform; >-import org.eclipse.core.runtime.SubProgressMonitor; >+import java.util.List; >+import org.eclipse.core.runtime.*; > import org.eclipse.jface.dialogs.Dialog; > import org.eclipse.jface.dialogs.IDialogSettings; > import org.eclipse.jface.operation.IRunnableWithProgress; >-import org.eclipse.jface.preference.IPreferenceNode; >-import org.eclipse.jface.preference.PreferenceDialog; >-import org.eclipse.jface.preference.PreferenceManager; >+import org.eclipse.jface.preference.*; > import org.eclipse.jface.window.Window; >-import org.eclipse.jface.wizard.IWizardPage; >-import org.eclipse.jface.wizard.Wizard; >-import org.eclipse.jface.wizard.WizardPage; >-import org.eclipse.pde.core.plugin.IPluginBase; >-import org.eclipse.pde.core.plugin.IPluginModelBase; >-import org.eclipse.pde.core.plugin.PluginRegistry; >-import org.eclipse.pde.core.plugin.TargetPlatform; >-import org.eclipse.pde.internal.core.ICoreConstants; >-import org.eclipse.pde.internal.core.PDECore; >-import org.eclipse.pde.internal.core.PDEPreferencesManager; >-import org.eclipse.pde.internal.core.PDEState; >-import org.eclipse.pde.internal.core.SourceLocationKey; >-import org.eclipse.pde.internal.core.SourceLocationManager; >+import org.eclipse.jface.wizard.*; >+import org.eclipse.pde.core.plugin.*; >+import org.eclipse.pde.internal.core.*; >+import org.eclipse.pde.internal.core.importing.IBundleImporter; >+import org.eclipse.pde.internal.core.importing.provisional.BundleImportDescription; > import org.eclipse.pde.internal.core.project.BundleProjectService; >-import org.eclipse.pde.internal.core.target.provisional.IBundleContainer; >-import org.eclipse.pde.internal.core.target.provisional.IResolvedBundle; >-import org.eclipse.pde.internal.core.target.provisional.ITargetDefinition; >-import org.eclipse.pde.internal.core.target.provisional.ITargetHandle; >-import org.eclipse.pde.internal.core.target.provisional.ITargetPlatformService; >-import org.eclipse.pde.internal.ui.IHelpContextIds; >-import org.eclipse.pde.internal.ui.IPDEUIConstants; >-import org.eclipse.pde.internal.ui.PDEPlugin; >-import org.eclipse.pde.internal.ui.PDEUIMessages; >-import org.eclipse.pde.internal.ui.SWTFactory; >+import org.eclipse.pde.internal.core.target.provisional.*; >+import org.eclipse.pde.internal.ui.*; > import org.eclipse.pde.internal.ui.preferences.TargetPlatformPreferenceNode; >+import org.eclipse.pde.internal.ui.provisional.IBundeImportWizardPage; > import org.eclipse.swt.SWT; > import org.eclipse.swt.custom.BusyIndicator; >-import org.eclipse.swt.events.ModifyEvent; >-import org.eclipse.swt.events.ModifyListener; >-import org.eclipse.swt.events.SelectionAdapter; >-import org.eclipse.swt.events.SelectionEvent; >+import org.eclipse.swt.events.*; > import org.eclipse.swt.layout.GridData; > import org.eclipse.swt.layout.GridLayout; >-import org.eclipse.swt.widgets.Button; >-import org.eclipse.swt.widgets.Combo; >-import org.eclipse.swt.widgets.Composite; >-import org.eclipse.swt.widgets.DirectoryDialog; >-import org.eclipse.swt.widgets.Group; >-import org.eclipse.swt.widgets.Shell; >+import org.eclipse.swt.widgets.*; > import org.eclipse.ui.PlatformUI; > import org.osgi.framework.Version; > >@@ -728,7 +683,7 @@ > } > if (page != null) { > nextPages.add(page); >- page.setSelection((BundleImportDescription[]) entry.getValue()); >+// page.setSelection((BundleImportDescription[]) entry.getValue()); > } > } > } >@@ -931,4 +886,46 @@ > return getDropLocation(); > } > } >+ >+ /** >+ * Notifies the contributed bundle import pages of the bundles to import. >+ * >+ * @param models the models selected for import >+ */ >+ public void configureBundleImportPages(IPluginModelBase[] models) { >+ // make a set of the models to import for quick lookup >+ Set modelsSet = new HashSet(); >+ for (int i = 0; i < models.length; i++) { >+ modelsSet.add(models[i]); >+ } >+ Map importerToImportees = new HashMap(); >+ Iterator iterator = importerToInstructions.entrySet().iterator(); >+ while (iterator.hasNext()) { >+ Entry entry = (Entry) iterator.next(); >+ IBundleImporter importer = (IBundleImporter) entry.getKey(); >+ BundleImportDescription[] descriptions = (BundleImportDescription[]) entry.getValue(); >+ for (int i = 0; i < descriptions.length; i++) { >+ IPluginModelBase model = (IPluginModelBase) descriptions[i].getProperty(BundleProjectService.PLUGIN); >+ if (modelsSet.contains(model)) { >+ List importees = (List) importerToImportees.get(importer); >+ if (importees == null) { >+ importees = new ArrayList(); >+ importerToImportees.put(importer, importees); >+ } >+ importees.add(descriptions[i]); >+ } >+ } >+ } >+ iterator = importerToImportees.entrySet().iterator(); >+ while (iterator.hasNext()) { >+ Entry entry = (Entry) iterator.next(); >+ IBundleImporter importer = (IBundleImporter) entry.getKey(); >+ List list = (List) entry.getValue(); >+ BundleImportDescription[] descriptions = (BundleImportDescription[]) list.toArray(new BundleImportDescription[list.size()]); >+ IBundeImportWizardPage page = (IBundeImportWizardPage) importIdToWizardPage.get(importer.getId()); >+ if (page != null) { >+ page.setSelection(descriptions); >+ } >+ } >+ } > }
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 195729
:
73261
|
160522
|
160533
|
160644
|
160671
| 165142 |
165144