Example usage for com.vaadin.ui VerticalLayout addComponent

List of usage examples for com.vaadin.ui VerticalLayout addComponent

Introduction

In this page you can find the example usage for com.vaadin.ui VerticalLayout addComponent.

Prototype

@Override
public void addComponent(Component c) 

Source Link

Document

Add a component into this container.

Usage

From source file:at.peppol.webgui.app.components.InvoiceLineOrderForm.java

License:Mozilla Public License

private void initElements() {

    final GridLayout grid = new GridLayout(4, 4);
    final VerticalLayout outerLayout = new VerticalLayout();
    hiddenContent = new VerticalLayout();
    hiddenContent.setSpacing(true);//from   ww  w .  j a  v a  2 s .  c o  m
    hiddenContent.setMargin(true);

    table = new InvoiceLineOrderReferenceTable(lineOrderList);
    table.setSelectable(true);
    table.setImmediate(true);
    table.setNullSelectionAllowed(false);
    table.setHeight(150, UNITS_PIXELS);
    table.setFooterVisible(false);
    table.addStyleName("striped strong");

    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");

    VerticalLayout buttonsContainer = new VerticalLayout();
    buttonsContainer.setSpacing(true);
    buttonsContainer.addComponent(addButton);
    buttonsContainer.addComponent(editButton);
    buttonsContainer.addComponent(deleteButton);

    InvoiceLineOrderReferenceTableEditor editor = new InvoiceLineOrderReferenceTableEditor(editMode);
    Label label = new Label("<h3>Adding order line</h3>", Label.CONTENT_XHTML);
    addButton.addListener(
            editor.addButtonListener(editButton, deleteButton, hiddenContent, table, lineOrderList, label));
    label = new Label("<h3>Edit order line</h3>", Label.CONTENT_XHTML);
    editButton.addListener(
            editor.editButtonListener(addButton, deleteButton, hiddenContent, table, lineOrderList, label));
    deleteButton.addListener(editor.deleteButtonListener(table));

    Panel outerPanel = new Panel(prefix + " Referencing Orders");
    //outerPanel.setStyleName("light");     

    // ---- HIDDEN FORM BEGINS -----
    VerticalLayout formLayout = new VerticalLayout();
    formLayout.addComponent(hiddenContent);
    hiddenContent.setVisible(false);
    // ---- HIDDEN FORM ENDS -----

    grid.setSizeUndefined();
    grid.addComponent(tableContainer, 0, 0);
    grid.addComponent(buttonsContainer, 1, 0);

    outerPanel.addComponent(grid);
    outerPanel.addComponent(formLayout);
    outerLayout.addComponent(outerPanel);
    outerPanel.requestRepaintAll();

    VerticalLayout mainLayout = new VerticalLayout();
    final VerticalLayout showHideContentLayout = new VerticalLayout();
    showHideContentLayout.addComponent(outerPanel);
    HorizontalLayout showHideButtonLayout = new HorizontalLayout();
    Button btn = new Button("Show/Hide Allowances/Charges", new Button.ClickListener() {
        @Override
        public void buttonClick(ClickEvent event) {
            // TODO Auto-generated method stub
            showHideContentLayout.setVisible(!showHideContentLayout.isVisible());
        }
    });
    showHideButtonLayout.setWidth("100%");
    showHideButtonLayout.addComponent(btn);
    showHideButtonLayout.setComponentAlignment(btn, Alignment.MIDDLE_RIGHT);

    //mainLayout.addComponent(showHideButtonLayout);
    mainLayout.addComponent(showHideContentLayout);
    //showHideContentLayout.setVisible(false);    

    addComponent(mainLayout);

}

From source file:at.peppol.webgui.app.components.InvoiceLineWindow.java

License:Mozilla Public License

