home *** CD-ROM | disk | FTP | other *** search
- #ifndef __VEDIT_H__
- #define __VEDIT_H__
-
- #include "VCtl.h"
- #include "VCtlHelp.h"
- #include "TckEdit.h"
-
- // Macro to Set a flag in a bitmap
- #define SetBitFlag(bitmap, nFlag, boolVal) \
- if(boolVal) bitmap |= nFlag; \
- else bitmap &= ~nFlag;
-
- // -------------------------------------------------------------------------
- // VEdit helper control.
- // -------------------------------------------------------------------------
- class AFX_EXT_CLASS VEditHelper : public VCtlHelper
- {
- protected:
- CTckEdit m_ctlEdit; // Helper CEdit class
-
- public:
- VEditHelper(CWnd *pParent);
- virtual ~VEditHelper() {};
-
- virtual int Id() { return VHELPER_TCKEDIT; } // Helper Id (index)
- static int HelperId() { return VHELPER_TCKEDIT; } // Helper Id (index)
- int GetControlId() { return VHELPER_ID + VHELPER_TCKEDIT; }// Control ID
- virtual void Hide();
- virtual void Show(CRect rect);
- CTckEdit* GetControl() { return &m_ctlEdit; } // The actual control
- CWnd* GetCWnd() { return &m_ctlEdit; } // The control
- };
-
-
- // -------------------------------------------------------------------------
- // VForm Edit Control
- // -------------------------------------------------------------------------
- class AFX_EXT_CLASS VEdit : public VCtl
- {
- protected:
- UINT m_nFlags; // VEdit Flags
- UINT m_nLimitText; // Maximum Chars
-
- BYTE m_nType;
- short m_nDigits;
- short m_nDecimals;
- CString m_mask;
- _TCHAR m_cPromptChar;
-
- public:
- VEdit();
- VEdit(VRow *pRow, int nId, LPCTSTR szText, int x, int y, int cx, int cy);
- VEdit(VEdit &x) { *this = x; } // Copy Constructor
- VEdit& operator =(VEdit &x); // Assignment Operator
-
- // --------- Get Member Functions --------------
- BOOL MultiLine() { return (m_nFlags & VEDIT_MULTILINE); }
- BOOL ReadOnly() { return (m_nFlags & VEDIT_READONLY); }
- BOOL Password() { return (m_nFlags & VEDIT_PASSWORD); }
- BOOL Numeric() { return (m_nFlags & VEDIT_NUMERIC); }
- BOOL LowerCase() { return (m_nFlags & VEDIT_LOWERCASE); }
- BOOL UpperCase() { return (m_nFlags & VEDIT_UPPERCASE); }
- BOOL SysBackWhenActive() { return (m_nFlags & VEDIT_SYSBACKWHENACTIVE); }
- UINT LimitText() { return m_nLimitText; }
-
- BYTE Type() { return m_nType; }
- short Digits() { return m_nDigits; }
- short Decimals() { return m_nDecimals; }
- BOOL DollarSign() { return (m_nFlags & VEDIT_DOLLARSIGN); }
- BOOL AddCommas() { return (m_nFlags & VEDIT_ADDCOMMAS); }
- BOOL AllowNegative() { return (m_nFlags & VEDIT_ALLOWNEGATIVE); }
- BOOL SaveMaskChars() { return (m_nFlags & VEDIT_SAVEMASKCHARS); }
- CString Mask() { return m_mask; }
- _TCHAR PromptChar() { return m_cPromptChar; }
-
-
- // --------- Set Member Functions --------------
- void Init(VRow *pRow, int nId, LPCTSTR szText, int x, int y, int cx, int cy);
- void MultiLine(BOOL bFlag) { SetBitFlag(m_nFlags, VEDIT_MULTILINE, bFlag); }
- void ReadOnly(BOOL bFlag) { SetBitFlag(m_nFlags, VEDIT_READONLY, bFlag); }
- void Password(BOOL bFlag) { SetBitFlag(m_nFlags, VEDIT_PASSWORD, bFlag); }
- void Numeric(BOOL bFlag) { SetBitFlag(m_nFlags, VEDIT_NUMERIC, bFlag); }
- void LowerCase(BOOL bFlag) { SetBitFlag(m_nFlags, VEDIT_LOWERCASE, bFlag); }
- void UpperCase(BOOL bFlag) { SetBitFlag(m_nFlags, VEDIT_UPPERCASE, bFlag); }
- void SysBackWhenActive(BOOL bFlag) { SetBitFlag(m_nFlags, VEDIT_SYSBACKWHENACTIVE, bFlag); }
-
- void LimitText(UINT nLimit) { m_nLimitText = nLimit; }
-
- void Type(BYTE nType) { m_nType = nType; }
- void Digits(short nDigits) { m_nDigits = nDigits; }
- void Decimals(short nDecimals) { m_nDecimals = nDecimals; }
- void DollarSign(BOOL bFlag) { SetBitFlag(m_nFlags, VEDIT_DOLLARSIGN, bFlag); }
- void AddCommas(BOOL bFlag) { SetBitFlag(m_nFlags, VEDIT_ADDCOMMAS, bFlag); }
- void AllowNegative(BOOL bFlag) { SetBitFlag(m_nFlags, VEDIT_ALLOWNEGATIVE, bFlag); }
- void SaveMaskChars(BOOL bFlag) { SetBitFlag(m_nFlags, VEDIT_SAVEMASKCHARS, bFlag); }
- void Mask(LPCTSTR szMask) { m_mask = szMask; }
- void PromptChar(_TCHAR cPrompt) { m_cPromptChar = cPrompt; }
-
- // --------- Implementation Functions --------------
- void DrawTextEx(CDC *pDC, CRect rect, BOOL bNoBkgrnd, BOOL bGridMode);
- virtual int IsA() { return VCTL_EDIT; }
- virtual void OnDraw(CDC *pDC, LPRECT pRect=0, BOOL bGridMode=0);
- void SetHelperFormatFlags(CTckEdit *pEdit);
-
- // --------- Virtual Helper Functions --------------
- virtual VCtlHelper* CreateHelper(CWnd *pParent);
- virtual int HelperId();
- virtual CRect HelperRect(LPRECT pRect=0, BOOL bGridMode=FALSE);
- virtual BOOL IsHelperDirty(VCtlHelper* pHelper);
- virtual BOOL OnBeginHelper(VCtlHelper* pHelper);
- virtual BOOL OnEndHelper(VCtlHelper* pHelper);
- };
-
- #endif __VEDIT_H__