Layout.java in  » Script » java2script » org » eclipse » swt » widgets » Java Source Code / Java Documentation 2Java Source Code and Java Documentation

Home
Java Source Code / Java Documentation 2
1.2D
2.3D
3.Ajax
4.Algebra
5.App Engine
6.Aspect
7.Assemble
8.Cache
9.Cassandra
10.Chat
11.Cloud
12.CMS
13.CouchDB
14.Crypt
15.Database
16.Distributed
17.Eclipse
18.Facebook
19.File
20.Forum
21.GAE
22.Game
23.Google tech
24.Graph
25.Graphic
26.GWT
27.Hibernate
28.HTML
29.HTTP
30.Image
31.IntelliJ
32.IRC
33.J2EE
34.J2ME
35.JDBC
36.JPA
37.JSON
38.JSR
39.JUnit
40.JVM
41.Language
42.Linux
43.Math
44.Maven
45.Media
46.Messenger
47.MiddleWare
48.Mobile
49.Mock
50.MongoDB
51.Mp3
52.Music
53.MVC
54.Network
55.OpenID
56.OSGi
57.Parse
58.Persist
59.Petri
60.Phone
61.Physics
62.REST
63.Robot
64.RPC
65.RSS
66.Ruby
67.Script
68.Search
69.Spring
70.SQL
71.SSH
72.Sudoku
73.Swing
74.Tapestry
75.Test
76.Text
77.Torrent
78.Twitter
79.UML
80.UnTagged
81.Utilities
82.Web
83.Wiki
84.XML
Java Source Code / Java Documentation 2 » Script » java2script » org.eclipse.swt.widgets 
Source Cross Referenced  Class Diagram Java Document (Java Doc) 


        /*******************************************************************************
         * Copyright (c) 2000, 2005 IBM Corporation and others.
         * All rights reserved. This program and the accompanying materials
         * are made available under the terms of the Eclipse Public License v1.0
         * which accompanies this distribution, and is available at
         * http://www.eclipse.org/legal/epl-v10.html
         *
         * Contributors:
         *     IBM Corporation - initial API and implementation
         *******************************************************************************/package org.eclipse.swt.widgets;

        import org.eclipse.swt.graphics.*;

        /**
         * A layout controls the position and size
         * of the children of a composite widget.
         * This class is the abstract base class for
         * layouts.
         * 
         *  @see Composite#setLayout(Layout)
         */
        public abstract class Layout {

            /**
             * Computes and returns the size of the specified
             * composite's client area according to this layout.
             * <p>
             * This method computes the size that the client area 
             * of the composite must be in order to position all 
             * children at their preferred size inside the
             * composite according to the layout algorithm
             * encoded by this layout.
             * </p>
             * <p>
             * When a width or height hint is supplied, it is
             * used to constrain the result. For example, if a
             * width hint is provided that is less than the
             * width of the client area, the layout may choose
             * to wrap and increase height, clip, overlap, or
             * otherwise constrain the children.
             * </p>
             *
             * @param composite a composite widget using this layout
             * @param wHint width (<code>SWT.DEFAULT</code> for preferred size)
             * @param hHint height (<code>SWT.DEFAULT</code> for preferred size)
             * @param flushCache <code>true</code> means flush cached layout values
             * @return a point containing the computed size (width, height)
             * 
             * @see #layout
             * @see Control#getBorderWidth
             * @see Control#getBounds
             * @see Control#getSize
             * @see Control#pack(boolean)
             * @see "computeTrim, getClientArea for controls that implement them"
             */
            protected abstract Point computeSize(Composite composite,
                    int wHint, int hHint, boolean flushCache);

            /**
             * Instruct the layout to flush any cached values
             * associated with the control specified in the argument 
             * <code>control</code>.
             * 
             * @param control a control managed by this layout
             * @return true if the Layout has flushed all cached information associated with control
             * 
             * @since 3.1
             */
            protected boolean flushCache(Control control) {
                return false;
            }

            /**
             * Lays out the children of the specified composite
             * according to this layout.
             * <p>
             * This method positions and sizes the children of a
             * composite using the layout algorithm encoded by this
             * layout. Children of the composite are positioned in
             * the client area of the composite. The position of
             * the composite is not altered by this method.
             * </p>
             * <p>
             * When the flush cache hint is true, the layout is
             * instructed to flush any cached values associated
             * with the children. Typically, a layout will cache
             * the preferred sizes of the children to avoid the
             * expense of computing these values each time the
             * widget is laid out.
             * </p>
             * <p>
             * When layout is triggered explicitly by the programmer
             * the flush cache hint is true. When layout is triggered
             * by a resize, either caused by the programmer or by the
             * user, the hint is false.
             * </p>
             *
             * @param composite a composite widget using this layout
             * @param flushCache <code>true</code> means flush cached layout values
             */
            protected abstract void layout(Composite composite,
                    boolean flushCache);
        }
w__w__w___.___j___a___v_a___2_s_.c__om_ | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.