You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by ds...@apache.org on 2009/07/21 20:51:41 UTC

svn commit: r796467 [20/25] - in /felix/trunk/sigil: common/core.tests/src/org/apache/felix/sigil/core/ common/core/src/org/apache/felix/sigil/bnd/ common/core/src/org/apache/felix/sigil/config/ common/core/src/org/apache/felix/sigil/core/ common/core/...

Modified: felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/project/ProjectPropertyPage.java
URL: http://svn.apache.org/viewvc/felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/project/ProjectPropertyPage.java?rev=796467&r1=796466&r2=796467&view=diff
==============================================================================
--- felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/project/ProjectPropertyPage.java (original)
+++ felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/project/ProjectPropertyPage.java Tue Jul 21 18:51:33 2009
@@ -19,6 +19,7 @@
 
 package org.apache.felix.sigil.ui.eclipse.ui.preferences.project;
 
+
 import java.util.concurrent.Callable;
 
 import org.apache.felix.sigil.eclipse.SigilCore;
@@ -48,143 +49,179 @@
 import org.eclipse.ui.dialogs.PropertyPage;
 import org.osgi.service.prefs.BackingStoreException;
 
-public class ProjectPropertyPage extends PropertyPage implements
-		IWorkbenchPropertyPage {
 
-	private boolean projectSpecific;
-	private ComboViewer setView;
-	private Composite settings;
-	private Button projectSpecificBtn;
-
-	@Override
-	protected Control createContents(Composite parent) {
-		final Composite control = new Composite(parent, SWT.NONE);
-		
-		projectSpecificBtn = new Button(control, SWT.CHECK);
-		projectSpecificBtn.setText( "Enable project specific settings");
-		projectSpecificBtn.addSelectionListener( new SelectionAdapter() {
-			@Override
-			public void widgetSelected(SelectionEvent e) {
-				setProjectSpecific(!projectSpecific);
-			}
-		});
-		
-		Label link = new Label( control, SWT.UNDERLINE_SINGLE );
-		link.addMouseListener( new MouseAdapter() {
-			@Override
-			public void mouseDown(MouseEvent e) {
-				PreferenceDialog dialog = PreferencesUtil.createPreferenceDialogOn(null, SigilCore.REPOSITORIES_PREFERENCES_ID, null, null);
-				dialog.open();
-			}			
-		});
-		
-		link.setText("Configure workspace settings" );
-		
-		settings = new Composite( control, SWT.BORDER );
-		settings.setLayout( new GridLayout(1,false));
-		createSettings( settings );
-		
-		setFonts(control);
-		
-		// layout
-		control.setLayout( new GridLayout(2, false));
-		projectSpecificBtn.setLayoutData( new GridData(SWT.FILL, SWT.FILL, true, false ) );
-		settings.setLayoutData( new GridData(SWT.FILL, SWT.FILL, true, true, 2, 1 ) );
-
-		// load settings
-		String currentSet = getCurrentSet();
-		
-		if ( currentSet == null ) {
-			setProjectSpecific(false);
-		}
-		else {
-			setView.setSelection( new StructuredSelection(currentSet) );
-			setProjectSpecific(true);
-		}
-		
-		return control;
-	}
-
-	private void setFonts(Composite control) {
-		Composite p = control.getParent();
-		for ( Control c : control.getChildren() ) {
-			c.setFont( p.getFont() );
-			if ( c instanceof Composite ) {
-				setFonts( (Composite) c );
-			}
-		}
-	}
-
-	private void setProjectSpecific(boolean projectSpecific) {
-		if ( this.projectSpecific != projectSpecific ) {
-			this.projectSpecific = projectSpecific;
-			settings.setEnabled(projectSpecific);
-			for ( Control c : settings.getChildren() ) {
-				c.setEnabled( projectSpecific );
-			}
-			projectSpecificBtn.setSelection(projectSpecific);
-		}
-	}
-
-	private void createSettings(Composite parent) {
-		Composite control = new Composite(parent, SWT.NONE);
-		
-		new Label( control, SWT.NONE).setText( "Repository Set:" );
-		Combo combo = new Combo(control, SWT.SINGLE);
-		
-		setView = new ComboViewer(combo);
-		setView.setContentProvider( new DefaultTableProvider() {
-			public Object[] getElements(Object inputElement) {
-				return toArray(inputElement);
-			}
-		});
-		
-		setView.setInput( SigilCore.getRepositoryConfiguration().loadRepositorySets().keySet() );
-		
-		// layout
-		control.setLayout( new GridLayout(2, false ) );
-	}
-
-	private String getCurrentSet() {
-		try {
-			IProject p = (IProject) getElement().getAdapter(IProject.class);
-			ISigilProjectModel model = SigilCore.create(p);
-			return model.getPreferences().get( SigilCore.REPOSITORY_SET, null );
-		} catch (CoreException e) {
-			SigilCore.error("Failed to read repository set", e );
-			return null;
-		}
-	}
-
-	@Override
-	public boolean okToLeave() {
-		if ( projectSpecific ) {
-			if ( setView.getSelection().isEmpty() ) {
-				setErrorMessage("Must select a repository set");
-				return false;
-			}
-		}
-		setErrorMessage(null);
-		return true;
-	}
-
-	@Override
-	public boolean performOk() {
-		return ProjectUtils.runTaskWithRebuildCheck( new Callable<Boolean>() {
-			public Boolean call() throws CoreException, BackingStoreException {
-				String set = null;
-				if ( projectSpecific ) {
-					set = (String) ((IStructuredSelection) setView.getSelection()).getFirstElement();
-				}
-
-				IProject p = (IProject) getElement().getAdapter(IProject.class);
-				ISigilProjectModel model = SigilCore.create(p);
-				model.getPreferences().put( SigilCore.REPOSITORY_SET, set );
-				model.getPreferences().flush();
-				return true;
-			}
+public class ProjectPropertyPage extends PropertyPage implements IWorkbenchPropertyPage
+{
+
+    private boolean projectSpecific;
+    private ComboViewer setView;
+    private Composite settings;
+    private Button projectSpecificBtn;
+
+
+    @Override
+    protected Control createContents( Composite parent )
+    {
+        final Composite control = new Composite( parent, SWT.NONE );
+
+        projectSpecificBtn = new Button( control, SWT.CHECK );
+        projectSpecificBtn.setText( "Enable project specific settings" );
+        projectSpecificBtn.addSelectionListener( new SelectionAdapter()
+        {
+            @Override
+            public void widgetSelected( SelectionEvent e )
+            {
+                setProjectSpecific( !projectSpecific );
+            }
+        } );
+
+        Label link = new Label( control, SWT.UNDERLINE_SINGLE );
+        link.addMouseListener( new MouseAdapter()
+        {
+            @Override
+            public void mouseDown( MouseEvent e )
+            {
+                PreferenceDialog dialog = PreferencesUtil.createPreferenceDialogOn( null,
+                    SigilCore.REPOSITORIES_PREFERENCES_ID, null, null );
+                dialog.open();
+            }
+        } );
+
+        link.setText( "Configure workspace settings" );
+
+        settings = new Composite( control, SWT.BORDER );
+        settings.setLayout( new GridLayout( 1, false ) );
+        createSettings( settings );
+
+        setFonts( control );
+
+        // layout
+        control.setLayout( new GridLayout( 2, false ) );
+        projectSpecificBtn.setLayoutData( new GridData( SWT.FILL, SWT.FILL, true, false ) );
+        settings.setLayoutData( new GridData( SWT.FILL, SWT.FILL, true, true, 2, 1 ) );
+
+        // load settings
+        String currentSet = getCurrentSet();
+
+        if ( currentSet == null )
+        {
+            setProjectSpecific( false );
+        }
+        else
+        {
+            setView.setSelection( new StructuredSelection( currentSet ) );
+            setProjectSpecific( true );
+        }
+
+        return control;
+    }
+
+
+    private void setFonts( Composite control )
+    {
+        Composite p = control.getParent();
+        for ( Control c : control.getChildren() )
+        {
+            c.setFont( p.getFont() );
+            if ( c instanceof Composite )
+            {
+                setFonts( ( Composite ) c );
+            }
+        }
+    }
+
+
+    private void setProjectSpecific( boolean projectSpecific )
+    {
+        if ( this.projectSpecific != projectSpecific )
+        {
+            this.projectSpecific = projectSpecific;
+            settings.setEnabled( projectSpecific );
+            for ( Control c : settings.getChildren() )
+            {
+                c.setEnabled( projectSpecific );
+            }
+            projectSpecificBtn.setSelection( projectSpecific );
+        }
+    }
+
+
+    private void createSettings( Composite parent )
+    {
+        Composite control = new Composite( parent, SWT.NONE );
+
+        new Label( control, SWT.NONE ).setText( "Repository Set:" );
+        Combo combo = new Combo( control, SWT.SINGLE );
+
+        setView = new ComboViewer( combo );
+        setView.setContentProvider( new DefaultTableProvider()
+        {
+            public Object[] getElements( Object inputElement )
+            {
+                return toArray( inputElement );
+            }
+        } );
+
+        setView.setInput( SigilCore.getRepositoryConfiguration().loadRepositorySets().keySet() );
+
+        // layout
+        control.setLayout( new GridLayout( 2, false ) );
+    }
+
+
+    private String getCurrentSet()
+    {
+        try
+        {
+            IProject p = ( IProject ) getElement().getAdapter( IProject.class );
+            ISigilProjectModel model = SigilCore.create( p );
+            return model.getPreferences().get( SigilCore.REPOSITORY_SET, null );
+        }
+        catch ( CoreException e )
+        {
+            SigilCore.error( "Failed to read repository set", e );
+            return null;
+        }
+    }
+
+
+    @Override
+    public boolean okToLeave()
+    {
+        if ( projectSpecific )
+        {
+            if ( setView.getSelection().isEmpty() )
+            {
+                setErrorMessage( "Must select a repository set" );
+                return false;
+            }
+        }
+        setErrorMessage( null );
+        return true;
+    }
+
+
+    @Override
+    public boolean performOk()
+    {
+        return ProjectUtils.runTaskWithRebuildCheck( new Callable<Boolean>()
+        {
+            public Boolean call() throws CoreException, BackingStoreException
+            {
+                String set = null;
+                if ( projectSpecific )
+                {
+                    set = ( String ) ( ( IStructuredSelection ) setView.getSelection() ).getFirstElement();
+                }
+
+                IProject p = ( IProject ) getElement().getAdapter( IProject.class );
+                ISigilProjectModel model = SigilCore.create( p );
+                model.getPreferences().put( SigilCore.REPOSITORY_SET, set );
+                model.getPreferences().flush();
+                return true;
+            }
 
-		}, getShell());
-	}
+        }, getShell() );
+    }
 
 }

Modified: felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/NewRepositoryWizard.java
URL: http://svn.apache.org/viewvc/felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/NewRepositoryWizard.java?rev=796467&r1=796466&r2=796467&view=diff
==============================================================================
--- felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/NewRepositoryWizard.java (original)
+++ felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/NewRepositoryWizard.java Tue Jul 21 18:51:33 2009
@@ -19,32 +19,43 @@
 
 package org.apache.felix.sigil.ui.eclipse.ui.preferences.repository;
 
+
 import org.apache.felix.sigil.eclipse.model.repository.IRepositoryModel;
 import org.eclipse.jface.wizard.Wizard;
 
-public class NewRepositoryWizard extends Wizard {
 
-	private IRepositoryModel repository;
-	
-	private RepositoryTypeSelectionPage page = new RepositoryTypeSelectionPage();
-	
-	public void addPages() {
-		addPage( page );
-	}
-	
-	@Override
-	public boolean performFinish() {
-		repository = page.getRepository();
-		return true;
-	}
-	@Override
-	public boolean needsPreviousAndNextButtons() {
-		return true;
-	}
-
-	public IRepositoryModel getRepository() {
-		return repository;
-	}
+public class NewRepositoryWizard extends Wizard
+{
+
+    private IRepositoryModel repository;
+
+    private RepositoryTypeSelectionPage page = new RepositoryTypeSelectionPage();
+
+
+    public void addPages()
+    {
+        addPage( page );
+    }
+
+
+    @Override
+    public boolean performFinish()
+    {
+        repository = page.getRepository();
+        return true;
+    }
+
+
+    @Override
+    public boolean needsPreviousAndNextButtons()
+    {
+        return true;
+    }
+
 
+    public IRepositoryModel getRepository()
+    {
+        return repository;
+    }
 
 }

Modified: felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/RepositoriesPreferencePage.java
URL: http://svn.apache.org/viewvc/felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/RepositoriesPreferencePage.java?rev=796467&r1=796466&r2=796467&view=diff
==============================================================================
--- felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/RepositoriesPreferencePage.java (original)
+++ felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/RepositoriesPreferencePage.java Tue Jul 21 18:51:33 2009
@@ -17,8 +17,9 @@
  * under the License.
  */
 
-package org.apache.felix.sigil.ui.eclipse.ui.preferences.repository;
-
+package org.apache.felix.sigil.ui.eclipse.ui.preferences.repository;
+
+
 import org.apache.felix.sigil.eclipse.SigilCore;
 import org.apache.felix.sigil.eclipse.model.repository.IRepositoryConfiguration;
 import org.apache.felix.sigil.eclipse.model.repository.IRepositorySet;
@@ -35,80 +36,101 @@
 import org.eclipse.swt.widgets.TabItem;
 import org.eclipse.ui.IWorkbench;
 import org.eclipse.ui.IWorkbenchPreferencePage;
-
-public class RepositoriesPreferencePage extends ProjectDependentPreferencesPage implements
-		IWorkbenchPreferencePage {
-
-	private boolean changed;
-	private RepositoriesView viewPage;
-	private RepositorySetsView setPage;
-
-	public RepositoriesPreferencePage() {
-		super( "Repository Preferences" );
-	}
-	@Override
-	protected Control createContents(Composite parent) {
-		Control control = initContents( parent );
-		return control;
-	}
-
-	@Override
-	protected IPreferenceStore doGetPreferenceStore() {
-		return SigilCore.getDefault().getPreferenceStore();
-	}
-
-	protected void changed() {
-		changed = true;
-		updateApplyButton();
-	}
-	
-	private Control initContents(Composite parent) {
-		viewPage = new RepositoriesView(this);
-		setPage = new RepositorySetsView(this);
-		
-		Composite control = new Composite(parent, SWT.NONE);
-		
-		TabFolder folder = new TabFolder(control, SWT.TOP);
-		
-		TabItem view = new TabItem(folder, SWT.NONE);
-		view.setText("Repositories");
-		view.setControl(viewPage.createContents(folder) );
-		
-		TabItem sets = new TabItem(folder, SWT.NONE);
-		sets.setText("Sets");
-		sets.setControl(setPage.createContents(folder) );
-
-		control.setLayout(new GridLayout(1, true));
-		folder.setLayoutData( new GridData(SWT.FILL, SWT.FILL, true, true));
-		
-		return control;
-	}
-
-	public void init(IWorkbench workbench) {
-		// TODO Auto-generated method stub
-		
-	}
-
-	@Override
-	protected void doSave() {
-		try {
-			IRepositoryConfiguration config = SigilCore.getRepositoryConfiguration();
-			config.saveRepositories(viewPage.getRepositories());
-			config.saveRepositorySets(setPage.getSets());
-			IRepositorySet defaultSet = new RepositorySet(setPage.getDefaultRepositories());
-			config.setDefaultRepositorySet(defaultSet);
-			
-			setErrorMessage(null);
-			getApplyButton().setEnabled(false);
-			changed = false;
-		} catch (CoreException e) {
-			setErrorMessage("Failed to save repositories:" + e.getStatus().getMessage());
-			SigilCore.error("Failed to save repositories", e);
-		}
-	}
-
-	@Override
-	protected boolean isDirty() {
-		return changed;
-	}	
-}
+
+
+public class RepositoriesPreferencePage extends ProjectDependentPreferencesPage implements IWorkbenchPreferencePage
+{
+
+    private boolean changed;
+    private RepositoriesView viewPage;
+    private RepositorySetsView setPage;
+
+
+    public RepositoriesPreferencePage()
+    {
+        super( "Repository Preferences" );
+    }
+
+
+    @Override
+    protected Control createContents( Composite parent )
+    {
+        Control control = initContents( parent );
+        return control;
+    }
+
+
+    @Override
+    protected IPreferenceStore doGetPreferenceStore()
+    {
+        return SigilCore.getDefault().getPreferenceStore();
+    }
+
+
+    protected void changed()
+    {
+        changed = true;
+        updateApplyButton();
+    }
+
+
+    private Control initContents( Composite parent )
+    {
+        viewPage = new RepositoriesView( this );
+        setPage = new RepositorySetsView( this );
+
+        Composite control = new Composite( parent, SWT.NONE );
+
+        TabFolder folder = new TabFolder( control, SWT.TOP );
+
+        TabItem view = new TabItem( folder, SWT.NONE );
+        view.setText( "Repositories" );
+        view.setControl( viewPage.createContents( folder ) );
+
+        TabItem sets = new TabItem( folder, SWT.NONE );
+        sets.setText( "Sets" );
+        sets.setControl( setPage.createContents( folder ) );
+
+        control.setLayout( new GridLayout( 1, true ) );
+        folder.setLayoutData( new GridData( SWT.FILL, SWT.FILL, true, true ) );
+
+        return control;
+    }
+
+
+    public void init( IWorkbench workbench )
+    {
+        // TODO Auto-generated method stub
+
+    }
+
+
+    @Override
+    protected void doSave()
+    {
+        try
+        {
+            IRepositoryConfiguration config = SigilCore.getRepositoryConfiguration();
+            config.saveRepositories( viewPage.getRepositories() );
+            config.saveRepositorySets( setPage.getSets() );
+            IRepositorySet defaultSet = new RepositorySet( setPage.getDefaultRepositories() );
+            config.setDefaultRepositorySet( defaultSet );
+
+            setErrorMessage( null );
+            getApplyButton().setEnabled( false );
+            changed = false;
+        }
+        catch ( CoreException e )
+        {
+            setErrorMessage( "Failed to save repositories:" + e.getStatus().getMessage() );
+            SigilCore.error( "Failed to save repositories", e );
+        }
+    }
+
+
+    @Override
+    protected boolean isDirty()
+    {
+        return changed;
+    }
+}

Modified: felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/RepositoriesView.java
URL: http://svn.apache.org/viewvc/felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/RepositoriesView.java?rev=796467&r1=796466&r2=796467&view=diff
==============================================================================
--- felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/RepositoriesView.java (original)
+++ felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/RepositoriesView.java Tue Jul 21 18:51:33 2009
@@ -19,6 +19,7 @@
 
 package org.apache.felix.sigil.ui.eclipse.ui.preferences.repository;
 
+
 import java.util.ArrayList;
 import java.util.Iterator;
 import java.util.List;
@@ -49,213 +50,271 @@
 import org.eclipse.swt.widgets.Shell;
 import org.eclipse.swt.widgets.Table;
 
-public class RepositoriesView {
-	private final RepositoriesPreferencePage page;
 
-	private List<IRepositoryModel> repositories;
-	
-	private TableViewer repositoryView;
-
-	public RepositoriesView(RepositoriesPreferencePage page) {
-		this.page = page;
-	}
-
-	public Control createContents(Composite parent) {
-		// Create Controls
-		Composite composite = new Composite(parent, SWT.NONE);
-		
-		Table table = new Table(composite, SWT.MULTI | SWT.BORDER);
-
-		// Table Viewer Setup
-		repositoryView = new TableViewer(table);
-		repositoryView.setLabelProvider(new LabelProvider() {
-			@Override
-			public String getText(Object element) {
-				IRepositoryModel rep = (IRepositoryModel) element;
-				return rep.getName();
-			}
-
-			@Override
-			public Image getImage(Object element) {
-				IRepositoryModel rep = (IRepositoryModel) element;				
-				return rep.getType().getIcon();
-			}
-		});
-
-		repositoryView.setContentProvider( new DefaultTableProvider() {
-			public Object[] getElements(Object inputElement) {
-				return toArray(inputElement);
-			}
-		} );
-		
-		// Layout
-		composite.setLayout(new GridLayout(2, false));
-		table.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 6));
-		
-		createButtons(composite, repositoryView);	
-		
-		repositories = SigilCore.getRepositoryConfiguration().loadRepositories();
-		repositoryView.setInput(repositories);		
-		
-		return composite;
-	}
-	
-	private void createButtons(final Composite composite, final TableViewer repositoryView) {
-		final Button add = new Button(composite, SWT.PUSH);
-		add.setText("Add...");
-		add.setEnabled(true);
-		
-		final Button edit = new Button(composite, SWT.PUSH);
-		edit.setText("Edit...");
-		edit.setEnabled(false);
-				
-		final Button remove = new Button(composite, SWT.PUSH);
-		remove.setText("Remove");
-		remove.setEnabled(false);
-		
-		final Button refresh = new Button(composite, SWT.PUSH);
-		refresh.setText("Refresh");
-		refresh.setEnabled( false );
-		
-		// Listeners
-		add.addSelectionListener( new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				add(composite);
-			}			
-		});
-		
-		edit.addSelectionListener( new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				IStructuredSelection sel = (IStructuredSelection) repositoryView.getSelection();
-				edit(composite, sel);
-			}			
-		});
-		
-		remove.addSelectionListener( new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				IStructuredSelection sel = (IStructuredSelection) repositoryView.getSelection();
-				remove(sel);
-			}			
-		});
-		
-		refresh.addSelectionListener( new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				IStructuredSelection sel = (IStructuredSelection) repositoryView.getSelection();
-				refresh(composite, sel);
-			}			
-		});
-		
-		repositoryView.addSelectionChangedListener( new ISelectionChangedListener() {
-			public void selectionChanged(SelectionChangedEvent event) {
-				boolean selected = !event.getSelection().isEmpty();
-				if ( selected ) {
-					refresh.setEnabled(true);
-					
-					IStructuredSelection sel = (IStructuredSelection) event.getSelection();
-					
-					checkEditEnabled(edit, sel);
-					checkRemoveEnabled(remove, sel);
-				}
-				else {
-					refresh.setEnabled(false);
-					edit.setEnabled(false);
-					remove.setEnabled(false);
-				}
-			}
-		});
-		
-		add.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false));
-		edit.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false));
-		remove.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false));
-	}
-	
-	@SuppressWarnings("unchecked")
-	private void checkRemoveEnabled(Button button, IStructuredSelection sel) {
-		boolean alldynamic = true;
-		for ( Iterator i = sel.iterator(); i.hasNext(); ) {
-			IRepositoryModel model = (IRepositoryModel) i.next();
-			if ( !model.getType().isDynamic() ) {
-				alldynamic = false;
-				break;
-			}
-		}
-		button.setEnabled(alldynamic);
-	}
-
-	private void checkEditEnabled(Button edit, IStructuredSelection sel) {
-		if ( sel.size() == 1 ) {
-			IRepositoryModel element = (IRepositoryModel) sel.getFirstElement();
-			if ( WizardHelper.hasWizard( element.getType()) ) {
-				edit.setEnabled(true);						
-			}
-			else {
-				edit.setEnabled(false);
-			}
-		}
-		else {
-			edit.setEnabled(false);
-		}
-	}
-
-	@SuppressWarnings("unchecked")
-	protected void refresh(Control parent, IStructuredSelection sel) {
-		ArrayList<IRepositoryModel> models = new ArrayList<IRepositoryModel>(sel.size());
-		
-		for ( Iterator i = sel.iterator(); i.hasNext(); ) {
-			IRepositoryModel model = (IRepositoryModel) i.next();
-			models.add( model );
-		}
-		
-		new RefreshRepositoryAction(models.toArray(new IRepositoryModel[models.size()])).run();
-	}
-
-	private void add(Control parent) {
-		NewRepositoryWizard wizard = new NewRepositoryWizard();
-		WizardDialog dialog = new WizardDialog(getShell(parent), wizard);
-		if ( dialog.open() == Window.OK ) {
-			repositories.add(wizard.getRepository());
-			updated();
-		}
-	}
-
-	private void edit(Control parent, IStructuredSelection sel) {
-		IRepositoryModel model = (IRepositoryModel) sel.getFirstElement();
-		try {
-			RepositoryWizard wizard = WizardHelper.loadWizard(model.getType());
-			wizard.init(model);
-			WizardDialog dialog = new WizardDialog(getShell(parent), wizard);
-			if ( dialog.open() == Window.OK ) {
-				updated();
-			}
-		}
-		catch (CoreException e) {
-			SigilCore.error( "Failed to load wizard", e);
-			MessageDialog.openError(getShell(parent), "Error", "Failed to load wizard:" + e.getStatus().getMessage() );
-		}
-	}
-
-	private Shell getShell(Control parent) {
-		return parent.getShell();
-	}
-
-	@SuppressWarnings("unchecked")
-	private void remove(IStructuredSelection sel) {
-		boolean change = false;
-		for ( Iterator i = sel.iterator(); i.hasNext(); ) {
-			change = repositories.remove(i.next());
-		}
-		
-		if ( change ) {
-			updated();
-		}
-	}
-
-	private void updated() {
-		repositoryView.refresh();
-		page.changed();
-	}
-
-	public List<IRepositoryModel> getRepositories() {
-		return repositories;
-	}	
+public class RepositoriesView
+{
+    private final RepositoriesPreferencePage page;
+
+    private List<IRepositoryModel> repositories;
+
+    private TableViewer repositoryView;
+
+
+    public RepositoriesView( RepositoriesPreferencePage page )
+    {
+        this.page = page;
+    }
+
+
+    public Control createContents( Composite parent )
+    {
+        // Create Controls
+        Composite composite = new Composite( parent, SWT.NONE );
+
+        Table table = new Table( composite, SWT.MULTI | SWT.BORDER );
+
+        // Table Viewer Setup
+        repositoryView = new TableViewer( table );
+        repositoryView.setLabelProvider( new LabelProvider()
+        {
+            @Override
+            public String getText( Object element )
+            {
+                IRepositoryModel rep = ( IRepositoryModel ) element;
+                return rep.getName();
+            }
+
+
+            @Override
+            public Image getImage( Object element )
+            {
+                IRepositoryModel rep = ( IRepositoryModel ) element;
+                return rep.getType().getIcon();
+            }
+        } );
+
+        repositoryView.setContentProvider( new DefaultTableProvider()
+        {
+            public Object[] getElements( Object inputElement )
+            {
+                return toArray( inputElement );
+            }
+        } );
+
+        // Layout
+        composite.setLayout( new GridLayout( 2, false ) );
+        table.setLayoutData( new GridData( SWT.FILL, SWT.FILL, true, true, 1, 6 ) );
+
+        createButtons( composite, repositoryView );
+
+        repositories = SigilCore.getRepositoryConfiguration().loadRepositories();
+        repositoryView.setInput( repositories );
+
+        return composite;
+    }
+
+
+    private void createButtons( final Composite composite, final TableViewer repositoryView )
+    {
+        final Button add = new Button( composite, SWT.PUSH );
+        add.setText( "Add..." );
+        add.setEnabled( true );
+
+        final Button edit = new Button( composite, SWT.PUSH );
+        edit.setText( "Edit..." );
+        edit.setEnabled( false );
+
+        final Button remove = new Button( composite, SWT.PUSH );
+        remove.setText( "Remove" );
+        remove.setEnabled( false );
+
+        final Button refresh = new Button( composite, SWT.PUSH );
+        refresh.setText( "Refresh" );
+        refresh.setEnabled( false );
+
+        // Listeners
+        add.addSelectionListener( new SelectionAdapter()
+        {
+            public void widgetSelected( SelectionEvent e )
+            {
+                add( composite );
+            }
+        } );
+
+        edit.addSelectionListener( new SelectionAdapter()
+        {
+            public void widgetSelected( SelectionEvent e )
+            {
+                IStructuredSelection sel = ( IStructuredSelection ) repositoryView.getSelection();
+                edit( composite, sel );
+            }
+        } );
+
+        remove.addSelectionListener( new SelectionAdapter()
+        {
+            public void widgetSelected( SelectionEvent e )
+            {
+                IStructuredSelection sel = ( IStructuredSelection ) repositoryView.getSelection();
+                remove( sel );
+            }
+        } );
+
+        refresh.addSelectionListener( new SelectionAdapter()
+        {
+            public void widgetSelected( SelectionEvent e )
+            {
+                IStructuredSelection sel = ( IStructuredSelection ) repositoryView.getSelection();
+                refresh( composite, sel );
+            }
+        } );
+
+        repositoryView.addSelectionChangedListener( new ISelectionChangedListener()
+        {
+            public void selectionChanged( SelectionChangedEvent event )
+            {
+                boolean selected = !event.getSelection().isEmpty();
+                if ( selected )
+                {
+                    refresh.setEnabled( true );
+
+                    IStructuredSelection sel = ( IStructuredSelection ) event.getSelection();
+
+                    checkEditEnabled( edit, sel );
+                    checkRemoveEnabled( remove, sel );
+                }
+                else
+                {
+                    refresh.setEnabled( false );
+                    edit.setEnabled( false );
+                    remove.setEnabled( false );
+                }
+            }
+        } );
+
+        add.setLayoutData( new GridData( SWT.FILL, SWT.FILL, false, false ) );
+        edit.setLayoutData( new GridData( SWT.FILL, SWT.FILL, false, false ) );
+        remove.setLayoutData( new GridData( SWT.FILL, SWT.FILL, false, false ) );
+    }
+
+
+    @SuppressWarnings("unchecked")
+    private void checkRemoveEnabled( Button button, IStructuredSelection sel )
+    {
+        boolean alldynamic = true;
+        for ( Iterator i = sel.iterator(); i.hasNext(); )
+        {
+            IRepositoryModel model = ( IRepositoryModel ) i.next();
+            if ( !model.getType().isDynamic() )
+            {
+                alldynamic = false;
+                break;
+            }
+        }
+        button.setEnabled( alldynamic );
+    }
+
+
+    private void checkEditEnabled( Button edit, IStructuredSelection sel )
+    {
+        if ( sel.size() == 1 )
+        {
+            IRepositoryModel element = ( IRepositoryModel ) sel.getFirstElement();
+            if ( WizardHelper.hasWizard( element.getType() ) )
+            {
+                edit.setEnabled( true );
+            }
+            else
+            {
+                edit.setEnabled( false );
+            }
+        }
+        else
+        {
+            edit.setEnabled( false );
+        }
+    }
+
+
+    @SuppressWarnings("unchecked")
+    protected void refresh( Control parent, IStructuredSelection sel )
+    {
+        ArrayList<IRepositoryModel> models = new ArrayList<IRepositoryModel>( sel.size() );
+
+        for ( Iterator i = sel.iterator(); i.hasNext(); )
+        {
+            IRepositoryModel model = ( IRepositoryModel ) i.next();
+            models.add( model );
+        }
+
+        new RefreshRepositoryAction( models.toArray( new IRepositoryModel[models.size()] ) ).run();
+    }
+
+
+    private void add( Control parent )
+    {
+        NewRepositoryWizard wizard = new NewRepositoryWizard();
+        WizardDialog dialog = new WizardDialog( getShell( parent ), wizard );
+        if ( dialog.open() == Window.OK )
+        {
+            repositories.add( wizard.getRepository() );
+            updated();
+        }
+    }
+
+
+    private void edit( Control parent, IStructuredSelection sel )
+    {
+        IRepositoryModel model = ( IRepositoryModel ) sel.getFirstElement();
+        try
+        {
+            RepositoryWizard wizard = WizardHelper.loadWizard( model.getType() );
+            wizard.init( model );
+            WizardDialog dialog = new WizardDialog( getShell( parent ), wizard );
+            if ( dialog.open() == Window.OK )
+            {
+                updated();
+            }
+        }
+        catch ( CoreException e )
+        {
+            SigilCore.error( "Failed to load wizard", e );
+            MessageDialog
+                .openError( getShell( parent ), "Error", "Failed to load wizard:" + e.getStatus().getMessage() );
+        }
+    }
+
+
+    private Shell getShell( Control parent )
+    {
+        return parent.getShell();
+    }
+
+
+    @SuppressWarnings("unchecked")
+    private void remove( IStructuredSelection sel )
+    {
+        boolean change = false;
+        for ( Iterator i = sel.iterator(); i.hasNext(); )
+        {
+            change = repositories.remove( i.next() );
+        }
+
+        if ( change )
+        {
+            updated();
+        }
+    }
+
+
+    private void updated()
+    {
+        repositoryView.refresh();
+        page.changed();
+    }
+
+
+    public List<IRepositoryModel> getRepositories()
+    {
+        return repositories;
+    }
 }

