home *** CD-ROM | disk | FTP | other *** search
/ CD Shareware Magazine 1996 December / CD_shareware_12-96.iso / WIN / Programa / GTSIZE32.ZIP / GTDBSIZR.PAS < prev    next >
Encoding:
Pascal/Delphi Source File  |  1996-08-12  |  2.6 KB  |  78 lines

  1. {*******************************************}
  2. { GTDBForm Component By GenoTechs, Inc.     }
  3. { Copyright(c) GenoTechs, Inc. 1996         }
  4. { All rights reserved                       }
  5. {*******************************************}
  6.  
  7. unit GTDBSizr;
  8.  
  9. interface
  10. uses
  11.   GTSize32, {wwDBGrid,} DBGrids, Classes;
  12.  
  13. type
  14.  
  15.   GTDBForm = class(GTForm)
  16.   private
  17.    Procedure IsParentFont(Obj: TComponent; NHPcnt:Double); Override;
  18.   end;
  19.  
  20. procedure Register;
  21.  
  22. implementation
  23.  
  24.   { If a 3rd party control's font property fails to resize when using GTSizer
  25.     it is probably because the name of that font property is not any of the
  26.     following:  (Font, TitleFont, TabFont).  Or it could be that the name of the
  27.     control itself  is not recognized by the GTSizer.  If this happens, follow
  28.     the example below to make the GTSizer recognize the control or font property.
  29.     The font property must have been declared as type TFont.
  30.     The TControl class must be on the inheritance hierrachy of the control}
  31.  
  32. procedure Register;
  33. begin
  34.   RegisterComponents('Data Controls', [GTDBForm]);
  35. end;
  36.  
  37. Procedure GTDBForm.IsParentFont(Obj: TComponent; NHPcnt:Double);
  38. begin
  39.   Inherited IsParentFont(Obj,NHPcnt);
  40.  
  41.   {This handles the TitleFont property of a TDBGrid}
  42.   If Obj is TDBGrid then
  43.   begin
  44.     If NHPcnt = 450.0 then
  45.        FControls.TFontHeight := TDBGrid(Obj).TitleFont.Height else
  46.     If (NHPcnt = -450.0) then
  47.       TDBGrid(Obj).TitleFont.Height := FControls.TFontHeight else
  48.     TDBGrid(Obj).TitleFont.Height :=
  49.                       Round(TDBGrid(Obj).TitleFont.Height * NHPcnt);
  50.   end
  51.   {To use a Woll2Woll grid, remove comments from the uses clause above.
  52.    Uncomment the following line of code, and compile this unit. Then
  53.    add the resulting GTDBSizr.DCU to the component library and compile}
  54.  
  55. {else  If Obj is TwwDBGrid then
  56.   begin
  57.     If NHPcnt = 450.0 then
  58.        FControls.TFontHeight := TwwDBGrid(Obj).TitleFont.Height else
  59.     If (NHPcnt = -450.0) then
  60.       TwwDBGrid(Obj).TitleFont.Height := FControls.TFontHeight else
  61.     TwwDBGrid(Obj).TitleFont.Height :=
  62.                       Round(TwwDBGrid(Obj).TitleFont.Height * NHPcnt);
  63.   end  {}
  64.  
  65. {else If Obj is YourControl's-class then
  66.  begin
  67.     If NHPcnt = 450.0 then
  68.        FControls.TFontHeight := YourControl's-class(Obj).YourControl's-font-property.Height else
  69.     If (NHPcnt = -450.0) then
  70.        YourControl's-class (Obj).YourControl's-font-property.Height := FControls.TFontHeight else
  71.     YourControl's-class (Obj).YourControl's font property.Height :=
  72.                 Round(YourControl's-class(Obj).YourControl's-font-property.Height * NHPcnt);
  73.  end {};
  74.  
  75. end;
  76.  
  77. end.
  78.