List of usage examples for com.vaadin.ui GridLayout GridLayout
public GridLayout(int columns, int rows)
From source file:at.peppol.webgui.app.components.TabInvoiceDelivery.java
License:Mozilla Public License
private void initElements() { deliveryList = parent.getInvoice().getDelivery(); if (deliveryList.size() == 0) { deliveryItem = createDeliveryItem(); deliveryList.add(deliveryItem);//from w ww . j av a 2 s . c om } else { deliveryItem = deliveryList.get(0); deliveryAddress = deliveryItem.getDeliveryLocation().getAddress(); prepareForms(); } final GridLayout grid = new GridLayout(2, 2); final VerticalLayout outerLayout = new VerticalLayout(); final Panel outerPanel = new Panel("Delivery"); outerPanel.addComponent(grid); outerPanel.setScrollable(true); outerLayout.addComponent(outerPanel); final Panel invoiceDetailsPanel = new Panel("Delivery Details"); invoiceDetailsPanel.setStyleName("light"); invoiceDetailsPanel.setSizeFull(); invoiceDetailsPanel.addComponent(createInvoiceDeliveryTopForm()); invoiceDetailsPanel.addComponent(deliveryAddressForm); grid.addComponent(invoiceDetailsPanel, 0, 0); grid.setSizeUndefined(); setLayout(outerLayout); outerPanel.requestRepaintAll(); }
From source file:at.peppol.webgui.app.components.TabInvoiceHeader.java
License:Mozilla Public License
private void initElements() { additionalDocRefList = parent.getInvoice().getAdditionalDocumentReference(); setWidth("100%"); setHeight("100%"); //final GridLayout grid = new GridLayout(4, 4); final VerticalLayout outerLayout = new VerticalLayout(); //outerLayout.setMargin(true); //outerLayout.setSpacing(true); //grid that contains "Details", "Contract", "Order" final GridLayout topGridLayout = new GridLayout(2, 2); //topGridLayout.setSizeFull(); topGridLayout.setMargin(true);/*from w w w. j a va 2 s .c o m*/ topGridLayout.setSpacing(true); hiddenContent = new VerticalLayout(); hiddenContent.setSpacing(true); hiddenContent.setMargin(true); final Panel outerPanel = new Panel("Invoice Header"); //outerPanel.addComponent(grid); outerPanel.setScrollable(true); outerPanel.setContent(outerLayout); //outerLayout.addComponent(outerPanel); VerticalLayout tabLayout = new VerticalLayout(); tabLayout.addComponent(outerPanel); outerLayout.addComponent(topGridLayout); final Panel invoiceDetailsPanel = new Panel("Invoice Header Details"); invoiceDetailsPanel.setStyleName("light"); invoiceDetailsPanel.setWidth("50%"); //invoiceDetailsPanel.setSizeFull(); invoiceDetailsPanel.addComponent(createInvoiceTopForm()); topGridLayout.addComponent(invoiceDetailsPanel, 0, 0); final Panel orderReferencePanel = new Panel("Referencing Order"); orderReferencePanel.setStyleName("light"); orderReferencePanel.setWidth("50%"); //orderReferencePanel.setSizeFull(); orderReferencePanel.addComponent(createInvoiceOrderReferenceForm()); topGridLayout.addComponent(orderReferencePanel, 0, 1); final VerticalLayout tableVerticalLayout = new VerticalLayout(); //tableVerticalLayout.setSpacing (true); tableVerticalLayout.setMargin(true); outerLayout.addComponent(tableVerticalLayout); table = new InvoiceAdditionalDocRefTable(parent.getInvoice().getAdditionalDocumentReference()); table.setSelectable(true); table.setImmediate(true); table.setNullSelectionAllowed(false); table.setHeight(150, UNITS_PIXELS); table.setSizeFull(); //table.setWidth("300px"); table.setFooterVisible(false); table.addStyleName("striped strong"); Panel tablePanel = new Panel("Relevant Documents"); tablePanel.setStyleName("light"); tablePanel.setWidth("60%"); tableVerticalLayout.addComponent(tablePanel); GridLayout h = new GridLayout(2, 2); h.setMargin(true); h.setSpacing(true); tablePanel.setContent(h); h.addComponent(table, 0, 0); h.setColumnExpandRatio(0, 3); h.setColumnExpandRatio(1, 1); h.setSizeFull(); Button addButton = new Button("Add new"); Button editButton = new Button("Edit selected"); Button deleteButton = new Button("Delete selected"); VerticalLayout buttonsContainer = new VerticalLayout(); buttonsContainer.setSpacing(true); buttonsContainer.addComponent(addButton); buttonsContainer.addComponent(editButton); buttonsContainer.addComponent(deleteButton); InvoiceAdditionalDocRefTableEditor editor = new InvoiceAdditionalDocRefTableEditor(editMode); Label label = new Label("<h3>Adding new relevant document</h3>", Label.CONTENT_XHTML); addButton.addListener(editor.addButtonListener(editButton, deleteButton, hiddenContent, table, additionalDocRefList, label)); label = new Label("<h3>Edit relevant document</h3>", Label.CONTENT_XHTML); editButton.addListener(editor.editButtonListener(addButton, deleteButton, hiddenContent, table, additionalDocRefList, label)); deleteButton.addListener(editor.deleteButtonListener(table)); final Button addContractReferenceBtn = new Button("Add Contract Reference"); final Button removeContractReferenceBtn = new Button("Remove Contract Reference"); removeContractReferenceBtn.setVisible(false); addContractReferenceBtn.setStyleName("marginLeft"); removeContractReferenceBtn.setStyleName("marginLeft"); addContractReferenceBtn.addListener(new Button.ClickListener() { @Override public void buttonClick(ClickEvent event) { Panel panel = createInvoiceContractReference(removeContractReferenceBtn); topGridLayout.removeComponent(1, 0); topGridLayout.addComponent(panel, 1, 0); removeContractReferenceBtn.setVisible(true); } }); removeContractReferenceBtn.addListener(new Button.ClickListener() { @Override public void buttonClick(ClickEvent event) { //remove the legal entity component panel Component c = removeContractReferenceBtn.getParent().getParent(); topGridLayout.removeComponent(c); if (parent.getInvoice().getContractDocumentReference().size() > 0) { //parent.getInvoice().getContractDocumentReference().remove(0); parent.getInvoice().getContractDocumentReference().clear(); ValidatorsList.removeListeners(Utils.getFieldListeners(contractReferenceForm)); } topGridLayout.addComponent(addContractReferenceBtn, 1, 0); } }); h.addComponent(buttonsContainer, 1, 0); topGridLayout.addComponent(addContractReferenceBtn, 1, 0); if (parent.getInvoice().getContractDocumentReference().size() > 0) addContractReferenceBtn.click(); // ---- HIDDEN FORM BEGINS ----- VerticalLayout formLayout = new VerticalLayout(); formLayout.addComponent(hiddenContent); hiddenContent.setVisible(false); h.addComponent(formLayout, 0, 1); // ---- HIDDEN FORM ENDS ----- setLayout(tabLayout); }
From source file:at.peppol.webgui.app.components.TabInvoiceLine.java
License:Mozilla Public License
private void initElements() { invoiceLineList = parent.getInvoice().getInvoiceLine(); final GridLayout grid = new GridLayout(4, 4); final VerticalLayout outerLayout = new VerticalLayout(); hiddenContent = new VerticalLayout(); hiddenContent.setSpacing(true);//from w w w . j a v a2 s . c om hiddenContent.setMargin(true); table = new InvoiceLineTable(parent.getInvoice().getInvoiceLine()); table.setSelectable(true); table.setImmediate(true); table.setNullSelectionAllowed(false); table.setHeight(150, UNITS_PIXELS); table.setFooterVisible(false); table.addStyleName("striped strong"); //table.addListener(parent.new LinesTotalAmountListener()); //table.addListener(parent.new TaxExclusiveAmountListener()); final VerticalLayout tableContainer = new VerticalLayout(); tableContainer.addComponent(table); tableContainer.setMargin(false, true, false, false); // buttons Add, Edit, Delete final Button addBtn = new Button("Add new"); final Button editBtn = new Button("Edit selected"); final Button deleteBtn = new Button("Delete Selected"); addBtn.addListener(new Button.ClickListener() { @Override public void buttonClick(final Button.ClickEvent event) { addBtn.setEnabled(false); editBtn.setEnabled(false); deleteBtn.setEnabled(false); //addMode = true; hiddenContent.removeAllComponents(); invoiceLineItem = createInvoiceLineItem(); final Label formLabel = new Label("<h3>Adding new invoice line</h3>", Label.CONTENT_XHTML); hiddenContent.addComponent(formLabel); final Form form = createInvoiceLineMainForm(); hiddenContent.addComponent(form); HorizontalLayout h1 = new HorizontalLayout(); h1.setSpacing(true); h1.setMargin(true); // Set invoiceLine 0..N cardinality panels //final Panel itemPropertyPanel = new ItemPropertyForm ("Additional", // invoiceLineItem.getInvLineAdditionalItemPropertyList ()); final ItemPropertyForm itemPropertyPanel = new ItemPropertyForm("Additional", invoiceLineItem.getInvLineAdditionalItemPropertyList()); h1.addComponent(itemPropertyPanel); //add the allowance/charge indicator 0..N cardinality final InvoiceLineAllowanceChargeForm lineAllowanceChargePanel = new InvoiceLineAllowanceChargeForm( "", invoiceLineItem.getAllowanceCharge(), parent.getInvoice()); //add the listeners for line extension amount calculation BIIRULE_T10_R018 biirule_t10_r018 = new BIIRULE_T10_R018(invoiceLineItem, form); form.getField("Price Amount").addListener(biirule_t10_r018); form.getField("Base Quantity").addListener(biirule_t10_r018); form.getField("Invoiced Quantity").addListener(biirule_t10_r018); lineAllowanceChargePanel.getTable().addListener((ItemSetChangeListener) biirule_t10_r018); //add the listeners for VAT AE tax total amount EUGEN_T10_R018 eugen_t10_r018 = new EUGEN_T10_R018(form, "Tax Scheme ID", "Tax Category ID", "Tax Total Amount"); form.getField("Tax Scheme ID").addListener(eugen_t10_r018); form.getField("Tax Category ID").addListener(eugen_t10_r018); h1.addComponent(lineAllowanceChargePanel); HorizontalLayout h2 = new HorizontalLayout(); h2.setSpacing(true); h2.setMargin(true); final Panel lineOrderPanel = new InvoiceLineOrderForm("", invoiceLineItem.getInvLineOrderList()); h2.addComponent(lineOrderPanel); final Panel lineCommodityPanel = new InvoiceLineCommodityClassificationForm("", invoiceLineItem.getInvLineCommodityClassificationList()); h2.addComponent(lineCommodityPanel); hiddenContent.addComponent(h1); hiddenContent.addComponent(h2); // Save new line button final HorizontalLayout buttonLayout = new HorizontalLayout(); buttonLayout.setSpacing(true); buttonLayout.addComponent(new Button("Save invoice line", new Button.ClickListener() { @Override public void buttonClick(final ClickEvent event) { AbstractTextField itemName = (AbstractTextField) form.getField("Item Name"); itemName.setMaxLength(50); if (itemName.getValue().toString().length() > 50) { //itemName.setComponentError(new UserError("Item Name should not be more than 50 characters")); itemName.setValue(itemName.getValue().toString().substring(0, 49)); getWindow().showNotification("Item Name truncated to 50 chars", Notification.TYPE_TRAY_NOTIFICATION); } try { /*Collection<String> props = (Collection<String>) form.getItemPropertyIds(); List<Field> fields = new ArrayList<Field>(); for (String property : props) { fields.add(form.getField(property)); } List<BlurListener> listeners = new ArrayList<BlurListener>(); for (Field f : fields) { if (f instanceof AbstractTextField) { AbstractTextField ff = (AbstractTextField)f; listeners.addAll((Collection<BlurListener>) ff.getListeners(BlurEvent.class)); } } ValidatorsList.validateListenersNotify(listeners); form.validate();*/ Utils.validateFormFields(form); //form.commit(); // update table (and consequently add new item to invoiceList list) table.addLine(invoiceLineItem); //hide form hiddenContent.setVisible(false); //addMode = false; addBtn.setEnabled(true); editBtn.setEnabled(true); deleteBtn.setEnabled(true); //itemName.setComponentError(null); } catch (InvalidValueException e) { getWindow().showNotification("Invoice line has errors", Notification.TYPE_TRAY_NOTIFICATION); } } })); buttonLayout.addComponent(new Button("Cancel", new Button.ClickListener() { @Override public void buttonClick(final ClickEvent event) { addBtn.setEnabled(true); editBtn.setEnabled(true); deleteBtn.setEnabled(true); hiddenContent.removeAllComponents(); // hide form hiddenContent.setVisible(false); addMode = false; } })); hiddenContent.addComponent(buttonLayout); // hiddenContent.setVisible(!hiddenContent.isVisible()); hiddenContent.setVisible(true); } }); editBtn.addListener(new Button.ClickListener() { @Override public void buttonClick(final Button.ClickEvent event) { final Object rowId = table.getValue(); // get the selected rows id if (rowId != null) { addBtn.setEnabled(true); editBtn.setEnabled(true); deleteBtn.setEnabled(true); final String sid = (String) table.getContainerProperty(rowId, "ID.value").getValue(); // TODO: PUT THIS IN FUNCTION BEGINS editMode = true; hiddenContent.removeAllComponents(); // get selected item invoiceLineItem = (InvoiceLineAdapter) invoiceLineList.get(table.getIndexFromID(sid)); // clone it to original item originalItem = new InvoiceLineAdapter(); cloneInvoiceLineItem(invoiceLineItem, originalItem); final Label formLabel = new Label("<h3>Editing invoice line</h3>", Label.CONTENT_XHTML); hiddenContent.addComponent(formLabel); final Form form = createInvoiceLineMainForm(); hiddenContent.addComponent(form); HorizontalLayout h1 = new HorizontalLayout(); h1.setSpacing(true); h1.setMargin(true); // Set invoiceLine 0..N cardinality panels final ItemPropertyForm itemPropertyPanel = new ItemPropertyForm("Additional", invoiceLineItem.getInvLineAdditionalItemPropertyList()); h1.addComponent(itemPropertyPanel); //add the allowance/charge indicator 0..N cardinality final InvoiceLineAllowanceChargeForm lineAllowanceChargePanel = new InvoiceLineAllowanceChargeForm( "", invoiceLineItem.getAllowanceCharge(), parent.getInvoice()); //add the listeners for line extension amount calculation BIIRULE_T10_R018 biirule_t10_r018 = new BIIRULE_T10_R018(invoiceLineItem, form); form.getField("Price Amount").addListener(biirule_t10_r018); form.getField("Base Quantity").addListener(biirule_t10_r018); lineAllowanceChargePanel.getTable().addListener((ItemSetChangeListener) biirule_t10_r018); //add the listeners for VAT AE tax total amount EUGEN_T10_R018 eugen_t10_r018 = new EUGEN_T10_R018(form, "Tax Scheme ID", "Tax Category ID", "Tax Total Amount"); form.getField("Tax Scheme ID").addListener(eugen_t10_r018); form.getField("Tax Category ID").addListener(eugen_t10_r018); h1.addComponent(lineAllowanceChargePanel); HorizontalLayout h2 = new HorizontalLayout(); h2.setSpacing(true); h2.setMargin(true); final Panel lineOrderPanel = new InvoiceLineOrderForm("", invoiceLineItem.getInvLineOrderList()); h2.addComponent(lineOrderPanel); final Panel lineCommodityPanel = new InvoiceLineCommodityClassificationForm("", invoiceLineItem.getInvLineCommodityClassificationList()); h2.addComponent(lineCommodityPanel); hiddenContent.addComponent(h1); hiddenContent.addComponent(h2); /*// Set invoiceLine 0..N cardinalily panels final Panel itemPropertyPanel = new ItemPropertyForm ("Additional", invoiceLineItem.getInvLineAdditionalItemPropertyList ()); hiddenContent.addComponent (itemPropertyPanel);*/ // Save new line button final HorizontalLayout buttonLayout = new HorizontalLayout(); buttonLayout.setSpacing(true); buttonLayout.addComponent(new Button("Save changes", new Button.ClickListener() { @Override public void buttonClick(final ClickEvent event) { // update table (and consequently edit item to allowanceChargeList // list) AbstractTextField itemName = (AbstractTextField) form.getField("Item Name"); itemName.setMaxLength(50); if (itemName.getValue().toString().length() > 50) { //itemName.setComponentError(new UserError("Item Name should not be more than 50 characters")); itemName.setValue(itemName.getValue().toString().substring(0, 49)); getWindow().showNotification("Item Name truncated to 50 chars", Notification.TYPE_TRAY_NOTIFICATION); } try { /*Collection<String> props = (Collection<String>) form.getItemPropertyIds(); List<Field> fields = new ArrayList<Field>(); for (String property : props) { fields.add(form.getField(property)); } List<BlurListener> listeners = new ArrayList<BlurListener>(); for (Field f : fields) { if (f instanceof AbstractTextField) { AbstractTextField ff = (AbstractTextField)f; listeners.addAll((Collection<BlurListener>) ff.getListeners(BlurEvent.class)); } } ValidatorsList.validateListenersNotify(listeners); form.validate();*/ Utils.validateFormFields(form); //table.setInvoiceLine (sid, invoiceLineItem); table.setLine(sid, invoiceLineItem); addBtn.setEnabled(true); editBtn.setEnabled(true); deleteBtn.setEnabled(true); // hide form hiddenContent.setVisible(false); editMode = false; } catch (InvalidValueException e) { getWindow().showNotification("Invoice line has errors", Notification.TYPE_TRAY_NOTIFICATION); } } })); buttonLayout.addComponent(new Button("Cancel editing", new Button.ClickListener() { @Override public void buttonClick(final ClickEvent event) { hiddenContent.removeAllComponents(); addBtn.setEnabled(true); editBtn.setEnabled(true); deleteBtn.setEnabled(true); //table.setInvoiceLine (sid, originalItem); table.setLine(sid, originalItem); // hide form hiddenContent.setVisible(false); editMode = false; } })); hiddenContent.addComponent(buttonLayout); // hiddenContent.setVisible(!hiddenContent.isVisible()); hiddenContent.setVisible(true); // TODO: PUT THIS IN FUNCTION ENDS } else { parent.getWindow().showNotification("Info", "No table line is selected", Window.Notification.TYPE_HUMANIZED_MESSAGE); } } }); deleteBtn.addListener(new Button.ClickListener() { @Override public void buttonClick(final Button.ClickEvent event) { final Object rowId = table.getValue(); // get the selected rows id if (rowId != null) { if (table.getContainerProperty(rowId, "ID.value").getValue() != null) { final String sid = (String) table.getContainerProperty(rowId, "ID.value").getValue(); //table.removeInvoiceLine (sid); table.removeLine(sid); } } else { parent.getWindow().showNotification("Info", "No table line is selected", Window.Notification.TYPE_HUMANIZED_MESSAGE); } } }); final VerticalLayout buttonsContainer = new VerticalLayout(); buttonsContainer.setSpacing(true); buttonsContainer.addComponent(addBtn); buttonsContainer.addComponent(editBtn); buttonsContainer.addComponent(deleteBtn); final Panel outerPanel = new Panel("Invoice Line"); grid.addComponent(tableContainer, 0, 0); grid.addComponent(buttonsContainer, 1, 0); outerPanel.addComponent(grid); outerLayout.addComponent(outerPanel); // ---- HIDDEN FORM BEGINS ----- final VerticalLayout formLayout = new VerticalLayout(); formLayout.addComponent(hiddenContent); hiddenContent.setVisible(false); outerLayout.addComponent(formLayout); // ---- HIDDEN FORM ENDS ----- setLayout(outerLayout); grid.setSizeUndefined(); outerPanel.requestRepaintAll(); }
From source file:at.peppol.webgui.app.components.TabInvoiceMonetaryTotal.java
License:Mozilla Public License
private void initElements() { // monetaryTotal = parent.getInvoice().getLegalMonetaryTotal (); monetaryTotal = createMonetaryTotal(); parent.getInvoice().setLegalMonetaryTotal(monetaryTotal); final GridLayout grid = new GridLayout(4, 4); final VerticalLayout outerLayout = new VerticalLayout(); final Panel outerPanel = new Panel("Monetary Total"); outerPanel.addComponent(grid);/* w w w . j a v a 2 s . c o m*/ outerPanel.setScrollable(true); outerLayout.addComponent(outerPanel); final Panel invoiceDetailsPanel = new Panel("Monetary Total Details"); invoiceDetailsPanel.setStyleName("light"); invoiceDetailsPanel.setSizeFull(); invoiceMonetaryTotalTopForm = createInvoiceMonetaryTotalTopForm(); invoiceDetailsPanel.addComponent(invoiceMonetaryTotalTopForm); //invoiceDetailsPanel.addComponent (createInvoiceMonetaryTotalTopForm ()); grid.addComponent(invoiceDetailsPanel, 0, 0, 3, 0); grid.setSizeUndefined(); //Add the Total Line Extension Amount Listener setLayout(outerLayout); outerPanel.requestRepaintAll(); }
From source file:at.peppol.webgui.app.components.TabInvoicePayment.java
License:Mozilla Public License
@SuppressWarnings("serial") private void initElements() { editMode = false;/*from w ww. j ava2 s.c o m*/ paymentMeansList = parent.getInvoice().getPaymentMeans(); //paymentMeansItem = createPaymentMeansItem(); //paymentMeansList.add (paymentMeansItem); //paymentTermsList = parent.getInvoice().getPaymentTerms (); //PaymentTermsType pt = new PaymentTermsType(); //paymentTermsList.add (pt); if (parent.getInvoice().getPaymentTerms().size() == 0) { paymentTermsItem = new PaymentTermsType(); paymentTermsItem.getNote().add(new NoteType()); parent.getInvoice().getPaymentTerms().add(paymentTermsItem); } else { paymentTermsItem = parent.getInvoice().getPaymentTerms().get(0); } //payeeParty = parent.getInvoice().getPayeeParty (); if (parent.getInvoice().getPayeeParty() == null) { payeeParty = createPayeePartyItem(); parent.getInvoice().setPayeeParty(payeeParty); } else { payeeParty = parent.getInvoice().getPayeeParty(); } //payeeParty = new PartyType(); //payeeParty.setParty(new PartyType()); hiddenContent = new VerticalLayout(); hiddenContent.setSpacing(true); hiddenContent.setMargin(true); final GridLayout grid = new GridLayout(2, 2); grid.setSpacing(true); //grid.setMargin(true); final VerticalLayout outerLayout = new VerticalLayout(); final Panel outerPanel = new Panel("Payment"); outerPanel.addComponent(grid); outerPanel.setScrollable(true); outerLayout.addComponent(outerPanel); final Panel invoiceDetailsPanel = new Panel("Payment Details"); invoiceDetailsPanel.setStyleName("light"); invoiceDetailsPanel.setSizeFull(); //invoiceDetailsPanel.addComponent(createInvoicePaymentTopForm()); //grid.addComponent(invoiceDetailsPanel, 0, 0); final Panel payeePartyPanel = new Panel("Payee Details"); payeePartyPanel.setStyleName("light"); payeePartyPanel.setSizeFull(); payeePartyPanel.addComponent(createInvoicePayeePartyForm()); //payeeForm = new PartyDetailForm("Payee", payeeParty); //payeePartyPanel.addComponent(payeeForm); grid.addComponent(payeePartyPanel, 0, 0); final Panel paymentTermsPanel = new Panel("Payment Terms"); paymentTermsPanel.setStyleName("light"); paymentTermsPanel.setSizeFull(); paymentTermsPanel.addComponent(createInvoicePaymentTermsForm()); grid.addComponent(paymentTermsPanel, 1, 0); final Panel paymentMeansPanel = new Panel("Payment Means"); VerticalLayout paymentMeansLayout = new VerticalLayout(); paymentMeansPanel.setContent(paymentMeansLayout); paymentMeansPanel.setStyleName("light"); paymentMeansPanel.setSizeFull(); paymentMeansLayout.setSpacing(true); paymentMeansLayout.setMargin(true); table = new PaymentMeansTable(paymentMeansList); table.setSelectable(true); table.setImmediate(true); table.setNullSelectionAllowed(false); table.setHeight(200, UNITS_PIXELS); table.setSizeFull(); table.setWidth("80%"); table.setFooterVisible(false); table.addStyleName("striped strong"); HorizontalLayout tableLayout = new HorizontalLayout(); paymentMeansLayout.addComponent(tableLayout); paymentMeansLayout.addComponent(hiddenContent); hiddenContent.setVisible(false); VerticalLayout tableButtonsLayout = new VerticalLayout(); tableButtonsLayout.setSpacing(true); tableButtonsLayout.setMargin(true); final Button addButton = new Button("Add new"); final Button editButton = new Button("Edit selected"); final Button deleteButton = new Button("Delete selected"); tableButtonsLayout.addComponent(addButton); tableButtonsLayout.addComponent(editButton); tableButtonsLayout.addComponent(deleteButton); tableLayout.addComponent(table); tableLayout.addComponent(tableButtonsLayout); outerPanel.addComponent(paymentMeansPanel); grid.setSizeUndefined(); PaymentMeansTableEditor editor = new PaymentMeansTableEditor(editMode, parent.getInvoice()); Label label = new Label("<h3>Adding new payments means</h3>", Label.CONTENT_XHTML); addButton.addListener( editor.addButtonListener(editButton, deleteButton, hiddenContent, table, paymentMeansList, label)); label = new Label("<h3>Edit payment means line</h3>", Label.CONTENT_XHTML); editButton.addListener( editor.editButtonListener(addButton, deleteButton, hiddenContent, table, paymentMeansList, label)); deleteButton.addListener(editor.deleteButtonListener(table)); setLayout(outerLayout); outerPanel.requestRepaintAll(); }
From source file:at.peppol.webgui.app.components.TabInvoiceTaxTotal.java
License:Mozilla Public License
@SuppressWarnings("serial") private void initElements() { taxTotalList = parent.getInvoice().getTaxTotal(); if (taxTotalList.size() == 0) { taxTotalItem = createTaxTotalItem(); taxTotalList.add(taxTotalItem);//w ww. j a v a 2 s . c om } else { taxTotalItem = taxTotalList.get(0); } //taxSubtotalList = parent.getInvoice ().getTaxTotal ().get (0).getTaxSubtotal (); taxSubtotalList = taxTotalItem.getTaxSubtotal(); final GridLayout grid = new GridLayout(4, 4); final VerticalLayout outerLayout = new VerticalLayout(); hiddenContent = new VerticalLayout(); hiddenContent.setSpacing(true); hiddenContent.setMargin(true); final Panel outerPanel = new Panel("Tax Total"); outerPanel.addComponent(grid); outerPanel.setScrollable(true); outerLayout.addComponent(outerPanel); table = new InvoiceTaxSubtotalTable(taxTotalList.get(0).getTaxSubtotal()); table.setSelectable(true); table.setImmediate(true); table.setNullSelectionAllowed(false); table.setHeight(150, UNITS_PIXELS); table.setFooterVisible(true); table.addStyleName("striped strong"); final VerticalLayout tableContainer = new VerticalLayout(); tableContainer.addComponent(table); tableContainer.setMargin(false, true, false, false); Button addButton = new Button("Add new"); Button editButton = new Button("Edit selected"); Button deleteButton = new Button("Delete selected"); final VerticalLayout buttonsContainer = new VerticalLayout(); buttonsContainer.setSpacing(true); buttonsContainer.addComponent(addButton); buttonsContainer.addComponent(editButton); buttonsContainer.addComponent(deleteButton); InvoiceTaxSubtotalTableEditor editor = new InvoiceTaxSubtotalTableEditor(editMode); Label label = new Label("<h3>Adding new tax subtotal</h3>", Label.CONTENT_XHTML); addButton.addListener( editor.addButtonListener(editButton, deleteButton, hiddenContent, table, taxSubtotalList, label)); label = new Label("<h3>Edit tax subtotal</h3>", Label.CONTENT_XHTML); editButton.addListener( editor.editButtonListener(addButton, deleteButton, hiddenContent, table, taxSubtotalList, label)); deleteButton.addListener(editor.deleteButtonListener(table)); /* // buttons Add, Edit, Delete final Button addBtn = new Button ("Add New", new Button.ClickListener () { @Override public void buttonClick (final Button.ClickEvent event) { addMode = true; hiddenContent.removeAllComponents (); taxSubtotalItem = createTaxSubtotalItem (); final Label formLabel = new Label ("<h3>Adding new tax subtotal line</h3>", Label.CONTENT_XHTML); hiddenContent.addComponent (formLabel); hiddenContent.addComponent (createInvoiceTaxSubtotalForm ()); // Save new line button final HorizontalLayout buttonLayout = new HorizontalLayout (); buttonLayout.setSpacing (true); buttonLayout.addComponent (new Button ("Save tax subtotal line", new Button.ClickListener () { @Override public void buttonClick (final ClickEvent event) { // update table (and consequently add new item to taxSubtotalList // list) table.addTaxSubtotalLine (taxSubtotalItem); // hide form hiddenContent.setVisible (false); addMode = false; // update Total Tax Amount taxTotalItem.getTaxAmount ().setValue (SumTaxSubtotalAmount ()); // update form as well // invoiceTaxTotalTopForm.getField("Tax Total Amount").setRequired(true); invoiceTaxTotalTopForm.getField ("Tax Total Amount").setValue (taxTotalItem.getTaxAmount ().getValue ()); } })); buttonLayout.addComponent (new Button ("Cancel", new Button.ClickListener () { @Override public void buttonClick (final ClickEvent event) { hiddenContent.removeAllComponents (); // hide form hiddenContent.setVisible (false); addMode = false; } })); hiddenContent.addComponent (buttonLayout); // hiddenContent.setVisible(!hiddenContent.isVisible()); hiddenContent.setVisible (true); } }); final Button editBtn = new Button ("Edit Selected", new Button.ClickListener () { @Override public void buttonClick (final Button.ClickEvent event) { /* * Object rowId = table.getValue(); // get the selected rows id if(rowId * != null){ if(addMode || editMode){ parent.getWindow * ().showNotification("Info", "You cannot edit while in add/edit mode", * Window.Notification.TYPE_HUMANIZED_MESSAGE); return; } final String * sid = * (String)table.getContainerProperty(rowId,"ID.value").getValue(); // * TODO: PUT THIS IN FUNCTION BEGINS editMode = true; * hiddenContent.removeAllComponents (); //get selected item * allowanceChargeItem = (InvoiceAllowanceChargeAdapter) * allowanceChargeList.get (table.getIndexFromID (sid)); //clone it to * original item originalItem = new InvoiceAllowanceChargeAdapter (); * cloneInvoiceAllowanceChargeItem(allowanceChargeItem, originalItem); * Label formLabel = new Label("<h3>Editing allowance charge line</h3>", * Label.CONTENT_XHTML); hiddenContent.addComponent (formLabel); * hiddenContent.addComponent(createInvoiceAllowanceChargeForm()); * //Save new line button HorizontalLayout buttonLayout = new * HorizontalLayout(); buttonLayout.setSpacing (true); * buttonLayout.addComponent(new Button("Save changes",new * Button.ClickListener(){ * @Override public void buttonClick (ClickEvent event) { //update table * (and consequently edit item to allowanceChargeList list) * table.setAllowanceChargeLine (sid, allowanceChargeItem); //hide form * hiddenContent.setVisible(false); editMode = false; } })); * buttonLayout.addComponent(new Button("Cancel editing",new * Button.ClickListener(){ * @Override public void buttonClick (ClickEvent event) { * hiddenContent.removeAllComponents (); table.setAllowanceChargeLine * (sid, originalItem); //hide form hiddenContent.setVisible(false); * editMode = false; } })); hiddenContent.addComponent(buttonLayout); * //hiddenContent.setVisible(!hiddenContent.isVisible()); * hiddenContent.setVisible(true); // TODO: PUT THIS IN FUNCTION ENDS } * else { parent.getWindow ().showNotification("Info", * "No table line is selected", * Window.Notification.TYPE_HUMANIZED_MESSAGE); } */ /* } }); editBtn.setEnabled (false); final Button deleteBtn = new Button ("Delete Selected", new Button.ClickListener () { @Override public void buttonClick (final Button.ClickEvent event) { final Object rowId = table.getValue (); // get the selected rows id if (rowId != null) { if (addMode || editMode) { parent.getWindow ().showNotification ("Info", "You cannot delete while in add/edit mode", Window.Notification.TYPE_HUMANIZED_MESSAGE); return; } if (table.getContainerProperty (rowId, "TableLineID").getValue () != null) { final String sid = (String) table.getContainerProperty (rowId, "TableLineID").getValue (); table.removeTaxSubtotalLine (sid); // update Total Tax Amount taxTotalItem.getTaxAmount ().setValue (SumTaxSubtotalAmount ()); invoiceTaxTotalTopForm.getField ("Tax Total Amount").setValue (taxTotalItem.getTaxAmount ().getValue ()); } } else { parent.getWindow ().showNotification ("Info", "No table line is selected", Window.Notification.TYPE_HUMANIZED_MESSAGE); } } });*/ final Panel invoiceDetailsPanel = new Panel("Tax Total Details"); invoiceDetailsPanel.setStyleName("light"); invoiceDetailsPanel.setSizeFull(); invoiceDetailsPanel.addComponent(createInvoiceTaxTotalTopForm()); table.addListener(new ItemSetChangeListener() { @Override public void containerItemSetChange(ItemSetChangeEvent event) { Field f = invoiceTaxTotalTopForm.getField(taxTotalAmount); f.setValue(addTaxSubTotals()); } }); grid.setSpacing(true); grid.addComponent(invoiceDetailsPanel, 0, 0); grid.addComponent(tableContainer, 0, 1); grid.addComponent(buttonsContainer, 1, 1); grid.setSizeUndefined(); // ---- HIDDEN FORM BEGINS ----- final VerticalLayout formLayout = new VerticalLayout(); formLayout.addComponent(hiddenContent); hiddenContent.setVisible(false); outerLayout.addComponent(formLayout); // ---- HIDDEN FORM ENDS ----- setLayout(outerLayout); outerPanel.requestRepaintAll(); }
From source file:at.reisisoft.jku.ce.adaptivelearning.vaadin.ui.MainUI.java
License:LGPL
public MainUI() { // Make the web-app large setSizeFull();//from w w w .j a v a2 s . c o m // Set the layout for the bottom // Create a 3rd party licence button with a click listener final Button licences = new Button("Show 3rd party licences"); licences.addClickListener(new ClickListener() { private static final long serialVersionUID = 32642854872179636L; @Override public void buttonClick(ClickEvent event) { LogHelper.logInfo("Opened LicenceWindow"); LicenceWindow licenceWindow = new LicenceWindow(); licenceWindow.addCloseListener(new CloseListener() { private static final long serialVersionUID = 7874342882437355680L; @Override public void windowClose(CloseEvent e) { event.getButton().setEnabled(true); } }); getUI().addWindow(licenceWindow); // Disable sender event.getButton().setEnabled(false); } }); Label copyright = new HtmlLabel( "<i> Reisisoft 2014 - " + new GregorianCalendar().get(Calendar.YEAR) + "</i>"); Button openLog = new Button("Open Log", (ClickListener) event -> { Navigator navigator = getUI().getNavigator(); assert navigator != null; navigator.navigateTo(Views.Log.toString()); }); // Add the flowLayout at position 1 (second element) -> centered // Add everthing to flowlayout GridLayout southLayout = new GridLayout(3, 1); southLayout.setWidth("100%"); southLayout.addComponent(licences, 0, 0); southLayout.addComponent(openLog, 1, 0); southLayout.addComponent(copyright, 2, 0); // Add southlayout to the main Layout addComponent(southLayout); setComponentAlignment(southLayout, Alignment.BOTTOM_CENTER); }
From source file:at.reisisoft.jku.ce.adaptivelearning.vaadin.ui.topic.accounting.AccountingQuestionManager.java
License:LGPL
public AccountingQuestionManager(String quizName) { super(quizName); Button openKontenplan = new Button("Open Kontenplan"); openKontenplan.addClickListener(e -> { openKontenplan.setEnabled(false); // Create Window with layout Window window = new Window("Kontenplan"); GridLayout layout = new GridLayout(1, 1); layout.addComponent(AccountingDataProvider.getInstance().toHtmlTable()); layout.setSizeFull();//from w w w . j a v a 2 s. c o m window.setContent(layout); window.center(); window.setWidth("60%"); window.setHeight("80%"); window.setResizable(false); window.addCloseListener(e1 -> openKontenplan.setEnabled(true)); getUI().addWindow(window); }); addHelpButton(openKontenplan); }
From source file:biz.eelis.translation.EntriesFlowlet.java
License:Apache License
@Override public void initialize() { final List<FieldDescriptor> fieldDescriptors = TranslationSiteFields.getFieldDescriptors(Entry.class); final List<FilterDescriptor> filterDefinitions = new ArrayList<FilterDescriptor>(); filterDefinitions.add(new FilterDescriptor("basename", "basename", "Basename", new TextField(), 200, "like", String.class, "")); filterDefinitions.add(new FilterDescriptor("language", "language", "Language", new TextField(), 30, "=", String.class, "")); filterDefinitions.add(//from www . ja v a2 s . c om new FilterDescriptor("country", "country", "Country", new TextField(), 30, "=", String.class, "")); filterDefinitions .add(new FilterDescriptor("key", "key", "Key", new TextField(), 200, "like", String.class, "")); final EntityManager entityManager = getSite().getSiteContext().getObject(EntityManager.class); container = new LazyEntityContainer<Entry>(entityManager, true, true, false, Entry.class, 1000, new String[] { "basename", "key", "language", "country" }, new boolean[] { true, true, true, true }, "entryId"); ContainerUtil.addContainerProperties(container, fieldDescriptors); final GridLayout gridLayout = new GridLayout(1, 2); gridLayout.setSizeFull(); gridLayout.setMargin(false); gridLayout.setSpacing(true); gridLayout.setRowExpandRatio(1, 1f); setViewContent(gridLayout); final HorizontalLayout buttonLayout = new HorizontalLayout(); buttonLayout.setSpacing(true); buttonLayout.setSizeUndefined(); gridLayout.addComponent(buttonLayout, 0, 0); final Table table = new FormattingTable(); grid = new Grid(table, container); grid.setFields(fieldDescriptors); grid.setFilters(filterDefinitions); table.setColumnCollapsed("entryId", true); table.setColumnCollapsed("path", true); table.setColumnCollapsed("created", true); table.setColumnCollapsed("modified", true); gridLayout.addComponent(grid, 0, 1); final Button addButton = getSite().getButton("add"); buttonLayout.addComponent(addButton); addButton.addClickListener(new ClickListener() { /** Serial version UID. */ private static final long serialVersionUID = 1L; @Override public void buttonClick(final ClickEvent event) { final Entry entry = new Entry(); entry.setCreated(new Date()); entry.setModified(entry.getCreated()); entry.setOwner((Company) getSite().getSiteContext().getObject(Company.class)); final EntryFlowlet entryView = getViewSheet().forward(EntryFlowlet.class); entryView.edit(entry, true); } }); final Button editButton = getSite().getButton("edit"); buttonLayout.addComponent(editButton); editButton.addClickListener(new ClickListener() { /** Serial version UID. */ private static final long serialVersionUID = 1L; @Override public void buttonClick(final ClickEvent event) { final Entry entity = container.getEntity(grid.getSelectedItemId()); final EntryFlowlet entryView = getViewSheet().forward(EntryFlowlet.class); entryView.edit(entity, false); } }); final Button removeButton = getSite().getButton("remove"); buttonLayout.addComponent(removeButton); removeButton.addClickListener(new ClickListener() { /** Serial version UID. */ private static final long serialVersionUID = 1L; @Override public void buttonClick(final ClickEvent event) { container.removeItem(grid.getSelectedItemId()); container.commit(); } }); final Company company = getSite().getSiteContext().getObject(Company.class); container.removeDefaultFilters(); container.addDefaultFilter(new Compare.Equal("owner.companyId", company.getCompanyId())); grid.refresh(); }
From source file:biz.eelis.translation.EntryFlowlet.java
License:Apache License
@Override public void initialize() { entityManager = getSite().getSiteContext().getObject(EntityManager.class); final GridLayout gridLayout = new GridLayout(1, 3); gridLayout.setSizeFull();/* ww w. j a v a2s .co m*/ gridLayout.setMargin(false); gridLayout.setSpacing(true); gridLayout.setRowExpandRatio(2, 1f); setViewContent(gridLayout); entryEditor = new ValidatingEditor(TranslationSiteFields.getFieldDescriptors(Entry.class)); entryEditor.setCaption("Entry"); entryEditor.addListener((ValidatingEditorStateListener) this); gridLayout.addComponent(entryEditor, 0, 0); final HorizontalLayout buttonLayout = new HorizontalLayout(); buttonLayout.setSpacing(true); gridLayout.addComponent(buttonLayout, 0, 1); saveButton = new Button("Save"); saveButton.setImmediate(true); buttonLayout.addComponent(saveButton); saveButton.addListener(new ClickListener() { /** Serial version UID. */ private static final long serialVersionUID = 1L; @Override public void buttonClick(final ClickEvent event) { entryEditor.commit(); entityManager.getTransaction().begin(); try { entity = entityManager.merge(entity); entity.setAuthor(getSite().getSecurityProvider().getUser()); entity.setModified(new Date()); entityManager.persist(entity); entityManager.getTransaction().commit(); entityManager.detach(entity); entryEditor.discard(); container.refresh(); } catch (final Throwable t) { if (entityManager.getTransaction().isActive()) { entityManager.getTransaction().rollback(); } throw new RuntimeException("Failed to save entity: " + entity, t); } } }); discardButton = new Button("Discard"); discardButton.setImmediate(true); buttonLayout.addComponent(discardButton); discardButton.addListener(new ClickListener() { /** Serial version UID. */ private static final long serialVersionUID = 1L; @Override public void buttonClick(final ClickEvent event) { entryEditor.discard(); } }); final List<FieldDescriptor> fieldDescriptors = TranslationSiteFields.getFieldDescriptors(Entry.class); final List<FilterDescriptor> filterDefinitions = new ArrayList<FilterDescriptor>(); container = new LazyEntityContainer<Entry>(entityManager, true, true, false, Entry.class, 1000, new String[] { "basename", "key", "language", "country" }, new boolean[] { true, true, true, true }, "entryId"); container.getQueryView().getQueryDefinition().setMaxQuerySize(1); ContainerUtil.addContainerProperties(container, fieldDescriptors); final Table table = new FormattingTable(); final Grid grid = new Grid(table, container); grid.setCaption("All Translations"); grid.setSizeFull(); grid.setFields(fieldDescriptors); grid.setFilters(filterDefinitions); table.setColumnCollapsed("entryId", true); table.setColumnCollapsed("path", true); table.setColumnCollapsed("created", true); table.setColumnCollapsed("modified", true); gridLayout.addComponent(grid, 0, 2); }