ADD: Patch to Viewer by Rustem

UPD: [Viewer] Replace captions on toolbar by icons
This commit is contained in:
Alexander Koblov 2010-05-02 17:43:58 +00:00
commit d2a34cba72
7 changed files with 1181 additions and 149 deletions

View file

@ -157,6 +157,7 @@ type
FOnPositionChanged: TNotifyEvent;
FUpdateScrollBarPos: Boolean; // used to block updating of scrollbar
FScrollBarPosition: Integer; // for updating vertical scrollbar based on Position
cTextWidth: integer; // max char in window
function GetPercent: Integer;
procedure SetPercent(const AValue: Integer);
@ -399,8 +400,8 @@ uses
{$ENDIF} ;
const
cTextWidth = 80; // wrap on 80 chars
cBinWidth = cTextWidth;
//cTextWidth = 80; // wrap on 80 chars
cBinWidth = 80;//cTextWidth;
cMaxTextWidth = 300; // maximum of chars on one line unwrapped text
cHexWidth = 16;
cTabSpaces = 8; // tab stop - allow to set in settings
@ -482,6 +483,7 @@ begin
Canvas.Brush.Color := Self.Color;
Canvas.Brush.Style := bsClear;
FTextHeight := Canvas.TextHeight('Wg') + 2;
cTextWidth := Self.Width div Canvas.TextWidth ('W')-2 ;
FLineList.Clear;

View file

@ -1,46 +1,50 @@
object frmModView: TfrmModView
Left = 320
Height = 100
Top = 186
Width = 190
Left = 476
Height = 185
Top = 103
Width = 488
AutoSize = True
Caption = 'New Size'
ClientHeight = 100
ClientWidth = 190
ClientHeight = 185
ClientWidth = 488
OnKeyPress = FormKeyPress
OnShow = FormShow
Position = poOwnerFormCenter
LCLVersion = '0.9.29'
object pnlSize: TPanel
AnchorSideLeft.Control = Owner
AnchorSideTop.Control = Owner
AnchorSideRight.Control = Owner
AnchorSideRight.Side = asrBottom
AnchorSideBottom.Control = pnlButtons
Left = 0
Height = 64
Height = 139
Top = 0
Width = 190
Anchors = [akTop, akLeft, akRight]
ClientHeight = 64
Anchors = [akTop, akLeft, akBottom]
ClientHeight = 139
ClientWidth = 190
TabOrder = 0
object lblHeight: TLabel
Left = 13
Left = 1
Height = 14
Top = 40
Top = 33
Width = 39
Caption = 'Height :'
ParentColor = False
end
object lblWidth: TLabel
Left = 16
Left = 4
Height = 14
Top = 15
Top = 8
Width = 36
Caption = 'Width :'
ParentColor = False
end
object teWidth: TEdit
Left = 56
Left = 44
Height = 21
Top = 8
Top = 1
Width = 82
OnKeyPress = teWidthKeyPress
OnKeyUp = teWidthKeyUp
@ -48,9 +52,9 @@ object frmModView: TfrmModView
Text = 'Width'
end
object teHeight: TEdit
Left = 56
Left = 44
Height = 21
Top = 33
Top = 26
Width = 82
OnKeyPress = teHeightKeyPress
OnKeyUp = teHeightKeyUp
@ -58,9 +62,9 @@ object frmModView: TfrmModView
Text = 'Height'
end
object btnProportion: TSpeedButton
Left = 144
Left = 132
Height = 32
Top = 16
Top = 9
Width = 26
Caption = 'Pr'
Color = clBtnFace
@ -68,43 +72,24 @@ object frmModView: TfrmModView
OnClick = btnProportionClick
end
end
object btnOk: TSpeedButton
Left = 96
Height = 31
Top = 64
Width = 80
Caption = 'Ok'
Color = clBtnFace
NumGlyphs = 0
OnClick = btnOkClick
end
object btnCancel: TSpeedButton
Left = 8
Height = 31
Top = 64
Width = 76
Caption = 'Cancel'
Color = clBtnFace
NumGlyphs = 0
OnClick = btnCancelClick
end
object pnlQuality: TPanel
AnchorSideLeft.Control = pnlSize
AnchorSideTop.Control = pnlSize
AnchorSideLeft.Control = Owner
AnchorSideTop.Control = Owner
AnchorSideRight.Control = pnlSize
AnchorSideRight.Side = asrBottom
AnchorSideBottom.Control = pnlButtons
Left = 0
Height = 56
Height = 139
Top = 0
Width = 190
Anchors = [akTop, akLeft, akRight]
ClientHeight = 56
Anchors = [akTop, akLeft, akBottom]
ClientHeight = 139
ClientWidth = 190
TabOrder = 1
object tbQuality: TTrackBar
Left = 0
Height = 22
Top = 24
Top = 17
Width = 140
Max = 100
Min = 1
@ -115,7 +100,7 @@ object frmModView: TfrmModView
object Label1: TLabel
Left = 32
Height = 14
Top = 8
Top = 1
Width = 129
Caption = 'Quality of compress to Jpg'
ParentColor = False
@ -123,7 +108,7 @@ object frmModView: TfrmModView
object teQuality: TEdit
Left = 144
Height = 21
Top = 25
Top = 18
Width = 43
OnKeyPress = teQualityKeyPress
OnKeyUp = teQualityKeyUp
@ -131,4 +116,373 @@ object frmModView: TfrmModView
Text = '80'
end
end
object pnlCopyMoveFile: TPanel
AnchorSideLeft.Control = Owner
AnchorSideTop.Control = Owner
AnchorSideRight.Control = Owner
AnchorSideRight.Side = asrBottom
AnchorSideBottom.Control = pnlButtons
Left = 0
Height = 139
Top = 0
Width = 488
Anchors = [akTop, akLeft, akRight, akBottom]
ClientHeight = 139
ClientWidth = 488
TabOrder = 2
object tePath1: TEdit
AnchorSideLeft.Control = rbPath1
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = pnlCopyMoveFile
AnchorSideRight.Control = btnPath1
Left = 32
Height = 21
Top = 5
Width = 424
Alignment = taRightJustify
Anchors = [akTop, akLeft, akRight]
BorderSpacing.Top = 5
BorderSpacing.Right = 6
TabOrder = 0
end
object tePath2: TEdit
AnchorSideLeft.Control = tePath1
AnchorSideTop.Control = tePath1
AnchorSideTop.Side = asrBottom
AnchorSideRight.Control = tePath1
AnchorSideRight.Side = asrBottom
AnchorSideBottom.Side = asrBottom
Left = 32
Height = 21
Top = 32
Width = 424
Alignment = taRightJustify
Anchors = [akTop, akLeft, akRight]
BorderSpacing.Top = 6
TabOrder = 1
end
object tePath3: TEdit
AnchorSideLeft.Control = tePath1
AnchorSideTop.Control = tePath2
AnchorSideTop.Side = asrBottom
AnchorSideRight.Control = tePath1
AnchorSideRight.Side = asrBottom
Left = 32
Height = 21
Top = 59
Width = 424
Alignment = taRightJustify
Anchors = [akTop, akLeft, akRight]
BorderSpacing.Top = 6
TabOrder = 2
end
object btnPath1: TSpeedButton
AnchorSideTop.Control = tePath1
AnchorSideRight.Control = pnlCopyMoveFile
AnchorSideRight.Side = asrBottom
AnchorSideBottom.Control = tePath1
AnchorSideBottom.Side = asrBottom
Left = 462
Height = 21
Top = 5
Width = 21
Anchors = [akTop, akRight, akBottom]
BorderSpacing.Right = 5
Caption = '...'
Color = clBtnFace
NumGlyphs = 0
OnClick = btnPathClick
end
object tePath4: TEdit
AnchorSideLeft.Control = tePath1
AnchorSideTop.Control = tePath3
AnchorSideTop.Side = asrBottom
AnchorSideRight.Control = tePath1
AnchorSideRight.Side = asrBottom
Left = 32
Height = 21
Top = 86
Width = 424
Alignment = taRightJustify
Anchors = [akTop, akLeft, akRight]
BorderSpacing.Top = 6
TabOrder = 3
end
object tePath5: TEdit
AnchorSideLeft.Control = tePath1
AnchorSideTop.Control = tePath4
AnchorSideTop.Side = asrBottom
AnchorSideRight.Control = tePath1
AnchorSideRight.Side = asrBottom
AnchorSideBottom.Side = asrBottom
Left = 32
Height = 21
Top = 113
Width = 424
Alignment = taRightJustify
Anchors = [akTop, akLeft, akRight]
BorderSpacing.Top = 6
BorderSpacing.Bottom = 10
TabOrder = 4
end
object rbPath1: TRadioButton
AnchorSideTop.Control = tePath1
AnchorSideBottom.Control = tePath1
AnchorSideBottom.Side = asrBottom
Left = 14
Height = 21
Top = 5
Width = 18
Anchors = [akTop, akLeft, akBottom]
Checked = True
OnKeyPress = rbPath1KeyPress
ParentBidiMode = False
State = cbChecked
TabOrder = 5
end
object rbPath2: TRadioButton
AnchorSideTop.Control = tePath2
AnchorSideBottom.Control = tePath2
AnchorSideBottom.Side = asrBottom
Left = 14
Height = 21
Top = 32
Width = 18
Anchors = [akTop, akLeft, akBottom]
TabOrder = 6
TabStop = False
end
object rbPath3: TRadioButton
AnchorSideTop.Control = tePath3
AnchorSideBottom.Control = tePath3
AnchorSideBottom.Side = asrBottom
Left = 14
Height = 21
Top = 59
Width = 18
Anchors = [akTop, akLeft, akBottom]
TabOrder = 7
TabStop = False
end
object rbPath4: TRadioButton
AnchorSideTop.Control = tePath4
AnchorSideBottom.Control = tePath4
AnchorSideBottom.Side = asrBottom
Left = 14
Height = 21
Top = 86
Width = 18
Anchors = [akTop, akLeft, akBottom]
TabOrder = 8
TabStop = False
end
object rbPath5: TRadioButton
AnchorSideTop.Control = tePath5
AnchorSideBottom.Control = tePath5
AnchorSideBottom.Side = asrBottom
Left = 14
Height = 21
Top = 113
Width = 18
Anchors = [akTop, akLeft, akBottom]
TabOrder = 9
TabStop = False
end
object btnPath2: TSpeedButton
AnchorSideLeft.Control = btnPath1
AnchorSideTop.Control = tePath2
AnchorSideRight.Control = btnPath1
AnchorSideRight.Side = asrBottom
AnchorSideBottom.Control = tePath2
AnchorSideBottom.Side = asrBottom
Left = 462
Height = 21
Top = 32
Width = 21
Anchors = [akTop, akLeft, akRight, akBottom]
Caption = '...'
Color = clBtnFace
NumGlyphs = 0
OnClick = btnPathClick
end
object btnPath3: TSpeedButton
AnchorSideLeft.Control = btnPath1
AnchorSideTop.Control = tePath3
AnchorSideRight.Control = btnPath1
AnchorSideRight.Side = asrBottom
AnchorSideBottom.Control = tePath3
AnchorSideBottom.Side = asrBottom
Left = 462
Height = 21
Top = 59
Width = 21
Anchors = [akTop, akLeft, akRight, akBottom]
Caption = '...'
Color = clBtnFace
NumGlyphs = 0
OnClick = btnPathClick
end
object btnPath4: TSpeedButton
AnchorSideLeft.Control = btnPath1
AnchorSideTop.Control = tePath4
AnchorSideRight.Control = btnPath1
AnchorSideRight.Side = asrBottom
AnchorSideBottom.Control = tePath4
AnchorSideBottom.Side = asrBottom
Left = 462
Height = 21
Top = 86
Width = 21
Anchors = [akTop, akLeft, akRight, akBottom]
Caption = '...'
Color = clBtnFace
NumGlyphs = 0
OnClick = btnPathClick
end
object btnPath5: TSpeedButton
AnchorSideLeft.Control = btnPath1
AnchorSideTop.Control = tePath5
AnchorSideRight.Control = btnPath1
AnchorSideRight.Side = asrBottom
AnchorSideBottom.Control = tePath5
AnchorSideBottom.Side = asrBottom
Left = 462
Height = 21
Top = 113
Width = 21
Anchors = [akTop, akLeft, akRight, akBottom]
Caption = '...'
Color = clBtnFace
NumGlyphs = 0
OnClick = btnPathClick
end
object lblPath1: TLabel
AnchorSideTop.Control = rbPath1
AnchorSideBottom.Control = rbPath1
AnchorSideBottom.Side = asrBottom
Left = 1
Height = 18
Top = 6
Width = 7
Anchors = [akTop, akLeft, akBottom]
BorderSpacing.Left = 5
BorderSpacing.Top = 1
BorderSpacing.Bottom = 2
Caption = '1'
ParentColor = False
end
object lblPath2: TLabel
AnchorSideTop.Control = rbPath2
AnchorSideBottom.Control = rbPath2
AnchorSideBottom.Side = asrBottom
Left = 1
Height = 18
Top = 33
Width = 7
Anchors = [akTop, akLeft, akBottom]
BorderSpacing.Top = 1
BorderSpacing.Bottom = 2
Caption = '2'
ParentColor = False
end
object lblPath3: TLabel
AnchorSideTop.Control = rbPath3
AnchorSideBottom.Control = rbPath3
AnchorSideBottom.Side = asrBottom
Left = 1
Height = 18
Top = 60
Width = 7
Anchors = [akTop, akLeft, akBottom]
BorderSpacing.Top = 1
BorderSpacing.Bottom = 2
Caption = '3'
ParentColor = False
end
object lblPath4: TLabel
AnchorSideTop.Control = rbPath4
AnchorSideBottom.Control = rbPath4
AnchorSideBottom.Side = asrBottom
Left = 1
Height = 18
Top = 87
Width = 7
Anchors = [akTop, akLeft, akBottom]
BorderSpacing.Top = 1
BorderSpacing.Bottom = 2
Caption = '4'
ParentColor = False
end
object lblPath5: TLabel
AnchorSideTop.Control = rbPath5
AnchorSideBottom.Control = rbPath5
AnchorSideBottom.Side = asrBottom
Left = 1
Height = 18
Top = 114
Width = 7
Alignment = taCenter
Anchors = [akTop, akLeft, akBottom]
BorderSpacing.Top = 1
BorderSpacing.Bottom = 2
Caption = '5'
ParentColor = False
end
end
object pnlButtons: TPanel
AnchorSideLeft.Control = Owner
AnchorSideRight.Control = Owner
AnchorSideRight.Side = asrBottom
AnchorSideBottom.Control = Owner
AnchorSideBottom.Side = asrBottom
Left = 0
Height = 46
Top = 139
Width = 488
Anchors = [akLeft, akRight, akBottom]
AutoSize = True
ClientHeight = 46
ClientWidth = 488
TabOrder = 3
object btnCancel: TSpeedButton
AnchorSideTop.Control = btnOk
AnchorSideRight.Control = btnOk
AnchorSideBottom.Control = btnOk
AnchorSideBottom.Side = asrBottom
Left = 365
Height = 30
Top = 8
Width = 64
Anchors = [akTop, akRight, akBottom]
BorderSpacing.Right = 3
Caption = 'Cancel'
Color = clBtnFace
NumGlyphs = 0
OnClick = btnCancelClick
end
object btnOk: TSpeedButton
AnchorSideTop.Control = pnlButtons
AnchorSideRight.Control = pnlButtons
AnchorSideRight.Side = asrBottom
AnchorSideBottom.Control = pnlButtons
AnchorSideBottom.Side = asrBottom
Left = 432
Height = 30
Top = 8
Width = 50
Anchors = [akTop, akRight, akBottom]
BorderSpacing.Left = 3
BorderSpacing.Top = 8
BorderSpacing.Right = 6
BorderSpacing.Bottom = 8
Caption = 'Ok'
Color = clBtnFace
NumGlyphs = 0
OnClick = btnOkClick
end
end
object sddCopyMoveFile: TSelectDirectoryDialog
left = 48
top = 48
end
end

