Example usage for com.vaadin.ui HorizontalLayout setExpandRatio

List of usage examples for com.vaadin.ui HorizontalLayout setExpandRatio

Introduction

In this page you can find the example usage for com.vaadin.ui HorizontalLayout setExpandRatio.

Prototype

public void setExpandRatio(Component component, float ratio) 

Source Link

Document

This method is used to control how excess space in layout is distributed among components.

Usage

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

License:Apache License

/**
 * Loads data into the form when system enters 'loadData' state.
 *
 * @param event -  the state event./* ww  w . j a v  a2s  .  co m*/
 */
@SuppressWarnings("rawtypes")
@OnEnterState(StateConstants.PROFILE)
public void buildHeader(StateEvent event) {
    clearView(event);
    HorizontalLayout top = super.getView();
    final Label title = new Label("My Freebox Manager");
    title.setSizeUndefined();
    title.addStyleName("h1");
    top.addComponent(title);
    top.setComponentAlignment(title, Alignment.MIDDLE_LEFT);
    top.setExpandRatio(title, 1);

    Button notify = new Button();
    notify.setDescription("Notifications");
    notify.addStyleName("notifications");
    notify.addStyleName("unread");
    notify.addStyleName("icon-only");
    notify.addStyleName("icon-bell");
    top.addComponent(notify);
    top.setComponentAlignment(notify, Alignment.MIDDLE_LEFT);

    Button edit = new Button();
    edit.addStyleName("icon-edit");
    edit.addStyleName("icon-only");
    edit.setDescription("Edit Dashboard");
    top.addComponent(edit);
    top.setComponentAlignment(edit, Alignment.MIDDLE_LEFT);

    Button downloadB = new Button();
    downloadB.addStyleName("icon-edit");
    downloadB.addStyleName("icon-only");
    downloadB.setDescription("Tlcharger un fichier");
    top.addComponent(downloadB);
    top.setComponentAlignment(downloadB, Alignment.MIDDLE_LEFT);

}

From source file:com.github.djabry.platform.vaadin.ui.MainUI.java

License:Open Source License

@Override
protected void init(VaadinRequest request) {

    VerticalLayout rootLayout = new VerticalLayout();
    rootLayout.setSizeFull();/* ww w . j a v a  2s  .com*/

    setContent(rootLayout);

    BannerView banner = bannerPresenter.getView();
    rootLayout.addComponent(banner);

    HorizontalLayout mainLayout = new HorizontalLayout();
    mainLayout.setSizeFull();

    body = new VerticalLayout();
    body.setSizeFull();

    Navigator navigator = new Navigator(this, body);
    navigator.addProvider(vP);

    this.setNavigator(navigator);
    SideBarView sidebarView = sideBarPresenter.getView();

    mainLayout.addComponent(sidebarView);
    mainLayout.addComponent(body);

    rootLayout.addComponent(mainLayout);
    rootLayout.setExpandRatio(mainLayout, 10);

    sidebarView.setWidth(150, Unit.PIXELS);
    mainLayout.setExpandRatio(body, 10);
    //rootLayout.setSplitPosition(150, Unit.PIXELS);
    navigator.navigateTo(LoginView.VIEW_NAME);

    eventBus.publish(EventScope.SESSION, this, Action.START);
}

From source file:com.github.fbhd.AbstractSideBarUI.java

@Override
protected void init(VaadinRequest vaadinRequest) {
    getPage().setTitle("fbhd");
    final HorizontalLayout rootLayout = new HorizontalLayout();
    rootLayout.setSizeFull();//from  w  w w  . ja v  a2s  .c  o m
    setContent(rootLayout);

    final VerticalLayout viewContainer = new VerticalLayout();
    viewContainer.setSizeFull();

    final Navigator navigator = new Navigator(this, viewContainer);
    navigator.setErrorView(new ErrorView());
    navigator.addProvider(viewProvider);
    setNavigator(navigator);

    rootLayout.addComponent(getSideBar());
    rootLayout.addComponent(viewContainer);
    rootLayout.setExpandRatio(viewContainer, 1.0f);
}

From source file:com.github.moscaville.contactsdb.AbstractSideBarUI.java

License:Apache License

@Override
protected void init(VaadinRequest vaadinRequest) {
    getPage().setTitle("ContactsDb");
    final HorizontalLayout rootLayout = new HorizontalLayout();
    rootLayout.setSizeFull();/*from  ww w .j a  v a  2  s  .  c  om*/
    setContent(rootLayout);

    final VerticalLayout viewContainer = new VerticalLayout();
    viewContainer.setSizeFull();

    final Navigator navigator = new Navigator(this, viewContainer);
    navigator.setErrorView(new ErrorView());
    navigator.addProvider(viewProvider);
    setNavigator(navigator);

    rootLayout.addComponent(getSideBar());
    rootLayout.addComponent(viewContainer);
    rootLayout.setExpandRatio(viewContainer, 1.0f);
}

From source file:com.github.peholmst.springsecuritydemo.ui.MainView.java

License:Apache License

/**
 * TODO Document me!/* w  w w . j  av  a  2 s .c om*/
 * 
 * @return
 */
@SuppressWarnings("serial")
protected Component createHeader() {
    final HorizontalLayout header = new HorizontalLayout();
    header.setMargin(true);
    header.setWidth("100%");

    /*
     * Header label will contain the name and version of the application.
     */
    final Label headerLabel = new Label(
            getApplication().getMessage("app.title", getApplication().getVersion()));
    headerLabel.setStyleName("appHeaderText");
    header.addComponent(headerLabel);
    header.setStyleName("appHeader");
    header.setExpandRatio(headerLabel, 1.0f);
    header.setComponentAlignment(headerLabel, Alignment.MIDDLE_LEFT);

    /*
     * User links contains information about the current user and a button
     * for logging out.
     */
    final HorizontalLayout userLinks = new HorizontalLayout();
    userLinks.setStyleName("appHeaderUserLinks");
    userLinks.setSpacing(true);

    /*
     * The user label contains the name of the current user.
     */
    final Label userLabel = new Label(
            getApplication().getMessage("main.currentlyLoggedIn", getApplication().getUser().getName()),
            Label.CONTENT_XHTML);
    userLinks.addComponent(userLabel);
    userLinks.setComponentAlignment(userLabel, Alignment.MIDDLE_LEFT);
    userLabel.setSizeUndefined();

    /*
     * The logout button closes the application, effectively logging the
     * user out.
     */
    final Button logoutButton = new Button(getApplication().getMessage("main.logout.caption"),
            new Button.ClickListener() {

                @Override
                public void buttonClick(ClickEvent event) {
                    // TODO Add confirmation
                    getApplication().close();
                }
            });
    logoutButton.setDescription(getApplication().getMessage("main.logout.descr"));
    logoutButton.setStyleName("small");
    userLinks.addComponent(logoutButton);
    userLinks.setComponentAlignment(logoutButton, Alignment.MIDDLE_RIGHT);

    header.addComponent(userLinks);
    header.setComponentAlignment(userLinks, Alignment.MIDDLE_RIGHT);
    return header;
}

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

@SuppressWarnings("deprecation")
void buildView(VerticalLayout layoutPage, HorizontalLayout hlHeaderLayout) {
    // for component width
    setComponentStyle();//from  www  .j av a2s.  c om
    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);

}

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

