package jav.gui.wizard.profiler.profileDocument; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; import org.openide.WizardDescriptor; import org.openide.util.ChangeSupport; import org.openide.util.HelpCtx; /** *Copyright (c) 2012, IMPACT working group at the Centrum für Informations- und Sprachverarbeitung, University of Munich. *All rights reserved. *Redistribution and use in source and binary forms, with or without *modification, are permitted provided that the following conditions are met: *Redistributions of source code must retain the above copyright *notice, this list of conditions and the following disclaimer. *Redistributions in binary form must reproduce the above copyright *notice, this list of conditions and the following disclaimer in the *documentation and/or other materials provided with the distribution. *THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS *IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED *TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A *PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT *HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, *SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT *LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, *DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY *THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT *(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE *OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * * This file is part of the ocr-postcorrection tool developed * by the IMPACT working group at the Centrum für Informations- und Sprachverarbeitung, University of Munich. * For further information and contacts visit http://ocr.cis.uni-muenchen.de/ * * @author thorsten (thorsten.vobl@googlemail.com) */ public class ProfileDocumentWizardPanel1 implements WizardDescriptor.Panel<WizardDescriptor>, ChangeListener { private ProfileDocumentVisualPanel1 component; private WizardDescriptor model; private String[] configurations; private ChangeSupport changeSupport = new ChangeSupport(this); ProfileDocumentWizardPanel1(String[] configurations) { this.configurations = configurations; } @Override public ProfileDocumentVisualPanel1 getComponent() { if (component == null) { component = new ProfileDocumentVisualPanel1(this, configurations); } return component; } @Override public HelpCtx getHelp() { return HelpCtx.DEFAULT_HELP; } @Override public boolean isValid() { if (component.getConfiguration().equals("")) { return false; } else { return true; } } @Override public final void addChangeListener(ChangeListener l) { changeSupport.addChangeListener(l); } @Override public final void removeChangeListener(ChangeListener l) { changeSupport.removeChangeListener(l); } @Override public void readSettings( WizardDescriptor data) { this.model = data; } @Override public void storeSettings( WizardDescriptor data) { model.putProperty("config", getComponent().getConfiguration()); } @Override public void stateChanged(ChangeEvent ce) { changeSupport.fireChange(); } }