List of usage examples for com.google.gwt.cell.client SelectionCell SelectionCell
public SelectionCell(List<String> options)
From source file:com.google.gwt.sample.showcase.client.content.cell.CwCellSampler.java
License:Apache License
/** * Initialize this example.//from w w w. j a v a2 s . com */ @ShowcaseSource @Override public Widget onInitialize() { Images images = GWT.create(Images.class); // Create the table. editableCells = new ArrayList<AbstractEditableCell<?, ?>>(); contactList = new DataGrid<ContactInfo>(25, ContactInfo.KEY_PROVIDER); contactList.setMinimumTableWidth(140, Unit.EM); ContactDatabase.get().addDataDisplay(contactList); // CheckboxCell. final Category[] categories = ContactDatabase.get().queryCategories(); addColumn(new CheckboxCell(), "Checkbox", new GetValue<Boolean>() { @Override public Boolean getValue(ContactInfo contact) { // Checkbox indicates that the contact is a relative. // Index 0 = Family. return contact.getCategory() == categories[0]; } }, new FieldUpdater<ContactInfo, Boolean>() { @Override public void update(int index, ContactInfo object, Boolean value) { if (value) { // If a relative, use the Family Category. pendingChanges.add(new CategoryChange(object, categories[0])); } else { // If not a relative, use the Contacts Category. pendingChanges.add(new CategoryChange(object, categories[categories.length - 1])); } } }); // TextCell. addColumn(new TextCell(), "Text", new GetValue<String>() { @Override public String getValue(ContactInfo contact) { return contact.getFullName(); } }, null); // EditTextCell. Column<ContactInfo, String> editTextColumn = addColumn(new EditTextCell(), "EditText", new GetValue<String>() { @Override public String getValue(ContactInfo contact) { return contact.getFirstName(); } }, new FieldUpdater<ContactInfo, String>() { @Override public void update(int index, ContactInfo object, String value) { pendingChanges.add(new FirstNameChange(object, value)); } }); contactList.setColumnWidth(editTextColumn, 16.0, Unit.EM); // TextInputCell. Column<ContactInfo, String> textInputColumn = addColumn(new TextInputCell(), "TextInput", new GetValue<String>() { @Override public String getValue(ContactInfo contact) { return contact.getLastName(); } }, new FieldUpdater<ContactInfo, String>() { @Override public void update(int index, ContactInfo object, String value) { pendingChanges.add(new LastNameChange(object, value)); } }); contactList.setColumnWidth(textInputColumn, 16.0, Unit.EM); // ClickableTextCell. addColumn(new ClickableTextCell(), "ClickableText", new GetValue<String>() { @Override public String getValue(ContactInfo contact) { return "Click " + contact.getFirstName(); } }, new FieldUpdater<ContactInfo, String>() { @Override public void update(int index, ContactInfo object, String value) { Window.alert("You clicked " + object.getFullName()); } }); // ActionCell. addColumn(new ActionCell<ContactInfo>("Click Me", new ActionCell.Delegate<ContactInfo>() { @Override public void execute(ContactInfo contact) { Window.alert("You clicked " + contact.getFullName()); } }), "Action", new GetValue<ContactInfo>() { @Override public ContactInfo getValue(ContactInfo contact) { return contact; } }, null); // ButtonCell. addColumn(new ButtonCell(), "Button", new GetValue<String>() { @Override public String getValue(ContactInfo contact) { return "Click " + contact.getFirstName(); } }, new FieldUpdater<ContactInfo, String>() { @Override public void update(int index, ContactInfo object, String value) { Window.alert("You clicked " + object.getFullName()); } }); // DateCell. DateTimeFormat dateFormat = DateTimeFormat.getFormat(PredefinedFormat.DATE_MEDIUM); addColumn(new DateCell(dateFormat), "Date", new GetValue<Date>() { @Override public Date getValue(ContactInfo contact) { return contact.getBirthday(); } }, null); // DatePickerCell. addColumn(new DatePickerCell(dateFormat), "DatePicker", new GetValue<Date>() { @Override public Date getValue(ContactInfo contact) { return contact.getBirthday(); } }, new FieldUpdater<ContactInfo, Date>() { @Override public void update(int index, ContactInfo object, Date value) { pendingChanges.add(new BirthdayChange(object, value)); } }); // NumberCell. Column<ContactInfo, Number> numberColumn = addColumn(new NumberCell(), "Number", new GetValue<Number>() { @Override public Number getValue(ContactInfo contact) { return contact.getAge(); } }, null); numberColumn.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_LOCALE_END); // IconCellDecorator. addColumn(new IconCellDecorator<String>(images.contactsGroup(), new TextCell()), "Icon", new GetValue<String>() { @Override public String getValue(ContactInfo contact) { return contact.getCategory().getDisplayName(); } }, null); // ImageCell. addColumn(new ImageCell(), "Image", new GetValue<String>() { @Override public String getValue(ContactInfo contact) { return "contact.jpg"; } }, null); // SelectionCell. List<String> options = new ArrayList<String>(); for (Category category : categories) { options.add(category.getDisplayName()); } addColumn(new SelectionCell(options), "Selection", new GetValue<String>() { @Override public String getValue(ContactInfo contact) { return contact.getCategory().getDisplayName(); } }, new FieldUpdater<ContactInfo, String>() { @Override public void update(int index, ContactInfo object, String value) { for (Category category : categories) { if (category.getDisplayName().equals(value)) { pendingChanges.add(new CategoryChange(object, category)); break; } } } }); // Create the UiBinder. Binder uiBinder = GWT.create(Binder.class); Widget widget = uiBinder.createAndBindUi(this); // Add handlers to redraw or refresh the table. redrawButton.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { contactList.redraw(); } }); commitButton.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { // Commit the changes. for (PendingChange<?> pendingChange : pendingChanges) { pendingChange.commit(); } pendingChanges.clear(); // Push the changes to the views. ContactDatabase.get().refreshDisplays(); } }); return widget; }
From source file:com.google.gwt.sample.showcase.client.content.cell.CwCellTable.java
License:Apache License
/** * Add the columns to the table.//from w w w. j a va 2s . c o m */ @ShowcaseSource private void initTableColumns(final SelectionModel<ContactInfo> selectionModel, ListHandler<ContactInfo> sortHandler) { // Checkbox column. This table will uses a checkbox column for selection. // Alternatively, you can call cellTable.setSelectionEnabled(true) to enable // mouse selection. Column<ContactInfo, Boolean> checkColumn = new Column<ContactInfo, Boolean>(new CheckboxCell(true, false)) { @Override public Boolean getValue(ContactInfo object) { // Get the value from the selection model. return selectionModel.isSelected(object); } }; cellTable.addColumn(checkColumn, SafeHtmlUtils.fromSafeConstant("<br/>")); cellTable.setColumnWidth(checkColumn, 40, Unit.PX); // First name. Column<ContactInfo, String> firstNameColumn = new Column<ContactInfo, String>(new EditTextCell()) { @Override public String getValue(ContactInfo object) { return object.getFirstName(); } }; firstNameColumn.setSortable(true); sortHandler.setComparator(firstNameColumn, new Comparator<ContactInfo>() { public int compare(ContactInfo o1, ContactInfo o2) { return o1.getFirstName().compareTo(o2.getFirstName()); } }); cellTable.addColumn(firstNameColumn, constants.cwCellTableColumnFirstName()); firstNameColumn.setFieldUpdater(new FieldUpdater<ContactInfo, String>() { public void update(int index, ContactInfo object, String value) { // Called when the user changes the value. object.setFirstName(value); ContactDatabase.get().refreshDisplays(); } }); cellTable.setColumnWidth(firstNameColumn, 20, Unit.PCT); // Last name. Column<ContactInfo, String> lastNameColumn = new Column<ContactInfo, String>(new EditTextCell()) { @Override public String getValue(ContactInfo object) { return object.getLastName(); } }; lastNameColumn.setSortable(true); sortHandler.setComparator(lastNameColumn, new Comparator<ContactInfo>() { public int compare(ContactInfo o1, ContactInfo o2) { return o1.getLastName().compareTo(o2.getLastName()); } }); cellTable.addColumn(lastNameColumn, constants.cwCellTableColumnLastName()); lastNameColumn.setFieldUpdater(new FieldUpdater<ContactInfo, String>() { public void update(int index, ContactInfo object, String value) { // Called when the user changes the value. object.setLastName(value); ContactDatabase.get().refreshDisplays(); } }); cellTable.setColumnWidth(lastNameColumn, 20, Unit.PCT); // Category. final Category[] categories = ContactDatabase.get().queryCategories(); List<String> categoryNames = new ArrayList<String>(); for (Category category : categories) { categoryNames.add(category.getDisplayName()); } SelectionCell categoryCell = new SelectionCell(categoryNames); Column<ContactInfo, String> categoryColumn = new Column<ContactInfo, String>(categoryCell) { @Override public String getValue(ContactInfo object) { return object.getCategory().getDisplayName(); } }; cellTable.addColumn(categoryColumn, constants.cwCellTableColumnCategory()); categoryColumn.setFieldUpdater(new FieldUpdater<ContactInfo, String>() { public void update(int index, ContactInfo object, String value) { for (Category category : categories) { if (category.getDisplayName().equals(value)) { object.setCategory(category); } } ContactDatabase.get().refreshDisplays(); } }); cellTable.setColumnWidth(categoryColumn, 130, Unit.PX); // Address. Column<ContactInfo, String> addressColumn = new Column<ContactInfo, String>(new TextCell()) { @Override public String getValue(ContactInfo object) { return object.getAddress(); } }; addressColumn.setSortable(true); addressColumn.setDefaultSortAscending(false); sortHandler.setComparator(addressColumn, new Comparator<ContactInfo>() { public int compare(ContactInfo o1, ContactInfo o2) { return o1.getAddress().compareTo(o2.getAddress()); } }); cellTable.addColumn(addressColumn, constants.cwCellTableColumnAddress()); cellTable.setColumnWidth(addressColumn, 60, Unit.PCT); }
From source file:com.google.gwt.sample.showcase.client.content.cell.CwDataGrid.java
License:Apache License
/** * Add the columns to the table./*from w w w .jav a 2s . c o m*/ */ @ShowcaseSource private void initTableColumns(final SelectionModel<ContactInfo> selectionModel, ListHandler<ContactInfo> sortHandler) { // Checkbox column. This table will uses a checkbox column for selection. // Alternatively, you can call dataGrid.setSelectionEnabled(true) to enable // mouse selection. Column<ContactInfo, Boolean> checkColumn = new Column<ContactInfo, Boolean>(new CheckboxCell(true, false)) { @Override public Boolean getValue(ContactInfo object) { // Get the value from the selection model. return selectionModel.isSelected(object); } }; dataGrid.addColumn(checkColumn, SafeHtmlUtils.fromSafeConstant("<br/>")); dataGrid.setColumnWidth(checkColumn, 40, Unit.PX); // First name. Column<ContactInfo, String> firstNameColumn = new Column<ContactInfo, String>(new EditTextCell()) { @Override public String getValue(ContactInfo object) { return object.getFirstName(); } }; firstNameColumn.setSortable(true); sortHandler.setComparator(firstNameColumn, new Comparator<ContactInfo>() { public int compare(ContactInfo o1, ContactInfo o2) { return o1.getFirstName().compareTo(o2.getFirstName()); } }); dataGrid.addColumn(firstNameColumn, constants.cwDataGridColumnFirstName()); firstNameColumn.setFieldUpdater(new FieldUpdater<ContactInfo, String>() { public void update(int index, ContactInfo object, String value) { // Called when the user changes the value. object.setFirstName(value); ContactDatabase.get().refreshDisplays(); } }); dataGrid.setColumnWidth(firstNameColumn, 20, Unit.PCT); // Last name. Column<ContactInfo, String> lastNameColumn = new Column<ContactInfo, String>(new EditTextCell()) { @Override public String getValue(ContactInfo object) { return object.getLastName(); } }; lastNameColumn.setSortable(true); sortHandler.setComparator(lastNameColumn, new Comparator<ContactInfo>() { public int compare(ContactInfo o1, ContactInfo o2) { return o1.getLastName().compareTo(o2.getLastName()); } }); dataGrid.addColumn(lastNameColumn, constants.cwDataGridColumnLastName()); lastNameColumn.setFieldUpdater(new FieldUpdater<ContactInfo, String>() { public void update(int index, ContactInfo object, String value) { // Called when the user changes the value. object.setLastName(value); ContactDatabase.get().refreshDisplays(); } }); dataGrid.setColumnWidth(lastNameColumn, 20, Unit.PCT); // Age. Column<ContactInfo, Number> ageColumn = new Column<ContactInfo, Number>(new NumberCell()) { @Override public Number getValue(ContactInfo object) { return object.getAge(); } }; lastNameColumn.setSortable(true); sortHandler.setComparator(ageColumn, new Comparator<ContactInfo>() { public int compare(ContactInfo o1, ContactInfo o2) { return o1.getBirthday().compareTo(o2.getBirthday()); } }); Header<String> ageFooter = new Header<String>(new TextCell()) { @Override public String getValue() { List<ContactInfo> items = dataGrid.getVisibleItems(); if (items.size() == 0) { return ""; } else { int totalAge = 0; for (ContactInfo item : items) { totalAge += item.getAge(); } return "Avg: " + totalAge / items.size(); } } }; dataGrid.addColumn(ageColumn, new SafeHtmlHeader(SafeHtmlUtils.fromSafeConstant(constants.cwDataGridColumnAge())), ageFooter); dataGrid.setColumnWidth(ageColumn, 7, Unit.EM); // Category. final Category[] categories = ContactDatabase.get().queryCategories(); List<String> categoryNames = new ArrayList<String>(); for (Category category : categories) { categoryNames.add(category.getDisplayName()); } SelectionCell categoryCell = new SelectionCell(categoryNames); Column<ContactInfo, String> categoryColumn = new Column<ContactInfo, String>(categoryCell) { @Override public String getValue(ContactInfo object) { return object.getCategory().getDisplayName(); } }; dataGrid.addColumn(categoryColumn, constants.cwDataGridColumnCategory()); categoryColumn.setFieldUpdater(new FieldUpdater<ContactInfo, String>() { public void update(int index, ContactInfo object, String value) { for (Category category : categories) { if (category.getDisplayName().equals(value)) { object.setCategory(category); } } ContactDatabase.get().refreshDisplays(); } }); dataGrid.setColumnWidth(categoryColumn, 130, Unit.PX); // Address. Column<ContactInfo, String> addressColumn = new Column<ContactInfo, String>(new TextCell()) { @Override public String getValue(ContactInfo object) { return object.getAddress(); } }; addressColumn.setSortable(true); sortHandler.setComparator(addressColumn, new Comparator<ContactInfo>() { public int compare(ContactInfo o1, ContactInfo o2) { return o1.getAddress().compareTo(o2.getAddress()); } }); dataGrid.addColumn(addressColumn, constants.cwDataGridColumnAddress()); dataGrid.setColumnWidth(addressColumn, 60, Unit.PCT); }
From source file:com.gwt2go.dev.client.ui.CellTableSortingViewImpl.java
License:Apache License
private void initTableColumns(final SelectionModel<ContactInfo> selectionModel, CellTableSorting<ContactInfo> cellTable) { // This table will uses a checkbox column for selection. // Alternatively, you can call cellTable.setSelectionEnabled(true) to // enable mouse selection. Column<ContactInfo, Boolean> checkColumn = new Column<ContactInfo, Boolean>(new CheckboxCell(true, true)) { @Override/*from w ww. j a va 2 s.c om*/ public Boolean getValue(ContactInfo object) { // Get the value from the selection model. return selectionModel.isSelected(object); } }; checkColumn.setFieldUpdater(new FieldUpdater<ContactInfo, Boolean>() { public void update(int index, ContactInfo object, Boolean value) { // Called when the user clicks on a checkbox. selectionModel.setSelected(object, value); } }); cellTable.addColumn(checkColumn, SafeHtmlUtils.fromSafeConstant("<br>")); cellTable.addColumn("First name", new TextCell(), new GetValue<ContactInfo, String>() { public String getValue(ContactInfo object) { return object.getFirstName(); } }, new SortHeader("First name")); // Last name. Column<ContactInfo, String> lastNameColumn = new Column<ContactInfo, String>(new EditTextCell()) { @Override public String getValue(ContactInfo object) { return object.getLastName(); } }; cellTable.addColumn(lastNameColumn, "Last name"); lastNameColumn.setFieldUpdater(new FieldUpdater<ContactInfo, String>() { public void update(int index, ContactInfo object, String value) { // Called when the user changes the value. object.setLastName(value); ContactDatabase.get().refreshDisplays(); } }); // Category. final Category[] categories = ContactDatabase.get().queryCategories(); List<String> categoryNames = new ArrayList<String>(); for (Category category : categories) { categoryNames.add(category.getDisplayName()); } SelectionCell categoryCell = new SelectionCell(categoryNames); Column<ContactInfo, String> categoryColumn = new Column<ContactInfo, String>(categoryCell) { @Override public String getValue(ContactInfo object) { return object.getCategory().getDisplayName(); } }; cellTable.addColumn(categoryColumn, "Category"); categoryColumn.setFieldUpdater(new FieldUpdater<ContactInfo, String>() { public void update(int index, ContactInfo object, String value) { for (Category category : categories) { if (category.getDisplayName().equals(value)) { object.setCategory(category); } } ContactDatabase.get().refreshDisplays(); } }); // Address. cellTable.addColumn("Address", new TextCell(), new GetValue<ContactInfo, String>() { public String getValue(ContactInfo object) { return object.getAddress(); } }, new SortHeader("Address")); cellTable.addColumn("Birthday", new DateCell(), new GetValue<ContactInfo, Date>() { public Date getValue(ContactInfo object) { return object.getBirthday(); } }, new SortHeader("Birthday")); }
From source file:com.gwt2go.dev.client.ui.CellTableViewImpl.java
License:Apache License
/** * Add the columns to the table./* w w w.j a v a2s. com*/ */ private void initTableColumns(final SelectionModel<ContactInfo> selectionModel) { // This table will uses a checkbox column for selection. // Alternatively, you can call cellTable.setSelectionEnabled(true) to // enable mouse selection. Column<ContactInfo, Boolean> checkColumn = new Column<ContactInfo, Boolean>(new CheckboxCell(true, true)) { @Override public Boolean getValue(ContactInfo object) { // Get the value from the selection model. return selectionModel.isSelected(object); } }; checkColumn.setFieldUpdater(new FieldUpdater<ContactInfo, Boolean>() { public void update(int index, ContactInfo object, Boolean value) { // Called when the user clicks on a checkbox. selectionModel.setSelected(object, value); } }); cellTable.addColumn(checkColumn, SafeHtmlUtils.fromSafeConstant("<br>")); // First name. // Column<ContactInfo, String> firstNameColumn = new Column<ContactInfo, // String>( // new EditTextCell()) { // @Override // public String getValue(ContactInfo object) { // return object.getFirstName(); // } // }; // TextHeader firstNameHeader = new TextHeader("First name"); // firstNameHeader.setUpdater(new ValueUpdater<String>() { // @Override // public void update(String value) { // Window.alert("Update the header"); // } // }); // // cellTable.addColumn(firstNameColumn, firstNameHeader); // // firstNameColumn // .setFieldUpdater(new FieldUpdater<ContactInfo, String>() { // public void update(int index, ContactInfo object, // String value) { // // Called when the user changes the value. // object.setFirstName(value); // ContactDatabase.get().refreshDisplays(); // } // }); addColumn("First name", new TextCell(), new GetValue<ContactInfo, String>() { public String getValue(ContactInfo object) { return object.getFirstName(); } }); // Last name. Column<ContactInfo, String> lastNameColumn = new Column<ContactInfo, String>(new EditTextCell()) { @Override public String getValue(ContactInfo object) { return object.getLastName(); } }; cellTable.addColumn(lastNameColumn, "Last name"); lastNameColumn.setFieldUpdater(new FieldUpdater<ContactInfo, String>() { public void update(int index, ContactInfo object, String value) { // Called when the user changes the value. object.setLastName(value); ContactDatabase.get().refreshDisplays(); } }); // Category. final Category[] categories = ContactDatabase.get().queryCategories(); List<String> categoryNames = new ArrayList<String>(); for (Category category : categories) { categoryNames.add(category.getDisplayName()); } SelectionCell categoryCell = new SelectionCell(categoryNames); Column<ContactInfo, String> categoryColumn = new Column<ContactInfo, String>(categoryCell) { @Override public String getValue(ContactInfo object) { return object.getCategory().getDisplayName(); } }; cellTable.addColumn(categoryColumn, "Category"); categoryColumn.setFieldUpdater(new FieldUpdater<ContactInfo, String>() { public void update(int index, ContactInfo object, String value) { for (Category category : categories) { if (category.getDisplayName().equals(value)) { object.setCategory(category); } } ContactDatabase.get().refreshDisplays(); } }); // Address. addColumn("Address", new TextCell(), new GetValue<ContactInfo, String>() { public String getValue(ContactInfo object) { return object.getAddress(); } }); // cellTable.addColumn(new Column<ContactInfo, String>(new TextCell()) { // @Override // public String getValue(ContactInfo object) { // return object.getAddress(); // } // }, "Address"); }
From source file:com.phideltcmu.recruiter.client.ui.table.RecruitTable.java
License:Creative Commons License
public void render(List<Category> categories) { final List<String> categoryNames = new ArrayList<String>(); for (Category category : categories) { categoryNames.add(category.getValue()); }//from w w w. j ava 2 s . c om if (DynamicRecruiter.authUser.isAdmin()) { SelectionCell categoryCell = new SelectionCell(categoryNames); Column<Person, String> categoryColumn = new Column<Person, String>(categoryCell) { @Override public String getValue(Person object) { return categoryNames.get(categoryNames.indexOf(object.getStatus())); } }; categoryColumn.setFieldUpdater(new FieldUpdater<Person, String>() { @Override public void update(int index, Person object, String value) { object.setStatus(value); DynamicRecruiter.RECRUIT_SERVICE.changeCategory(object.getAndrewID(), value, DynamicRecruiter.authUser.getAuthToken(), new AsyncCallback<Void>() { @Override public void onFailure(Throwable throwable) { throwable.printStackTrace(); } @Override public void onSuccess(Void aVoid) { // Window.alert("Status Updated!"); } }); } }); extraColumns.add(new ExtraColumn("Status", categoryColumn)); } else { TextColumn<Person> statusColumn = new TextColumn<Person>() { @Override public String getValue(Person person) { return person.getStatus(); } }; extraColumns.add(new ExtraColumn("Status", statusColumn)); } defineColumns(); this.initColumns(extraColumns); }
From source file:com.pronoiahealth.olhie.client.pages.admin.widgets.AuthorRequestWidget.java
License:Open Source License
/** * Build grid/*from w w w . j av a 2s . c o m*/ */ @PostConstruct protected void postConstruct() { // Data Provider dataProvider = new ListDataProvider<RegistrationForm>(); // Grid configuration authorReqGrid = new CellTable<RegistrationForm>(10, KEY_PROVIDER); authorReqGrid.setWidth("100%"); authorReqGrid.setAutoHeaderRefreshDisabled(true); authorReqGrid.setAutoFooterRefreshDisabled(true); authorReqGrid.setEmptyTableWidget(new Label("Nothing to show")); authorReqGrid.setKeyboardSelectionPolicy(KeyboardSelectionPolicy.ENABLED); authorReqGrid.setWidth("100%", true); // Selection Model final SelectionModel<RegistrationForm> selectionModel = new SingleSelectionModel<RegistrationForm>( KEY_PROVIDER); authorReqGrid.setSelectionModel(selectionModel, DefaultSelectionEventManager.<RegistrationForm>createCheckboxManager()); // Init columns // Id TextColumn<RegistrationForm> idColumn = new TextColumn<RegistrationForm>() { @Override public String getValue(RegistrationForm object) { return object.getId(); } }; idColumn.setCellStyleNames("ph-Admin-tbl-cell-text-align-left"); authorReqGrid.addColumn(idColumn, "ID"); authorReqGrid.setColumnWidth(idColumn, 5, Unit.PCT); // First Name TextColumn<RegistrationForm> firstColumn = new TextColumn<RegistrationForm>() { @Override public String getValue(RegistrationForm object) { return object.getFirstName(); } }; firstColumn.setCellStyleNames("ph-Admin-tbl-cell-text-align-left"); authorReqGrid.addColumn(firstColumn, "First"); authorReqGrid.setColumnWidth(firstColumn, 7, Unit.PCT); // Last Name TextColumn<RegistrationForm> lastColumn = new TextColumn<RegistrationForm>() { @Override public String getValue(RegistrationForm object) { return object.getLastName(); } }; lastColumn.setCellStyleNames("ph-Admin-tbl-cell-text-align-left"); authorReqGrid.addColumn(lastColumn, "Last"); authorReqGrid.setColumnWidth(lastColumn, 12, Unit.PCT); // userId TextColumn<RegistrationForm> userIdColumn = new TextColumn<RegistrationForm>() { @Override public String getValue(RegistrationForm object) { return object.getUserId(); } }; userIdColumn.setCellStyleNames("ph-Admin-tbl-cell-text-align-left"); authorReqGrid.addColumn(userIdColumn, "UserId"); authorReqGrid.setColumnWidth(userIdColumn, 10, Unit.PCT); // eMail TextColumn<RegistrationForm> eMailColumn = new TextColumn<RegistrationForm>() { @Override public String getValue(RegistrationForm object) { return object.getEmail(); } }; eMailColumn.setCellStyleNames("ph-Admin-tbl-cell-text-align-left"); authorReqGrid.addColumn(eMailColumn, "eMail"); authorReqGrid.setColumnWidth(eMailColumn, 15, Unit.PCT); // Registration Date DateCell dateCell = new DateCell(); Column<RegistrationForm, Date> dateColumn = new Column<RegistrationForm, Date>(dateCell) { @Override public Date getValue(RegistrationForm object) { return object.getRegDate(); } }; dateColumn.setCellStyleNames("ph-Admin-tbl-cell-text-align-left"); authorReqGrid.addColumn(dateColumn, "Reg Date"); authorReqGrid.setColumnWidth(dateColumn, 17, Unit.PCT); // Organization TextColumn<RegistrationForm> orgColumn = new TextColumn<RegistrationForm>() { @Override public String getValue(RegistrationForm object) { return object.getOrganization(); } }; orgColumn.setCellStyleNames("ph-Admin-tbl-cell-text-align-left"); authorReqGrid.addColumn(orgColumn, "Organization"); authorReqGrid.setColumnWidth(orgColumn, 15, Unit.PCT); // Status List<String> statusNames = Arrays.asList(authStatus); SelectionCell statusCell = new SelectionCell(statusNames); Column<RegistrationForm, String> statusColumn = new Column<RegistrationForm, String>(statusCell) { @Override public String getValue(RegistrationForm object) { return object.getAuthorStatus(); } }; statusColumn.setCellStyleNames("ph-Admin-tbl-cell-text-align-left"); authorReqGrid.addColumn(statusColumn, "Status"); // Status column updated statusColumn.setFieldUpdater(new FieldUpdater<RegistrationForm, String>() { @Override public void update(int index, RegistrationForm object, String value) { object.setAuthorStatus(value); dataProvider.refresh(); // Tell the AdminService about the change authorRequestStatusChangeEvent.fire(new AuthorRequestStatusChangeEvent(object.getId(), value)); } }); authorReqGrid.setColumnWidth(statusColumn, 19, Unit.PCT); // Set the dataprovider dataProvider.addDataDisplay(authorReqGrid); // Pager SimplePager.Resources pagerResources = GWT.create(SimplePager.Resources.class); pager = new SimplePager(TextLocation.CENTER, pagerResources, false, 0, true); pager.setDisplay(authorReqGrid); pager.setPageSize(10); pager.getElement().setAttribute("style", "margin: auto;"); // Redraw the grid authorReqGrid.redraw(); authorReqGrid.setVisible(true); // Add to container authorRequestTbl.add(authorReqGrid); pagerContainer.add(pager); }
From source file:com.pronoiahealth.olhie.client.pages.admin.widgets.NewsItemWidget.java
License:Open Source License
/** * Build grid//from w ww . ja v a2 s. c o m */ @PostConstruct protected void postConstruct() { // Data Provider dataProvider = new ListDataProvider<NewsItem>(); // Grid configuration newsItemGrid = new CellTable<NewsItem>(10, KEY_PROVIDER); newsItemGrid.setWidth("100%"); newsItemGrid.setAutoHeaderRefreshDisabled(true); newsItemGrid.setAutoFooterRefreshDisabled(true); newsItemGrid.setEmptyTableWidget(new Label("Nothing to show")); newsItemGrid.setKeyboardSelectionPolicy(KeyboardSelectionPolicy.ENABLED); newsItemGrid.setWidth("100%", true); // Selection Model final SelectionModel<NewsItem> selectionModel = new SingleSelectionModel<NewsItem>(KEY_PROVIDER); newsItemGrid.setSelectionModel(selectionModel, DefaultSelectionEventManager.<NewsItem>createCheckboxManager()); // Init columns // Id TextColumn<NewsItem> idColumn = new TextColumn<NewsItem>() { @Override public String getValue(NewsItem object) { return object.getId(); } }; idColumn.setCellStyleNames("ph-Admin-tbl-cell-text-align-left"); newsItemGrid.addColumn(idColumn, "ID"); newsItemGrid.setColumnWidth(idColumn, 5, Unit.PCT); // Author id TextColumn<NewsItem> authorColumn = new TextColumn<NewsItem>() { @Override public String getValue(NewsItem object) { return object.getAuthorId(); } }; authorColumn.setCellStyleNames("ph-Admin-tbl-cell-text-align-left"); newsItemGrid.addColumn(authorColumn, "Author"); newsItemGrid.setColumnWidth(authorColumn, 10, Unit.PCT); // href TextColumn<NewsItem> hrefColumn = new TextColumn<NewsItem>() { @Override public String getValue(NewsItem object) { return object.getHref(); } }; hrefColumn.setCellStyleNames("ph-Admin-tbl-cell-text-align-left"); newsItemGrid.addColumn(hrefColumn, "Link"); newsItemGrid.setColumnWidth(hrefColumn, 25, Unit.PCT); // Story TextColumn<NewsItem> storyColumn = new TextColumn<NewsItem>() { @Override public String getValue(NewsItem object) { return object.getStory(); } }; storyColumn.setCellStyleNames("ph-Admin-tbl-cell-text-align-left"); newsItemGrid.addColumn(storyColumn, "Story"); newsItemGrid.setColumnWidth(storyColumn, 35, Unit.PCT); // Active List<String> activeNames = Arrays.asList(reset); SelectionCell activeCell = new SelectionCell(activeNames); Column<NewsItem, String> activeColumn = new Column<NewsItem, String>(activeCell) { @Override public String getValue(NewsItem object) { boolean val = object.getActive(); if (val == true) { return "YES"; } else { return "NO"; } } }; activeColumn.setCellStyleNames("ph-Admin-tbl-cell-text-align-left"); newsItemGrid.addColumn(activeColumn, "Active"); // active column updated activeColumn.setFieldUpdater(new FieldUpdater<NewsItem, String>() { @Override public void update(int index, NewsItem object, String value) { boolean retVal = false; if (value.equals("YES")) { retVal = true; object.setActive(true); } else { object.setActive(false); } dataProvider.refresh(); // Tell the AdminService about the change updateNewsItemActiveRequestEvent.fire(new UpdateNewsItemActiveRequestEvent(object.getId(), retVal)); } }); newsItemGrid.setColumnWidth(activeColumn, 18, Unit.PCT); // Delete button Column<NewsItem, String> deleteBtn = new Column<NewsItem, String>(new ButtonCell()) { @Override public String getValue(NewsItem c) { return "x"; } }; newsItemGrid.setColumnWidth(deleteBtn, 5, Unit.PCT); newsItemGrid.addColumn(deleteBtn, ""); // Set the field updater, whenever user clicks on button // row will be removed. deleteBtn.setFieldUpdater(new FieldUpdater<NewsItem, String>() { @Override public void update(int index, NewsItem object, String value) { // Tell the database removeNewsItemRequestEvent.fire(new RemoveNewsItemRequestEvent(object.getId())); // Remove from the data provider and redraw the table dataProvider.getList().remove(object); dataProvider.refresh(); newsItemGrid.redraw(); } }); // Set the dataprovider dataProvider.addDataDisplay(newsItemGrid); // Pager SimplePager.Resources pagerResources = GWT.create(SimplePager.Resources.class); pager = new SimplePager(TextLocation.CENTER, pagerResources, false, 0, true); pager.setDisplay(newsItemGrid); pager.setPageSize(10); pager.getElement().setAttribute("style", "margin: auto;"); // Redraw the grid newsItemGrid.redraw(); newsItemGrid.setVisible(true); // Add to container newsItemTbl.add(newsItemGrid); pagerContainer.add(pager); }
From source file:com.pronoiahealth.olhie.client.pages.admin.widgets.UserManagementWidget.java
License:Open Source License
/** * Build grid/* w w w .ja v a 2s . co m*/ */ @PostConstruct protected void postConstruct() { // Query lable queryLbl.setText("Last Name: "); // Data Provider dataProvider = new ListDataProvider<User>(); // Grid configuration userMgmtGrid = new CellTable<User>(10, KEY_PROVIDER); userMgmtGrid.setWidth("100%"); userMgmtGrid.setAutoHeaderRefreshDisabled(true); userMgmtGrid.setAutoFooterRefreshDisabled(true); userMgmtGrid.setEmptyTableWidget(new Label("Nothing to show")); userMgmtGrid.setKeyboardSelectionPolicy(KeyboardSelectionPolicy.ENABLED); userMgmtGrid.setWidth("100%", true); // Selection Model // final SelectionModel<User> selectionModel = new // SingleSelectionModel<User>( // KEY_PROVIDER); // userMgmtGrid.setSelectionModel(selectionModel, // DefaultSelectionEventManager.<User> createCheckboxManager()); // Init columns // Id TextColumn<User> idColumn = new TextColumn<User>() { @Override public String getValue(User object) { return object.getId(); } }; idColumn.setCellStyleNames("ph-Admin-tbl-cell-text-align-left"); userMgmtGrid.addColumn(idColumn, "ID"); userMgmtGrid.setColumnWidth(idColumn, 5, Unit.PCT); // First Name TextColumn<User> firstColumn = new TextColumn<User>() { @Override public String getValue(User object) { return object.getFirstName(); } }; firstColumn.setCellStyleNames("ph-Admin-tbl-cell-text-align-left"); userMgmtGrid.addColumn(firstColumn, "First"); userMgmtGrid.setColumnWidth(firstColumn, 7, Unit.PCT); // Last Name TextColumn<User> lastColumn = new TextColumn<User>() { @Override public String getValue(User object) { return object.getLastName(); } }; lastColumn.setCellStyleNames("ph-Admin-tbl-cell-text-align-left"); userMgmtGrid.addColumn(lastColumn, "Last"); userMgmtGrid.setColumnWidth(lastColumn, 12, Unit.PCT); // userId TextColumn<User> userIdColumn = new TextColumn<User>() { @Override public String getValue(User object) { return object.getUserId(); } }; userIdColumn.setCellStyleNames("ph-Admin-tbl-cell-text-align-left"); userMgmtGrid.addColumn(userIdColumn, "UserId"); userMgmtGrid.setColumnWidth(userIdColumn, 10, Unit.PCT); // eMail final EditTextCell eMailEditCell = new EditTextCell(); final Column<User, String> eMailColumn = new Column<User, String>(eMailEditCell) { @Override public String getValue(User object) { return object.getEmail(); } }; eMailColumn.setCellStyleNames("ph-Admin-tbl-cell-text-align-left"); userMgmtGrid.addColumn(eMailColumn, "eMail"); eMailColumn.setFieldUpdater(new FieldUpdater<User, String>() { @Override public void update(int index, User object, String value) { // Validate if (Utils.isValidEmail(value) && value != null && value.length() > 0) { // Set data object.setEmail(value); dataProvider.refresh(); // Tell the database userEmailChangeRequestEvent.fire(new UserEmailChangeRequestEvent(value, object.getUserId())); // Reset style eMailColumn.setCellStyleNames("ph-Admin-tbl-cell-text-align-left"); } else { eMailEditCell.clearViewData(KEY_PROVIDER.getKey(object)); clientErrorEvent.fire(new ClientErrorEvent(value + " is not a valid email address.")); userMgmtGrid.redraw(); } } }); userMgmtGrid.setColumnWidth(eMailColumn, 15, Unit.PCT); // Organization final EditTextCell orgCell = new EditTextCell(); Column<User, String> orgColumn = new Column<User, String>(orgCell) { @Override public String getValue(User object) { return object.getOrganization(); } }; orgColumn.setCellStyleNames("ph-Admin-tbl-cell-text-align-left"); userMgmtGrid.addColumn(orgColumn, "Organization"); orgColumn.setFieldUpdater(new FieldUpdater<User, String>() { @Override public void update(int index, User object, String value) { object.setOrganization(value); dataProvider.refresh(); // Tell the database userOrganizationChangeRequestEvent .fire(new UserOrganizationChangeRequestEvent(value, object.getUserId())); } }); userMgmtGrid.setColumnWidth(orgColumn, 15, Unit.PCT); // Role List<String> roleNames = Arrays.asList(roles); SelectionCell roleCell = new SelectionCell(roleNames); Column<User, String> roleColumn = new Column<User, String>(roleCell) { @Override public String getValue(User object) { return object.getRole(); } }; roleColumn.setCellStyleNames("ph-Admin-tbl-cell-text-align-left"); userMgmtGrid.addColumn(roleColumn, "Role"); // role column updated roleColumn.setFieldUpdater(new FieldUpdater<User, String>() { @Override public void update(int index, User object, String value) { object.setRole(value); dataProvider.refresh(); // Tell the AdminService about the change userChangeRoleEvent.fire(new UserChangeRoleEvent(object.getUserId(), value)); } }); userMgmtGrid.setColumnWidth(roleColumn, 18, Unit.PCT); // Reset password List<String> resetNames = Arrays.asList(reset); SelectionCell resetCell = new SelectionCell(resetNames); Column<User, String> resetColumn = new Column<User, String>(resetCell) { @Override public String getValue(User object) { boolean val = object.isResetPwd(); if (val == true) { return "YES"; } else { return "NO"; } } }; resetColumn.setCellStyleNames("ph-Admin-tbl-cell-text-align-left"); userMgmtGrid.addColumn(resetColumn, "Reset PW"); // role column updated resetColumn.setFieldUpdater(new FieldUpdater<User, String>() { @Override public void update(int index, User object, String value) { boolean retVal = false; if (value.equals("YES")) { retVal = true; object.setResetPwd(true); } else { object.setResetPwd(false); } dataProvider.refresh(); // Tell the AdminService about the change userResetPWEvent.fire(new UserResetPWEvent(object.getUserId(), retVal)); } }); userMgmtGrid.setColumnWidth(resetColumn, 18, Unit.PCT); // Set the dataprovider dataProvider.addDataDisplay(userMgmtGrid); // Pager SimplePager.Resources pagerResources = GWT.create(SimplePager.Resources.class); pager = new SimplePager(TextLocation.CENTER, pagerResources, false, 0, true); pager.setDisplay(userMgmtGrid); pager.setPageSize(5); pager.getElement().setAttribute("style", "margin: auto;"); // Redraw the grid userMgmtGrid.redraw(); userMgmtGrid.setVisible(true); // Add to container userMgmtTbl.add(userMgmtGrid); pagerContainer.add(pager); }
From source file:com.spshop.admin.client.sample.CwCellTable.java
License:Apache License
/** * Add the columns to the table.// w ww .j av a 2 s. com */ private void initTableColumns(final SelectionModel<ContactInfo> selectionModel, ListHandler<ContactInfo> sortHandler) { // Checkbox column. This table will uses a checkbox column for selection. // Alternatively, you can call cellTable.setSelectionEnabled(true) to enable // mouse selection. Column<ContactInfo, Boolean> checkColumn = new Column<ContactInfo, Boolean>(new CheckboxCell(true, false)) { @Override public Boolean getValue(ContactInfo object) { // Get the value from the selection model. return selectionModel.isSelected(object); } }; cellTable.addColumn(checkColumn, SafeHtmlUtils.fromSafeConstant("<br/>")); cellTable.setColumnWidth(checkColumn, 40, Unit.PX); // First name. Column<ContactInfo, String> firstNameColumn = new Column<ContactInfo, String>(new EditTextCell()) { @Override public String getValue(ContactInfo object) { return object.getFirstName(); } }; firstNameColumn.setSortable(true); sortHandler.setComparator(firstNameColumn, new Comparator<ContactInfo>() { public int compare(ContactInfo o1, ContactInfo o2) { return o1.getFirstName().compareTo(o2.getFirstName()); } }); cellTable.addColumn(firstNameColumn, constants.cwCellTableColumnFirstName()); firstNameColumn.setFieldUpdater(new FieldUpdater<ContactInfo, String>() { public void update(int index, ContactInfo object, String value) { // Called when the user changes the value. object.setFirstName(value); ContactDatabase.get().refreshDisplays(); } }); cellTable.setColumnWidth(firstNameColumn, 20, Unit.PCT); // Last name. Column<ContactInfo, String> lastNameColumn = new Column<ContactInfo, String>(new EditTextCell()) { @Override public String getValue(ContactInfo object) { return object.getLastName(); } }; lastNameColumn.setSortable(true); sortHandler.setComparator(lastNameColumn, new Comparator<ContactInfo>() { public int compare(ContactInfo o1, ContactInfo o2) { return o1.getLastName().compareTo(o2.getLastName()); } }); cellTable.addColumn(lastNameColumn, constants.cwCellTableColumnLastName()); lastNameColumn.setFieldUpdater(new FieldUpdater<ContactInfo, String>() { public void update(int index, ContactInfo object, String value) { // Called when the user changes the value. object.setLastName(value); ContactDatabase.get().refreshDisplays(); } }); cellTable.setColumnWidth(lastNameColumn, 20, Unit.PCT); // Category. final Category[] categories = ContactDatabase.get().queryCategories(); List<String> categoryNames = new ArrayList<String>(); for (Category category : categories) { categoryNames.add(category.getDisplayName()); } SelectionCell categoryCell = new SelectionCell(categoryNames); Column<ContactInfo, String> categoryColumn = new Column<ContactInfo, String>(categoryCell) { @Override public String getValue(ContactInfo object) { return object.getCategory().getDisplayName(); } }; cellTable.addColumn(categoryColumn, constants.cwCellTableColumnCategory()); categoryColumn.setFieldUpdater(new FieldUpdater<ContactInfo, String>() { public void update(int index, ContactInfo object, String value) { for (Category category : categories) { if (category.getDisplayName().equals(value)) { object.setCategory(category); } } ContactDatabase.get().refreshDisplays(); } }); cellTable.setColumnWidth(categoryColumn, 130, Unit.PX); // Address. Column<ContactInfo, String> addressColumn = new Column<ContactInfo, String>(new TextCell()) { @Override public String getValue(ContactInfo object) { return object.getAddress(); } }; addressColumn.setSortable(true); sortHandler.setComparator(addressColumn, new Comparator<ContactInfo>() { public int compare(ContactInfo o1, ContactInfo o2) { return o1.getAddress().compareTo(o2.getAddress()); } }); cellTable.addColumn(addressColumn, constants.cwCellTableColumnAddress()); cellTable.setColumnWidth(addressColumn, 60, Unit.PCT); }