BSOne.SFC/EM.Lib/ImageEn_SRC/Demos/FullApps/PhotoEn3/ChildWin.PAS

79 lines
1.9 KiB
Plaintext

unit ChildWin;
interface
uses
Windows, Classes, Graphics, Forms, Controls, ImageEn, Menus, ImageEnView, RulerBox, ExtCtrls, SysUtils,
ImageEnProc, ImageEnIO, ieview, StdCtrls, hyieutils, iexBitmaps, hyiedefs, iesettings, iexLayers,
iexRulers;
type
TMDIChild = class(TForm)
ImageEnView1: TImageEnView;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
procedure FormCreate(Sender: TObject);
procedure ImageEnView1ImageChange(Sender: TObject);
procedure ImageEnView1Progress(Sender: TObject; per: Integer);
procedure ImageEnView1ViewChange(Sender: TObject; Change: Integer);
private
{ Private declarations }
public
{ Public declarations }
Changed: boolean;
end;
implementation
uses
Main, Dialogs;
{$R *.DFM}
procedure TMDIChild.FormCreate(Sender: TObject);
begin
ImageEnView1.SelColor1 := clBlack;
ImageEnView1.SelColor2 := clWhite;
ImageEnView1.SetChessboardStyle(6, bsSolid);
ImageEnView1.SetSelectionGripStyle(clblack, clWhite, bsClear, 3, true);
ImageEnView1.Proc.UndoLimit := 20;
end;
procedure TMDIChild.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TMDIChild.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
CanClose := true;
if Changed then
case MessageDlg('Save Changes to ' + Caption + '?', mtConfirmation, [mbYes, mbNo, mbCancel], 0) of
mrYes:
MainForm.FileSaveItemClick(self);
mrCancel:
CanClose := false;
end;
end;
// Image changed
procedure TMDIChild.ImageEnView1ImageChange(Sender: TObject);
begin
Changed := true;
MainForm.UpdateChildStatus();
end;
procedure TMDIChild.ImageEnView1Progress(Sender: TObject; per: Integer);
begin
MainForm.ProgressBar1.Position := per;
end;
procedure TMDIChild.ImageEnView1ViewChange(Sender: TObject; Change: Integer);
begin
MainForm.UpdateChildStatus();
end;
end.