@SuppressWarnings("deprecation")
void buildView(VerticalLayout layoutPage, HorizontalLayout hlHeaderLayout) {
    // for component width
    setComponentStyle();//  w ww .  j  a  v  a  2 s.  c  o  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 Number");
    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);
    tfAdopetdMarketRate.setRequired(true);
    layoutValuationLand.addComponent(btnDynamicValuation);
    layoutValuationLand.setComponentAlignment(btnDynamicValuation, Alignment.TOP_RIGHT);
    layoutValuationLand.addComponent(layoutValuationLand1);
    layoutValuationLand.setMargin(true);
    tfFairMarketRate.setValue("0.00");
    tfFairMarketRate.setImmediate(true);
    tfFairMarketRate.addBlurListener(new BlurListener() {
        private static final long serialVersionUID = 1L;

        @Override
        public void blur(BlurEvent event) {
            try {
                String numberOnly = tfFairMarketRate.getValue().replaceAll("[^0-9]", "");
                BigDecimal fairmarket = new BigDecimal(numberOnly);

                BigDecimal realizable = (fairmarket.multiply(new BigDecimal(95))).divide(new BigDecimal(100));
                realizable = realizable.subtract(realizable.remainder(new BigDecimal(1000)));
                tfRealziableRate.setValue(realizable.toString());

                BigDecimal distress = (fairmarket.multiply(new BigDecimal(85))).divide(new BigDecimal(100));
                distress = distress.subtract(distress.remainder(new BigDecimal(1000)));
                tfDistressRate.setValue(distress.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) {

                }
            }

        }
    });
    //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 Estimate Construction
    layoutEstimateConstruction.setSpacing(true);
    layoutEstimateConstruction.setMargin(true);
    layoutEstimateConstruction.addComponent(btnDynamicEstimate);
    layoutEstimateConstruction.setComponentAlignment(btnDynamicEstimate, Alignment.TOP_RIGHT);
    layoutEstimateConstruction1.setSpacing(true);
    layoutEstimateConstruction1.addComponent(tfEstimateGiven);
    layoutEstimateConstruction1.addComponent(tfAppReason);
    layoutEstimateConstruction1.addComponent(tfSalient);
    layoutEstimateConstruction1.addComponent(tfBreakup);
    layoutEstimateConstruction1.addComponent(tfDynamicEstimateConst1);
    layoutEstimateConstruction1.addComponent(tfDynamicEstimateConst2);
    layoutEstimateConstruction.addComponent(layoutEstimateConstruction1);
    tfDynamicEstimateConst1.setVisible(false);
    tfDynamicEstimateConst2.setVisible(false);
    // 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);

    // for Build Specification
    panelBuildSpecfication.addComponent(btnAddBuildSpec);
    panelBuildSpecfication.setComponentAlignment(btnAddBuildSpec, Alignment.BOTTOM_RIGHT);
    panelBuildSpecfication.addComponent(new ComponentIterBuildingSpecfication(null, true, true, true));
    panelBuildSpecfication.setWidth("100%");
    // 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
    layoutApplicantEstimate.setSpacing(true);
    layoutApplicantEstimate1.setSpacing(true);
    layoutApplicantEstimate1.setColumns(2);
    layoutApplicantEstimate2.setSpacing(true);
    layoutApplicantEstimate2.setColumns(2);
    layoutApplicantEstimate3.setSpacing(true);
    layoutApplicantEstimate3.setColumns(2);
    layoutApplicantEstimate4.setSpacing(true);
    layoutApplicantEstimate4.setColumns(2);
    layoutApplicantEstimate1.addComponent(lblAppEstimate);
    layoutApplicantEstimate1.addComponent(tfAppEstimate);
    layoutApplicantEstimate1.addComponent(lblDtlsAppEstimate);
    layoutApplicantEstimate1.addComponent(tfDtlsAppEstimate);
    layoutApplicantEstimate1.addComponent(tfDetails1);
    layoutApplicantEstimate1.addComponent(tfDetailVal1);
    layoutApplicantEstimate1.addComponent(tfDetails2);
    layoutApplicantEstimate1.addComponent(tfDetailVal2);
    layoutApplicantEstimate1.addComponent(tfDetails3);
    layoutApplicantEstimate1.addComponent(tfDetailVal3);
    layoutApplicantEstimate2.addComponent(tfDynamicAppEstimate1);
    layoutApplicantEstimate2.addComponent(tfDynamicAppEstimate2);
    layoutApplicantEstimate2.addComponent(tfDynamicAppEstimate3);
    layoutApplicantEstimate2.addComponent(tfDynamicAppEstimate4);
    layoutApplicantEstimate3.addComponent(tfDynamicAppEstimate5);
    layoutApplicantEstimate3.addComponent(tfDynamicAppEstimate6);
    layoutApplicantEstimate3.addComponent(tfDynamicAppEstimate7);
    layoutApplicantEstimate3.addComponent(tfDynamicAppEstimate8);
    layoutApplicantEstimate4.addComponent(lblTotal);
    layoutApplicantEstimate4.addComponent(tfTotalval);

    layoutApplicantEstimate.addComponent(btnDynamicAppEstimate);
    layoutApplicantEstimate.setComponentAlignment(btnDynamicAppEstimate, Alignment.TOP_RIGHT);
    layoutApplicantEstimate.addComponent(layoutApplicantEstimate1);
    layoutApplicantEstimate.addComponent(layoutApplicantEstimate2);
    layoutApplicantEstimate.addComponent(layoutApplicantEstimate3);
    layoutApplicantEstimate.addComponent(layoutApplicantEstimate4);
    layoutApplicantEstimate2.setVisible(true);
    layoutApplicantEstimate3.setVisible(true);
    layoutApplicantEstimate.setMargin(true);
    tfDynamicAppEstimate2.setValue("0.00");
    tfDetailVal2.setValue("0.00");
    tfDetailVal1.setValue("0.00");
    tfDynamicAppEstimate4.setValue("0.00");
    tfDynamicAppEstimate6.setValue("0.00");
    tfDynamicAppEstimate8.setValue("0.00");
    tfDetailVal3.setValue("0.00");
    tfTotalval.setImmediate(true);
    tfTotalval.addBlurListener(new BlurListener() {
        private static final long serialVersionUID = 1L;

        @Override
        public void blur(BlurEvent event) {
            // TODO Auto-generated method stub
            BigDecimal appEstimate = new BigDecimal(0.00);

            BigDecimal test = new BigDecimal("0.00");
            BigDecimal test1 = new BigDecimal("0.00");
            BigDecimal test2 = new BigDecimal("0.00");
            BigDecimal test3 = new BigDecimal("0.00");
            BigDecimal test4 = new BigDecimal("0.00");
            BigDecimal test5 = new BigDecimal("0.00");
            BigDecimal test6 = new BigDecimal("0.00");

            try {
                test = new BigDecimal(tfDetailVal1.getValue());

            } catch (Exception e) {
                test = new BigDecimal("0.00");
            }
            try {
                test1 = new BigDecimal(tfDetailVal2.getValue());
            } catch (Exception e) {
                test1 = new BigDecimal("0.00");
            }
            try {
                test2 = new BigDecimal(tfDetailVal3.getValue());
            } catch (Exception e) {
                test2 = new BigDecimal("0.00");
            }
            try {
                test3 = new BigDecimal(tfDynamicAppEstimate2.getValue());

            } catch (Exception e) {
                test3 = new BigDecimal("0.00");
            }
            try {
                test4 = new BigDecimal(tfDynamicAppEstimate4.getValue());
            } catch (Exception e) {
                test4 = new BigDecimal("0.00");
            }
            try {
                test5 = new BigDecimal(tfDynamicAppEstimate6.getValue());
            } catch (Exception e) {
                test4 = new BigDecimal("0.00");
            }
            try {
                test6 = new BigDecimal(tfDynamicAppEstimate8.getValue());
            } catch (Exception e) {
                test4 = new BigDecimal("0.00");
            }
            appEstimate = appEstimate.add(test).add(test1).add(test2).add(test3).add(test4).add(test5)
                    .add(test6);
            tfTotalval.setValue(appEstimate.toString());
            tfAppEstimate.setValue(appEstimate.toString());
        }
    });

    //for applicant reasonable
    layoutApplicantReasonable.setSpacing(true);
    layoutApplicantReasonable1.setSpacing(true);
    layoutApplicantReasonable2.setSpacing(true);
    layoutApplicantReasonable1.setColumns(2);
    layoutApplicantReasonable2.setColumns(2);
    layoutApplicantReasonable1.setVisible(false);
    layoutApplicantReasonable2.addComponent(lblAppReasonable);
    layoutApplicantReasonable2.addComponent(slAppReasonable);
    layoutApplicantReasonable1.addComponent(lblReasonEstimate);
    layoutApplicantReasonable1.addComponent(tfReasonEstimateVal);
    layoutApplicantReasonable1.addComponent(lblDtlsAppReasonable);
    layoutApplicantReasonable1.addComponent(tfDtlsAppReasonable);
    layoutApplicantReasonable1.addComponent(tfDetailsReason1);
    layoutApplicantReasonable1.addComponent(tfDetailReasonVal1);
    layoutApplicantReasonable1.addComponent(tfDetailsReason2);
    layoutApplicantReasonable1.addComponent(tfDetailReasonVal2);
    layoutApplicantReasonable1.addComponent(tfDetailsReason3);
    layoutApplicantReasonable1.addComponent(tfDetailReasonVal3);
    layoutApplicantReasonable1.addComponent(tfDynamicAppReason1);
    layoutApplicantReasonable1.addComponent(tfDynamicAppReason2);
    layoutApplicantReasonable1.addComponent(tfDynamicAppReason3);
    layoutApplicantReasonable1.addComponent(tfDynamicAppReason4);
    layoutApplicantReasonable1.addComponent(lblReasonTotal);
    layoutApplicantReasonable1.addComponent(tfReasonTotalval);
    tfDynamicAppReason1.setVisible(false);
    tfDynamicAppReason2.setVisible(false);
    tfDynamicAppReason3.setVisible(false);
    tfDynamicAppReason4.setVisible(false);

    layoutApplicantReasonable.addComponent(btnDynamicAppReason);
    layoutApplicantReasonable.setComponentAlignment(btnDynamicAppReason, Alignment.TOP_RIGHT);
    layoutApplicantReasonable.addComponent(layoutApplicantReasonable2);
    layoutApplicantReasonable.addComponent(layoutApplicantReasonable1);
    layoutApplicantReasonable.setMargin(true);
    tfDetailReasonVal1.setValue("0.00");
    tfDetailReasonVal2.setValue("0.00");
    tfDetailReasonVal3.setValue("0.00");
    tfReasonTotalval.setImmediate(true);
    tfReasonTotalval.addBlurListener(new BlurListener() {
        private static final long serialVersionUID = 1L;

        @Override
        public void blur(BlurEvent event) {
            // TODO Auto-generated method stubBigDecimal appEstimate =new BigDecimal(0.00);
            BigDecimal appReason = new BigDecimal(0.00);
            BigDecimal test = new BigDecimal("0.00");
            BigDecimal test1 = new BigDecimal("0.00");
            BigDecimal test2 = new BigDecimal("0.00");
            BigDecimal test3 = new BigDecimal("0.00");
            BigDecimal test4 = new BigDecimal("0.00");

            try {
                test = new BigDecimal(tfDetailReasonVal1.getValue());

            } catch (Exception e) {
                test = new BigDecimal("0.00");
            }
            try {
                test1 = new BigDecimal(tfDetailReasonVal2.getValue());
            } catch (Exception e) {
                test1 = new BigDecimal("0.00");
            }
            try {
                test2 = new BigDecimal(tfDetailReasonVal3.getValue());
            } catch (Exception e) {
                test2 = new BigDecimal("0.00");
            }
            try {
                test3 = new BigDecimal(tfDynamicAppReason2.getValue());

            } catch (Exception e) {
                test3 = new BigDecimal("0.00");
            }
            try {
                test4 = new BigDecimal(tfDynamicAppReason2.getValue());
            } catch (Exception e) {
                test4 = new BigDecimal("0.00");
            }
            appReason = appReason.add(test).add(test1).add(test2).add(test3).add(test4);
            tfReasonTotalval.setValue(appReason.toString());
            tfReasonEstimateVal.setValue(appReason.toString());
        }
    });

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

        public void valueChange(ValueChangeEvent event) {
            if (slAppReasonable.getValue() != null) {
                if (slAppReasonable.getValue().equals(Common.NO_DESC)) {
                    layoutApplicantReasonable1.setVisible(true);
                    btnDynamicAppReason.setVisible(true);
                } else {
                    layoutApplicantReasonable1.setVisible(false);
                    btnDynamicAppReason.setVisible(false);
                }
            }
        }
    });

    //Earth quake

    layoutEarthquake1.setSpacing(true);
    layoutEarthquake1.setColumns(4);
    layoutEarthquake1.addComponent(slEarthQuake);
    layoutEarthquake1.addComponent(tfDynamicEarthquake1);
    layoutEarthquake1.addComponent(tfDynamicEarthquake2);
    tfDynamicEarthquake1.setVisible(false);
    tfDynamicEarthquake2.setVisible(false);

    layoutEarthquake.addComponent(btnDynamicEarthQuake);
    layoutEarthquake.setComponentAlignment(btnDynamicEarthQuake, Alignment.TOP_RIGHT);
    layoutEarthquake.addComponent(layoutEarthquake1);
    layoutEarthquake.setMargin(true);
    // construction
    //layoutConstruction.setCaption("Construction");
    layoutConstruction1.setSpacing(true);
    layoutConstruction1.setColumns(4);
    layoutConstruction1.addComponent(tfStageofConst);
    layoutConstruction1.addComponent(tfSalablity);
    layoutConstruction1.addComponent(tfRentalValues);
    layoutConstruction1.addComponent(tfIncome);
    layoutConstruction1.addComponent(tfDynamicConstruction1);
    layoutConstruction1.addComponent(tfDynamicConstruction2);
    tfDynamicConstruction1.setVisible(false);
    tfDynamicConstruction2.setVisible(false);

    layoutConstruction.addComponent(btnDynamicConstruction);
    layoutConstruction.setComponentAlignment(btnDynamicConstruction, Alignment.TOP_RIGHT);
    layoutConstruction.addComponent(layoutConstruction1);
    layoutConstruction.setMargin(true);

    // cost of construction
    layoutCost.setColumns(2);
    layoutCostConstruction1.setColumns(2);
    layoutCostConstruction2.setColumns(2);
    layoutCostConstruction.setSpacing(true);
    layoutCost.setSpacing(true);
    layoutCostConstruction2.setSpacing(true);
    layoutCostConstruction1.setSpacing(true);
    layoutCostConstruction1.setSpacing(true);
    layoutCost.addComponent(lblCostConst);
    layoutCost.addComponent(tfCostConstruction);

    layoutCostConstruction1.addComponent(tfDynamicCostConst1);
    layoutCostConstruction1.addComponent(tfDynamicCostConst2);
    layoutCostConstruction1.addComponent(tfDynamicCostConst3);
    layoutCostConstruction1.addComponent(tfDynamicCostConst4);
    layoutCostConstruction1.addComponent(tfDynamicCostConst5);
    layoutCostConstruction1.addComponent(tfDynamicCostConst6);

    layoutCostConstruction2.addComponent(tfDynamicCostConst7);
    layoutCostConstruction2.addComponent(tfDynamicCostConst8);
    layoutCostConstruction2.addComponent(tfDynamicCostConst9);
    layoutCostConstruction2.addComponent(tfDynamicCostConst10);
    layoutCostConstruction1.setVisible(false);
    layoutCostConstruction2.setVisible(false);

    layoutCostConstruction.addComponent(btnDynamicCostConst);
    layoutCostConstruction.setComponentAlignment(btnDynamicCostConst, Alignment.TOP_RIGHT);
    layoutCostConstruction.addComponent(layoutCost);
    layoutCostConstruction.addComponent(layoutCostConstruction1);
    layoutCostConstruction.addComponent(layoutCostConstruction2);
    layoutCostConstruction.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(tfVillage1);
    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(layoutEstimateConstruction), "Estimate for Construction");
    layoutEstimateConstruction.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutPlanApproval), "Details of Plan Approval");
    panelBuildSpecfication.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(panelBuildSpecfication), "Specification");
    layoutPlintharea.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutPlintharea), "Plinth Area Details");
    layoutApplicantEstimate.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutApplicantEstimate), "Applicant Estimate");

    layoutApplicantReasonable.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutApplicantReasonable), "Applicant Reasonable");

    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");
    layoutEarthquake.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutEarthquake), "Earth Quake Details");

    layoutCostConstruction.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutCostConstruction), "Cost of Construction");
    layoutConstruction.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutConstruction), "Stage of Construction");
    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) {

                }
            }

        }
    });
    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");
    //      saveExcel.addStyleName("downloadbt");
    btnSubmit.setStyleName("submitbt");
    btnSave.setVisible(false);
    btnSubmit.setVisible(false);
    btnCancel.setVisible(false);

    layoutButton2.addComponent(btnSave);
    layoutButton2.addComponent(btnSubmit);
    //      layoutButton2.addComponent(saveExcel);
    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);

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

}

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

