unit Main;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls, StdCtrls, Menus;

type
  TForm2 = class(TForm)
    MainMenu1: TMainMenu;
    Akcja1: TMenuItem;
    WyczyMemo1: TMenuItem;
    Dodajjednlinitesktu1: TMenuItem;
    Wczytajplik1: TMenuItem;
    Zapamitajnadysku1: TMenuItem;
    Podajilemawierszy1: TMenuItem;
    N1: TMenuItem;
    Koniecpracy1: TMenuItem;
    Memo1: TMemo;
    StatusBar1: TStatusBar;
    UstawsinakocuMEMO1: TMenuItem;
    procedure UstawsinakocuMEMO1Click(Sender: TObject);
    procedure Podajilemawierszy1Click(Sender: TObject);
    procedure Dodajjednlinitesktu1Click(Sender: TObject);
    procedure Zapamitajnadysku1Click(Sender: TObject);
    procedure WyczyMemo1Click(Sender: TObject);
    procedure Wczytajplik1Click(Sender: TObject);
    procedure Koniecpracy1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form2: TForm2;

implementation
{$R *.dfm}
{------------------------------------------------------------------------------}
procedure TForm2.Dodajjednlinitesktu1Click(Sender: TObject);
var
	txt : String;

begin
	txt := 'To jest jedna linia tekstu';
   Memo1.Lines.Add(txt);
end;

procedure TForm2.Koniecpracy1Click(Sender: TObject);
begin
	if Application.MessageBox('Koniec pracy?', 'Uwaga', MB_YESNO or MB_ICONQUESTION) = mrYes then
   begin
		Close();
   end;
end;

procedure TForm2.Podajilemawierszy1Click(Sender: TObject);
var
	il : Integer;

begin
   il := Memo1.Lines.Count;
   ShowMessage('Aktualna liczba wierszy: ' + IntToStr(il));
end;

procedure TForm2.Wczytajplik1Click(Sender: TObject);
var
   fn : String;

begin
	fn := 'readme.txt';
   if FileExists(fn) then
   begin
	   Memo1.Clear();
   	Memo1.Lines.LoadFromFile(fn);
   end;
end;

procedure TForm2.WyczyMemo1Click(Sender: TObject);
begin
   Memo1.Clear();
end;

procedure TForm2.Zapamitajnadysku1Click(Sender: TObject);
var
   fn : String;

begin
	fn := 'readme2.txt';

   if FileExists(fn) then
   begin
      DeleteFile(fn);
   end;

	Memo1.Lines.SaveToFile(fn);

   if FileExists(fn) then
   begin
		ShowMessage('Dane zapamiętane w pliku prawidłowo');
   end;
end;

procedure TForm2.UstawsinakocuMEMO1Click(Sender: TObject);
begin
   (*
   // ustaw się na końcu Memo
   // metoda (1)
   ActiveControl  := Memo1;
   Memo1.SelStart := Length(Memo1.Text);
   Memo1.Perform(EM_SCROLLCARET, 0, 0);


   // lub:
   // metoda (2)
   PostMessage(Memo1.Handle, EM_LINESCROLL, 0, High(integer));
   ActiveControl := Memo1;

   *)

   // lub:
   // metoda (3)
   Memo1.SelStart  := Length(Memo1.Lines.Text);
   Memo1.SelLength := 0;
   ActiveControl   := Memo1;
end;


end.

