KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > netbeans > modules > xml > wsdl > ui > view > grapheditor > widget > ExpandableWidget


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-2007 Sun
17  * Microsystems, Inc. All Rights Reserved.
18  */

19
20 package org.netbeans.modules.xml.wsdl.ui.view.grapheditor.widget;
21
22 /**
23  * Implemented by those widgets that wish to expand and collapse under the
24  * control of an <code>ExpanderWidget</code>. The implementation must make
25  * the actual size change itself, when either of the collapse/expand
26  * methods are invoked.
27  *
28  * @author Nathan Fiedler
29  */

30 public interface ExpandableWidget {
31
32     /**
33      * Perform whatever steps are necessary to collapse this expandable
34      * widget. This may remove child widgets, or animate the preferred
35      * bounds of the widget, using the provided expander.
36      *
37      * @param expander provides methods for animating size change.
38      */

39     void collapseWidget(ExpanderWidget expander);
40
41     /**
42      * Perform whatever steps are necessary to expand this expandable
43      * widget. This may add child widgets, or animate the preferred
44      * bounds of the widget, using the provided expander.
45      *
46      * @param expander provides methods for animating size change.
47      */

48     void expandWidget(ExpanderWidget expander);
49
50     /**
51      * Returns the object that can be used as a hashtable key. This is
52      * utilized in the ExpanderWidget for preserving the expanded state
53      * of widgets in the event that they are recreated, as in the case
54      * of an undo/redo operation.
55      *
56      * @return hashtable key.
57      */

58     Object JavaDoc hashKey();
59 }
60
Popular Tags