001    //$HeadURL: svn+ssh://rbezema@svn.wald.intevation.org/deegree/base/branches/2.2_testing/src/org/deegree/portal/context/Frontend.java $
002    /*----------------    FILE HEADER  ------------------------------------------
003    
004    This file is part of deegree.
005    Copyright (C) 2001-2008 by:
006    EXSE, Department of Geography, University of Bonn
007    http://www.giub.uni-bonn.de/deegree/
008    lat/lon GmbH
009    http://www.lat-lon.de
010    
011    This library is free software; you can redistribute it and/or
012    modify it under the terms of the GNU Lesser General Public
013    License as published by the Free Software Foundation; either
014    version 2.1 of the License, or (at your option) any later version.
015    
016    This library is distributed in the hope that it will be useful,
017    but WITHOUT ANY WARRANTY; without even the implied warranty of
018    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
019    Lesser General Public License for more details.
020    
021    You should have received a copy of the GNU Lesser General Public
022    License along with this library; if not, write to the Free Software
023    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
024    
025    Contact:
026    
027    Andreas Poth
028    lat/lon GmbH
029    Aennchenstr. 19
030    53115 Bonn
031    Germany
032    E-Mail: poth@lat-lon.de
033    
034    Prof. Dr. Klaus Greve
035    Department of Geography
036    University of Bonn
037    Meckenheimer Allee 166
038    53115 Bonn
039    Germany
040    E-Mail: greve@giub.uni-bonn.de
041    
042                     
043     ---------------------------------------------------------------------------*/
044    package org.deegree.portal.context;
045    
046    
047    /**
048     * this interface the description the access to the front end elements of a GUI 
049     * setting up on a web map context. this is a deegree specific form of description. 
050     * beside the name of the central controlling element an implementing class enables 
051     * access to fife areas the GUI is splitted in.
052     *
053     * @version $Revision: 9346 $
054     * @author <a href="mailto:poth@lat-lon.de">Andreas Poth</a>
055     */
056    public interface Frontend {
057        
058    
059        /**
060         * returns the name of the central controller of the front end. depending
061         * on the implementation this may be the name of a HTML/JSP-page a java class
062         * or something else.
063         *
064         * @return 
065         */
066        public String getController(); 
067    
068        /**
069         * returns the description of the west GUI area
070         *
071         * @return 
072         */
073        public GUIArea getWest();
074    
075        /**
076         * returns the description of the east GUI area
077         *
078         * @return 
079         */
080        public GUIArea getEast();
081    
082        /**
083         * returns the description of the south GUI area
084         *
085         * @return 
086         */
087        public GUIArea getSouth();
088    
089        /**
090         * returns the description of the north GUI area
091         *
092         * @return 
093         */
094        public GUIArea getNorth();
095    
096        /**
097         * returns the description of the central GUI area
098         *
099         * @return 
100         */
101        public GUIArea getCenter();
102    
103        /**
104         * sets the name of the central controller of the front end. depending
105         * on the implementation this may be the name of a HTML/JSP-page a java class
106         * or something else. 
107         *
108         * @param controller 
109         */
110        public void setController( String controller );
111    
112        /**
113         * sets the description of the west GUI area
114         *
115         * @param west 
116         */
117        public void setWest( GUIArea west );
118    
119        /**
120         * sets the description of the east GUI area
121         *
122         * @param east 
123         */
124        public void setEast( GUIArea east );
125    
126        /**
127         * sets the description of the south GUI area
128         *
129         * @param south 
130         */
131        public void setSouth( GUIArea south );
132    
133        /**
134         * sets the description of the north GUI area
135         *
136         * @param north 
137         */
138        public void setNorth( GUIArea north );
139    
140        /**
141         * sets the description of the central GUI area
142         *
143         * @param center 
144         */
145        public void setCenter( GUIArea center );
146    }