public InvoiceLineWindow(final TabInvoiceLine parent) {
    this.parent = parent;
    invln = new InvoiceLineAdapter();

    //    line = new Line();    
    //    BeanItem<InvoiceLineAdapter> invoiceLine = new BeanItem<InvoiceLineAdapter>(invln);
    //    parent.setItemDataSource(invoiceLine);
    //    BeanItem<Line> invoiceLine = new BeanItem<Line>(line);
    //    parent.setItemDataSource(invoiceLine);

    subwindow = new Window("Invoice Line");
    subwindow.setModal(true);/*  w ww . j a v  a 2s .  c  om*/

    VerticalLayout layout = (VerticalLayout) subwindow.getContent();
    layout.setMargin(true);
    layout.setSpacing(true);

    Button btnClose = new Button("Close", new Button.ClickListener() {
        public void buttonClick(ClickEvent event) {
            (subwindow.getParent()).removeWindow(subwindow);
        }
    });

    Button btnSave = new Button("Save", new Button.ClickListener() {
        public void buttonClick(ClickEvent event) {
            //update GUI table !!
            ///parent.getTable().addInvoiceLine (invln);
            //update actual invoice line item
            ///parent.items.add (invln);

            //close popup
            (subwindow.getParent()).removeWindow(subwindow);
        }
    });

    try {
        layout.addComponent(createInvoiceLineForm());
    } catch (Exception e) {
        e.printStackTrace();
    }
    layout.addComponent(btnSave);
    layout.addComponent(btnClose);
    layout.setComponentAlignment(btnClose, Alignment.BOTTOM_RIGHT);
}

From source file:at.peppol.webgui.app.components.ItemPropertyForm.java

License:Mozilla Public License

private void initElements() {

    final GridLayout grid = new GridLayout(4, 4);
    final VerticalLayout outerLayout = new VerticalLayout();
    hiddenContent = new VerticalLayout();
    hiddenContent.setSpacing(true);/*w w w .j a v  a 2  s.  c  o m*/
    hiddenContent.setMargin(true);

    table = new InvoiceItemPropertyTable(itemPropertyBeanList);
    table.setSelectable(true);
    table.setImmediate(true);
    table.setNullSelectionAllowed(false);
    table.setHeight(150, UNITS_PIXELS);
    table.setFooterVisible(false);
    table.addStyleName("striped strong");

    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");

    VerticalLayout buttonsContainer = new VerticalLayout();
    buttonsContainer.setSpacing(true);
    buttonsContainer.addComponent(addButton);
    buttonsContainer.addComponent(editButton);
    buttonsContainer.addComponent(deleteButton);

    InvoiceItemPropertyTableEditor editor = new InvoiceItemPropertyTableEditor(editMode);
    Label label = new Label("<h3>Adding new item property</h3>", Label.CONTENT_XHTML);
    addButton.addListener(editor.addButtonListener(editButton, deleteButton, hiddenContent, table,
            itemPropertyBeanList, label));
    label = new Label("<h3>Edit item property</h3>", Label.CONTENT_XHTML);
    editButton.addListener(editor.editButtonListener(addButton, deleteButton, hiddenContent, table,
            itemPropertyBeanList, label));
    deleteButton.addListener(editor.deleteButtonListener(table));

    Panel outerPanel = new Panel(itemPropertyPrefix + " Item Properties");
    //outerPanel.setStyleName("light");     

    // ---- HIDDEN FORM BEGINS -----
    VerticalLayout formLayout = new VerticalLayout();
    formLayout.addComponent(hiddenContent);
    hiddenContent.setVisible(false);
    // ---- HIDDEN FORM ENDS -----

    grid.setSizeUndefined();
    grid.addComponent(tableContainer, 0, 0);
    grid.addComponent(buttonsContainer, 1, 0);

    outerPanel.addComponent(grid);
    outerPanel.addComponent(formLayout);
    outerLayout.addComponent(outerPanel);
    outerPanel.requestRepaintAll();

    VerticalLayout mainLayout = new VerticalLayout();
    final VerticalLayout showHideContentLayout = new VerticalLayout();
    showHideContentLayout.addComponent(outerPanel);
    HorizontalLayout showHideButtonLayout = new HorizontalLayout();
    Button btn = new Button("Show/Hide Additional Item Property", new Button.ClickListener() {
        @Override
        public void buttonClick(ClickEvent event) {
            // TODO Auto-generated method stub
            showHideContentLayout.setVisible(!showHideContentLayout.isVisible());
        }
    });
    showHideButtonLayout.setWidth("100%");
    showHideButtonLayout.addComponent(btn);
    showHideButtonLayout.setComponentAlignment(btn, Alignment.MIDDLE_RIGHT);

    //mainLayout.addComponent(showHideButtonLayout);
    mainLayout.addComponent(showHideContentLayout);
    //showHideContentLayout.setVisible(false);    

    addComponent(mainLayout);

}

From source file:at.peppol.webgui.app.components.PartyDetailForm.java

License:Mozilla Public License

