Package org.locationtech.udig.style.advanced.common.styleattributeclasses

Examples of org.locationtech.udig.style.advanced.common.styleattributeclasses.PolygonSymbolizerWrapper


     * Initialize the panel with pre-existing values.
     *
     * @param ruleWrapper the {@link RuleWrapper}.
     */
    public void init( RuleWrapper ruleWrapper ) {
        PolygonSymbolizerWrapper polygonSymbolizerWrapper = ruleWrapper.getGeometrySymbolizersWrapper().adapt(
                PolygonSymbolizerWrapper.class);

        mainComposite = new Composite(parent, SWT.NONE);
        mainComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
        mainComposite.setLayout(new GridLayout(3, true));

        // rule name
        Label nameLabel = new Label(mainComposite, SWT.NONE);
        nameLabel.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false));
        nameLabel.setText(Messages.PolygonGeneralParametersComposite_0);
        nameText = new Text(mainComposite, SWT.SINGLE | SWT.LEAD | SWT.BORDER);
        GridData nameTextGD = new GridData(SWT.FILL, SWT.CENTER, true, false);
        nameTextGD.horizontalSpan = 2;
        nameText.setLayoutData(nameTextGD);
        nameText.setText(ruleWrapper.getName());
        nameText.addFocusListener(this);

        Label offsetLabel = new Label(mainComposite, SWT.NONE);
        GridData offsetLabelGD = new GridData(SWT.FILL, SWT.CENTER, true, false);
        offsetLabel.setLayoutData(offsetLabelGD);
        offsetLabel.setText(Messages.PolygonGeneralParametersComposite_1);

        String xOffset = polygonSymbolizerWrapper.getxOffset();
        String yOffset = polygonSymbolizerWrapper.getyOffset();
        Integer tmpXOffset = Utilities.isNumber(xOffset, Integer.class);
        Integer tmpYOffset = Utilities.isNumber(yOffset, Integer.class);
        if (tmpXOffset == null || tmpYOffset == null) {
            tmpXOffset = 0;
            tmpYOffset = 0;
View Full Code Here


     * Update the panel.
     *
     * @param ruleWrapper the {@link RuleWrapper}.
     */
    public void update( RuleWrapper ruleWrapper ) {
        PolygonSymbolizerWrapper polygonSymbolizerWrapper = ruleWrapper.getGeometrySymbolizersWrapper().adapt(
                PolygonSymbolizerWrapper.class);
        nameText.setText(ruleWrapper.getName());

        // offset
        String xOffset = polygonSymbolizerWrapper.getxOffset();
        String yOffset = polygonSymbolizerWrapper.getyOffset();
        Double tmpXOffset = Utilities.isNumber(xOffset, Double.class);
        Double tmpYOffset = Utilities.isNumber(yOffset, Double.class);
        if (tmpXOffset == null || tmpYOffset == null) {
            tmpXOffset = 0.0;
            tmpYOffset = 0.0;
View Full Code Here

     * Initialize the panel with pre-existing values.
     *
     * @param ruleWrapper the {@link RuleWrapper}.
     */
    public void init( RuleWrapper ruleWrapper ) {
        PolygonSymbolizerWrapper polygonSymbolizerWrapper = ruleWrapper.getGeometrySymbolizersWrapper().adapt(
                PolygonSymbolizerWrapper.class);

        mainComposite = new Composite(parent, SWT.NONE);
        mainComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
        mainComposite.setLayout(new GridLayout(3, true));

        boolean widgetEnabled = polygonSymbolizerWrapper.hasFill();

        fillEnableButton = new Button(mainComposite, SWT.CHECK);
        GridData fillEnableButtonGD = new GridData(SWT.BEGINNING, SWT.CENTER, false, false);
        fillEnableButtonGD.horizontalSpan = 3;
        fillEnableButton.setLayoutData(fillEnableButtonGD);
        fillEnableButton.setText(Messages.PolygonFillParametersComposite_0);
        fillEnableButton.setSelection(widgetEnabled);
        fillEnableButton.addSelectionListener(this);

        /*
         * radio panel for fill choice
         */
        // fill color
        Label colorLabel = new Label(mainComposite, SWT.RADIO);
        colorLabel.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
        colorLabel.setText(Messages.PolygonFillParametersComposite_1);

        String color = polygonSymbolizerWrapper.getFillColor();
        Color tmpColor = null;
        try {
            tmpColor = Color.decode(color);
        } catch (Exception e) {
            tmpColor = Color.gray;
        }
        fillColorEditor = new StolenColorEditor(mainComposite, this);
        fillColorEditor.setColor(tmpColor);
        fillColorButton = fillColorEditor.getButton();
        GridData fillColorButtonGD = new GridData(SWT.FILL, SWT.CENTER, true, false);
        fillColorButton.setLayoutData(fillColorButtonGD);

        fillColorAttributecombo = new Combo(mainComposite, SWT.DROP_DOWN | SWT.READ_ONLY);
        fillColorAttributecombo.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
        fillColorAttributecombo.setItems(stringAttributesArrays);
        fillColorAttributecombo.addSelectionListener(this);
        fillColorAttributecombo.select(0);
        if (tmpColor == null) {
            int index = getAttributeIndex(color, stringAttributesArrays);
            if (index != -1) {
                fillColorAttributecombo.select(index);
            }
        }

        // graphics fill
        Label graphicsFillLabel = new Label(mainComposite, SWT.RADIO);
        graphicsFillLabel.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
        graphicsFillLabel.setText(Messages.PolygonFillParametersComposite_2);

        Composite pathComposite = new Composite(mainComposite, SWT.NONE);
        GridData pathCompositeGD = new GridData(SWT.FILL, SWT.FILL, true, false);
        pathCompositeGD.horizontalSpan = 2;
        pathComposite.setLayoutData(pathCompositeGD);
        GridLayout pathLayout = new GridLayout(2, false);
        pathLayout.marginWidth = 0;
        pathLayout.marginHeight = 0;
        pathComposite.setLayout(pathLayout);
        graphicsPathText = new Text(pathComposite, SWT.SINGLE | SWT.LEAD | SWT.BORDER);
        graphicsPathText.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
        try {
            graphicsPathText.setText(polygonSymbolizerWrapper.getFillExternalGraphicFillPath());
        } catch (Exception e) {
            graphicsPathText.setText(""); //$NON-NLS-1$
        }
        graphicsPathText.addModifyListener(this);
        Button pathButton = new Button(pathComposite, SWT.PUSH);
        pathButton.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false));
        pathButton.setText("..."); //$NON-NLS-1$
        pathButton.addSelectionListener(new org.eclipse.swt.events.SelectionAdapter(){
            public void widgetSelected( org.eclipse.swt.events.SelectionEvent e ) {
                FileDialog fileDialog = new FileDialog(graphicsPathText.getShell(), SWT.OPEN);
                String path = fileDialog.open();
                if (path == null || path.length() < 1) {
                    graphicsPathText.setText(""); //$NON-NLS-1$
                } else {
                    graphicsPathText.setText(path);
                }
            }
        });

        // well known marks
        Label wkmLabel = new Label(mainComposite, SWT.RADIO);
        wkmLabel.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
        wkmLabel.setText(Messages.PolygonFillParametersComposite_3);

        wkmarkNameCombo = new Combo(mainComposite, SWT.DROP_DOWN | SWT.READ_ONLY);
        GridData wkmarkNameComboGD = new GridData(SWT.FILL, SWT.FILL, false, false);
        wkmarkNameComboGD.horizontalSpan = 2;
        wkmarkNameCombo.setLayoutData(wkmarkNameComboGD);
        wkmarkNameCombo.setItems(Utilities.getAllMarksArray());
        wkmarkNameCombo.addSelectionListener(this);

        String wkMarkNameFill = polygonSymbolizerWrapper.getWkMarkNameFill();
        int attributeIndex = getAttributeIndex(wkMarkNameFill, Utilities.getAllMarksArray());
        if (attributeIndex != -1) {
            wkmarkNameCombo.select(attributeIndex);
        }

        new Label(mainComposite, SWT.NONE);

        Composite wkmarkComposite = new Composite(mainComposite, SWT.NONE);
        GridData wkmarkCompositeGD = new GridData(SWT.FILL, SWT.FILL, true, false);
        wkmarkCompositeGD.horizontalSpan = 2;
        wkmarkComposite.setLayoutData(wkmarkCompositeGD);
        GridLayout wkmarkCompositeLayout = new GridLayout(3, false);
        wkmarkCompositeLayout.marginWidth = 0;
        wkmarkCompositeLayout.marginHeight = 0;
        wkmarkComposite.setLayout(wkmarkCompositeLayout);

        // mark width
        wkmWidthSpinner = new Spinner(wkmarkComposite, SWT.BORDER);
        wkmWidthSpinner.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
        wkmWidthSpinner.setMaximum(200);
        wkmWidthSpinner.setMinimum(0);
        wkmWidthSpinner.setIncrement(1);
        wkmWidthSpinner.setToolTipText(Messages.PolygonFillParametersComposite_4);

        String wkMarkWidth = polygonSymbolizerWrapper.getWkMarkWidthFill();
        Double tmpWidth = isDouble(wkMarkWidth);
        int tmpWidthInt = 1;
        if (tmpWidth != null) {
            tmpWidthInt = tmpWidth.intValue();
        }
        wkmWidthSpinner.setSelection(tmpWidthInt * 10);
        wkmWidthSpinner.setDigits(1);
        wkmWidthSpinner.addSelectionListener(this);

        // mark size
        wkmSizeSpinner = new Spinner(wkmarkComposite, SWT.BORDER);
        wkmSizeSpinner.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
        wkmSizeSpinner.setMaximum(1000);
        wkmSizeSpinner.setMinimum(0);
        wkmSizeSpinner.setIncrement(1);
        wkmSizeSpinner.setToolTipText(Messages.PolygonFillParametersComposite_5);

        String wkMarkSize = polygonSymbolizerWrapper.getWkMarkSizeFill();
        Double tmpSize = isDouble(wkMarkSize);
        int tmpSizeInt = 5;
        if (tmpSize != null) {
            tmpSizeInt = tmpSize.intValue();
        }
        wkmSizeSpinner.setSelection(tmpSizeInt * 10);
        wkmSizeSpinner.setDigits(1);
        wkmSizeSpinner.addSelectionListener(this);

        // mark color
        String wkMarkColor = polygonSymbolizerWrapper.getWkMarkColorFill();
        Color tmpWkmColor;
        try {
            tmpWkmColor = Color.decode(wkMarkColor);
        } catch (Exception e) {
            tmpWkmColor = Color.gray;
        }
        wkmColorEditor = new StolenColorEditor(wkmarkComposite, this);
        wkmColorEditor.setColor(tmpWkmColor);
        wkmColorButton = wkmColorEditor.getButton();
        GridData wkmColorButtonGD = new GridData(SWT.FILL, SWT.CENTER, true, false);
        wkmColorButton.setLayoutData(wkmColorButtonGD);

        // header
        new Label(mainComposite, SWT.NONE);
        Label valueLabel = new Label(mainComposite, SWT.NONE);
        valueLabel.setLayoutData(new GridData(SWT.CENTER, SWT.CENTER, true, false));
        valueLabel.setText(Messages.PolygonFillParametersComposite_6);
        Label fieldsLabel = new Label(mainComposite, SWT.NONE);
        fieldsLabel.setLayoutData(new GridData(SWT.CENTER, SWT.CENTER, true, false));
        fieldsLabel.setText(Messages.PolygonFillParametersComposite_7);

        // border alpha
        Label fillOpactityLabel = new Label(mainComposite, SWT.NONE);
        fillOpactityLabel.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
        fillOpactityLabel.setText(Messages.PolygonFillParametersComposite_8);
        fillOpacitySpinner = new Spinner(mainComposite, SWT.BORDER);
        fillOpacitySpinner.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
        fillOpacitySpinner.setMaximum(100);
        fillOpacitySpinner.setMinimum(0);
        fillOpacitySpinner.setIncrement(10);

        String opacity = polygonSymbolizerWrapper.getFillOpacity();
        Double tmpOpacity = isDouble(opacity);
        int tmp = 100;
        if (tmpOpacity != null) {
            tmp = (int) (tmpOpacity.doubleValue() * 100);
        }
View Full Code Here

     * Update the panel.
     *
     * @param ruleWrapper the {@link RuleWrapper}.
     */
    public void update( RuleWrapper ruleWrapper ) {
        PolygonSymbolizerWrapper polygonSymbolizerWrapper = ruleWrapper.getGeometrySymbolizersWrapper().adapt(
                PolygonSymbolizerWrapper.class);
        boolean widgetEnabled = polygonSymbolizerWrapper.hasFill();
        fillEnableButton.setSelection(widgetEnabled);

        String color = polygonSymbolizerWrapper.getFillColor();
        Color tmpColor = null;
        try {
            tmpColor = Color.decode(color);
        } catch (Exception e) {
            // ignore and try for field
        }
        if (tmpColor != null) {
            fillColorEditor.setColor(tmpColor);
        } else {
            int index = getAttributeIndex(color, stringAttributesArrays);
            if (index != -1) {
                fillColorAttributecombo.select(index);
            }
        }

        // graphics path
        try {
            graphicsPathText.setText(polygonSymbolizerWrapper.getFillExternalGraphicFillPath());
        } catch (MalformedURLException e1) {
            graphicsPathText.setText(""); //$NON-NLS-1$
        }

        String wkMarkNameFill = polygonSymbolizerWrapper.getWkMarkNameFill();
        String mName = Utilities.markNamesToDef.inverse().get(wkMarkNameFill);
        int attributeIndex = getAttributeIndex(mName, Utilities.getAllMarksArray());
        if (attributeIndex != -1) {
            wkmarkNameCombo.select(attributeIndex);
        } else {
            wkmarkNameCombo.select(0);
        }

        Double tmpWkmWidth = isDouble(polygonSymbolizerWrapper.getWkMarkWidthFill());
        int tmpWkm = 3;
        if (tmpWkmWidth != null) {
            tmpWkm = tmpWkmWidth.intValue();
        }
        wkmWidthSpinner.setSelection(tmpWkm * 10);

        Double tmpWkmSize = isDouble(polygonSymbolizerWrapper.getWkMarkSizeFill());
        int tmpWkmSizeInt = 3;
        if (tmpWkmSize != null) {
            tmpWkmSizeInt = tmpWkmSize.intValue();
        }
        wkmSizeSpinner.setSelection(tmpWkmSizeInt * 10);

        // border color
        Color tmpWkmColor;
        try {
            tmpWkmColor = Color.decode(polygonSymbolizerWrapper.getWkMarkColorFill());
        } catch (Exception e) {
            tmpWkmColor = Color.gray;
        }
        wkmColorEditor.setColor(tmpWkmColor);

        // fill alpha
        String opacity = polygonSymbolizerWrapper.getFillOpacity();
        Double tmpOpacity = isDouble(opacity);
        int tmp = 100;
        if (tmpOpacity != null) {
            tmp = (int) (tmpOpacity.doubleValue() * 100);
        }
View Full Code Here

    }

    public void onStyleChanged( Object source, String[] values, boolean fromField, STYLEEVENTTYPE styleEventType ) {
        String value = values[0];

        PolygonSymbolizerWrapper polygonSymbolizerWrapper = ruleWrapper.getGeometrySymbolizersWrapper().adapt(
                PolygonSymbolizerWrapper.class);

        TextSymbolizerWrapper textSymbolizerWrapper = ruleWrapper.getTextSymbolizersWrapper();

        switch( styleEventType ) {
        // GENERAL PARAMETERS
        case NAME:
            ruleWrapper.setName(value);
            break;
        case OFFSET:
            polygonSymbolizerWrapper.setOffset(value);
            break;
        case MAXSCALE:
            ruleWrapper.setMaxScale(value);
            break;
        case MINSCALE:
            ruleWrapper.setMinScale(value);
            break;
        // BORDER PARAMETERS
        // BORDER PARAMETERS
        case BORDERENABLE: {
            boolean enabled = Boolean.parseBoolean(value);
            polygonSymbolizerWrapper.setHasStroke(enabled);
            break;
        }
        case BORDERWIDTH: {
            polygonSymbolizerWrapper.setStrokeWidth(value, fromField);
            break;
        }
        case BORDERCOLOR: {
            polygonSymbolizerWrapper.setStrokeColor(value, fromField);
            break;
        }
        case BORDEROPACITY: {
            polygonSymbolizerWrapper.setStrokeOpacity(value, fromField);
            break;
        }
        case GRAPHICSPATHBORDER: {
            String url = values[0];
            String width = values[1];
            String size = values[2];

            try {
                polygonSymbolizerWrapper.setStrokeExternalGraphicStrokePath(url);
                Graphic graphicStroke = polygonSymbolizerWrapper.getStrokeGraphicStroke();
                graphicStroke.setSize(Utilities.ff.literal(size));
                graphicStroke.setGap(Utilities.ff.literal(width));
            } catch (MalformedURLException e) {
                e.printStackTrace();
            }
            break;
        }
        case DASH: {
            polygonSymbolizerWrapper.setDash(value);
            break;
        }
        case DASHOFFSET: {
            polygonSymbolizerWrapper.setDashOffset(value);
            break;
        }
        case LINECAP: {
            polygonSymbolizerWrapper.setLineCap(value);
            break;
        }
        case LINEJOIN: {
            polygonSymbolizerWrapper.setLineJoin(value);
            break;
        }
            // FILL PARAMETERS
        case FILLENABLE: {
            boolean enabled = Boolean.parseBoolean(value);
            polygonSymbolizerWrapper.setHasFill(enabled);
            break;
        }
        case FILLCOLOR: {
            polygonSymbolizerWrapper.setFillColor(value, fromField);
            break;
        }
        case FILLOPACITY: {
            polygonSymbolizerWrapper.setFillOpacity(value, fromField);
            break;
        }
        case WKMGRAPHICSFILL: {
            String wkmname = values[0];
            String wkmwidth = values[1];
            String wkmcolor = values[2];
            String wkmsize = values[3];
            polygonSymbolizerWrapper.setWkMarkNameFill(wkmname);
            polygonSymbolizerWrapper.setWkMarkWidthFill(wkmwidth);
            polygonSymbolizerWrapper.setWkMarkColorFill(wkmcolor);
            polygonSymbolizerWrapper.setWkMarkSizeFill(wkmsize);
            break;
        }
        case GRAPHICSPATHFILL: {
            try {
                polygonSymbolizerWrapper.setFillExternalGraphicFillPath(value);
            } catch (MalformedURLException e) {
                e.printStackTrace();
            }
            break;
        }
View Full Code Here

TOP

Related Classes of org.locationtech.udig.style.advanced.common.styleattributeclasses.PolygonSymbolizerWrapper

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.