home *** CD-ROM | disk | FTP | other *** search
/ Chip 2001 September / Chip_2001-09_cd1.bin / zkuste / delphi / kolekce / d6 / RX275D6.ZIP / Units / STRLEDIT.PAS < prev    next >
Pascal/Delphi Source File  |  2001-06-24  |  3KB  |  95 lines

  1. {*******************************************************}
  2. {                                                       }
  3. {       Delphi Visual Component Library                 }
  4. {                                                       }
  5. {       Copyright (c) 1995 Borland International        }
  6. {       Portions copyright (c) 1997 Master-Bank         }
  7. {                                                       }
  8. {*******************************************************}
  9.  
  10. unit StrLEdit;
  11.  
  12. {$I RX.INC}
  13.  
  14. interface
  15.  
  16. uses {$IFDEF WIN32} Windows, {$ELSE} WinTypes, WinProcs, {$ENDIF} Classes, 
  17.   Graphics, Forms, Controls, Buttons, Dialogs, RTLConsts, DesignIntf, DesignEditors, VCLEditors, StdCtrls, ExtCtrls;
  18.  
  19. type
  20.   TStrEditDlg = class(TForm)
  21.     Memo: TMemo;
  22.     LineCount: TLabel;
  23.     OpenDialog: TOpenDialog;
  24.     SaveDialog: TSaveDialog;
  25.     OKBtn: TButton;
  26.     CancelBtn: TButton;
  27.     HelpBtn: TButton;
  28.     LoadBtn: TButton;
  29.     SaveBtn: TButton;
  30.     procedure FileOpen(Sender: TObject);
  31.     procedure FileSave(Sender: TObject);
  32.     procedure UpdateStatus(Sender: TObject);
  33.     procedure FormCreate(Sender: TObject);
  34.     procedure MemoKeyDown(Sender: TObject; var Key: Word;
  35.       Shift: TShiftState);
  36.     procedure HelpBtnClick(Sender: TObject);
  37.   private
  38.     SingleLine: string[15];
  39.     MultipleLines: string[15];
  40.   end;
  41.  
  42. implementation
  43.  
  44. {$R *.DFM}
  45.  
  46. uses SysUtils, LibHelp;
  47.  
  48. { TStrListEditDlg }
  49.  
  50. procedure TStrEditDlg.FileOpen(Sender: TObject);
  51. begin
  52.   with OpenDialog do
  53.     if Execute then Memo.Lines.LoadFromFile(FileName);
  54. end;
  55.  
  56. procedure TStrEditDlg.FileSave(Sender: TObject);
  57. begin
  58.   SaveDialog.FileName := OpenDialog.FileName;
  59.   with SaveDialog do
  60.     if Execute then Memo.Lines.SaveToFile(FileName);
  61. end;
  62.  
  63. procedure TStrEditDlg.UpdateStatus(Sender: TObject);
  64. var
  65.   Count: Integer;
  66. begin
  67.   Count := Memo.Lines.Count;
  68.   if Count = 1 then
  69.     LineCount.Caption := Format('%d %s', [Count, SingleLine])
  70.   else
  71.     LineCount.Caption := Format('%d %s', [Count, MultipleLines]);
  72. end;
  73.  
  74. procedure TStrEditDlg.FormCreate(Sender: TObject);
  75. begin
  76.   HelpContext := hcDStringListEditor;
  77.   OpenDialog.HelpContext := hcDStringListLoad;
  78.   SaveDialog.HelpContext := hcDStringListSave;
  79.   SingleLine := 'Line';
  80.   MultipleLines := 'Lines';
  81. end;
  82.  
  83. procedure TStrEditDlg.MemoKeyDown(Sender: TObject; var Key: Word;
  84.   Shift: TShiftState);
  85. begin
  86.   if Key = VK_ESCAPE then CancelBtn.Click;
  87. end;
  88.  
  89. procedure TStrEditDlg.HelpBtnClick(Sender: TObject);
  90. begin
  91.   Application.HelpContext(HelpContext);
  92. end;
  93.  
  94. end.
  95.