Skip to content

Instantly share code, notes, and snippets.

@ArloL
Created March 17, 2014 14:50
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ArloL/9600682 to your computer and use it in GitHub Desktop.
Save ArloL/9600682 to your computer and use it in GitHub Desktop.
import org.gwtbootstrap3.client.ui.DataGrid;
import com.google.gwt.core.client.GWT;
import com.google.gwt.resources.client.ImageResource;
import com.google.gwt.user.client.ui.Widget;
import com.google.gwt.view.client.ProvidesKey;
public class BootstrapDataGrid<T> extends DataGrid<T> {
private static final int DEFAULT_PAGESIZE = 50;
private static DataGrid.Resources defaultResources;
private static class ResourcesAdapter implements DataGrid.Resources {
private final DataGrid.Resources resources;
private final StyleAdapter style;
public ResourcesAdapter(DataGrid.Resources resources) {
this.resources = resources;
this.style = new StyleAdapter();
}
@Override
public ImageResource dataGridLoading() {
return resources.dataGridLoading();
}
@Override
public ImageResource dataGridSortAscending() {
return resources.dataGridSortAscending();
}
@Override
public ImageResource dataGridSortDescending() {
return resources.dataGridSortDescending();
}
@Override
public DataGrid.Style dataGridStyle() {
return style;
}
}
private static class StyleAdapter implements DataGrid.Style {
@Override
public boolean ensureInjected() {
return true;
}
@Override
public String getText() {
return "";
}
@Override
public String getName() {
return "";
}
@Override
public String dataGridCell() {
return "";
}
@Override
public String dataGridEvenRow() {
return "";
}
@Override
public String dataGridEvenRowCell() {
return "";
}
@Override
public String dataGridFirstColumn() {
return "";
}
@Override
public String dataGridFirstColumnFooter() {
return "";
}
@Override
public String dataGridFirstColumnHeader() {
return "";
}
@Override
public String dataGridFooter() {
return "";
}
@Override
public String dataGridHeader() {
return "";
}
@Override
public String dataGridHoveredRow() {
return "info";
}
@Override
public String dataGridHoveredRowCell() {
return "info";
}
@Override
public String dataGridKeyboardSelectedCell() {
return "info";
}
@Override
public String dataGridKeyboardSelectedRow() {
return "info";
}
@Override
public String dataGridKeyboardSelectedRowCell() {
return "info";
}
@Override
public String dataGridLastColumn() {
return "";
}
@Override
public String dataGridLastColumnFooter() {
return "";
}
@Override
public String dataGridLastColumnHeader() {
return "";
}
@Override
public String dataGridOddRow() {
return "";
}
@Override
public String dataGridOddRowCell() {
return "";
}
@Override
public String dataGridSelectedRow() {
return "";
}
@Override
public String dataGridSelectedRowCell() {
return "";
}
@Override
public String dataGridSortableHeader() {
return "";
}
@Override
public String dataGridSortedHeaderAscending() {
return "";
}
@Override
public String dataGridSortedHeaderDescending() {
return "";
}
@Override
public String dataGridWidget() {
return "";
}
}
public BootstrapDataGrid() {
this(DEFAULT_PAGESIZE);
}
public BootstrapDataGrid(final int pageSize) {
this(pageSize, getDefaultResources());
}
public BootstrapDataGrid(final int pageSize,
final ProvidesKey<T> keyProvider) {
super(pageSize, getDefaultResources(), keyProvider);
}
public BootstrapDataGrid(final int pageSize,
final DataGrid.Resources resources) {
super(pageSize, resources, null);
}
public BootstrapDataGrid(final int pageSize, final Resources resources,
final ProvidesKey<T> keyProvider, final Widget loadingIndicator) {
super(pageSize, resources, keyProvider, loadingIndicator);
}
public BootstrapDataGrid(final ProvidesKey<T> keyProvider) {
this(DEFAULT_PAGESIZE, keyProvider);
}
private static DataGrid.Resources getDefaultResources() {
if (defaultResources == null) {
DataGrid.Resources dataGridResources = GWT.create(Resources.class);
defaultResources = new ResourcesAdapter(dataGridResources);
}
return defaultResources;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment