Example usage for com.vaadin.client UIDL getChildByTagName

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

Introduction

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

Prototype

public UIDL getChildByTagName(String tagName) 

Source Link

Document

Returns the child UIDL by its name.

Usage

From source file:annis.gui.widgets.gwt.client.ui.VAnnotationGrid.java

License:Apache License

/**
 * Called whenever an update is received from the server
 *///from   ww w  . j ava 2  s .c  o  m
@Override
public void updateFromUIDL(UIDL uidl, ApplicationConnection 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.gClient = client;

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

    try {
        if (uidl.hasAttribute("escapeHTML")) {
            this.escapeHTML = uidl.getBooleanAttribute("escapeHTML");
        }

        UIDL rows = uidl.getChildByTagName("rows");
        if (rows != null) {
            // clear all old table cells
            table.removeAllRows();
            highlighted.clear();
            position2id.clear();

            for (int i = 0; i < rows.getChildCount(); i++) {
                UIDL row = rows.getChildUIDL(i);
                if ("row".equals(row.getTag())) {
                    addRow(row, i);
                }
            }
        } // end if rows not null

        // add end events if necessary to have a nicely aligned regular grid
        int maxCellCount = 0;
        for (int row = 0; row < table.getRowCount(); row++) {
            maxCellCount = Math.max(maxCellCount, getRealColumnCount(row));
        }

        for (int row = 0; row < table.getRowCount(); row++) {
            int isValue = getRealColumnCount(row);

            if (isValue < maxCellCount) {
                int diff = maxCellCount - isValue;
                table.setHTML(row, table.getCellCount(row) + diff - 1, "");
            }
        }

    } catch (Exception ex) {
        VConsole.log(ex);
    }
}

From source file:annis.gui.widgets.gwt.client.ui.VAnnotationGrid.java

License:Apache License

private void addRow(UIDL row, int rowNumber) {

    String caption = row.getStringAttribute("caption");
    boolean showNamespace = row.getBooleanAttribute("show-namespace");
    String name;/*from  w  w w . ja  v a 2  s.co  m*/
    if (showNamespace) {
        name = caption;
    } else {
        String[] captionSplit = caption.split("::");
        name = captionSplit[captionSplit.length - 1];
    }

    boolean showCaption = row.getBooleanAttribute("show-caption");

    int startColumn = 0;

    if (showCaption) {
        table.setHTML(rowNumber, 0, Util.escapeHTML(name));
        formatter.addStyleName(rowNumber, 0, "header");
        startColumn = 1;
    }

    int colspanOffset = 0;

    UIDL events = row.getChildByTagName("events");
    for (int j = 0; j < events.getChildCount(); j++) {
        UIDL event = events.getChildUIDL(j);
        String id = event.getStringAttribute("id");
        int left = event.getIntAttribute("left");
        int right = event.getIntAttribute("right");
        String value = event.getStringAttribute("value");
        if (escapeHTML) {
            value = Util.escapeHTML(value);
        }

        // +1 because we also have a caption column, subtract columns we
        // jumped over by using colspan
        int col = left + startColumn - colspanOffset;

        table.setHTML(rowNumber, col, value);

        if (event.hasAttribute("tooltip")) {
            Element tdElement = table.getCellFormatter().getElement(rowNumber, col);
            tdElement.setTitle(event.getStringAttribute("tooltip"));
        }

        position2id.put(new Position(rowNumber, col), id);

        int colspan = right - left + 1;
        formatter.setColSpan(rowNumber, col, colspan);
        if (colspan > 1) {
            colspanOffset += (colspan - 1);
        }

        addStyleForEvent(event, rowNumber, col);

    }
}

From source file:com.haulmont.cuba.web.toolkit.ui.client.table.CubaScrollTableConnector.java

License:Apache License

@Override
protected void updateAdditionalRowData(UIDL uidl) {
    UIDL arow = uidl.getChildByTagName("arow");
    if (arow != null) {
        getWidget().updateAggregationRow(arow);
    }/* w  ww .ja v a 2s. c o  m*/
}

From source file:com.haulmont.cuba.web.widgets.client.addons.dragdroplayouts.ui.VDragDropUtil.java

License:Apache License

public static void updateDropHandlerFromUIDL(UIDL uidl, ComponentConnector connector,
        VDDAbstractDropHandler dropHandler) {
    VDDHasDropHandler widget = (VDDHasDropHandler) connector.getWidget();
    if (AbstractComponentConnector.isRealUpdate(uidl) && !uidl.hasAttribute("hidden")) {
        UIDL acceptCrit = uidl.getChildByTagName("-ac");
        if (acceptCrit == null) {
            widget.setDropHandler(null);
        } else {//from   w  w  w .  j  av a 2  s  .c  om
            if (widget.getDropHandler() == null) {
                widget.setDropHandler(dropHandler);
            }
            widget.getDropHandler().updateAcceptRules(acceptCrit);
        }
    }
}

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 w w.j  a  v a2  s.  co m
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);
}