private void initElements() {

    setCaption(party + " Party");
    //setStyleName("light");

    final VerticalLayout outerLayout = new VerticalLayout();
    outerLayout.setSpacing(true);//from w  w w . j  av  a2s. c o m
    outerLayout.setMargin(true);

    hiddenContent = new VerticalLayout();
    hiddenContent.setSpacing(true);
    hiddenContent.setMargin(true);

    PropertysetItem partyItemSet = new PropertysetItem();

    PartyIdentificationType supplierPartyID;
    if (partyBean.getPartyIdentification().size() == 0) {
        supplierPartyID = new PartyIdentificationType();
        supplierPartyID.setID(new IDType());
        partyBean.getPartyIdentification().add(supplierPartyID);
    } else {
        supplierPartyID = partyBean.getPartyIdentification().get(0);
    }

    partyItemSet.addItemProperty("Party ID", new NestedMethodProperty(supplierPartyID, "ID.value"));

    EndpointIDType endPointID;
    if (partyBean.getEndpointID() == null) {
        endPointID = new EndpointIDType();
        partyBean.setEndpointID(endPointID);
    } else {
        endPointID = partyBean.getEndpointID();
    }
    partyItemSet.addItemProperty("Endpoint ID", new NestedMethodProperty(endPointID, "SchemeAgencyID"));

    PartyNameType partyName;
    if (partyBean.getPartyName().size() == 0) {
        partyName = new PartyNameType();
        partyName.setName(new NameType());
        partyBean.getPartyName().add(partyName);
    } else {
        partyName = partyBean.getPartyName().get(0);
    }
    partyItemSet.addItemProperty("Party Name", new NestedMethodProperty(partyName, "name.value"));

    /*        partyItemSet.addItemProperty("Agency Name", 
        new NestedMethodProperty(supplierPartyID, "ID.SchemeAgencyID") );
    */
    /*
    final AddressType partyrAddress = new AddressType();
            
    partyBean.setPostalAddress(partyrAddress);
    partyrAddress.setStreetName(new StreetNameType());
    partyrAddress.setCityName(new CityNameType());
    partyrAddress.setPostalZone(new PostalZoneType());
    partyrAddress.setCountry(new CountryType());
            
    partyrAddress.getCountry().setIdentificationCode(new IdentificationCodeType());
            
    partyItemSet.addItemProperty("Street Name",
                    new NestedMethodProperty(partyrAddress, "streetName.value"));
    partyItemSet.addItemProperty("City",
                    new NestedMethodProperty(partyrAddress, "cityName.value"));
    partyItemSet.addItemProperty("Postal Zone",
                    new NestedMethodProperty(partyrAddress, "postalZone.value"));
    partyItemSet.addItemProperty("Country",
                    new NestedMethodProperty(partyrAddress, "country.identificationCode.value"));
    */
    AddressDetailForm partyAddressForm;
    AddressType address;
    if (partyBean.getPostalAddress() == null) {
        address = new AddressType();
    } else {
        address = partyBean.getPostalAddress();
    }
    partyAddressForm = new AddressDetailForm(party, address);
    partyBean.setPostalAddress(address);

    PartyTaxSchemeType taxScheme;
    if (partyBean.getPartyTaxScheme().size() == 0) {
        taxScheme = new PartyTaxSchemeType();
        taxScheme.setCompanyID(new CompanyIDType());

        //partyItemSet.addItemProperty(taxSchemeCompanyID,
        //        new NestedMethodProperty(taxScheme.getCompanyID(),"value"));

        // TODO: Hardcoded ShemeID etc for TaxScheme. Should be from a codelist?
        taxScheme.setTaxScheme(new TaxSchemeType());
        taxScheme.getTaxScheme().setID(new IDType());
        taxScheme.getTaxScheme().getID().setValue("VAT");
        taxScheme.getTaxScheme().getID().setSchemeID("UN/ECE 5153");
        taxScheme.getTaxScheme().getID().setSchemeAgencyID("6");

        partyBean.getPartyTaxScheme().add(taxScheme);
    } else {
        taxScheme = partyBean.getPartyTaxScheme().get(0);
    }

    partyItemSet.addItemProperty(taxSchemeCompanyID,
            new NestedMethodProperty(taxScheme.getCompanyID(), "value"));

    partyItemSet.addItemProperty(taxSchemeID,
            new NestedMethodProperty(taxScheme.getTaxScheme().getID(), "value"));

    final Form partyForm = new Form();
    partyForm.setFormFieldFactory(new PartyFieldFactory());
    partyForm.setItemDataSource(partyItemSet);
    partyForm.setImmediate(true);

    final Button addLegalEntityBtn = new Button("Add Legal Entity");
    final Button removeLegalEntityBtn = new Button("Remove Legal Entity");
    //removeLegalEntityBtn.setVisible(false);

    addLegalEntityBtn.addListener(new Button.ClickListener() {
        @Override
        public void buttonClick(ClickEvent event) {
            //add the legal entity component
            Panel panel = createLegalEntityPanel(removeLegalEntityBtn);
            outerLayout.addComponent(panel);
            panel.setWidth("90%");
            addLegalEntityBtn.setVisible(false);
            //removeLegalEntityBtn.setVisible(true);
            //outerLayout.replaceComponent(removeLegalEntityBtn, panel);
        }
    });

    removeLegalEntityBtn.addListener(new Button.ClickListener() {
        @Override
        public void buttonClick(ClickEvent event) {
            //remove the legal entity component
            for (int i = 0; i < outerLayout.getComponentCount(); i++) {
                Component c = outerLayout.getComponent(i);
                if (c instanceof Panel) {
                    if (c.getCaption().equals("Legal Entity")) {
                        outerLayout.removeComponent(c);
                        if (partyBean.getPartyLegalEntity().size() > 0) {
                            partyBean.getPartyLegalEntity().clear();
                            ValidatorsList.removeListeners(Utils.getFieldListeners(legalEntityForm));
                        }
                    }
                }
            }
            //removeLegalEntityBtn.setVisible(false);
            addLegalEntityBtn.setVisible(true);
        }
    });

    outerLayout.addComponent(partyForm);
    partyForm.setWidth("90%");
    outerLayout.addComponent(partyAddressForm);
    partyAddressForm.setWidth("90%");
    outerLayout.addComponent(addLegalEntityBtn);
    if (partyBean.getPartyLegalEntity().size() > 0)
        addLegalEntityBtn.click();
    //outerLayout.addComponent(removeLegalEntityBtn);
    //outerLayout.addComponent(createLegalEntityPanel());

    setContent(outerLayout);
}