@SuppressWarnings("deprecation")
void buildView(VerticalLayout layoutPage, HorizontalLayout hlHeaderLayout) {
    // for component width
    hlHeaderLayout.removeAllComponents();
    setComponentStyle();/* w ww.j ava 2  s .c  om*/

    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);
    tfBankBranch.setRequired(true);
    dfDateofValuation.setRequired(true);
    tfEvaluationPurpose.setRequired(true);
    layoutEvaluationDetails1.setColumns(4);

    layoutEvaluationDetails1.addComponent(tfEvaluationNumber);
    layoutEvaluationDetails1.addComponent(tfBankBranch);
    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 customer details
    tfDynamicCustomer1.setVisible(false);
    tfDynamicCustomer2.setVisible(false);
    layoutCustomerDetail1.setColumns(4);
    //layoutCustomerDetail.setCaption("Customer Details");
    layoutCustomerDetail1.addComponent(tfCustomerName);
    layoutCustomerDetail1.addComponent(slPropertyDesc);
    layoutCustomerDetail1.addComponent(tfDynamicCustomer1);
    layoutCustomerDetail1.addComponent(tfDynamicCustomer2);
    layoutCustomerDetail1.setSpacing(true);
    layoutCustomerDetail1.setMargin(true);

    layoutCustomerDetail.addComponent(btnDynamicCustomer);
    layoutCustomerDetail.setComponentAlignment(btnDynamicCustomer, Alignment.TOP_RIGHT);
    layoutCustomerDetail.addComponent(layoutCustomerDetail1);

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

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

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

    panelNormalDocumentDetails.setWidth("100%");
    panelLegalDocumentDetails.setWidth("100%");
    panelAdjoinProperties.setStyleName("width:100%;display:block;");

    //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(tfVillageLoc);
    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);

    // construction
    //layoutConstruction.setCaption("Construction");
    //layoutConstruction.setCaption("Construction");
    layoutConstruction1.setSpacing(true);
    layoutConstruction1.setColumns(4);
    layoutConstruction1.addComponent(tfStageofConst);
    layoutConstruction1.addComponent(tfSalablity);
    layoutConstruction1.addComponent(tfRentalValues);
    layoutConstruction1.addComponent(tfIncome);
    layoutConstruction1.addComponent(tfDynamicConstruction1);
    layoutConstruction1.addComponent(tfDynamicConstruction2);
    tfDynamicConstruction1.setVisible(false);
    tfDynamicConstruction2.setVisible(false);

    layoutConstruction.addComponent(btnDynamicConstruction);
    layoutConstruction.setComponentAlignment(btnDynamicConstruction, Alignment.TOP_RIGHT);
    layoutConstruction.addComponent(layoutConstruction1);
    layoutConstruction.setMargin(true);

    //for violation
    //layoutViolation.setCaption("Violation Details");
    layoutViolation1.setSpacing(true);
    layoutViolation1.setColumns(4);
    layoutViolation1.addComponent(tfAnyViolation);
    layoutViolation1.addComponent(tfDynamicViolation1);
    layoutViolation1.addComponent(tfDynamicViolation2);
    tfDynamicViolation1.setVisible(false);
    tfDynamicViolation2.setVisible(false);

    layoutViolation.addComponent(btnDynamicViolation);
    layoutViolation.setComponentAlignment(btnDynamicViolation, Alignment.TOP_RIGHT);
    layoutViolation.addComponent(layoutViolation1);
    layoutViolation.setMargin(true);

    // 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(tfRealizabletRate);
    layoutValuationLand1.addComponent(tfDistressRate);
    layoutValuationLand1.addComponent(tfGuidelineRate);
    layoutValuationLand1.addComponent(tfDynamicValuation1);
    layoutValuationLand1.addComponent(tfDynamicValuation2);
    tfDynamicValuation1.setVisible(false);
    tfDynamicValuation2.setVisible(false);
    tfAdopetdMarketRate.setRequired(true);
    layoutValuationLand.addComponent(btnDynamicValuation);
    layoutValuationLand.setComponentAlignment(btnDynamicValuation, Alignment.TOP_RIGHT);
    layoutValuationLand.addComponent(layoutValuationLand1);
    layoutValuationLand.setMargin(true);
    //

    //   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) {

                }
            }

        }
    });
    tfLandMark.setImmediate(true);
    tfLandMark.addBlurListener(new BlurListener() {

        @Override
        public void blur(BlurEvent event) {
            // TODO Auto-generated method stub
            tfPropLandmark.setValue(tfLandMark.getValue());
        }
    });
    tfPropertyAddress.setImmediate(true);
    tfPropertyAddress.addBlurListener(new BlurListener() {

        @Override
        public void blur(BlurEvent event) {
            // TODO Auto-generated method stub
            tfPostalAddress.setValue(tfPropertyAddress.getValue());

        }
    });

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

    //property value
    layoutPropertyValue.setSpacing(true);
    layoutPropertyValue.setMargin(true);
    layoutPropertyValue1.setColumns(4);
    layoutPropertyValue1.setSpacing(true);
    layoutPropertyValue1.addComponent(tfRealizabletRate);
    layoutPropertyValue1.addComponent(tfDistressRate);
    layoutPropertyValue1.addComponent(tfGuidelineRate);
    layoutPropertyValue.addComponent(layoutPropertyValue1);

    // for details of plan approval
    layoutPlanApproval1.setColumns(4);
    formLand.addComponent(slLandandBuilding);
    formLand.addComponent(tfLandandBuilding);
    formBuilding.addComponent(slBuilding);
    formBuilding.addComponent(tfBuilding);

    layoutPlanApproval1.addComponent(formLand);
    layoutPlanApproval1.addComponent(formBuilding);
    layoutPlanApproval1.addComponent(tfPlanApprovedBy);
    layoutPlanApproval1.addComponent(dfLicenseFrom);
    layoutPlanApproval1.addComponent(slIsLicenceForced);
    layoutPlanApproval1.addComponent(slAllApprovalRecved);
    layoutPlanApproval1.addComponent(slConstAsperAppPlan);
    layoutPlanApproval1.addComponent(tfDynamicPlanApproval1);
    layoutPlanApproval1.addComponent(tfDynamicPlanApproval2);

    tfDynamicPlanApproval1.setVisible(false);
    tfDynamicPlanApproval2.setVisible(false);
    layoutPlanApproval1.setSpacing(true);
    layoutPlanApproval1.setMargin(true);
    layoutPlanApproval.addComponent(btnDynamicPlanApproval);
    layoutPlanApproval.setComponentAlignment(btnDynamicPlanApproval, Alignment.TOP_RIGHT);
    layoutPlanApproval.addComponent(layoutPlanApproval1);

    //details of the plan approval construction
    vlLand.addComponent(slLandBuildConst);
    vlLand.addComponent(tfLandBuildConst);
    vlBuilding.addComponent(slBuildConst);
    vlBuilding.addComponent(tfBuildConst);

    hlConstPlanApp1.addComponent(vlLand);
    hlConstPlanApp1.addComponent(vlBuilding);
    hlConstPlanApp1.addComponent(tfPlanApproveConst);
    hlConstPlanApp1.addComponent(slAllApprovalRecvedConst);
    hlConstPlanApp2.addComponent(slConstAsperAppPlanConst);
    hlConstPlanApp2.addComponent(tfDynamicConstPlanApp1);
    hlConstPlanApp2.addComponent(tfDynamicConstPlanApp2);

    tfDynamicConstPlanApp1.setVisible(false);
    tfDynamicConstPlanApp2.setVisible(false);
    hlConstPlanApp1.setSpacing(true);
    hlConstPlanApp1.setMargin(true);
    hlConstPlanApp2.setSpacing(true);
    hlConstPlanApp2.setMargin(true);
    vlConstPlanApp.addComponent(btnDynamicConstPlan);
    vlConstPlanApp.setComponentAlignment(btnDynamicConstPlan, Alignment.TOP_RIGHT);
    vlConstPlanApp.addComponent(hlConstPlanApp1);
    vlConstPlanApp.addComponent(hlConstPlanApp2);
    //valuation of Construction
    layoutConstValuation.setSpacing(true);
    layoutConstValuation1.setSpacing(true);
    layoutConstValuation1.addComponent(slTypeProperty);
    layoutConstValuation1.addComponent(slTypeStructure);
    layoutConstValuation1.addComponent(tfYearConstruction);
    layoutConstValuation1.addComponent(tfNoFloors);
    layoutConstValuation1.addComponent(tfConstQuality);
    layoutConstValuation1.addComponent(slAllapproval);
    layoutConstValuation1.addComponent(slIsConstruction);
    layoutConstValuation1.addComponent(tfReason);
    layoutConstValuation1.addComponent(tfDynamicConstval1);
    layoutConstValuation1.addComponent(tfDynamicConstval2);
    tfDynamicConstval1.setVisible(false);
    tfDynamicConstval2.setVisible(false);

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

    //layoutLandConstValuation.addComponent(PanelGenerator.createPanel(layoutValuationLand));
    //layoutLandConstValuation.addComponent(PanelGenerator.createPanel(layoutConstValuation));
    //layoutLandConstValuation1.addComponent(layoutLandConstValuation);
    //layoutLandConstValuation1.setMargin(true);
    // for plinth area
    layoutPlintharea.addComponent(btnAddPlinth);
    layoutPlintharea.setComponentAlignment(btnAddPlinth, Alignment.TOP_RIGHT);
    layoutPlintharea.setMargin(true);
    layoutPlintharea.addComponent(new ComponentIterPlinthArea("Ground Floor", "", ""));
    layoutPlintharea.addComponent(new ComponentIterPlinthArea("Portico and Stair", "", ""));
    // for plinth area
    vlPlinthAreaNew.addComponent(btnAddPlinthNew);
    vlPlinthAreaNew.setComponentAlignment(btnAddPlinthNew, Alignment.TOP_RIGHT);
    vlPlinthAreaNew.setMargin(true);
    vlPlinthAreaNew.addComponent(new ComponentIterPlinthArea("Ground Floor", "", ""));
    vlPlinthAreaNew.addComponent(new ComponentIterPlinthArea("Portico and Stair", "", ""));

    //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 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 Build Specification
    panelBuildSpecfication.addComponent(btnAddBuildSpec);
    panelBuildSpecfication.setComponentAlignment(btnAddBuildSpec, Alignment.BOTTOM_RIGHT);
    panelBuildSpecfication.addComponent(new ComponentIterBuildingSpecfication(null, true, true, true));
    panelBuildSpecfication.setWidth("100%");
    // for Build Specification
    panelBuildSpecficationNew.addComponent(btnAddBuildSpecNew);
    panelBuildSpecficationNew.setComponentAlignment(btnAddBuildSpecNew, Alignment.BOTTOM_RIGHT);
    panelBuildSpecficationNew.addComponent(new ComponentIterBuildingSpecfication(null, true, true, true));
    panelBuildSpecficationNew.setWidth("100%");

    // for applicant estimate
    layoutApplicantEstimate.setSpacing(true);
    layoutApplicantEstimate1.setSpacing(true);
    layoutApplicantEstimate1.setColumns(2);
    layoutApplicantEstimate2.setSpacing(true);
    layoutApplicantEstimate2.setColumns(2);
    layoutApplicantEstimate3.setSpacing(true);
    layoutApplicantEstimate3.setColumns(2);
    layoutApplicantEstimate4.setSpacing(true);
    layoutApplicantEstimate4.setColumns(2);
    layoutApplicantEstimate1.addComponent(lblAppEstimate);
    layoutApplicantEstimate1.addComponent(tfAppEstimate);
    layoutApplicantEstimate1.addComponent(lblDtlsAppEstimate);
    layoutApplicantEstimate1.addComponent(tfDtlsAppEstimate);
    layoutApplicantEstimate1.addComponent(tfDetails1);
    layoutApplicantEstimate1.addComponent(tfDetailVal1);
    layoutApplicantEstimate1.addComponent(tfDetails2);
    layoutApplicantEstimate1.addComponent(tfDetailVal2);
    layoutApplicantEstimate1.addComponent(tfDetails3);
    layoutApplicantEstimate1.addComponent(tfDetailVal3);
    layoutApplicantEstimate2.addComponent(tfDynamicAppEstimate1);
    layoutApplicantEstimate2.addComponent(tfDynamicAppEstimate2);
    layoutApplicantEstimate2.addComponent(tfDynamicAppEstimate3);
    layoutApplicantEstimate2.addComponent(tfDynamicAppEstimate4);
    layoutApplicantEstimate3.addComponent(tfDynamicAppEstimate5);
    layoutApplicantEstimate3.addComponent(tfDynamicAppEstimate6);
    layoutApplicantEstimate3.addComponent(tfDynamicAppEstimate7);
    layoutApplicantEstimate3.addComponent(tfDynamicAppEstimate8);
    layoutApplicantEstimate4.addComponent(lblTotal);
    layoutApplicantEstimate4.addComponent(tfTotalval);

    layoutApplicantEstimate.addComponent(btnDynamicAppEstimate);
    layoutApplicantEstimate.setComponentAlignment(btnDynamicAppEstimate, Alignment.TOP_RIGHT);
    layoutApplicantEstimate.addComponent(layoutApplicantEstimate1);
    layoutApplicantEstimate.addComponent(layoutApplicantEstimate2);
    layoutApplicantEstimate.addComponent(layoutApplicantEstimate3);
    layoutApplicantEstimate.addComponent(layoutApplicantEstimate4);
    layoutApplicantEstimate2.setVisible(true);
    layoutApplicantEstimate3.setVisible(true);
    layoutApplicantEstimate.setMargin(true);
    tfDynamicAppEstimate2.setValue("0.00");
    tfDetailVal2.setValue("0.00");
    tfDetailVal1.setValue("0.00");
    tfDynamicAppEstimate4.setValue("0.00");
    tfDynamicAppEstimate6.setValue("0.00");
    tfDynamicAppEstimate8.setValue("0.00");
    tfDetailVal3.setValue("0.00");
    tfTotalval.setImmediate(true);
    tfTotalval.addBlurListener(new BlurListener() {
        private static final long serialVersionUID = 1L;

        @Override
        public void blur(BlurEvent event) {
            // TODO Auto-generated method stub
            BigDecimal appEstimate = new BigDecimal(0.00);

            BigDecimal test = new BigDecimal("0.00");
            BigDecimal test1 = new BigDecimal("0.00");
            BigDecimal test2 = new BigDecimal("0.00");
            BigDecimal test3 = new BigDecimal("0.00");
            BigDecimal test4 = new BigDecimal("0.00");
            BigDecimal test5 = new BigDecimal("0.00");
            BigDecimal test6 = new BigDecimal("0.00");

            try {
                test = new BigDecimal(tfDetailVal1.getValue());

            } catch (Exception e) {
                test = new BigDecimal("0.00");
            }
            try {
                test1 = new BigDecimal(tfDetailVal2.getValue());
            } catch (Exception e) {
                test1 = new BigDecimal("0.00");
            }
            try {
                test2 = new BigDecimal(tfDetailVal3.getValue());
            } catch (Exception e) {
                test2 = new BigDecimal("0.00");
            }
            try {
                test3 = new BigDecimal(tfDynamicAppEstimate2.getValue());

            } catch (Exception e) {
                test3 = new BigDecimal("0.00");
            }
            try {
                test4 = new BigDecimal(tfDynamicAppEstimate4.getValue());
            } catch (Exception e) {
                test4 = new BigDecimal("0.00");
            }
            try {
                test5 = new BigDecimal(tfDynamicAppEstimate6.getValue());
            } catch (Exception e) {
                test4 = new BigDecimal("0.00");
            }
            try {
                test6 = new BigDecimal(tfDynamicAppEstimate8.getValue());
            } catch (Exception e) {
                test4 = new BigDecimal("0.00");
            }
            appEstimate = appEstimate.add(test).add(test1).add(test2).add(test3).add(test4).add(test5)
                    .add(test6);
            tfTotalval.setValue(appEstimate.toString());
            tfAppEstimate.setValue(appEstimate.toString());
        }
    });

    //for applicant reasonable
    layoutApplicantReasonable.setSpacing(true);
    layoutApplicantReasonable1.setSpacing(true);
    layoutApplicantReasonable2.setSpacing(true);
    layoutApplicantReasonable1.setColumns(2);
    layoutApplicantReasonable2.setColumns(2);
    layoutApplicantReasonable1.setVisible(false);
    layoutApplicantReasonable2.addComponent(lblAppReasonable);
    layoutApplicantReasonable2.addComponent(slAppReasonable);
    layoutApplicantReasonable1.addComponent(lblReasonEstimate);
    layoutApplicantReasonable1.addComponent(tfReasonEstimateVal);
    layoutApplicantReasonable1.addComponent(lblDtlsAppReasonable);
    layoutApplicantReasonable1.addComponent(tfDtlsAppReasonable);
    layoutApplicantReasonable1.addComponent(tfDetailsReason1);
    layoutApplicantReasonable1.addComponent(tfDetailReasonVal1);
    layoutApplicantReasonable1.addComponent(tfDetailsReason2);
    layoutApplicantReasonable1.addComponent(tfDetailReasonVal2);
    layoutApplicantReasonable1.addComponent(tfDetailsReason3);
    layoutApplicantReasonable1.addComponent(tfDetailReasonVal3);
    layoutApplicantReasonable1.addComponent(tfDynamicAppReason1);
    layoutApplicantReasonable1.addComponent(tfDynamicAppReason2);
    layoutApplicantReasonable1.addComponent(tfDynamicAppReason3);
    layoutApplicantReasonable1.addComponent(tfDynamicAppReason4);
    layoutApplicantReasonable1.addComponent(lblReasonTotal);
    layoutApplicantReasonable1.addComponent(tfReasonTotalval);
    tfDynamicAppReason1.setVisible(false);
    tfDynamicAppReason2.setVisible(false);
    tfDynamicAppReason3.setVisible(false);
    tfDynamicAppReason4.setVisible(false);

    layoutApplicantReasonable.addComponent(btnDynamicAppReason);
    layoutApplicantReasonable.setComponentAlignment(btnDynamicAppReason, Alignment.TOP_RIGHT);
    layoutApplicantReasonable.addComponent(layoutApplicantReasonable2);
    layoutApplicantReasonable.addComponent(layoutApplicantReasonable1);
    layoutApplicantReasonable.setMargin(true);

    tfDetailReasonVal1.setValue("0.00");
    tfDetailReasonVal2.setValue("0.00");
    tfDetailReasonVal3.setValue("0.00");

    tfReasonTotalval.setImmediate(true);
    tfReasonTotalval.addBlurListener(new BlurListener() {
        private static final long serialVersionUID = 1L;

        @Override
        public void blur(BlurEvent event) {
            // TODO Auto-generated method stubBigDecimal appEstimate =new BigDecimal(0.00);
            BigDecimal appReason = new BigDecimal(0.00);
            BigDecimal test = new BigDecimal("0.00");
            BigDecimal test1 = new BigDecimal("0.00");
            BigDecimal test2 = new BigDecimal("0.00");
            BigDecimal test3 = new BigDecimal("0.00");
            BigDecimal test4 = new BigDecimal("0.00");

            try {
                test = new BigDecimal(tfDetailReasonVal1.getValue());

            } catch (Exception e) {
                test = new BigDecimal("0.00");
            }
            try {
                test1 = new BigDecimal(tfDetailReasonVal2.getValue());
            } catch (Exception e) {
                test1 = new BigDecimal("0.00");
            }
            try {
                test2 = new BigDecimal(tfDetailReasonVal3.getValue());
            } catch (Exception e) {
                test2 = new BigDecimal("0.00");
            }
            try {
                test3 = new BigDecimal(tfDynamicAppReason2.getValue());

            } catch (Exception e) {
                test3 = new BigDecimal("0.00");
            }
            try {
                test4 = new BigDecimal(tfDynamicAppReason2.getValue());
            } catch (Exception e) {
                test4 = new BigDecimal("0.00");
            }
            appReason = appReason.add(test).add(test1).add(test2).add(test3).add(test4);
            tfReasonTotalval.setValue(appReason.toString());
            tfReasonEstimateVal.setValue(appReason.toString());
        }
    });

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

        public void valueChange(ValueChangeEvent event) {
            if (slAppReasonable.getValue() != null) {

                if (slAppReasonable.getValue().equals(Common.NO_DESC)) {

                    System.out.println("serial application" + slAppReasonable.getValue());
                    layoutApplicantReasonable1.setVisible(true);
                    btnDynamicAppReason.setVisible(true);

                } else {
                    layoutApplicantReasonable1.setVisible(false);
                    btnDynamicAppReason.setVisible(false);
                }

            }
        }
    });

    //Earth quake

    layoutEarthquake1.setSpacing(true);
    layoutEarthquake1.setColumns(4);
    layoutEarthquake1.addComponent(slEarthQuake);
    layoutEarthquake1.addComponent(tfDynamicEarthquake1);
    layoutEarthquake1.addComponent(tfDynamicEarthquake2);
    tfDynamicEarthquake1.setVisible(false);
    tfDynamicEarthquake2.setVisible(false);

    layoutEarthquake.addComponent(btnDynamicEarthQuake);
    layoutEarthquake.setComponentAlignment(btnDynamicEarthQuake, Alignment.TOP_RIGHT);
    layoutEarthquake.addComponent(layoutEarthquake1);
    layoutEarthquake.setMargin(true);
    // cost of construction
    layoutCost.setColumns(2);
    layoutCostConstruction1.setColumns(2);
    layoutCostConstruction2.setColumns(2);
    layoutCostConstruction.setSpacing(true);
    layoutCost.setSpacing(true);
    layoutCostConstruction2.setSpacing(true);
    layoutCostConstruction1.setSpacing(true);
    layoutCostConstruction1.setSpacing(true);
    layoutCost.addComponent(lblCostConst);
    layoutCost.addComponent(tfCostConstruction);

    layoutCostConstruction1.addComponent(tfDynamicCostConst1);
    layoutCostConstruction1.addComponent(tfDynamicCostConst2);
    layoutCostConstruction1.addComponent(tfDynamicCostConst3);
    layoutCostConstruction1.addComponent(tfDynamicCostConst4);
    layoutCostConstruction1.addComponent(tfDynamicCostConst5);
    layoutCostConstruction1.addComponent(tfDynamicCostConst6);

    layoutCostConstruction2.addComponent(tfDynamicCostConst7);
    layoutCostConstruction2.addComponent(tfDynamicCostConst8);
    layoutCostConstruction2.addComponent(tfDynamicCostConst9);
    layoutCostConstruction2.addComponent(tfDynamicCostConst10);
    layoutCostConstruction1.setVisible(false);
    layoutCostConstruction2.setVisible(false);

    layoutCostConstruction.addComponent(btnDynamicCostConst);
    layoutCostConstruction.setComponentAlignment(btnDynamicCostConst, Alignment.TOP_RIGHT);
    layoutCostConstruction.addComponent(layoutCost);
    layoutCostConstruction.addComponent(layoutCostConstruction1);
    layoutCostConstruction.addComponent(layoutCostConstruction2);
    layoutCostConstruction.setMargin(true);

    //valuation of Building
    formConstValuation1.addComponent(slTypeBuilding);
    formConstValuation1.addComponent(slBuildStructure);
    formConstValuation1.addComponent(tfYearConstructionBuild);
    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(tfBuildNoFloors);

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

    });

    formConstValuation1.addComponent(tfDynamicBuildval1);
    formConstValuation1.addComponent(tfDynamicBuildval2);
    layoutBuildtValuation.addComponent(btnDynamicBuildVal);
    layoutBuildtValuation.setComponentAlignment(btnDynamicBuildVal, Alignment.TOP_RIGHT);
    layoutBuildtValuation.addComponent(layoutBuildtValuation1);
    layoutBuildtValuation.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("Building", "", "", ""));
    // 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");
    layoutAssetDetails.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutAssetOwner), "Owner Details/Asset Details");

    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");
    //for Building
    vlConstPlanApp.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(vlConstPlanApp), "Details of Existing Plan Approval");
    layoutBuildtValuation.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutBuildtValuation), "Details of Building");
    layoutPlintharea.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutPlintharea), "Plinth Area Details");
    panelBuildSpecfication.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(panelBuildSpecfication),
            "Specification of the building(Existing)");
    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");
    //for construction
    layoutPlanApproval.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutPlanApproval), "Details of Plan Approval");
    layoutConstValuation.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutConstValuation), "Details of Construction");
    layoutApplicantEstimate.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutApplicantEstimate), "Applicant Estimate");

    layoutApplicantReasonable.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutApplicantReasonable), "Applicant Reasonable");

    vlPlinthAreaNew.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(vlPlinthAreaNew), "Plinth Area Details for Construction");
    panelBuildSpecficationNew.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(panelBuildSpecficationNew), "Specification of the building");
    layoutMainForm.addComponent(PanelGenerator.createPanel(accordion));
    layoutConstruction.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutConstruction), "Construction Details");
    layoutEarthquake.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutEarthquake), "Earth Quake Details");

    layoutCostConstruction.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutCostConstruction), "Cost of Construction");

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

                }
            }

        }
    });
    layoutMainForm.setMargin(true);
    layoutMainForm.setSpacing(true);
    // for main panel
    layoutButton2.setSpacing(true);
    btnSave.setStyleName("savebt");
    btnCancel.setStyleName("cancelbt");
    btnSubmit.setStyleName("submitbt");

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

    /*String basepath = VaadinService.getCurrent()
          .getBaseDirectory().getAbsolutePath();
    Resource res = new FileResource(new File(basepath +
              "/WEB-INF/view/channel.doc"));
    FileDownloader fd = new FileDownloader(res);
    fd.extend(saveExcel);*/
    // 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);

    mainPanel.addComponent(layoutMainForm);
    mainPanel.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(tfSearchBankbranch);

    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(tfSearchBankbranch);
    layoutSearch.addComponent(tfSearchCustomer);
    //layoutSearch.addComponent(btnSearch);
    layoutSearch.addComponent(btnReset);
    //layoutSearch.setComponentAlignment(btnSearch, Alignment.BOTTOM_LEFT);
    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);
        }
    });

    tfSearchBankbranch.setImmediate(true);
    tfSearchBankbranch.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 = tfSearchBankbranch.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);

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

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

