Example usage for com.vaadin.client UIDL hasAttribute

List of usage examples for com.vaadin.client UIDL hasAttribute

Introduction

In this page you can find the example usage for com.vaadin.client UIDL hasAttribute.

Prototype

public boolean hasAttribute(final String name) 

Source Link

Document

Indicates whether or not the named attribute is available.

Usage

From source file:org.semanticsoft.vaaclipse.widgets.client.ui.stackwidget.StackWidgetConnector.java

License:Open Source License

/**
 * Called whenever an update is received from the server
 *///from   w  ww . jav a 2s . c om
public void updateFromUIDL(UIDL uidl, ApplicationConnection client) {
    VStackWidget stackWidget = getWidget();

    stackWidget.id = uidl.getId();
    stackWidget.client = client;

    if (uidl.getIntAttribute("svoi") == 5) {
        int state = uidl.getIntAttribute("vaadock_tabsheet_state");
        VConsole.log("VStackWidget: set initial state = " + state);
        stackWidget.setState(state);
        stackWidget.maximizeEnabled = uidl.getBooleanAttribute("maximize_enabled");
        stackWidget.minimizeEnabled = uidl.getBooleanAttribute("minimize_enabled");

        if (!stackWidget.maximizeEnabled)
            stackWidget.maximizeButton.setAttribute("style", "display: none;");
        if (!stackWidget.minimizeEnabled)
            stackWidget.minimizeButton.setAttribute("style", "display: none;");
    }

    if (isRealUpdate(uidl) && !uidl.hasAttribute("hidden")) {
        UIDL acceptCrit = uidl.getChildByTagName("-ac");
        if (acceptCrit == null) {
            getWidget().setDropHandler(null);
        } else {
            if (getWidget().getDropHandler() == null) {
                getWidget().setDropHandler(new VStackWidgetDropHandler(getWidget(), client));
                VConsole.log("updateFromUIDL: VStackWidgetDropHandler installed");
            }
            getWidget().getDropHandler().updateAcceptRules(acceptCrit);
        }
    }

    super.updateFromUIDL(uidl, client);
}

From source file:org.semanticsoft.vaadinaddons.boundsinfo.client.ui.VBoundsinfoVerticalLayout.java

License:Open Source License

/**
 * Called whenever an update is received from the server
 *///w w  w.j a va  2 s . com
public void updateFromUIDL(UIDL uidl, ApplicationConnection client) {
    super.updateFromUIDL(uidl, client);

    // This call should be made first.
    // It handles sizes, captions, tooltips, etc. automatically.
    if (client.updateComponent(this, uidl, true)) {
        // If client.updateComponent returns true there has been no changes
        // and we
        // do not need to update anything.
        return;
    }

    // Save reference to server connection object to be able to send
    // user interaction later
    this.client = client;

    // Save the client side identifier (paintable id) for the widget
    paintableId = uidl.getId();

    if (uidl.hasAttribute(VARIABLES)) {
        ValueMap vmap = uidl.getMapAttribute(VARIABLES);
        Set<String> indexes = vmap.getKeySet();
        for (String index : indexes) {
            variables.put(index, vmap.getString(index));
        }
    }

    this.enableBoundsUpdate = uidl.getBooleanAttribute(ENABLE_BOUNDS_UPDATE);
    if (this.enableBoundsUpdate)
        updateManager = new BoundsUpdateManager(this, paintableId, client);
}

From source file:org.tepi.filtertable.gwt.client.ui.VFilterTreeTable.java

License:Apache License

@Override
public void addAndRemoveRows(UIDL partialRowAdditions) {
    if (partialRowAdditions == null) {
        return;/*from ww w .j  a  v a  2  s . co  m*/
    }

    if (animationsEnabled) {
        if (partialRowAdditions.hasAttribute("hide")) {
            scrollBody.unlinkRowsAnimatedAndUpdateCacheWhenFinished(
                    partialRowAdditions.getIntAttribute("firstprowix"),
                    partialRowAdditions.getIntAttribute("numprows"));
        } else {
            scrollBody.insertRowsAnimated(partialRowAdditions,
                    partialRowAdditions.getIntAttribute("firstprowix"),
                    partialRowAdditions.getIntAttribute("numprows"));
            discardRowsOutsideCacheWindow();
        }
    } else {
        super.addAndRemoveRows(partialRowAdditions);
    }
}

From source file:org.vaadin.alump.ckeditor.client.VCKEditorTextField.java

License:Apache License

/**
 * Called whenever an update is received from the server
 *//*  w ww  . j  a  v  a2  s .  co  m*/
@Override
public void updateFromUIDL(UIDL uidl, ApplicationConnection client) {
    clientToServer = client;
    paintableId = uidl.getId();
    boolean needsDataUpdate = false;
    boolean needsProtectedBodyUpdate = false;
    boolean readOnlyModeChanged = false;

    // This call should be made first.
    // It handles sizes, captions, tooltips, etc. automatically.
    // If clientToServer.updateComponent returns true there have been no changes
    // and we do not need to update anything.
    if (clientToServer.updateComponent(this, uidl, true)) {
        return;
    }

    if (!resizeListenerInPlace) {
        LayoutManager.get(client).addElementResizeListener(getElement(), new ElementResizeListener() {

            @Override
            public void onElementResize(ElementResizeEvent e) {
                doResize();
            }

        });
        resizeListenerInPlace = true;
    }

    if (uidl.hasAttribute(ATTR_IMMEDIATE)) {
        immediate = uidl.getBooleanAttribute(ATTR_IMMEDIATE);
    }
    if (uidl.hasAttribute(ATTR_READONLY)) {
        boolean newReadOnly = uidl.getBooleanAttribute(ATTR_READONLY);
        readOnlyModeChanged = newReadOnly != readOnly;
        readOnly = newReadOnly;
    }
    if (uidl.hasAttribute(ATTR_VIEW_WITHOUT_EDITOR)) {
        viewWithoutEditor = uidl.getBooleanAttribute(ATTR_VIEW_WITHOUT_EDITOR);
    }
    if (uidl.hasAttribute(ATTR_PROTECTED_BODY)) {
        boolean state = uidl.getBooleanAttribute(ATTR_PROTECTED_BODY);
        if (protectedBody != state) {
            protectedBody = state;
            needsProtectedBodyUpdate = true;
        }
    }
    if (uidl.hasVariable(VAR_TEXT)) {
        String data = uidl.getStringVariable(VAR_TEXT);
        if (ckEditor != null)
            dataBeforeEdit = ckEditor.getData();
        needsDataUpdate = !data.equals(dataBeforeEdit);
        dataBeforeEdit = data;
    }

    // Save the client side identifier (paintable id) for the widget
    if (!paintableId.equals(getElement().getId())) {
        getElement().setId(paintableId);
    }

    if (viewWithoutEditor) {
        if (ckEditor != null) {
            // may update the data and change to viewWithoutEditor at the same time 
            if (!needsDataUpdate) {
                dataBeforeEdit = ckEditor.getData();
            }
            ckEditor.destroy(true);
            ckEditorIsReady = false;
            ckEditor = null;
        }
        getElement().setInnerHTML(dataBeforeEdit);
    } else if (ckEditor == null) {
        getElement().setInnerHTML(""); // in case we put contents in there while in viewWithoutEditor mode

        final String inPageConfig = uidl.hasAttribute(ATTR_INPAGECONFIG)
                ? uidl.getStringAttribute(ATTR_INPAGECONFIG)
                : null;

        writerIndentationChars = uidl.hasAttribute(ATTR_WRITER_INDENTATIONCHARS)
                ? uidl.getStringAttribute(ATTR_WRITER_INDENTATIONCHARS)
                : null;

        if (uidl.hasAttribute(ATTR_FOCUS)) {
            setFocus(uidl.getBooleanAttribute(ATTR_FOCUS));
        }

        // See if we have any writer rules
        int i = 0;
        while (true) {
            if (!uidl.hasAttribute(ATTR_WRITERRULES_TAGNAME + i)) {
                break;
            }
            // Save the rules until our instance is ready
            String tagName = uidl.getStringAttribute(ATTR_WRITERRULES_TAGNAME + i);
            String jsRule = uidl.getStringAttribute(ATTR_WRITERRULES_JSRULE + i);
            if (writerRules == null) {
                writerRules = new HashMap<String, String>();
            }
            writerRules.put(tagName, jsRule);
            ++i;
        }

        // See if we have any keystrokes
        i = 0;
        while (true) {
            if (!uidl.hasAttribute(ATTR_KEYSTROKES_KEYSTROKE + i)) {
                break;
            }
            // Save the keystrokes until our instance is ready
            int keystroke = uidl.getIntAttribute(ATTR_KEYSTROKES_KEYSTROKE + i);
            String command = uidl.getStringAttribute(ATTR_KEYSTROKES_COMMAND + i);
            if (keystrokeMappings == null) {
                keystrokeMappings = new HashMap<Integer, String>();
            }
            keystrokeMappings.put(keystroke, command);
            ++i;
        }

        // See if we have any protected source regexs
        i = 0;
        while (true) {
            if (!uidl.hasAttribute(ATTR_PROTECTED_SOURCE + i)) {
                break;
            }
            // Save the regex until our instance is ready
            String regex = uidl.getStringAttribute(ATTR_PROTECTED_SOURCE + i);
            if (protectedSourceList == null) {
                protectedSourceList = new LinkedList<String>();
            }
            protectedSourceList.add(regex);
            ++i;
        }

        ScheduledCommand scE = new ScheduledCommand() {
            @Override
            public void execute() {
                ckEditor = (CKEditor) CKEditorService.loadEditor(paintableId, VCKEditorTextField.this,
                        inPageConfig, VCKEditorTextField.super.getOffsetWidth(),
                        VCKEditorTextField.super.getOffsetHeight());

            }
        };

        CKEditorService.loadLibrary(scE);

        // editor data and some options are set when the instance is ready....
    } else if (ckEditorIsReady) {
        if (needsDataUpdate) {
            ckEditor.setData(dataBeforeEdit);
        }

        if (needsProtectedBodyUpdate) {
            ckEditor.protectBody(protectedBody);
        }

        if (uidl.hasAttribute(ATTR_INSERT_HTML)) {
            ckEditor.insertHtml(uidl.getStringAttribute(ATTR_INSERT_HTML));
        }

        if (uidl.hasAttribute(ATTR_INSERT_TEXT)) {
            ckEditor.insertText(uidl.getStringAttribute(ATTR_INSERT_TEXT));
        }

        if (uidl.hasAttribute(ATTR_FOCUS)) {
            setFocus(uidl.getBooleanAttribute(ATTR_FOCUS));
        }

        if (readOnlyModeChanged) {
            ckEditor.setReadOnly(readOnly);
        }
    }

}

