data.set(key, new Data.DataValue(new Data())); Data.Value value = currentMeta.getDefaultValue(); if (value == null) { value = new Data.DataValue(new Data());
@Override public void setValue(Value value) { clear(); if (value != null) { try { if (value instanceof DataValue) { Data data = ((DataValue) value).get(); Iterator<Property> iter = data.realPropertyIterator(); while (iter.hasNext()) { Property p = iter.next(); setSingleValue(p.getValue()); } } else { setSingleValue(value.get()); } } catch (ClassCastException cce) { String errorMsg = "ClassCastException in KSSelectedList.java::setValue \n " + "Trying to cast Value from: " + value.getClass().getName() + "\n " + "TO DataValue.java. \n Value was of type " + value.getType().getName() + "\n "; try { errorMsg += "Value=[" + value.get().toString() + "]"; } catch (Exception ex) { errorMsg += "Error printing error value: " + ex.getMessage(); } throw new ClassCastException(errorMsg); } } }
DataValue dv = new DataValue((Data) value); if (widget instanceof TranslatableValueWidget) { Metadata fieldMetadata = model.getMetadata(qPath);
public void setValue(final Value value, boolean fireEvents) { if (basicWidget instanceof KSTextBox || basicWidget instanceof KSLabel) { if(value != null){ ((HasText)basicWidget).setText((String) value.get()); } else{ ((HasText)basicWidget).setText(""); } } else if (basicWidget instanceof KSSuggestBox) { //Do check here if(value != null){ if(!config.isRepeating){ ((KSSuggestBox) basicWidget).setValue((String)value.get(), fireEvents); } else{ DataValue dataValue = (DataValue)value; Data d = dataValue.get(); QueryPath path = QueryPath.parse("0"); String v = d.query(path); ((KSSuggestBox) basicWidget).setValue((String)v, fireEvents); } } else{ ((KSSuggestBox) basicWidget).setValue("", fireEvents); } } else if(basicWidget instanceof KSSelectItemWidgetAbstract) { SelectItemWidgetBinding.INSTANCE.setWidgetValue((KSSelectItemWidgetAbstract)basicWidget, value); } } public String getDisplayValue() {
/** * Returns all selected values along with their translations in the _runtime data. * * @return */ public Value getValueWithTranslations() { Data data = new Data(); Data _runtimeData = new Data(); for (KSItemLabel item : selectedItems) { data.add(item.getKey()); Data displayData = new Data(); displayData.set("id-translation", item.getDisplayText()); _runtimeData.add(displayData); } if (null != picker && picker.getDisplayValue().equals(UtilConstants.IMPOSSIBLE_CHARACTERS)) { data.add(UtilConstants.IMPOSSIBLE_CHARACTERS); Data displayData = new Data(); displayData.set("id-translation", UtilConstants.IMPOSSIBLE_CHARACTERS); _runtimeData.add(displayData); } data.set(new StringKey("_runtimeData"), _runtimeData); DataValue result = new DataValue(data); return result; }
private void redrawCategoryTable() { listPanel.clear(); for (int i = 0; i < categories.size(); i++) { String name = categories.get(i).getName(); String typeKey = categories.get(i).getTypeKey(); // TODO - need to somehow ensure that categoryTypeMap is initialized before redraw() KSItemLabel newItemLabel = new KSItemLabel(true, new CategoryDataParser()); Data categoryData = CategoryDataUtil.toData(categories.get(i)); newItemLabel.setValue(new DataValue(categoryData)); newItemLabel.addCloseHandler(deleteHandler); listPanel.add(newItemLabel); // String name = categories.get(i).getName(); // String typeKey = categories.get(i).getType(); // // TODO - need to somehow ensure that categoryTypeMap is initialized before redraw() // String typeName = "ERROR: uninitialized categoryTypeMap"; // if (null != categoryTypeMap) { // typeName = categoryTypeMap.get(typeKey).getName(); // } // categoryTable.setWidget(row, col++, new KSLabel(name + CATEGORY_TYPE_SEPARATOR + typeName)); // KSLabel deleteLabel = new KSLabel("[x]"); // deleteLabel.addStyleName("KS-LOBuilder-Search-Link"); // deleteLabel.addClickHandler(deleteHandler); // categoryTable.setWidget(row, col++, deleteLabel); // row++; // col = 0; } }
public Value getValue() { if (basicWidget instanceof KSTextBox) { StringValue value = new StringValue(((KSTextBox)basicWidget).getText()); return value; } else if (basicWidget instanceof KSSuggestBox) { //Do check here if(!config.isRepeating){ StringValue value = new StringValue(((KSSuggestBox) basicWidget).getValue()); return value; } else{ Data data = new Data(); data.set(new Data.IntegerKey(0),((KSSuggestBox) basicWidget).getValue()); DataValue value = new DataValue(data); return value; } } else if (basicWidget instanceof KSSelectItemWidgetAbstract) { return SelectItemWidgetBinding.INSTANCE.getWidgetValue((KSSelectItemWidgetAbstract)basicWidget); } return null; }
/** * Helper method get list item widget's values as a Data object * * @param object * @param value * @return */ public Value getWidgetValue(KSSelectItemWidgetAbstract object){ Value value; if (object.isMultipleSelect()) { Data data = new Data(); List<String> selectedItems = object.getSelectedItems(); for (String stringItem : selectedItems) { data.add(stringItem); } value = new Data.DataValue(data); } else { value = new Data.StringValue(object.getSelectedItem()); } return value; }
@Override public void onClick(ClickEvent event) { Value v = picker.getValue(); if (v instanceof DataValue) { Data d = ((DataValue) picker.getValue()).get(); Iterator<Property> iter = d.realPropertyIterator(); while (iter.hasNext()) { Property p = iter.next(); String s = p.getValue(); KSItemLabel selectedItem = createItem(s, picker.getDisplayValue(), hasDetails); addItem(selectedItem); } } else { String s = v.get(); KSItemLabel selectedItem = createItem(s, picker.getDisplayValue(), hasDetails); addItem(selectedItem); } picker.clear(); addItemButton.setEnabled(false); } });
private void addClusetItemViewHandler(CluSetRangeDataHelper clusetRangeModelHelper, KSItemLabel clusetRangeLabel, final LookupMetadata lookupMetadata, Data searchRequestData, final SearchRequestInfo searchRequest) { clusetRangeModelHelper.setLookupMetadata(lookupMetadata); clusetRangeLabel.setValue(new DataValue(searchRequestData)); if (showCluRangeDetailsHandlerRegs != null && showCluRangeDetailsHandlerRegs.get(Integer.toString(clusetRangeLabel.instanceId)) != null) { ((HandlerRegistration)showCluRangeDetailsHandlerRegs.get(Integer.toString(clusetRangeLabel.instanceId))).removeHandler(); } showCluRangeDetailsHandlerRegs.put(Integer.toString(clusetRangeLabel.instanceId), clusetRangeLabel.addShowDetailsHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { SearchResultsLightBox srLightBox = new SearchResultsLightBox("View Course Range", searchRequest, lookupMetadata); srLightBox.show(); } })); }
private KSItemLabel createItem(String value, String display, boolean hasDetails) { Data itemData = toItemData(value, display); DataValue itemDataValue = new DataValue(itemData); KSItemLabel item = new KSItemLabel(KSSelectedList.this.config.canEdit, hasDetails, itemDataHelper); item.setValue(itemDataValue); item.addCloseHandler(new CloseHandler<KSItemLabel>() { @Override public void onClose(CloseEvent<KSItemLabel> event) { KSItemLabel itemToBeDeleted = event.getTarget(); selectedItems.remove(itemToBeDeleted); removedItems.add(itemToBeDeleted); valuesPanel.remove(itemToBeDeleted); selectionChanged(); } }); return item; }
@Override public void exec(Widget widget) { ((KSSelectItemWidgetAbstract)widget).clear(); if (value != null){ if (value instanceof String || value instanceof StringValue) { String itemId = (String)(value instanceof String ? value:((StringValue)value).get()); ((KSSelectItemWidgetAbstract)widget).selectItem(itemId); } else if (value instanceof Data || value instanceof DataValue) { Data data = (Data)(value instanceof Data ? value:((DataValue)value).get()); for (Iterator itr = data.iterator(); itr.hasNext();) { Property p = (Property) itr.next(); ((KSSelectItemWidgetAbstract)widget).selectItem((String) p.getValue()); } } } } };
/** * Converts a list represented by a comma delimited string so to a DataValue so it can be added used to * set into a list widget. * * @param stringValue a comma separated list of values * @return DataValue representation of stringValue */ private DataValue convertStringValueToDataValue(String stringValue) { Data data = new Data(); String[] stringValues = stringValue.split(","); for (String value:stringValues){ data.add(value); } DataValue dataValue = new DataValue(data); return dataValue; }
/** * Converts a list represented by DataValue to a list of values as a comma delimited StringValue * @param dataValue DataValue representing a list object * @return the list converted to a comma delimited StringValue */ private StringValue convertDataValueToStringValue(DataValue dataValue) { StringBuffer sbValue = new StringBuffer(); Data data = dataValue.get(); Iterator<Property> propertyIterator = data.realPropertyIterator(); while(propertyIterator.hasNext()){ Property property = propertyIterator.next(); String propertyValue = property.getValue(); sbValue.append(","); sbValue.append(propertyValue); } StringValue stringValue = new StringValue(sbValue.toString().substring(1)); return stringValue; }
public Data copy(Data target, boolean recurse) { // note, this was the clone() method, but my eclipse code cleanup insists on @Override, and the compiler gives an // error for (final Entry<Key, Value> e : map.entrySet()) { if (recurse && e.getValue().getType().equals(Data.class)) { Data value = e.getValue().get(); if (value != null) { value = value.copy(); } target.map.put(e.getKey(), new DataValue(value)); } else { target.map.put(e.getKey(), e.getValue()); } } return target; }
public void set(final QueryPath path, final Data value) { set(path, new Data.DataValue(value)); }
public void set(final Key key, final Data value) { put(key, new DataValue(value)); if (value != null) { value.parent = this; value.parentKey = key; } }
public void add(final Data value) { final Key k = new IntegerKey(map.size()); put(k, new DataValue(value)); if (value != null) { value.parent = this; value.parentKey = k; } }
public void set(final String key, final Data value) { final Key k = new StringKey(key); put(k, new DataValue(value)); if (value != null) { value.parent = this; value.parentKey = k; } }
public void set(final Integer key, final Data value) { final Key k = new IntegerKey(key); put(k, new DataValue(value)); if (value != null) { value.parent = this; value.parentKey = k; } }