@SuppressWarnings("deprecation")
void buildView(VerticalLayout layoutPage, HorizontalLayout hlHeaderLayout) {
    // for component width
    setComponentStyle();//from w w w .  j a v  a  2  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");

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

    // details of apartment building
    layoutApartmentBuilding1.setColumns(4);
    layoutApartmentBuilding1.addComponent(slNatureofApartment);
    layoutApartmentBuilding1.addComponent(tfNameofApartment);
    layoutApartmentBuilding1.addComponent(tfApartmant);
    layoutApartmentBuilding1.addComponent(tfFlatNumber);
    layoutApartmentBuilding1.addComponent(tfFloor);
    layoutApartmentBuilding1.addComponent(tfSFNumberLoc);
    layoutApartmentBuilding1.addComponent(tfNewSFNumberLoc);
    layoutApartmentBuilding1.addComponent(tfVillageLoc);
    layoutApartmentBuilding1.addComponent(tfTalukLoc);
    layoutApartmentBuilding1.addComponent(tfDisrictLoc);
    layoutApartmentBuilding1.addComponent(slDescriptionofLocality);
    layoutApartmentBuilding1.addComponent(tfNoofFloors);
    layoutApartmentBuilding1.addComponent(slTypeofStructure);
    layoutApartmentBuilding1.addComponent(tfNumberofFlats);
    layoutAddress.addComponent(tfPostalAddressLoc);
    layoutAddress.addComponent(chkSamePostelAddress);
    layoutApartmentBuilding1.addComponent(layoutAddress);
    layoutApartmentBuilding1.addComponent(tfDynamicApartment1);
    layoutApartmentBuilding1.addComponent(tfDynamicApartment2);
    layoutApartmentBuilding1.setSpacing(true);
    tfDynamicApartment1.setVisible(false);
    tfDynamicApartment2.setVisible(false);
    layoutApartmentBuilding1.setMargin(true);
    chkSamePostelAddress.setImmediate(true);
    chkSamePostelAddress.addListener(new Property.ValueChangeListener() {
        private static final long serialVersionUID = 1L;

        public void valueChange(ValueChangeEvent event) {

            if (chkSamePostelAddress.getValue().equals(true)) {
                tfPostalAddress.setValue(tfPropertyAddress.getValue());

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

    // flat under valuation
    layoutFlatValuation1.setColumns(4);
    layoutFlatValuation1.addComponent(tfFlatisSituated);
    layoutFlatValuation1.addComponent(tfDynamicFlatValuation1);
    layoutFlatValuation1.addComponent(tfDynamicFlatValuation2);
    tfDynamicFlatValuation1.setVisible(false);
    tfDynamicFlatValuation2.setVisible(false);
    layoutFlatValuation1.setSpacing(true);
    layoutFlatValuation1.setMargin(true);

    layoutFlatValuation.addComponent(btnDynamicFlatValuation);
    layoutFlatValuation.setComponentAlignment(btnDynamicFlatValuation, Alignment.TOP_RIGHT);
    layoutFlatValuation.addComponent(layoutFlatValuation1);

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

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

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

    // for
    layoutApartmentBuilding.addComponent(btnDynamicApartment);
    layoutApartmentBuilding.setComponentAlignment(btnDynamicApartment, Alignment.TOP_RIGHT);
    layoutApartmentBuilding.addComponent(layoutApartmentBuilding1);

    // valuation of land
    layoutValuationConst.setSpacing(true);
    layoutValuationConst1.setSpacing(true);
    layoutValuationConst1.addComponent(tfUndividedShare);
    layoutValuationConst1.addComponent(tfSuperBuiltupArea);
    layoutValuationConst1.addComponent(tfCostofApartment);
    layoutValuationConst1.addComponent(tfRateofApartment);
    layoutValuationConst1.addComponent(slIsRateReasonable);
    layoutValuationConst1.addComponent(tfStageOfConstruction);
    layoutValuationConst1.addComponent(tfCostOfConstAsAtSite);
    layoutValuationConst1.addComponent(tfCostOfConstAsPerAgree);

    layoutValuationConst1.addComponent(tfDynamicConstValuation1);
    layoutValuationConst1.addComponent(tfDynamicConstValuation2);
    tfDynamicConstValuation1.setVisible(false);
    tfDynamicConstValuation2.setVisible(false);

    layoutValuationConst.addComponent(btnDynamicConstValuation);
    layoutValuationConst.setComponentAlignment(btnDynamicConstValuation, Alignment.TOP_RIGHT);
    layoutValuationConst.addComponent(layoutValuationConst1);
    layoutValuationConst1.setMargin(true);

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

    // 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(PanelGenerator.createPanel(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");
    layoutApartmentBuilding.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutApartmentBuilding),
            "Details of Apartment Building-Under Construction");
    layoutFlatValuation.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutFlatValuation), "Flat Under Valuation");
    layoutPlanApproval.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutPlanApproval), "Details of Plan Approval");
    panelBuildSpecfication.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(panelBuildSpecfication), "Specification");
    layoutValuationConst.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutValuationConst), "Valuation of Land");
    layoutPlintharea.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutPlintharea), "Plinth Area Details");

    layoutForFlats.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutForFlats), "For Flats");

    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);
    //saveExcel.setVisible(false);
    layoutButton2.addComponent(btnSave);
    layoutButton2.addComponent(btnSubmit);
    //layoutButton2.addComponent(saveExcel);
    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);

    /*String basepath = VaadinService.getCurrent().getBaseDirectory()
    .getAbsolutePath();
    Resource res = new FileResource(new File(basepath
    + "/WEB-INF/view/channel.doc"));
    FileDownloader fd = new FileDownloader(res);
    fd.extend(saveExcel);*/

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

    tfSearchEvalNumber.setImmediate(true);
    tfSearchEvalNumber.addListener(new TextChangeListener() {
        private static final long serialVersionUID = 1L;
        SimpleStringFilter filter = null;

        @Override
        public void textChange(TextChangeEvent event) {
            // TODO Auto-generated method stub
            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);
        }

    });
    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);
        }
    });
    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) {
                e.printStackTrace();
                e.printStackTrace();
            }
        }

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

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

}

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

