home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 1997 May / Pcwk0597.iso / borland / cb / setup / cbuilder / data.z / MASK.HPP < prev    next >
C/C++ Source or Header  |  1997-02-28  |  10KB  |  244 lines

  1. //----------------------------------------------------------------------------
  2. // Mask.hpp - bcbdcc32 generated hdr (DO NOT EDIT) rev: 0
  3. // From: Mask.pas
  4. //----------------------------------------------------------------------------
  5. #ifndef MaskHPP
  6. #define MaskHPP
  7. //----------------------------------------------------------------------------
  8. #include <Menus.hpp>
  9. #include <Graphics.hpp>
  10. #include <Forms.hpp>
  11. #include <Messages.hpp>
  12. #include <Controls.hpp>
  13. #include <StdCtrls.hpp>
  14. #include <Classes.hpp>
  15. #include <SysUtils.hpp>
  16. #include <Windows.hpp>
  17. #include <System.hpp>
  18. #pragma warn -par
  19. #pragma warn -hid 
  20. #pragma warn -inl
  21.  
  22. namespace Mask
  23. {
  24. //-- type declarations -------------------------------------------------------
  25. enum TMaskCharType { mcNone, mcLiteral, mcIntlLiteral, mcDirective, mcMask, mcMaskOpt, mcFieldSeparator, 
  26.     mcField };
  27.  
  28. enum Mask_1 { mdReverseDir, mdUpperCase, mdLowerCase, mdLiteralChar };
  29.  
  30. typedef Set<Mask_1, mdReverseDir, mdLiteralChar>  TMaskDirectives;
  31.  
  32. class __declspec(delphiclass) EDBEditError;
  33. class __declspec(pascalimplementation) EDBEditError : public Sysutils::Exception
  34. {
  35.     typedef Sysutils::Exception inherited;
  36.     
  37. public:
  38.     /* Exception.Create */ __fastcall EDBEditError(const System::AnsiString Msg) : Sysutils::Exception(
  39.         Msg) { }
  40.     /* Exception.CreateFmt */ __fastcall EDBEditError(const System::AnsiString Msg, const System::TVarRec 
  41.         * Args, const int Args_Size) : Sysutils::Exception(Msg, Args, Args_Size) { }
  42.     /* Exception.CreateRes */ __fastcall EDBEditError(int Ident) : Sysutils::Exception(Ident) { }
  43.     /* Exception.CreateResFmt */ __fastcall EDBEditError(int Ident, const System::TVarRec * Args, const 
  44.         int Args_Size) : Sysutils::Exception(Ident, Args, Args_Size) { }
  45.     /* Exception.CreateHelp */ __fastcall EDBEditError(const System::AnsiString Msg, int AHelpContext) : 
  46.         Sysutils::Exception(Msg, AHelpContext) { }
  47.     /* Exception.CreateFmtHelp */ __fastcall EDBEditError(const System::AnsiString Msg, const System::TVarRec 
  48.         * Args, const int Args_Size, int AHelpContext) : Sysutils::Exception(Msg, Args, Args_Size, AHelpContext
  49.         ) { }
  50.     /* Exception.CreateResHelp */ __fastcall EDBEditError(int Ident, int AHelpContext) : Sysutils::Exception(
  51.         Ident, AHelpContext) { }
  52.     /* Exception.CreateResFmtHelp */ __fastcall EDBEditError(int Ident, const System::TVarRec * Args, const 
  53.         int Args_Size, int AHelpContext) : Sysutils::Exception(Ident, Args, Args_Size, AHelpContext) { }
  54.     
  55. public:
  56.     /* TObject.Destroy */ __fastcall virtual ~EDBEditError(void) { }
  57.     
  58. };
  59.  
  60. enum Mask_3 { msMasked, msReEnter, msDBSetText };
  61.  
  62. typedef Set<Mask_3, msMasked, msDBSetText>  TMaskedState;
  63.  
  64. class __declspec(delphiclass) TCustomMaskEdit;
  65. class __declspec(pascalimplementation) TCustomMaskEdit : public Stdctrls::TCustomEdit
  66. {
  67.     typedef Stdctrls::TCustomEdit inherited;
  68.     
  69. private:
  70.     System::AnsiString FEditMask;
  71.     char FMaskBlank;
  72.     int FMaxChars;
  73.     bool FMaskSave;
  74.     TMaskedState FMaskState;
  75.     int FCaretPos;
  76.     int FBtnDownX;
  77.     System::AnsiString FOldValue;
  78.     bool __fastcall DoInputChar(char &NewChar, int MaskOffset);
  79.     bool __fastcall Validate(const System::AnsiString Value, int &Pos);
  80.     bool __fastcall InputChar(char &NewChar, int Offset);
  81.     bool __fastcall DeleteSelection( System::AnsiString &Value, int Offset, int Len);
  82.     int __fastcall InputString( System::AnsiString &Value, const System::AnsiString NewValue, int Offset
  83.         );
  84.     System::AnsiString __fastcall AddEditFormat(const System::AnsiString Value, bool Active);
  85.     System::AnsiString __fastcall RemoveEditFormat(const System::AnsiString Value);
  86.     int __fastcall FindLiteralChar(int MaskOffset, char InChar);
  87.     System::AnsiString __fastcall GetEditText(void);
  88.     bool __fastcall GetMasked(void);
  89.     HIDESBASE System::AnsiString __fastcall GetText(void);
  90.     int __fastcall GetMaxLength(void);
  91.     bool __fastcall CharKeys(char &CharCode);
  92.     void __fastcall SetEditText(const System::AnsiString Value);
  93.     void __fastcall SetEditMask(const System::AnsiString Value);
  94.     HIDESBASE void __fastcall SetMaxLength(int Value);
  95.     HIDESBASE void __fastcall SetText(const System::AnsiString Value);
  96.     void __fastcall DeleteKeys(Word CharCode);
  97.     void __fastcall HomeEndKeys(Word CharCode, Classes::TShiftState Shift);
  98.     void __fastcall CursorInc(int cursorPos, int Incr);
  99.     void __fastcall CursorDec(int cursorPos);
  100.     void __fastcall ArrowKeys(Word CharCode, Classes::TShiftState Shift);
  101.     HIDESBASE MESSAGE void __fastcall WMLButtonDown(Messages::TWMMouse &Message);
  102.     HIDESBASE MESSAGE void __fastcall WMLButtonUp(Messages::TWMMouse &Message);
  103.     HIDESBASE MESSAGE void __fastcall WMSetFocus(Messages::TWMSetFocus &Message);
  104.     MESSAGE void __fastcall WMCut(Messages::TMessage &Message);
  105.     MESSAGE void __fastcall WMPaste(Messages::TMessage &Message);
  106.     HIDESBASE MESSAGE void __fastcall CMEnter(Messages::TWMNoParams &Message);
  107.     HIDESBASE MESSAGE void __fastcall CMExit(Messages::TWMNoParams &Message);
  108.     HIDESBASE MESSAGE void __fastcall CMTextChanged(Messages::TMessage &Message);
  109.     MESSAGE void __fastcall CMWantSpecialKey(Messages::TWMKey &Message);
  110.     
  111. protected:
  112.     void __fastcall ReformatText(const System::AnsiString NewMask);
  113.     void __fastcall GetSel(int &SelStart, int &SelStop);
  114.     void __fastcall SetSel(int SelStart, int SelStop);
  115.     HIDESBASE void __fastcall SetCursor(int Pos);
  116.     virtual void __fastcall KeyDown(Word &Key, Classes::TShiftState Shift);
  117.     virtual void __fastcall KeyUp(Word &Key, Classes::TShiftState Shift);
  118.     virtual void __fastcall KeyPress(char &Key);
  119.     virtual bool __fastcall EditCanModify(void);
  120.     virtual void __fastcall Reset(void);
  121.     int __fastcall GetFirstEditChar(void);
  122.     int __fastcall GetLastEditChar(void);
  123.     int __fastcall GetNextEditChar(int Offset);
  124.     int __fastcall GetPriorEditChar(int Offset);
  125.     int __fastcall GetMaxChars(void);
  126.     void __fastcall ValidateError(void);
  127.     void __fastcall CheckCursor(void);
  128.     __property System::AnsiString EditMask = {read=FEditMask, write=SetEditMask, nodefault};
  129.     __property TMaskedState MaskState = {read=FMaskState, write=FMaskState, nodefault};
  130.     __property int MaxLength = {read=GetMaxLength, write=SetMaxLength, nodefault};
  131.     
  132. public:
  133.     __fastcall virtual TCustomMaskEdit(Classes::TComponent* AOwner);
  134.     void __fastcall ValidateEdit(void);
  135.     HIDESBASE void __fastcall Clear(void);
  136.     HIDESBASE int __fastcall GetTextLen(void);
  137.     __property bool IsMasked = {read=GetMasked, nodefault};
  138.     __property System::AnsiString EditText = {read=GetEditText, write=SetEditText, nodefault};
  139.     __property System::AnsiString Text = {read=GetText, write=SetText, nodefault};
  140. public:
  141.     /* TWinControl.CreateParented */ __fastcall TCustomMaskEdit(HWND ParentWindow) : Stdctrls::TCustomEdit(
  142.         ParentWindow) { }
  143.     /* TWinControl.Destroy */ __fastcall virtual ~TCustomMaskEdit(void) { }
  144.     
  145. };
  146.  
  147. class __declspec(delphiclass) TMaskEdit;
  148. class __declspec(pascalimplementation) TMaskEdit : public TCustomMaskEdit
  149. {
  150.     typedef TCustomMaskEdit inherited;
  151.     
  152. __published:
  153.     __property AutoSelect ;
  154.     __property AutoSize ;
  155.     __property BorderStyle ;
  156.     __property CharCase ;
  157.     __property Color ;
  158.     __property Ctl3D ;
  159.     __property DragCursor ;
  160.     __property DragMode ;
  161.     __property Enabled ;
  162.     __property EditMask ;
  163.     __property Font ;
  164.     __property ImeMode ;
  165.     __property ImeName ;
  166.     __property MaxLength ;
  167.     __property ParentColor ;
  168.     __property ParentCtl3D ;
  169.     __property ParentFont ;
  170.     __property ParentShowHint ;
  171.     __property PasswordChar ;
  172.     __property PopupMenu ;
  173.     __property ReadOnly ;
  174.     __property ShowHint ;
  175.     __property TabOrder ;
  176.     __property TabStop ;
  177.     __property Text ;
  178.     __property Visible ;
  179.     __property OnChange ;
  180.     __property OnClick ;
  181.     __property OnDblClick ;
  182.     __property OnDragDrop ;
  183.     __property OnDragOver ;
  184.     __property OnEndDrag ;
  185.     __property OnEnter ;
  186.     __property OnExit ;
  187.     __property OnKeyDown ;
  188.     __property OnKeyPress ;
  189.     __property OnKeyUp ;
  190.     __property OnMouseDown ;
  191.     __property OnMouseMove ;
  192.     __property OnMouseUp ;
  193.     __property OnStartDrag ;
  194. public:
  195.     /* TCustomMaskEdit.Create */ __fastcall virtual TMaskEdit(Classes::TComponent* AOwner) : Mask::TCustomMaskEdit(
  196.         AOwner) { }
  197.     
  198. public:
  199.     /* TWinControl.CreateParented */ __fastcall TMaskEdit(HWND ParentWindow) : Mask::TCustomMaskEdit(ParentWindow
  200.         ) { }
  201.     /* TWinControl.Destroy */ __fastcall virtual ~TMaskEdit(void) { }
  202.     
  203. };
  204.  
  205. //-- var, const, procedure ---------------------------------------------------
  206. extern char DefaultBlank;
  207. extern char MaskFieldSeparator;
  208. extern char MaskNoSave;
  209. #define mDirReverse (char)(33)
  210. #define mDirUpperCase (char)(62)
  211. #define mDirLowerCase (char)(60)
  212. #define mDirLiteral (char)(92)
  213. #define mMskAlpha (char)(76)
  214. #define mMskAlphaOpt (char)(108)
  215. #define mMskAlphaNum (char)(65)
  216. #define mMskAlphaNumOpt (char)(97)
  217. #define mMskAscii (char)(67)
  218. #define mMskAsciiOpt (char)(99)
  219. #define mMskNumeric (char)(48)
  220. #define mMskNumericOpt (char)(57)
  221. #define mMskNumSymOpt (char)(35)
  222. #define mMskTimeSeparator (char)(58)
  223. #define mMskDateSeparator (char)(47)
  224. extern bool __fastcall MaskGetMaskSave(const System::AnsiString EditMask);
  225. extern char __fastcall MaskGetMaskBlank(const System::AnsiString EditMask);
  226. extern int __fastcall MaskGetFldSeparator(const System::AnsiString EditMask);
  227. extern System::AnsiString __fastcall FormatMaskText(const System::AnsiString EditMask, const System::AnsiString 
  228.     Value);
  229. //-- template instantiations -------------------------------------------------
  230. template class TMaskedState ;
  231. template class TMaskDirectives ;
  232.  
  233. }    /* namespace Mask */
  234.  
  235. #pragma warn .par
  236. #pragma warn .hid 
  237. #pragma warn .inl
  238.  
  239. #if !defined(NO_IMPLICIT_NAMESPACE_USE)
  240. using namespace Mask;
  241. #endif
  242. //-- end unit ----------------------------------------------------------------
  243. #endif    // Mask
  244.