001    /*
002      Copyright (C) 2002 Laurent Martelli
003      
004      This program is free software; you can redistribute it and/or modify
005      it under the terms of the GNU Lesser General Public License as
006      published by the Free Software Foundation; either version 2 of the
007      License, or (at your option) any later version.
008    
009      This program is distributed in the hope that it will be useful,
010      but WITHOUT ANY WARRANTY; without even the implied warranty of
011      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
012      GNU Lesser General Public License for more details.
013    
014      You should have received a copy of the GNU Lesser General Public License
015      along with this program; if not, write to the Free Software
016      Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA */
017    
018    package org.objectweb.jac.aspects.gui;
019    
020    public interface PanelView extends CompositeView {
021       /**
022        * Sets a splitter location.
023        *
024        * <p>The splitter is referenced by its index going from the
025        * front-end splitter to the back-end splitters. For instance, in
026        * the case of a 3 sub-panel window, the 0 index references the
027        * splitter that splits the main window in two, the 1 index, the
028        * one that splits the half-window in two other smaller parts.
029        *
030        * @param splitterId the splitter's index
031        * @param location the position in pixel, regarding to the top/left
032        * component, a negative value means that the splitter should be
033        * set at the preferred sized of the inner components 
034        */
035       void setSplitterLocation(int splitterId, float location);
036    
037       /** The panel is on the top (when 2-3 panels) */
038       String UPPER = "upper";
039       /** The panel is on the bottom (when 2-3 panels) */
040       String LOWER = "lower";
041       /** The panel is on the right (when 2-3 panels) */
042       String RIGHT = "right";
043       /** The panel is on the left (when 2-3 panels) */
044       String LEFT = "left";
045       /** The panel is on the top-left (when 3-4 panels) */
046       String UPPER_LEFT = "upper_left";
047       /** The panel is on the top-right (when 3-4 panels) */
048       String UPPER_RIGHT = "upper_right";
049       /** The panel is on the bottom-left (when 3-4 panels) */
050       String LOWER_LEFT = "lower_left";
051       /** The panel is on the bottom-right (when 3-4 panels) */
052       String LOWER_RIGHT = "lower_right";
053    
054    }