Example usage for com.vaadin.ui VerticalLayout setMargin

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

Introduction

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

Prototype

@Override
    public void setMargin(boolean enabled) 

Source Link

Usage

From source file:com.freebox.engeneering.application.web.layout.FooterController.java

License:Apache License

/**
 * Loads data into the form while entering 'loadData' state.
 *
 * @param stateEvent the state event./*w  w w  . j ava2 s  .co  m*/
 */
@OnEnterState(EventConstants.LOAD_DATA)
public void buildFooterView(StateEvent stateEvent) {
    clearView(stateEvent);
    final Label htmlLabel = new Label(
            "© " + Calendar.getInstance().get(Calendar.YEAR) + " Lexaden.com  All rights reserved",
            ContentMode.HTML);
    htmlLabel.setStyleName(Reindeer.LABEL_SMALL);
    htmlLabel.setSizeUndefined();
    final VerticalLayout view = getView();
    view.addComponent(htmlLabel);
    view.setComponentAlignment(htmlLabel, Alignment.MIDDLE_CENTER);
    view.setMargin(new MarginInfo(false, false, true, false));
}

From source file:com.freebox.engeneering.application.web.layout.RightSideBarController.java

License:Apache License

/**
 * This method is called every time system enters any profile state
 *
 * @param stateEvent -state event./*from ww w  . j a  v  a 2  s . c  o m*/
 */
@OnEnterState(StateConstants.PROFILE)
public void buildRightSideBarView(StateEvent stateEvent) {
    clearView(stateEvent);

    final Accordion accordion = super.getView();

    final VerticalLayout verticalLayout = new VerticalLayout();
    accordion.addTab(verticalLayout, "Right Side Bar");

    final VerticalLayout contentLayout = new VerticalLayout();
    contentLayout.setMargin(true);
    contentLayout.setSpacing(true);

    contentLayout.addComponent(new Label("www.lexaden.com<br/>contact@lexaden.com", ContentMode.HTML));
    verticalLayout.addComponent(contentLayout);
}

From source file:com.garyclayburg.vconsole.TargetWindows.java

License:Open Source License

private VerticalLayout populateTargetWindowData(User selectedUser, String entitledTarget) {
    VerticalLayout windowContent = new VerticalLayout();
    windowContent.setMargin(false);

    final Table attributeTargetTable = new Table();
    attributeTargetTable.setSizeFull();/*  w  w w  .j ava 2s  .c  o m*/
    attributeTargetTable.setSelectable(true);
    attributeTargetTable.setMultiSelect(false);
    attributeTargetTable.setImmediate(true);
    final BeanContainer<String, GeneratedAttributesBean> attributesBeanContainer = new BeanContainer<>(
            GeneratedAttributesBean.class);
    attributesBeanContainer.setBeanIdProperty("attributeName");

    populateItems(selectedUser, attributesBeanContainer, entitledTarget);

    attributeTargetTable.setContainerDataSource(attributesBeanContainer);

    windowContent.addComponent(attributeTargetTable);
    return windowContent;
}

From source file:com.garyclayburg.vconsole.VConsole.java

License:Open Source License

protected void init(VaadinRequest vaadinRequest) {
    final Refresher refresher = new Refresher();
    refresher.addListener(new Refresher.RefreshListener() {
        @Override//from  www  .  j  a va2  s . c  om
        public void refresh(Refresher refresher) {
            //                log.debug("refreshing UI...");
        }
    });
    addExtension(refresher);

    addStyleName("dashboard-view");
    final VerticalLayout layout = new VerticalLayout();
    layout.setMargin(true);
    setContent(layout);

    searchStatus = new Label("0 users matching: ");
    TextField searchField = new TextField();
    searchField.setInputPrompt("first or last name");
    searchField.setTextChangeEventMode(AbstractTextField.TextChangeEventMode.LAZY);
    searchField.addTextChangeListener(new FieldEvents.TextChangeListener() {
        @Override
        public void textChange(FieldEvents.TextChangeEvent event) {
            String searchText = event.getText();
            log.debug("search: {}", searchText);
            QUser qUser = new QUser("user");
            long startSearch = System.nanoTime();
            if (searchText.length() > 2) {
                Iterable<User> searchedUsers = autoUserRepo.findAll(qUser.firstname
                        .containsIgnoreCase(searchText).or(qUser.lastname.containsIgnoreCase(searchText)));
                long endSearch = System.nanoTime();
                log.info("Finshed searching for \"{}\" in {} secs", searchText,
                        ((endSearch - startSearch) / 1000000000.0));
                searchStatus.setValue("? users matching: " + searchText);
                updateUserList(searchedUsers, searchText);
            } else if (searchText.equals("*")) {
                Iterable<User> searchedUsers = autoUserRepo.findAll();
                long endSearch = System.nanoTime();
                log.info("Searched for \"{}\" in {} secs", searchText,
                        ((endSearch - startSearch) / 1000000000.0));
                searchStatus.setValue("? users matching: " + searchText);
                updateUserList(searchedUsers, searchText);

            } else {
                log.debug("not enough chars");
                searchStatus.setValue("* for all users...");
            }
        }
    });

    createExceptionWindow("no errors yet...");

    final User finalFirstUser = firstUser;
    policyChangeController.addChangeListener(new PolicyChangeListener() {
        @Override
        public void policyChanged() {
            log.info("policy is changing");
            BeanContainer beanContainer = (BeanContainer) userTable.getContainerDataSource();
            List itemIds = beanContainer.getItemIds();
            boolean refreshedSelected = false;
            for (Object itemId : itemIds) {
                String id = (String) itemId;
                BeanItem item = beanContainer.getItem(itemId);
                log.debug("refreshing user id: " + id);
                User user = (User) item.getBean();
                log.debug("refreshing user: " + user.getFirstname());
                if (userTable.isSelected(itemId)) {
                    refreshUserValues(user);
                    refreshedSelected = true;
                }
            }
            log.debug("forcing table update");
            updateRightClickItems();
            log.debug("forcing table update complete");
            if (!refreshedSelected && finalFirstUser != null) {
                refreshUserValues(finalFirstUser);
            }
            int numErrors = populatePolicyExceptionList(); // this will catch runtime errors not caught during groovy compile
            if (numErrors == 0) {
                showPolicyUpdated();
            }
        }

        @Override
        public void policyException(Throwable e) {
            populatePolicyExceptionList(); //cannot compile operator supplied groovy?
        }
    });
    attributeTable = new Table();
    attributeTable.setSizeFull();
    attributeTable.setSelectable(true);
    attributeTable.setMultiSelect(false);
    attributeTable.setImmediate(true);

    attributesBeanContainer = new BeanContainer<>(GeneratedAttributesBean.class);
    attributesBeanContainer.setBeanIdProperty("attributeName");

    attributeTable.setContainerDataSource(attributesBeanContainer);

    BeanContainer<String, User> userBeanContainer = new BeanContainer<>(User.class);
    userBeanContainer.setBeanIdProperty("id");
    userTable = createUserTable(userBeanContainer);
    userTable.addItemClickListener(new ItemClickEvent.ItemClickListener() {
        @Override
        public void itemClick(ItemClickEvent event) {
            User selectedUser = (User) ((BeanItem) event.getItem()).getBean();
            refreshUserValues(selectedUser);
            populatePolicyExceptionList(); // maybe this user clicked on causes runtime exception in groovy?
        }
    });
    HorizontalSplitPanel splitPanel = new HorizontalSplitPanel();
    splitPanel.setSizeFull();
    splitPanel.setSplitPosition(150, Unit.PIXELS);
    splitPanel.setFirstComponent(userTable);
    splitPanel.setSecondComponent(attributeTable);

    //        MenuBar menuBar = createMenu();

    //        layout.addComponent(menuBar);

    HorizontalLayout top = createTop();
    populatePolicyExceptionList(); //initial check for groovy errors
    layout.addComponent(top);

    layout.addComponent(searchField);
    layout.addComponent(searchStatus);
    layout.addComponent(splitPanel);
    populateItems(firstUser, attributesBeanContainer);

}

From source file:com.garyclayburg.vconsole.VConsole.java

License:Open Source License

