List of usage examples for com.google.gwt.core.client JsArrayString length
public final native int length() ;
From source file:com.vaadin.client.ValueMap.java
License:Apache License
public Set<String> getKeySet() { final HashSet<String> attrs = new HashSet<String>(); JsArrayString attributeNamesArray = getKeyArray(); for (int i = 0; i < attributeNamesArray.length(); i++) { attrs.add(attributeNamesArray.get(i)); }/*from w w w .j av a2 s.c o m*/ return attrs; }
From source file:com.vaadin.client.ValueMap.java
License:Apache License
public String[] getStringArray(final String name) { JsArrayString stringArrayAttribute = getJSStringArray(name); final String[] s = new String[stringArrayAttribute.length()]; for (int i = 0; i < stringArrayAttribute.length(); i++) { s[i] = stringArrayAttribute.get(i); }//from ww w . j a va 2s. c om return s; }
From source file:com.vaadin.client.ValueMap.java
License:Apache License
public int[] getIntArray(final String name) { JsArrayString stringArrayAttribute = getJSStringArray(name); final int[] s = new int[stringArrayAttribute.length()]; for (int i = 0; i < stringArrayAttribute.length(); i++) { s[i] = Integer.parseInt(stringArrayAttribute.get(i)); }/*www . j a v a 2 s . c om*/ return s; }
From source file:com.vaadin.terminal.gwt.client.ApplicationConfiguration.java
License:Open Source License
public void addComponentMappings(ValueMap valueMap, WidgetSet widgetSet) { JsArrayString keyArray = valueMap.getKeyArray(); for (int i = 0; i < keyArray.length(); i++) { String key = keyArray.get(i).intern(); int value = valueMap.getInt(key); classes[value] = widgetSet.getImplementationByClassName(key); if (classes[value] == VUnknownComponent.class) { if (unknownComponents == null) { unknownComponents = new HashMap<String, String>(); }//from w w w .ja va 2s . com unknownComponents.put("" + value, key); } else if (key == "com.vaadin.ui.Root") { windowId = "" + value; } } }
From source file:com.vaadin.terminal.gwt.client.ApplicationConnection.java
License:Open Source License
protected void handleUIDLMessage(final Date start, final String jsonText, final ValueMap json) { // Handle redirect if (json.containsKey("redirect")) { String url = json.getValueMap("redirect").getString("url"); VConsole.log("redirecting to " + url); redirect(url);/*from w ww. ja va 2 s . c o m*/ return; } // Get security key if (json.containsKey(UIDL_SECURITY_TOKEN_ID)) { uidlSecurityKey = json.getString(UIDL_SECURITY_TOKEN_ID); } if (json.containsKey("resources")) { ValueMap resources = json.getValueMap("resources"); JsArrayString keyArray = resources.getKeyArray(); int l = keyArray.length(); for (int i = 0; i < l; i++) { String key = keyArray.get(i); resourcesMap.put(key, resources.getAsString(key)); } } if (json.containsKey("typeMappings")) { configuration.addComponentMappings(json.getValueMap("typeMappings"), widgetSet); } Command c = new Command() { public void execute() { VConsole.dirUIDL(json, configuration); if (json.containsKey("locales")) { // Store locale data JsArray<ValueMap> valueMapArray = json.getJSValueMapArray("locales"); LocaleService.addLocales(valueMapArray); } boolean repaintAll = false; ValueMap meta = null; if (json.containsKey("meta")) { meta = json.getValueMap("meta"); if (meta.containsKey("repaintAll")) { repaintAll = true; view.clear(); idToPaintableDetail.clear(); if (meta.containsKey("invalidLayouts")) { validatingLayouts = true; zeroWidthComponents = new HashSet<Paintable>(); zeroHeightComponents = new HashSet<Paintable>(); } } if (meta.containsKey("timedRedirect")) { final ValueMap timedRedirect = meta.getValueMap("timedRedirect"); redirectTimer = new Timer() { @Override public void run() { redirect(timedRedirect.getString("url")); } }; sessionExpirationInterval = timedRedirect.getInt("interval"); } } if (redirectTimer != null) { redirectTimer.schedule(1000 * sessionExpirationInterval); } // Process changes JsArray<ValueMap> changes = json.getJSValueMapArray("changes"); ArrayList<Paintable> updatedWidgets = new ArrayList<Paintable>(); relativeSizeChanges.clear(); componentCaptionSizeChanges.clear(); int length = changes.length(); for (int i = 0; i < length; i++) { try { final UIDL change = changes.get(i).cast(); final UIDL uidl = change.getChildUIDL(0); // TODO optimize final Paintable paintable = getPaintable(uidl.getId()); if (paintable != null) { paintable.updateFromUIDL(uidl, ApplicationConnection.this); // paintable may have changed during render to // another // implementation, use the new one for updated // widgets map updatedWidgets.add(idToPaintableDetail.get(uidl.getId()).getComponent()); } else { if (!uidl.getTag().equals(configuration.getEncodedWindowTag())) { VConsole.error("Received update for " + uidl.getTag() + ", but there is no such paintable (" + uidl.getId() + ") rendered."); } else { String pid = uidl.getId(); if (!idToPaintableDetail.containsKey(pid)) { registerPaintable(pid, view); } // VView does not call updateComponent so we // register any event listeners here ComponentDetail cd = idToPaintableDetail.get(pid); cd.registerEventListenersFromUIDL(uidl); // Finally allow VView to update itself view.updateFromUIDL(uidl, ApplicationConnection.this); } } } catch (final Throwable e) { VConsole.error(e); } } if (json.containsKey("dd")) { // response contains data for drag and drop service VDragAndDropManager.get().handleServerResponse(json.getValueMap("dd")); } // Check which widgets' size has been updated Set<Paintable> sizeUpdatedWidgets = new HashSet<Paintable>(); updatedWidgets.addAll(relativeSizeChanges); sizeUpdatedWidgets.addAll(componentCaptionSizeChanges); for (Paintable paintable : updatedWidgets) { ComponentDetail detail = idToPaintableDetail.get(getPid(paintable)); Widget widget = (Widget) paintable; Size oldSize = detail.getOffsetSize(); Size newSize = new Size(widget.getOffsetWidth(), widget.getOffsetHeight()); if (oldSize == null || !oldSize.equals(newSize)) { sizeUpdatedWidgets.add(paintable); detail.setOffsetSize(newSize); } } Util.componentSizeUpdated(sizeUpdatedWidgets); if (meta != null) { if (meta.containsKey("appError")) { ValueMap error = meta.getValueMap("appError"); String html = ""; if (error.containsKey("caption") && error.getString("caption") != null) { html += "<h1>" + error.getAsString("caption") + "</h1>"; } if (error.containsKey("message") && error.getString("message") != null) { html += "<p>" + error.getAsString("message") + "</p>"; } String url = null; if (error.containsKey("url")) { url = error.getString("url"); } if (html.length() != 0) { /* 45 min */ VNotification n = VNotification.createNotification(1000 * 60 * 45); n.addEventListener(new NotificationRedirect(url)); n.show(html, VNotification.CENTERED_TOP, VNotification.STYLE_SYSTEM); } else { redirect(url); } applicationRunning = false; } if (validatingLayouts) { VConsole.printLayoutProblems(meta, ApplicationConnection.this, zeroHeightComponents, zeroWidthComponents); zeroHeightComponents = null; zeroWidthComponents = null; validatingLayouts = false; } } if (repaintAll) { /* * idToPaintableDetail is already cleanded at the start of * the changeset handling, bypass cleanup. */ unregistryBag.clear(); } else { purgeUnregistryBag(); } // TODO build profiling for widget impl loading time final long prosessingTime = (new Date().getTime()) - start.getTime(); VConsole.log(" Processing time was " + String.valueOf(prosessingTime) + "ms for " + jsonText.length() + " characters of JSON"); VConsole.log("Referenced paintables: " + idToPaintableDetail.size()); endRequest(); } }; ApplicationConfiguration.runWhenWidgetsLoaded(c); }
From source file:com.vaadin.terminal.gwt.client.ui.VDragAndDropWrapper.java
License:Open Source License
public boolean html5DragDrop(VHtml5DragEvent event) { if (dropHandler == null || !currentlyValid) { return true; }/*from w ww . j a v a 2s .c o m*/ try { VTransferable transferable = vaadinDragEvent.getTransferable(); JsArrayString types = event.getTypes(); for (int i = 0; i < types.length(); i++) { String type = types.get(i); if (isAcceptedType(type)) { String data = event.getDataAsText(type); if (data != null) { transferable.setData(type, data); } } } int fileCount = event.getFileCount(); if (fileCount > 0) { transferable.setData("filecount", fileCount); for (int i = 0; i < fileCount; i++) { final int fileId = filecounter++; final VHtml5File file = event.getFile(i); transferable.setData("fi" + i, "" + fileId); transferable.setData("fn" + i, file.getName()); transferable.setData("ft" + i, file.getType()); transferable.setData("fs" + i, file.getSize()); queueFilePost(fileId, file); } } VDragAndDropManager.get().endDrag(); vaadinDragEvent = null; try { event.preventDefault(); event.stopPropagation(); } catch (Exception e) { // VConsole.log("IE9 fails"); } return false; } catch (Exception e) { GWT.getUncaughtExceptionHandler().onUncaughtException(e); return true; } }
From source file:com.vaadin.terminal.gwt.client.ui.VOrderedLayout.java
License:Open Source License
private double getExpandRatio(String pid) { if (expandRatioSum < 0) { expandRatioSum = 0;/*from ww w . j a v a 2 s . c om*/ JsArrayString keyArray = expandRatios.getKeyArray(); int length = keyArray.length(); for (int i = 0; i < length; i++) { expandRatioSum += expandRatios.getRawNumber(keyArray.get(i)); } if (expandRatioSum == 0) { // by default split equally among components defaultExpandRatio = 1.0 / widgetToComponentContainer.size(); } else { defaultExpandRatio = 0; } } if (expandRatios.containsKey(pid)) { return expandRatios.getRawNumber(pid) / expandRatioSum; } else { return defaultExpandRatio; } }
From source file:com.vaadin.v7.client.connectors.JavaScriptRendererConnector.java
License:Apache License
@Override protected Renderer<Object> createRenderer() { helper.ensureJavascriptInited();//from ww w . j a v a2s . com if (!hasFunction("render")) { throw new RuntimeException( "JavaScriptRenderer " + helper.getInitFunctionName() + " must have a function named 'render'"); } final boolean hasInit = hasFunction("init"); final boolean hasDestroy = hasFunction("destroy"); final boolean hasOnActivate = hasFunction("onActivate"); final boolean hasGetConsumedEvents = hasFunction("getConsumedEvents"); final boolean hasOnBrowserEvent = hasFunction("onBrowserEvent"); return new ComplexRenderer<Object>() { @Override public void render(RendererCellReference cell, Object data) { if (data instanceof JsonValue) { data = Util.json2jso((JsonValue) data); } render(helper.getConnectorWrapper(), getJsCell(cell), data); } private JavaScriptObject getJsCell(CellReference<?> cell) { updateCellReference(cellReferenceWrapper, cell); return cellReferenceWrapper; } public native void render(JavaScriptObject wrapper, JavaScriptObject cell, Object data) /*-{ wrapper.render(cell, data); }-*/; @Override public void init(RendererCellReference cell) { if (hasInit) { init(helper.getConnectorWrapper(), getJsCell(cell)); } } private native void init(JavaScriptObject wrapper, JavaScriptObject cell) /*-{ wrapper.init(cell); }-*/; private native void updateCellReference(JavaScriptObject cellWrapper, CellReference<?> target) /*-{ cellWrapper.target = target; }-*/; @Override public void destroy(RendererCellReference cell) { if (hasDestroy) { destory(helper.getConnectorWrapper(), getJsCell(cell)); } else { super.destroy(cell); } } private native void destory(JavaScriptObject wrapper, JavaScriptObject cell) /*-{ wrapper.destory(cell); }-*/; @Override public boolean onActivate(CellReference<?> cell) { if (hasOnActivate) { return onActivate(helper.getConnectorWrapper(), getJsCell(cell)); } else { return super.onActivate(cell); } } private native boolean onActivate(JavaScriptObject wrapper, JavaScriptObject cell) /*-{ return !!wrapper.onActivate(cell); }-*/; @Override public Collection<String> getConsumedEvents() { if (hasGetConsumedEvents) { JsArrayString events = getConsumedEvents(helper.getConnectorWrapper()); ArrayList<String> list = new ArrayList<String>(events.length()); for (int i = 0; i < events.length(); i++) { list.add(events.get(i)); } return list; } else { return super.getConsumedEvents(); } } private native JsArrayString getConsumedEvents(JavaScriptObject wrapper) /*-{ var rawEvents = wrapper.getConsumedEvents(); var events = []; for(var i = 0; i < rawEvents.length; i++) { events[i] = ""+rawEvents[i]; } return events; }-*/; @Override public boolean onBrowserEvent(CellReference<?> cell, NativeEvent event) { if (hasOnBrowserEvent) { return onBrowserEvent(helper.getConnectorWrapper(), getJsCell(cell), event); } else { return super.onBrowserEvent(cell, event); } } private native boolean onBrowserEvent(JavaScriptObject wrapper, JavaScriptObject cell, NativeEvent event) /*-{ return !!wrapper.onBrowserEvent(cell, event); }-*/; }; }
From source file:com.xpn.xwiki.wysiwyg.client.plugin.link.LinkConfig.java
License:Open Source License
/** * Fills this object with data from the passed JSON representation. * /*from w w w. ja v a 2 s . c o m*/ * @param json the JSON representation of this image config object. */ public void fromJSON(String json) { JavaScriptObject jsObj = JavaScriptObject.fromJson(json); setReference((String) jsObj.get("reference")); setUrl((String) jsObj.get("url")); setLabel((String) jsObj.get("label")); setLabelText((String) jsObj.get("labeltext")); setReadOnlyLabel( jsObj.get("readonlylabel") != null ? Boolean.parseBoolean((String) jsObj.get("readonlylabel")) : false); setType(jsObj.get("type") != null ? LinkType.valueOf((String) jsObj.get("type")) : null); // load the link parameters from the remaining parameters List<String> processedKeys = Arrays.asList("reference", "url", "label", "labeltext", "readonlylabel", "type"); JsArrayString keys = jsObj.getKeys(); for (int i = 0; i < keys.length(); i++) { if (!processedKeys.contains(keys.get(i))) { // add it to the parameters parameters.put(keys.get(i).substring(2), jsObj.get(keys.get(i)).toString()); } } }
From source file:edu.caltech.ipac.firefly.visualize.WebPlotResultParser.java
public static WebPlotResult convertItem(PlotResultOverlay res) { WebPlotResult retval;//w ww. j a va 2 s .c o m if (res.isSuccess()) { retval = new WebPlotResult(); String stateStr = res.getResult(WebPlotResult.PLOT_STATE); if (stateStr != null) { PlotState state = PlotState.parse(stateStr); retval.putResult(WebPlotResult.PLOT_STATE, state); } String imagesStr = res.getResult(WebPlotResult.PLOT_IMAGES); if (imagesStr != null) { PlotImages images = PlotImages.parse(imagesStr); retval.putResult(WebPlotResult.PLOT_IMAGES, images); } String wpInitStr = res.getResult(WebPlotResult.INSERT_BAND_INIT); if (wpInitStr != null) { InsertBandInitializer ibInit = InsertBandInitializer.parse(wpInitStr); retval.putResult(WebPlotResult.INSERT_BAND_INIT, ibInit); } JsArrayString creatorAry = res.getStringArrayResult(WebPlotResult.PLOT_CREATE); // String wpCreateStr= res.getResult(WebPlotResult.PLOT_CREATE); if (creatorAry != null) { String ary[] = new String[creatorAry.length()]; for (int i = 0; (i < ary.length); i++) ary[i] = creatorAry.get(i); List<WebPlotInitializer> wpInitList = new ArrayList<WebPlotInitializer>(ary.length); for (String s : ary) { WebPlotInitializer wpInit = WebPlotInitializer.parse(s); if (wpInit != null) wpInitList.add(wpInit); } CreatorResults cr = new CreatorResults( wpInitList.toArray(new WebPlotInitializer[wpInitList.size()])); retval.putResult(WebPlotResult.PLOT_CREATE, cr); } checkForStringResult(WebPlotResult.STRING, retval, res); checkForStringResult(WebPlotResult.DATA_HIST_IMAGE_URL, retval, res); checkForStringResult(WebPlotResult.CBAR_IMAGE_URL, retval, res); checkForStringResult(WebPlotResult.IMAGE_FILE_NAME, retval, res); checkForStringResult(WebPlotResult.REGION_FILE_NAME, retval, res); checkForStringResult(WebPlotResult.REGION_DATA, retval, res); checkForStringResult(WebPlotResult.REGION_ERRORS, retval, res); checkForStringResult(WebPlotResult.TITLE, retval, res); checkForIntAryResult(WebPlotResult.DATA_HISTOGRAM, retval, res); checkForDoubleAryResult(WebPlotResult.DATA_BIN_MEAN_ARRAY, retval, res); String biStr = res.getResult(WebPlotResult.BAND_INFO); if (biStr != null) { BandInfo bi = BandInfo.parse(biStr); retval.putResult(WebPlotResult.BAND_INFO, bi); } } else { retval = WebPlotResult.makeFail(res.getBriefFailReason(), res.getUserFailReason(), res.getDetailFailReason(), res.getProgressKey(), null); } return retval; }