View file

@ -4,7 +4,17 @@ TFRMMODVIEW.LBLWIDTH.CAPTION=Width :
TFRMMODVIEW.TEWIDTH.TEXT=Width
TFRMMODVIEW.TEHEIGHT.TEXT=Height
TFRMMODVIEW.BTNPROPORTION.CAPTION=Pr
TFRMMODVIEW.BTNOK.CAPTION=Ok
TFRMMODVIEW.BTNCANCEL.CAPTION=Cancel
TFRMMODVIEW.LABEL1.CAPTION=Quality of compress to Jpg
TFRMMODVIEW.TEQUALITY.TEXT=80
TFRMMODVIEW.BTNPATH1.CAPTION=...
TFRMMODVIEW.BTNPATH2.CAPTION=...
TFRMMODVIEW.BTNPATH3.CAPTION=...
TFRMMODVIEW.BTNPATH4.CAPTION=...
TFRMMODVIEW.BTNPATH5.CAPTION=...
TFRMMODVIEW.LBLPATH1.CAPTION=1
TFRMMODVIEW.LBLPATH2.CAPTION=2
TFRMMODVIEW.LBLPATH3.CAPTION=3
TFRMMODVIEW.LBLPATH4.CAPTION=4
TFRMMODVIEW.LBLPATH5.CAPTION=5
TFRMMODVIEW.BTNCANCEL.CAPTION=Cancel
TFRMMODVIEW.BTNOK.CAPTION=Ok

View file

