KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > netbeans > core > windows > actions > PreviousTabAction


1 /*
2  * The contents of this file are subject to the terms of the Common Development
3  * and Distribution License (the License). You may not use this file except in
4  * compliance with the License.
5  *
6  * You can obtain a copy of the License at http://www.netbeans.org/cddl.html
7  * or http://www.netbeans.org/cddl.txt.
8  *
9  * When distributing Covered Code, include this CDDL Header Notice in each file
10  * and include the License file at http://www.netbeans.org/cddl.txt.
11  * If applicable, add the following below the CDDL Header, with the fields
12  * enclosed by brackets [] replaced by your own identifying information:
13  * "Portions Copyrighted [year] [name of copyright owner]"
14  *
15  * The Original Software is NetBeans. The Initial Developer of the Original
16  * Software is Sun Microsystems, Inc. Portions Copyright 1997-2006 Sun
17  * Microsystems, Inc. All Rights Reserved.
18  */

19
20
21 package org.netbeans.core.windows.actions;
22
23
24 import org.netbeans.core.windows.ModeImpl;
25 import org.netbeans.core.windows.WindowManagerImpl;
26 import org.openide.util.NbBundle;
27 import org.openide.windows.TopComponent;
28
29 import javax.swing.*;
30 import java.awt.event.ActionEvent JavaDoc;
31 import java.util.List JavaDoc;
32
33
34
35 /**
36  * Action which selects previous TopComponetn in container.
37  *
38  * @author Peter Zavadsky
39  */

40 public class PreviousTabAction extends AbstractAction {
41
42     /** Creates a new instance of PreviouesTabAction */
43     public PreviousTabAction() {
44         putValue(NAME, NbBundle.getMessage(PreviousTabAction.class, "CTL_PreviousTabAction"));
45     }
46
47     
48     public void actionPerformed(ActionEvent JavaDoc evt) {
49         TopComponent tc = TopComponent.getRegistry().getActivated();
50         if(tc == null) {
51             return;
52         }
53         
54         ModeImpl mode = (ModeImpl)WindowManagerImpl.getInstance().findMode(tc);
55
56         List JavaDoc openedTcs = mode.getOpenedTopComponents();
57
58         int index = openedTcs.indexOf(tc);
59
60         if(index == -1) {
61             return;
62         }
63
64         index--; // Previous tab.
65

66         if(index < 0) {
67             index = openedTcs.size() - 1;
68         }
69
70         TopComponent select = (TopComponent)openedTcs.get(index);
71         if(select == null) {
72             return;
73         }
74         
75         mode.setSelectedTopComponent(select);
76     }
77 }
78
79
Popular Tags