001 package echopoint.able;
002
003 /*
004 * This file is part of the Echo Point Project. This project is a collection
005 * of Components that have extended the Echo Web Application Framework.
006 *
007 * Version: MPL 1.1/GPL 2.0/LGPL 2.1
008 *
009 * The contents of this file are subject to the Mozilla Public License Version
010 * 1.1 (the "License"); you may not use this file except in compliance with
011 * the License. You may obtain a copy of the License at
012 * http://www.mozilla.org/MPL/
013 *
014 * Software distributed under the License is distributed on an "AS IS" basis,
015 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
016 * for the specific language governing rights and limitations under the
017 * License.
018 *
019 * Alternatively, the contents of this file may be used under the terms of
020 * either the GNU General Public License Version 2 or later (the "GPL"), or
021 * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
022 * in which case the provisions of the GPL or the LGPL are applicable instead
023 * of those above. If you wish to allow use of your version of this file only
024 * under the terms of either the GPL or the LGPL, and not to allow others to
025 * use your version of this file under the terms of the MPL, indicate your
026 * decision by deleting the provisions above and replace them with the notice
027 * and other provisions required by the GPL or the LGPL. If you do not delete
028 * the provisions above, a recipient may use your version of this file under
029 * the terms of any one of the MPL, the GPL or the LGPL.
030 */
031
032 import nextapp.echo.app.Insets;
033
034 /**
035 * The <code>Insetable</code> interface is used to set extra space inside and
036 * outside a component. The 'Insets' is the extra space around the content of a
037 * component, while the 'Outsets' is the extra space around the outside of a
038 * component.
039 */
040 public interface Insetable extends Delegateable {
041
042 /**
043 * A default insets object that has zero-pixel sizes.
044 */
045 public static final Insets DEFAULT_INSETS = new Insets(0);
046
047 /**
048 * A default outsets object that has zero-pixel sizes.
049 */
050 public static final Insets DEFAULT_OUTSETS = new Insets(0);
051
052 public static final String PROPERTY_INSETS = "insets";
053
054 public static final String PROPERTY_OUTSETS = "outsets";
055
056 /**
057 * @return the Insets in use or null if here are none
058 */
059 public Insets getInsets();
060
061 /**
062 * @return the Outsets in use or null if here are none
063 */
064 public Insets getOutsets();
065
066 /**
067 * Sets the Insets in play. The Insets control the extra space around the
068 * content of a container.
069 *
070 * @param newValue -
071 * the Insets to use
072 */
073 public void setInsets(Insets newValue);
074
075 /**
076 * Sets the Outsets in play. The Outsets control the extra space around the
077 * outside of a container.
078 *
079 * @param newValue -
080 * the Ousets to use
081 */
082 public void setOutsets(Insets newValue);
083 }