@ -7,7 +7,7 @@ interface
uses
LResources, LClType,
SysUtils, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, FileUtil, ExtCtrls, ButtonPanel, ComCtrls;
Dialogs, StdCtrls, Buttons, FileUtil, ExtCtrls, ComCtrls;
type
@ -16,6 +16,29 @@ type
TfrmModView = class(TForm)
btnOk: TSpeedButton;
btnCancel: TSpeedButton;
btnPath1: TSpeedButton;
lblPath1: TLabel;
lblPath2: TLabel;
lblPath3: TLabel;
lblPath4: TLabel;
lblPath5: TLabel;
pnlButtons: TPanel;
rbPath5: TRadioButton;
rbPath4: TRadioButton;
rbPath3: TRadioButton;
rbPath2: TRadioButton;
rbPath1: TRadioButton;
btnPath2: TSpeedButton;
btnPath3: TSpeedButton;
btnPath4: TSpeedButton;
btnPath5: TSpeedButton;
tePath5: TEdit;
tePath4: TEdit;
tePath3: TEdit;
sddCopyMoveFile: TSelectDirectoryDialog;
tePath2: TEdit;
tePath1: TEdit;
pnlCopyMoveFile: TPanel;
teQuality: TEdit;
Label1: TLabel;
pnlQuality: TPanel;
@ -28,8 +51,11 @@ type
tbQuality: TTrackBar;
procedure btnCancelClick(Sender: TObject);
procedure btnOkClick(Sender: TObject);
procedure btnPathClick(Sender: TObject);
procedure btnProportionClick(Sender: TObject);
procedure FormKeyPress(Sender: TObject; var Key: char);
procedure FormShow(Sender: TObject);
procedure rbPath1KeyPress(Sender: TObject; var Key: char);
procedure tbQualityMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure teHeightKeyPress(Sender: TObject; var Key: char);
@ -40,15 +66,13 @@ type
procedure teWidthKeyPress(Sender: TObject; var Key: char);
procedure teWidthKeyUp(Sender: TObject; var Key: Word; Shift: TShiftState);
private
prX, prY: integer;
{ private declarations }
prX, prY: integer;
public
Path : string;
{ public declarations }
end;
//var
//frmModView: TfrmModView;
implementation
procedure TfrmModView.btnProportionClick(Sender: TObject);
@ -56,6 +80,50 @@ begin
btnProportion.ShowCaption:= not (btnProportion.ShowCaption);
end;
procedure TfrmModView.FormKeyPress(Sender: TObject; var Key: char);
begin
if pnlCopyMoveFile.Visible then
begin
rbPath1.Checked:= false;
rbPath2.Checked:= false;
rbPath3.Checked:= false;
rbPath4.Checked:= false;
rbPath5.Checked:= false;
case Key of
'1':
begin
rbPath1.Checked:= true;
Key := #0;
btnOkClick(Sender);
end;
'2':
begin
rbPath2.Checked:= true;
Key := #0;
btnOkClick(Sender);
end;
'3':
begin
rbPath3.Checked:= true;
Key := #0;
btnOkClick(Sender);
end;
'4':
begin
rbPath4.Checked:= true;
Key := #0;
btnOkClick(Sender);
end;
'5':
begin
rbPath5.Checked:= true;
Key := #0;
btnOkClick(Sender);
end;
end;
end;
end;
procedure TfrmModView.FormShow(Sender: TObject);
begin
if pnlSize.Visible then
@ -63,6 +131,52 @@ begin
prX:=StrToInt(teWidth.Text);
prY:=StrToInt(teHeight.Text);
end;
if pnlCopyMoveFile.Visible then
begin
// need load parths to target directories !!!
rbPath1.SetFocus;
end;
end;
procedure TfrmModView.rbPath1KeyPress(Sender: TObject; var Key: char);
begin
rbPath1.Checked:= false;
rbPath2.Checked:= false;
rbPath3.Checked:= false;
rbPath4.Checked:= false;
rbPath5.Checked:= false;
case Key of
'1':
begin
rbPath1.Checked:= true;
Key := #0;
btnOkClick(Sender);
end;
'2':
begin
rbPath2.Checked:= true;
Key := #0;
btnOkClick(Sender);
end;
'3':
begin
rbPath3.Checked:= true;
Key := #0;
btnOkClick(Sender);
end;
'4':
begin
rbPath4.Checked:= true;
Key := #0;
btnOkClick(Sender);
end;
'5':
begin
rbPath5.Checked:= true;
Key := #0;
btnOkClick(Sender);
end;
end;
end;
procedure TfrmModView.tbQualityMouseMove(Sender: TObject; Shift: TShiftState;
@ -73,9 +187,49 @@ end;
procedure TfrmModView.btnOkClick(Sender: TObject);
begin
if pnlCopyMoveFile.Visible then
begin
if rbPath1.Checked then Path:=tePath1.Text;
if rbPath2.Checked then Path:=tePath2.Text;
if rbPath3.Checked then Path:=tePath3.Text;
if rbPath4.Checked then Path:=tePath4.Text;
if rbPath5.Checked then Path:=tePath5.Text;
end;
ModalResult:= mrOk;
end;
procedure TfrmModView.btnPathClick(Sender: TObject);
begin
if sddCopyMoveFile.Execute then
begin
if sender=btnPath1 then
begin
tePath1.Text:= sddCopyMoveFile.Filename;
rbPath1.Checked:=true;
end;
if sender=btnPath2 then
begin
tePath2.Text:= sddCopyMoveFile.Filename;
rbPath2.Checked:=true;
end;
if sender=btnPath3 then
begin
tePath3.Text:= sddCopyMoveFile.Filename;
rbPath3.Checked:=true;
end;
if sender=btnPath4 then
begin
tePath4.Text:= sddCopyMoveFile.Filename;
rbPath4.Checked:=true;
end;
if sender=btnPath5 then
begin
tePath5.Text:= sddCopyMoveFile.Filename;
rbPath5.Checked:=true;
end;
end;
end;
procedure TfrmModView.btnCancelClick(Sender: TObject);
begin
ModalResult:= mrCancel;

View file

@ -1,14 +1,13 @@
object frmViewer: TfrmViewer
Left = 275
Left = 248
Height = 530
Top = 147
Width = 990
Top = 124
Width = 1028
HorzScrollBar.Page = 951
VertScrollBar.Page = 491
ActiveControl = pnlLister
Caption = 'Viewer'
ClientHeight = 510
ClientWidth = 990
ClientWidth = 1028
Constraints.MinHeight = 100
Constraints.MinWidth = 200
Icon.Data = {
@ -65,7 +64,7 @@ object frmViewer: TfrmViewer
Left = 0
Height = 487
Top = 0
Width = 990
Width = 1028
Align = alClient
BevelOuter = bvNone
TabOrder = 1
@ -75,7 +74,7 @@ object frmViewer: TfrmViewer
Left = 0
Height = 23
Top = 487
Width = 990
Width = 1028
Panels = <
item
Width = 200
@ -98,17 +97,17 @@ object frmViewer: TfrmViewer
Left = 0
Height = 487
Top = 0
Width = 990
Width = 1028
Align = alClient
BevelOuter = bvNone
ClientHeight = 487
ClientWidth = 990
ClientWidth = 1028
TabOrder = 2
object ViewerControl: TViewerControl
Left = 0
Height = 487
Top = 0
Width = 990
Width = 1028
OnPositionChanged = ViewerPositionChanged
OnMouseUp = ViewerControlMouseUp
Align = alClient
@ -118,11 +117,11 @@ object frmViewer: TfrmViewer
Left = 0
Height = 487
Top = 0
Width = 990
Width = 1028
Align = alClient
BevelOuter = bvNone
ClientHeight = 487
ClientWidth = 990
ClientWidth = 1028
TabOrder = 3
object sboxImage: TScrollBox
AnchorSideTop.Control = PanelEditImage
@ -130,10 +129,10 @@ object frmViewer: TfrmViewer
Left = 0
Height = 435
Top = 50
Width = 990
Width = 1028
Anchors = [akTop, akLeft, akRight, akBottom]
ClientHeight = 431
ClientWidth = 986
ClientWidth = 1024
Color = clWhite
ParentColor = False
TabOrder = 0
@ -163,11 +162,11 @@ object frmViewer: TfrmViewer
Left = 0
Height = 50
Top = 0
Width = 990
Width = 1028
Align = alTop
Alignment = taLeftJustify
ClientHeight = 50
ClientWidth = 990
ClientWidth = 1028
ParentShowHint = False
ShowHint = True
TabOrder = 1
@ -175,10 +174,10 @@ object frmViewer: TfrmViewer
object gboxHightlight: TGroupBox
AnchorSideLeft.Side = asrBottom
AnchorSideBottom.Side = asrBottom
Left = 312
Left = 441
Height = 47
Top = 1
Width = 135
Width = 91
Align = alLeft
AutoSize = True
BorderSpacing.Left = 5
@ -186,7 +185,7 @@ object frmViewer: TfrmViewer
Caption = 'Highlight'
ChildSizing.LeftRightSpacing = 4
ClientHeight = 29
ClientWidth = 131
ClientWidth = 87
TabOrder = 0
Visible = False
object lblHightlight: TLabel
@ -207,11 +206,11 @@ object frmViewer: TfrmViewer
AnchorSideTop.Control = gboxHightlight
Left = 30
Height = 24
Hint = 'Crop'
Top = 0
Width = 52
Width = 24
AutoSize = True
BorderSpacing.Left = 5
Caption = 'Crop'
Color = clBtnFace
Glyph.Data = {
36040000424D3604000000000000360000002800000010000000100000000100
@ -256,13 +255,49 @@ object frmViewer: TfrmViewer
AnchorSideLeft.Control = btnCutTuImage
AnchorSideLeft.Side = asrBottom
AnchorSideTop.Control = gboxHightlight
Left = 87
Left = 59
Height = 24
Hint = 'Red Eyes'
Top = 0
Width = 40
Width = 24
BorderSpacing.Left = 5
Caption = 'Red Eyes'
Color = clBtnFace
Glyph.Data = {
36040000424D3604000000000000360000002800000010000000100000000100
2000000000000004000064000000640000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000484D503ACED2D67CC5C7C7A3AAAA
AAB28C8C8CAF6D6D6D995C5C5C5B000000048D8D8D0000000000000000000000
000000000000000000064D4E4E7E817C8DED493D98FF3F3279FFA29189FEF1F3
F4FFECECECFFD8D8D8FFA7A7A7FF8D8D8DEF4E4E4E3B1A1A1A00000000004A4A
4A00343434316C6D6DEDC5C6C9FF5143A6FE4E43C0FF3F36A1FF5343A2FFA194
8FFFECEEEEFFE6E6E6FFD2D2D2FF9B9B9BFE999999FF00000002666666003232
3227727272FFD1D2D2FE968ED4FF7D74D0FF241E5BFF292369FF736ACDFF4D40
A1FFF0F2F4FFEAEAEAFFC0C0C0FF8C8C8CFF8B8B8B7000000000000000007878
78D5959595FEEEEEF0FF928BD8FF4137A6FF3C3299FF221D58FF5F55C6FF6459
C1FFE0E0E2FFD0D0D0FF7E7E7EFF969696BA0000000000000000000000008A8A
8ABF6E6E6EFFDEDFDFFF9D97DCFF8C85D6FF958ED9FF4E43C0FF7E76D1FF564A
C1FFCDCED0FF727272FE929292E0000000084444440500000000000000000000
0009848484DE646464FFC8C4C5FFB6B1E3FFB0ABE2FF9F98DDFFAFAAE1FF6E60
66FF6A6A6AFE8B8B8BE82929291300000002464646330000000000000000FFFF
FF000000000C808080CD575757FF6A6465FE5A50C1FF4A3FBAFF585656FE6C6C
6CFF858586D11212121000000000484848740000000000000000131313014141
410B000000000000000077777774727273F06A6A6AFF6C6C6EFF777777F37E7E
7E7700000000000000004F4F4F7A686868380000000000000000000000004242
42500000000A000000000000000000000000313131203C3C3C23000000000000
0000000000003D3D3D7888888891000000000202020000000000000000000000
0000656565AF0000001F00000000000000000000000000000000000000000000
000C444444AC8F8F8FCC000000007E7E7E000000000000000000000000000000
00006565650A767676E9393939990D0D0D43010101250D0D0D413434348F5B5B
5BFB919191CD0000000100000000000000000000000000000000000000000000
0000000000003D3D3D08878787B86F6F6FFF575757FF616161FF7D7D7DFF8E8E
8E8D00000000FFFFFF0000000000000000000000000000000000000000000000
000000000000FFFFFF00000000009595952399999964A0A0A0587272720C0000
0000E2E2E2000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000
}
NumGlyphs = 0
OnClick = btnRedEyeClick
end
@ -270,7 +305,7 @@ object frmViewer: TfrmViewer
object gboxPaint: TGroupBox
AnchorSideLeft.Side = asrBottom
AnchorSideBottom.Side = asrBottom
Left = 489
Left = 574
Height = 47
Top = 1
Width = 203
@ -412,7 +447,7 @@ object frmViewer: TfrmViewer
object btnHightlight: TSpeedButton
AnchorSideLeft.Side = asrBottom
AnchorSideBottom.Side = asrBottom
Left = 275
Left = 404
Height = 46
Hint = 'Highlight'
Top = 1
@ -492,7 +527,7 @@ object frmViewer: TfrmViewer
object gboxView: TGroupBox
AnchorSideLeft.Side = asrBottom
AnchorSideBottom.Side = asrBottom
Left = 85
Left = 214
Height = 47
Top = 1
Width = 184
@ -624,39 +659,39 @@ object frmViewer: TfrmViewer
Color = clBtnFace
Glyph.Data = {
36040000424D3604000000000000360000002800000010000000100000000100
2000000000000004000064000000640000000000000000000000FFFFFF00FFFF
FF00FFFFFF00000000000000000B170B0F1A612E3E4A79394D7D77384C7F5B2B
3A4F11080B22000000150000000AFFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF0096476068964760F1964760FE964760FE964760FE9647
60FE964760F196476068FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00964760079647608E964760D8964760FB964760FE964760FE964760FE9647
60FE964760FE964760FE964760B99647600AFFFFFF00FFFFFF00FFFFFF00FFFF
FF009547603D954760729647608D964760B7964760C696476098964760989647
60D5964760FE964760FE964760FE96476091FFFFFF00FFFFFF00FFFFFF009547
600A9547601895476023954760469547603A96476001FFFFFF00FFFFFF009647
60029647607B964760FE964760FE964760FD9647603EFFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF0095476003FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF009647609D964760FE964760FE96476095FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF0096476033964760FE964760FE964760CAFFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF009647600C964760FE964760FE964760F2FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF0096476032964760FE964760FE964760CDFFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF008C324F068628462BFFFF
FF00FFFFFF009647609F964760FE964760FE9647609CFFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0098456036913B56D38B304D809647
60019647607A964760FE964760FE964760FD9647603EFFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00AB637B09A459718C9D4E67FC97435EFF923D58BC9647
60DB964760FE964760FE964760FE96476099FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00B7778C28B06C82DCA96178FFA3566FFF9C4B65FF95435DFF9647
60FE964760FE964760FE964760B49647600EFFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00B9798E01B6748966AF6980F1A85E76FFA1536CFF984862FF9647
60FE964760EB9647607496476001FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00B471871BAD667DB3A65B73FF9D4E67AE9647
603496476002FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00AB637B59A459716BFFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00
2000000000000004000064000000640000000000000000000000A4A4A402ACA6
A603AAAAAA02A5A5A501FFFFFF00000000000000000000000000F2813218F17D
2A6C00000000FFFF0000C8916E01CC915D02D3906403CC995D02ACA9A9C8ABA7
A7E4A9A5A5E4B0ADADE7D3D1D1F1E9E8E8F7F3F2F2EEDDCBCB02F2803020F17B
28FFF9C9A6FFF1DECFF6CF9462E4CF9462E4CF9462E4CF9361CCACA8A883C7C5
C5E4EDEDEDEAFEFCFAFEFCDAC2FFF8B98DFFF6A56BFFF38A40C9F282328DF288
3DFFF0741DFFFBDCC6FFF9F7F6F2F2EFEDE4E1C1A7E4CF936186ABA8A81DAEAA
AAE1EAEAEAECFDECE0FFF7AA74FFF9C5A0FFFACFB1FFF2893E84F27F2FCFF078
22FFEF6F14FFF0751FFFFDEDE1FFF1EBE7EBD19A6BE2CF93612000000000AAA6
A695CCCACAE6FBFBFBFBFEFCFAFEF7F7F7F4C9C7C7EFA0A0A000F17C2A64F076
20FFF07823FFF8BA8EFFFDF8F5FEE3C8B2EACF9463990000000000000000A9A5
A52DB0ADADE4EBEBEBECEDEDEDECE8E8E8E4B4B0B0E9F1813318F17D2BEFF7B7
8AFFFEF6F0FFF7F5F4F8E8E1DDEAD29E74E4D095643000000000000000000000
0000A8A4A4A8D4D3D3EAEFEFEFEFEAEAEAE9A29D9DE400000000F17C2B0BF0DD
CDF4F1EEECF4EEEAE7F2E4CEBEECD09667AC0000000000000000000000000000
0000A7A3A33FB1AEAEE5EEEEEEEFF2F2F2F1A29D9DE40000000000000000D29A
6DE0F2EFEDF5F2EEECF4D8AA86E7D1986A430000000000000000000000000000
0000B3999901A6A2A2BAD1D0D0E6F1F1F1F2A29D9DE30000000000000000D39D
70DFF6F4F2F6EDDED3F1D39B6EBDD59C71010000000000000000000000000000
000000000000A5A1A152B3B0B0E4E2E2E2E6A29D9DE30000000000000000D49F
73DFFAF8F7F9DFBA9BE9D49D7156000000000000000000000000000000000000
000000000000A8A1A104A49F9FC9D2D1D1E4A29D9DE20000000000000000D6A1
77DFF6EEE7F6D5A176CCD4A17405000000000000000000000000000000000000
00000000000000000000A39F9F65B6B3B3E4A29D9DE20000000000000000D7A4
7ADEE6C7AEECD6A3786800000000000000000000000000000000000000000000
00000000000000000000A49F9F0BA39E9ED5A29D9DE10000000000000000D8A7
7FDED8A881D7D8A57C0D00000000000000000000000000000000000000000000
0000000000000000000000000000A29D9D78A29D9DE10000000000000000D9AB
84DDD9AA837B0000000000000000000000000000000000000000000000000000
0000000000000000000000000000A19D9D16A29D9DC00000000000000000DBAE
88BFDBAD86180000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000
}
NumGlyphs = 0
OnClick = miRotateClick
@ -766,17 +801,82 @@ object frmViewer: TfrmViewer
object btnResize: TSpeedButton
AnchorSideLeft.Side = asrBottom
AnchorSideBottom.Side = asrBottom
Left = 925
Left = 976
Height = 46
Hint = 'Resize'
Top = 1
Width = 61
Width = 48
Align = alRight
AutoSize = True
BorderSpacing.Left = 5
BorderSpacing.Right = 3
BorderSpacing.Bottom = 2
Caption = 'Resize'
Color = clBtnFace
Glyph.Data = {
C6070000424DC607000000000000360000002800000016000000160000000100
2000000000009007000064000000640000000000000000000000000000000000
00000000001D0000005400000054000000540000005400000054000000540000
0054000000540000005400000054000000380000000100000000000000000000
000000000000000000000000000000000000000000000000000000000049FBFB
FBFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFD
FDFFE8E8E8FFAAABABEF23232355000000010000000000000000000000000000
00000000000000000000000000000000000000000049FBFBFBFFF9F9F9FFFAFA
FAFFFAF1EBFFFCFCFCFFFCFCFCFFFDFDFDFFFEFEFEFFFCFCFCFFE4E4E4FFEEEF
EFFFA2A3A3EF1C1C1C5700000001000000000000000000000000000000000000
0000000000000000000000000049FBFBFBFFF8F8F8FFFAF7F4FFF1863BFFFBF5
F0FFFCFCFCFFFDFDFDFFFEFEFEFFFCFCFCFFE4E4E4FFFDFDFDFFEEEFEFFF999A
9AEF191919570000000200000000000000000000000000000000000000000000
000000000049FBFBFBFFF8F8F8FFF7D3BAFFF18438FFF8CFB2FFFCFCFCFFFDFD
FDFFFEFEFEFFFDFDFDFFE1E1E1FFFEFEFEFFFDFDFDFFEEEFEFFF999A9AF01C1C
1C5900000002000000000000000000000000000000000000000000000049FBFB
FBFFF8F8F8FFF9F9F9FFF3A46DFFFBFBFBFFFCFCFCFFFDFDFDFFFDFDFDFFFEFE
FEFFDADBDBFFFEFEFEFFFEFEFEFFFDFDFDFFEEEFEFFFA2A3A2F02121215A0000
00020000000000000000000000000000000000000049FBFBFBFFF7F7F7FFF9F9
F9FFF3A771FFFBFBFBFFFCFCFCFFFCFCFCFFFDFDFDFFFEFEFEFFD1D2D2FFFEFE
FEFFFEFEFEFFFEFEFEFFFDFDFDFFEEEFEFFFA9AAAAF000000038000000000000
0000000000000000000000000049FBFBFBFFF7F7F6FFF8F8F8FFF4AD7BFFFAFA
FAFFFBFBFBFFFCFCFCFFFDFDFDFFFDFDFDFFEDEEEDFFD0D0D0FFD9D9D9FFE0E0
E0FFE4E4E4FFE4E4E4FFE8E8E8FF0101014E0000000000000000000000000000
000000000049FBFBFBFFF6F6F6FFF7F7F7FFF4B384FFFAFAFAFFFBFBFBFFFBFB
FBFFFCFCFCFFFDFDFDFFFDFDFDFFFEFEFEFFFEFEFEFFFDFDFDFFFDFDFDFFFCFC
FCFFFDFDFDFF0000004E0000000000000000000000000000000000000049FBFB
FBFFF5F5F5FFF6F6F6FFF5B98EFFFAFAFAFFFAFAFAFFFBFBFBFFFCFCFCFFFCFC
FCFFFDFDFDFFFDFDFDFFFDFDFDFFFEFEFEFFFEFEFEFFFEFEFEFFFFFFFFFF0000
004E000000000000000000000000000000000000004AFBFBFBFFF4F4F4FFF5F5
F5FFF5BE97FFF8F8F8FFFAFAFAFFFAFAFAFFFBFBFBFFFBFBFBFFFCFCFCFFFCFC
FCFFFDFDFDFFFDFDFDFFFDFDFDFFFDFDFDFFFFFFFFFF0000004E000000000000
000000000000000000000000004AFBFBFBFFF3F3F2FFF4F4F4FFF6C4A0FFF7F7
F7FFF9F9F9FFFAFAFAFFFAFAFAFFFBFBFBFFFBFBFBFFFCFCFCFFFCFCFCFFFCFC
FCFFFCFCFCFFFCFCFCFFFFFFFFFF0000004E0000000000000000000000000000
00000000004AFBFBFBFFF2F2F1FFF3F3F2FFF6CAA9FFF6F6F6FFF7F7F7FFF8F8
F8FFFAFAFAFFFAFAFAFFFAFAFAFFFBFBFBFFFBFBFBFFFBFBFBFFFBFBFBFFFBFB
FBFFFEFEFEFF0000004E000000000000000000000000000000000000004AFBFB
FBFFF0F0F0FFF2F2F1FFF6CFB2FFF4F4F4FFF6F6F6FFF7F7F7FFF8F8F8FFF9F9
F9FFFAFAFAFFFAFAFAFFFAFAFAFFFAFAFAFFFAFAFAFFFAFAFAFFFEFEFEFF0000
004E000000000000000000000000000000000000004AFBFBFBFFB8B8B7FF9B9B
9BFF9D938BFF9C9C9CFFB8B8B8FFF5F5F5FFF6F6F6FFF7F7F7FFF8F8F8FFF9F9
F9FFF9F9F9FFFAFAFAFFFAFAFAFFFAFAFAFFFEFEFEFF0000004E000000000000
000000000000000000000000004AFBFBFBFFA1A1A1FFEFEFEEFFF0F0F0FFF2F2
F1FF9F9F9FFFF4F4F3FFF5F5F4FFF6F6F5FFF6F6F6FFF7F7F7FFF7F7F7FFF8F8
F8FFF6CDB0FFF8F3F0FFFEFEFEFF0000004E0000000000000000000000000000
00000000004AFBFBFBFFA0A0A0FFEEEEEDFFEFEFEEFFF0F0EFFFA0968EFFF6D1
B6FFF5CBACFFF5C4A1FFF4BE96FFF4B78CFFF3B081FFF2A976FFF08335FFF188
3EFFFDF6F0FF0000004E000000000000000000000000000000000000004AFBFB
FBFFA0A09FFFECECEBFFEDEDECFFEEEEEEFF9E9E9EFFF0F0F0FFF1F1F1FFF2F2
F1FFF3F3F2FFF3F3F3FFF4F4F3FFF4F4F4FFF2CDB3FFF4F1EFFFFDFDFDFF0000
004E000000000000000000000000000000000000004BFBFBFBFFBBBBBAFFA3A3
A3FFA4A4A3FFA4A4A4FFBBBBBBFFEFEFEEFFEFEFEFFFF0F0EFFFF1F1F0FFF1F1
F1FFF2F2F1FFF2F2F2FFF2F2F2FFF2F2F2FFFDFDFDFF0000004E000000000000
000000000000000000000000004BF0F0F0FEF4F4F4FEF4F4F4FEF4F4F4FEF3F3
F3FEF3F3F3FEF3F3F3FEF3F3F3FEF3F3F3FEF3F3F3FEF3F3F3FEF3F3F3FEF3F3
F3FEF3F3F2FEF2F2F2FEF4F4F4FE0000004E0000000000000000000000000000
0000000000160000003E0000003E0000003E0000003E0000003E0000003E0000
003E0000003E0000003E0000003E0000003E0000003E0000003E0000003E0000
003E0000003E0000001700000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000
}
NumGlyphs = 0
OnClick = btnResizeClick
end
@ -786,7 +886,7 @@ object frmViewer: TfrmViewer
Height = 46
Hint = 'Reload'
Top = 1
Width = 47
Width = 48
Align = alLeft
BorderSpacing.Bottom = 2
Color = clBtnFace
@ -860,7 +960,7 @@ object frmViewer: TfrmViewer
end
object btnPaint: TSpeedButton
AnchorSideBottom.Side = asrBottom
Left = 452
Left = 537
Height = 46
Hint = 'Paint'
Top = 1
@ -940,7 +1040,7 @@ object frmViewer: TfrmViewer
object btnFullScreen: TSpeedButton
AnchorSideRight.Control = btnResize
AnchorSideBottom.Side = asrBottom
Left = 872
Left = 923
Height = 45
Hint = 'Full Screen'
Top = 1
@ -1020,7 +1120,7 @@ object frmViewer: TfrmViewer
end
object gboxSlideShow: TGroupBox
AnchorSideRight.Control = btnFullScreen
Left = 742
Left = 793
Height = 48
Top = 1
Width = 124
@ -1066,27 +1166,385 @@ object frmViewer: TfrmViewer
end
end
object btnPrev: TSpeedButton
Left = 48
Left = 49
Height = 48
Hint = 'Previous'
Top = 1
Width = 16
Width = 32
Align = alLeft
Caption = '<'
Color = clBtnFace
Glyph.Data = {
C6070000424DC607000000000000360000002800000016000000160000000100
2000000000009007000064000000640000000000000000000000FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF000383004F189514EB048A008DFFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00048200841D9819FB2CA9
2AFF048B00BCFFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF0000520005058501B5219E1EFE07A707FE18AF17FE048A00BBFFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF000072001E0C87
08DB1D9E1BFF01A701FF00B500FF16BE15FD038800B9FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF000372004A10870DF1149413FE009E00FF00AF
00FF00BF00FF13C712FD038400B7FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00026F007D128310FA0B850BFE008F00FF009F00FF00B000FF00C000FF11C6
10FF038100B5FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000660004037100AE026C00FE0570
05FE007D00FF008D00FF009C00FF00AB00FF00B800FF0EBB0DFF037D00B3FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00006A001C076C05D510650FFF005A00FF006900FF007900FF0087
00FF009500FF00A200FF00AC00FF0CAD0BFF017A00B1FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00005900180864
06EE094B09FE004700FF035703FF076807FF057505FF018001FF008C00FF0096
00FF009E00FF08A008FF017600AFFFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00005D00170B610AED316F31FE3474
34FF327E32FF2E842EFF2D8C2DFF2B942BFF2A9A2AFF28A128FF26A426FF2CA6
2CFF017100AEFFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF000052001B045E03D02D722DFF438843FF408E
40FF3D933DFF399739FF369B36FF329E32FF2FA12FFF319F31FF016D00ACFFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF0000260004005600A5267125FE519651FE4F9B4FFF4B9E
4BFF48A048FF44A244FF41A341FF3D9F3DFF006900AAFFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00005100711C671CFA5A9F5AFE5EA75EFF5AA85AFF57A8
57FF53A753FF499F49FF006100A9FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00004B0041105910EB5DA05DFE6CB16CFF69B169FF65AF65FF56A2
56FE005A00A9FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF000055001A085208D0579657FF7CBC7CFF78BA78FF65A765FD005200A9FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF000026
0004004D00A4478447FE8AC78AFF71AE71FE004E00A9FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00004C
0070347234FA7AAF7AFF045104AAFFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00004C00401158
11E3447D4493FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000001FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00
}
NumGlyphs = 0
OnClick = btnPrevClick
end
object btnNext: TSpeedButton
Left = 64
Left = 81
Height = 48
Hint = 'Next'
Top = 1
Width = 16
Width = 32
Align = alLeft
Caption = '>'
Color = clBtnFace
Glyph.Data = {
C6070000424DC607000000000000360000002800000016000000160000000100
2000000000009007000064000000640000000000000000000000FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF0012950ED0169618D600780018FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF001F9C1BF31EA4
1DFF14920FEF047B0040FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF001B9C18F200AE00FF11AE11FE1997
15FA027E0074FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00199C16F100C200FF00BD00FF08B308FE1D9C1AFE037D
00A800800001FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00169B13EF00D600FF00CA00FF00BA00FF01A901FF028E00FF0A8006D2006B
0016FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00149911EF00D2
00FF00CA00FF00BB00FF00AB00FF009A00FF129111FE0D7F0AEC046A003CFFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0011930EEF00C300FF00BF00FF00B4
00FF00A600FF009700FF008800FF0A7F0AFD0F7C0DF8026B006DFFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF000E8D0CEE00B300FF00B100FF00A900FF009E00FF0091
00FF008300FF007400FF056905FE10720EFE026600A000800001FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF000B8709ED00A400FF00A200FF009C00FF009300FF028902FF067F06FF0571
05FF026102FF015101FF0D5E0CFF046303BCFFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00188917ED23A7
23FF26A726FF28A428FF2BA12BFF2B9B2BFF2C922CFF2F8C2FFF338433FF377E
37FF277027FF046003BAFFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00188418EC2DA22DFF30A330FF34A2
34FF37A037FF3A9C3AFF3D983DFF419441FF448D44FE217120FE0258009B0080
0001FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00177C17EB3FA33FFF42A542FF46A546FF49A449FF4CA3
4CFF4FA04FFF4A964AFE166615F700520065FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00177417EB51A751FF54A954FF58AB58FF5BAB5BFF5EAB5EFF4D964DFE0C5B
0CE600500035FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00176C17EA63AE
63FF67B167FF6AB36AFF6EB46EFF468B46FF025102C500450013FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00186518EB75B875FF79BC79FF7BBB
7BFF387B38FE004D009800800001FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF001A601AEB87C587FF80BC80FE286B28F7004D0063FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF001C601CEC86B986FF165E16E8004E0035FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF000B550BC61E61
1EC800450013FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000000001FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00
}
NumGlyphs = 0
OnClick = btnNextClick
end
object btnCopyFile: TSpeedButton
Left = 113
Height = 48
Hint = 'Copy'
Top = 1
Width = 32
Align = alLeft
Color = clBtnFace
Glyph.Data = {
C6070000424DC607000000000000360000002800000016000000160000000100
2000000000009007000064000000640000000000000000000000000000000000
000000000000000000000000000000000000000000008A8F8DAE868B89FF868B
89FF858A88FF858A88FF858A88FF858A88FF858A88FF848A87FF848A86FD858A
88C3848A860A0000000000000000000000000000000000000000000000000000
0000000000000000000000000000868B89FCF2F2F2FFF2F2F2FFF1F1F1FFF0F0
F0FFF1F1F1FFF4F4F4FFF7F7F7FFF6F6F6FF858A86FFB9BBBAFF858A88FF868C
8861000000000000000000000000000000000000000000000000000000000000
000000000000868B89FCF7F7F7FFEAEAEAFFE9E9E9FFEDEEEEFFF1F1F1FFF1F1
F1FFF3F3F3FFF4F4F4FF878D89FFCFCFCFFFB4B5B4FF858A88FF8F9490920000
000000000000000000000000000000000000000000000000000000000000868B
89FCFAFAFAFFEAEBEBFFEAEAEAFFE9EAEAFFECECECFFEFEFEFFFEFEFEFFFF1F1
F1FF848A86FFCFCFCFFFCFCFCFFFB9BBBAFF858A88FF858B87648B908D57858A
887F858A887F858A887F858A887F858A887F858A8883868B89FDFDFDFDFFEBEC
ECFFEBEBEBFFEAEBEBFFEAEAEAFFECECECFFF0F0F0FFEEEEEEFF858A88FF858A
88FF858A88FF858A88FF858A88FF858A88CC858A887EF2F2F27FF3F3F37FF1F1
F17FF0F0F07FF1F1F17FEDEDED83878C8AFDFFFFFFFFECEDEDFFECECECFFEBEC
ECFFEAEBEBFFEAEAEAFFEEEFEFFFF0F0F0FFEFEFEFFFF1F1F1FFF2F2F2FFF1F1
F1FFBBBEBDFF868B89FC868B897EF7F7F77FEAEAEA7FE9E9E97FE8E9E97FE8E8
E87FE2E3E383878C8AFDFFFFFFFFEDEEEEFFEBECECFFEBEBEBFFEAEBEBFFEAEA
EAFFE9EAEAFFECECECFFEFEFEFFFEDEDEDFFEFEFEFFFF2F2F2FFF7F7F7FF888D
8BFC868B897EFAFAFA7FEAEBEB7FEAEAEA7FE9EAEA7FE9E9E97FE1E2E283878C
8AFDFFFFFFFFEEEFEFFFC5C5C5FFC5C5C5FFC4C5C5FFC4C4C4FFC3C4C4FFC3C3
C3FFCDCDCDFFDCDCDCFFDCDCDCFFF2F2F2FFF9F9F9FF888D8BFC868B897EFDFD
FD7FEBECEC7FEBEBEB7FEAEBEB7FEAEAEA7FE2E3E383878C8AFDFFFFFFFFEFF0
F0FFEEEFEFFFEEEEEEFFEDEEEEFFECEDEDFFECEDEDFFEBECECFFEBEBEBFFEFEF
EFFFF2F2F2FFEFEFEFFFFCFCFCFF898E8CFC868B897EFFFFFF7FECEDED7FC7C7
C77FC6C7C77FC5C6C67FC1C1C183868B89FDFFFFFFFFEFF0F0FFC7C8C8FFC6C7
C7FFC6C7C7FFC5C6C6FFC5C6C6FFC5C5C5FFC5C5C5FFEDEEEEFFEDEDEDFFF4F4
F4FFFEFEFEFF898E8CFC868B897EFFFFFF7FEDEEEE7FECEDED7FECECEC7FEBEC
EC7FE4E5E483878C8AFDFFFFFFFFEFF0F0FFEFF0F0FFEFF0F0FFEFF0F0FFEEEF
EFFFEEEFEFFFEDEEEEFFEDEDEDFFECEDEDFFEDEEEEFFEDEDEDFFFEFEFEFF898E
8CFC868C8A7EFFFFFF7FEEEFEF7FC8C9C97FC8C8C87FC7C8C87FC2C3C383868B
89FDFFFFFFFFEFF0F0FFC6C7C7FFC6C7C7FFC6C7C7FFC6C7C7FFC6C7C7FFC5C6
C6FFC5C5C5FFC5C5C5FFC4C5C5FFEEEEEEFFFEFEFEFF898E8CFC868C8A7EFFFF
FF7FEFF0F07FEEEFEF7FEEEEEE7FEDEEEE7FE5E6E683878C8AFDFFFFFFFFEFF0
F0FFEEEFEFFFEEEFEFFFEEEFEFFFEEEFEFFFEEEFEFFFEEEFEFFFEDEEEEFFEDEE
EEFFECEDEDFFEDEDEDFFFEFEFEFF898E8CFC868C8A7EFFFFFF7FEFF0F07FCACA
CA7FC9CACA7FC9CACA7FC3C5C583868B89FDFFFFFFFFEFF0F0FFC6C7C7FFC6C7
C7FFC6C7C7FFC6C7C7FFC6C7C7FFC6C7C7FFC6C7C7FFC6C7C7FFC5C6C6FFEEEE
EEFFFEFEFEFF898E8CFC868C8A7EFFFFFF7FEFF0F07FEFF0F07FEFF0F07FEFF0
F07FE7E8E883878C8AFDFFFFFFFFEFF0F0FFEFF0F0FFEFF0F0FFEFF0F0FFEFF0
F0FFEFF0F0FFEFF0F0FFEFF0F0FFEFF0F0FFEFF0F0FFEEEFEFFFFEFEFEFF898E
8CFC868C8A7EFFFFFF7FEFF0F07FCACACA7FCACACA7FCACACA7FC5C6C583868B
89FDFFFFFFFFEFF0F0FFEFF0F0FFEFF0F0FFEFF0F0FFEFF0F0FFEFF0F0FFEFF0
F0FFEFF0F0FFEFF0F0FFEFF0F0FFEFF0F0FFFEFEFEFF898E8CFC868C8A7EFFFF
FF7FEFF0F07FEFF0F07FEFF0F07FEFF0F07FE8E9E983868B89FEFFFFFFFFFEFE
FEFFFEFEFEFFFEFEFEFFFEFEFEFFFEFEFEFFFEFEFEFFFEFEFEFFFEFEFEFFFEFE
FEFFFEFEFEFFFEFEFEFFFFFFFFFF898E8CFD868C8A7EFFFFFF7FEFF0F07FCACA
CA7FCACACA7FCACACA7FC9C9C980959997DA898E8CFE898E8CFD898E8CFD898E
8CFD8A8E8CFD8A8F8DFD898E8CFD898E8CFC898E8CFC898E8CFC898E8CFC898E
8CFC898E8CFD8A8F8DB4868C8A7EFFFFFF7FEFF0F07FEFF0F07FEFF0F07FEFF0
F07FEFF0F07FEEEFEF80E8E9E983E8E9E983E8E9E983E8E9E983E7E8E883F6F6
F6838D9190820000000000000000000000000000000000000000000000000000
0000868C8A7EFFFFFF7FEFF0F07FEFF0F07FEFF0F07FEFF0F07FEFF0F07FEFF0
F07FEFF0F07FEFF0F07FEFF0F07FEFF0F07FEFF0F07FFEFEFE7F8E92917E0000
0000000000000000000000000000000000000000000000000000858A887EFFFF
FF7FFFFFFF7FFFFFFF7FFFFFFF7FFFFFFF7FFFFFFF7FFFFFFF7FFFFFFF7FFFFF
FF7FFFFFFF7FFFFFFF7FFFFFFF7FFFFFFF7F8D91907E00000000000000000000
0000000000000000000000000000000000008B908D57898E8C7F898E8C7F898E
8C7F898E8C7F898E8C7F898E8C7F898E8C7F898E8C7F898E8C7F898E8C7F898E
8C7F898E8C7F898E8C7F8B908D57000000000000000000000000000000000000
00000000000000000000
}
NumGlyphs = 0
OnClick = btnCopyMoveFileClick
end
object btnMoveFile: TSpeedButton
Left = 145
Height = 48
Hint = 'Move'
Top = 1
Width = 32
Align = alLeft
Color = clBtnFace
Glyph.Data = {
C6070000424DC607000000000000360000002800000016000000160000000100
2000000000009007000064000000640000000000000000000000000000000000
0000000000010000000200000004000000060000000A0000000F000000100000
0010000000100000001200000013000000110000000D0000000A000000060000
0003000000030000000200000000000000000000000000000003000000070808
AC7D0707AEC00606ACC10505937D0000002B0000002E0000002C0000002C0000
0030000000300000002C04048F810606A9C40707ADC10808A6810000000D0000
0009000000040000000100000001000000040C0CB58A1212C5FF1A1AD8FF1818
D0FF0A0AB6FF0808A0AF00000039000000370000003600000039000000390808
9FB00A0AB6FF1818D0FF1A1AD8FF1212C5FF0C0CAD9000000010000000070000
000200000000000000020808AFE82121E1FF1515CCFB1111C7FF2323E3FF0909
B2EA0404948E0000002500000024000000240404958D0909B3E92323E3FF1111
C7FF1515CCFB2121E1FF0808AFE8000000090000000400000001000000000000
00000C0DAECC2929EFFF0D0DBEFB020299480707B1EA2222E2FF0808B3E40000
000A00000008000000070808B3E42222E2FF0707B1EA020299480D0DBEFB2929
EFFF0B0CADCD00000001000000000000000000000000000000001112AEA82525
E7FF1313C9FF0505AE960303AA831C1CD7FF0707B1FF0000A257000000000000
A4560707B1FF1C1CD7FF0303AA830505AE961313C9FF2525E7FF1112AEA80000
0000000000000000000000000000000000001B1CAE440505ADDF1E1EDCFF1111
C4EC0606B0EE1717CEFF1515CBFF0000A4875558AE990000A4871515CBFF1717
CEFF0606B0EE1111C4EC1E1EDCFF0505ADDF1B1CAE4400000000000000000000
00000000000000000000000000000606B0680909B5E61A1AD4FF1F1FDCFF2121
E1FF2121E1FF0303AAFE0303AAFF0303AAFE2121E1FF2121E1FF1F1FDCFF1A1A
D4FF0909B5E60606B06800000000000000000000000000000000000000000000
000000000000000000000000A4200808B3A10909B5F60505AEFE3031DAFF393A
C7FF0303AAFF393AC7FF3031DAFF0505AEFE0909B5F60808B3A10000A4200000
0000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000606B0816B6F94FFB1B3B6FF00000000B1B3
B6FF6B6F94FF0606B08100000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000858A88878B8F9BFFE2E2E2FFD8D8D8FFBEC0BFFF9295A9FF0000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000858A881F878C
8AFCDEE0DFFFDADADAFFD8D8D8FFB1B4B3FFBABCBAFF989C9BD5000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000858A88C0ABAEADFDDFDFDFFFDBDB
DBFFAFB2B0FFBDBFBEFFDCDCDCFF959997FF858A883C00000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000858A8857878C8AFFE9EAEAFFDCDCDCFFD6D6D6FFA7ABA9FFC1C3
C1FFDBDBDBFFDDDEDEFF929795F9000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000858A
88EFC0C3C2FEE0E0E0FFDDDDDDFF9A9E9DFF9A9E9C90A2A5A4FFDCDCDCFFDCDC
DCFFB0B2B1FF909593A800000000000000000000000000000000000000000000
000000000000000000000000000000000000858A889C8D9290FEEBEBEBFFDFDF
DFFFC8C9C9FFA8ABAAD900000000919694F1D3D5D4FFDDDDDDFFE2E2E2FF898E
8CFF858A881F0000000000000000000000000000000000000000000000000000
000000000000858A881F858A88FEDFE0E0FFE0E0E0FFE0E0E0FF959A98FF0000
000000000000858A883C8F9492FFE1E1E1FFDEDEDEFFCBCCCBFF8F9391EF0000
000000000000000000000000000000000000000000000000000000000000858A
88CF9A9E9DFDE8E8E8FFE1E1E1FFB1B3B2FFA2A6A4BE00000000000000000000
0000929795CFC3C6C5FFDFDFDFFFE2E2E2FF959A98FF858A8870000000000000
000000000000000000000000000000000000000000008C918FF5EBEBEBFFE2E2
E2FFDCDDDCFF989C9BFC00000000000000000000000000000000858A881F898E
8CFFE2E3E3FFE0E0E0FFD8D9D8FF929795F90000000000000000000000000000
0000000000000000000000000000909593DAD6D8D7FFE2E2E2FF9C9F9FFF989C
9B810000000000000000000000000000000000000000909593A8A8ACABFFE3E3
E3FFD0D1D0FF9DA1A0DC00000000000000000000000000000000000000000000
000000000000858A88708E9391FEC1C4C2FF999D9CF700000000000000000000
0000000000000000000000000000000000008D9290FBD1D3D2FF909492FF858A
88AF000000000000000000000000000000000000000000000000000000000000
00008C918FC78A8F8DFF858A883C000000000000000000000000000000000000
00000000000000000000858A8870858A88FF8E9290E400000000000000000000
00000000000000000000
}
NumGlyphs = 0
OnClick = btnCopyMoveFileClick
end
object btnDeleteFile: TSpeedButton
Left = 177
Height = 48
Hint = 'Delete'
Top = 1
Width = 32
Align = alLeft
Color = clBtnFace
Glyph.Data = {
C6070000424DC607000000000000360000002800000016000000160000000100
2000000000009007000064000000640000000000000000000000FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF000000972000009BC000009720FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF000000972000009BC000009720FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF0000009F2001019DE02E2E
B4FF05059FE000009F20FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF0000009F2000009DE02525B3FF01019EE100009F20FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF0000009F200101A1E03E3EBFFF2424C1FF4242C5FF0303
A2E000009F20FFFFFF00FFFFFF00FFFFFF00FFFFFF0000009F200000A1E03838
C4FF2C2CC9FF4242C4FF0101A2E100009F20FFFFFF00FFFFFF00FFFFFF000000
9F200101A3E04242C0FF1A1ABEFF0808C0FF1313C9FF4343CCFF0303A4E00000
9F20FFFFFF00FFFFFF0000009F200000A3E03A3ACBFF1C1CD1FF0707C6FF1717
C4FF4444C5FF0101A4E000009F20FFFFFF00FFFFFF000000A6C02525B5FF3232
C3FF0808BEFF0707C4FF0606CCFF1313D4FF4444D3FF0202A7E00000A7200000
A7200101A6E03F3FD2FF1C1CDCFF0606D2FF0606CCFF0707C4FF2424C5FF3636
BDFF0000A6C0FFFFFF00FFFFFF000000A7200000A8E03D3DC4FF1F1FC7FF0606
C8FF0606CFFF0505D7FF1414E0FF4444D9FF0202A9E00101A8E04242D9FF1A1A
E7FF0404DEFF0505D7FF0606CFFF1313CBFF4848CBFF0505AAE00000A720FFFF
FF00FFFFFF00FFFFFF000000A7200000ABE03F3FCCFF1D1DD0FF0606D2FF0404
DAFF0303E1FF1414EAFF4545DFFF4444DFFF1818F1FF0202E8FF0303E1FF0404
DAFF1515D5FF4B4BD3FF0303ADE10000A720FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF000000AF200000AFE14343D2FF1C1CD8FF0404DCFF0303E3FF0202
E9FF1313F1FF1414F4FF0101F0FF0202E9FF0303E3FF1414DEFF4C4CDAFF0303
B1E10000AF20FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF000000AF200000B1E14545D8FF1818DEFF0303E1FF0202E7FF0202EBFF0101
EDFF0202EBFF0202E7FF1515E3FF4D4DDFFF0303B2E10000AF20FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF000000
AF200101B4E14B4BDEFF4646E6FF5858EDFF6162F0FF6465F1FF6666EFFF6C6C
EEFF8080EAFF0303B6E20000AF20FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF000000B7200606B9E19899
EBFF7D7EEDFF5D5EE9FF5555EAFF4E4EEAFF4748E9FF5151E8FF9191ECFF0707
B9E20000B720FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF000000B7200202BAE09495E9FF8082E9FF696BE8FF6465
E8FF5B5CEAFF5555E7FF4F4FE7FF4748E4FF5555E4FF8B8BE7FF0404BCE10000
B720FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF000000
BF200101BBE08F8FE4FF8C8EEAFF797AE7FF7273E6FF6A6CE7FF7374E9FF6E6E
E8FF5656E3FF5050E1FF4849DFFF5556DFFF8484E2FF0202BCE10000BF20FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF000000BF200000BFE08989E0FF989A
E9FF8687E7FF7F81E6FF797AE7FF7F81E7FF8B8BE7FF8585E5FF6F6FE5FF5757
DFFF5050DDFF4949D9FF5758D9FF7C7CDDFF0101BFE10000BF20FFFFFF00FFFF
FF00FFFFFF000000BF200000C2E08182DEFFA3A4EBFF9596E8FF8E8FE7FF8687
E6FF898BE8FF8B8BE5FF0303C4E00202C3E08282E4FF6F6FE1FF5757DAFF5050
D8FF4949D3FF595AD4FF7676D9FF0202C0E10000BF20FFFFFF00FFFFFF000000
C5C0B6B6EDFFB3B5EEFFA1A3EAFF9B9CE8FF9596E8FF9596E8FF8B8CE5FF0404
C6E00000C7200000C7200303C5E08182E1FF6D6DDDFF5858D6FF5252D2FF4A4A
CDFF6D6ED4FF5353D2FF0000C5C0FFFFFF00FFFFFF000000C7202A2ACDE4ABAC
EFFFAEB0EEFFA1A3EAFFA1A3E9FF8C8CE2FF0606C4E00000C720FFFFFF00FFFF
FF000000C7200303C5E07F7FDFFF6B6CDAFF5959D1FF6666D3FF7D7EDEFF0808
C6E10000C720FFFFFF00FFFFFF00FFFFFF000000C7201212C8E2A9ABEDFFB3B4
EFFF8C8CE1FF0505C4E00000C720FFFFFF00FFFFFF00FFFFFF00FFFFFF000000
C7200505C5E07D7EDEFF7E7FDBFF8081DDFF0606C6E10000C720FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF000000C7201D1DCAE3C3C3F1FF0606C4E10000
C720FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF000000C7200505
C5E0AAABEAFF2525CCE30000C720FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF000000C7200000C5C00000C720FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF000000C7200000C5C00000
C720FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
FF00FFFFFF00FFFFFF00
}
NumGlyphs = 0
OnClick = btnDeleteFileClick
end
end
end
object MainMenu: TMainMenu

View file

@ -1,8 +1,8 @@
TFRMVIEWER.CAPTION=Viewer
TFRMVIEWER.GBOXHIGHTLIGHT.CAPTION=Highlight
TFRMVIEWER.LBLHIGHTLIGHT.CAPTION=0x0
TFRMVIEWER.BTNCUTTUIMAGE.CAPTION=Crop
TFRMVIEWER.BTNREDEYE.CAPTION=Red Eyes
TFRMVIEWER.BTNCUTTUIMAGE.HINT=Crop
TFRMVIEWER.BTNREDEYE.HINT=Red Eyes
TFRMVIEWER.GBOXPAINT.CAPTION=Paint
TFRMVIEWER.BTNUNDO.HINT=Undo
TFRMVIEWER.COMBOBOXPAINT.TEXT=Pen
@ -14,14 +14,17 @@ TFRMVIEWER.BTN90.HINT=+ 90
TFRMVIEWER.BTNMIRROR.HINT=Mirror
TFRMVIEWER.BTNZOOMIN.HINT=Zoom In
TFRMVIEWER.BTNZOOMOUT.HINT=Zoom Out
TFRMVIEWER.BTNRESIZE.CAPTION=Resize
TFRMVIEWER.BTNRESIZE.HINT=Resize
TFRMVIEWER.BTNRELOAD.HINT=Reload
TFRMVIEWER.BTNPAINT.HINT=Paint
TFRMVIEWER.BTNFULLSCREEN.HINT=Full Screen
TFRMVIEWER.GBOXSLIDESHOW.CAPTION=Slide Show
TFRMVIEWER.CBSLIDESHOW.CAPTION=Slide Show
TFRMVIEWER.BTNPREV.CAPTION=<
TFRMVIEWER.BTNNEXT.CAPTION=>
TFRMVIEWER.BTNPREV.HINT=Previous
TFRMVIEWER.BTNNEXT.HINT=Next
TFRMVIEWER.BTNCOPYFILE.HINT=Copy
TFRMVIEWER.BTNMOVEFILE.HINT=Move
TFRMVIEWER.BTNDELETEFILE.HINT=Delete
TFRMVIEWER.MIFILE.CAPTION=&File
TFRMVIEWER.MIPREV.CAPTION=&Previous
TFRMVIEWER.MINEXT.CAPTION=&Next

View file

@ -39,7 +39,7 @@ interface
uses
LResources, SysUtils, Classes, Graphics, Controls, Forms, ExtCtrls, ComCtrls,
LCLProc, Menus, Dialogs, ExtDlgs, EditBtn, StdCtrls, Buttons, ColorBox, Spin,
viewercontrol, fFindView, WLXPlugin, uWLXModule, uFileSource, fModView;
viewercontrol, fFindView, WLXPlugin, uWLXModule, uFileSource, fModView, uOSUtils;
type
@ -106,6 +106,9 @@ type
btnRedEye: TSpeedButton;
btnNext: TSpeedButton;
btnPrev: TSpeedButton;
btnMoveFile: TSpeedButton;
btnDeleteFile: TSpeedButton;
btnCopyFile: TSpeedButton;
Status: TStatusBar;
MainMenu: TMainMenu;
miFile: TMenuItem;
@ -130,7 +133,9 @@ type
miCopyToClipboard: TMenuItem;
TimerViewer: TTimer;
ViewerControl: TViewerControl;
procedure btnCopyMoveFileClick(Sender: TObject);
procedure btnCutTuImageClick(Sender: TObject);
procedure btnDeleteFileClick(Sender: TObject);
procedure btnFullScreenClick(Sender: TObject);
procedure btnNextClick(Sender: TObject);
procedure btnPaintHightlight(Sender: TObject);
@ -150,6 +155,7 @@ type
);
procedure ImageMouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure miSaveClick(Sender: TObject);
procedure miScreenShotClick(Sender: TObject);
procedure miFullScreenClick(Sender: TObject);
procedure miPluginsClick(Sender: TObject);
@ -157,7 +163,7 @@ type
procedure miSaveAsBmpClick(Sender: TObject);
procedure miSaveAsJpgClick(Sender: TObject);
procedure miSaveAsPngClick(Sender: TObject);
procedure miSaveClick(Sender: TObject);
procedure SaveImage(var sTarget: String; senderSave: boolean);
procedure miSaveToIcoClick(Sender: TObject);
procedure miSaveToPnmClick(Sender: TObject);
procedure miSearchNextClick(Sender: TObject);
@ -389,11 +395,6 @@ begin
miWrapTextClick(Sender);
Key := #0;
end;
'F', 'f':
begin
miFullScreenClick(Sender);
Key := #0;
end;
end;
end;
@ -620,6 +621,14 @@ begin
Image.Cursor:=crDefault;
end;
procedure TfrmViewer.miSaveClick(Sender: TObject);
var
str: String;
begin
str:=FileList.Strings[iActiveFile];
SaveImage(str, true);
end;
procedure TfrmViewer.miFullScreenClick(Sender: TObject);
begin
miFullScreen.Checked:=not(miFullScreen.Checked);
@ -860,8 +869,11 @@ begin
if not Assigned(FModSizeDialog) then
FModSizeDialog:= TfrmModView.Create(Application);
FModSizeDialog.pnlSize.Visible:=false;
FModSizeDialog.pnlCopyMoveFile.Visible :=false;
FModSizeDialog.pnlQuality.Visible:=true;
FModSizeDialog.Caption:='Quality of Jpg';
FModSizeDialog.Width:=190;
FModSizeDialog.Height:=100;
FModSizeDialog.ShowModal;
if FModSizeDialog.ModalResult=mrOk then
if StrToInt(FModSizeDialog.teQuality.Text)<=100 then
@ -879,22 +891,28 @@ begin
SaveToPng(SavePictureDialog, Image);
end;
procedure TfrmViewer.miSaveClick(Sender: TObject);
procedure TfrmViewer.SaveImage(Var sTarget: String; senderSave: boolean);
var
sExt: string;
sExt, sName, sFileName: string;
png: TPortableNetworkGraphic=nil;
ico : TIcon=nil;
jpg : TJpegImage=nil;
pnm : TPortableAnyMapGraphic=nil;
begin
sExt:= ExtractFileExt(FileList.Strings[iActiveFile]);
if sExt= '.bmp' then Image.Picture.SaveToFile(FileList.Strings[iActiveFile]);
if senderSave then sFileName:= sTarget
else
begin
sName:= ExtractFileName(FileList.Strings[iActiveFile]);
sFileName:= sTarget + PathDelim + sName;
end;
if sExt= '.bmp' then Image.Picture.SaveToFile(sFileName);
if sExt= '.png' then
begin
png := TPortableNetworkGraphic.Create;
try
png.Assign(Image.Picture.Graphic);
png.SaveToFile(FileList.Strings[iActiveFile]);
png.SaveToFile(sFileName);
finally
png.Free;
end;
@ -904,8 +922,8 @@ begin
jpg := TJpegImage.Create;
try
jpg.Assign(Image.Picture.Graphic);
jpg.CompressionQuality := 100;
jpg.SaveToFile(FileList.Strings[iActiveFile]);
jpg.CompressionQuality := 80;
jpg.SaveToFile(sFileName);
finally
jpg.Free;
end;
@ -915,7 +933,7 @@ begin
ico := TIcon.Create;
try
ico.Assign(Image.Picture.Graphic);
ico.SaveToFile(FileList.Strings[iActiveFile]);
ico.SaveToFile(sFileName);
finally
ico.Free;
end;
@ -925,7 +943,7 @@ begin
pnm := TPortableAnyMapGraphic.Create;
try
pnm.Assign(Image.Picture.Graphic);
pnm.SaveToFile(FileList.Strings[iActiveFile]);
pnm.SaveToFile(sFileName);
finally
pnm.Free;
end;
@ -1270,6 +1288,36 @@ begin
CutToImage;
end;
procedure TfrmViewer.btnDeleteFileClick(Sender: TObject);
begin
mbDeleteFile(FileList.Strings[iActiveFile]);
end;
procedure TfrmViewer.btnCopyMoveFileClick(Sender: TObject);
begin
if not Assigned(FModSizeDialog) then
FModSizeDialog:= TfrmModView.Create(Application);
FModSizeDialog.pnlQuality.Visible:=false;
FModSizeDialog.pnlSize.Visible:=false;
FModSizeDialog.pnlCopyMoveFile.Visible := true;
if sender=btnMoveFile then FModSizeDialog.Caption:='Move File'
else FModSizeDialog.Caption:='Copy File' ;
FModSizeDialog.Width:=400;
FModSizeDialog.Height:=200;
FModSizeDialog.ShowModal;
if FModSizeDialog.ModalResult = mrOk then
if FModSizeDialog.Path='' then
begin
ShowMessage ('Bad parth :(');
Exit;
end
else
SaveImage(FModSizeDialog.Path, false)
else
Exit;
if sender=btnMoveFile then btnDeleteFileClick(Sender);
end;
procedure TfrmViewer.btnFullScreenClick(Sender: TObject);
begin
miFullScreenClick(Sender);
@ -1348,10 +1396,13 @@ begin
if not Assigned(FModSizeDialog) then
FModSizeDialog:= TfrmModView.Create(Application);
FModSizeDialog.pnlQuality.Visible:=false;
FModSizeDialog.pnlCopyMoveFile.Visible :=false;
FModSizeDialog.pnlSize.Visible:=true;
FModSizeDialog.teHeight.Text:= IntToStr(Image.Picture.Bitmap.Height);
FModSizeDialog.teWidth.Text := IntToStr(Image.Picture.Bitmap.Width);
FModSizeDialog.Caption:='New Size';
FModSizeDialog.Width:=190;
FModSizeDialog.Height:=100;
FModSizeDialog.ShowModal;
if FModSizeDialog.ModalResult = mrOk then
Res(StrToInt(FModSizeDialog.teWidth.Text), StrToInt(FModSizeDialog.teHeight.Text))