home *** CD-ROM | disk | FTP | other *** search
/ Chip 2001 October / Chip_2001-10_cd1.bin / zkuste / delphi / kolekce / d6 / FRCLX.ZIP / SOURCE / FR_Newrp.pas < prev    next >
Pascal/Delphi Source File  |  2001-07-09  |  3KB  |  121 lines

  1.  
  2. {******************************************}
  3. {                                          }
  4. {           FastReport CLX v2.4            }
  5. {             Template viewer              }
  6. {                                          }
  7. { Copyright (c) 1998-2001 by Tzyganenko A. }
  8. {                                          }
  9. {******************************************}
  10.  
  11. unit FR_Newrp;
  12.  
  13. interface
  14.  
  15. {$I FR.inc}
  16.  
  17. uses
  18.   SysUtils, Classes, QGraphics, QControls, QForms, QDialogs,
  19.   QStdCtrls, QExtCtrls, FR_Const, QComCtrls, QImgList;
  20.  
  21. type
  22.   TfrTemplForm = class(TForm)
  23.     GroupBox1: TGroupBox;
  24.     Memo1: TMemo;
  25.     Image1: TImage;
  26.     Button1: TButton;
  27.     Button2: TButton;
  28.     LB1: TListView;
  29.     ImageList1: TImageList;
  30.     procedure FormActivate(Sender: TObject);
  31.     procedure ListBox1Click(Sender: TObject);
  32.     procedure FormDeactivate(Sender: TObject);
  33.     procedure FormCreate(Sender: TObject);
  34.     procedure LB1DblClick(Sender: TObject);
  35.   private
  36.     { Private declarations }
  37.     procedure Localize;
  38.   public
  39.     { Public declarations }
  40.     TemplName: String;
  41.   end;
  42.  
  43.  
  44. implementation
  45.  
  46. uses FR_Class, FR_Desgn, FR_Utils;
  47.  
  48. {$R *.xfm}
  49.  
  50. var
  51.   Path: String;
  52.  
  53.  
  54. procedure TfrTemplForm.FormActivate(Sender: TObject);
  55. var
  56.   SearchRec: TSearchRec;
  57.   r: Word;
  58.   Item: TListItem;
  59. begin
  60.   Path := frTemplateDir;
  61.   if frTemplateDir = '' then
  62.     Path := ExtractFilePath(ParamStr(0))
  63.   else if Path[Length(Path)] <> '\' then
  64.     Path := Path + '\';
  65.   LB1.Items.Clear;
  66.   R := FindFirst(Path + '*.frt', faAnyFile, SearchRec);
  67.   while R = 0 do
  68.   begin
  69.     if (SearchRec.Attr and faDirectory) = 0 then
  70.     begin
  71.       Item := LB1.Items.Add;
  72.       Item.ImageIndex := 0;
  73. //      Item.StateIndex := 0;
  74.       Item.Caption := ChangeFileExt(SearchRec.Name, '');
  75.     end;
  76.     R := FindNext(SearchRec);
  77.   end;
  78.   FindClose(SearchRec);
  79.   Memo1.Lines.Clear;
  80.   Image1.Picture.Bitmap.Assign(nil);
  81.   Button1.Enabled := False;
  82. end;
  83.  
  84. procedure TfrTemplForm.ListBox1Click(Sender: TObject);
  85. begin
  86.   Button1.Enabled := LB1.Selected <> nil;
  87.   if Button1.Enabled then
  88.   begin
  89.     CurReport.LoadTemplate(Path + LB1.Selected.Caption + '.frt',
  90.       Memo1.Lines, Image1.Picture.Bitmap, False);
  91.   end;
  92. end;
  93.  
  94. procedure TfrTemplForm.LB1DblClick(Sender: TObject);
  95. begin
  96.   if Button1.Enabled then ModalResult := mrOk;
  97. end;
  98.  
  99. procedure TfrTemplForm.FormDeactivate(Sender: TObject);
  100. begin
  101.   ImageList1.Clear;
  102.   if ModalResult = mrOk then
  103.     TemplName := Path + LB1.Selected.Caption + '.frt';
  104. end;
  105.  
  106. procedure TfrTemplForm.Localize;
  107. begin
  108.   Caption := S53318;
  109.   GroupBox1.Caption := S53319;
  110.   Button1.Caption := (SOk);
  111.   Button2.Caption := (SCancel);
  112. end;
  113.  
  114. procedure TfrTemplForm.FormCreate(Sender: TObject);
  115. begin
  116.   Localize;
  117. end;
  118.  
  119. end.
  120.  
  121.