List of usage examples for com.vaadin.ui Panel setWidth
@Override public void setWidth(String width)
From source file:com.logicbomb.newschool.MyAppWidgetSet.core.DayWidget.java
public DayWidget() { //Creating Panel Panel iPanel = new Panel(); iPanel.addStyleName("backColorWhite"); iPanel.setWidth("876px"); iPanel.setHeight("41px"); ProgressBar iDayProgressBar = new ProgressBar(); iDayProgressBar.setCaption("Period 3, 10th October"); iDayProgressBar.setWidth("875px"); iDayProgressBar.setValue(0.3f);//from ww w .j a v a2s . com addComponent(iDayProgressBar); //Adding Panel to Vertical Layout addComponent(iPanel); VerticalLayout iVerticalLayout = new VerticalLayout(); GridLayout iGridLayout = new GridLayout(9, 1); iGridLayout.setWidth("1000px"); iGridLayout.setHeight("40px"); for (int i = 1; i <= 8; i++) { HourWidget iHourAtAGlanceWidget = new HourWidget(i, 8); iHourAtAGlanceWidget.setSizeFull(); iGridLayout.addComponent(iHourAtAGlanceWidget); iGridLayout.setColumnExpandRatio(i, 1); } iVerticalLayout.addComponent(iGridLayout); iPanel.setContent(iVerticalLayout); }
From source file:com.logicbomb.newschool.MyAppWidgetSet.core.UserDetailsWidgetOld.java
public UserDetailsWidgetOld() { setSpacing(true);/*from www .ja v a 2 s . co m*/ Panel iPanel = new Panel(); iPanel.setWidth("50px"); iPanel.setHeight("50px"); iPanel.setStyleName("backColorWhite"); addComponent(iPanel); String basepath = VaadinService.getCurrent().getBaseDirectory().getAbsolutePath(); // Image as a file resource FileResource resource = new FileResource(new File(basepath + "/VAADIN/themes/mytheme/img/loginPage.jpg")); // Show the image in the application Image image = new Image("", resource); image.setSizeFull(); iPanel.setContent(image); }
From source file:com.logicbomb.newschool.MyAppWidgetSet.MenuWidget.java
public MenuWidget(String Width) { Panel iPanel = new Panel(); iPanel.setWidth(Width); iPanel.setStyleName("backColorWhite"); addComponent(iPanel);//from w w w. ja v a 2 s . c o m VerticalLayout iVerticalLayout = new VerticalLayout(); for (int i = 1; i <= 8; i++) { Button iButton = new Button(); iButton.setWidth(Width); iButton.setHeight("50px"); iVerticalLayout.addComponent(iButton); } iPanel.setContent(iVerticalLayout); }
From source file:com.mycompany.project.components.ContactDetails.java
public ContactDetails() { // setCaption("Contact Details"); VerticalLayout mainVLayout = new VerticalLayout(); mainVLayout.setMargin(true);/* w ww . j a v a2 s . c om*/ mainVLayout.setSpacing(true); setContent(mainVLayout); tfName.setSizeFull(); tfAddress.setSizeFull(); tfPhone.setSizeFull(); tfEmail.setSizeFull(); Panel panel = new Panel("Grupos"); panel.setWidth("100%"); panel.setHeight("50px"); panel.setContent(groupsHLayout); mainVLayout.addComponent(tfName); mainVLayout.addComponent(tfAddress); mainVLayout.addComponent(tfPhone); mainVLayout.addComponent(tfEmail); mainVLayout.addComponent(groupsHLayout); Button btnUpdate = new Button("Actualizar"); mainVLayout.addComponent(btnUpdate); btnUpdate.addClickListener(new ClickListener() { @Override public void buttonClick(Button.ClickEvent event) { //invoke business logic BusinessLogic bl = ((MyVaadinUI) getUI()).getBusinessLogic(); String name = tfName.getValue(); String address = tfAddress.getValue(); String phone = tfPhone.getValue(); String email = tfEmail.getValue(); ArrayList<String> selectedGroupIds = new ArrayList<String>(); Set<String> groupIdSet = groupsMap.keySet(); for (String groupId : groupIdSet) { CheckBox cb = groupsMap.get(groupId); if (cb.getValue()) { selectedGroupIds.add(groupId); } } boolean success = bl.updateContact(selectedContactId, name, address, phone, email, selectedGroupIds); if (success) { load(selectedContactId); Notification.show("Informacion", "Contacto Actualizado", Notification.Type.TRAY_NOTIFICATION); } else { Notification.show("Error", "\nSomething bad happened", Notification.Type.ERROR_MESSAGE); } } }); ContactDetails.this.setVisible(false); }
From source file:com.openhris.commons.UploadImage.java
public UploadImage(Panel imagePanel, Embedded avatar, String employeeId) { this.imagePanel = imagePanel; this.avatar = avatar; this.employeeId = employeeId; imagePanel = new Panel("Upload Component"); imagePanel.setWidth("400px"); addComponent(imagePanel);//from w ww .ja v a 2s .c om // Create the Upload component. upload = new Upload("Upload the Image file here", receiver); // Use a custom button caption instead of plain "Upload". upload.setButtonCaption("Upload Now"); // Listen for events regarding the success of upload. upload.addListener((Upload.StartedListener) this); upload.addListener((Upload.SucceededListener) this); upload.addListener((Upload.FailedListener) this); panel.setWidth("100%"); panel.addComponent(new Label("Click 'Choose file' to " + "select a file and then click 'Upload Now'. " + "image should have the same width and height so " + "that image will not look deformed when viewed.")); imagePanel.addComponent(upload); imagePanel.addComponent(panel); avatar = new Embedded(); avatar.setImmediate(true); avatar.setWidth(90, Sizeable.UNITS_PIXELS); avatar.setHeight(90, Sizeable.UNITS_PIXELS); imagePanel.addComponent(avatar); }
From source file:com.openhris.employee.EmployeePersonalInformation.java
public ComponentContainer layout() { glayout = new GridLayout(4, 19); glayout.setSpacing(true);//from w ww .j a va 2 s. co m glayout.setWidth("600px"); glayout.setHeight("100%"); final Panel imagePanel = new Panel(); imagePanel.setStyleName("light"); AbstractLayout panelLayout = (AbstractLayout) imagePanel.getContent(); panelLayout.setMargin(false); imagePanel.setWidth("100px"); avatar = new Embedded(null, new ThemeResource("../myTheme/img/fnc.jpg")); avatar.setImmediate(true); avatar.setWidth(90, Sizeable.UNITS_PIXELS); avatar.setHeight(90, Sizeable.UNITS_PIXELS); avatar.addStyleName("logo-img"); imagePanel.addComponent(avatar); glayout.addComponent(avatar, 0, 0, 0, 1); glayout.setComponentAlignment(imagePanel, Alignment.MIDDLE_CENTER); Button uploadPhotoBtn = new Button("Upload.."); uploadPhotoBtn.setWidth("100%"); uploadPhotoBtn.setStyleName(Reindeer.BUTTON_SMALL); uploadPhotoBtn.addListener(new Button.ClickListener() { @Override public void buttonClick(Button.ClickEvent event) { if (getEmployeeId() == null) { getWindow().showNotification("You did not select and Employee!", Window.Notification.TYPE_WARNING_MESSAGE); return; } Window uploadImage = new UploadImage(imagePanel, avatar, getEmployeeId()); uploadImage.setWidth("450px"); if (uploadImage.getParent() == null) { getWindow().addWindow(uploadImage); } uploadImage.setModal(true); uploadImage.center(); } }); glayout.addComponent(uploadPhotoBtn, 0, 2); glayout.setComponentAlignment(uploadPhotoBtn, Alignment.MIDDLE_CENTER); fnField = createTextField("Firstname: "); glayout.addComponent(fnField, 1, 0); glayout.setComponentAlignment(fnField, Alignment.MIDDLE_LEFT); mnField = createTextField("Middlename: "); glayout.addComponent(mnField, 2, 0); glayout.setComponentAlignment(mnField, Alignment.MIDDLE_LEFT); lnField = createTextField("Lastname: "); glayout.addComponent(lnField, 3, 0); glayout.setComponentAlignment(lnField, Alignment.MIDDLE_LEFT); companyIdField = createTextField("Employee ID: "); companyIdField.setEnabled(false); glayout.addComponent(companyIdField, 1, 1, 2, 1); glayout.setComponentAlignment(companyIdField, Alignment.MIDDLE_LEFT); dobField = new PopupDateField("Date of Birth: "); dobField.addStyleName("mydate"); dobField.setDateFormat("MM/dd/yyyy"); dobField.setWidth("100%"); dobField.setResolution(DateField.RESOLUTION_DAY); glayout.addComponent(dobField, 1, 2); glayout.setComponentAlignment(dobField, Alignment.MIDDLE_LEFT); pobField = createTextField("Birth Place: "); pobField.setValue("N/A"); glayout.addComponent(pobField, 2, 2, 3, 2); glayout.setComponentAlignment(pobField, Alignment.MIDDLE_LEFT); genderBox = dropDownComponent.populateGenderList(new ComboBox()); genderBox.setWidth("100%"); glayout.addComponent(genderBox, 1, 3); glayout.setComponentAlignment(genderBox, Alignment.MIDDLE_LEFT); civilStatusBox = dropDownComponent.populateCivilStatusList(new ComboBox()); civilStatusBox.setWidth("100%"); glayout.addComponent(civilStatusBox, 2, 3); glayout.setComponentAlignment(civilStatusBox, Alignment.MIDDLE_LEFT); citizenshipField = createTextField("Citizenship: "); citizenshipField.setValue("N/A"); glayout.addComponent(citizenshipField, 3, 3); glayout.setComponentAlignment(citizenshipField, Alignment.MIDDLE_LEFT); heightField = createTextField("Height(cm):"); heightField.setValue(0.0); glayout.addComponent(heightField, 1, 4); glayout.setComponentAlignment(heightField, Alignment.MIDDLE_LEFT); weightField = createTextField("Weight(kg): "); weightField.setValue(0.0); glayout.addComponent(weightField, 2, 4); glayout.setComponentAlignment(weightField, Alignment.MIDDLE_LEFT); religionField = createTextField("Religion: "); religionField.setValue("N/A"); glayout.addComponent(religionField, 3, 4); glayout.setComponentAlignment(religionField, Alignment.MIDDLE_LEFT); spouseNameField = createTextField("Spouse Name: "); spouseNameField.setValue("N/A"); glayout.addComponent(spouseNameField, 1, 5, 2, 5); glayout.setComponentAlignment(spouseNameField, Alignment.MIDDLE_LEFT); spouseOccupationField = createTextField("Spouse Occupation: "); spouseOccupationField.setValue("N/A"); glayout.addComponent(spouseOccupationField, 3, 5); glayout.setComponentAlignment(spouseOccupationField, Alignment.MIDDLE_LEFT); spouseOfficeAddressField = createTextField("Spouse Office Address: "); spouseOfficeAddressField.setValue("N/A"); glayout.addComponent(spouseOfficeAddressField, 1, 6, 3, 6); glayout.setComponentAlignment(spouseOfficeAddressField, Alignment.MIDDLE_LEFT); fathersNameField = createTextField("Father's Name: "); fathersNameField.setValue("N/A"); glayout.addComponent(fathersNameField, 1, 7, 2, 7); glayout.setComponentAlignment(fathersNameField, Alignment.MIDDLE_LEFT); fathersOccupationField = createTextField("Father's Occupation: "); fathersOccupationField.setValue("N/A"); glayout.addComponent(fathersOccupationField, 3, 7); glayout.setComponentAlignment(fathersOccupationField, Alignment.MIDDLE_LEFT); mothersNameField = createTextField("Mother's Maiden Name: "); mothersNameField.setValue("N/A"); glayout.addComponent(mothersNameField, 1, 8, 2, 8); glayout.setComponentAlignment(mothersNameField, Alignment.MIDDLE_LEFT); mothersOccupationField = createTextField("Mother's Occupation: "); mothersOccupationField.setValue("N/A"); glayout.addComponent(mothersOccupationField, 3, 8); glayout.setComponentAlignment(mothersOccupationField, Alignment.MIDDLE_LEFT); parentsAddressField = createTextField("Parents Address"); parentsAddressField.setValue("N/A"); glayout.addComponent(parentsAddressField, 1, 9, 3, 9); glayout.setComponentAlignment(parentsAddressField, Alignment.MIDDLE_LEFT); dialectSpeakWriteField = createTextField("Language or Dialect you can speak or write: "); dialectSpeakWriteField.setValue("N/A"); glayout.addComponent(dialectSpeakWriteField, 1, 10, 3, 10); glayout.setComponentAlignment(dialectSpeakWriteField, Alignment.MIDDLE_LEFT); contactPersonNameField = createTextField("Contact Person: "); contactPersonNameField.setValue("N/A"); glayout.addComponent(contactPersonNameField, 1, 11); glayout.setComponentAlignment(contactPersonNameField, Alignment.MIDDLE_LEFT); contactPersonAddressField = createTextField("Contact Person's Address: "); contactPersonAddressField.setValue("N/A"); glayout.addComponent(contactPersonAddressField, 2, 11, 3, 11); glayout.setComponentAlignment(contactPersonAddressField, Alignment.MIDDLE_LEFT); contactPersonNoField = createTextField("Contact Person's Tel No: "); contactPersonNoField.setValue("N/A"); glayout.addComponent(contactPersonNoField, 1, 12); glayout.setComponentAlignment(contactPersonNoField, Alignment.MIDDLE_LEFT); skillsField = createTextField("Skills: "); skillsField.setValue("N/A"); glayout.addComponent(skillsField, 2, 12); glayout.setComponentAlignment(skillsField, Alignment.MIDDLE_LEFT); hobbyField = createTextField("Hobbies"); hobbyField.setValue("N/A"); glayout.addComponent(hobbyField, 3, 12); glayout.setComponentAlignment(hobbyField, Alignment.MIDDLE_LEFT); if (employeeId != null) { personalInformation = piService.getPersonalInformationData(employeeId); final byte[] image = personalInformation.getImage(); if (image != null) { StreamResource.StreamSource imageSource = new StreamResource.StreamSource() { @Override public InputStream getStream() { return new ByteArrayInputStream(image); } }; StreamResource imageResource = new StreamResource(imageSource, personalInformation.getFirstname() + ".jpg", getThisApplication()); imageResource.setCacheTime(0); avatar.setSource(imageResource); } fnField.setValue(personalInformation.getFirstname().toUpperCase()); mnField.setValue(personalInformation.getMiddlename().toUpperCase()); lnField.setValue(personalInformation.getLastname().toUpperCase()); companyIdField.setValue(employeeId); dobField.setValue(personalInformation.getDob()); pobField.setValue(personalInformation.getPob()); if (personalInformation.getCivilStatus() != null) { Object civilStatusId = civilStatusBox.addItem(); civilStatusBox.setItemCaption(civilStatusId, personalInformation.getCivilStatus()); civilStatusBox.setValue(civilStatusId); } if (personalInformation.getGender() != null) { Object genderId = genderBox.addItem(); genderBox.setItemCaption(genderId, personalInformation.getGender()); genderBox.setValue(genderId); } citizenshipField.setValue(personalInformation.getCitizenship()); heightField.setValue(personalInformation.getHeight()); weightField.setValue(personalInformation.getWeight()); religionField.setValue(personalInformation.getReligion()); spouseNameField.setValue(personalInformation.getSpouseName()); spouseOccupationField.setValue(personalInformation.getSpouseOccupation()); spouseOfficeAddressField.setValue(personalInformation.getSpouseOfficeAddress()); fathersNameField.setValue(personalInformation.getFathersName()); fathersOccupationField.setValue(personalInformation.getFathersOccupation()); mothersNameField.setValue(personalInformation.getMothersName()); mothersOccupationField.setValue(personalInformation.getMothersOccupation()); parentsAddressField.setValue(personalInformation.getParentsAddress()); dialectSpeakWriteField.setValue(personalInformation.getDialectSpeakWrite()); contactPersonNameField.setValue(personalInformation.getContactPersonName()); contactPersonAddressField.setValue(personalInformation.getContactPersonAddress()); contactPersonNoField.setValue(personalInformation.getContactPersonNo()); skillsField.setValue(personalInformation.getSkills()); hobbyField.setValue(personalInformation.getHobby()); } Button removeBtn = new Button("REMOVE EMPLOYEE"); removeBtn.setWidth("100%"); boolean visible = false; if (GlobalVariables.getUserRole() == null) { visible = false; } else if (GlobalVariables.getUserRole().equals("hr") || GlobalVariables.getUserRole().equals("administrator")) { visible = true; } removeBtn.setVisible(visible); removeBtn.addListener(new Button.ClickListener() { @Override public void buttonClick(Button.ClickEvent event) { if (!GlobalVariables.getUserRole().equals("administrator")) { getWindow().showNotification("You need to an ADMINISTRATOR to perform this ACTION.", Window.Notification.TYPE_WARNING_MESSAGE); return; } Window window = getRemoveWindow(getEmployeeId()); window.setModal(true); if (window.getParent() == null) { getWindow().addWindow(window); } window.center(); } }); glayout.addComponent(removeBtn, 1, 13); Button saveButton = new Button("UPDATE EMPLOYEE's INFORMATION"); saveButton.setWidth("100%"); saveButton.addListener(new Button.ClickListener() { @Override public void buttonClick(Button.ClickEvent event) { if (dobField.getValue() == null || dobField.getValue().toString().isEmpty()) { getWindow().showNotification("Date of Birth Required!", Window.Notification.TYPE_ERROR_MESSAGE); return; } if (heightField.getValue() == null || heightField.getValue().toString().isEmpty()) { getWindow().showNotification("Null/Empty Value for Height is not ALLOWED!", Window.Notification.TYPE_ERROR_MESSAGE); return; } else { if (!convertionUtilities.checkInputIfDouble(heightField.getValue().toString())) { getWindow().showNotification("Enter a numeric format for Height!", Window.Notification.TYPE_ERROR_MESSAGE); return; } } if (weightField.getValue() == null || weightField.getValue().toString().isEmpty()) { getWindow().showNotification("Null/Empty Value for Weight is not ALLOWED!", Window.Notification.TYPE_ERROR_MESSAGE); return; } else { if (!convertionUtilities.checkInputIfDouble(weightField.getValue().toString())) { getWindow().showNotification("Enter a numeric format for Weight!", Window.Notification.TYPE_ERROR_MESSAGE); return; } } if (genderBox.getValue() == null || genderBox.getValue().toString().isEmpty()) { getWindow().showNotification("Select a Gender!", Window.Notification.TYPE_ERROR_MESSAGE); return; } if (civilStatusBox.getValue() == null || civilStatusBox.getValue().toString().isEmpty()) { getWindow().showNotification("Select Civil Status!", Window.Notification.TYPE_ERROR_MESSAGE); return; } PersonalInformation pi = new PersonalInformation(); pi.setFirstname(fnField.getValue().toString().toLowerCase().trim()); pi.setMiddlename(mnField.getValue().toString().toLowerCase().trim()); pi.setLastname(lnField.getValue().toString().toLowerCase().trim()); pi.setEmployeeId(employeeId); pi.setDob((Date) dobField.getValue()); pi.setPob((pobField.getValue() == null) ? "N/A" : pobField.getValue().toString().toLowerCase().trim()); pi.setHeight(convertionUtilities.convertStringToDouble(heightField.getValue().toString())); pi.setWeight(convertionUtilities.convertStringToDouble(weightField.getValue().toString())); if (convertionUtilities.checkInputIfInteger(genderBox.getValue().toString())) { pi.setGender(genderBox.getItemCaption(genderBox.getValue())); } else { pi.setGender(genderBox.getValue().toString()); } if (convertionUtilities.checkInputIfInteger(civilStatusBox.getValue().toString())) { pi.setCivilStatus(civilStatusBox.getItemCaption(civilStatusBox.getValue())); } else { pi.setCivilStatus(civilStatusBox.getValue().toString()); } pi.setCitizenship( (citizenshipField.getValue() == null) ? "N/A" : citizenshipField.getValue().toString()); pi.setReligion((religionField.getValue() == null) ? "N/A" : religionField.getValue().toString()); pi.setSpouseName( (spouseNameField.getValue() == null) ? "N/A" : spouseNameField.getValue().toString()); pi.setSpouseOccupation((spouseOccupationField.getValue() == null) ? "N/A" : spouseOccupationField.getValue().toString()); pi.setSpouseOfficeAddress((spouseOfficeAddressField.getValue() == null) ? "N/A" : spouseOfficeAddressField.getValue().toString()); pi.setFathersName( (fathersNameField.getValue() == null) ? "N/A" : fathersNameField.getValue().toString()); pi.setFathersOccupation((fathersOccupationField.getValue() == null) ? "N/A" : fathersOccupationField.getValue().toString()); pi.setMothersName( (mothersNameField.getValue() == null) ? "N/A" : mothersNameField.getValue().toString()); pi.setMothersOccupation((mothersOccupationField.getValue() == null) ? "N/A" : mothersOccupationField.getValue().toString()); pi.setParentsAddress((parentsAddressField.getValue() == null) ? "N/A" : parentsAddressField.getValue().toString()); pi.setDialectSpeakWrite((dialectSpeakWriteField.getValue() == null) ? "N/A" : dialectSpeakWriteField.getValue().toString()); pi.setContactPersonName((contactPersonNameField.getValue() == null) ? "N/A" : contactPersonNameField.getValue().toString()); pi.setContactPersonAddress((contactPersonAddressField.getValue() == null) ? "N/A" : contactPersonAddressField.getValue().toString()); pi.setContactPersonNo((contactPersonNoField.getValue() == null) ? "N/A" : contactPersonNoField.getValue().toString()); pi.setSkills((skillsField.getValue() == null) ? "N/A" : skillsField.getValue().toString()); pi.setHobby((hobbyField.getValue() == null) ? "N/A" : hobbyField.getValue().toString()); pi.setEmployeeId(getEmployeeId()); // boolean result = piService.updatePersonalInformation(pi, "UPDATE PERSONAL INFORMATION"); Window window = updatePersonalInformationConfirmation(pi); window.setModal(true); if (window.getParent() == null) { getWindow().addWindow(window); } window.center(); // if(result){ // getWindow().showNotification("Information Updated", Window.Notification.TYPE_TRAY_NOTIFICATION); // } else { // getWindow().showNotification("SQL Error", Window.Notification.TYPE_ERROR_MESSAGE); // } } }); if (GlobalVariables.getUserRole().equals("administrator") || GlobalVariables.getUserRole().equals("hr")) { saveButton.setEnabled(true); } else { saveButton.setEnabled(false); } glayout.addComponent(saveButton, 2, 13, 3, 13); glayout.setColumnExpandRatio(1, .10f); glayout.setColumnExpandRatio(2, .10f); glayout.setColumnExpandRatio(3, .10f); return glayout; }
From source file:com.squadd.chat.ChatController.java
public static Panel createDatePanel(ChatMessage mess) { Panel datePanel = new Panel(); //FormLayout form = new FormLayout(); //form.setMargin(false); Label dateLabel = new Label(mess.getFormattedDate()); dateLabel.addStyleName("dateLabel"); dateLabel.setValue("YrMOOOm"); //form.addComponent(dateLabel); //datePanel.setContent(form); datePanel.setContent(dateLabel);// w w w . j av a 2 s.co m datePanel.setWidth("100px"); datePanel.setHeight("50px"); return datePanel; }
From source file:com.squadd.chat.ChatController.java
public static Panel createMessagePanel(ChatMessage message) { Panel chatLine = new Panel(); Integer from = message.getIdFrom(); Integer to = message.getIdTo(); String body = message.getBody(); VerticalLayout messageLayout = new VerticalLayout(); Label nameLabel = new Label(from.toString() + " said:");//!!! ? nameLabel.setStyleName("messageHeader"); Label messageLabel = new Label(body); messageLabel.setStyleName("messageBody"); messageLayout.addComponents(nameLabel, messageLabel); chatLine.setContent(messageLayout);/*from www . j a v a2 s .c o m*/ chatLine.setWidth("500px"); return chatLine; }
From source file:com.squadd.UI.MessageLayout.java
private void configureLayout() { VerticalLayout all = new VerticalLayout(); HorizontalLayout dates = new HorizontalLayout(when); dates.setSpacing(true);/*from w w w .ja v a 2s . c om*/ when.setSizeUndefined(); Panel panel = new Panel(); panel.setWidth(Display.width * 0.3 + "px"); panel.setContent(text); groupPhoto.setWidth(Display.width * 0.05 + "px"); groupPhoto.setHeight(Display.height * 0.05 + "px"); HorizontalLayout other = new HorizontalLayout(groupPhoto, panel); all.addComponents(dates, other); Panel wrap = new Panel(); wrap.setContent(all); addComponent(wrap); }
From source file:com.trivago.mail.pigeon.web.components.groups.GroupList.java
License:Apache License
public GroupList() { final GroupList gl = this; final Panel rootPanel = new Panel("Groups"); rootPanel.setWidth("800px"); Button groupListNewButton = new Button("Add group"); groupListNewButton.setImmediate(true); groupListNewButton.setIcon(new ThemeResource("../runo/icons/16/document-add.png")); groupListNewButton.addListener(new Button.ClickListener() { @Override//from w w w. j ava 2s . c om public void buttonClick(Button.ClickEvent event) { Window modalNewWindow = new ModalAddNewGroup(gl); event.getButton().getWindow().addWindow(modalNewWindow); modalNewWindow.setVisible(true); } }); viewTable = new Table(); viewTable.setWidth("100%"); final Button editButton = new Button("Edit"); editButton.setImmediate(true); editButton.setIcon(new ThemeResource("../runo/icons/16/document-txt.png")); editButton.addListener(new Button.ClickListener() { @Override public void buttonClick(Button.ClickEvent event) { if (viewTable.isEditable()) { viewTable.setEditable(false); editButton.setCaption("Edit"); viewTable.requestRepaintAll(); editButton.getWindow().showNotification("Save successful", Window.Notification.TYPE_HUMANIZED_MESSAGE); } else { viewTable.setEditable(true); editButton.setCaption("Save"); viewTable.requestRepaintAll(); } } }); viewTable.setImmediate(true); beanContainer = new BeanContainer<>(RecipientGroup.class); List<RecipientGroup> groupList = getGroupList(); for (RecipientGroup group : groupList) { beanContainer.addItem(group.getId(), group); } viewTable.setContainerDataSource(beanContainer); viewTable.addGeneratedColumn("memberNumber", new GroupColumnGenerator()); viewTable.addGeneratedColumn("Actions", new ActionButtonColumnGenerator()); // First set the vis. cols, then the headlines (the other way round leads to an exception) viewTable.setVisibleColumns(new String[] { "id", "name", "memberNumber", "Actions" }); viewTable.setColumnHeaders(new String[] { "ID", "Name", "Member #", "Actions" }); viewTable.setColumnExpandRatio(3, 2); viewTable.setColumnExpandRatio(4, 2); HorizontalLayout topButtonLayout = new HorizontalLayout(); topButtonLayout.setSpacing(true); topButtonLayout.setMargin(false, false, true, false); topButtonLayout.addComponent(groupListNewButton); topButtonLayout.addComponent(editButton); rootPanel.addComponent(topButtonLayout); rootPanel.addComponent(viewTable); setCompositionRoot(rootPanel); }