You've already forked lazarus-ccr
Selection bug fixed. Selection Copy and Paste work.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@1615 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
@ -268,6 +268,8 @@ begin
|
||||
oBmp := TBitmap.Create;
|
||||
try
|
||||
oBmp.LoadFromClipboardFormat(PredefinedClipboardFormat(pcfDelphiBitmap));
|
||||
Width := oBmp.Width;
|
||||
Height := oBmp.Height;
|
||||
Canvas.Draw(0, 0, oBmp);
|
||||
finally
|
||||
oBmp.Free;
|
||||
|
@ -49,7 +49,7 @@
|
||||
<WindowIndex Value="0"/>
|
||||
<TopLine Value="1"/>
|
||||
<CursorPos X="14" Y="4"/>
|
||||
<UsageCount Value="83"/>
|
||||
<UsageCount Value="84"/>
|
||||
</Unit0>
|
||||
<Unit1>
|
||||
<Filename Value="main.pas"/>
|
||||
@ -58,12 +58,11 @@
|
||||
<HasResources Value="True"/>
|
||||
<ResourceBaseClass Value="Form"/>
|
||||
<UnitName Value="Main"/>
|
||||
<IsVisibleTab Value="True"/>
|
||||
<EditorIndex Value="0"/>
|
||||
<WindowIndex Value="0"/>
|
||||
<TopLine Value="843"/>
|
||||
<CursorPos X="28" Y="860"/>
|
||||
<UsageCount Value="83"/>
|
||||
<TopLine Value="1266"/>
|
||||
<CursorPos X="24" Y="1279"/>
|
||||
<UsageCount Value="84"/>
|
||||
<Loaded Value="True"/>
|
||||
<LoadedDesigner Value="True"/>
|
||||
</Unit1>
|
||||
@ -72,8 +71,8 @@
|
||||
<UnitName Value="PictureCtrls"/>
|
||||
<EditorIndex Value="2"/>
|
||||
<WindowIndex Value="0"/>
|
||||
<TopLine Value="1168"/>
|
||||
<CursorPos X="1" Y="1193"/>
|
||||
<TopLine Value="1411"/>
|
||||
<CursorPos X="27" Y="1432"/>
|
||||
<UsageCount Value="35"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit2>
|
||||
@ -170,8 +169,8 @@
|
||||
<Filename Value="T:\fpclaz\laz\lcl\graphics.pp"/>
|
||||
<UnitName Value="Graphics"/>
|
||||
<WindowIndex Value="0"/>
|
||||
<TopLine Value="129"/>
|
||||
<CursorPos X="3" Y="149"/>
|
||||
<TopLine Value="1078"/>
|
||||
<CursorPos X="15" Y="1094"/>
|
||||
<UsageCount Value="10"/>
|
||||
</Unit12>
|
||||
<Unit13>
|
||||
@ -358,10 +357,11 @@
|
||||
<Unit35>
|
||||
<Filename Value="DLBitmap.pas"/>
|
||||
<UnitName Value="DLBitmap"/>
|
||||
<IsVisibleTab Value="True"/>
|
||||
<EditorIndex Value="4"/>
|
||||
<WindowIndex Value="0"/>
|
||||
<TopLine Value="239"/>
|
||||
<CursorPos X="36" Y="259"/>
|
||||
<TopLine Value="259"/>
|
||||
<CursorPos X="9" Y="270"/>
|
||||
<UsageCount Value="19"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit35>
|
||||
@ -447,123 +447,123 @@
|
||||
<JumpHistory Count="30" HistoryIndex="29">
|
||||
<Position1>
|
||||
<Filename Value="picturectrls.pas"/>
|
||||
<Caret Line="187" Column="20" TopLine="155"/>
|
||||
<Caret Line="1060" Column="31" TopLine="1034"/>
|
||||
</Position1>
|
||||
<Position2>
|
||||
<Filename Value="picturectrls.pas"/>
|
||||
<Caret Line="656" Column="53" TopLine="630"/>
|
||||
<Caret Line="1167" Column="42" TopLine="1153"/>
|
||||
</Position2>
|
||||
<Position3>
|
||||
<Filename Value="picturectrls.pas"/>
|
||||
<Caret Line="664" Column="14" TopLine="632"/>
|
||||
<Caret Line="1175" Column="29" TopLine="1153"/>
|
||||
</Position3>
|
||||
<Position4>
|
||||
<Filename Value="picturectrls.pas"/>
|
||||
<Caret Line="732" Column="14" TopLine="700"/>
|
||||
<Caret Line="982" Column="47" TopLine="973"/>
|
||||
</Position4>
|
||||
<Position5>
|
||||
<Filename Value="picturectrls.pas"/>
|
||||
<Caret Line="1175" Column="26" TopLine="1147"/>
|
||||
<Caret Line="1039" Column="39" TopLine="1028"/>
|
||||
</Position5>
|
||||
<Position6>
|
||||
<Filename Value="DLBitmap.pas"/>
|
||||
<Caret Line="75" Column="30" TopLine="55"/>
|
||||
<Filename Value="picturectrls.pas"/>
|
||||
<Caret Line="1052" Column="29" TopLine="1028"/>
|
||||
</Position6>
|
||||
<Position7>
|
||||
<Filename Value="DLBitmap.pas"/>
|
||||
<Caret Line="255" Column="18" TopLine="223"/>
|
||||
<Filename Value="picturectrls.pas"/>
|
||||
<Caret Line="1057" Column="60" TopLine="1046"/>
|
||||
</Position7>
|
||||
<Position8>
|
||||
<Filename Value="main.pas"/>
|
||||
<Caret Line="611" Column="13" TopLine="591"/>
|
||||
<Filename Value="picturectrls.pas"/>
|
||||
<Caret Line="1058" Column="21" TopLine="1046"/>
|
||||
</Position8>
|
||||
<Position9>
|
||||
<Filename Value="main.pas"/>
|
||||
<Caret Line="646" Column="13" TopLine="615"/>
|
||||
<Filename Value="picturectrls.pas"/>
|
||||
<Caret Line="1060" Column="31" TopLine="1046"/>
|
||||
</Position9>
|
||||
<Position10>
|
||||
<Filename Value="main.pas"/>
|
||||
<Caret Line="653" Column="13" TopLine="622"/>
|
||||
<Filename Value="picturectrls.pas"/>
|
||||
<Caret Line="1167" Column="42" TopLine="1153"/>
|
||||
</Position10>
|
||||
<Position11>
|
||||
<Filename Value="main.pas"/>
|
||||
<Caret Line="660" Column="13" TopLine="629"/>
|
||||
<Filename Value="picturectrls.pas"/>
|
||||
<Caret Line="1175" Column="29" TopLine="1162"/>
|
||||
</Position11>
|
||||
<Position12>
|
||||
<Filename Value="main.pas"/>
|
||||
<Caret Line="674" Column="13" TopLine="643"/>
|
||||
<Filename Value="picturectrls.pas"/>
|
||||
<Caret Line="150" Column="91" TopLine="145"/>
|
||||
</Position12>
|
||||
<Position13>
|
||||
<Filename Value="main.pas"/>
|
||||
<Caret Line="681" Column="13" TopLine="650"/>
|
||||
<Filename Value="picturectrls.pas"/>
|
||||
<Caret Line="182" Column="24" TopLine="156"/>
|
||||
</Position13>
|
||||
<Position14>
|
||||
<Filename Value="main.pas"/>
|
||||
<Caret Line="851" Column="13" TopLine="820"/>
|
||||
<Filename Value="picturectrls.pas"/>
|
||||
<Caret Line="229" Column="57" TopLine="203"/>
|
||||
</Position14>
|
||||
<Position15>
|
||||
<Filename Value="main.pas"/>
|
||||
<Caret Line="1384" Column="1" TopLine="1347"/>
|
||||
<Filename Value="picturectrls.pas"/>
|
||||
<Caret Line="230" Column="23" TopLine="204"/>
|
||||
</Position15>
|
||||
<Position16>
|
||||
<Filename Value="main.pas"/>
|
||||
<Caret Line="862" Column="38" TopLine="843"/>
|
||||
<Filename Value="picturectrls.pas"/>
|
||||
<Caret Line="717" Column="27" TopLine="703"/>
|
||||
</Position16>
|
||||
<Position17>
|
||||
<Filename Value="picturectrls.pas"/>
|
||||
<Caret Line="1149" Column="73" TopLine="1144"/>
|
||||
<Caret Line="6" Column="94" TopLine="1"/>
|
||||
</Position17>
|
||||
<Position18>
|
||||
<Filename Value="main.pas"/>
|
||||
<Caret Line="862" Column="9" TopLine="843"/>
|
||||
<Filename Value="picturectrls.pas"/>
|
||||
<Caret Line="187" Column="20" TopLine="161"/>
|
||||
</Position18>
|
||||
<Position19>
|
||||
<Filename Value="picturectrls.pas"/>
|
||||
<Caret Line="187" Column="19" TopLine="168"/>
|
||||
<Caret Line="665" Column="16" TopLine="639"/>
|
||||
</Position19>
|
||||
<Position20>
|
||||
<Filename Value="picturectrls.pas"/>
|
||||
<Caret Line="199" Column="30" TopLine="168"/>
|
||||
<Caret Line="733" Column="14" TopLine="707"/>
|
||||
</Position20>
|
||||
<Position21>
|
||||
<Filename Value="picturectrls.pas"/>
|
||||
<Caret Line="640" Column="78" TopLine="633"/>
|
||||
<Caret Line="1178" Column="30" TopLine="1165"/>
|
||||
</Position21>
|
||||
<Position22>
|
||||
<Filename Value="picturectrls.pas"/>
|
||||
<Caret Line="664" Column="14" TopLine="633"/>
|
||||
<Filename Value="main.pas"/>
|
||||
<Caret Line="864" Column="16" TopLine="843"/>
|
||||
</Position22>
|
||||
<Position23>
|
||||
<Filename Value="picturectrls.pas"/>
|
||||
<Caret Line="732" Column="14" TopLine="701"/>
|
||||
<Filename Value="main.pas"/>
|
||||
<Caret Line="1279" Column="24" TopLine="1266"/>
|
||||
</Position23>
|
||||
<Position24>
|
||||
<Filename Value="picturectrls.pas"/>
|
||||
<Caret Line="259" Column="85" TopLine="247"/>
|
||||
<Caret Line="205" Column="19" TopLine="189"/>
|
||||
</Position24>
|
||||
<Position25>
|
||||
<Filename Value="picturectrls.pas"/>
|
||||
<Caret Line="578" Column="90" TopLine="562"/>
|
||||
<Caret Line="788" Column="28" TopLine="762"/>
|
||||
</Position25>
|
||||
<Position26>
|
||||
<Filename Value="picturectrls.pas"/>
|
||||
<Caret Line="170" Column="101" TopLine="162"/>
|
||||
<Caret Line="1177" Column="30" TopLine="1151"/>
|
||||
</Position26>
|
||||
<Position27>
|
||||
<Filename Value="picturectrls.pas"/>
|
||||
<Caret Line="414" Column="39" TopLine="383"/>
|
||||
<Caret Line="1180" Column="25" TopLine="1154"/>
|
||||
</Position27>
|
||||
<Position28>
|
||||
<Filename Value="picturectrls.pas"/>
|
||||
<Caret Line="425" Column="32" TopLine="394"/>
|
||||
<Caret Line="1184" Column="38" TopLine="1158"/>
|
||||
</Position28>
|
||||
<Position29>
|
||||
<Filename Value="picturectrls.pas"/>
|
||||
<Caret Line="733" Column="1" TopLine="719"/>
|
||||
<Caret Line="1432" Column="27" TopLine="1411"/>
|
||||
</Position29>
|
||||
<Position30>
|
||||
<Filename Value="picturectrls.pas"/>
|
||||
<Caret Line="791" Column="39" TopLine="769"/>
|
||||
<Filename Value="DLBitmap.pas"/>
|
||||
<Caret Line="76" Column="33" TopLine="60"/>
|
||||
</Position30>
|
||||
</JumpHistory>
|
||||
</ProjectOptions>
|
||||
|
@ -1,7 +1,7 @@
|
||||
object MainForm: TMainForm
|
||||
Left = 519
|
||||
Left = 135
|
||||
Height = 681
|
||||
Top = 272
|
||||
Top = 135
|
||||
Width = 920
|
||||
Caption = 'Lazarus Image Editor'
|
||||
ClientHeight = 659
|
||||
@ -160,6 +160,8 @@
|
||||
Grouped = True
|
||||
ImageIndex = 5
|
||||
OnClick = ToolBrushClick
|
||||
ParentShowHint = False
|
||||
ShowHint = True
|
||||
Style = tbsCheck
|
||||
end
|
||||
object ToolText: TToolButton
|
||||
@ -169,6 +171,8 @@
|
||||
Grouped = True
|
||||
ImageIndex = 5
|
||||
OnClick = ToolTextClick
|
||||
ParentShowHint = False
|
||||
ShowHint = True
|
||||
Style = tbsCheck
|
||||
end
|
||||
object ToolcolorReplacer: TToolButton
|
||||
@ -178,6 +182,8 @@
|
||||
Grouped = True
|
||||
ImageIndex = 5
|
||||
OnClick = ToolcolorReplacerClick
|
||||
ParentShowHint = False
|
||||
ShowHint = True
|
||||
Style = tbsCheck
|
||||
end
|
||||
end
|
||||
@ -1385,9 +1391,9 @@
|
||||
TabOrder = 5
|
||||
object checkFuzzy: TCheckBox
|
||||
Left = 4
|
||||
Height = 19
|
||||
Height = 23
|
||||
Top = 5
|
||||
Width = 20
|
||||
Width = 24
|
||||
OnChange = checkFuzzyChange
|
||||
TabOrder = 0
|
||||
end
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -858,6 +858,10 @@ begin
|
||||
begin
|
||||
Mask(XX1, YY1, XX2, YY2, [ssLeft]);
|
||||
IsSelection := False;
|
||||
XX1 := 0;
|
||||
XX2 := 0;
|
||||
YY1 := 0;
|
||||
YY2 := 0;
|
||||
end;
|
||||
ActivePictureEdit.Tool := Tool;
|
||||
UpdateToolSettings;
|
||||
|
@ -655,13 +655,14 @@ begin
|
||||
ptPen: Line(X, Y, X, Y, Shift);
|
||||
ptFloodFill: FloodFill(X, Y, Shift);
|
||||
ptMask: begin if MaskTool = mtFloodFill then
|
||||
MaskFloodFill(X, Y, Shift);
|
||||
MaskFloodFill(X, Y, Shift);
|
||||
Canvas.Pen.Style := psDot;
|
||||
Canvas.Pen.Mode := pmXor;
|
||||
IsSelection := True;
|
||||
SeleLeft := X;
|
||||
SeleTop := Y;
|
||||
Mask(XX1, YY1, XX2, YY2, Shift);
|
||||
if (XX1 <> 0) and (XX2 <> 0) and (YY1 <> 0) and (YY2 <> 0) then
|
||||
Mask(XX1, YY1, XX2, YY2, Shift);
|
||||
end;
|
||||
ptColorPick: ColorPick(X, Y, Shift);
|
||||
ptEraser: Eraser(X, Y, Shift);
|
||||
@ -767,7 +768,7 @@ begin
|
||||
|
||||
// Canvas.Pen.Mode := pmNot;
|
||||
Canvas.Pen.Mode := pmNotXor;
|
||||
Canvas.Brush.Style := bsClear;
|
||||
Canvas.Brush.Style := bsSolid;
|
||||
|
||||
S := PictureToClient(Point(X1, Y1));
|
||||
E := PictureToClient(Point(X2, Y2));
|
||||
@ -1171,14 +1172,15 @@ begin
|
||||
Picture.Canvas.Pen.Mode := pmNotXor;
|
||||
Picture.Canvas.Brush.Color := $00EACAB6;
|
||||
//Canvas.Brush.Style := bsClear;
|
||||
Picture.Canvas.Rectangle(X1, Y1, X2, Y2);
|
||||
SelectedDLBMP.Width := Abs(X2 - X1);
|
||||
SelectedDLBMP.Height := Abs(Y2 - Y1);
|
||||
SelectedDLBMP.Canvas.CopyRect(Rect(0, 0, SelectedDLBMP.Width, SelectedDLBMP.Height),
|
||||
Picture.Canvas, Rect(X1, Y1, X2, Y2));
|
||||
// if SelectedDLBMP <> nil then
|
||||
// SelectedDLBMP.CopyToClipboard;
|
||||
// Picture.Canvas.Draw(0,0,SelectedDLBMP);
|
||||
// SelectedDLBMP.CopyToClipboard;
|
||||
//SelectedDLBMP.Canvas.Rectangle(2,2,Width-2,Height-2);
|
||||
// Canvas.Draw(0,0,SelectedDLBMP);
|
||||
Picture.Canvas.Rectangle(X1, Y1, X2, Y2);
|
||||
Picture.Canvas.Pen.Mode := pmCopy;
|
||||
Picture.Canvas.Pen.Style := psSolid;
|
||||
SeleLeft := X1;
|
||||
@ -1412,7 +1414,10 @@ procedure TCustomPictureEdit.Copy;
|
||||
begin
|
||||
if Picture = nil then
|
||||
Exit;
|
||||
Picture.CopyToClipboard;
|
||||
if Tool <> ptMask then
|
||||
Picture.CopyToClipboard
|
||||
else
|
||||
SelectedDLBMP.CopyToClipboard;
|
||||
end;
|
||||
|
||||
procedure TCustomPictureEdit.Paste;
|
||||
@ -1422,7 +1427,10 @@ begin
|
||||
BeginDraw;
|
||||
try
|
||||
//Assert(True, 'Implement Paste');
|
||||
Picture.PasteFromClipboard;
|
||||
SelectedDLBMP.Width:=100;
|
||||
SelectedDLBMP.Height:=100;
|
||||
SelectedDLBMP.PasteFromClipboard;
|
||||
Picture.Canvas.Draw(0, 0, SelectedDLBMP);
|
||||
finally
|
||||
EndDraw;
|
||||
end;
|
||||
|
Reference in New Issue
Block a user