Subversion Repository Public Repository

litesoft

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
// This Source Code is in the Public Domain per: http://unlicense.org
package org.litesoft.GWT.client.widgets.nonpublic;

import com.google.gwt.user.client.*;
import com.google.gwt.user.client.ui.*;

public abstract class AbstractLowLevelSizeableComposite extends AbstractSizeableWidget implements WidgetCompositor {
    private Widget mWidget;

    @Override
    public Element getElement() {
        if ( mWidget == null ) {
            throw new IllegalStateException( "initWidget() was never called in " + getClass().getName() );
        }
        return super.getElement();
    }

    @Override
    public Widget[] getCompositedWidgets() {
        return new Widget[]{mWidget};
    }

    /**
     * Sets the widget to be wrapped by the composite. The wrapped widget must be
     * set before calling any {@link Widget} methods on this object, or adding it
     * to a panel. This method may only be called once for a given composite.
     *
     * @param pWidget the widget to be wrapped
     */
    protected void LLinitWidget( Widget pWidget ) {
        // Make sure the widget is not being set twice.
        if ( mWidget != null ) {
            throw new IllegalStateException( "Composite.initWidget() may only be called once." );
        }

        pWidget.removeFromParent();

        // Use the contained widget's element as the composite's element,
        // effectively merging them within the DOM.
        setElement( pWidget.getElement() );

        //noinspection NonJREEmulationClassesInClientCode
        BackDoorToWidget.setParent( mWidget = pWidget, this ); // The Composite now owns this widget.

        initialize();
    }

    @Override
    protected void onAttach() {
        super.onAttach();

        //noinspection NonJREEmulationClassesInClientCode
        BackDoorToWidget.onAttach( mWidget ); // Call onAttach() on behalf of the contained widget.
    }

    @Override
    protected void onDetach() {
        super.onDetach();

        //noinspection NonJREEmulationClassesInClientCode
        BackDoorToWidget.onDetach( mWidget ); // Call onDetach() on behalf of the contained widget.
    }

    public Widget LLgetWidget() {
        return mWidget;
    }
}

Commits for litesoft/trunk/Java/GWT/Client/src/org/litesoft/GWT/client/widgets/nonpublic/AbstractLowLevelSizeableComposite.java

Diff revisions: vs.
Revision Author Commited Message
948 Diff Diff GeorgeS picture GeorgeS Sat 07 Jun, 2014 23:42:39 +0000

Jusefuls Formatter Updated to New Code Format

947 Diff Diff GeorgeS picture GeorgeS Fri 06 Jun, 2014 23:36:56 +0000

Correct Spelling of package!

49 Diff Diff GeorgeS picture GeorgeS Mon 12 Apr, 2010 02:59:10 +0000

License Text

23 Diff Diff GeorgeS picture GeorgeS Wed 24 Feb, 2010 00:34:32 +0000
2 GeorgeS picture GeorgeS Sun 07 Feb, 2010 12:50:58 +0000