Example usage for com.google.gwt.event.logical.shared ValueChangeEvent fire

List of usage examples for com.google.gwt.event.logical.shared ValueChangeEvent fire

Introduction

In this page you can find the example usage for com.google.gwt.event.logical.shared ValueChangeEvent fire.

Prototype

public static <T> void fire(HasValueChangeHandlers<T> source, T value) 

Source Link

Document

Fires a value change event on all registered handlers in the handler manager.

Usage

From source file:gwt.material.design.client.base.AbstractValueWidget.java

License:Apache License

@Override
public void setValue(V value, boolean fireEvents) {
    if (fireEvents) {
        ValueChangeEvent.fire(this, value);
    }
}

From source file:gwt.material.design.client.base.BaseCheckBox.java

License:Apache License

/**
 * Checks or unchecks the check box, firing {@link ValueChangeEvent} if
 * appropriate./* w ww  . ja  va  2s . co m*/
 * <p>
 * Note that this <em>does not</em> set the value property of the checkbox
 * input element wrapped by this widget. For access to that property, see
 * {@link #setFormValue(String)}
 *
 * @param value true to check, false to uncheck; null value implies false
 * @param fireEvents If true, and value has changed, fire a
 *          {@link ValueChangeEvent}
 */
@Override
public void setValue(Boolean value, boolean fireEvents) {
    if (value == null) {
        value = Boolean.FALSE;
    }

    Boolean oldValue = getValue();
    inputElem.setChecked(value);
    inputElem.setDefaultChecked(value);
    if (value.equals(oldValue)) {
        return;
    }
    if (fireEvents) {
        ValueChangeEvent.fire(this, value);
    }
}

From source file:gwt.material.design.client.base.BaseCheckBox.java

License:Apache License

protected void ensureDomEventHandlers() {
    addClickHandler(new ClickHandler() {
        @Override//from   w w  w .  j  a v a2  s.c  o m
        public void onClick(ClickEvent event) {
            // Checkboxes always toggle their value, no need to compare
            // with old value. Radio buttons are not so lucky, see
            // overrides in RadioButton
            ValueChangeEvent.fire(BaseCheckBox.this, getValue());
        }
    });
}

From source file:gwt.material.design.client.ui.MaterialAutoComplete.java

License:Apache License

/**
 * Generate and build the List Items to be set on Auto Complete box.
 *///www. j a  va2 s  .  co m
private void generateAutoComplete(SuggestOracle suggestions) {
    list.setStyleName("multiValueSuggestBox-list");
    this.suggestions = suggestions;
    final ListItem item = new ListItem();

    item.setStyleName("multiValueSuggestBox-input-token");
    box = new SuggestBox(suggestions, itemBox);
    setLimit(this.limit);
    String autocompleteId = DOM.createUniqueId();
    itemBox.getElement().setId(autocompleteId);

    item.add(box);
    list.add(item);

    list.addDomHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent event) {
            box.showSuggestionList();
        }
    }, ClickEvent.getType());

    itemBox.addKeyDownHandler(new KeyDownHandler() {
        public void onKeyDown(KeyDownEvent event) {
            boolean itemsChanged = false;

            switch (event.getNativeKeyCode()) {
            case KeyCodes.KEY_ENTER:
                if (directInputAllowed) {
                    String value = itemBox.getValue();
                    if (value != null && !(value = value.trim()).isEmpty()) {
                        gwt.material.design.client.base.Suggestion directInput = new gwt.material.design.client.base.Suggestion();
                        directInput.setDisplay(value);
                        directInput.setSuggestion(value);
                        itemsChanged = addItem(directInput);
                        itemBox.setValue("");
                        itemBox.setFocus(true);
                    }
                }
                break;

            case KeyCodes.KEY_BACKSPACE:
                if (itemBox.getValue().trim().isEmpty()) {
                    if (itemsHighlighted.isEmpty()) {
                        if (suggestionMap.size() > 0) {

                            ListItem li = (ListItem) list.getWidget(list.getWidgetCount() - 2);
                            MaterialChip p = (MaterialChip) li.getWidget(0);

                            Set<Entry<Suggestion, MaterialChip>> entrySet = suggestionMap.entrySet();
                            for (Entry<Suggestion, MaterialChip> entry : entrySet) {
                                if (p.equals(entry.getValue())) {
                                    suggestionMap.remove(entry.getKey());
                                    itemsChanged = true;
                                    break;
                                }
                            }

                            list.remove(li);
                        }
                    }
                }

            case KeyCodes.KEY_DELETE:
                if (itemBox.getValue().trim().isEmpty()) {
                    for (ListItem li : itemsHighlighted) {
                        li.removeFromParent();
                        MaterialChip p = (MaterialChip) li.getWidget(0);

                        Set<Entry<Suggestion, MaterialChip>> entrySet = suggestionMap.entrySet();
                        for (Entry<Suggestion, MaterialChip> entry : entrySet) {
                            if (p.equals(entry.getValue())) {
                                suggestionMap.remove(entry.getKey());
                                itemsChanged = true;
                                break;
                            }
                        }
                    }
                    itemsHighlighted.clear();
                }
                itemBox.setFocus(true);
                break;
            }

            if (itemsChanged) {
                ValueChangeEvent.fire(MaterialAutoComplete.this, getValue());
            }
        }
    });

    itemBox.addClickHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent event) {
            box.showSuggestionList();
        }
    });

    box.addSelectionHandler(new SelectionHandler<Suggestion>() {
        public void onSelection(SelectionEvent<Suggestion> selectionEvent) {
            Suggestion selectedItem = selectionEvent.getSelectedItem();
            itemBox.setValue("");
            if (addItem(selectedItem)) {
                ValueChangeEvent.fire(MaterialAutoComplete.this, getValue());
            }
            itemBox.setFocus(true);
        }
    });

    panel.add(list);
    panel.getElement().setAttribute("onclick", "document.getElementById('" + autocompleteId + "').focus()");
    panel.add(lblError);
    box.setFocus(true);
}

