List of usage examples for com.vaadin.ui Button Button
public Button(Resource icon)
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 ww w . j a v a2 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 ava2 s . c o m*/ 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.TabInvoicePayment.java
License:Mozilla Public License
@SuppressWarnings("serial") private void initElements() { editMode = false;/*from ww w. ja v a2s . c om*/ 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);/*ww w . j a v a 2 s .c o m*/ } 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.peppol.webgui.app.LoginWindow.java
License:Mozilla Public License
private void init() { HorizontalLayout h1 = new HorizontalLayout(); h1.setSizeFull();//ww w .j av a2 s. c o m FormLayout fl = new FormLayout(); fl.setSizeUndefined(); usernameField = new TextField("Username:"); usernameField.setImmediate(true); fl.addComponent(usernameField); passwordField = new PasswordField("Password:"); passwordField.setImmediate(true); fl.addComponent(passwordField); Button loginButton = new Button("Login"); loginButton.addStyleName("default"); loginButton.addListener(this); fl.addComponent(loginButton); loginButton.setClickShortcut(KeyCode.ENTER); h1.addComponent(fl); h1.setComponentAlignment(fl, Alignment.MIDDLE_CENTER); addComponent(h1); }
From source file:at.peppol.webgui.app.MainWindow.java
License:Mozilla Public License
public void showInitialMainContent(UserFolder<?> userFolder) { // ------ START: Main Content ------- final VerticalLayout mainContentLayout = new VerticalLayout(); mainContentLayout.addStyleName("margin"); final VerticalLayout topmain = new VerticalLayout(); topmain.setSpacing(true);//from ww w. j a v a 2 s . co m topmain.setWidth("100%"); final Label bigPAWGLabel = new Label("PEPPOL Post Award Web GUI"); bigPAWGLabel.setStyleName("huge"); topmain.addComponent(bigPAWGLabel); final Label blahContent = new Label( "This is a mockup of the GUI that is going" + " to be the PAWG. It is created by the Greek" + " and Austrian teams as a fine replacement " + " of the Demo Client"); blahContent.setWidth("80%"); blahContent.addStyleName("big"); //topmain.addComponent (blahContent); //HorizontalLayout itemsPanel = new ShowItemsPanel("Items", um, userFolder); final ShowItemsPanel itemsPanel = new ShowItemsPanel("Items", um, userFolder); this.itemsPanel = itemsPanel; topmain.addComponent(itemsPanel); HorizontalLayout buttonsLayout = new HorizontalLayout(); buttonsLayout.setSpacing(true); topmain.addComponent(buttonsLayout); Button loadButton = new Button("Load invoice"); //topmain.addComponent(loadButton); buttonsLayout.addComponent(loadButton); loadButton.addListener(new ClickListener() { @Override public void buttonClick(ClickEvent event) { Table table = itemsPanel.getTable(); if (table.getValue() != null) { //InvoiceType inv = (InvoiceType)table.getItem(table.getValue()).getItemProperty("invoice").getValue(); //InvoiceBean invBean = (InvoiceBean)table.getItem(table.getValue()); InvoiceBean invBean = ((InvoiceBeanContainer) table.getContainerDataSource()) .getItem(table.getValue()).getBean(); //System.out.println("Invoice is: "+invBean); showInvoiceForm(invBean); } } }); Button sendButton = new Button("Send invoice"); buttonsLayout.addComponent(sendButton); sendButton.addListener(new ClickListener() { @Override public void buttonClick(ClickEvent event) { try { Table table = itemsPanel.getTable(); if (table.getValue() != null) { InvoiceBean invBean = ((InvoiceBeanContainer) table.getContainerDataSource()) .getItem(table.getValue()).getBean(); String path = invBean.getFolderEntryID(); FileSystemResource s = new FileSystemResource(path); SendInvoice.sendDocument(s); //file is sent. move invoice to outbox um.moveInvoice(invBean, um.getDrafts(), um.getOutbox()); //itemsPanel.getTable().requestRepaint(); itemsPanel.init(um.getDrafts()); } } catch (FileNotFoundException e) { getWindow().showNotification("Could not find invoice file", Notification.TYPE_ERROR_MESSAGE); } catch (Exception e) { getWindow().showNotification("Could not send invoice. AP connection error", Notification.TYPE_ERROR_MESSAGE); e.printStackTrace(); } } }); final Button learnMoreBtn = new Button("Learn More >>"); learnMoreBtn.addStyleName("tall default"); //topmain.addComponent (learnMoreBtn); mainContentLayout.addComponent(topmain); // ------ END: Main Content --------- mainContentLayout.setHeight("100%"); mainContentLayout.setSizeFull(); mainContentLayout.setSpacing(true); mainContentLayout.setWidth("100%"); middleContentLayout.setWidth("100%"); middleContentLayout.setHeight("100%"); middleContentLayout.setMargin(true); // -------- addComponent(middleContentLayout); addComponent(footerLayout); if (mainContentComponent != null) { middleContentLayout.replaceComponent(mainContentComponent, mainContentLayout); } else { middleContentLayout.addComponent(mainContentLayout); } middleContentLayout.setExpandRatio(mainContentLayout, 1); mainContentComponent = mainContentLayout; }
From source file:at.peppol.webgui.app.MainWindow.java
License:Mozilla Public License
private HorizontalLayout createTopBarButtons() { final HorizontalLayout topBarBtns = new HorizontalLayout(); final Button homeBtn = new Button("Home"); homeBtn.addStyleName("first"); homeBtn.addStyleName("down"); final Button aboutBtn = new Button("About"); final Button contactBtn = new Button("Contact"); contactBtn.addStyleName("last"); topBarBtns.setStyleName("segment"); topBarBtns.addStyleName("tall"); topBarBtns.addComponent(homeBtn);// w w w. j av a 2 s. c o m topBarBtns.addComponent(aboutBtn); topBarBtns.addComponent(contactBtn); return topBarBtns; }
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 ava 2 s. co 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.QuestionManager.java
License:LGPL
public QuestionManager(String quizName, IEngine engine) { setMargin(true);//from w w w . j a v a2 s.com title = HtmlLabel.getCenteredLabel("h1", quizName); addComponent(title); addComponent(questionHolder); addComponent(southLayout); next = new Button("Next question ->"); next.addClickListener(e -> { e.getButton().setEnabled(false); try { iEngine.requestCalculation(); } catch (EngineException e1) { Notification.show("Error on calculating the next question.", "Visit the log for more infos", Type.ERROR_MESSAGE); LogHelper.logThrowable(e1); } }); southLayout.addComponent(next, 2, 0); southLayout.setSizeFull(); southLayout.setMargin(true); // Ensure we have an engine if (engine == null) { try { iEngine = new SimpleEngine(); } catch (EngineException e1) { Notification.show("Engine could not be initialized", Type.ERROR_MESSAGE); LogHelper.logThrowable(e1); } } else { iEngine = engine; } // Register to engine events iEngine.addQuestionChangeListener(this); iEngine.addResultFiredListener(this); setResultView(VaadinResultView.class); }
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 www. j av 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); }