@SuppressWarnings("deprecation")
void buildView(VerticalLayout layoutPage, HorizontalLayout hlHeaderLayout) {
    // for component width
    hlHeaderLayout.removeAllComponents();
    setComponentStyle();// w  w  w  .  ja  v  a2s . c  o m

    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");
    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 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 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.addValueChangeListener(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 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);
    layoutCharcterSite1.setMargin(true);
    layoutCharcterSite.setMargin(true);
    layoutCharcterSite.setSpacing(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);

    // for details of plan approval
    layoutPlanApproval1.setColumns(2);
    FormLayout lay1 = new FormLayout();
    FormLayout lay2 = new FormLayout();
    lay1.addComponent(tfLandandBuilding);
    lay1.addComponent(tfPlanApprovedBy);
    lay2.addComponent(tfDynamicPlanApproval1);
    lay2.addComponent(tfDynamicPlanApproval2);
    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 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);
    tfLandMark.setImmediate(true);
    tfAdopetdMarketRate.setRequired(true);
    tfLandMark.addBlurListener(new BlurListener() {

        @Override
        public void blur(BlurEvent event) {
            // TODO Auto-generated method stub
            tfPropLandmark.setValue(tfLandMark.getValue());
        }
    });
    tfPropertyAddress.setImmediate(true);
    tfPropertyAddress.addBlurListener(new BlurListener() {

        @Override
        public void blur(BlurEvent event) {
            // TODO Auto-generated method stub
            tfPostalAddress.setValue(tfPropertyAddress.getValue());

        }
    });
    /*   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) {

                }
            }

        }
    });

    // 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 property image
    hlImage.setSpacing(true);
    btnImgDownload.setStyleName("downloadbt");
    btnImg1Download.setStyleName("downloadbt");

    //layoutDescProperty.setComponentAlignment(btnImg1Download, Alignment.MIDDLE_CENTER);

    hlImage.addComponent(hlImageLayout1);
    hlImage.addComponent(hlImageLayout2);
    hlImageLayout1.setMargin(true);
    hlImageLayout2.setMargin(true);
    hlImageLayout1.setSpacing(true);
    hlImageLayout2.setSpacing(true);
    vlImageLayout.addComponent(hlImage);

    // for Guideline area
    layoutGuideline.addComponent(btnAddGuideline);
    layoutGuideline.setComponentAlignment(btnAddGuideline, Alignment.TOP_RIGHT);
    layoutGuideline.setMargin(true);
    layoutGuideline.addComponent(new ComponentIterGuideline("Land", "", "", ""));
    // 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");
    layoutGuideline.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutGuideline), "Guideline Details");
    layoutPropertyValue.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(layoutPropertyValue), "Property Value Details");
    vlImageLayout.setStyleName("bluebar");
    accordion.addTab(PanelGenerator.createPanel(vlImageLayout), "Property Image 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) {

                }
            }

        }
    });
    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);
    //saveExcel.setVisible(false);
    layoutButton2.addComponent(btnSave);
    layoutButton2.addComponent(btnSubmit);
    //   layoutButton2.addComponent(saveExcel);
    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);

    tfSearchEvalNumber.setImmediate(true);
    tfSearchEvalNumber.addTextChangeListener(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) {
            }
        }

    });

    // 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(dfSearchEvalDate);
    layoutSearch.addComponent(tfSearchCustomer);
    //layoutSearch.addComponent(btnSearch);
    layoutSearch.addComponent(btnReset);
    //layoutSearch.setComponentAlignment(btnSearch, Alignment.BOTTOM_LEFT);
    layoutSearch.setComponentAlignment(btnReset, Alignment.BOTTOM_LEFT);
    btnSearch.addStyleName("default");*/
    btnReset.addStyleName("resetbt");
    //tfSearchCustomer.setImmediate(true);
    tfSearchCustomer.addTextChangeListener(new TextChangeListener() {
        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);
        }
    });

    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 = new HorizontalLayout();
    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);

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

}