From source file:org.vaadin.tepi.listbuilder.widgetset.client.ui.VListBuilder.java

License:Apache License

void updateCaptions(UIDL uidl) {
    String leftCaption = (uidl.hasAttribute(ATTRIBUTE_LEFT_CAPTION)
            ? uidl.getStringAttribute(ATTRIBUTE_LEFT_CAPTION)
            : null);/*from ww  w.j  av a2 s .c o  m*/
    String rightCaption = (uidl.hasAttribute(ATTRIBUTE_RIGHT_CAPTION)
            ? uidl.getStringAttribute(ATTRIBUTE_RIGHT_CAPTION)
            : null);

    /* Column caption styles */
    if (uidl.hasAttribute("leftColumnCaptionStyle")) {
        leftColumnCaptionStyle = uidl.getStringAttribute("leftColumnCaptionStyle");
    } else {
        leftColumnCaptionStyle = null;
    }
    if (uidl.hasAttribute("rightColumnCaptionStyle")) {
        rightColumnCaptionStyle = uidl.getStringAttribute("rightColumnCaptionStyle");
    } else {
        rightColumnCaptionStyle = null;
    }

    boolean hasCaptions = (leftCaption != null || rightCaption != null);

    if (leftCaption == null) {
        removeOptionsCaption();
    } else {
        getOptionsCaption().setText(leftCaption);
        if (leftColumnCaptionStyle != null) {
            getOptionsCaption().setStyleName(leftColumnCaptionStyle);
            getOptionsCaption().addStyleName(CLASSNAME + "-caption-left");
        } else {
            getOptionsCaption().setStyleName(CLASSNAME + "-caption-left");
        }
    }

    if (rightCaption == null) {
        removeSelectionsCaption();
    } else {
        getSelectionsCaption().setText(rightCaption);
        if (rightColumnCaptionStyle != null) {
            getSelectionsCaption().setStyleName(rightColumnCaptionStyle);
            getSelectionsCaption().addStyleName(CLASSNAME + "-caption-right");
        } else {
            getSelectionsCaption().setStyleName(CLASSNAME + "-caption-right");
        }
    }

    captionWrapper.setVisible(hasCaptions);
}

