home *** CD-ROM | disk | FTP | other *** search
/ Visual Basic Controls / Visual Basic Controls.iso / vbcontrol / telastic / elastfrm.hpp < prev    next >
Encoding:
C/C++ Source or Header  |  1998-05-08  |  7.8 KB  |  226 lines

  1. //----------------------------------------------------------------------------
  2. // ElastFrm.hpp - bcbdcc32 generated hdr (DO NOT EDIT) rev: 0
  3. // From: ElastFrm.pas
  4. //----------------------------------------------------------------------------
  5. #ifndef ElastFrmHPP
  6. #define ElastFrmHPP
  7. //----------------------------------------------------------------------------
  8. #include <FileCtrl.hpp>
  9. #include <DBGrids.hpp>
  10. #include <Grids.hpp>
  11. #include <ComCtrls.hpp>
  12. #include <DBCtrls.hpp>
  13. #include <StdCtrls.hpp>
  14. #include <ExtCtrls.hpp>
  15. #include <Dialogs.hpp>
  16. #include <Forms.hpp>
  17. #include <Controls.hpp>
  18. #include <Graphics.hpp>
  19. #include <Classes.hpp>
  20. #include <Messages.hpp>
  21. #include <Windows.hpp>
  22. #include <SysUtils.hpp>
  23. #include <System.hpp>
  24. namespace Elastfrm
  25. {
  26. //-- type declarations -------------------------------------------------------
  27. typedef int TArrayInteger[16383];
  28.  
  29. typedef TArrayInteger *pTArrayInteger;
  30.  
  31. class __declspec(delphiclass) TFrame;
  32. class __declspec(pascalimplementation) TFrame : public System::TObject
  33. {
  34.     typedef System::TObject inherited;
  35.     
  36. public:
  37.     int left;
  38.     int width;
  39.     int top;
  40.     int height;
  41.     Graphics::TFont* font;
  42.     double fXResize;
  43.     double fYResize;
  44.     double fFResize;
  45.     bool bStatusBar;
  46.     bool bCustomGrid;
  47.     TArrayInteger *ColumnWidths;
  48.     int ColumnWidthsMax;
  49.     TArrayInteger *PanelWidths;
  50.     int PanelWidthsMax;
  51.     int InitFontSize;
  52.     int DefaultRowHeight;
  53.     __fastcall TFrame(void);
  54.     __fastcall virtual ~TFrame(void);
  55.     void __fastcall preInitialize(Controls::TControl* aControl);
  56.     void __fastcall initialize(double ScreenCorrectionH, double ScreenCorrectionV, double PixelsCorrection
  57.         , double PurePixelsCorrection, Controls::TControl* aControl);
  58.     void __fastcall resize(bool ElasticH, bool ElasticV, bool ElasticF, int FormClientWidth, int FormClientHeight
  59.         , int cW, int cH, int cF, double FontCorrection, double ScreenCorrectionH, double ScreenCorrectionV
  60.         , double PixelsCorrection, Controls::TControl* aControl);
  61. };
  62.  
  63. typedef TFrame* TFrameArray[16383];
  64.  
  65. typedef TFrameArray *pTFrameArray;
  66.  
  67. class __declspec(delphiclass) TMyControl;
  68. class __declspec(pascalimplementation) TMyControl : public Controls::TControl
  69. {
  70.     typedef Controls::TControl inherited;
  71.     
  72. public:
  73.     /* TControl.Create */ __fastcall virtual TMyControl(Classes::TComponent* AOwner) : Controls::TControl(
  74.         AOwner) { }
  75.     /* TControl.Destroy */ __fastcall virtual ~TMyControl(void) { }
  76.     
  77. };
  78.  
  79. class __declspec(delphiclass) TMyWinControl;
  80. class __declspec(pascalimplementation) TMyWinControl : public Controls::TWinControl
  81. {
  82.     typedef Controls::TWinControl inherited;
  83.     
  84. public:
  85.     /* TWinControl.Create */ __fastcall virtual TMyWinControl(Classes::TComponent* AOwner) : Controls::
  86.         TWinControl(AOwner) { }
  87.     /* TWinControl.CreateParented */ __fastcall TMyWinControl(HWND ParentWindow) : Controls::TWinControl(
  88.         ParentWindow) { }
  89.     /* TWinControl.Destroy */ __fastcall virtual ~TMyWinControl(void) { }
  90.     
  91. };
  92.  
  93. class __declspec(delphiclass) TMyCustomGrid;
  94. class __declspec(pascalimplementation) TMyCustomGrid : public Grids::TCustomGrid
  95. {
  96.     typedef Grids::TCustomGrid inherited;
  97.     
  98. public:
  99.     /* TCustomGrid.Create */ __fastcall virtual TMyCustomGrid(Classes::TComponent* AOwner) : Grids::TCustomGrid(
  100.         AOwner) { }
  101.     /* TCustomGrid.Destroy */ __fastcall virtual ~TMyCustomGrid(void) { }
  102.     
  103. public:
  104.     /* TWinControl.CreateParented */ __fastcall TMyCustomGrid(HWND ParentWindow) : Grids::TCustomGrid(ParentWindow
  105.         ) { }
  106.     
  107. };
  108.  
  109. class __declspec(delphiclass) TElasticForm;
  110. class __declspec(pascalimplementation) TElasticForm : public Classes::TComponent
  111. {
  112.     typedef Classes::TComponent inherited;
  113.     
  114. private:
  115.     void *OldWndProc;
  116.     void *NewWndProc;
  117.     bool FHorz;
  118.     bool FVert;
  119.     bool FElasticFont;
  120.     int cW;
  121.     int cH;
  122.     int cF;
  123.     int cW0;
  124.     int cH0;
  125.     int cF0;
  126.     int L0;
  127.     int T0;
  128.     bool bFirstTime;
  129.     TFrameArray *fFrames;
  130.     int fDesignScreenWidth;
  131.     int fDesignScreenHeight;
  132.     int fDesignPixelsPerInch;
  133.     Extctrls::TTimer* fDesignTimer;
  134.     int fDesignFormWidth;
  135.     int fDesignFormHeight;
  136.     int fDesignFormClientWidth;
  137.     int fDesignFormClientHeight;
  138.     int fDesignFormLeft;
  139.     int fDesignFormTop;
  140.     bool fManualPosition;
  141.     double fManualLeft;
  142.     double fManualTop;
  143.     int fScreenWidth;
  144.     int fScreenHeight;
  145.     int fPixelsPerInch;
  146.     double fScreenCorrectionH;
  147.     double fScreenCorrectionV;
  148.     double fPixelsCorrection;
  149.     Classes::TList* fList;
  150.     int FTotalControls;
  151.     int FInitTotalControls;
  152.     int fMaximizedWidth;
  153.     int fMaximizedHeight;
  154.     int fMaximizedPosX;
  155.     int fMaximizedPosY;
  156.     int fMinimumTrackWidth;
  157.     int fMinimumTrackHeight;
  158.     int fMaximumTrackWidth;
  159.     int fMaximumTrackHeight;
  160.     TPosition fOwnerFormPosition;
  161.     bool bBeforeShow;
  162.     bool bWasVisible[1001];
  163.     bool bMustShow;
  164.     bool bFirstFormResize;
  165.     bool bOnTheScreen;
  166.     TFormBorderStyle fBorderStyle;
  167.     bool bFormStartsMaximized;
  168.     void __fastcall FindAllControls(Controls::TControl* ofMyControl);
  169.     int __fastcall FormHandle(void);
  170.     void __fastcall NewWndMethod(Messages::TMessage &Msg);
  171.     bool __fastcall InList(Classes::TList* Container, Controls::TControl* aControl);
  172.     void __fastcall Timer(System::TObject* Sender);
  173.     int __fastcall DefinedMaxLeft(void);
  174.     int __fastcall DefinedMaxTop(void);
  175.     int __fastcall DefinedMaxWidth(void);
  176.     int __fastcall DefinedMaxHeight(void);
  177.     void __fastcall InitializeForm(void);
  178.     
  179. public:
  180.     Classes::TList* ExcludeList;
  181.     __fastcall virtual TElasticForm(Classes::TComponent* AOwner);
  182.     __fastcall virtual ~TElasticForm(void);
  183.     void __fastcall ReSizeForm(void);
  184.     void __fastcall UpdateSize(Controls::TControl* aControl);
  185.     void __fastcall AddToExcludeList(Controls::TControl* aControl);
  186.     __property bool ManualPosition = {read=fManualPosition, write=fManualPosition, nodefault};
  187.     __property double ManualLeft = {read=fManualLeft, write=fManualLeft};
  188.     __property double ManualTop = {read=fManualTop, write=fManualTop};
  189.     
  190. __published:
  191.     __property bool ElasticHorizontal = {read=FHorz, write=FHorz, default=1};
  192.     __property bool ElasticVertical = {read=FVert, write=FVert, default=1};
  193.     __property bool ElasticFont = {read=FElasticFont, write=FElasticFont, default=1};
  194.     __property int DesignScreenWidth = {read=fDesignScreenWidth, write=fDesignScreenWidth, nodefault};
  195.     __property int DesignScreenHeight = {read=fDesignScreenHeight, write=fDesignScreenHeight, nodefault
  196.         };
  197.     __property int DesignPixelsPerInch = {read=fDesignPixelsPerInch, write=fDesignPixelsPerInch, nodefault
  198.         };
  199.     __property int MaximizedPosX = {read=fMaximizedPosX, write=fMaximizedPosX, default=0};
  200.     __property int MaximizedPosY = {read=fMaximizedPosY, write=fMaximizedPosY, default=0};
  201.     __property int MinimumTrackWidth = {read=fMinimumTrackWidth, write=fMinimumTrackWidth, default=0};
  202.     __property int MinimumTrackHeight = {read=fMinimumTrackHeight, write=fMinimumTrackHeight, default=0
  203.         };
  204.     __property int MaximumTrackWidth = {read=fMaximumTrackWidth, write=fMaximumTrackWidth, default=0};
  205.     __property int MaximumTrackHeight = {read=fMaximumTrackHeight, write=fMaximumTrackHeight, default=0
  206.         };
  207.     __property int DesignFormWidth = {read=fDesignFormWidth, write=fDesignFormWidth, nodefault};
  208.     __property int DesignFormHeight = {read=fDesignFormHeight, write=fDesignFormHeight, nodefault};
  209.     __property int DesignFormClientWidth = {read=fDesignFormClientWidth, write=fDesignFormClientWidth, 
  210.         nodefault};
  211.     __property int DesignFormClientHeight = {read=fDesignFormClientHeight, write=fDesignFormClientHeight
  212.         , nodefault};
  213.     __property int DesignFormLeft = {read=fDesignFormLeft, write=fDesignFormLeft, nodefault};
  214.     __property int DesignFormTop = {read=fDesignFormTop, write=fDesignFormTop, nodefault};
  215. };
  216.  
  217. //-- var, const, procedure ---------------------------------------------------
  218. extern void __fastcall Register(void);
  219.  
  220. }    /* namespace Elastfrm */
  221. #if !defined(NO_IMPLICIT_NAMESPACE_USE)
  222. using namespace Elastfrm;
  223. #endif
  224. //-- end unit ----------------------------------------------------------------
  225. #endif    // ElastFrm
  226.