/** * Returns the set of pages contained in this wizard. * * @return Iterator */ public Iterator<WizardPage> getPages() { java.util.List<WizardPage> pages = new ArrayList<WizardPage>(); firstWizardPage = new FirstWizardPage(this); pages.add(firstWizardPage); return pages.iterator(); }
/** * Returns the set of pages contained in this wizard. * * @return Iterator */ public Iterator<WizardPage> getPages() { java.util.List<WizardPage> pages = new ArrayList<WizardPage>(); firstWizardPage = new FirstWizardPage(registration, getWizardContainer()); pages.add(firstWizardPage); return pages.iterator(); }
/** * Returns the set of pages contained in this wizard. * * @param registration the registration object * @return Iterator */ public Iterator<WizardPage> getPages(JabberAccountRegistration registration) { java.util.List<WizardPage> pages = new ArrayList<WizardPage>(); // create new registration, our container needs the pages // this means this is a new wizard and we must reset all data // it will be invoked and when the wizard cleans and unregister // our pages, but this fix don't hurt in this situation. this.registration = registration; if (firstWizardPage == null) firstWizardPage = new FirstWizardPage(this); pages.add(firstWizardPage); return pages.iterator(); }
/** * Adds the component of a specific <tt>PluginComponent</tt> to the associated <tt>Container</tt>. * * @param c the <tt>PluginComponent</tt> which is to have its component added to the * <tt>Container</tt> associated with this <tt>PluginContainer</tt> */ private synchronized void addPluginComponent(PluginComponent c) { /* * Try to respect positionIndex of PluginComponent to some extent: * PluginComponents with positionIndex equal to 0 go at the beginning, * these with positionIndex equal to -1 follow them and then go these * with positionIndex greater than 0. */ int cIndex = c.getPositionIndex(); int index = -1; int i = 0; for (PluginComponent pluginComponent : pluginComponents) { if (pluginComponent.equals(c)) return; if (-1 == index) { int pluginComponentIndex = pluginComponent.getPositionIndex(); if ((0 == cIndex) || (-1 == cIndex)) { if ((0 != pluginComponentIndex) && (cIndex != pluginComponentIndex)) index = i; } else if (cIndex < pluginComponentIndex) index = i; } i++; } int pluginComponentCount = pluginComponents.size(); if (-1 == index) index = pluginComponents.size(); /* * The container may have added Components of its own apart from the * ones this PluginContainer has added to it. Since the common case for * the additional Components is to have them appear at the beginning, * adjust the index so it gets correct in the common case. */ int containerComponentCount = getComponentCount(container); addComponentToContainer( (Component) c.getComponent(), container, (containerComponentCount > pluginComponentCount) ? (index + (containerComponentCount - pluginComponentCount)) : index); pluginComponents.add(index, c); container.revalidate(); container.repaint(); }
/** * Runs clean-up for associated resources which need explicit disposal (e.g. listeners keeping * this instance alive because they were added to the model which operationally outlives this * instance). */ public void dispose() { GuiActivator.getUIService().removePluginComponentListener(this); /* * Explicitly remove the components of the PluginComponent instances * because the latter are registered with OSGi and are thus global. */ synchronized (this) { for (PluginComponent pluginComponent : pluginComponents) container.remove((Component) pluginComponent.getComponent()); pluginComponents.clear(); } }
/** * Removes the component of a specific <code>PluginComponent</code> from this <code> * PluginContainer</code>. * * @param c the <code>PluginComponent</code> which is to have its component removed from this * <code>PluginContainer</code> */ private synchronized void removePluginComponent(PluginComponent c) { container.remove((Component) c.getComponent()); pluginComponents.remove(c); }