01: /*
02: * Copyright (C) 2004 NNL Technology AB
03: * Visit www.infonode.net for information about InfoNode(R)
04: * products and how to contact NNL Technology AB.
05: *
06: * This program is free software; you can redistribute it and/or
07: * modify it under the terms of the GNU General Public License
08: * as published by the Free Software Foundation; either version 2
09: * of the License, or (at your option) any later version.
10: *
11: * This program is distributed in the hope that it will be useful,
12: * but WITHOUT ANY WARRANTY; without even the implied warranty of
13: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14: * GNU General Public License for more details.
15: *
16: * You should have received a copy of the GNU General Public License
17: * along with this program; if not, write to the Free Software
18: * Foundation, Inc., 59 Temple Place - Suite 330, Boston,
19: * MA 02111-1307, USA.
20: */
21:
22: // $Id: TabStateChangedEvent.java,v 1.5 2004/09/22 14:33:49 jesper Exp $
23: package net.infonode.tabbedpanel;
24:
25: /**
26: * <p>TabStateChangedEvent is a state changed event. A change could mean that the
27: * selected tab has been deselcted and another tab has been selected.</p>
28: *
29: * <p>Example: Tab 1 is the selected tab. The user selects tab 2 and tab 1 will be
30: * deselected. A change event will then be triggered where tab 1 will
31: * be the previous tab (getPreviousTab()) and tab 2 will be the curent
32: * tab (getCurrentTab()).</p>
33: *
34: * @author $Author: jesper $
35: * @version $Revision: 1.5 $
36: * @see TabListener
37: * @see TabbedPanel
38: * @see Tab
39: */
40: public class TabStateChangedEvent extends TabEvent {
41: private TabbedPanel tabbedPanel;
42: private Tab previousTab;
43: private Tab currentTab;
44:
45: /**
46: * Constructs a TabStateChangedEvent
47: *
48: * @param source the tabbed panel or tab that is the source for this
49: * event
50: * @param tabbedPanel the tabbep panel in which the state change occured
51: * @param tab the tab that is effectd by this event
52: * @param previousTab the tab that was previously in this state
53: * @param currentTab the tab that is now in this state
54: */
55: public TabStateChangedEvent(Object source, TabbedPanel tabbedPanel,
56: Tab tab, Tab previousTab, Tab currentTab) {
57: super (source, tab);
58: this .tabbedPanel = tabbedPanel;
59: this .previousTab = previousTab;
60: this .currentTab = currentTab;
61: }
62:
63: /**
64: * Gets the TabbedPanel in which the state change occured
65: *
66: * @return the TabbedPanel in which the state change occured
67: */
68: public TabbedPanel getTabbedPanel() {
69: return tabbedPanel;
70: }
71:
72: /**
73: * Gets the previous Tab
74: *
75: * @return the previous Tab before the change or null if no previous tab was in
76: * that state before the change
77: */
78: public Tab getPreviousTab() {
79: return previousTab;
80: }
81:
82: /**
83: * Gets the current Tab
84: *
85: * @return the current Tab after the change or null if no current tab is in the
86: * that state after the change
87: */
88: public Tab getCurrentTab() {
89: return currentTab;
90: }
91: }
|