List of usage examples for com.vaadin.v7.ui TwinColSelect TwinColSelect
public TwinColSelect(String caption)
From source file:org.esn.esobase.view.tab.QuestsTab.java
public QuestsTab(DBService service) { this.service = service; actions = new HorizontalLayout(); refreshButton = new Button(""); refreshButton.addClickListener(new Button.ClickListener() { @Override/*w w w. ja v a2s. co m*/ public void buttonClick(Button.ClickEvent event) { LoadTable(); CloseForm(); } }); actions.addComponent(refreshButton); addButton = new Button(""); addButton.addClickListener(new Button.ClickListener() { @Override public void buttonClick(Button.ClickEvent event) { AddItem(); } }); actions.addComponent(addButton); this.addComponent(actions); tableAndForm = new HorizontalLayout(); tableAndForm.setSizeFull(); table = new Table(); table.setSizeFull(); container = new BeanItemContainer<>(Quest.class); table.setContainerDataSource(container); table.setVisibleColumns(new Object[] { "name", "nameRu", "progress" }); table.setColumnHeaders(new String[] { "?", " ?", "? " }); table.setConverter("progress", new Converter<String, BigDecimal>() { @Override public BigDecimal convertToModel(String value, Class<? extends BigDecimal> targetType, Locale locale) throws Converter.ConversionException { return null; } @Override public String convertToPresentation(BigDecimal value, Class<? extends String> targetType, Locale locale) throws Converter.ConversionException { String r = ""; if (value != null) { r = value.multiply(BigDecimal.valueOf(100L).setScale(2, RoundingMode.HALF_DOWN)) .setScale(0, RoundingMode.HALF_UP).toString() + "%"; } return r; } @Override public Class<BigDecimal> getModelType() { return BigDecimal.class; } @Override public Class<String> getPresentationType() { return String.class; } }); table.addItemClickListener(new TableClickListener()); LoadTable(); table.sort(new Object[] { "name" }, new boolean[] { true }); tableAndForm.addComponent(table); tableAndForm.setExpandRatio(table, 0.2f); form = new FormLayout(); form.setSizeFull(); name = new TextField("?"); name.setNullRepresentation(""); name.setRequired(true); form.addComponent(name); nameRu = new TextField(" ?"); nameRu.setNullRepresentation(""); nameRu.setRequired(false); form.addComponent(nameRu); npcs = new TwinColSelect("NPC"); npcsContainer = new BeanItemContainer<>(Npc.class); npcsContainer = service.loadBeanItems(npcsContainer); npcsContainer.sort(new Object[] { "name" }, new boolean[] { true }); npcsContainer.addNestedContainerProperty("location.name"); npcsContainer.addNestedContainerProperty("location.nameRu"); npcs.setContainerDataSource(npcsContainer); npcs.setWidth(900f, Unit.PIXELS); Page.Styles styles = Page.getCurrent().getStyles(); styles.add(".v-font-size {\n" + " font-size: 11px;\n" + "}"); npcs.addStyleName("v-font-size"); npcFilter = new TextField(" ?? NPC"); npcFilter.setNullRepresentation(""); npcFilter.setImmediate(true); npcFilter.setTextChangeEventMode(AbstractTextField.TextChangeEventMode.TIMEOUT); npcFilter.setTextChangeTimeout(500); npcFilter.addTextChangeListener(new FieldEvents.TextChangeListener() { @Override public void textChange(FieldEvents.TextChangeEvent event) { npcsContainer.removeAllContainerFilters(); if (event.getText() != null && !event.getText().isEmpty()) { try { npcsContainer .addContainerFilter(new Or(new Like("name", "%" + event.getText() + "%", false), new Like("nameRu", "%" + event.getText() + "%", false), new Like("location.name", "%" + event.getText() + "%", false), new Like("location.nameRu", "%" + event.getText() + "%", false))); } catch (UnsupportedFilterException | PatternSyntaxException ex) { } } } }); form.addComponent(npcFilter); form.addComponent(npcs); saveButton = new Button(""); saveButton.addClickListener(new Button.ClickListener() { @Override public void buttonClick(Button.ClickEvent event) { SaveForm(); } }); cancelButton = new Button(""); cancelButton.addClickListener(new Button.ClickListener() { @Override public void buttonClick(Button.ClickEvent event) { CloseForm(); LoadTable(); } }); HorizontalLayout actions = new HorizontalLayout(cancelButton, saveButton); form.addComponent(actions); form.setVisible(false); tableAndForm.addComponent(form); tableAndForm.setExpandRatio(form, 0.75f); this.addComponent(tableAndForm); }
From source file:org.esn.esobase.view.tab.UsersTab.java
public UsersTab(DBService service) { this.service = service; actions = new HorizontalLayout(); refreshButton = new Button(""); refreshButton.addClickListener(new Button.ClickListener() { @Override//from w w w . j a v a 2s . co m public void buttonClick(Button.ClickEvent event) { LoadTable(); } }); actions.addComponent(refreshButton); addButton = new Button(""); addButton.addClickListener(new Button.ClickListener() { @Override public void buttonClick(Button.ClickEvent event) { AddUser(); } }); actions.addComponent(addButton); this.addComponent(actions); tableAndForm = new HorizontalLayout(); tableAndForm.setSizeFull(); table = new Table(); table.setSizeFull(); container = new BeanItemContainer<>(SysAccount.class); table.setContainerDataSource(container); table.setVisibleColumns(new Object[] { "login", "roles" }); table.addItemClickListener(new TableClickListener()); LoadTable(); tableAndForm.addComponent(table); tableAndForm.setExpandRatio(table, 0.5f); form = new FormLayout(); form.setSizeFull(); login = new TextField(""); login.setNullRepresentation(""); login.setRequired(true); form.addComponent(login); password = new PasswordField(""); form.addComponent(password); passwordRepeat = new PasswordField(" ?"); passwordRepeat.addValidator(new PasswordValidator(password, passwordRepeat)); form.addComponent(passwordRepeat); roles = new TwinColSelect(""); BeanItemContainer<SysAccountRole> rolesContainer = new BeanItemContainer<>(SysAccountRole.class); rolesContainer = service.loadBeanItems(rolesContainer); roles.setContainerDataSource(rolesContainer); roles.setWidth(900f, Unit.PIXELS); Page.Styles styles = Page.getCurrent().getStyles(); styles.add(".v-font-size {\n" + " font-size: 11px;\n" + "}"); roles.addStyleName("v-font-size"); form.addComponent(roles); isBlocked = new CheckBox(""); form.addComponent(isBlocked); saveButton = new Button(""); saveButton.addClickListener(new Button.ClickListener() { @Override public void buttonClick(Button.ClickEvent event) { SaveForm(); } }); form.addComponent(saveButton); form.setVisible(false); tableAndForm.addComponent(form); tableAndForm.setExpandRatio(form, 0.5f); this.addComponent(tableAndForm); }