Modified: felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/RepositorySetDialog.java
URL: http://svn.apache.org/viewvc/felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/RepositorySetDialog.java?rev=796467&r1=796466&r2=796467&view=diff
==============================================================================
--- felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/RepositorySetDialog.java (original)
+++ felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/RepositorySetDialog.java Tue Jul 21 18:51:33 2009
@@ -19,6 +19,7 @@
 
 package org.apache.felix.sigil.ui.eclipse.ui.preferences.repository;
 
+
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
@@ -49,212 +50,270 @@
 import org.eclipse.swt.widgets.Shell;
 import org.eclipse.swt.widgets.Text;
 
-public class RepositorySetDialog extends TitleAreaDialog {
-	
-	private CheckboxTableViewer viewer;
-	private Text nameTxt;
-	private Button upBtn;
-	private Button downBtn;
-	private final String setName;
-	private List<IRepositoryModel> repositories;
-	private final boolean nameEditable;
-	private final Set<String> set;
-	
-	private String newName;
-	
-	public RepositorySetDialog(Shell shell, Set<String> set) {
-		this(shell, null, true, set);
-	}
-	
-	public RepositorySetDialog(Shell parent, RepositoryViewData data, boolean nameEditable, Set<String> set) {
-		super(parent);
-		this.set = set;
-		this.setName = data == null ? "" : data.getName();
-		this.repositories = data == null ? new ArrayList<IRepositoryModel>() : new ArrayList<IRepositoryModel>(Arrays.asList(data.getRepositories()));
-		this.nameEditable = nameEditable;
-	}
-
-	@Override
-	protected Control createDialogArea(Composite parent) {
-		Composite area = (Composite) super.createDialogArea(parent);
-		createControl(area);
-		return area;
-	}
-
-	public void createControl(Composite parent) {
-		// controls
-		Composite body = new Composite(parent, SWT.NONE);
-		body.setLayoutData( new GridData(GridData.FILL_BOTH) );
-		
-		if ( nameEditable ) {
-			new Label( body, SWT.NONE ).setText( "Name" );
-			
-			nameTxt = new Text( body, SWT.BORDER );
-			
-			nameTxt.setText(setName);
-			
-			nameTxt.addKeyListener( new KeyAdapter() {
-				@Override
-				public void keyReleased(KeyEvent e) {
-					checkComplete();
-				}
-			});
-		}
-		
-		Composite table = new Composite(body, SWT.NONE);
-		table.setLayout( new GridLayout(2, false ) );
-		createTable( table );
-		
-		// layout
-		body.setLayout( new GridLayout( 2, false ) );
-		if ( nameEditable ) {
-			nameTxt.setLayoutData( new GridData(SWT.FILL, SWT.FILL, true, false) );
-		}
-		table.setLayoutData( new GridData(SWT.FILL, SWT.FILL, true, true, 2, 1) );
-	}
-	
-	public RepositoryViewData getData() {
-		String name = nameEditable ? newName : setName;
-		IRepositoryModel[] reps = repositories.toArray( new IRepositoryModel[repositories.size()]);
-		return new RepositoryViewData( name, reps );
-	}
-
-	private void checkComplete() {
-		if ( nameEditable ) {
-			String name = nameTxt.getText();
-			if ( !name.equals( setName ) && set.contains( name ) ) {
-				setErrorMessage("Set " + name + " already exists" );
-				Button b = getButton(IDialogConstants.OK_ID);
-				b.setEnabled(false);
-			}
-		}		
-		setErrorMessage(null);
-		Button b = getButton(IDialogConstants.OK_ID);
-		b.setEnabled(true);
-	}
-
-
-	@Override
-	protected void okPressed() {
-		if ( nameEditable ) {
-			newName = nameTxt.getText();
-		}
-		repositories = getRepositories();
-		super.okPressed();
-	}
-
-	private void createTable(Composite body) {
-		createViewer(body);
-		
-		Composite btns = new Composite(body, SWT.NONE);
-		btns.setLayout( new GridLayout( 1, true ) );
-		
-		createButtons(btns);
-		
-		// layout
-		viewer.getTable().setLayoutData( new GridData( SWT.FILL, SWT.FILL, true, true ) );
-		btns.setLayoutData( new GridData( SWT.RIGHT, SWT.TOP, false, false ) );
-	}
-
-	private void createButtons(Composite parent) {
-		upBtn = new Button(parent, SWT.PUSH);
-		upBtn.setText( "Up" );
-		upBtn.addSelectionListener( new SelectionAdapter() {
-			@Override
-			public void widgetSelected(SelectionEvent e) {
-				up();
-			}
-		});
-		
-		downBtn = new Button(parent, SWT.PUSH);
-		downBtn.setText( "Down" );
-		downBtn.addSelectionListener( new SelectionAdapter() {
-			@Override
-			public void widgetSelected(SelectionEvent e) {
-				down();
-			}
-		});
-		
-		setUpDownEnabled(false);
-	}
-
-	private void up() {
-		IRepositoryModel model = (IRepositoryModel) ((StructuredSelection) viewer.getSelection()).getFirstElement();
-		int i = repositories.indexOf(model);
-		if ( i > 0 ) {
-			repositories.remove( i );
-			repositories.add( i - 1, model );
-			viewer.refresh();
-		}
-	}
-
-	private void down() {
-		IRepositoryModel model = (IRepositoryModel) ((StructuredSelection) viewer.getSelection()).getFirstElement();
-		int i = repositories.indexOf(model);
-		if ( i < repositories.size() - 1 ) {
-			repositories.remove( i );
-			repositories.add( i + 1, model );
-			viewer.refresh();
-		}
-	}
-
-	private void createViewer(Composite parent) {
-		viewer = CheckboxTableViewer.newCheckList(parent, SWT.BORDER);
-		
-		viewer.addSelectionChangedListener( new ISelectionChangedListener() {
-			public void selectionChanged(SelectionChangedEvent event) {
-				setUpDownEnabled( !viewer.getSelection().isEmpty() ); 
-			}
-		});
-		
-		viewer.setContentProvider( new DefaultTableProvider() {
-			public Object[] getElements(Object inputElement) {
-				return toArray(inputElement);
-			}
-		});
-		
-		viewer.setLabelProvider( new DefaultLabelProvider() {
-			public Image getImage(Object element) {
-				return null;
-			}
-
-			public String getText(Object element) {
-				IRepositoryModel m = (IRepositoryModel) element;
-				return m.getName();
-			}			
-		});
-		
-		viewer.setInput( repositories );
-		
-		for ( IRepositoryModel m : repositories ) {
-			viewer.setChecked(m, true);
-		}
-		
-		List<IRepositoryModel> allRepositories = SigilCore.getRepositoryConfiguration().loadRepositories();
-		
-		for ( IRepositoryModel m : allRepositories ) {
-			if ( !repositories.contains(m) ) {
-				repositories.add(m);
-			}
-		}
-		
-		viewer.refresh();		
-	}
-
-	private void setUpDownEnabled(boolean enabled) {
-		upBtn.setEnabled(enabled);
-		downBtn.setEnabled(enabled);
-	}
-
-	private List<IRepositoryModel> getRepositories() {
-		ArrayList<IRepositoryModel> reps = new ArrayList<IRepositoryModel>();
-		
-		for ( IRepositoryModel m : repositories ) {
-			if ( viewer.getChecked(m) ) {
-				reps.add( m );
-			}
-		}
-		
-		return reps;
-	}
+
+public class RepositorySetDialog extends TitleAreaDialog
+{
+
+    private CheckboxTableViewer viewer;
+    private Text nameTxt;
+    private Button upBtn;
+    private Button downBtn;
+    private final String setName;
+    private List<IRepositoryModel> repositories;
+    private final boolean nameEditable;
+    private final Set<String> set;
+
+    private String newName;
+
+
+    public RepositorySetDialog( Shell shell, Set<String> set )
+    {
+        this( shell, null, true, set );
+    }
+
+
+    public RepositorySetDialog( Shell parent, RepositoryViewData data, boolean nameEditable, Set<String> set )
+    {
+        super( parent );
+        this.set = set;
+        this.setName = data == null ? "" : data.getName();
+        this.repositories = data == null ? new ArrayList<IRepositoryModel>() : new ArrayList<IRepositoryModel>( Arrays
+            .asList( data.getRepositories() ) );
+        this.nameEditable = nameEditable;
+    }
+
+
+    @Override
+    protected Control createDialogArea( Composite parent )
+    {
+        Composite area = ( Composite ) super.createDialogArea( parent );
+        createControl( area );
+        return area;
+    }
+
+
+    public void createControl( Composite parent )
+    {
+        // controls
+        Composite body = new Composite( parent, SWT.NONE );
+        body.setLayoutData( new GridData( GridData.FILL_BOTH ) );
+
+        if ( nameEditable )
+        {
+            new Label( body, SWT.NONE ).setText( "Name" );
+
+            nameTxt = new Text( body, SWT.BORDER );
+
+            nameTxt.setText( setName );
+
+            nameTxt.addKeyListener( new KeyAdapter()
+            {
+                @Override
+                public void keyReleased( KeyEvent e )
+                {
+                    checkComplete();
+                }
+            } );
+        }
+
+        Composite table = new Composite( body, SWT.NONE );
+        table.setLayout( new GridLayout( 2, false ) );
+        createTable( table );
+
+        // layout
+        body.setLayout( new GridLayout( 2, false ) );
+        if ( nameEditable )
+        {
+            nameTxt.setLayoutData( new GridData( SWT.FILL, SWT.FILL, true, false ) );
+        }
+        table.setLayoutData( new GridData( SWT.FILL, SWT.FILL, true, true, 2, 1 ) );
+    }
+
+
+    public RepositoryViewData getData()
+    {
+        String name = nameEditable ? newName : setName;
+        IRepositoryModel[] reps = repositories.toArray( new IRepositoryModel[repositories.size()] );
+        return new RepositoryViewData( name, reps );
+    }
+
+
+    private void checkComplete()
+    {
+        if ( nameEditable )
+        {
+            String name = nameTxt.getText();
+            if ( !name.equals( setName ) && set.contains( name ) )
+            {
+                setErrorMessage( "Set " + name + " already exists" );
+                Button b = getButton( IDialogConstants.OK_ID );
+                b.setEnabled( false );
+            }
+        }
+        setErrorMessage( null );
+        Button b = getButton( IDialogConstants.OK_ID );
+        b.setEnabled( true );
+    }
+
+
+    @Override
+    protected void okPressed()
+    {
+        if ( nameEditable )
+        {
+            newName = nameTxt.getText();
+        }
+        repositories = getRepositories();
+        super.okPressed();
+    }
+
+
+    private void createTable( Composite body )
+    {
+        createViewer( body );
+
+        Composite btns = new Composite( body, SWT.NONE );
+        btns.setLayout( new GridLayout( 1, true ) );
+
+        createButtons( btns );
+
+        // layout
+        viewer.getTable().setLayoutData( new GridData( SWT.FILL, SWT.FILL, true, true ) );
+        btns.setLayoutData( new GridData( SWT.RIGHT, SWT.TOP, false, false ) );
+    }
+
+
+    private void createButtons( Composite parent )
+    {
+        upBtn = new Button( parent, SWT.PUSH );
+        upBtn.setText( "Up" );
+        upBtn.addSelectionListener( new SelectionAdapter()
+        {
+            @Override
+            public void widgetSelected( SelectionEvent e )
+            {
+                up();
+            }
+        } );
+
+        downBtn = new Button( parent, SWT.PUSH );
+        downBtn.setText( "Down" );
+        downBtn.addSelectionListener( new SelectionAdapter()
+        {
+            @Override
+            public void widgetSelected( SelectionEvent e )
+            {
+                down();
+            }
+        } );
+
+        setUpDownEnabled( false );
+    }
+
+
+    private void up()
+    {
+        IRepositoryModel model = ( IRepositoryModel ) ( ( StructuredSelection ) viewer.getSelection() )
+            .getFirstElement();
+        int i = repositories.indexOf( model );
+        if ( i > 0 )
+        {
+            repositories.remove( i );
+            repositories.add( i - 1, model );
+            viewer.refresh();
+        }
+    }
+
+
+    private void down()
+    {
+        IRepositoryModel model = ( IRepositoryModel ) ( ( StructuredSelection ) viewer.getSelection() )
+            .getFirstElement();
+        int i = repositories.indexOf( model );
+        if ( i < repositories.size() - 1 )
+        {
+            repositories.remove( i );
+            repositories.add( i + 1, model );
+            viewer.refresh();
+        }
+    }
+
+
+    private void createViewer( Composite parent )
+    {
+        viewer = CheckboxTableViewer.newCheckList( parent, SWT.BORDER );
+
+        viewer.addSelectionChangedListener( new ISelectionChangedListener()
+        {
+            public void selectionChanged( SelectionChangedEvent event )
+            {
+                setUpDownEnabled( !viewer.getSelection().isEmpty() );
+            }
+        } );
+
+        viewer.setContentProvider( new DefaultTableProvider()
+        {
+            public Object[] getElements( Object inputElement )
+            {
+                return toArray( inputElement );
+            }
+        } );
+
+        viewer.setLabelProvider( new DefaultLabelProvider()
+        {
+            public Image getImage( Object element )
+            {
+                return null;
+            }
+
+
+            public String getText( Object element )
+            {
+                IRepositoryModel m = ( IRepositoryModel ) element;
+                return m.getName();
+            }
+        } );
+
+        viewer.setInput( repositories );
+
+        for ( IRepositoryModel m : repositories )
+        {
+            viewer.setChecked( m, true );
+        }
+
+        List<IRepositoryModel> allRepositories = SigilCore.getRepositoryConfiguration().loadRepositories();
+
+        for ( IRepositoryModel m : allRepositories )
+        {
+            if ( !repositories.contains( m ) )
+            {
+                repositories.add( m );
+            }
+        }
+
+        viewer.refresh();
+    }
+
+
+    private void setUpDownEnabled( boolean enabled )
+    {
+        upBtn.setEnabled( enabled );
+        downBtn.setEnabled( enabled );
+    }
+
+
+    private List<IRepositoryModel> getRepositories()
+    {
+        ArrayList<IRepositoryModel> reps = new ArrayList<IRepositoryModel>();
+
+        for ( IRepositoryModel m : repositories )
+        {
+            if ( viewer.getChecked( m ) )
+            {
+                reps.add( m );
+            }
+        }
+
+        return reps;
+    }
 }

Modified: felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/RepositorySetsView.java
URL: http://svn.apache.org/viewvc/felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/RepositorySetsView.java?rev=796467&r1=796466&r2=796467&view=diff
==============================================================================
--- felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/RepositorySetsView.java (original)
+++ felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/RepositorySetsView.java Tue Jul 21 18:51:33 2009
@@ -19,6 +19,7 @@
 
 package org.apache.felix.sigil.ui.eclipse.ui.preferences.repository;
 
+
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.HashSet;
@@ -48,181 +49,233 @@
 import org.eclipse.swt.widgets.Shell;
 import org.eclipse.swt.widgets.Table;
 
-public class RepositorySetsView {
-	private static final String DEFAULT = "default";
-
-	private final RepositoriesPreferencePage page;
 
-	private ArrayList<RepositoryViewData> sets = new ArrayList<RepositoryViewData>();
-	
-	private TableViewer setView;
-
-	private RepositoryViewData defaultSet;
-	
-	public RepositorySetsView(RepositoriesPreferencePage page) {
-		this.page = page;
-	}
-
-	public Control createContents(Composite parent) {
-		// Create Controls
-		Composite composite = new Composite(parent, SWT.NONE);
-		
-		Table table = new Table(composite, SWT.SINGLE | SWT.BORDER);
-
-		// Table Viewer Setup
-		setView = new TableViewer(table);
-
-		setView.setContentProvider( new DefaultTableProvider() {
-			public Object[] getElements(Object inputElement) {
-				return toArray(inputElement);
-			}
-		} );
-		
-		defaultSet = new RepositoryViewData(DEFAULT, SigilCore.getRepositoryConfiguration().getDefaultRepositorySet().getRepositories());
-		
-		sets.add( defaultSet );
-		
-		for( Map.Entry<String, IRepositorySet> e : SigilCore.getRepositoryConfiguration().loadRepositorySets().entrySet() ) {
-			IRepositorySet s = e.getValue();
-			sets.add( new RepositoryViewData( e.getKey(), s.getRepositories() ) );
-		}
-		
-		setView.setLabelProvider( new DefaultLabelProvider() {
-			public Image getImage(Object element) {
-				return null;
-			}
-
-			public String getText(Object element) {
-				RepositoryViewData data = (RepositoryViewData) element;
-				return data.getName();
-			}
-		});
-		
-		setView.setInput(sets);
-		
-		// Layout
-		composite.setLayout(new GridLayout(2, false));
-		table.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 6));
-		
-		createButtons(composite);	
-				
-		return composite;
-	}
-	
-	private void createButtons(final Composite composite) {
-		final Button add = new Button(composite, SWT.PUSH);
-		add.setText("Add...");
-		add.setEnabled(true);
-		
-		final Button edit = new Button(composite, SWT.PUSH);
-		edit.setText("Edit...");
-		edit.setEnabled(false);
-				
-		final Button remove = new Button(composite, SWT.PUSH);
-		remove.setText("Remove");
-		remove.setEnabled(false);
-		// Listeners
-		add.addSelectionListener( new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				add(composite);
-			}			
-		});
-		
-		edit.addSelectionListener( new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				IStructuredSelection sel = (IStructuredSelection) setView.getSelection();
-				edit(composite, sel);
-			}			
-		});
-		
-		remove.addSelectionListener( new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				IStructuredSelection sel = (IStructuredSelection) setView.getSelection();
-				remove(sel);
-			}			
-		});
-
-		setView.addSelectionChangedListener( new ISelectionChangedListener() {
-			public void selectionChanged(SelectionChangedEvent event) {
-				boolean enabled = !event.getSelection().isEmpty();
-				if ( enabled ) {
-					RepositoryViewData element = (RepositoryViewData) ((IStructuredSelection) event.getSelection()).getFirstElement();
-					edit.setEnabled(true);
-					remove.setEnabled( element != defaultSet );
-				}
-				else {
-					edit.setEnabled(false);
-					remove.setEnabled(false);
-				}
-			}
-		});
-		
-		add.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false));
-		edit.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false));
-		remove.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false));		
-	}
-	
-	private void add(Control parent) {
-		RepositorySetDialog wizard = new RepositorySetDialog(getShell(parent), getNames());
-		if ( wizard.open() == Window.OK ) {
-			sets.add( wizard.getData() );
-			updated();
-		}
-	}
-
-	private void edit(Control parent, IStructuredSelection sel) {
-		RepositoryViewData data = (RepositoryViewData) sel.getFirstElement();
-		RepositorySetDialog wizard = new RepositorySetDialog(getShell(parent), data, data != defaultSet, getNames());
-		if ( wizard.open() == Window.OK ) {
-			if ( data != defaultSet ) {
-				data.setName( wizard.getData().getName() );
-			}
-			data.setRepositories( wizard.getData().getRepositories() );
-			updated();
-		}
-	}
-
-	private Set<String> getNames() {
-		HashSet<String> names = new HashSet<String>();
-		
-		for ( RepositoryViewData view : sets ) {
-			if ( view != defaultSet ) {
-				names.add( view.getName() );
-			}
-		}
-		
-		return names;
-	}
-
-	private Shell getShell(Control parent) {
-		return parent.getShell();
-	}
-
-	private void remove(IStructuredSelection sel) {
-		if ( sets.remove(sel.getFirstElement())) {
-			updated();
-		}
-	}
-
-	private void updated() {
-		setView.refresh();
-		page.changed();
-	}
-
-	public Map<String, IRepositorySet> getSets() {
-		HashMap<String, IRepositorySet> ret = new HashMap<String, IRepositorySet>();
-		
-		for ( RepositoryViewData data : sets ) {
-			if ( data != defaultSet ) {
-				IRepositorySet set = new RepositorySet(data.getRepositories());
-				ret.put( data.getName(), set );
-			}
-		}
-		
-		return ret;
-	}
-
-	public IRepositoryModel[] getDefaultRepositories() {
-		return defaultSet.getRepositories();
-	}
+public class RepositorySetsView
+{
+    private static final String DEFAULT = "default";
+
+    private final RepositoriesPreferencePage page;
+
+    private ArrayList<RepositoryViewData> sets = new ArrayList<RepositoryViewData>();
+
+    private TableViewer setView;
+
+    private RepositoryViewData defaultSet;
+
+
+    public RepositorySetsView( RepositoriesPreferencePage page )
+    {
+        this.page = page;
+    }
+
+
+    public Control createContents( Composite parent )
+    {
+        // Create Controls
+        Composite composite = new Composite( parent, SWT.NONE );
+
+        Table table = new Table( composite, SWT.SINGLE | SWT.BORDER );
+
+        // Table Viewer Setup
+        setView = new TableViewer( table );
+
+        setView.setContentProvider( new DefaultTableProvider()
+        {
+            public Object[] getElements( Object inputElement )
+            {
+                return toArray( inputElement );
+            }
+        } );
+
+        defaultSet = new RepositoryViewData( DEFAULT, SigilCore.getRepositoryConfiguration().getDefaultRepositorySet()
+            .getRepositories() );
+
+        sets.add( defaultSet );
+
+        for ( Map.Entry<String, IRepositorySet> e : SigilCore.getRepositoryConfiguration().loadRepositorySets()
+            .entrySet() )
+        {
+            IRepositorySet s = e.getValue();
+            sets.add( new RepositoryViewData( e.getKey(), s.getRepositories() ) );
+        }
+
+        setView.setLabelProvider( new DefaultLabelProvider()
+        {
+            public Image getImage( Object element )
+            {
+                return null;
+            }
+
+
+            public String getText( Object element )
+            {
+                RepositoryViewData data = ( RepositoryViewData ) element;
+                return data.getName();
+            }
+        } );
+
+        setView.setInput( sets );
+
+        // Layout
+        composite.setLayout( new GridLayout( 2, false ) );
+        table.setLayoutData( new GridData( SWT.FILL, SWT.FILL, true, true, 1, 6 ) );
+
+        createButtons( composite );
+
+        return composite;
+    }
+
+
+    private void createButtons( final Composite composite )
+    {
+        final Button add = new Button( composite, SWT.PUSH );
+        add.setText( "Add..." );
+        add.setEnabled( true );
+
+        final Button edit = new Button( composite, SWT.PUSH );
+        edit.setText( "Edit..." );
+        edit.setEnabled( false );
+
+        final Button remove = new Button( composite, SWT.PUSH );
+        remove.setText( "Remove" );
+        remove.setEnabled( false );
+        // Listeners
+        add.addSelectionListener( new SelectionAdapter()
+        {
+            public void widgetSelected( SelectionEvent e )
+            {
+                add( composite );
+            }
+        } );
+
+        edit.addSelectionListener( new SelectionAdapter()
+        {
+            public void widgetSelected( SelectionEvent e )
+            {
+                IStructuredSelection sel = ( IStructuredSelection ) setView.getSelection();
+                edit( composite, sel );
+            }
+        } );
+
+        remove.addSelectionListener( new SelectionAdapter()
+        {
+            public void widgetSelected( SelectionEvent e )
+            {
+                IStructuredSelection sel = ( IStructuredSelection ) setView.getSelection();
+                remove( sel );
+            }
+        } );
+
+        setView.addSelectionChangedListener( new ISelectionChangedListener()
+        {
+            public void selectionChanged( SelectionChangedEvent event )
+            {
+                boolean enabled = !event.getSelection().isEmpty();
+                if ( enabled )
+                {
+                    RepositoryViewData element = ( RepositoryViewData ) ( ( IStructuredSelection ) event.getSelection() )
+                        .getFirstElement();
+                    edit.setEnabled( true );
+                    remove.setEnabled( element != defaultSet );
+                }
+                else
+                {
+                    edit.setEnabled( false );
+                    remove.setEnabled( false );
+                }
+            }
+        } );
+
+        add.setLayoutData( new GridData( SWT.FILL, SWT.FILL, false, false ) );
+        edit.setLayoutData( new GridData( SWT.FILL, SWT.FILL, false, false ) );
+        remove.setLayoutData( new GridData( SWT.FILL, SWT.FILL, false, false ) );
+    }
+
+
+    private void add( Control parent )
+    {
+        RepositorySetDialog wizard = new RepositorySetDialog( getShell( parent ), getNames() );
+        if ( wizard.open() == Window.OK )
+        {
+            sets.add( wizard.getData() );
+            updated();
+        }
+    }
+
+
+    private void edit( Control parent, IStructuredSelection sel )
+    {
+        RepositoryViewData data = ( RepositoryViewData ) sel.getFirstElement();
+        RepositorySetDialog wizard = new RepositorySetDialog( getShell( parent ), data, data != defaultSet, getNames() );
+        if ( wizard.open() == Window.OK )
+        {
+            if ( data != defaultSet )
+            {
+                data.setName( wizard.getData().getName() );
+            }
+            data.setRepositories( wizard.getData().getRepositories() );
+            updated();
+        }
+    }
+
+
+    private Set<String> getNames()
+    {
+        HashSet<String> names = new HashSet<String>();
+
+        for ( RepositoryViewData view : sets )
+        {
+            if ( view != defaultSet )
+            {
+                names.add( view.getName() );
+            }
+        }
+
+        return names;
+    }
+
+
+    private Shell getShell( Control parent )
+    {
+        return parent.getShell();
+    }
+
+
+    private void remove( IStructuredSelection sel )
+    {
+        if ( sets.remove( sel.getFirstElement() ) )
+        {
+            updated();
+        }
+    }
+
+
+    private void updated()
+    {
+        setView.refresh();
+        page.changed();
+    }
+
+
+    public Map<String, IRepositorySet> getSets()
+    {
+        HashMap<String, IRepositorySet> ret = new HashMap<String, IRepositorySet>();
+
+        for ( RepositoryViewData data : sets )
+        {
+            if ( data != defaultSet )
+            {
+                IRepositorySet set = new RepositorySet( data.getRepositories() );
+                ret.put( data.getName(), set );
+            }
+        }
+
+        return ret;
+    }
+
+
+    public IRepositoryModel[] getDefaultRepositories()
+    {
+        return defaultSet.getRepositories();
+    }
 }

