Package org.apache.pivot.wtk

Examples of org.apache.pivot.wtk.FillPane$FillPaneListenerList


    @Override
    public void install(Component component) {
        super.install(component);

        FillPane fillPane = (FillPane)component;
        fillPane.getFillPaneListeners().add(this);
    }
View Full Code Here


        fillPane.getFillPaneListeners().add(this);
    }

    @Override
    public int getPreferredWidth(int height) {
        FillPane fillPane = (FillPane)getComponent();

        int preferredWidth = 0;

        Orientation orientation = fillPane.getOrientation();
        if (orientation == Orientation.HORIZONTAL) {
            int heightUpdated = height;
            // Include padding in constraint
            if (heightUpdated != -1) {
                heightUpdated = Math.max(heightUpdated - (padding.top + padding.bottom), 0);
            }

            // Preferred width is the sum of the preferred widths of all components
            int j = 0;
            for (int i = 0, n = fillPane.getLength(); i < n; i++) {
                Component component = fillPane.get(i);

                if (component.isVisible()) {
                    preferredWidth += component.getPreferredWidth(heightUpdated);
                    j++;
                }
            }

            // Include spacing
            if (j > 1) {
                preferredWidth += spacing * (j - 1);
            }
        } else {
            // Preferred width is the maximum preferred width of all components
            for (int i = 0, n = fillPane.getLength(); i < n; i++) {
                Component component = fillPane.get(i);

                if (component.isVisible()) {
                    preferredWidth = Math.max(preferredWidth,
                        component.getPreferredWidth());
                }
View Full Code Here

        return preferredWidth;
    }

    @Override
    public int getPreferredHeight(int width) {
        FillPane fillPane = (FillPane)getComponent();

        int preferredHeight = 0;

        Orientation orientation = fillPane.getOrientation();
        if (orientation == Orientation.HORIZONTAL) {
            // Preferred height is the maximum preferred height of all components
            for (int i = 0, n = fillPane.getLength(); i < n; i++) {
                Component component = fillPane.get(i);

                if (component.isVisible()) {
                    preferredHeight = Math.max(preferredHeight,
                        component.getPreferredHeight());
                }
            }
        } else {
            int widthUpdated = width;
            // Include padding in constraint
            if (widthUpdated != -1) {
                widthUpdated = Math.max(widthUpdated - (padding.left + padding.right), 0);
            }

            // Preferred height is the sum of the preferred heights of all components
            int j = 0;
            for (int i = 0, n = fillPane.getLength(); i < n; i++) {
                Component component = fillPane.get(i);

                if (component.isVisible()) {
                    preferredHeight += component.getPreferredHeight(widthUpdated);
                    j++;
                }
View Full Code Here

        return preferredHeight;
    }

    @Override
    public Dimensions getPreferredSize() {
        FillPane fillPane = (FillPane)getComponent();

        int preferredWidth = 0;
        int preferredHeight = 0;

        switch (fillPane.getOrientation()) {
            case HORIZONTAL: {
                // Preferred width is the sum of the preferred widths of all components
                int j = 0;
                for (int i = 0, n = fillPane.getLength(); i < n; i++) {
                    Component component = fillPane.get(i);

                    if (component.isVisible()) {
                        Dimensions preferredSize = component.getPreferredSize();
                        preferredWidth += preferredSize.width;
                        preferredHeight = Math.max(preferredSize.height, preferredHeight);
                        j++;
                    }
                }

                // Include spacing
                if (j > 1) {
                    preferredWidth += spacing * (j - 1);
                }

                break;
            }

            case VERTICAL: {
                // Preferred height is the sum of the preferred heights of all components
                int j = 0;
                for (int i = 0, n = fillPane.getLength(); i < n; i++) {
                    Component component = fillPane.get(i);

                    if (component.isVisible()) {
                        Dimensions preferredSize = component.getPreferredSize();
                        preferredWidth = Math.max(preferredSize.width, preferredWidth);
                        preferredHeight += preferredSize.height;
View Full Code Here

        return new Dimensions(preferredWidth, preferredHeight);
    }

    @Override
    public int getBaseline(int width, int height) {
        FillPane fillPane = (FillPane)getComponent();

        int baseline = -1;
        int contentHeight = 0;

        switch (fillPane.getOrientation()) {
            case HORIZONTAL: {
                int clientHeight = Math.max(height - (padding.top + padding.bottom), 0);

                for (Component component : fillPane) {
                    if (component.isVisible()) {
View Full Code Here

        return baseline;
    }

    @Override
    public void layout() {
        FillPane fillPane = (FillPane)getComponent();
        // n is the number of 'visible' components
        // len is the total number of components
        int n = 0;
        int len = fillPane.getLength();
        for (int i = 0; i < len; i++) {
            Component component = fillPane.get(i);
            if (component.isVisible()) {
                n++;
            }
        }

        int width = getWidth();
        int height = getHeight();
        if (width <= 0)
            width = getPreferredWidth(-1);
        if (height <= 0)
            height = getPreferredHeight(-1);
        Orientation orientation = fillPane.getOrientation();
        if (orientation == Orientation.HORIZONTAL) {
            // Determine the starting x-coordinate
            int x = padding.left;
            int totalWidth = width - (padding.left + padding.right);
            if (n > 1)
                totalWidth -= spacing * (n - 1);
            int dividedWidth = n == 0 ? 0 : totalWidth / n;
            int leftoverWidth = totalWidth - (dividedWidth * n);

            // Lay out the components
            for (int i = 0, j = 0; i < len; i++) {
                Component component = fillPane.get(i);

                if (component.isVisible()) {
                    int componentWidth = dividedWidth;
                    if (j == n - 1)
                        componentWidth += leftoverWidth;

                    int componentHeight = Math.max(height - (padding.top
                        + padding.bottom), 0);

                    int y = padding.top;

                    // Set the component's size and position
                    component.setSize(componentWidth, componentHeight);
                    component.setLocation(x, y);

                    // Increment the x-coordinate
                    x += componentWidth + spacing;
                    j++;
                }
            }
        } else {
            // Determine the starting y-coordinate
            int y = padding.top;
            int totalHeight = height - (padding.top + padding.bottom);
            if (n > 1)
                totalHeight -= spacing * (n - 1);
            int dividedHeight = n == 0 ? 0 : totalHeight / n;
            int leftoverHeight = totalHeight - (dividedHeight * n);

            // Lay out the components
            for (int i = 0, j = 0; i < len; i++) {
                Component component = fillPane.get(i);

                if (component.isVisible()) {
                    int componentHeight = dividedHeight;
                    if (j == n - 1)
                        componentHeight += leftoverHeight;
View Full Code Here

    @Override
    public void install(Component component) {
        super.install(component);

        FillPane fillPane = (FillPane)component;
        fillPane.getFillPaneListeners().add(this);
    }
View Full Code Here

        fillPane.getFillPaneListeners().add(this);
    }

    @Override
    public int getPreferredWidth(int height) {
        FillPane fillPane = (FillPane)getComponent();

        int preferredWidth = 0;

        Orientation orientation = fillPane.getOrientation();
        if (orientation == Orientation.HORIZONTAL) {
            // Include padding in constraint
            if (height != -1) {
                height = Math.max(height - (padding.top + padding.bottom), 0);
            }

            // Preferred width is the sum of the preferred widths of all components
            int j = 0;
            for (int i = 0, n = fillPane.getLength(); i < n; i++) {
                Component component = fillPane.get(i);

                if (component.isVisible()) {
                    preferredWidth += component.getPreferredWidth(height);
                    j++;
                }
            }

            // Include spacing
            if (j > 1) {
                preferredWidth += spacing * (j - 1);
            }
        } else {
            // Preferred width is the maximum preferred width of all components
            for (int i = 0, n = fillPane.getLength(); i < n; i++) {
                Component component = fillPane.get(i);

                if (component.isVisible()) {
                    preferredWidth = Math.max(preferredWidth,
                        component.getPreferredWidth());
                }
View Full Code Here

        return preferredWidth;
    }

    @Override
    public int getPreferredHeight(int width) {
        FillPane fillPane = (FillPane)getComponent();

        int preferredHeight = 0;

        Orientation orientation = fillPane.getOrientation();
        if (orientation == Orientation.HORIZONTAL) {
            // Preferred height is the maximum preferred height of all components
            for (int i = 0, n = fillPane.getLength(); i < n; i++) {
                Component component = fillPane.get(i);

                if (component.isVisible()) {
                    preferredHeight = Math.max(preferredHeight,
                        component.getPreferredHeight());
                }
            }
        } else {
            // Include padding in constraint
            if (width != -1) {
                width = Math.max(width - (padding.left + padding.right), 0);
            }

            // Preferred height is the sum of the preferred heights of all components
            int j = 0;
            for (int i = 0, n = fillPane.getLength(); i < n; i++) {
                Component component = fillPane.get(i);

                if (component.isVisible()) {
                    preferredHeight += component.getPreferredHeight(width);
                    j++;
                }
View Full Code Here

        return preferredHeight;
    }

    @Override
    public Dimensions getPreferredSize() {
        FillPane fillPane = (FillPane)getComponent();

        int preferredWidth = 0;
        int preferredHeight = 0;

        switch (fillPane.getOrientation()) {
            case HORIZONTAL: {
                // Preferred width is the sum of the preferred widths of all components
                int j = 0;
                for (int i = 0, n = fillPane.getLength(); i < n; i++) {
                    Component component = fillPane.get(i);

                    if (component.isVisible()) {
                        Dimensions preferredSize = component.getPreferredSize();
                        preferredWidth += preferredSize.width;
                        preferredHeight = Math.max(preferredSize.height, preferredHeight);
                        j++;
                    }
                }

                // Include spacing
                if (j > 1) {
                    preferredWidth += spacing * (j - 1);
                }

                break;
            }

            case VERTICAL: {
                // Preferred height is the sum of the preferred heights of all components
                int j = 0;
                for (int i = 0, n = fillPane.getLength(); i < n; i++) {
                    Component component = fillPane.get(i);

                    if (component.isVisible()) {
                        Dimensions preferredSize = component.getPreferredSize();
                        preferredWidth = Math.max(preferredSize.width, preferredWidth);
                        preferredHeight += preferredSize.height;
View Full Code Here

TOP

Related Classes of org.apache.pivot.wtk.FillPane$FillPaneListenerList

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.