List of usage examples for com.vaadin.ui.themes ValoTheme TEXTFIELD_SMALL
String TEXTFIELD_SMALL
To view the source code for com.vaadin.ui.themes ValoTheme TEXTFIELD_SMALL.
Click Source Link
From source file:com.mycollab.module.project.view.user.ProjectMembersWidget.java
License:Open Source License
public ProjectMembersWidget() { super("", new CssLayout()); final MButton sortBtn = new MButton().withIcon(FontAwesome.SORT_ALPHA_ASC) .withStyleName(WebThemes.BUTTON_ICON_ONLY); sortBtn.addClickListener(clickEvent -> { sortAsc = !sortAsc;/* w w w . j a va 2 s . c o m*/ if (sortAsc) { sortBtn.setIcon(FontAwesome.SORT_ALPHA_ASC); searchCriteria.setOrderFields(Collections .singletonList(new SearchCriteria.OrderField("memberFullName", SearchCriteria.ASC))); } else { sortBtn.setIcon(FontAwesome.SORT_ALPHA_DESC); searchCriteria.setOrderFields(Collections .singletonList(new SearchCriteria.OrderField("memberFullName", SearchCriteria.DESC))); } memberList.setSearchCriteria(searchCriteria); setTitle(UserUIContext.getMessage(ProjectCommonI18nEnum.WIDGET_MEMBERS_TITLE, memberList.getTotalCount())); }); addHeaderElement(sortBtn); final SearchTextField searchTextField = new SearchTextField() { @Override public void doSearch(String value) { searchCriteria.setMemberFullName(StringSearchField.and(value)); showMembers(); } @Override public void emptySearch() { searchCriteria.setMemberFullName(null); showMembers(); } }; searchTextField.addStyleName(ValoTheme.TEXTFIELD_SMALL); addHeaderElement(searchTextField); MButton inviteMemberBtn = new MButton(UserUIContext.getMessage(ProjectMemberI18nEnum.BUTTON_NEW_INVITEE), clickEvent -> EventBusFactory.getInstance() .post(new ProjectMemberEvent.GotoInviteMembers(this, null))).withIcon(FontAwesome.PLUS) .withStyleName(WebThemes.BUTTON_ACTION).withVisible( CurrentProjectVariables.canWrite(ProjectRolePermissionCollections.USERS)); addHeaderElement(inviteMemberBtn); memberList = new DefaultBeanPagedList<>(AppContextUtil.getSpringBean(ProjectMemberService.class), new MemberRowDisplayHandler(), 7); bodyContent.addComponent(memberList); }
From source file:com.mycollab.module.user.accountsettings.team.view.UserListViewImpl.java
License:Open Source License
public UserListViewImpl() { super();//from w w w .j a va2 s .com this.setMargin(new MarginInfo(false, true, false, true)); MHorizontalLayout header = new MHorizontalLayout().withMargin(new MarginInfo(true, false, true, false)) .withFullWidth(); MButton createBtn = new MButton(UserUIContext.getMessage(UserI18nEnum.NEW), clickEvent -> EventBusFactory.getInstance().post(new UserEvent.GotoAdd(this, null))) .withIcon(FontAwesome.PLUS).withStyleName(WebThemes.BUTTON_ACTION) .withVisible(UserUIContext.canWrite(RolePermissionCollections.ACCOUNT_USER)); headerText = HeaderWithFontAwesome.h2(FontAwesome.USERS, UserUIContext.getMessage(UserI18nEnum.LIST) + " " + UserUIContext.getMessage(GenericI18Enum.OPT_TOTAL_VALUE, 0)); final MButton sortBtn = new MButton().withIcon(FontAwesome.SORT_ALPHA_ASC) .withStyleName(WebThemes.BUTTON_ICON_ONLY); sortBtn.addClickListener(clickEvent -> { sortAsc = !sortAsc; if (sortAsc) { sortBtn.setIcon(FontAwesome.SORT_ALPHA_ASC); displayUsers(); } else { sortBtn.setIcon(FontAwesome.SORT_ALPHA_DESC); displayUsers(); } }); header.addComponent(sortBtn); final SearchTextField searchTextField = new SearchTextField() { @Override public void doSearch(String value) { searchCriteria.setDisplayName(StringSearchField.and(value)); displayUsers(); } @Override public void emptySearch() { searchCriteria.setDisplayName(null); displayUsers(); } }; searchTextField.addStyleName(ValoTheme.TEXTFIELD_SMALL); MButton printBtn = new MButton("", clickEvent -> UI.getCurrent() .addWindow(new UserCustomizeReportOutputWindow(new LazyValueInjector() { @Override protected Object doEval() { return searchCriteria; } }))).withIcon(FontAwesome.PRINT).withStyleName(WebThemes.BUTTON_OPTION) .withDescription(UserUIContext.getMessage(GenericI18Enum.ACTION_EXPORT)); header.with(headerText, sortBtn, searchTextField, printBtn, createBtn).alignAll(Alignment.MIDDLE_LEFT) .expand(headerText); this.addComponent(header); contentLayout = new CssLayout(); contentLayout.setWidth("100%"); this.addComponent(contentLayout); }
From source file:com.save.employee.request.RequestFormWindow.java
Component buildRequestForm() { GridLayout glayout = new GridLayout(4, 7); glayout.setSizeFull();//from ww w . j a va2 s .c o m glayout.setSpacing(true); glayout.setMargin(true); controlNo = new TextField("Control No."); controlNo.setWidth("100%"); controlNo.addStyleName(ValoTheme.TEXTFIELD_SMALL); glayout.addComponent(controlNo, 0, 0); dateOfActivity = new DateField("Date of Activity: "); dateOfActivity.setWidth("100%"); dateOfActivity.addStyleName(ValoTheme.DATEFIELD_SMALL); glayout.addComponent(dateOfActivity, 1, 0); area = CommonComboBox.areas(); area.setWidth("100%"); glayout.addComponent(area, 2, 0); activity = new TextField("Activity: "); activity.setWidth("100%"); activity.addStyleName(ValoTheme.TEXTFIELD_SMALL); glayout.addComponent(activity, 0, 1, 1, 1); venue = new TextField("Venue: "); venue.setWidth("100%"); venue.addStyleName(ValoTheme.TEXTFIELD_SMALL); glayout.addComponent(venue, 0, 2, 1, 2); requirements = new TextArea("Requirements: "); requirements.setWidth("100%"); requirements.addStyleName(ValoTheme.TEXTAREA_SMALL); glayout.addComponent(requirements, 2, 1, 3, 2); Label lodging = new Label("Lodging: "); lodging.setWidthUndefined(); glayout.addComponent(lodging, 0, 3); glayout.setComponentAlignment(lodging, Alignment.MIDDLE_CENTER); lodgingPax = new TextField("Pax: "); lodgingPax.setWidth("100%"); lodgingPax.setValue("0"); lodgingPax.addStyleName(ValoTheme.TEXTFIELD_SMALL); lodgingPax.addStyleName("align-right"); glayout.addComponent(lodgingPax, 1, 3); lodgingAmount = new TextField("Amount: "); lodgingAmount.setWidth("100%"); lodgingAmount.setValue("0.00"); lodgingAmount.addStyleName(ValoTheme.TEXTFIELD_SMALL); lodgingAmount.addStyleName("align-right"); lodgingAmount.setEnabled(false); lodgingAmount.setImmediate(true); glayout.addComponent(lodgingAmount, 3, 3); lodgingBudget = new TextField("Budget: "); lodgingBudget.setWidth("100%"); lodgingBudget.setValue("0.00"); lodgingBudget.addStyleName(ValoTheme.TEXTFIELD_SMALL); lodgingBudget.addStyleName("align-right"); lodgingBudget.addValueChangeListener((ValueChangeEvent event) -> { if (!CommonUtilities.checkInputIfInteger(lodgingPax.getValue().trim())) { Notification.show("Enter a numeric value for Pax", Notification.Type.ERROR_MESSAGE); return; } if (!CommonUtilities.checkInputIfDouble(lodgingBudget.getValue().trim())) { Notification.show("Enter a numeric value for Budget", Notification.Type.ERROR_MESSAGE); return; } lodgingAmount.setValue(String.valueOf(CommonUtilities.convertStringToInt(lodgingPax.getValue().trim()) * CommonUtilities.convertStringToDouble(lodgingBudget.getValue().trim()))); }); lodgingBudget.setImmediate(true); glayout.addComponent(lodgingBudget, 2, 3); Label meals = new Label("Meals: "); meals.setWidthUndefined(); glayout.addComponent(meals, 0, 4); glayout.setComponentAlignment(meals, Alignment.MIDDLE_CENTER); mealsPax = new TextField("Pax: "); mealsPax.setWidth("100%"); mealsPax.setValue("0"); mealsPax.addStyleName(ValoTheme.TEXTFIELD_SMALL); mealsPax.addStyleName("align-right"); glayout.addComponent(mealsPax, 1, 4); mealsAmount = new TextField("Amount: "); mealsAmount.setWidth("100%"); mealsAmount.setValue("0.00"); mealsAmount.addStyleName(ValoTheme.TEXTFIELD_SMALL); mealsAmount.addStyleName("align-right"); mealsAmount.setEnabled(false); mealsAmount.setImmediate(liquidated); glayout.addComponent(mealsAmount, 3, 4); mealsBudget = new TextField("Budget: "); mealsBudget.setWidth("100%"); mealsBudget.setValue("0.00"); mealsBudget.addStyleName(ValoTheme.TEXTFIELD_SMALL); mealsBudget.addStyleName("align-right"); mealsBudget.addValueChangeListener((ValueChangeEvent event) -> { if (!CommonUtilities.checkInputIfInteger(mealsPax.getValue().trim())) { Notification.show("Enter a numeric value for Pax", Notification.Type.ERROR_MESSAGE); return; } if (!CommonUtilities.checkInputIfDouble(mealsBudget.getValue().trim())) { Notification.show("Enter a numeric value for Budget", Notification.Type.ERROR_MESSAGE); return; } mealsAmount.setValue(String.valueOf(CommonUtilities.convertStringToInt(mealsPax.getValue().trim()) * CommonUtilities.convertStringToDouble(mealsBudget.getValue().trim()))); }); mealsAmount.setImmediate(true); glayout.addComponent(mealsBudget, 2, 4); others = new TextArea("Others: "); others.setWidth("100%"); others.setRows(3); others.addStyleName(ValoTheme.TEXTAREA_SMALL); glayout.addComponent(others, 0, 5, 2, 6); othersAmount = new TextField("Amount: "); othersAmount.setWidth("100%"); othersAmount.setValue("0.00"); othersAmount.addStyleName(ValoTheme.TEXTFIELD_SMALL); othersAmount.addStyleName("align-right"); glayout.addComponent(othersAmount, 3, 5); glayout.setComponentAlignment(othersAmount, Alignment.TOP_CENTER); Button rlButton = new Button(); rlButton.setCaption("SAVE"); rlButton.setWidth("100%"); rlButton.addStyleName(ValoTheme.BUTTON_PRIMARY); rlButton.addStyleName(ValoTheme.BUTTON_SMALL); rlButton.addClickListener(buttonClickListener); glayout.addComponent(rlButton, 3, 6); glayout.setComponentAlignment(rlButton, Alignment.TOP_CENTER); if (getRequestId() != 0) { LiquidationForm lf = rls.getRLById(getRequestId()); controlNo.setValue(String.valueOf(lf.getControlNo())); dateOfActivity.setValue(lf.getDateOfActivity()); area.setValue(lf.getAreaId()); activity.setValue(lf.getActivity()); requirements.setValue(lf.getRequirements()); venue.setValue(lf.getVenue()); others.setValue(lf.getOthersRemarks()); othersAmount.setValue(String.valueOf(lf.getOthersAmount())); lodgingAmount.setValue(String.valueOf(lf.getLodgingAmount())); mealsAmount.setValue(String.valueOf(lf.getMealsAmount())); if (getLiquidated() == true) { setCaption("LIQUIDATE FROM"); rlButton.setCaption("LIQUIDATE"); controlNo.setReadOnly(liquidated); dateOfActivity.setReadOnly(liquidated); area.setReadOnly(liquidated); activity.setReadOnly(liquidated); requirements.setReadOnly(liquidated); venue.setReadOnly(liquidated); } else { rlButton.setCaption("EDIT"); lodgingPax.setValue(String.valueOf(lf.getLodgingPax())); lodgingBudget.setValue(String.valueOf(lf.getLodgingBudget())); mealsPax.setValue(String.valueOf(lf.getMealsPax())); mealsBudget.setValue(String.valueOf(lf.getMealsBudget())); rlButton.setEnabled(rls.getRLById(getRequestId()).getLiquidated() == 0); } // delete.setVisible(true); } return glayout; }
From source file:com.save.employee.request.ViewRLWindow.java
FormLayout buildFormLayout() { FormLayout f = new FormLayout(); f.setWidth("100%"); f.setMargin(true);/*www. ja va 2 s . c om*/ LiquidationForm lf = rls.getRLById(getRequestId()); controlNo = new TextField("Control No."); controlNo.setWidth("100%"); controlNo.addStyleName(ValoTheme.TEXTFIELD_SMALL); controlNo.setValue(String.valueOf(lf.getControlNo())); controlNo.setEnabled(false); f.addComponent(controlNo); dateOfActivity = new DateField("Date of Activity: "); dateOfActivity.setWidth("100%"); dateOfActivity.addStyleName(ValoTheme.DATEFIELD_SMALL); dateOfActivity.setValue(lf.getDateOfActivity()); dateOfActivity.setEnabled(false); f.addComponent(dateOfActivity); area = CommonComboBox.areas(); area.setWidth("100%"); area.setValue(lf.getAreaId()); area.setEnabled(false); f.addComponent(area); activity = new TextField("Activity: "); activity.setWidth("100%"); activity.addStyleName(ValoTheme.TEXTFIELD_SMALL); activity.setValue(lf.getActivity()); activity.setEnabled(false); f.addComponent(activity); venue = new TextField("Venue: "); venue.setWidth("100%"); venue.addStyleName(ValoTheme.TEXTFIELD_SMALL); venue.setValue(lf.getVenue()); venue.setEnabled(false); f.addComponent(venue); requirements = new TextArea("Requirements: "); requirements.setWidth("100%"); requirements.addStyleName(ValoTheme.TEXTAREA_SMALL); requirements.setValue(lf.getRequirements()); requirements.setEnabled(false); f.addComponent(requirements); HorizontalLayout h1 = new HorizontalLayout(); h1.setWidth("100%"); h1.setCaption("Request Lodging"); h1.addStyleName("light"); // h1.setReadOnly(true); requestLodgingPax = new TextField(); requestLodgingPax.setWidth("100%"); requestLodgingPax.addStyleName(ValoTheme.TEXTFIELD_SMALL); requestLodgingPax.addStyleName("align-right"); requestLodgingPax.setValue("Pax: " + String.valueOf(lf.getLodgingPax())); requestLodgingPax.setEnabled(false); h1.addComponent(requestLodgingPax); requestLodgingBudget = new TextField(); requestLodgingBudget.setWidth("100%"); requestLodgingBudget.addStyleName(ValoTheme.TEXTFIELD_SMALL); requestLodgingBudget.addStyleName("align-right"); requestLodgingBudget.setValue("Budget: " + String.valueOf(lf.getLodgingBudget())); requestLodgingBudget.setEnabled(false); h1.addComponent(requestLodgingBudget); requestLodgingAmount = new TextField(); requestLodgingAmount.setWidth("100%"); requestLodgingAmount.addStyleName(ValoTheme.TEXTFIELD_SMALL); requestLodgingAmount.addStyleName("align-right"); requestLodgingAmount.setValue("Amount: " + String.valueOf(lf.getLodgingAmount())); requestLodgingAmount.setEnabled(false); h1.addComponent(requestLodgingAmount); f.addComponent(h1); f.setComponentAlignment(h1, Alignment.MIDDLE_LEFT); HorizontalLayout h2 = new HorizontalLayout(); h2.setWidth("100%"); h2.setCaption("Request Meals"); // h2.setReadOnly(true); requestMealsPax = new TextField(); requestMealsPax.setWidth("100%"); requestMealsPax.addStyleName(ValoTheme.TEXTFIELD_SMALL); requestMealsPax.addStyleName("align-right"); requestMealsPax.setValue("Pax: " + String.valueOf(lf.getMealsPax())); requestMealsPax.setEnabled(false); h2.addComponent(requestMealsPax); requestMealsBudget = new TextField(); requestMealsBudget.setWidth("100%"); requestMealsBudget.addStyleName(ValoTheme.TEXTFIELD_SMALL); requestMealsBudget.addStyleName("align-right"); requestMealsBudget.setValue("Budget: " + String.valueOf(lf.getMealsBudget())); requestMealsBudget.setEnabled(false); h2.addComponent(requestMealsBudget); requestMealsAmount = new TextField(); requestMealsAmount.setWidth("100%"); requestMealsAmount.addStyleName(ValoTheme.TEXTFIELD_SMALL); requestMealsAmount.addStyleName("align-right"); requestMealsAmount.setValue("Amount: " + String.valueOf(lf.getMealsAmount())); requestMealsAmount.setEnabled(false); h2.addComponent(requestMealsAmount); f.addComponent(h2); f.setComponentAlignment(h2, Alignment.MIDDLE_LEFT); HorizontalLayout h3 = new HorizontalLayout(); h3.setWidth("100%"); h3.setCaption("Liquidated Lodging"); // h3.setReadOnly(true); liquidateLodgingPax = new TextField(); liquidateLodgingPax.setWidth("100%"); liquidateLodgingPax.addStyleName(ValoTheme.TEXTFIELD_SMALL); liquidateLodgingPax.addStyleName("align-right"); liquidateLodgingPax.setValue("Pax: " + String.valueOf(lf.getLiquidationLodgingPax())); liquidateLodgingPax.setEnabled(false); h3.addComponent(liquidateLodgingPax); liquidateLodgingBudget = new TextField(); liquidateLodgingBudget.setWidth("100%"); liquidateLodgingBudget.addStyleName(ValoTheme.TEXTFIELD_SMALL); liquidateLodgingBudget.addStyleName("align-right"); liquidateLodgingBudget.setValue("Budget: " + String.valueOf(lf.getLiquidationLodgingBudget())); liquidateLodgingBudget.setEnabled(false); h3.addComponent(liquidateLodgingBudget); liquidateLodgingAmount = new TextField(); liquidateLodgingAmount.setWidth("100%"); liquidateLodgingAmount.addStyleName(ValoTheme.TEXTFIELD_SMALL); liquidateLodgingAmount.addStyleName("align-right"); liquidateLodgingAmount.setValue("Amount: " + String.valueOf(lf.getLiquidationLodgingAmount())); liquidateLodgingAmount.setEnabled(false); h3.addComponent(liquidateLodgingAmount); f.addComponent(h3); f.setComponentAlignment(h3, Alignment.MIDDLE_LEFT); HorizontalLayout h4 = new HorizontalLayout(); h4.setWidth("100%"); h4.setCaption("Liquidated Meals"); h4.setReadOnly(true); liquidateMealsPax = new TextField(); liquidateMealsPax.setWidth("100%"); liquidateMealsPax.addStyleName(ValoTheme.TEXTFIELD_SMALL); liquidateMealsPax.addStyleName("align-right"); liquidateMealsPax.setValue("Pax: " + String.valueOf(lf.getLiquidationMealsPax())); liquidateMealsPax.setEnabled(false); h4.addComponent(liquidateMealsPax); liquidateMealsBudget = new TextField(); liquidateMealsBudget.setWidth("100%"); liquidateMealsBudget.addStyleName(ValoTheme.TEXTFIELD_SMALL); liquidateMealsBudget.addStyleName("align-right"); liquidateMealsBudget.setValue("Budget: " + String.valueOf(lf.getLiquidationMealsBudget())); liquidateMealsBudget.setEnabled(false); h4.addComponent(liquidateMealsBudget); liquidateMealsAmount = new TextField(); liquidateMealsAmount.setWidth("100%"); liquidateMealsAmount.addStyleName(ValoTheme.TEXTFIELD_SMALL); liquidateMealsAmount.addStyleName("align-right"); liquidateMealsAmount.setValue("Amount: " + String.valueOf(lf.getLiquidationMealsAmount())); liquidateMealsAmount.setEnabled(false); h4.addComponent(liquidateMealsAmount); f.addComponent(h4); f.setComponentAlignment(h4, Alignment.MIDDLE_LEFT); reimbursement = new TextField("Reimbursement: "); reimbursement.setWidth("50%"); reimbursement.addStyleName(ValoTheme.TEXTFIELD_SMALL); reimbursement.setValue(String.valueOf(lf.getReimbursedAmount())); reimbursement.setEnabled(false); f.addComponent(reimbursement); f.addStyleName("light"); f.setReadOnly(true); return f; }
From source file:fi.semantum.strategia.Utils.java
License:Open Source License
public static void modifyAccount(final Main main) { final Database database = main.getDatabase(); FormLayout content = new FormLayout(); content.setSizeFull();/*from w ww. j a v a 2 s. c om*/ final Label l = new Label(main.account.getId(database)); l.setCaption("Kyttjn nimi:"); l.setWidth("100%"); content.addComponent(l); final TextField tf = new TextField(); tf.setWidth("100%"); tf.addStyleName(ValoTheme.TEXTFIELD_SMALL); tf.addStyleName(ValoTheme.TEXTFIELD_BORDERLESS); tf.setCaption("Kyttjn nimi:"); tf.setId("loginUsernameField"); tf.setValue(main.account.getText(database)); content.addComponent(tf); final TextField tf2 = new TextField(); tf2.setWidth("100%"); tf2.addStyleName(ValoTheme.TEXTFIELD_SMALL); tf2.addStyleName(ValoTheme.TEXTFIELD_BORDERLESS); tf2.setCaption("Shkpostiosoite:"); tf2.setId("loginUsernameField"); tf2.setValue(main.account.getEmail()); content.addComponent(tf2); final PasswordField pf = new PasswordField(); pf.setCaption("Vanha salasana:"); pf.addStyleName(ValoTheme.TEXTFIELD_SMALL); pf.addStyleName(ValoTheme.TEXTFIELD_BORDERLESS); pf.setWidth("100%"); pf.setId("loginPasswordField"); content.addComponent(pf); final PasswordField pf2 = new PasswordField(); pf2.setCaption("Uusi salasana:"); pf2.addStyleName(ValoTheme.TEXTFIELD_SMALL); pf2.addStyleName(ValoTheme.TEXTFIELD_BORDERLESS); pf2.setWidth("100%"); pf2.setId("loginPasswordField"); content.addComponent(pf2); final PasswordField pf3 = new PasswordField(); pf3.setCaption("Uusi salasana uudestaan:"); pf3.addStyleName(ValoTheme.TEXTFIELD_SMALL); pf3.addStyleName(ValoTheme.TEXTFIELD_BORDERLESS); pf3.setWidth("100%"); pf3.setId("loginPasswordField"); content.addComponent(pf3); final Label err = new Label("Vr kyttjtunnus tai salasana"); err.addStyleName(ValoTheme.LABEL_FAILURE); err.addStyleName(ValoTheme.LABEL_TINY); err.setVisible(false); content.addComponent(err); HorizontalLayout buttons = new HorizontalLayout(); buttons.setSpacing(true); buttons.setMargin(false); Button apply = new Button("Tee muutokset"); buttons.addComponent(apply); final Window dialog = Dialogs.makeDialog(main, "450px", "480px", "Kyttjtilin asetukset", "Poistu", content, buttons); apply.addClickListener(new Button.ClickListener() { private static final long serialVersionUID = 1992235622970234624L; public void buttonClick(ClickEvent event) { String valueHash = Utils.hash(pf.getValue()); if (!valueHash.equals(main.account.getHash())) { err.setValue("Vr salasana"); err.setVisible(true); return; } if (pf2.isEmpty()) { err.setValue("Tyhj salasana ei kelpaa"); err.setVisible(true); return; } if (!pf2.getValue().equals(pf3.getValue())) { err.setValue("Uudet salasanat eivt tsm"); err.setVisible(true); return; } main.account.text = tf.getValue(); main.account.email = tf2.getValue(); main.account.hash = Utils.hash(pf2.getValue()); Updates.update(main, true); main.removeWindow(dialog); } }); }
From source file:fi.semantum.strategia.Utils.java
License:Open Source License
public static void manage(final Main main) { final Database database = main.getDatabase(); VerticalLayout content = new VerticalLayout(); content.setSizeFull();//from w w w. ja va 2 s. c om content.setSpacing(true); HorizontalLayout hl1 = new HorizontalLayout(); hl1.setSpacing(true); hl1.setWidth("100%"); final ComboBox users = new ComboBox(); users.setWidth("100%"); users.setNullSelectionAllowed(false); users.addStyleName(ValoTheme.COMBOBOX_SMALL); users.setCaption("Valitse kyttj:"); final Map<String, Account> accountMap = new HashMap<String, Account>(); makeAccountCombo(main, accountMap, users); for (Account a : Account.enumerate(database)) { accountMap.put(a.getId(database), a); users.addItem(a.getId(database)); users.select(a.getId(database)); } final Table table = new Table(); table.setSelectable(true); table.setMultiSelect(true); table.addStyleName(ValoTheme.TABLE_SMALL); table.addStyleName(ValoTheme.TABLE_SMALL); table.addStyleName(ValoTheme.TABLE_COMPACT); users.addValueChangeListener(new ValueChangeListener() { private static final long serialVersionUID = 5036991262418844060L; @Override public void valueChange(ValueChangeEvent event) { users.removeValueChangeListener(this); makeAccountCombo(main, accountMap, users); makeAccountTable(database, users, accountMap, table); users.addValueChangeListener(this); } }); final TextField tf = new TextField(); Validator nameValidator = new Validator() { private static final long serialVersionUID = -4779239111120669168L; @Override public void validate(Object value) throws InvalidValueException { String s = (String) value; if (s.isEmpty()) throw new InvalidValueException("Nimi ei saa olla tyhj"); if (accountMap.containsKey(s)) throw new InvalidValueException("Nimi on jo kytss"); } }; final Button save = new Button("Luo", new Button.ClickListener() { private static final long serialVersionUID = -6053708137324681886L; public void buttonClick(ClickEvent event) { if (!tf.isValid()) return; String pass = Long.toString(Math.abs(UUID.randomUUID().getLeastSignificantBits()), 36); Account.create(database, tf.getValue(), "", Utils.hash(pass)); Updates.update(main, true); makeAccountCombo(main, accountMap, users); makeAccountTable(database, users, accountMap, table); Dialogs.infoDialog(main, "Uusi kyttj '" + tf.getValue() + "' luotu", "Kyttjn salasana on " + pass + "", null); } }); save.addStyleName(ValoTheme.BUTTON_SMALL); final Button remove = new Button("Poista", new Button.ClickListener() { private static final long serialVersionUID = -5359199320445328801L; public void buttonClick(ClickEvent event) { Object selection = users.getValue(); Account state = accountMap.get(selection); // System cannot be removed if ("System".equals(state.getId(database))) return; state.remove(database); Updates.update(main, true); makeAccountCombo(main, accountMap, users); makeAccountTable(database, users, accountMap, table); } }); remove.addStyleName(ValoTheme.BUTTON_SMALL); tf.setWidth("100%"); tf.addStyleName(ValoTheme.TEXTFIELD_SMALL); tf.setCaption("Luo uusi kyttj nimell:"); tf.setValue(findFreshUserName(nameValidator)); tf.setCursorPosition(tf.getValue().length()); tf.setValidationVisible(true); tf.setInvalidCommitted(true); tf.setImmediate(true); tf.addTextChangeListener(new TextChangeListener() { private static final long serialVersionUID = -8274588731607481635L; @Override public void textChange(TextChangeEvent event) { tf.setValue(event.getText()); try { tf.validate(); } catch (InvalidValueException e) { save.setEnabled(false); return; } save.setEnabled(true); } }); tf.addValidator(nameValidator); if (!tf.isValid()) save.setEnabled(false); hl1.addComponent(users); hl1.setExpandRatio(users, 1.0f); hl1.setComponentAlignment(users, Alignment.BOTTOM_CENTER); hl1.addComponent(tf); hl1.setExpandRatio(tf, 1.0f); hl1.setComponentAlignment(tf, Alignment.BOTTOM_CENTER); hl1.addComponent(save); hl1.setExpandRatio(save, 0.0f); hl1.setComponentAlignment(save, Alignment.BOTTOM_CENTER); hl1.addComponent(remove); hl1.setExpandRatio(remove, 0.0f); hl1.setComponentAlignment(remove, Alignment.BOTTOM_CENTER); content.addComponent(hl1); content.setExpandRatio(hl1, 0.0f); table.addContainerProperty("Kartta", String.class, null); table.addContainerProperty("Oikeus", String.class, null); table.addContainerProperty("Laajuus", String.class, null); table.setWidth("100%"); table.setHeight("100%"); table.setNullSelectionAllowed(true); table.setMultiSelect(true); table.setCaption("Kyttjn oikeudet"); makeAccountTable(database, users, accountMap, table); content.addComponent(table); content.setExpandRatio(table, 1.0f); final Button removeRights = new Button("Poista valitut rivit", new Button.ClickListener() { private static final long serialVersionUID = 4699670345358079045L; public void buttonClick(ClickEvent event) { Object user = users.getValue(); Account state = accountMap.get(user); Object selection = table.getValue(); Collection<?> sel = (Collection<?>) selection; List<Right> toRemove = new ArrayList<Right>(); for (Object s : sel) { Integer index = (Integer) s; toRemove.add(state.rights.get(index - 1)); } for (Right r : toRemove) state.rights.remove(r); Updates.update(main, true); makeAccountTable(database, users, accountMap, table); } }); removeRights.addStyleName(ValoTheme.BUTTON_SMALL); table.addValueChangeListener(new ValueChangeListener() { private static final long serialVersionUID = 1188285609779556446L; @Override public void valueChange(ValueChangeEvent event) { Object selection = table.getValue(); Collection<?> sel = (Collection<?>) selection; if (sel.isEmpty()) removeRights.setEnabled(false); else removeRights.setEnabled(true); } }); final ComboBox mapSelect = new ComboBox(); mapSelect.setWidth("100%"); mapSelect.setNullSelectionAllowed(false); mapSelect.addStyleName(ValoTheme.COMBOBOX_SMALL); mapSelect.setCaption("Valitse kartta:"); for (Strategiakartta a : Strategiakartta.enumerate(database)) { mapSelect.addItem(a.uuid); mapSelect.setItemCaption(a.uuid, a.getText(database)); mapSelect.select(a.uuid); } final ComboBox rightSelect = new ComboBox(); rightSelect.setWidth("100px"); rightSelect.setNullSelectionAllowed(false); rightSelect.addStyleName(ValoTheme.COMBOBOX_SMALL); rightSelect.setCaption("Valitse oikeus:"); rightSelect.addItem("Muokkaus"); rightSelect.addItem("Luku"); rightSelect.select("Luku"); final ComboBox propagateSelect = new ComboBox(); propagateSelect.setWidth("130px"); propagateSelect.setNullSelectionAllowed(false); propagateSelect.addStyleName(ValoTheme.COMBOBOX_SMALL); propagateSelect.setCaption("Valitse laajuus:"); propagateSelect.addItem(VALITTU_KARTTA); propagateSelect.addItem(ALATASON_KARTAT); propagateSelect.select(VALITTU_KARTTA); final Button addRight = new Button("Lis rivi", new Button.ClickListener() { private static final long serialVersionUID = -4841787792917761055L; public void buttonClick(ClickEvent event) { Object user = users.getValue(); Account state = accountMap.get(user); String mapUUID = (String) mapSelect.getValue(); Strategiakartta map = database.find(mapUUID); String right = (String) rightSelect.getValue(); String propagate = (String) propagateSelect.getValue(); Right r = new Right(map, right.equals("Muokkaus"), propagate.equals(ALATASON_KARTAT)); state.rights.add(r); Updates.update(main, true); makeAccountTable(database, users, accountMap, table); } }); addRight.addStyleName(ValoTheme.BUTTON_SMALL); table.addValueChangeListener(new ValueChangeListener() { private static final long serialVersionUID = 6439090862804667322L; @Override public void valueChange(ValueChangeEvent event) { Object selection = table.getValue(); Collection<?> selected = (Collection<?>) selection; if (!selected.isEmpty()) { removeRights.setEnabled(true); } else { removeRights.setEnabled(false); } } }); HorizontalLayout hl2 = new HorizontalLayout(); hl2.setSpacing(true); hl2.setWidth("100%"); hl2.addComponent(removeRights); hl2.setComponentAlignment(removeRights, Alignment.TOP_LEFT); hl2.setExpandRatio(removeRights, 0.0f); hl2.addComponent(addRight); hl2.setComponentAlignment(addRight, Alignment.BOTTOM_LEFT); hl2.setExpandRatio(addRight, 0.0f); hl2.addComponent(mapSelect); hl2.setComponentAlignment(mapSelect, Alignment.BOTTOM_LEFT); hl2.setExpandRatio(mapSelect, 1.0f); hl2.addComponent(rightSelect); hl2.setComponentAlignment(rightSelect, Alignment.BOTTOM_LEFT); hl2.setExpandRatio(rightSelect, 0.0f); hl2.addComponent(propagateSelect); hl2.setComponentAlignment(propagateSelect, Alignment.BOTTOM_LEFT); hl2.setExpandRatio(propagateSelect, 0.0f); content.addComponent(hl2); content.setComponentAlignment(hl2, Alignment.BOTTOM_LEFT); content.setExpandRatio(hl2, 0.0f); final VerticalLayout vl = new VerticalLayout(); final Panel p = new Panel(); p.setWidth("100%"); p.setHeight("200px"); p.setContent(vl); final TimeConfiguration tc = TimeConfiguration.getInstance(database); final TextField tf2 = new TextField(); tf2.setWidth("200px"); tf2.addStyleName(ValoTheme.TEXTFIELD_SMALL); tf2.setCaption("Strategiakartan mritysaika:"); tf2.setValue(tc.getRange()); tf2.setCursorPosition(tf.getValue().length()); tf2.setValidationVisible(true); tf2.setInvalidCommitted(true); tf2.setImmediate(true); tf2.addTextChangeListener(new TextChangeListener() { private static final long serialVersionUID = -8274588731607481635L; @Override public void textChange(TextChangeEvent event) { tf2.setValue(event.getText()); try { tf2.validate(); tc.setRange(event.getText()); updateYears(database, vl); Updates.update(main, true); } catch (InvalidValueException e) { return; } } }); tf2.addValidator(new Validator() { private static final long serialVersionUID = -4779239111120669168L; @Override public void validate(Object value) throws InvalidValueException { String s = (String) value; TimeInterval ti = TimeInterval.parse(s); long start = ti.startYear; long end = ti.endYear; if (start < 2015) throw new InvalidValueException("Alkuvuosi ei voi olla aikaisempi kuin 2015."); if (end > 2025) throw new InvalidValueException("Pttymisvuosi ei voi olla myhisempi kuin 2025."); if (end - start > 9) throw new InvalidValueException("Strategiakartta ei tue yli 10 vuoden tarkasteluja."); } }); content.addComponent(tf2); content.setComponentAlignment(tf2, Alignment.BOTTOM_LEFT); content.setExpandRatio(tf2, 0.0f); updateYears(database, vl); content.addComponent(p); content.setComponentAlignment(p, Alignment.BOTTOM_LEFT); content.setExpandRatio(p, 0.0f); HorizontalLayout buttons = new HorizontalLayout(); buttons.setSpacing(true); buttons.setMargin(false); Dialogs.makeDialog(main, main.dialogWidth(), main.dialogHeight(0.8), "Hallinnoi strategiakarttaa", "Sulje", content, buttons); }
From source file:fi.semantum.strategia.Utils.java
License:Open Source License
public static void saveCurrentState(final Main main) { VerticalLayout content = new VerticalLayout(); content.setSizeFull();/* w w w. j a v a 2 s . c om*/ HorizontalLayout hl1 = new HorizontalLayout(); hl1.setSpacing(true); hl1.setWidth("100%"); final Map<String, UIState> stateMap = new HashMap<String, UIState>(); for (UIState s : main.account.uiStates) stateMap.put(s.name, s); final TextField tf = new TextField(); final Button save = new Button("Tallenna nkym", new Button.ClickListener() { private static final long serialVersionUID = 2449606920686729881L; public void buttonClick(ClickEvent event) { if (!tf.isValid()) return; String name = tf.getValue(); Page.getCurrent().getJavaScript().execute("doSaveBrowserState('" + name + "');"); } }); tf.setWidth("100%"); tf.addStyleName(ValoTheme.TEXTFIELD_SMALL); tf.setCaption("Tallenna nykyinen nkym nimell:"); tf.setValue("Uusi nkym"); tf.setCursorPosition(tf.getValue().length()); tf.setValidationVisible(true); tf.setInvalidCommitted(true); tf.setImmediate(true); tf.addTextChangeListener(new TextChangeListener() { private static final long serialVersionUID = -8274588731607481635L; @Override public void textChange(TextChangeEvent event) { tf.setValue(event.getText()); try { tf.validate(); } catch (InvalidValueException e) { save.setEnabled(false); return; } save.setEnabled(true); } }); tf.addValidator(new Validator() { private static final long serialVersionUID = -4779239111120669168L; @Override public void validate(Object value) throws InvalidValueException { String s = (String) value; if (s.isEmpty()) throw new InvalidValueException("Nimi ei saa olla tyhj"); if (stateMap.containsKey(s)) throw new InvalidValueException("Nimi on jo kytss"); } }); if (!tf.isValid()) save.setEnabled(false); hl1.addComponent(tf); hl1.setExpandRatio(tf, 1.0f); hl1.addComponent(save); hl1.setExpandRatio(save, 0.0f); hl1.setComponentAlignment(save, Alignment.BOTTOM_CENTER); content.addComponent(hl1); content.setExpandRatio(hl1, 0.0f); final ListSelect table = new ListSelect(); table.setWidth("100%"); table.setHeight("100%"); table.setNullSelectionAllowed(true); table.setMultiSelect(true); table.setCaption("Tallennetut nkymt"); for (UIState state : main.account.uiStates) { table.addItem(state.name); } content.addComponent(table); content.setExpandRatio(table, 1.0f); final Button remove = new Button("Poista valitut nkymt"); table.addValueChangeListener(new ValueChangeListener() { private static final long serialVersionUID = 6439090862804667322L; @Override public void valueChange(ValueChangeEvent event) { Object selection = table.getValue(); Collection<?> selected = (Collection<?>) selection; if (!selected.isEmpty()) { remove.setEnabled(true); } else { remove.setEnabled(false); } } }); remove.setEnabled(false); content.addComponent(remove); content.setComponentAlignment(remove, Alignment.MIDDLE_LEFT); content.setExpandRatio(remove, 0.0f); HorizontalLayout buttons = new HorizontalLayout(); buttons.setSpacing(true); buttons.setMargin(false); final Window dialog = Dialogs.makeDialog(main, "Nkymien hallinta", "Sulje", content, buttons); remove.addClickListener(new Button.ClickListener() { private static final long serialVersionUID = -4680588998085550908L; public void buttonClick(ClickEvent event) { Object selection = table.getValue(); Collection<?> selected = (Collection<?>) selection; if (!selected.isEmpty()) { for (Object o : selected) { UIState state = stateMap.get(o); if (state != null) main.account.uiStates.remove(state); } Updates.update(main, true); } main.removeWindow(dialog); } }); }
From source file:fi.semantum.strategia.Utils.java
License:Open Source License
public static void editTextAndId(final Main main, String title, final Base container) { final Database database = main.getDatabase(); final Window subwindow = new Window(title, new VerticalLayout()); subwindow.setModal(true);/*w ww . ja va2 s.c o m*/ subwindow.setWidth("400px"); subwindow.setHeight("500px"); subwindow.setResizable(false); VerticalLayout winLayout = (VerticalLayout) subwindow.getContent(); winLayout.setMargin(true); winLayout.setSpacing(true); final TextField tf = new TextField(); tf.setCaption("Lyhytnimi:"); tf.addStyleName(ValoTheme.TEXTFIELD_SMALL); tf.setValue(container.getId(database)); tf.setWidth("100%"); winLayout.addComponent(tf); final TextArea ta = new TextArea(); ta.setCaption("Teksti:"); ta.setValue(container.getText(database)); ta.setWidth("100%"); ta.setHeight("290px"); winLayout.addComponent(ta); Button save = new Button("Tallenna", new Button.ClickListener() { private static final long serialVersionUID = 6641880870005364983L; public void buttonClick(ClickEvent event) { String idValue = tf.getValue(); String value = ta.getValue(); main.removeWindow(subwindow); container.modifyId(main, idValue); container.modifyText(main, value); Collection<String> tags = Tag.extractTags(value); database.assertTags(tags); ArrayList<Tag> tagObjects = new ArrayList<Tag>(); for (String s : tags) tagObjects.add(database.getOrCreateTag(s)); container.assertRelatedTags(database, tagObjects); Updates.update(main, true); Property emails = Property.find(database, Property.EMAIL); String addr = emails.getPropertyValue(container); if (addr != null && !addr.isEmpty()) { String[] addrs = addr.split(","); if (addrs.length > 0) { try { Email.send(addrs, "Muutos strategiakartassa: " + container.getId(database), "Kyttj " + main.account.getId(database) + " on muuttanut strategiakarttaa.<br/><br/>Lyhytnimi: " + container.getId(database) + "<br/><br/>Teksti: " + container.getText(database)); } catch (MessagingException e) { e.printStackTrace(); } } } } }); Button discard = new Button("Peru muutokset", new Button.ClickListener() { private static final long serialVersionUID = -784522457615993823L; public void buttonClick(ClickEvent event) { Updates.update(main, true); main.removeWindow(subwindow); } }); HorizontalLayout hl2 = new HorizontalLayout(); hl2.setSpacing(true); hl2.addComponent(save); hl2.addComponent(discard); winLayout.addComponent(hl2); winLayout.setComponentAlignment(hl2, Alignment.MIDDLE_CENTER); main.addWindow(subwindow); ta.setCursorPosition(ta.getValue().length()); }
From source file:fi.semantum.strategia.widget.Indicator.java
License:Open Source License
private static TextField makeUnit(Database database, HorizontalLayout hl, Indicator indicator) { if (!(indicator.getDatatype(database) instanceof NumberDatatype)) return null; final TextField unit = new TextField("Yksikk"); unit.setValue(indicator.getUnit());// w ww . j a v a 2 s . c om unit.setWidth("100%"); unit.addStyleName(ValoTheme.TEXTFIELD_SMALL); hl.addComponent(unit); hl.setComponentAlignment(unit, Alignment.MIDDLE_CENTER); hl.setExpandRatio(unit, 1.0f); return unit; }
From source file:fi.semantum.strategia.widget.Indicator.java
License:Open Source License
public static void editIndicator(final Main main, final Base base, final Indicator indicator) { final Database database = main.getDatabase(); VerticalLayout content = new VerticalLayout(); content.setSizeFull();//from w w w . j ava2 s. com content.setHeightUndefined(); content.setSpacing(true); HorizontalLayout hl = new HorizontalLayout(); hl.setSpacing(true); hl.setWidth("100%"); content.addComponent(hl); content.setExpandRatio(hl, 0.0f); final TextField tf = new TextField("Tunniste"); tf.setValue(indicator.getId(database)); tf.setWidth("100%"); tf.addStyleName(ValoTheme.TEXTFIELD_SMALL); hl.addComponent(tf); hl.setComponentAlignment(tf, Alignment.MIDDLE_CENTER); hl.setExpandRatio(tf, 2.0f); final TextField tf1 = new TextField("Teksti"); tf1.setValue(indicator.getText(database)); tf1.setWidth("100%"); tf1.addStyleName(ValoTheme.TEXTFIELD_SMALL); hl.addComponent(tf1); hl.setComponentAlignment(tf1, Alignment.MIDDLE_CENTER); hl.setExpandRatio(tf1, 2.0f); final TextField unit = makeUnit(database, hl, indicator); final TextField tf2 = new TextField(); tf2.setCaption("Voimassaolo"); tf2.setValue(Utils.getValidity(database, indicator)); tf2.addStyleName(ValoTheme.TEXTFIELD_TINY); tf2.setWidth("100%"); hl.addComponent(tf2); hl.setComponentAlignment(tf2, Alignment.MIDDLE_CENTER); hl.setExpandRatio(tf2, 1.0f); final TextArea ta = new TextArea("Mritys"); ta.setValue(indicator.getText(database)); ta.setWidth("100%"); ta.setHeight("100px"); content.addComponent(ta); content.setComponentAlignment(ta, Alignment.MIDDLE_CENTER); content.setExpandRatio(ta, 0.0f); final Label ta2 = makeHistory(database, indicator, main.getUIState().forecastMeters); content.addComponent(ta2); content.setComponentAlignment(ta2, Alignment.MIDDLE_CENTER); content.setExpandRatio(ta2, 1.0f); HorizontalLayout buttons = new HorizontalLayout(); buttons.setSpacing(true); buttons.setMargin(false); Button ok = new Button("Tallenna", new Button.ClickListener() { private static final long serialVersionUID = 1992235622970234624L; public void buttonClick(ClickEvent event) { indicator.modifyId(main, tf.getValue()); Utils.modifyValidity(main, indicator, tf2.getValue()); indicator.modifyText(main, tf1.getValue()); indicator.modifyDescription(main, ta.getValue()); if (unit != null) { indicator.modifyUnit(main, unit.getValue()); } Updates.update(main, true); manageIndicators(main, main.getUIState().currentItem); } }); buttons.addComponent(ok); Button close = new Button("Sulje"); buttons.addComponent(close); final Window dialog = Dialogs.makeDialog(main, "650px", "800px", "Muokkaa indikaattoria", null, content, buttons); close.addClickListener(new Button.ClickListener() { private static final long serialVersionUID = 1992235622970234624L; public void buttonClick(ClickEvent event) { main.removeWindow(dialog); manageIndicators(main, main.getUIState().currentItem); } }); }