Modified: felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/RepositoryTypeSelectionPage.java
URL: http://svn.apache.org/viewvc/felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/RepositoryTypeSelectionPage.java?rev=796467&r1=796466&r2=796467&view=diff
==============================================================================
--- felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/RepositoryTypeSelectionPage.java (original)
+++ felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/RepositoryTypeSelectionPage.java Tue Jul 21 18:51:33 2009
@@ -19,6 +19,7 @@
 
 package org.apache.felix.sigil.ui.eclipse.ui.preferences.repository;
 
+
 import java.util.ArrayList;
 import java.util.Iterator;
 
@@ -41,85 +42,109 @@
 import org.eclipse.swt.widgets.Label;
 import org.eclipse.swt.widgets.Table;
 
-public class RepositoryTypeSelectionPage extends WizardSelectionPage implements IWizardPage {
 
-	private static final String TITLE = "Select Repository";
-	
-	private TableViewer repositoryView;
-	private IRepositoryModel repositoryElement;
-	
-	public RepositoryTypeSelectionPage() {
-		super(TITLE);
-		setTitle(TITLE);
-	}
-
-	public void createControl(Composite parent) {
-		Composite control = new Composite(parent, SWT.NONE);
-		
-		// components
-		new Label(control, SWT.NONE).setText("Repositories" );
-		Table table = new Table(control, SWT.SINGLE | SWT.BORDER);
-		
-		// layout
-		control.setLayout( new GridLayout(1, true) );
-		table.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
-		
-		// view
-		repositoryView = new TableViewer(table);
-		repositoryView.setLabelProvider( new LabelProvider() {
-			@Override
-			public String getText(Object element) {
-				IRepositoryType rep = (IRepositoryType) element;
-				return rep.getType();
-			}
-
-			@Override
-			public Image getImage(Object element) {
-				IRepositoryType rep = (IRepositoryType) element;
-				return rep.getIcon();
-			}			
-		});
-		
-		repositoryView.setContentProvider( new DefaultTableProvider() {
-			public Object[] getElements(Object inputElement) {
-				return toArray(inputElement);
-			}
-		} );
-		
-		repositoryView.addSelectionChangedListener( new ISelectionChangedListener() {
-			public void selectionChanged(SelectionChangedEvent event) {
-				if ( !event.getSelection().isEmpty() ) {
-					IStructuredSelection sel = (IStructuredSelection) event.getSelection();
-					IRepositoryType type = (IRepositoryType) sel.getFirstElement();
-					repositoryElement = SigilCore.getRepositoryConfiguration().newRepositoryElement(type);
-					selectWizardNode(new RepositoryWizardNode(repositoryElement));
-				}
-			}
-		});
-		
-		ArrayList<IRepositoryType> descriptors = new ArrayList<IRepositoryType>(SigilCore.getRepositoryConfiguration().loadRepositoryTypes());
-		
-		for ( Iterator<IRepositoryType> i = descriptors.iterator(); i.hasNext(); ) {
-			if ( !i.next().isDynamic() ) {
-				i.remove();
-			}
-		}
-		
-		repositoryView.setInput( descriptors );
-		
-		setControl(control);
-	}
-	
-	public void selectWizardNode(RepositoryWizardNode node) {
-		setSelectedNode(node);
-	}
-	
-	public RepositoryWizardNode getSelectedWizardNode() {
-		return (RepositoryWizardNode) getSelectedNode();
-	}
-
-	public IRepositoryModel getRepository() {		
-		return repositoryElement;
-	}
+public class RepositoryTypeSelectionPage extends WizardSelectionPage implements IWizardPage
+{
+
+    private static final String TITLE = "Select Repository";
+
+    private TableViewer repositoryView;
+    private IRepositoryModel repositoryElement;
+
+
+    public RepositoryTypeSelectionPage()
+    {
+        super( TITLE );
+        setTitle( TITLE );
+    }
+
+
+    public void createControl( Composite parent )
+    {
+        Composite control = new Composite( parent, SWT.NONE );
+
+        // components
+        new Label( control, SWT.NONE ).setText( "Repositories" );
+        Table table = new Table( control, SWT.SINGLE | SWT.BORDER );
+
+        // layout
+        control.setLayout( new GridLayout( 1, true ) );
+        table.setLayoutData( new GridData( SWT.FILL, SWT.FILL, true, true ) );
+
+        // view
+        repositoryView = new TableViewer( table );
+        repositoryView.setLabelProvider( new LabelProvider()
+        {
+            @Override
+            public String getText( Object element )
+            {
+                IRepositoryType rep = ( IRepositoryType ) element;
+                return rep.getType();
+            }
+
+
+            @Override
+            public Image getImage( Object element )
+            {
+                IRepositoryType rep = ( IRepositoryType ) element;
+                return rep.getIcon();
+            }
+        } );
+
+        repositoryView.setContentProvider( new DefaultTableProvider()
+        {
+            public Object[] getElements( Object inputElement )
+            {
+                return toArray( inputElement );
+            }
+        } );
+
+        repositoryView.addSelectionChangedListener( new ISelectionChangedListener()
+        {
+            public void selectionChanged( SelectionChangedEvent event )
+            {
+                if ( !event.getSelection().isEmpty() )
+                {
+                    IStructuredSelection sel = ( IStructuredSelection ) event.getSelection();
+                    IRepositoryType type = ( IRepositoryType ) sel.getFirstElement();
+                    repositoryElement = SigilCore.getRepositoryConfiguration().newRepositoryElement( type );
+                    selectWizardNode( new RepositoryWizardNode( repositoryElement ) );
+                }
+            }
+        } );
+
+        ArrayList<IRepositoryType> descriptors = new ArrayList<IRepositoryType>( SigilCore.getRepositoryConfiguration()
+            .loadRepositoryTypes() );
+
+        for ( Iterator<IRepositoryType> i = descriptors.iterator(); i.hasNext(); )
+        {
+            if ( !i.next().isDynamic() )
+            {
+                i.remove();
+            }
+        }
+
+        repositoryView.setInput( descriptors );
+
+        setControl( control );
+    }
+
+
+    public void selectWizardNode( RepositoryWizardNode node )
+    {
+        setSelectedNode( node );
+    }
+
+
+    public RepositoryWizardNode getSelectedWizardNode()
+    {
+        return ( RepositoryWizardNode ) getSelectedNode();
+    }
+
+
+    public IRepositoryModel getRepository()
+    {
+        return repositoryElement;
+    }
 
 }

Modified: felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/RepositoryViewData.java
URL: http://svn.apache.org/viewvc/felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/RepositoryViewData.java?rev=796467&r1=796466&r2=796467&view=diff
==============================================================================
--- felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/RepositoryViewData.java (original)
+++ felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/RepositoryViewData.java Tue Jul 21 18:51:33 2009
@@ -19,31 +19,44 @@
 
 package org.apache.felix.sigil.ui.eclipse.ui.preferences.repository;
 
+
 import org.apache.felix.sigil.eclipse.model.repository.IRepositoryModel;
 
-class RepositoryViewData {
-	private String name;
-	private IRepositoryModel[] reps;
-
-	RepositoryViewData(String name, IRepositoryModel[] reps) {
-		this.name = name;
-		this.reps = reps;
-	}
-
-	String getName() {
-		return name;
-	}
-
-	IRepositoryModel[] getRepositories() {
-		return reps;
-	}
-	
-	void setName(String name) {
-		this.name = name;
-	}
-
-	void setRepositories(IRepositoryModel[] reps) {
-		this.reps = reps;
-	}
+
+class RepositoryViewData
+{
+    private String name;
+    private IRepositoryModel[] reps;
+
+
+    RepositoryViewData( String name, IRepositoryModel[] reps )
+    {
+        this.name = name;
+        this.reps = reps;
+    }
+
+
+    String getName()
+    {
+        return name;
+    }
+
+
+    IRepositoryModel[] getRepositories()
+    {
+        return reps;
+    }
+
+
+    void setName( String name )
+    {
+        this.name = name;
+    }
+
+
+    void setRepositories( IRepositoryModel[] reps )
+    {
+        this.reps = reps;
+    }
 
 }
\ No newline at end of file

Modified: felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/RepositoryWizardNode.java
URL: http://svn.apache.org/viewvc/felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/RepositoryWizardNode.java?rev=796467&r1=796466&r2=796467&view=diff
==============================================================================
--- felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/RepositoryWizardNode.java (original)
+++ felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/RepositoryWizardNode.java Tue Jul 21 18:51:33 2009
@@ -19,6 +19,7 @@
 
 package org.apache.felix.sigil.ui.eclipse.ui.preferences.repository;
 
+
 import org.apache.felix.sigil.eclipse.SigilCore;
 import org.apache.felix.sigil.eclipse.model.repository.IRepositoryModel;
 import org.apache.felix.sigil.ui.eclipse.ui.wizard.repository.RepositoryWizard;
@@ -27,45 +28,64 @@
 import org.eclipse.jface.wizard.IWizardNode;
 import org.eclipse.swt.graphics.Point;
 
-public class RepositoryWizardNode implements IWizardNode {
 
-	private IRepositoryModel repository;
-	
-	private RepositoryWizard wizard;
-	
-	public RepositoryWizardNode(IRepositoryModel repository) {
-		this.repository = repository;
-	}
-
-	public void dispose() {
-		if ( wizard != null ) {
-			wizard.dispose();
-			wizard = null;
-		}
-	}
-
-	public Point getExtent() {
-		return new Point(-1, -1);
-	}
-
-	public IWizard getWizard() {
-		if ( wizard == null ) {
-			try {
-				wizard = WizardHelper.loadWizard(repository.getType());
-				wizard.init( repository );
-			} catch (CoreException e) {
-				SigilCore.error( "Failed to create wizard for " + repository.getType(), e);
-			}
-		}
-		return wizard;
-	}
-	
-	public IRepositoryModel getRepository() {
-		return repository;
-	}
-
-	public boolean isContentCreated() {
-		return wizard != null;
-	}
+public class RepositoryWizardNode implements IWizardNode
+{
+
+    private IRepositoryModel repository;
+
+    private RepositoryWizard wizard;
+
+
+    public RepositoryWizardNode( IRepositoryModel repository )
+    {
+        this.repository = repository;
+    }
+
+
+    public void dispose()
+    {
+        if ( wizard != null )
+        {
+            wizard.dispose();
+            wizard = null;
+        }
+    }
+
+
+    public Point getExtent()
+    {
+        return new Point( -1, -1 );
+    }
+
+
+    public IWizard getWizard()
+    {
+        if ( wizard == null )
+        {
+            try
+            {
+                wizard = WizardHelper.loadWizard( repository.getType() );
+                wizard.init( repository );
+            }
+            catch ( CoreException e )
+            {
+                SigilCore.error( "Failed to create wizard for " + repository.getType(), e );
+            }
+        }
+        return wizard;
+    }
+
+
+    public IRepositoryModel getRepository()
+    {
+        return repository;
+    }
+
+
+    public boolean isContentCreated()
+    {
+        return wizard != null;
+    }
 
 }

Modified: felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/WizardHelper.java
URL: http://svn.apache.org/viewvc/felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/WizardHelper.java?rev=796467&r1=796466&r2=796467&view=diff
==============================================================================
--- felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/WizardHelper.java (original)
+++ felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/preferences/repository/WizardHelper.java Tue Jul 21 18:51:33 2009
@@ -19,6 +19,7 @@
 
 package org.apache.felix.sigil.ui.eclipse.ui.preferences.repository;
 
+
 import org.apache.felix.sigil.eclipse.SigilCore;
 import org.apache.felix.sigil.eclipse.model.repository.IRepositoryType;
 import org.apache.felix.sigil.ui.eclipse.ui.SigilUI;
@@ -30,35 +31,45 @@
 import org.eclipse.core.runtime.IExtensionRegistry;
 import org.eclipse.core.runtime.Platform;
 
-public class WizardHelper {
-	public static RepositoryWizard loadWizard(IRepositoryType type) throws CoreException {
-		IConfigurationElement e = findWizardConfig(type.getId());
-		
-		if ( e == null ) {
-			throw SigilCore.newCoreException("No wizard registered for repository " + type, null);
-		}
-		
-		return (RepositoryWizard) e.createExecutableExtension("class");
-	}
-	
-	public static boolean hasWizard(IRepositoryType type) {
-		return findWizardConfig(type.getId()) != null;
-	}	
-		
-	private static IConfigurationElement findWizardConfig(String id) {
-		IExtensionRegistry registry = Platform.getExtensionRegistry();		
-		IExtensionPoint p = registry.getExtensionPoint(SigilUI.REPOSITORY_WIZARD_EXTENSION_POINT_ID);
-		
-		for ( IExtension e : p.getExtensions() ) {
-			for ( IConfigurationElement c : e.getConfigurationElements() ) {
-				if ( id.equals( c.getAttribute("repository") ) ) {
-					return c;
-				}
-			}
-		}
-		
-		return null;
-	}
-	
-	
+
+public class WizardHelper
+{
+    public static RepositoryWizard loadWizard( IRepositoryType type ) throws CoreException
+    {
+        IConfigurationElement e = findWizardConfig( type.getId() );
+
+        if ( e == null )
+        {
+            throw SigilCore.newCoreException( "No wizard registered for repository " + type, null );
+        }
+
+        return ( RepositoryWizard ) e.createExecutableExtension( "class" );
+    }
+
+
+    public static boolean hasWizard( IRepositoryType type )
+    {
+        return findWizardConfig( type.getId() ) != null;
+    }
+
+
+    private static IConfigurationElement findWizardConfig( String id )
+    {
+        IExtensionRegistry registry = Platform.getExtensionRegistry();
+        IExtensionPoint p = registry.getExtensionPoint( SigilUI.REPOSITORY_WIZARD_EXTENSION_POINT_ID );
+
+        for ( IExtension e : p.getExtensions() )
+        {
+            for ( IConfigurationElement c : e.getConfigurationElements() )
+            {
+                if ( id.equals( c.getAttribute( "repository" ) ) )
+                {
+                    return c;
+                }
+            }
+        }
+
+        return null;
+    }
+
 }

Modified: felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/quickfix/ImportPackageProposal.java
URL: http://svn.apache.org/viewvc/felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/quickfix/ImportPackageProposal.java?rev=796467&r1=796466&r2=796467&view=diff
==============================================================================
--- felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/quickfix/ImportPackageProposal.java (original)
+++ felix/trunk/sigil/eclipse/ui/src/org/apache/felix/sigil/ui/eclipse/ui/quickfix/ImportPackageProposal.java Tue Jul 21 18:51:33 2009
@@ -19,6 +19,7 @@
 
 package org.apache.felix.sigil.ui.eclipse.ui.quickfix;
 
+
 import org.apache.felix.sigil.eclipse.SigilCore;
 import org.apache.felix.sigil.eclipse.model.project.ISigilProjectModel;
 import org.apache.felix.sigil.model.ModelElementFactory;
@@ -39,69 +40,93 @@
 import org.eclipse.ui.actions.WorkspaceModifyOperation;
 import org.osgi.framework.Version;
 
-public class ImportPackageProposal implements IJavaCompletionProposal {
 
-	private IPackageExport e;
-	private ISigilProjectModel n;
-	
-	public ImportPackageProposal(IPackageExport e, ISigilProjectModel n) {
-		this.e = e;
-		this.n = n;
-	}
-
-	public int getRelevance() {
-		return 100;
-	}
-
-	public void apply(IDocument document) {
-		try {
-			
-			final IPackageImport i = ModelElementFactory.getInstance().newModelElement(IPackageImport.class);
-			i.setPackageName(e.getPackageName());
-			IPreferenceStore store = SigilCore.getDefault().getPreferenceStore();
-			VersionRangeBoundingRule lowerBoundRule = VersionRangeBoundingRule.valueOf(store.getString(SigilCore.DEFAULT_VERSION_LOWER_BOUND));
-			VersionRangeBoundingRule upperBoundRule = VersionRangeBoundingRule.valueOf(store.getString(SigilCore.DEFAULT_VERSION_UPPER_BOUND));
-			
-			Version version = e.getVersion();
-			VersionRange selectedVersions = VersionRange.newInstance(version, lowerBoundRule, upperBoundRule);
-			i.setVersions( selectedVersions );
-			
-			WorkspaceModifyOperation op = new WorkspaceModifyOperation() {
-				@Override
-				protected void execute(IProgressMonitor monitor)
-						throws CoreException {
-					n.getBundle().getBundleInfo().addImport( i );
-					n.save(null);
-				}
-			};
-			
-			SigilUI.runWorkspaceOperation(op, null);
-		} catch (ModelElementFactoryException e) {
-			// TODO Auto-generated catch block
-			e.printStackTrace();
-		}
-	}
-
-	public String getAdditionalProposalInfo() {
-		return null;
-	}
-
-	public IContextInformation getContextInformation() {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
-	public String getDisplayString() {
-		return "Import package " + e.getPackageName() + " version " + e.getVersion() + " to bundle";
-	}
-
-	public Image getImage() {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
-	public Point getSelection(IDocument document) {
-		return null;
-	}
+public class ImportPackageProposal implements IJavaCompletionProposal
+{
+
+    private IPackageExport e;
+    private ISigilProjectModel n;
+
+
+    public ImportPackageProposal( IPackageExport e, ISigilProjectModel n )
+    {
+        this.e = e;
+        this.n = n;
+    }
+
+
+    public int getRelevance()
+    {
+        return 100;
+    }
+
+
+    public void apply( IDocument document )
+    {
+        try
+        {
+
+            final IPackageImport i = ModelElementFactory.getInstance().newModelElement( IPackageImport.class );
+            i.setPackageName( e.getPackageName() );
+            IPreferenceStore store = SigilCore.getDefault().getPreferenceStore();
+            VersionRangeBoundingRule lowerBoundRule = VersionRangeBoundingRule.valueOf( store
+                .getString( SigilCore.DEFAULT_VERSION_LOWER_BOUND ) );
+            VersionRangeBoundingRule upperBoundRule = VersionRangeBoundingRule.valueOf( store
+                .getString( SigilCore.DEFAULT_VERSION_UPPER_BOUND ) );
+
+            Version version = e.getVersion();
+            VersionRange selectedVersions = VersionRange.newInstance( version, lowerBoundRule, upperBoundRule );
+            i.setVersions( selectedVersions );
+
+            WorkspaceModifyOperation op = new WorkspaceModifyOperation()
+            {
+                @Override
+                protected void execute( IProgressMonitor monitor ) throws CoreException
+                {
+                    n.getBundle().getBundleInfo().addImport( i );
+                    n.save( null );
+                }
+            };
+
+            SigilUI.runWorkspaceOperation( op, null );
+        }
+        catch ( ModelElementFactoryException e )
+        {
+            // TODO Auto-generated catch block
+            e.printStackTrace();
+        }
+    }
+
+
+    public String getAdditionalProposalInfo()
+    {
+        return null;
+    }
+
+
+    public IContextInformation getContextInformation()
+    {
+        // TODO Auto-generated method stub
+        return null;
+    }
+
+
+    public String getDisplayString()
+    {
+        return "Import package " + e.getPackageName() + " version " + e.getVersion() + " to bundle";
+    }
+
+
+    public Image getImage()
+    {
+        // TODO Auto-generated method stub
+        return null;
+    }
+
+
+    public Point getSelection( IDocument document )
+    {
+        return null;
+    }
 
 }