Переглянути джерело

Move Grid related renderer to com.vaadin.client.connectors (#13334)

Change-Id: Ia2b74c6d6b99ef9ec5aa0d41956c55ebd8a2615a
tags/7.4.0.beta1
Henrik Paul 9 роки тому
джерело
коміт
a50e590b9d

+ 1
- 1
client-compiler/src/com/vaadin/server/widgetsetutils/metadata/ConnectorBundle.java Переглянути файл

@@ -43,8 +43,8 @@ import com.vaadin.client.ApplicationConnection;
import com.vaadin.client.ComponentConnector;
import com.vaadin.client.ServerConnector;
import com.vaadin.client.communication.JSONSerializer;
import com.vaadin.client.connectors.AbstractRendererConnector;
import com.vaadin.client.ui.UnknownComponentConnector;
import com.vaadin.client.ui.grid.renderers.AbstractRendererConnector;
import com.vaadin.shared.communication.ClientRpc;
import com.vaadin.shared.communication.ServerRpc;
import com.vaadin.shared.ui.Connect;

+ 1
- 1
client-compiler/src/com/vaadin/server/widgetsetutils/metadata/RendererVisitor.java Переглянути файл

@@ -22,7 +22,7 @@ import com.google.gwt.core.ext.typeinfo.JClassType;
import com.google.gwt.core.ext.typeinfo.JMethod;
import com.google.gwt.core.ext.typeinfo.JParameterizedType;
import com.google.gwt.core.ext.typeinfo.JType;
import com.vaadin.client.ui.grid.renderers.AbstractRendererConnector;
import com.vaadin.client.connectors.AbstractRendererConnector;

/**
* Generates type data for renderer connectors.

client/src/com/vaadin/client/ui/grid/renderers/AbstractRendererConnector.java → client/src/com/vaadin/client/connectors/AbstractRendererConnector.java Переглянути файл

@@ -13,7 +13,7 @@
* License for the specific language governing permissions and limitations under
* the License.
*/
package com.vaadin.client.ui.grid.renderers;
package com.vaadin.client.connectors;

import com.google.gwt.json.client.JSONValue;
import com.vaadin.client.ServerConnector;
@@ -24,7 +24,6 @@ import com.vaadin.client.metadata.NoDataException;
import com.vaadin.client.metadata.Type;
import com.vaadin.client.metadata.TypeData;
import com.vaadin.client.metadata.TypeDataStore;
import com.vaadin.client.ui.grid.GridConnector;
import com.vaadin.client.ui.grid.Renderer;

/**
@@ -88,12 +87,12 @@ public abstract class AbstractRendererConnector<T> extends
* Creates a new Renderer instance associated with this renderer connector.
* <p>
* You should typically not override this method since the framework by
* default generates an implementation that uses {@link GWT#create(Class)}
* to create a renderer of the same type as returned by the most specific
* override of {@link #getRenderer()}. If you do override the method, you
* can't call <code>super.createRenderer()</code> since the metadata needed
* for that implementation is not generated if there's an override of the
* method.
* default generates an implementation that uses
* {@link com.google.gwt.core.client.GWT#create(Class)} to create a renderer
* of the same type as returned by the most specific override of
* {@link #getRenderer()}. If you do override the method, you can't call
* <code>super.createRenderer()</code> since the metadata needed for that
* implementation is not generated if there's an override of the method.
*
* @return a new renderer to be used with this connector
*/

client/src/com/vaadin/client/ui/grid/renderers/ButtonRendererConnector.java → client/src/com/vaadin/client/connectors/ButtonRendererConnector.java Переглянути файл

@@ -13,10 +13,11 @@
* License for the specific language governing permissions and limitations under
* the License.
*/
package com.vaadin.client.ui.grid.renderers;
package com.vaadin.client.connectors;

import com.google.gwt.json.client.JSONObject;
import com.google.web.bindery.event.shared.HandlerRegistration;
import com.vaadin.client.ui.grid.renderers.ButtonRenderer;
import com.vaadin.client.ui.grid.renderers.ClickableRenderer.RendererClickHandler;
import com.vaadin.shared.ui.Connect;


client/src/com/vaadin/client/ui/grid/renderers/ClickableRendererConnector.java → client/src/com/vaadin/client/connectors/ClickableRendererConnector.java Переглянути файл

@@ -13,7 +13,7 @@
* License for the specific language governing permissions and limitations under
* the License.
*/
package com.vaadin.client.ui.grid.renderers;
package com.vaadin.client.connectors;

import com.google.gwt.json.client.JSONObject;
import com.google.web.bindery.event.shared.HandlerRegistration;

client/src/com/vaadin/client/ui/grid/renderers/DateRendererConnector.java → client/src/com/vaadin/client/connectors/DateRendererConnector.java Переглянути файл

@@ -13,7 +13,7 @@
* License for the specific language governing permissions and limitations under
* the License.
*/
package com.vaadin.client.ui.grid.renderers;
package com.vaadin.client.connectors;

import com.vaadin.shared.ui.Connect;


client/src/com/vaadin/client/ui/grid/GridConnector.java → client/src/com/vaadin/client/connectors/GridConnector.java Переглянути файл

@@ -14,7 +14,7 @@
* the License.
*/

package com.vaadin.client.ui.grid;
package com.vaadin.client.connectors;

import java.util.ArrayList;
import java.util.Arrays;
@@ -36,17 +36,20 @@ import com.vaadin.client.ComponentConnector;
import com.vaadin.client.ConnectorHierarchyChangeEvent;
import com.vaadin.client.annotations.OnStateChange;
import com.vaadin.client.communication.StateChangeEvent;
import com.vaadin.client.connectors.RpcDataSourceConnector.RpcDataSource;
import com.vaadin.client.data.DataSource.RowHandle;
import com.vaadin.client.data.RpcDataSourceConnector.RpcDataSource;
import com.vaadin.client.ui.AbstractFieldConnector;
import com.vaadin.client.ui.AbstractHasComponentsConnector;
import com.vaadin.client.ui.SimpleManagedLayout;
import com.vaadin.client.ui.grid.EditorRowHandler;
import com.vaadin.client.ui.grid.Grid;
import com.vaadin.client.ui.grid.Grid.CellStyleGenerator;
import com.vaadin.client.ui.grid.Grid.FooterCell;
import com.vaadin.client.ui.grid.Grid.FooterRow;
import com.vaadin.client.ui.grid.Grid.HeaderCell;
import com.vaadin.client.ui.grid.Grid.HeaderRow;
import com.vaadin.client.ui.grid.renderers.AbstractRendererConnector;
import com.vaadin.client.ui.grid.GridColumn;
import com.vaadin.client.ui.grid.Renderer;
import com.vaadin.client.ui.grid.selection.AbstractRowHandleSelectionModel;
import com.vaadin.client.ui.grid.selection.SelectionChangeEvent;
import com.vaadin.client.ui.grid.selection.SelectionChangeHandler;
@@ -799,7 +802,7 @@ public class GridConnector extends AbstractHasComponentsConnector implements
*/
private native void selectByHandle(RowHandle<JSONObject> handle)
/*-{
var model = this.@com.vaadin.client.ui.grid.GridConnector::selectionModel;
var model = this.@com.vaadin.client.connectors.GridConnector::selectionModel;
model.@com.vaadin.client.ui.grid.selection.AbstractRowHandleSelectionModel::selectByHandle(*)(handle);
}-*/;

@@ -809,7 +812,7 @@ public class GridConnector extends AbstractHasComponentsConnector implements
*/
private native void deselectByHandle(RowHandle<JSONObject> handle)
/*-{
var model = this.@com.vaadin.client.ui.grid.GridConnector::selectionModel;
var model = this.@com.vaadin.client.connectors.GridConnector::selectionModel;
model.@com.vaadin.client.ui.grid.selection.AbstractRowHandleSelectionModel::deselectByHandle(*)(handle);
}-*/;


client/src/com/vaadin/client/ui/grid/renderers/ImageRendererConnector.java → client/src/com/vaadin/client/connectors/ImageRendererConnector.java Переглянути файл

@@ -13,7 +13,7 @@
* License for the specific language governing permissions and limitations under
* the License.
*/
package com.vaadin.client.ui.grid.renderers;
package com.vaadin.client.connectors;

import com.google.gwt.json.client.JSONObject;
import com.google.gwt.json.client.JSONValue;
@@ -21,6 +21,7 @@ import com.google.web.bindery.event.shared.HandlerRegistration;
import com.vaadin.client.communication.JsonDecoder;
import com.vaadin.client.metadata.TypeDataStore;
import com.vaadin.client.ui.grid.renderers.ClickableRenderer.RendererClickHandler;
import com.vaadin.client.ui.grid.renderers.ImageRenderer;
import com.vaadin.shared.communication.URLReference;
import com.vaadin.shared.ui.Connect;


client/src/com/vaadin/client/ui/grid/renderers/NumberRendererConnector.java → client/src/com/vaadin/client/connectors/NumberRendererConnector.java Переглянути файл

@@ -13,7 +13,7 @@
* License for the specific language governing permissions and limitations under
* the License.
*/
package com.vaadin.client.ui.grid.renderers;
package com.vaadin.client.connectors;

import com.vaadin.shared.ui.Connect;


client/src/com/vaadin/client/ui/grid/renderers/ProgressBarRendererConnector.java → client/src/com/vaadin/client/connectors/ProgressBarRendererConnector.java Переглянути файл

@@ -13,8 +13,9 @@
* License for the specific language governing permissions and limitations under
* the License.
*/
package com.vaadin.client.ui.grid.renderers;
package com.vaadin.client.connectors;

import com.vaadin.client.ui.grid.renderers.ProgressBarRenderer;
import com.vaadin.shared.ui.Connect;

/**

client/src/com/vaadin/client/data/RpcDataSourceConnector.java → client/src/com/vaadin/client/connectors/RpcDataSourceConnector.java Переглянути файл

@@ -14,7 +14,7 @@
* the License.
*/

package com.vaadin.client.data;
package com.vaadin.client.connectors;

import java.util.ArrayList;

@@ -24,8 +24,8 @@ import com.google.gwt.json.client.JSONParser;
import com.google.gwt.json.client.JSONString;
import com.google.gwt.json.client.JSONValue;
import com.vaadin.client.ServerConnector;
import com.vaadin.client.data.AbstractRemoteDataSource;
import com.vaadin.client.extensions.AbstractExtensionConnector;
import com.vaadin.client.ui.grid.GridConnector;
import com.vaadin.shared.data.DataProviderRpc;
import com.vaadin.shared.data.DataProviderState;
import com.vaadin.shared.data.DataRequestRpc;
@@ -47,6 +47,45 @@ public class RpcDataSourceConnector extends AbstractExtensionConnector {

public class RpcDataSource extends AbstractRemoteDataSource<JSONObject> {

protected RpcDataSource() {
registerRpc(DataProviderRpc.class, new DataProviderRpc() {
@Override
public void setRowData(int firstRow, String rowsJson) {
JSONValue parsedJson = JSONParser.parseStrict(rowsJson);
JSONArray rowArray = parsedJson.isArray();
assert rowArray != null : "Was unable to parse JSON into an array: "
+ parsedJson;

ArrayList<JSONObject> rows = new ArrayList<JSONObject>(
rowArray.size());
for (int i = 0; i < rowArray.size(); i++) {
JSONValue rowValue = rowArray.get(i);
JSONObject rowObject = rowValue.isObject();
assert rowObject != null : "Was unable to parse JSON into an object: "
+ rowValue;
rows.add(rowObject);
}

dataSource.setRowData(firstRow, rows);
}

@Override
public void removeRowData(int firstRow, int count) {
dataSource.removeRowData(firstRow, count);
}

@Override
public void insertRowData(int firstRow, int count) {
dataSource.insertRowData(firstRow, count);
}

@Override
public void resetDataAndSize(int size) {
dataSource.resetDataAndSize(size);
}
});
}

private DataRequestRpc rpcProxy = getRpcProxy(DataRequestRpc.class);

@Override
@@ -106,43 +145,6 @@ public class RpcDataSourceConnector extends AbstractExtensionConnector {
@Override
protected void extend(ServerConnector target) {
((GridConnector) target).setDataSource(dataSource);

registerRpc(DataProviderRpc.class, new DataProviderRpc() {
@Override
public void setRowData(int firstRow, String rowsJson) {
JSONValue parsedJson = JSONParser.parseStrict(rowsJson);
JSONArray rowArray = parsedJson.isArray();
assert rowArray != null : "Was unable to parse JSON into an array: "
+ parsedJson;

ArrayList<JSONObject> rows = new ArrayList<JSONObject>(rowArray
.size());
for (int i = 0; i < rowArray.size(); i++) {
JSONValue rowValue = rowArray.get(i);
JSONObject rowObject = rowValue.isObject();
assert rowObject != null : "Was unable to parse JSON into an object: "
+ rowValue;
rows.add(rowObject);
}

dataSource.setRowData(firstRow, rows);
}

@Override
public void removeRowData(int firstRow, int count) {
dataSource.removeRowData(firstRow, count);
}

@Override
public void insertRowData(int firstRow, int count) {
dataSource.insertRowData(firstRow, count);
}

@Override
public void resetDataAndSize(int size) {
dataSource.resetDataAndSize(size);
}
});
}

@Override

client/src/com/vaadin/client/ui/grid/renderers/TextRendererConnector.java → client/src/com/vaadin/client/connectors/TextRendererConnector.java Переглянути файл

@@ -13,8 +13,9 @@
* License for the specific language governing permissions and limitations under
* the License.
*/
package com.vaadin.client.ui.grid.renderers;
package com.vaadin.client.connectors;

import com.vaadin.client.ui.grid.renderers.TextRenderer;
import com.vaadin.shared.ui.Connect;

/**

client/src/com/vaadin/client/ui/grid/renderers/UnsafeHtmlRendererConnector.java → client/src/com/vaadin/client/connectors/UnsafeHtmlRendererConnector.java Переглянути файл

@@ -13,7 +13,7 @@
* License for the specific language governing permissions and limitations under
* the License.
*/
package com.vaadin.client.ui.grid.renderers;
package com.vaadin.client.connectors;

import com.vaadin.client.ui.grid.FlyweightCell;
import com.vaadin.client.ui.grid.Renderer;

+ 1
- 1
client/src/com/vaadin/client/data/AbstractRemoteDataSource.java Переглянути файл

@@ -76,7 +76,7 @@ public abstract class AbstractRemoteDataSource<T> implements DataSource<T> {
}
}

protected boolean isPinned() {
public boolean isPinned() {
return pinnedRows.containsKey(key);
}


+ 1
- 1
uitest/src/com/vaadin/tests/widgetset/client/grid/IntArrayRendererConnector.java Переглянути файл

@@ -15,9 +15,9 @@
*/
package com.vaadin.tests.widgetset.client.grid;

import com.vaadin.client.connectors.AbstractRendererConnector;
import com.vaadin.client.ui.grid.FlyweightCell;
import com.vaadin.client.ui.grid.Renderer;
import com.vaadin.client.ui.grid.renderers.AbstractRendererConnector;
import com.vaadin.shared.ui.Connect;

@Connect(com.vaadin.tests.components.grid.IntArrayRenderer.class)

+ 1
- 1
uitest/src/com/vaadin/tests/widgetset/client/grid/RowAwareRendererConnector.java Переглянути файл

@@ -22,10 +22,10 @@ import com.google.gwt.dom.client.BrowserEvents;
import com.google.gwt.dom.client.DivElement;
import com.google.gwt.dom.client.NativeEvent;
import com.google.gwt.user.client.DOM;
import com.vaadin.client.connectors.AbstractRendererConnector;
import com.vaadin.client.ui.grid.Cell;
import com.vaadin.client.ui.grid.FlyweightCell;
import com.vaadin.client.ui.grid.Renderer;
import com.vaadin.client.ui.grid.renderers.AbstractRendererConnector;
import com.vaadin.client.ui.grid.renderers.ComplexRenderer;
import com.vaadin.shared.communication.ServerRpc;
import com.vaadin.shared.ui.Connect;

Завантаження…
Відмінити
Зберегти