// ************************************************************************************************************
// Author: Marcin Załęczny
// Release Date: 2010-11-10
// Licence: The GNU Lesser General Public License, version 3.0 (LGPLv3)
// ************************************************************************************************************
#ifndef __MZSTDXPSBLANKETS_BSBDW_GREEN_TRANSFER_FORM_H__
#define __MZSTDXPSBLANKETS_BSBDW_GREEN_TRANSFER_FORM_H__

#include "mzTransferForm.h"

#define     TRANSFER_TYPE_BSBDW_GREEN          3

class DECLSPEC_MZSTDXPSBLANKETS CBSBDWGreenTransferForm : public CTransferForm {
public:
    WINAPI CBSBDWGreenTransferForm() : CTransferForm() {
        this->_commonInit(L"", L"");
    };
    WINAPI CBSBDWGreenTransferForm(CString receiver, CString receiver2, CString receiverAccount, CString amount,
                                    CString senderAccount, CString sender, CString sender2,
                                    CString title, CString title2);
    WINAPI CBSBDWGreenTransferForm(CString receiver, CString receiver2, CString receiverAccount, CString receiverBank,
                                    CString amount,
                                    CString senderAccount, CString sender, CString sender2,
                                    CString title, CString title2, CString kasPlanSymbol, CString amountByWords);
    virtual WINAPI ~CBSBDWGreenTransferForm();

    virtual CXmlNode* WINAPI generateBlanket(CXpsPackage* xps, CXpsDocument* xpsDoc, CXpsPage* page, CString fontName, float pageWidth, float pageHeight, float paddingTop = 0);
    
protected:
    float _mainFormWidth;
    float _mainFormHeight;
    float _mainFormLeftTopX;
    float _mainFormLeftTopY;
    float _gapDash;

    VOID WINAPI _drawBlanket(CXpsPage* page, CXmlNode* mainCanvas, CString fontName, WCHAR* number, WCHAR* title, float topX, float topY);
    VOID WINAPI _drawTextContent(CXpsPage* page, CXmlNode* mainCanvas, CString fontName, float topX, float topY,
                            CString receiver, CString receiver2, CString receiverAccount, CString receiverBank,
                            CString sender, CString sender2,
                            CString title, CString title2,
                            CString amount, CString amountByWords);
    VOID WINAPI _commonInit(CString title, CString title2);
};

#endif