From source file:at.peppol.webgui.app.components.TabInvoiceAllowanceCharge.java

License:Mozilla Public License

private void initElements() {
    allowanceChargeList = parent.getInvoice().getAllowanceCharge();

    final GridLayout grid = new GridLayout(4, 4);
    final VerticalLayout outerLayout = new VerticalLayout();
    hiddenContent = new VerticalLayout();
    hiddenContent.setSpacing(true);// w w  w.  j  a v a  2s .c o  m
    hiddenContent.setMargin(true);

    table = new InvoiceAllowanceChargeTable(parent.getInvoice().getAllowanceCharge());
    table.setSelectable(true);
    table.setImmediate(true);
    table.setNullSelectionAllowed(false);
    table.setHeight(150, UNITS_PIXELS);
    table.setFooterVisible(true);
    table.addStyleName("striped strong");

    //table.addListener(parent.new TaxExclusiveAmountListener());

    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);

    InvoiceAllowanceChargeTableEditor editor = new InvoiceAllowanceChargeTableEditor(editMode,
            parent.getInvoice());
    Label label = new Label("<h3>Adding new allowance/charge line</h3>", Label.CONTENT_XHTML);
    addButton.addListener(editor.addButtonListener(editButton, deleteButton, hiddenContent, table,
            allowanceChargeList, label));
    label = new Label("<h3>Edit allowance/charge line</h3>", Label.CONTENT_XHTML);
    editButton.addListener(editor.editButtonListener(addButton, deleteButton, hiddenContent, table,
            allowanceChargeList, label));
    deleteButton.addListener(editor.deleteButtonListener(table));

    final Panel outerPanel = new Panel("Allowance Charge");

    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.TabInvoiceDelivery.java

License:Mozilla Public License

private void initElements() {
    deliveryList = parent.getInvoice().getDelivery();
    if (deliveryList.size() == 0) {
        deliveryItem = createDeliveryItem();
        deliveryList.add(deliveryItem);/*  w  ww.  j  ava2  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);/*  ww w  . j  a va2  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  a 2s  . 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.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);/* ww  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   www  . j av  a  2  s. co  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();
}