private void buildNotifications(Button.ClickEvent event) {
    VerticalLayout l = new VerticalLayout();
    l.setMargin(true);
    l.setSpacing(true);//from   ww  w.  j a  v  a 2  s . c  om
    notifications.setContent(l);
    notifications.setWidth("1000px");
    notifications.setHeight("500px");
    notifications.addStyleName("notifications");
    notifications.setClosable(false);
    notifications.setResizable(true);
    notifications.setDraggable(false);
    notifications.setPositionX(event.getClientX() - event.getRelativeX()
            - 40); /* magic number used to adjust right edge of window so that it draws within the browser window.  This number is related to css values in dashboard.scss and relative positioning of the bell icon in topLayout */
    notifications.setPositionY(event.getClientY() - event.getRelativeY());
    notifications.setCloseShortcut(ShortcutAction.KeyCode.ESCAPE, null);

    synchronized (scriptErrorsLock) {
        log.debug("checking for new policy errors {}", scriptErrors.size());
        Label messageLabel;
        if (scriptErrors.size() > 0) {
            for (String absolutePath : scriptErrors.keySet()) {
                Throwable scriptException = scriptErrors.get(absolutePath);
                String message = scriptException.getMessage();
                if (message != null) {
                    String formattedMessage = MessageHelper.scrubMessage(message);
                    messageLabel = new Label("<hr>" + formattedMessage, ContentMode.HTML);
                } else {
                    StringWriter errors = new StringWriter();
                    scriptException.printStackTrace(new PrintWriter(errors));
                    String stackTrace = errors.toString();
                    stackTrace = MessageHelper.scrubMessage(stackTrace);
                    messageLabel = new Label("<hr>" + stackTrace, ContentMode.HTML);
                }
                messageLabel.setStyleName(Runo.LABEL_SMALL);
                l.addComponent(messageLabel);
            }
        } else {
            messageLabel = new Label("<hr>none<br>", ContentMode.HTML);
            messageLabel.setStyleName(Runo.LABEL_SMALL);
            l.addComponent(messageLabel);
        }
    }
}

From source file:com.garyclayburg.vconsole.VConsole.java

License:Open Source License

private void populateExceptionMessage(String message, boolean visible) {
    VerticalLayout windowContent = new VerticalLayout();
    windowContent.setMargin(true);

    Label messageLabel = new Label(message, ContentMode.PREFORMATTED);
    messageLabel.setStyleName(Runo.LABEL_SMALL);
    //        messageLabel.setWidth("120em");
    windowContent.addComponent(messageLabel);
    Button closeButton = new Button("Close");
    closeButton.addClickListener(new Button.ClickListener() {
        @Override//from   w  ww .ja va  2 s  . com
        public void buttonClick(Button.ClickEvent event) {
            exceptionWindow.setVisible(false);
        }
    });

    windowContent.addComponent(closeButton);
    UI ui = exceptionWindow.getUI();
    if (ui != null) {
        VaadinSession session = ui.getSession();
        if (session != null) {
            session.getLockInstance().lock();
            try {
                exceptionWindow.setContent(windowContent);
                exceptionWindow.setVisible(visible);
            } finally {
                session.getLockInstance().unlock();
            }
        } else {
            exceptionWindow.setContent(windowContent);
            exceptionWindow.setVisible(visible);
        }
    } else {
        exceptionWindow.setContent(windowContent);
        exceptionWindow.setVisible(visible);
    }
}

From source file:com.github.peholmst.i18n4vaadin.cdi.demo.DemoUI.java

License:Apache License

@Override
protected void init(VaadinRequest request) {
    VerticalLayout content = new VerticalLayout();
    content.setMargin(true);
    content.setSpacing(true);// w w  w. j  a va  2 s . c  om
    content.setSizeFull();
    setContent(content);

    languageChanger = new ComboBox();
    languageChanger.setContainerDataSource(
            new BeanItemContainer<java.util.Locale>(java.util.Locale.class, i18n.getSupportedLocales()));
    languageChanger.setImmediate(true);
    languageChanger.addValueChangeListener(new Property.ValueChangeListener() {
        @Override
        public void valueChange(Property.ValueChangeEvent event) {
            if (languageChanger.getValue() != null) {
                i18n.setLocale((java.util.Locale) languageChanger.getValue());
            }
        }
    });
    content.addComponent(languageChanger);

    Panel viewContent = new Panel();
    viewContent.setSizeFull();
    content.addComponent(viewContent);
    content.setExpandRatio(viewContent, 1);

    Navigator navigator = new Navigator(this, viewContent);
    navigator.addProvider(viewProvider);
    navigator.navigateTo("demo");
    setNavigator(navigator);

    updateStrings();
}

From source file:com.github.peholmst.i18n4vaadin.simple.demo.DemoUI.java

License:Apache License

@Override
protected void init(VaadinRequest request) {
    VerticalLayout content = new VerticalLayout();
    content.setMargin(true);
    content.setSpacing(true);//from w ww . j a  va 2 s  . c  o  m
    content.setSizeFull();
    setContent(content);

    languageChanger = new ComboBox();
    languageChanger.setContainerDataSource(
            new BeanItemContainer<java.util.Locale>(java.util.Locale.class, i18n.getSupportedLocales()));
    languageChanger.setImmediate(true);
    languageChanger.addValueChangeListener(new Property.ValueChangeListener() {
        @Override
        public void valueChange(Property.ValueChangeEvent event) {
            if (languageChanger.getValue() != null) {
                i18n.setLocale((java.util.Locale) languageChanger.getValue());
            }
        }
    });
    content.addComponent(languageChanger);

    Panel viewContent = new Panel();
    viewContent.setSizeFull();
    content.addComponent(viewContent);
    content.setExpandRatio(viewContent, 1);

    Navigator navigator = new Navigator(this, viewContent);
    navigator.addView("demo", DemoView.class);
    navigator.navigateTo("demo");
    setNavigator(navigator);

    updateStrings();
}

From source file:com.github.tempora.view.MainView.java

License:Apache License

public MainView() {
    VerticalLayout vlayout = new VerticalLayout();
    vlayout.addStyleName("outlined");
    vlayout.addStyleName("bg");
    vlayout.setSizeFull();//from   www  . j a va2 s .  co m
    vlayout.setMargin(true);
    HorizontalLayout hlayout = new HorizontalLayout();
    hlayout.addStyleName("outlined");
    hlayout.setSizeFull();
    setContent(vlayout);

    // Title
    Label caption = new Label("Tempora");
    caption.setStyleName("logo-label", true);
    caption.setWidth(null);
    vlayout.addComponent(caption);
    vlayout.setExpandRatio(caption, 0.2f);

    vlayout.setComponentAlignment(caption, Alignment.MIDDLE_CENTER);
    vlayout.addComponent(hlayout);
    vlayout.setExpandRatio(hlayout, 0.7f);

    //
    // General information about the User's mailbox
    //
    final Panel generalInfoPanel = new Panel("<center>General Information</center>");
    generalInfoPanel.addStyleName("frame-bg-general-info");
    generalInfoPanel.setSizeFull();

    this.currentHistoryId = new Label("0");
    currentHistoryId.setStyleName("general-info-count", true);
    currentHistoryId.setCaption("History ID");

    this.messagesTotal = new Label("0");
    messagesTotal.setStyleName("general-info-count", true);
    messagesTotal.setCaption("Messages Total");

    this.threadsTotal = new Label("0");
    threadsTotal.setCaption("Threads Total");
    threadsTotal.setStyleName("general-info-count", true);

    FormLayout mailboxInfoLayout = new FormLayout(messagesTotal, currentHistoryId, threadsTotal);
    VerticalLayout mailboxInfoMainLayout = new VerticalLayout(mailboxInfoLayout);
    mailboxInfoMainLayout.setSizeFull();
    mailboxInfoMainLayout.setMargin(true);
    generalInfoPanel.setContent(mailboxInfoMainLayout);

    //
    // Stats
    //
    final Panel statsPanel = new Panel("<center>Statistics</center>");
    statsPanel.addStyleName("frame-bg-stats");
    statsPanel.setSizeFull();

    this.bodyAvgSize = new Label("0");
    bodyAvgSize.setCaption("Body Avg. Size");
    bodyAvgSize.setStyleName("stats-count", true);

    FormLayout statsLayout = new FormLayout(bodyAvgSize);
    VerticalLayout statsMainLayout = new VerticalLayout(statsLayout);
    statsMainLayout.setSizeFull();
    statsMainLayout.setMargin(true);
    statsPanel.setContent(statsMainLayout);

    //
    // Top 5
    //
    Panel top5Panel = new Panel("<center>Top 5</center>");
    top5Panel.addStyleName("frame-bg-top5");

    // Top 5 Senders
    Panel top5SendersPanel = new Panel("<center>Senders</center>");
    top5SendersPanel.addStyleName("frame-bg-top5");
    top5SendersPanel.setSizeFull();
    this.top5Senders = new Label("NO DATA", ContentMode.PREFORMATTED);
    top5Senders.setSizeUndefined();
    top5SendersPanel.setContent(top5Senders);

    // Top 5 Title Tags
    Panel top5TitleTagsPanel = new Panel("<center>Title Tags</center>");
    top5TitleTagsPanel.addStyleName("frame-bg-top5");
    top5TitleTagsPanel.setSizeFull();
    this.top5TitleTags = new Label("NO DATA", ContentMode.PREFORMATTED);
    top5TitleTags.setSizeUndefined();
    top5TitleTagsPanel.setContent(top5TitleTags);

    top5Panel.setSizeFull();

    VerticalLayout top5MainLayout = new VerticalLayout(top5SendersPanel, top5TitleTagsPanel);
    top5MainLayout.setMargin(true);
    top5MainLayout.setSpacing(true);
    top5MainLayout.setSizeFull();
    top5MainLayout.setComponentAlignment(top5SendersPanel, Alignment.MIDDLE_CENTER);
    top5MainLayout.setComponentAlignment(top5TitleTagsPanel, Alignment.MIDDLE_CENTER);
    top5Panel.setContent(top5MainLayout);

    hlayout.setSpacing(true);
    hlayout.addComponent(generalInfoPanel);
    hlayout.addComponent(statsPanel);
    hlayout.addComponent(top5Panel);

    this.currentUserEmail = new Label("-");
    currentUserEmail.setCaption("Email");

    Button reloadButton = new Button("\u27F3 Reload");
    reloadButton.addClickListener(e -> {
        getSession().getSession().invalidate();
        getUI().getPage().reload();
    });

    HorizontalLayout infoHLayout = new HorizontalLayout();
    infoHLayout.addStyleName("outlined");
    infoHLayout.setSizeFull();
    infoHLayout.setSpacing(true);
    infoHLayout.setMargin(true);

    infoHLayout.addComponent(reloadButton);
    reloadButton.setWidth(null);
    infoHLayout.setComponentAlignment(reloadButton, Alignment.BOTTOM_LEFT);

    infoHLayout.addComponent(currentUserEmail);
    currentUserEmail.setWidth(null);
    infoHLayout.setComponentAlignment(currentUserEmail, Alignment.BOTTOM_RIGHT);

    vlayout.addComponent(infoHLayout);
    vlayout.setExpandRatio(infoHLayout, 0.5f);
}

