01: // THIS SOFTWARE IS PROVIDED BY SOFTARIS PTY.LTD. AND OTHER METABOSS
02: // CONTRIBUTORS ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING,
03: // BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
04: // FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SOFTARIS PTY.LTD.
05: // OR OTHER METABOSS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
06: // INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
07: // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
08: // OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
09: // LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
10: // NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
11: // EVEN IF SOFTARIS PTY.LTD. OR OTHER METABOSS CONTRIBUTORS ARE ADVISED OF THE
12: // POSSIBILITY OF SUCH DAMAGE.
13: //
14: // Copyright 2000-2005 © Softaris Pty.Ltd. All Rights Reserved.
15: package com.metaboss.applications.designstudio.components;
16:
17: import java.awt.event.ActionEvent;
18: import java.util.ArrayList;
19:
20: import javax.swing.AbstractAction;
21: import javax.swing.Action;
22:
23: public class ContainerAction extends AbstractAction {
24: private ArrayList mChildActions = new ArrayList();
25:
26: public ContainerAction(String pName) {
27: super ();
28: putValue(Action.NAME, pName);
29: }
30:
31: public ContainerAction(String pName, Object[] pActions) {
32: this (pName);
33: if (pActions != null)
34: for (int i = 0; i < pActions.length; i++)
35: mChildActions.add(pActions[i]);
36: }
37:
38: public void actionPerformed(ActionEvent e) {
39: //???
40: }
41:
42: public void addChildAction(Action pAction) {
43: mChildActions.add(pAction);
44: }
45:
46: public int getActionCount() {
47: return mChildActions.size();
48: }
49:
50: public Action getChildAction(int pIndex) {
51: return (Action) mChildActions.get(pIndex);
52: }
53:
54: public Object[] getActions() {
55: return mChildActions.toArray();
56: }
57:
58: public void clearChildActions() {
59: mChildActions.clear();
60: }
61: }
|