From source file:org.vaadin.tepi.listbuilder.widgetset.client.ui.VListBuilder.java

License:Apache License

void buildOptions(UIDL uidl) {
    final boolean enabled = !isDisabled() && !isReadonly();
    options.setEnabled(enabled);/*from  w  ww .  j a v  a  2  s .  co m*/
    selections.setEnabled(enabled);
    add.setEnabled(enabled);
    remove.setEnabled(enabled);
    options.clear();
    selections.clear();
    originalOrder.clear();

    HashMap<String, String> capts = new HashMap<String, String>();
    for (final Iterator<?> i = uidl.getChildIterator(); i.hasNext();) {
        final UIDL optionUidl = (UIDL) i.next();
        if (optionUidl.hasAttribute("selected")) {
            capts.put(optionUidl.getStringAttribute("key"), optionUidl.getStringAttribute("caption"));
        } else {
            options.addItem(optionUidl.getStringAttribute("caption"), optionUidl.getStringAttribute("key"));
        }
        originalOrder.add(optionUidl.getStringAttribute("key"));
    }
    for (String key : selectedKeys) {
        selections.addItem(capts.get(key), key);
    }

    if (getRows() > 0) {
        options.setVisibleItemCount(getRows());
        selections.setVisibleItemCount(getRows());
    }
}

From source file:org.vaadin.ui.client.numberfield.NumberFieldConnector.java

License:Apache License

private void processAttributesFromServer(UIDL uidl) {
    if (uidl.hasAttribute(Constants.ATTRIBUTE_ALLOW_NEGATIVES)) {
        getWidget().attributes/*from  w  w w  . ja  v a 2  s  . c o  m*/
                .setNegativeAllowed(uidl.getBooleanAttribute(Constants.ATTRIBUTE_ALLOW_NEGATIVES));
    }

    if (uidl.hasAttribute(Constants.ATTRIBUTE_DECIMAL_PRECISION)) {
        getWidget().attributes.setDecimalPrecision(uidl.getIntAttribute(Constants.ATTRIBUTE_DECIMAL_PRECISION));
    }

    if (uidl.hasAttribute(Constants.ATTRIBUTE_MIN_VALUE)) {
        getWidget().attributes.setMinValue(uidl.getDoubleAttribute(Constants.ATTRIBUTE_MIN_VALUE));
    }

    if (uidl.hasAttribute(Constants.ATTRIBUTE_MAX_VALUE)) {
        getWidget().attributes.setMaxValue(uidl.getDoubleAttribute(Constants.ATTRIBUTE_MAX_VALUE));
    }

    if (uidl.hasAttribute(Constants.ATTRIBUTE_ALLOW_DECIMALS)) {
        getWidget().attributes.setDecimalAllowed(uidl.getBooleanAttribute(Constants.ATTRIBUTE_ALLOW_DECIMALS));
    }

    if (uidl.hasAttribute(Constants.ATTRIBUTE_DECIMAL_SEPARATOR)) {
        getWidget().attributes
                .setDecimalSeparator((char) uidl.getIntAttribute(Constants.ATTRIBUTE_DECIMAL_SEPARATOR));
    }

    if (uidl.hasAttribute(Constants.ATTRIBUTE_USE_GROUPING)) {
        getWidget().attributes.setGroupingUsed(uidl.getBooleanAttribute(Constants.ATTRIBUTE_USE_GROUPING));
    }

    if (uidl.hasAttribute(Constants.ATTRIBUTE_GROUPING_SEPARATOR)) {
        getWidget().attributes
                .setGroupingSeparator((char) uidl.getIntAttribute(Constants.ATTRIBUTE_GROUPING_SEPARATOR));
    }

    if (uidl.hasAttribute(Constants.ATTRIBUTE_SERVER_FORMATTED_VALUE)) {
        getWidget().setValue(uidl.getStringAttribute(Constants.ATTRIBUTE_SERVER_FORMATTED_VALUE));
    }
}