unit umain; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, Menus, ComCtrls, StdCtrls, ieview, imageenview, ExtCtrls, imageenproc, Buttons, hyieutils, iexBitmaps, hyiedefs, iesettings, iexLayers, iexRulers; type TMainForm = class(TForm) Panel1: TPanel; ImageEnView1: TImageEnView; GroupBox1: TGroupBox; Label2: TLabel; SelIntensity: TTrackBar; GroupBox2: TGroupBox; Button1: TButton; GroupBox3: TGroupBox; RectangleShape: TSpeedButton; EllipseShape: TSpeedButton; PolygonShape: TSpeedButton; MagicWandShape: TSpeedButton; Button2: TButton; Button3: TButton; Button4: TButton; Edit1: TEdit; UpDown1: TUpDown; Button5: TButton; procedure SelIntensityChange(Sender: TObject); procedure Button1Click(Sender: TObject); procedure FormCreate(Sender: TObject); procedure RectangleShapeClick(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button3Click(Sender: TObject); procedure Button4Click(Sender: TObject); procedure Button5Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var MainForm: TMainForm; implementation {$R *.DFM} {$R WindowsTheme.res} // change selection intensity procedure TMainForm.SelIntensityChange(Sender: TObject); begin Label2.Caption := IntToStr(SelIntensity.Position); ImageEnView1.SelectionIntensity := SelIntensity.Position; end; // effects button procedure TMainForm.Button1Click(Sender: TObject); begin ImageEnView1.Proc.PreviewsParams := [prppDefaultLockPreview]; ImageEnView1.Proc.DoPreviews([peAll]); end; procedure TMainForm.FormCreate(Sender: TObject); begin ImageEnView1.SelectionMaskDepth := 8; ImageEnView1.SelectionIntensity := 255; end; // selection shape buttons procedure TMainForm.RectangleShapeClick(Sender: TObject); begin if RectangleShape.Down then ImageEnView1.MouseInteract := [miSelect] else if EllipseShape.Down then ImageEnView1.MouseInteract := [miSelectCircle] else if PolygonShape.Down then ImageEnView1.MouseInteract := [miSelectPolygon] else if MagicWandShape.Down then ImageEnView1.MouseInteract := [miSelectMagicWand]; end; // negative button procedure TMainForm.Button2Click(Sender: TObject); begin ImageEnView1.Proc.Negative; end; // blur button procedure TMainForm.Button3Click(Sender: TObject); begin ImageEnView1.Proc.Blur(3); end; procedure TMainForm.Button4Click(Sender: TObject); begin ImageEnView1.MakeSelectionFeather(UpDown1.Position); end; // Load Image procedure TMainForm.Button5Click(Sender: TObject); begin with ImageEnView1.IO do LoadFromFile(ExecuteOpenDialog('', '', false, 1, '')); end; end.