btw: i meant the openjump wiki (because we don't need 2-3 wikis - and if 
we use, then it may be even more worth to put it on sourceforge)

http://openjump.org/wiki/show/Documentation

stefan

Paul Austin schrieb:
> All,
> 
> Here is a HOWTO for creating a new Open Wizard, excluding a File Layer 
> which uses the Open File plug-in mechanism.
> 
> 1. Define your wizard class to implement 
> org.openjump.core.ui.swing.wizard.WizardGroup or extend 
> org.openjump.core.ui.swing.wizard.AbstractWizardGroup. For the 
> AbstractWizard group there are 3 arguments, the display name and icon to 
> display in the Open Wizard and the last is the ID of the first wizard panel.
> 
> public class WFSWizard extends AbstractWizardGroup {
>   private static final String KEY = WFSWizard.class.getName();
> 
>   public WFSWizard() {
>     super(I18N.get(KEY), IconLoader.icon("wfs.gif"), 
> WfsWizardPanel.getClass().getName());
>   }
>     :
> }
> 
> 
> 2. Implement the initialize method on your wizard to create the panels 
> for each time the wizard is shown. The reason you don't do this in the 
> constructor is that the information you need may not be initialized when 
> you construct the wizard.
> 
>   private ChooseProjectPanel chooseProjectPanel;
> 
>   public void initialize(WorkbenchContext workbenchContext, WizardDialog 
> dialog) {
>     removeAllPanels(); // Start from a clean slate
> 
>     // The chooseProject panel ensures that there is an open project to open 
> the file into
>     chooseProjectPanel = new ChooseProjectPanel(workbenchContext,
>       urlPanel.getID());
>     addPanel(chooseProjectPanel);
>     
>     // Add the wizard panels for your type of data
>     addPanel(new WfsWizardPanel();
>   }
> 
> 
> 3. Implement the method getFirstId to return the ID of the first wizard 
> panel, if the first panel is always the same then this method is not 
> required in the AbstractWizardGroup because you passed in the value in 
> the constructor. If using the ChoosePeojectPanel you'll need to 
> implement it using the following approach.
> 
>   public String getFirstId() {
>     String firstId = super.getFirstId();
>     if (!chooseProjectPanel.hasActiveTaskFrame()
>       && chooseProjectPanel.hasTaskFrames()) {
>       chooseProjectPanel.setNextID(firstId);
>       return chooseProjectPanel.getID();
>     } else {
>       return firstId;
>     }
>   }
> 
> 4. Implement the run method to actually do the loading of the data, this 
> method is run in a separate thread so as not to block the GUI thread, so 
> follow the standard Swing Threading rules (see SwingUtilities.invokeLater())
> 
>   public void run(WizardDialog dialog, TaskMonitor monitor) {
>     chooseProjectPanel.activateSelectedProject();
>     // Do the code for your plugin
>   }
> 
> 5. Register your wizard
> 
>     WfsWizard wfsWizard = new WfsWizard();
>     OpenWizardPlugIn.addWizard(workbenchContext, wfsWizard);
> 
> 
> 
> 
> -------------------------------------------------------------------------
> This SF.net email is sponsored by: Splunk Inc.
> Still grepping through log files to find problems?  Stop.
> Now Search log events and configuration files using AJAX and a browser.
> Download your FREE copy of Splunk now >> http://get.splunk.com/
> _______________________________________________
> Jump-pilot-devel mailing list
> Jump-pilot-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
> 
> 

-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
Jump-pilot-devel mailing list
Jump-pilot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel

Reply via email to