From source file:gwt.material.design.client.ui.MaterialAutoComplete.java

License:Apache License

/**
 * Adding the item value using Material Chips added on auto complete box
 *///from  w w w.  j a v a2  s  . co m
protected boolean addItem(final Suggestion suggestion) {
    if (getLimit() > 0) {
        if (suggestionMap.size() >= getLimit()) {
            return false;
        }
    }

    if (suggestionMap.containsKey(suggestion)) {
        return false;
    }

    final MaterialChip chip = chipProvider.getChip(suggestion);
    if (chip == null) {
        return false;
    }

    final ListItem displayItem = new ListItem();
    displayItem.setStyleName("multiValueSuggestBox-token");

    chip.setIconType(IconType.CLOSE);
    chip.addClickHandler(new ClickHandler() {
        public void onClick(ClickEvent clickEvent) {
            if (itemsHighlighted.contains(displayItem)) {
                chip.removeStyleName("blue white-text");
                itemsHighlighted.remove(displayItem);
            } else {
                chip.addStyleName("blue white-text");
                itemsHighlighted.add(displayItem);
            }
        }
    });

    chip.getIcon().addClickHandler(new ClickHandler() {
        public void onClick(ClickEvent clickEvent) {
            suggestionMap.remove(suggestion);
            list.remove(displayItem);
            ValueChangeEvent.fire(MaterialAutoComplete.this, getValue());
            box.showSuggestionList();
        }
    });

    suggestionMap.put(suggestion, chip);
    if (getType() == AutocompleteType.TEXT) {
        suggestionMap.clear();
        itemBox.setText(suggestion.getDisplayString());
        displayItem.add(itemBox);
    } else {
        displayItem.add(chip);
    }
    list.insert(displayItem, list.getWidgetCount() - 1);
    return true;
}

From source file:gwt.material.design.client.ui.MaterialAutoComplete.java

License:Apache License

@Override
public void setValue(List<? extends Suggestion> value, boolean fireEvents) {
    clear();//from  w  w w  .j a  va2 s .c  o  m
    if (value != null) {
        for (Suggestion suggestion : value) {
            addItem(suggestion);
        }
    }
    if (fireEvents) {
        ValueChangeEvent.fire(this, getValue());
    }
}

From source file:gwt.material.design.client.ui.MaterialListValueBox.java

License:Apache License

protected void onChangeInternal() {
    try {//from  w  w w. j a va 2s  .  c  o  m
        ValueChangeEvent.fire(this, values.get(getSelectedIndex()));
    } catch (IndexOutOfBoundsException ex) {
        GWT.log("onChangeInternal threw an exception", ex);
    }
}

From source file:gwt.material.design.client.ui.MaterialSwitch.java

License:Apache License

/**
 * Set the value of switch component./* w w  w.  j a  v  a  2  s. c  o m*/
 */
@Override
public void setValue(Boolean value, boolean fireEvents) {
    boolean oldValue = getValue();
    if (value) {
        input.getElement().setAttribute("checked", "true");
    } else {
        input.getElement().removeAttribute("checked");
    }

    if (fireEvents && oldValue != value) {
        ValueChangeEvent.fire(this, getValue());
    }
}

From source file:gwt.material.design.client.ui.MaterialTextArea.java

License:Apache License

@Override
public void setValue(String value, boolean fireEvents) {
    super.setValue(value, fireEvents);

    if (fireEvents) {
        ValueChangeEvent.fire(this, value);
    }// ww w . j a  v a  2  s.  c  om
}

From source file:gwt.material.design.components.client.base.mixin.HasValueMixin.java

License:Apache License

public void fireChangeEvent() {
    ValueChangeEvent.fire(uiObject, uiObject.getValue());
}