01: /**
02: * Wizard Framework
03: * Copyright 2004 - 2005 Andrew Pietsch
04: *
05: * This library is free software; you can redistribute it and/or
06: * modify it under the terms of the GNU Lesser General Public
07: * License as published by the Free Software Foundation; either
08: * version 2.1 of the License, or (at your option) any later version.
09: *
10: * This library is distributed in the hope that it will be useful,
11: * but WITHOUT ANY WARRANTY; without even the implied warranty of
12: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13: * Lesser General Public License for more details.
14: *
15: * You should have received a copy of the GNU Lesser General Public
16: * License along with this library; if not, write to the Free Software
17: * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18: *
19: * $Id: NextAction.java,v 1.10 2006/05/13 19:54:32 pietschy Exp $
20: */package org.pietschy.wizard;
21:
22: import javax.swing.*;
23: import java.awt.event.ActionEvent;
24: import java.awt.event.KeyEvent;
25: import java.beans.PropertyChangeListener;
26: import java.beans.PropertyChangeEvent;
27:
28: /**
29: * Created by IntelliJ IDEA.
30: * User: andrewp
31: * Date: 7/06/2004
32: * Time: 16:06:09
33: * To change this template use Options | File Templates.
34: */
35: class NextAction extends WizardAction {
36: protected NextAction(Wizard model) {
37: super ("next", model);
38:
39: if (Options.isIncludingIconsOnNextAndPrevious())
40: putValue(Action.SMALL_ICON, new ArrowIcon(
41: SwingConstants.EAST));
42: }
43:
44: public void doAction(ActionEvent e) throws InvalidStateException {
45: getModel().getActiveStep().applyState();
46: getModel().nextStep();
47: }
48:
49: protected void updateState() {
50: WizardStep activeStep = getActiveStep();
51: boolean busy = activeStep != null && activeStep.isBusy();
52: setEnabled(getModel().isNextAvailable() && !busy);
53: }
54: }
|