From source file:com.gnts.pem.txn.sbi.SBIBuilding.java

@SuppressWarnings("deprecation")
void buildView(VerticalLayout layoutPage, HorizontalLayout hlHeaderLayout) {
    // for component width
    setComponentStyle();/*from  ww w . j a  v  a2  s .co m*/
    hlHeaderLayout.removeAllComponents();

    tblEvalDetails = new Table();
    tblEvalDetails.setStyleName(Runo.TABLE_SMALL);
    tblEvalDetails.setPageLength(14);
    tblEvalDetails.setSizeFull();
    tblEvalDetails.setFooterVisible(true);
    tblEvalDetails.setSelectable(true);
    tblEvalDetails.setImmediate(true);
    tblEvalDetails.setColumnCollapsingAllowed(true);

    // for evaluation details
    tfEvaluationPurpose.setValue("Collateral Security to the Bank");
    slStreetSerNo.addItem("STREET NAME");
    slStreetSerNo.addItem("SURVEY NO");
    slStreetSerNo.setNullSelectionAllowed(false);

    tfEvaluationNumber.setRequired(true);
    slBankBranch.setRequired(true);
    dfDateofValuation.setRequired(true);
    tfEvaluationPurpose.setRequired(true);
    layoutEvaluationDetails1.setColumns(4);

    layoutEvaluationDetails1.addComponent(tfEvaluationNumber);
    layoutEvaluationDetails1.addComponent(slBankBranch);
    layoutEvaluationDetails1.addComponent(tfEvaluationPurpose);
    layoutEvaluationDetails1.addComponent(tfValuatedBy);
    layoutEvaluationDetails1.addComponent(dfDateofValuation);
    layoutEvaluationDetails1.addComponent(dfVerifiedDate);
    layoutEvaluationDetails1.addComponent(tfVerifiedBy);
    layoutEvaluationDetails1.addComponent(tfDynamicEvaluation1);
    layoutEvaluationDetails1.addComponent(tfDynamicEvaluation2);
    tfDynamicEvaluation1.setVisible(false);
    tfDynamicEvaluation2.setVisible(false);
    layoutEvaluationDetails1.setSpacing(true);
    layoutEvaluationDetails1.setMargin(true);

    layoutEvaluationDetails.addComponent(btnDynamicEvaluation1);
    layoutEvaluationDetails.setComponentAlignment(btnDynamicEvaluation1, Alignment.TOP_RIGHT);
    layoutEvaluationDetails.addComponent(layoutEvaluationDetails1);

    // for asset details
    VerticalLayout formAsset1 = new VerticalLayout();
    VerticalLayout formAsset2 = new VerticalLayout();
    VerticalLayout formAsset3 = new VerticalLayout();
    VerticalLayout formAsset4 = new VerticalLayout();
    formAsset1.setSpacing(true);
    formAsset2.setSpacing(true);
    formAsset4.setSpacing(true);

    formAsset1.addComponent(tfCustomerName);
    formAsset1.addComponent(tfLandMark);
    formAsset1.addComponent(slPropertyDesc);
    formAsset2.addComponent(tfCustomerAddr);
    formAsset3.addComponent(tfPropertyAddress);
    formAsset3.addComponent(chkSameAddress);
    formAsset4.addComponent(tfDynamicAsset1);
    formAsset4.addComponent(tfDynamicAsset2);
    tfDynamicAsset1.setVisible(false);
    tfDynamicAsset2.setVisible(false);

    chkSameAddress.setImmediate(true);
    chkSameAddress.addListener(new Property.ValueChangeListener() {
        private static final long serialVersionUID = 1L;

        public void valueChange(ValueChangeEvent event) {

            if (chkSameAddress.getValue().equals(true)) {
                tfPropertyAddress.setValue(tfCustomerAddr.getValue());

            } else {
                tfPropertyAddress.setValue("");
            }
        }
    });

    layoutAssetDetails1.setSpacing(true);
    layoutAssetDetails1.setColumns(4);
    layoutAssetDetails1.addComponent(formAsset1);
    layoutAssetDetails1.addComponent(formAsset2);
    layoutAssetDetails1.addComponent(formAsset3);
    layoutAssetDetails1.addComponent(formAsset4);
    layoutAssetDetails1.setMargin(true);

    layoutAssetDetails.addComponent(btnDynamicAsset);
    layoutAssetDetails.setComponentAlignment(btnDynamicAsset, Alignment.TOP_RIGHT);
    layoutAssetDetails.addComponent(layoutAssetDetails1);

    lblHeading = new Label("Owner Details");
    layoutAssetOwner.addComponent(lblHeading);
    lblHeading.setStyleName("h4");
    layoutAssetOwner.addComponent(PanelGenerator.createPanel(layoutOwnerDetails));
    lblHeading = new Label("Asset Details");
    layoutAssetOwner.addComponent(lblHeading);
    lblHeading.setStyleName("h4");
    layoutAssetOwner.addComponent(PanelGenerator.createPanel(layoutAssetDetails));

    // for Owner Details
    layoutOwnerDetails.addComponent(btnAddOwner);
    layoutOwnerDetails.setComponentAlignment(btnAddOwner, Alignment.TOP_RIGHT);
    layoutOwnerDetails1.setColumns(4);
    layoutOwnerDetails1.addComponent(new ComponentIterOwnerDetails("", ""));
    layoutOwnerDetails.addComponent(layoutOwnerDetails1);
    layoutOwnerDetails1.setSpacing(true);
    layoutOwnerDetails1.setMargin(true);

    // for document details
    panelNormalDocumentDetails.addComponent(btnAddNorDoc);
    panelNormalDocumentDetails.setComponentAlignment(btnAddNorDoc, Alignment.TOP_RIGHT);
    panelNormalDocumentDetails.addComponent(new ComponentIteratorNormlDoc(null, null, "", ""));
    panelNormalDocumentDetails.setMargin(true);
    panelLegalDocumentDetails.addComponent(btnAddLegalDoc);
    panelLegalDocumentDetails.setComponentAlignment(btnAddLegalDoc, Alignment.TOP_RIGHT);
    panelLegalDocumentDetails.addComponent(new ComponentIteratorLegalDoc("", "", null));
    panelLegalDocumentDetails.setMargin(true);
    layoutNormalLegal.addComponent(PanelGenerator.createPanel(panelNormalDocumentDetails));
    lblHeading = new Label("Legal Documents");
    layoutNormalLegal.addComponent(lblHeading);
    lblHeading.setStyleName("h4");
    layoutNormalLegal.addComponent(PanelGenerator.createPanel(panelLegalDocumentDetails));
    layoutNormalLegal.setMargin(true);
    panelNormalDocumentDetails.setWidth("100%");
    panelLegalDocumentDetails.setWidth("100%");

    // for adjoin properties
    panelAdjoinProperties.addComponent(btnAddAdjoinProperty);
    panelAdjoinProperties.setComponentAlignment(btnAddAdjoinProperty, Alignment.BOTTOM_RIGHT);
    panelAdjoinProperties.addComponent(new ComponentIteratorAdjoinProperty(null, true, true, true));

    // for dimensions
    panelDimension.addComponent(btnAddDimension);
    panelDimension.setComponentAlignment(btnAddDimension, Alignment.BOTTOM_RIGHT);
    panelDimension.addComponent(new ComponentIterDimensionofPlot(null, true, true, true));

    //for description of the property
    layoutDescProperty.setMargin(true);
    layoutDescProperty1.setSpacing(true);
    layoutDescProperty1.setColumns(4);
    layoutDescProperty.addComponent(btnDynamicDescProp);
    layoutDescProperty.setComponentAlignment(btnDynamicDescProp, Alignment.TOP_RIGHT);
    layoutDescProperty1.addComponent(tfSiteNumber);
    layoutDescProperty1.addComponent(tfSFNumber);
    layoutDescProperty1.addComponent(tfNewSFNumber);
    layoutDescProperty1.addComponent(tfVillage);
    layoutDescProperty1.addComponent(tfTaluk);
    layoutDescProperty1.addComponent(tfDistCorpPanc);
    layoutDescProperty1.addComponent(tfLocationSketch);
    layoutDescProperty1.addComponent(tfProTaxReceipt);
    layoutDescProperty1.addComponent(tfElecServiceConnNo);
    layoutDescProperty1.addComponent(tfElecConnecName);
    layoutDescProperty1.addComponent(slHighMiddPoor);
    layoutDescProperty1.addComponent(slUrbanSemiRural);
    layoutDescProperty1.addComponent(slResiIndustCommer);
    layoutDescProperty1.addComponent(slProOccupiedBy);
    layoutDescProperty1.addComponent(tfMonthlyRent);
    layoutDescProperty1.addComponent(tfCoverUnderStatCentral);
    layoutDescProperty1.addComponent(tfAnyConversionLand);
    layoutDescProperty1.addComponent(tfExtentSite);
    layoutDescProperty1.addComponent(tfYearAcquistion);
    layoutDescProperty1.addComponent(tfPurchaseValue);
    layoutDescProperty1.addComponent(tfPropLandmark);
    layoutDescProperty1.addComponent(tfPostalAddress);
    layoutDescProperty1.addComponent(tfDynamicDescProp1);
    layoutDescProperty1.addComponent(tfDynamicDescProp2);
    layoutDescProperty.addComponent(layoutDescProperty1);
    tfDynamicDescProp1.setVisible(false);
    tfDynamicDescProp2.setVisible(false);
    //for charcteristiccs of the site
    layoutCharcterSite1.setSpacing(true);
    layoutCharcterSite1.setColumns(4);
    layoutCharcterSite.setMargin(true);
    layoutCharcterSite.addComponent(btnDynamicCharacter);
    layoutCharcterSite.setComponentAlignment(btnDynamicCharacter, Alignment.TOP_RIGHT);
    layoutCharcterSite1.addComponent(slLocalClass);
    layoutCharcterSite1.addComponent(slSurroundDevelop);
    layoutCharcterSite1.addComponent(tfFlood);
    layoutCharcterSite1.addComponent(slFeasibility);
    layoutCharcterSite1.addComponent(slLandLevel);
    layoutCharcterSite1.addComponent(slLandShape);
    layoutCharcterSite1.addComponent(slTypeUse);
    layoutCharcterSite1.addComponent(tfUsageRestriction);
    layoutCharcterSite1.addComponent(slIsPlot);
    layoutCharcterSite1.addComponent(tfApprveNo);
    layoutCharcterSite1.addComponent(tfNoReason);
    layoutCharcterSite1.addComponent(tfSubdivide);
    layoutCharcterSite1.addComponent(slDrawApproval);
    layoutCharcterSite1.addComponent(slCornerInter);
    layoutCharcterSite1.addComponent(slRoadFacility);
    layoutCharcterSite1.addComponent(slTypeRoad);
    layoutCharcterSite1.addComponent(slRoadWidth);
    layoutCharcterSite1.addComponent(slLandLock);
    layoutCharcterSite1.addComponent(slWaterPotential);
    layoutCharcterSite1.addComponent(slUnderSewerage);
    layoutCharcterSite1.addComponent(slPowerSupply);
    layoutCharcterSite1.addComponent(tfAdvantageSite);
    layoutCharcterSite1.addComponent(tfDisadvantageSite);
    layoutCharcterSite1.addComponent(tfGeneralRemarks);
    layoutCharcterSite1.addComponent(tfDynamicCharacter1);
    layoutCharcterSite1.addComponent(tfDynamicCharacter2);
    layoutCharcterSite.addComponent(layoutCharcterSite1);
    tfDynamicCharacter1.setVisible(false);
    tfDynamicCharacter2.setVisible(false);

    // valuation of land
    layoutValuationLand.setSpacing(true);
    layoutValuationLand1.setSpacing(true);
    layoutValuationLand1.setColumns(4);
    layoutValuationLand1.addComponent(tfAreaofLand);
    layoutValuationLand1.addComponent(tfNorthandSouth);
    layoutValuationLand1.addComponent(tfMarketRate);
    layoutValuationLand1.addComponent(tfGuiderate);
    layoutValuationLand1.addComponent(tfAdopetdMarketRate);
    layoutValuationLand1.addComponent(tfFairMarketRate);
    layoutValuationLand1.addComponent(tfDynamicValuation1);
    layoutValuationLand1.addComponent(tfDynamicValuation2);
    tfDynamicValuation1.setVisible(false);
    tfDynamicValuation2.setVisible(false);
    layoutValuationLand.addComponent(btnDynamicValuation);
    layoutValuationLand.setComponentAlignment(btnDynamicValuation, Alignment.TOP_RIGHT);
    layoutValuationLand.addComponent(layoutValuationLand1);
    layoutValuationLand.setMargin(true);
    tfFairMarketRate.setValue("0.00");
    tfAdopetdMarketRate.setRequired(true);
    //property value
    layoutPropertyValue.setSpacing(true);
    layoutPropertyValue.setMargin(true);
    layoutPropertyValue1.setColumns(4);
    layoutPropertyValue1.setSpacing(true);
    layoutPropertyValue1.addComponent(tfRealziableRate);
    layoutPropertyValue1.addComponent(tfDistressRate);
    layoutPropertyValue1.addComponent(tfGuidelineRate);
    layoutPropertyValue.addComponent(layoutPropertyValue1);

    //for flat1
    layoutForFlats.setMargin(true);
    layoutForFlats.setSpacing(true);
    layoutForFlats1.setSpacing(true);
    layoutForFlats.addComponent(btnDynamicForFlat);
    layoutForFlats.setComponentAlignment(btnDynamicForFlat, Alignment.TOP_RIGHT);
    layoutForFlats1.addComponent(slUndivideShare);
    layoutForFlats1.addComponent(tfUDSproportion);
    layoutForFlats1.addComponent(tfUDSArea);
    layoutForFlats1.addComponent(tfFlatsApproved);
    layoutForFlats1.addComponent(tfFlatsWorkplan);
    layoutForFlats1.addComponent(slUnderPermissable);
    layoutForFlats1.addComponent(lblFloorIndex);
    layoutForFlats1.addComponent(tfIndexPlan);
    layoutForFlats1.addComponent(tfIndexSite);
    layoutForFlats1.addComponent(tfIndexCalculation);
    layoutForFlats1.addComponent(tfDynamicForFlat1);
    layoutForFlats1.addComponent(tfDynamicForFlat2);
    tfDynamicForFlat1.setVisible(false);
    tfDynamicForFlat2.setVisible(false);
    layoutForFlats.addComponent(layoutForFlats1);

    //for Calculation-extra Items
    layoutExtraItems.setCaption("Extra Items");
    layoutExtraItems.setWidth("420px");
    layoutExtraItems.addComponent(btnDynamicExtra);
    layoutExtraItems.setComponentAlignment(btnDynamicExtra, Alignment.TOP_RIGHT);
    layoutExtraItems.addComponent(new ComponentIterExtraItems(null, ""));

    layoutAdditionItem.setCaption("Additional Items");
    layoutAdditionItem.setWidth("400px");
    layoutAdditionItem.addComponent(btnDynamicAdditional);
    layoutAdditionItem.setComponentAlignment(btnDynamicAdditional, Alignment.TOP_RIGHT);
    layoutAdditionItem.addComponent(new ComponentIterAdditionalItems(null, ""));

    layoutExtraAddItems1.setSpacing(true);
    layoutExtraAddItems1.setMargin(true);
    layoutExtraAddItems.setColumns(2);
    layoutExtraAddItems.addComponent(layoutExtraItems);
    layoutExtraAddItems.addComponent(layoutAdditionItem);
    layoutExtraAddItems1.addComponent(layoutExtraAddItems);

    //for Miscellaneous
    layoutMiscellaneous.setCaption("Miscellaneous");
    layoutMiscellaneous.setWidth("420px");
    layoutMiscellaneous.addComponent(btnDynamicMiscell);
    layoutMiscellaneous.setComponentAlignment(btnDynamicMiscell, Alignment.TOP_RIGHT);
    layoutMiscellaneous.addComponent(new ComponentIterMiscellaneous(null, ""));

    layoutServices.setCaption("Services");
    layoutServices.setWidth("400px");
    layoutServices.addComponent(btnDynamicServices);
    layoutServices.setComponentAlignment(btnDynamicServices, Alignment.TOP_RIGHT);
    layoutServices.addComponent(new ComponentIerServices(null, ""));

    layoutMiscellService1.setSpacing(true);
    layoutMiscellService1.setMargin(true);
    layoutMiscellService.setColumns(2);
    layoutMiscellService.addComponent(layoutMiscellaneous);
    layoutMiscellService.addComponent(layoutServices);
    layoutMiscellService1.addComponent(layoutMiscellService);

    // for details of plan approval
    layoutPlanApproval1.setColumns(2);
    FormLayout lay1 = new FormLayout();
    FormLayout lay2 = new FormLayout();
    lay1.addComponent(tfLandandBuilding);
    lay1.addComponent(tfBuilding);
    lay1.addComponent(tfPlanApprovedBy);
    lay1.addComponent(dfLicenseFrom);
    lay1.addComponent(slIsLicenceForced);
    lay1.addComponent(tfDynamicPlanApproval2);

    lay2.addComponent(tfQuality);
    lay2.addComponent(slAllApprovalRecved);
    lay2.addComponent(slConstAsperAppPlan);
    lay2.addComponent(tfReason);
    lay2.addComponent(tfDynamicPlanApproval1);
    tfDynamicPlanApproval1.setVisible(false);
    tfDynamicPlanApproval2.setVisible(false);
    lay1.setSpacing(true);
    lay2.setSpacing(true);
    layoutPlanApproval1.addComponent(lay1);
    layoutPlanApproval1.addComponent(lay2);
    layoutPlanApproval1.setSpacing(true);
    layoutPlanApproval1.setMargin(true);
    layoutPlanApproval.addComponent(btnDynamicPlanApproval);
    layoutPlanApproval.setComponentAlignment(btnDynamicPlanApproval, Alignment.TOP_RIGHT);
    layoutPlanApproval.addComponent(layoutPlanApproval1);
    //valuation of Construction
    formConstValuation1.addComponent(slTypeProperty);
    formConstValuation1.addComponent(slTypeStructure);
    formConstValuation1.addComponent(tfYearConstruction);
    formConstValuation1.addComponent(slExterior);
    formConstValuation1.addComponent(slInterior);
    formConstValuation1.addComponent(tfLifeAge);
    formConstValuation1.addComponent(tfFutureLife);
    formConstValuation1.addComponent(tfDetailsPlan);
    formConstValuation1.addComponent(slDeviation);
    formConstValuation1.addComponent(tfDtlsDeviation);

    formConstValuation2.addComponent(btnAddRoofHt);
    formConstValuation2.addComponent(tfNoFloors);

    layoutConstValuation.setSpacing(true);
    layoutConstValuation1.setSpacing(true);
    layoutConstValuation1.setColumns(2);
    layoutConstValuation1.addComponent(formConstValuation1);
    layoutConstValuation1.addComponent(new VerticalLayout() {
        {
            addComponent(formConstValuation2);
            addComponent(layoutRoofHeight);
        }

    });

    formConstValuation1.addComponent(tfDynamicConstval1);
    formConstValuation1.addComponent(tfDynamicConstval2);
    layoutConstValuation.addComponent(btnDynamicConstVal);
    layoutConstValuation.setComponentAlignment(btnDynamicConstVal, Alignment.TOP_RIGHT);
    layoutConstValuation.addComponent(layoutConstValuation1);
    layoutConstValuation.setMargin(true);

    // for Build Specification
    panelBuildSpecfication.addComponent(btnAddBuildSpec);
    panelBuildSpecfication.setComponentAlignment(btnAddBuildSpec, Alignment.BOTTOM_RIGHT);
    panelBuildSpecfication.addComponent(new ComponentIterBuildingSpecfication(null, true, true, true));
    panelBuildSpecfication.setWidth("100%");

    //for Valuation Details
    layoutValuationDetails.addComponent(btnAddValDtls);
    layoutValuationDetails1.setColumns(8);
    layoutValuationDetails1.setSpacing(true);
    layoutValuationDetails.setComponentAlignment(btnAddValDtls, Alignment.TOP_RIGHT);
    layoutValuationDetails1.addComponent(lblParticular);
    layoutValuationDetails1.addComponent(lblPlinthArea);
    layoutValuationDetails1.addComponent(lblRoofHt);
    layoutValuationDetails1.addComponent(lblBuildAge);
    layoutValuationDetails1.addComponent(lblRate);
    layoutValuationDetails1.addComponent(lblReplace);
    layoutValuationDetails1.addComponent(lblDepreciation);
    layoutValuationDetails1.addComponent(lblNetvalue);
    layoutValuationDetails1.setComponentAlignment(lblParticular, Alignment.BOTTOM_LEFT);
    layoutValuationDetails1.setComponentAlignment(lblPlinthArea, Alignment.BOTTOM_LEFT);
    layoutValuationDetails1.setComponentAlignment(lblRoofHt, Alignment.BOTTOM_LEFT);
    layoutValuationDetails1.setComponentAlignment(lblBuildAge, Alignment.BOTTOM_LEFT);
    layoutValuationDetails1.setComponentAlignment(lblRate, Alignment.BOTTOM_LEFT);
    layoutValuationDetails1.setComponentAlignment(lblReplace, Alignment.BOTTOM_LEFT);
    layoutValuationDetails1.setComponentAlignment(lblDepreciation, Alignment.BOTTOM_LEFT);
    layoutValuationDetails1.setComponentAlignment(lblNetvalue, Alignment.BOTTOM_LEFT);
    layoutValuationDetails1.setWidth("650px");
    layoutValuationDetails.addComponent(layoutValuationDetails1);
    layoutValuationDetails.addComponent(layoutValuationDetails2);
    layoutValuationDetails.setWidth("100%");
    layoutValuationDetails.setMargin(true);
    ValuationDetailsList obj = new ValuationDetailsList();
    ValuationDetailsList obj1 = new ValuationDetailsList();
    obj.setFloorDtlsLabel("Ground Floor Building");
    obj1.setFloorDtlsLabel("First Floor Building");
    layoutValuationDetails2.addComponent(new ComponenetIterValuationDetails(obj));
    layoutValuationDetails2.addComponent(new ComponenetIterValuationDetails(obj1));

    // for plinth area
    layoutPlintharea.addComponent(btnAddPlinth);
    layoutPlintharea.setComponentAlignment(btnAddPlinth, Alignment.BOTTOM_RIGHT);
    layoutPlintharea.setMargin(true);
    layoutPlintharea.addComponent(new ComponentIterPlinthArea("Ground Floor", "", ""));
    layoutPlintharea.addComponent(new ComponentIterPlinthArea("Portico and Stair", "", ""));

    //for applicant estimate
    layoutElectrical.setSpacing(true);
    layoutElectrical1.setSpacing(true);
    layoutElectrical1.setColumns(4);
    layoutElectrical1.addComponent(tfTypeofwiring);
    layoutElectrical1.addComponent(tfClassFit);
    layoutElectrical1.addComponent(tfNOofLight);
    layoutElectrical1.addComponent(tfExhaustFan);
    layoutElectrical1.addComponent(tfSpareplug);
    layoutElectrical1.addComponent(tfDynamicElectrical1);
    layoutElectrical1.addComponent(tfDynamicElectrical2);
    tfDynamicElectrical1.setVisible(false);
    tfDynamicElectrical2.setVisible(false);
    layoutElectrical.addComponent(btnDynamicElectrical);
    layoutElectrical.setComponentAlignment(btnDynamicElectrical, Alignment.TOP_RIGHT);
    layoutElectrical.addComponent(layoutElectrical1);
    layoutElectrical.setMargin(true);

    //for applicant reasonable
    layoutPlumbing.setSpacing(true);
    layoutPlumbing1.setSpacing(true);
    layoutPlumbing1.setColumns(4);
    layoutPlumbing1.addComponent(tfNoofClosets);
    layoutPlumbing1.addComponent(tfNoofWashbin);
    layoutPlumbing1.addComponent(tfWatertaps);
    layoutPlumbing1.addComponent(tfAnyFixtures);
    layoutPlumbing1.addComponent(tfDynamicPlum1);
    layoutPlumbing1.addComponent(tfDynamicPlum2);

    layoutPlumbing.addComponent(btnDynamicPlumbing);
    layoutPlumbing.setComponentAlignment(btnDynamicPlumbing, Alignment.TOP_RIGHT);
    layoutPlumbing.addComponent(layoutPlumbing1);
    layoutPlumbing.setMargin(true);

    // for Guideline area
    layoutGuideline.addComponent(btnAddGuideline);
    layoutGuideline.setComponentAlignment(btnAddGuideline, Alignment.TOP_RIGHT);
    layoutGuideline.setMargin(true);
    layoutGuideline.addComponent(new ComponentIterGuideline("Land", "", "", ""));
    layoutGuideline.addComponent(new ComponentIterGuideline("Construction", "", "", ""));

    // for guide line reference
    streetLayout.addComponent(slStreetSerNo);
    streetLayout.addComponent(tfStreetName);

    layoutGuidelineReference1.setColumns(4);
    layoutGuidelineReference1.setSpacing(true);
    layoutGuidelineReference1.addComponent(tfZone);
    layoutGuidelineReference1.addComponent(tfSRO);
    layoutGuidelineReference1.addComponent(tfVillage);
    layoutGuidelineReference1.addComponent(tfRevnueDist);
    layoutGuidelineReference1.addComponent(tfTalukName);
    layoutGuidelineReference1.addComponent(streetLayout);
    layoutGuidelineReference1.addComponent(tfGuidelineValue);
    layoutGuidelineReference1.addComponent(tfGuidelineValueMatric);
    layoutGuidelineReference1.addComponent(slClassification);
    layoutGuidelineReference1.setMargin(true);

    layoutGuidelineReference.setSpacing(true);
    layoutGuidelineReference.addComponent(layoutGuidelineReference1);

    // add components in main panel
    accordion.setWidth("100%");
    layoutEvaluationDetails.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutEvaluationDetails), "Evaluation Details");

    layoutOwnerDetails.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutAssetOwner), "Owner Details/Asset Details");
    layoutAssetDetails.setStyleName("bluebar");

    layoutNormalLegal.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutNormalLegal), "Document Details");

    panelAdjoinProperties.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(panelAdjoinProperties), "Adjoining Properties");
    panelDimension.setStyleName("bluebar");
    accordion.addTab(panelDimension, "Dimension");

    layoutDescProperty.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutDescProperty), "Description of the property");
    layoutCharcterSite.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutCharcterSite), "Characteristics of the site");
    layoutValuationLand.setStyleName("bluebar");
    accordion.addTab(layoutValuationLand, "Valuation of Land");
    layoutPlanApproval.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutPlanApproval), "Details of Plan Approval");
    layoutPlintharea.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutPlintharea), "Plinth Area Details");
    layoutForFlats.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutForFlats), "For Flats");
    layoutConstValuation.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutConstValuation), "Technical Details of the Building");
    panelBuildSpecfication.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(panelBuildSpecfication), "Specification");
    layoutValuationDetails.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutValuationDetails), "Details of Valuation");
    layoutExtraAddItems1.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutExtraAddItems1), "Extra/Additional Items");
    layoutMiscellService1.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutMiscellService1), "Miscellaneous/Services");
    layoutElectrical.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutElectrical), "Electrical Installation");

    layoutPlumbing.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutPlumbing), "Plumbing Installation");

    layoutGuideline.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutGuideline), "Guideline Details");

    layoutGuidelineReference.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutGuidelineReference), "Guideline Reference Details");
    layoutPropertyValue.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutPropertyValue), "Property Value Details");
    this.accordion.addListener(new SelectedTabChangeListener() {
        public void selectedTabChange(SelectedTabChangeEvent event) {
            if (event.getTabSheet().getSelectedTab().equals(panelDimension)) {
                Iterator<Component> myComps = panelDimension.getComponentIterator();
                BigDecimal siteArea = new BigDecimal(0.00);
                while (myComps.hasNext()) {
                    final Component component = myComps.next();
                    int i = 1;

                    if (component instanceof ComponentIterDimensionofPlot) {

                        ComponentIterDimensionofPlot mycomponent = (ComponentIterDimensionofPlot) component;
                        List<TPemCmPropDimension> getList = mycomponent.getDimensionPropertyList();

                        try {
                            List<String> mylist = mycomponent.getLeastValaue();
                            siteArea = siteArea.add(new BigDecimal(mylist.get(0).replaceAll("[^\\d.]", "")));
                            tfNorthandSouth.setValue(mylist.get(1));
                            tfAreaofLand.setValue(siteArea.toString());
                        } catch (Exception e) {

                            logger.info("Error-->" + e);
                        }
                    }
                }
                BigDecimal site = new BigDecimal(0.00);
                BigDecimal fair = new BigDecimal(1.00);
                BigDecimal salbale = new BigDecimal(435.60);
                try {
                    site = new BigDecimal(tfAreaofLand.getValue().replaceAll("[^\\d.]", ""));
                } catch (Exception e) {
                    site = new BigDecimal("0.00");

                }
                try {
                    site.divide(salbale, 2, RoundingMode.HALF_UP).toPlainString();
                    fair.multiply(site.divide(salbale, 2, RoundingMode.HALF_UP))
                            .multiply(new BigDecimal(tfAdopetdMarketRate.getValue().replaceAll("[^\\d.]", "")));
                    tfAreaofLand.setValue(site.toString() + " sft (or) "
                            + site.divide(salbale, 2, RoundingMode.HALF_UP).toPlainString() + " cents");
                    tfFairMarketRate.setValue(XMLUtil.IndianFormat(new BigDecimal(fair
                            .multiply(site.divide(salbale, 2, RoundingMode.HALF_UP))
                            .multiply(new BigDecimal(tfAdopetdMarketRate.getValue().replaceAll("[^\\d.]", "")))
                            .toString())));
                } catch (Exception e) {

                }
            }

        }
    });
    /*tfEvaluationNumber.addValidator(new IntegerValidator("Enter numbers only"));
    tfEvaluationNumber.addBlurListener(new SaarcValidate(tfEvaluationNumber));*/
    tfEvaluationNumber.setImmediate(true);

    tfEvaluationNumber.addBlurListener(new BlurListener() {

        private static final long serialVersionUID = 1L;

        public void blur(BlurEvent event) {
            // TODO Auto-generated method stub
            if (!tfEvaluationNumber.isReadOnly()) {
                tfEvaluationNumber.setComponentError(null);
                try {
                    tfEvaluationNumber.setComponentError(null);
                    String evalno = tfEvaluationNumber.getValue().toString();
                    count = beanEvaluation.getEvalNoCount(evalno);

                    if (tfEvaluationNumber.getValue() != null
                            && tfEvaluationNumber.getValue().trim().length() > 0) {

                        if (count == 0) {

                            tfEvaluationNumber.setComponentError(null);

                        } else {

                            tfEvaluationNumber
                                    .setComponentError(new UserError("Evaluation number is already Exist"));

                        }
                    }
                } catch (Exception e) {

                }
            }

        }
    });
    layoutMainForm.addComponent(PanelGenerator.createPanel(accordion));

    mainPanel.addComponent(layoutMainForm);
    mainPanel.addComponent(layoutButton2);
    mainPanel.setComponentAlignment(layoutButton2, Alignment.BOTTOM_RIGHT);
    mainPanel.setVisible(false);

    layoutMainForm.setMargin(true);
    layoutMainForm.setSpacing(true);
    // for main panel
    layoutButton2.setSpacing(true);
    btnSave.setStyleName("savebt");
    btnCancel.setStyleName("cancelbt");
    btnSubmit.setStyleName("submitbt");
    //   saveExcel.addStyleName("downloadbt");
    btnSave.setVisible(false);
    btnSubmit.setVisible(false);
    btnCancel.setVisible(false);

    layoutButton2.addComponent(btnSave);
    //   layoutButton2.addComponent(saveExcel);
    layoutButton2.addComponent(btnSubmit);
    layoutButton2.addComponent(btnCancel);
    hlHeaderLayout.addComponent(layoutButton2);
    hlHeaderLayout.setComponentAlignment(layoutButton2, Alignment.BOTTOM_RIGHT);

    // Initaited the Label Function here by Hohul
    lblTableTitle = new Label();
    lblSaveNotification = new Label();
    lblSaveNotification.setContentMode(ContentMode.HTML);
    lblNotificationIcon = new Label();
    lblTableTitle.setValue("<B>&nbsp;&nbsp;Action:</B>");
    lblTableTitle.setContentMode(ContentMode.HTML);
    lblFormTittle = new Label();
    lblFormTittle.setContentMode(ContentMode.HTML);
    lblFormTittle.setValue("&nbsp;&nbsp;<b>" + screenName + "</b>&nbsp;::&nbsp;Home");
    lblFormTitle1 = new Label();
    lblFormTitle1.setContentMode(ContentMode.HTML);
    lblFormTitle1.setValue("&nbsp;&nbsp;<b>" + screenName + "</b>&nbsp;::&nbsp;");
    lblAddEdit = new Label();
    lblAddEdit.setContentMode(ContentMode.HTML);

    // Button Back declaration by Hohul
    btnBack = new Button("Home", this);
    btnBack.setStyleName("link");

    // Bread Scrumbs initiated here by Hohul

    hlBreadCrumbs = new HorizontalLayout();
    hlBreadCrumbs.addComponent(lblFormTitle1);
    hlBreadCrumbs.addComponent(btnBack);
    hlBreadCrumbs.setComponentAlignment(btnBack, Alignment.TOP_CENTER);
    hlBreadCrumbs.addComponent(lblAddEdit);
    hlBreadCrumbs.setComponentAlignment(lblAddEdit, Alignment.MIDDLE_CENTER);
    hlBreadCrumbs.setVisible(false);

    // for search panel
    // for search panel
    // Added by Hohul ----->  For Search Panel Layouts
    FormLayout flSearchEvalNumber = new FormLayout();
    flSearchEvalNumber.addComponent(tfSearchEvalNumber);

    FormLayout flSearchBankbranch = new FormLayout();
    flSearchBankbranch.addComponent(slSearchBankbranch);

    FormLayout flSearchCustomer = new FormLayout();
    flSearchCustomer.addComponent(tfSearchCustomer);

    HorizontalLayout hlSearchComponentLayout = new HorizontalLayout();
    hlSearchComponentLayout.addComponent(flSearchEvalNumber);
    hlSearchComponentLayout.addComponent(flSearchBankbranch);
    hlSearchComponentLayout.addComponent(flSearchCustomer);
    hlSearchComponentLayout.setSpacing(true);
    hlSearchComponentLayout.setMargin(true);

    //Initialization and properties for btnDownload      
    btnDownload = new Button("Download");
    //btnDownload.setDescription("Download");
    btnDownload.addStyleName("downloadbt");
    btnDownload.addClickListener(new ClickListener() {
        @Override
        public void buttonClick(ClickEvent event) {
            //  UI.getCurrent()..clearDashboardButtonBadge();
            event.getButton().removeStyleName("unread");
            if (notifications != null && notifications.getUI() != null)
                notifications.close();
            else {
                buildNotifications(event);
                UI.getCurrent().addWindow(notifications);
                notifications.focus();
                ((VerticalLayout) UI.getCurrent().getContent())
                        .addLayoutClickListener(new LayoutClickListener() {
                            @Override
                            public void layoutClick(LayoutClickEvent event) {
                                notifications.close();
                                ((VerticalLayout) UI.getCurrent().getContent()).removeLayoutClickListener(this);
                            }
                        });
            }

        }
    });

    hlFileDownloadLayout = new HorizontalLayout();
    hlFileDownloadLayout.setSpacing(true);
    hlFileDownloadLayout.addComponent(btnDownload);
    hlFileDownloadLayout.setComponentAlignment(btnDownload, Alignment.MIDDLE_CENTER);

    VerticalLayout vlSearchandResetButtonLAyout = new VerticalLayout();
    vlSearchandResetButtonLAyout.setSpacing(true);
    vlSearchandResetButtonLAyout.addComponent(btnReset);
    vlSearchandResetButtonLAyout.setWidth("100");
    vlSearchandResetButtonLAyout.addStyleName("topbarthree");
    vlSearchandResetButtonLAyout.setMargin(true);

    HorizontalLayout hlSearchComponentandButtonLayout = new HorizontalLayout();
    hlSearchComponentandButtonLayout.setSizeFull();
    hlSearchComponentandButtonLayout.setSpacing(true);
    hlSearchComponentandButtonLayout.addComponent(hlSearchComponentLayout);
    hlSearchComponentandButtonLayout.setComponentAlignment(hlSearchComponentLayout, Alignment.MIDDLE_LEFT);
    hlSearchComponentandButtonLayout.addComponent(vlSearchandResetButtonLAyout);
    hlSearchComponentandButtonLayout.setComponentAlignment(vlSearchandResetButtonLAyout,
            Alignment.MIDDLE_RIGHT);
    hlSearchComponentandButtonLayout.setExpandRatio(vlSearchandResetButtonLAyout, 1);
    final VerticalLayout vlSearchComponentandButtonLayout = new VerticalLayout();
    vlSearchComponentandButtonLayout.setSpacing(true);
    vlSearchComponentandButtonLayout.setSizeFull();
    vlSearchComponentandButtonLayout.addComponent(hlSearchComponentandButtonLayout);

    /*layoutSearch.addComponent(tfSearchEvalNumber);
    layoutSearch.addComponent(slSearchBankbranch);
    layoutSearch.addComponent(tfSearchCustomer);
    layoutSearch.addComponent(btnReset);
    layoutSearch.setComponentAlignment(btnReset, Alignment.BOTTOM_LEFT);
    btnSearch.addStyleName("default");*/
    btnReset.addStyleName("resetbt");
    tfSearchCustomer.setImmediate(true);
    tfSearchCustomer.addListener(new TextChangeListener() {
        private static final long serialVersionUID = 1L;
        SimpleStringFilter filter = null;

        public void textChange(TextChangeEvent event) {
            Filterable f = (Filterable) tblEvalDetails.getContainerDataSource();
            if (filter != null)
                f.removeContainerFilter(filter);

            filter = new SimpleStringFilter("custName", event.getText(), true, false);

            f.addContainerFilter(filter);
            total = f.size();
            tblEvalDetails.setColumnFooter("lastUpdateDt", "No. of Records:" + total);
        }
    });
    tfSearchEvalNumber.setImmediate(true);
    tfSearchEvalNumber.addListener(new TextChangeListener() {
        private static final long serialVersionUID = 1L;
        SimpleStringFilter filter = null;

        public void textChange(TextChangeEvent event) {
            Filterable f = (Filterable) tblEvalDetails.getContainerDataSource();
            if (filter != null)
                f.removeContainerFilter(filter);

            filter = new SimpleStringFilter("evalNo", event.getText(), true, false);

            f.addContainerFilter(filter);
            total = f.size();
            tblEvalDetails.setColumnFooter("lastUpdateDt", "No. of Records:" + total);
        }
    });
    slSearchBankbranch.setImmediate(true);
    slSearchBankbranch.addValueChangeListener(new Property.ValueChangeListener() {
        private static final long serialVersionUID = 1L;
        Filter filter = null;

        @Override
        public void valueChange(ValueChangeEvent event) {
            // TODO Auto-generated method stub

            try {
                String strBankBranch = slSearchBankbranch.getValue().toString();
                Filterable f = (Filterable) tblEvalDetails.getContainerDataSource();
                if (filter != null)
                    f.removeContainerFilter(filter);

                filter = new Compare.Equal("bankBranch", strBankBranch);
                f.addContainerFilter(filter);
                f.addContainerFilter(filter);
                total = f.size();
                tblEvalDetails.setColumnFooter("lastUpdateDt", "No. of Records:" + total);
            } catch (Exception e) {
            }
        }

    });
    searchPanel.addComponent(PanelGenerator.createPanel(vlSearchComponentandButtonLayout));
    searchPanel.setMargin(true);

    // Add Layout table panel by Hohul

    HorizontalLayout flTableCaption = new HorizontalLayout();
    flTableCaption.addComponent(lblTableTitle);
    flTableCaption.setComponentAlignment(lblTableTitle, Alignment.MIDDLE_CENTER);
    flTableCaption.addStyleName("lightgray");
    flTableCaption.setHeight("25px");
    flTableCaption.setWidth("60px");
    lblNoofRecords = new Label(" ", ContentMode.HTML);
    lblNoofRecords.addStyleName("lblfooter");
    HorizontalLayout hlTableTittleLayout = new HorizontalLayout();
    hlTableTittleLayout.addComponent(flTableCaption);
    hlTableTittleLayout.addComponent(btnAdd);
    hlTableTittleLayout.addComponent(btnEdit);
    hlTableTittleLayout.addComponent(btnView);
    hlTableTittleLayout.setHeight("25px");
    hlTableTittleLayout.setSpacing(true);

    HorizontalLayout hlTableTitleandCaptionLayout = new HorizontalLayout();
    hlTableTitleandCaptionLayout.addStyleName("topbarthree");
    hlTableTitleandCaptionLayout.setWidth("100%");
    hlTableTitleandCaptionLayout.addComponent(hlTableTittleLayout);
    hlTableTitleandCaptionLayout.addComponent(hlFileDownloadLayout);
    hlTableTitleandCaptionLayout.setComponentAlignment(hlFileDownloadLayout, Alignment.MIDDLE_RIGHT);
    hlTableTitleandCaptionLayout.setHeight("28px");

    // for table panel
    btnAdd.addStyleName("add");
    btnEdit.addStyleName("editbt");
    btnView.addStyleName("view");
    btnView.setEnabled(false);

    hlAddEditLayout.addStyleName("topbarthree");
    hlAddEditLayout.setWidth("100%");
    hlAddEditLayout.addComponent(hlTableTitleandCaptionLayout);
    hlAddEditLayout.setHeight("28px");
    // Added Action Label to Table

    layoutTable.addComponent(hlAddEditLayout);
    layoutTable.setComponentAlignment(hlAddEditLayout, Alignment.TOP_LEFT);
    layoutTable.addComponent(tblEvalDetails);

    tablePanel.addComponent(layoutTable);
    tablePanel.setWidth("100%");
    tablePanel.setMargin(true);

    slSearchBankbranch.setNullSelectionAllowed(false);
    slSearchBankbranch.setInputPrompt(Common.SELECT_PROMPT);
    tfSearchCustomer.setInputPrompt("Enter Customer");
    tfSearchEvalNumber.setInputPrompt("Enter Evaluation Number");
    tfAdopetdMarketRate.setInputPrompt("Enter Market Rate");
    tfAdvantageSite.setInputPrompt("Enter Advantage Site");
    tfAnyConversionLand.setInputPrompt("Enter Conversion Land");
    tfAnyFixtures.setInputPrompt("Enter Fixtures");
    tfApprveNo.setInputPrompt("Enter Approve No");
    tfAreaofLand.setInputPrompt("Enter Area Of Land");
    tfBuilding.setInputPrompt("Enter Building");
    tfCaption.setInputPrompt("Enter Caption");
    tfClassFit.setInputPrompt("Enter Class Fit");
    tfCoverUnderStatCentral.setInputPrompt("Enter Cover Under State Central");
    //tfCustomerAddr.setInputPrompt("Enter Customer Address");
    //tfCustomerName.setInputPrompt("Enter Customer Name");
    tfDetailsPlan.setInputPrompt("Enter Detail Plan");
    tfDisadvantageSite.setInputPrompt("Enter Disadvantages");
    tfDistCorpPanc.setInputPrompt("Enter District");
    tfDistressRate.setInputPrompt("Enter Distress Rate");
    tfDtlsDeviation.setInputPrompt("Enter Deviation Details");
    tfDynamicAsset1.setInputPrompt("Enter Dynamic Asset");
    tfDynamicAsset2.setInputPrompt("Enter Dynamic Asset");
    tfDynamicCharacter1.setInputPrompt("Enter Dynamic Character");
    tfDynamicCharacter2.setInputPrompt("Enter Dynamic Character");
    tfDynamicConstval1.setInputPrompt("Enter Dynamic Constant Value");
    tfDynamicConstval2.setInputPrompt("Enter Dynamic Constant Value");
    tfDynamicDescProp1.setInputPrompt("Enter Dynamic Description");
    tfDynamicDescProp2.setInputPrompt("Enter Dynamic Description");
    tfDynamicElectrical1.setInputPrompt("Enter Dynamic Electrial");
    tfDynamicElectrical2.setInputPrompt("Enter Dynamic Electrial");
    tfDynamicEvaluation1.setInputPrompt("Enter Dynamic Evaluation");
    tfDynamicEvaluation2.setInputPrompt("Enter Dynamic Evaluation");
    tfDynamicForFlat1.setInputPrompt("Enter Flat");
    tfDynamicForFlat2.setInputPrompt("Enter Flat");
    tfDynamicPlanApproval1.setInputPrompt("Enter Plan Approval");
    tfDynamicPlanApproval2.setInputPrompt("Enter Plan Approval");
    tfDynamicPlum1.setInputPrompt("Enter Plumping");
    tfDynamicPlum2.setInputPrompt("Enter Plumping");
    tfDynamicValuation1.setInputPrompt("Enter Valuation");
    tfDynamicValuation2.setInputPrompt("Enter Valuation");

    layoutPage.addComponent(mainPanel);
    layoutPage.addComponent(searchPanel);
    layoutPage.addComponent(tablePanel);

    // Added labels and titles to respective Location by Hohul

    HorizontalLayout hlNotificationLayout = new HorizontalLayout();
    hlNotificationLayout.addComponent(lblNotificationIcon);
    hlNotificationLayout.setComponentAlignment(lblNotificationIcon, Alignment.MIDDLE_LEFT);
    hlNotificationLayout.addComponent(lblSaveNotification);
    hlNotificationLayout.setComponentAlignment(lblSaveNotification, Alignment.MIDDLE_LEFT);
    hlHeaderLayout.addComponent(lblFormTittle);
    hlHeaderLayout.setComponentAlignment(lblFormTittle, Alignment.MIDDLE_LEFT);
    hlHeaderLayout.addComponent(hlBreadCrumbs);
    hlHeaderLayout.setComponentAlignment(hlBreadCrumbs, Alignment.MIDDLE_LEFT);
    hlHeaderLayout.addComponent(hlNotificationLayout);
    hlHeaderLayout.setComponentAlignment(hlNotificationLayout, Alignment.MIDDLE_LEFT);
    hlHeaderLayout.addComponent(layoutButton2);
    hlHeaderLayout.setComponentAlignment(layoutButton2, Alignment.MIDDLE_RIGHT);

    hlHeaderLayout.addComponent(layoutButton2);
    hlHeaderLayout.setComponentAlignment(layoutButton2, Alignment.BOTTOM_RIGHT);

    // load Component list values
    loadComponentListValues();

    //   setTableProperties();
    populateAndConfig(false);

}