gtk intf: fixed auto realigning of bitmap masks

git-svn-id: trunk@9732 -
This commit is contained in:
mattias 2006-08-18 21:10:29 +00:00
parent 78cdf9f9d1
commit 535bec1a8d
9 changed files with 803 additions and 351 deletions

View File

@ -25,7 +25,7 @@ interface
uses
Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, StdCtrls,
ExtCtrls, Buttons, ButtonPanel, ExtDlgs,
ObjInspStrConsts;
IDEDialogs, ObjInspStrConsts;
type
@ -88,6 +88,7 @@ end;
procedure TGraphicPropertyEditorForm.LoadButtonClick(Sender: TObject);
begin
InitIDEFileDialog(OpenDialog);
if OpenDialog.Execute then
begin
FileName := OpenDialog.FileName;
@ -99,9 +100,11 @@ begin
MessageDlg(oisErrorLoadingImage,
Format(oisErrorLoadingImage2, ['"', FileName, '"', #13, E.Message]),
mtError, [mbOk], 0);
exit;
end;
end;
end;
StoreIDEFileDialog(OpenDialog);
SaveButton.Enabled := False;
if Assigned(Preview.Picture.Graphic) then
@ -111,8 +114,10 @@ end;
procedure TGraphicPropertyEditorForm.SaveButtonClick(Sender: TObject);
begin
InitIDEFileDialog(SaveDialog);
if SaveDialog.Execute then
Preview.Picture.SaveToFile(SaveDialog.FileName);
StoreIDEFileDialog(SaveDialog);
end;
procedure TGraphicPropertyEditorForm.SetModified(const AValue: Boolean);

View File

@ -1198,6 +1198,9 @@ type
write SetTransparentColor default clDefault;
property TransparentMode: TTransparentMode read FTransparentMode
write SetTransparentMode default tmAuto;
{$IFDEF DebugBitmap}
DebugEnabled: boolean;
{$ENDIF}
end;

View File

@ -792,7 +792,7 @@ begin
if OldBytesPerLine>NewBytesPerLine then begin
// compress
for y:=0 to Height-1 do begin
System.Move(OldPos,NewPos,OldBytesPerLine);
System.Move(OldPos^,NewPos^,NewBytesPerLine);
inc(OldPos,OldBytesPerLine);
inc(NewPos,NewBytesPerLine);
end;
@ -803,7 +803,7 @@ begin
for y:=Height-1 downto 0 do begin
dec(OldPos,OldBytesPerLine);
dec(NewPos,NewBytesPerLine);
System.Move(OldPos,NewPos,OldBytesPerLine);
System.Move(OldPos^,NewPos^,OldBytesPerLine);
end;
end;

View File

@ -52,13 +52,14 @@ var
begin
if Source=Self then exit;
if Source is TBitmap then begin
ChangingAll(Self);
//DebugLn('TBitMap.Assign ',ClassName,' ',Source.ClassName);
SrcBitmap:=TBitmap(Source);
// TBitmap can share image data
// -> check if already shared
SrcBitmap:=TBitmap(Source);
if SrcBitmap.FImage=FImage then exit;// already sharing
ChangingAll(Self);
//DebugLn(['TBitMap.Assign Self=',ClassName,' Source=',Source.ClassName,' HandleAllocated=',HandleAllocated,' Canvas=',DbgSName(FCanvas)]);
FTransparent := SrcBitmap.Transparent;
if SrcBitmap.FImage=FImage then exit;
//DebugLn('TBitMap.Assign A RefCount=',FImage.RefCount);
// image is not shared => new image data
@ -69,7 +70,7 @@ begin
// share FImage with assigned graphic
FImage:=SrcBitmap.FImage;
FImage.Reference;
//DebugLn('TBitMap.Assign B ',Width,',',Height,' ',HandleAllocated,' RefCount=',FImage.RefCount);
//DebugLn(['TBitMap.Assign B ',Width,',',Height,' ',HandleAllocated,' RefCount=',FImage.RefCount]);
Changed(Self);
end else if Source is TFPCustomImage then begin
ChangingAll(Self);
@ -783,7 +784,7 @@ end;
procedure TBitmap.WriteStreamWithFPImage(Stream: TStream; WriteSize: boolean;
WriterClass: TFPCustomImageWriterClass);
Procedure DoWriteStreamSize(DestStream: TStream; Size: longint);
procedure DoWriteStreamSize(DestStream: TStream; Size: longint);
begin
//DebugLn('DoWriteStreamSize ',ClassName,' Size=',Size,' WriteSize=',WriteSize);
if WriteSize then
@ -838,11 +839,11 @@ begin
WriterClass:=TFPWriterBMP
else
WriterClass:=TLazWriterXPM;
//debugln('WriteStreamWithFPImage WriterClass=',WriterClass.ClassName,' ',RawImageDescriptionAsString(@RawImage),' MaskSize=',dbgs(RawImage.MaskSize));
//debugln(dbgMemRange(RawImage.Mask,RawImage.MaskSize,
// GetBytesPerLine(RawImage.Description.Width,
// RawImage.Description.AlphaBitsPerPixel,
// RawImage.Description.AlphaLineEnd)));
{debugln('WriteStreamWithFPImage WriterClass=',WriterClass.ClassName,' ',RawImageDescriptionAsString(@RawImage),' MaskSize=',dbgs(RawImage.MaskSize));
debugln(dbgMemRange(RawImage.Mask,RawImage.MaskSize,
GetBytesPerLine(RawImage.Description.Width,
RawImage.Description.AlphaBitsPerPixel,
RawImage.Description.AlphaLineEnd)));}
end;
ImgWriter:=WriterClass.Create;

View File

@ -2786,7 +2786,7 @@ var
BytesPerLine: Integer;
begin
Result:=false;
Width:=SrcRect.Right-SrcRect.Left;
Height:=SrcRect.Bottom-SrcRect.Top;
@ -2841,7 +2841,7 @@ begin
RawImage.MaskSize:=AnImage^.bpl * AnImage^.Height;
{$IFDEF VerboseRawImage}
DebugLn('TGtkWidgetSet.GetRawImageFromGdkWindow G Width=',dbgs(AnImage^.Width),' Height=',dbgs(AnImage^.Height),' BitsPerPixel=',dbgs(RawImage.Description.AlphaBitsPerPixel),' bpl=',dbgs(AnImage^.bpl));
DebugLn(['TGtkWidgetSet.GetRawImageFromGdkWindow G Width=',AnImage^.Width,' Height=',AnImage^.Height,' BitsPerPixel=',RawImage.Description.AlphaBitsPerPixel,' bpl=',AnImage^.bpl,' MaskSize=',RawImage.MaskSize]);
{$ENDIF}
if RawImage.MaskSize<>PtrUInt(AnImage^.bpl) * PtrUInt(AnImage^.Height)
then
@ -2854,6 +2854,11 @@ begin
// gdk_bitmap_create_from_data expects rileByteBoundary
if RawImage.Description.AlphaLineEnd<>rileByteBoundary then begin
{DebugLn(['TGTKWidgetSet.GetRawImageMaskFromGdkBitmap BEFORE ReAlignRawImageLines']);
debugln(dbgMemRange(RawImage.Mask,RawImage.MaskSize,
GetBytesPerLine(RawImage.Description.Width,
RawImage.Description.AlphaBitsPerPixel,
RawImage.Description.AlphaLineEnd)));}
// re align data
ReAlignRawImageLines(RawImage.Mask,RawImage.MaskSize,
RawImage.Description.Width,RawImage.Description.Height,
@ -2861,10 +2866,10 @@ begin
RawImage.Description.AlphaLineEnd,rileByteBoundary);
end;
//debugln(dbgMemRange(RawImage.Mask,RawImage.MaskSize,
// GetBytesPerLine(RawImage.Description.Width,
// RawImage.Description.AlphaBitsPerPixel,
// RawImage.Description.AlphaLineEnd)));
{debugln(dbgMemRange(RawImage.Mask,RawImage.MaskSize,
GetBytesPerLine(RawImage.Description.Width,
RawImage.Description.AlphaBitsPerPixel,
RawImage.Description.AlphaLineEnd)));}
{$IFDEF VerboseRawImage}
DebugLn('TGtkWidgetSet.GetRawImageMaskFromGdkBitmap H ',

View File

@ -1482,6 +1482,8 @@ begin
RaiseGDBException('');
end;}
OnSetInternalColor(x,y,Value);
{if y=Height-1 then
DebugLn(['TLazIntfImage.SetInternalColor x=',x,' y=',y,' ',dbgs(Value),' ',dbgs(GetInternalColor(x,y))]);}
end;
function TLazIntfImage.GetInternalColor(x, y: integer): TFPColor;
@ -1678,7 +1680,8 @@ begin
SetRawImage(ARawImage);
end;
procedure TLazIntfImage.LoadFromBitmap(Bitmap, MaskBitmap: HBitmap; AWidth, AHeight: integer);
procedure TLazIntfImage.LoadFromBitmap(Bitmap, MaskBitmap: HBitmap;
AWidth, AHeight: integer);
var
ARect: TRect;
ARawImage: TRawImage;

View File

@ -137,7 +137,7 @@ object LazDockControlEditorDlg: TLazDockControlEditorDlg
Left = 114
Height = 25
Top = 5
Width = 172
Width = 156
Anchors = [akTop, akLeft, akRight]
AutoCompleteText = [cbactEndOfLineComplete, cbactSearchAscending]
BorderSpacing.Left = 4
@ -183,55 +183,98 @@ object LazDockControlEditorDlg: TLazDockControlEditorDlg
Width = 25
Color = clBtnFace
Glyph.Data = {
FF0500002F2A2058504D202A2F0A7374617469632063686172202A6772617068
69635B5D203D207B0A2232322032322036312031222C0A222E2063204E6F6E65
222C0A222C20632023464646464646222C0A222D20632023424444374137222C
0A222A20632023334237333034222C0A226120632023333937333038222C0A22
6220632023334237373033222C0A226320632023433744464146222C0A226420
632023433644464144222C0A226520632023414644373843222C0A2266206320
23383742443532222C0A226720632023383542463533222C0A22682063202338
3742463537222C0A226920632023384442443542222C0A226A20632023384542
443541222C0A226B20632023383642443537222C0A226C206320234244444541
35222C0A226D20632023334237373034222C0A226E2063202338364237344622
2C0A226F20632023383442373446222C0A227020632023383442373445222C0A
227120632023424444363944222C0A227220632023334437373033222C0A2273
20632023374242463339222C0A227420632023374642463344222C0A22752063
2023353738433231222C0A227620632023413544373742222C0A227720632023
384443453445222C0A227820632023373342463242222C0A2279206320233737
42463331222C0A227A20632023373342463239222C0A22412063202336374237
3146222C0A224220632023354641463133222C0A224320632023344539453036
222C0A224420632023344238363134222C0A224520632023394543463733222C
0A224620632023384343463445222C0A224720632023363342463046222C0A22
4820632023363342373045222C0A224920632023354642353043222C0A224A20
632023354241463041222C0A224B20632023353641353038222C0A224C206320
23353239443036222C0A224D20632023353239463039222C0A224E2063202341
3543463742222C0A224F20632023333937333034222C0A225020632023354241
463042222C0A225120632023353641373039222C0A2252206320233533394630
37222C0A225320632023303030303030222C0A22542063202333443737303822
2C0A225520632023394644373642222C0A225620632023414444373834222C0A
225720632023323534373034222C0A225820632023334437373034222C0A2259
20632023374241463436222C0A225A20632023413744373733222C0A22302063
2023364242373145222C0A223120632023313732423030222C0A223220632023
363739443335222C0A223320632023413744363737222C0A2234206320234144
44363834222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C
0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E
2E2E2C2C2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2C2E2E2E2E2E
2E2E2E2E2E2C2C2C2C2C2C2C222C0A222E2E2E2E2E2E2E2E2E2E2E2D2A2E2E2E
2E2E2E2E2E2E222C0A222E2E2E2C2E2E2E2E2E2E2E2E2E2E2E2E2E2C2C2C2C2E
222C0A222E2E2E2E2E2E61622E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222C2C
2C2C2C2E2E2E2E2E2E2E2E2E63642E2E2E2E2E2E222C0A222E2E2E2E2E2E2E65
666768696A6A69686B6C6D2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E
6E6F70716D2C2C2C222C0A222C2C722E2E2E73742E2E2E2E2E2E2E2E2E2E2E2E
2E2C222C0A222C2C7275767778797A41422E2E2E43432E2E2E2E2E2E222C0A22
2E2E2E6D4445464748494A4B4C4343434D4E4F2E2E2E222C0A222E2E2E2E2E2E
2E2E2E2E5051524343434D4E4F53532C222C0A222C2C2C2E2E2E542E552E2E56
2E2E2E2E2E2E4F535353222C0A222C2C2C5353535758595A302E2E2E2E2E2A2A
2E2E2E2E222C0A222E2E2E53535353312A3233342A5353535353532E2E2E222C
0A222C2E2E532E2E2E2E2E2E2E2E2E535353535353535353222C0A222C2C2C2E
2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222C2C2C2C535353535353
532E2E2E2E53535353535353222C0A222E2E2E2E2E2E2E535353535353535353
5353532E2E2E222C0A222E2E2E2C2E2E2E2E2E2E2E2E2E2E2E2E53532C2C2C2E
227D0A
610B00002F2A2058504D202A2F0A7374617469632063686172202A6772617068
69635B5D203D207B0A223232203232203131332032222C0A222E2E2063204E6F
6E65222C0A222E2C20632023334237373034222C0A222E2D2063202334413746
3135222C0A222E2A20632023334237333034222C0A222E612063202333423737
3033222C0A222E6220632023354138433239222C0A222E632063202342444437
4137222C0A222E6420632023364639463346222C0A222E652063202343364446
4144222C0A222E6620632023434645374237222C0A222E672063202337464146
3536222C0A222E6820632023424644454135222C0A222E692063202339464345
3742222C0A222E6A20632023433644454146222C0A222E6B2063202333443737
3035222C0A222E6C20632023334237373036222C0A222E6D2063202338464244
3642222C0A222E6E20632023423744373943222C0A222E6F2063202339344246
3633222C0A222E7020632023384642463633222C0A222E712063202343374446
4146222C0A222E7220632023433744454146222C0A222E732063202334333742
3044222C0A222E7420632023394443373742222C0A222E752063202341464437
3843222C0A222E7620632023383742443532222C0A222E772063202338354246
3533222C0A222E7820632023383742463537222C0A222E792063202338444244
3542222C0A222E7A20632023384542443541222C0A222E412063202338364244
3537222C0A222E4220632023424444454135222C0A222E432063202334413836
3137222C0A222E4420632023413743453836222C0A222E452063202339464346
3737222C0A222E4620632023374642443436222C0A222E472063202338354244
3441222C0A222E4820632023383642463442222C0A222E492063202338364244
3446222C0A222E4A20632023383642373446222C0A222E4B2063202338374244
3533222C0A222E4C20632023383442373446222C0A222E4D2063202338344237
3445222C0A222E4E20632023424444363944222C0A222E4F2063202333443737
3033222C0A222E5020632023354138453237222C0A222E512063202341464436
3835222C0A222E5220632023393543453545222C0A222E532063202337424246
3339222C0A222E5420632023374642463344222C0A222E552063202337464246
3433222C0A222E5620632023374642443437222C0A222E572063202337424235
3433222C0A222E5820632023373341463339222C0A222E592063202336424146
3246222C0A222E5A20632023364641463331222C0A222E302063202337334146
3337222C0A222E3120632023374242373432222C0A222E322063202335373843
3231222C0A222E3320632023413544373742222C0A222E342063202338444345
3445222C0A222E3520632023373342463242222C0A222E362063202337374246
3331222C0A222E3720632023373342463239222C0A222E382063202336374237
3146222C0A222E3920632023354641463133222C0A222E402063202335324135
3037222C0A222E2320632023344539453036222C0A222E3B2063202335323943
3043222C0A222E3A20632023413743453837222C0A222E3D2063202334423836
3134222C0A222E2B20632023394543463733222C0A222E252063202338434346
3445222C0A222E2420632023363342463046222C0A222E282063202336334237
3045222C0A222E2920632023354642353043222C0A222E5B2063202335424146
3041222C0A222E5D20632023353641353038222C0A222C2E2063202335323944
3036222C0A222C2C20632023353239463039222C0A222C2D2063202341354346
3742222C0A222C2A20632023333937333034222C0A222C612063202334333742
3045222C0A222C6220632023393743463637222C0A222C632063202339374436
3546222C0A222C6420632023363742443132222C0A222C652063202336334235
3044222C0A222C6620632023354241463042222C0A222C672063202335364137
3039222C0A222C6820632023353339463037222C0A222C692063202333443737
3038222C0A222C6A20632023384643363541222C0A222C6B2063202339464437
3642222C0A222C6C20632023364242463137222C0A222C6D2063202335454235
3043222C0A222C6E20632023414444373834222C0A222C6F2063202341354346
3746222C0A222C7020632023413743453746222C0A222C712063202333443737
3034222C0A222C7220632023374241463436222C0A222C732063202341374437
3733222C0A222C7420632023364242373145222C0A222C752063202341444436
3834222C0A222C7620632023334237373035222C0A222C772063202333393733
3033222C0A222C7820632023363739443335222C0A222C792063202341374436
3737222C0A222C7A20632023333736463035222C0A222C412063202335363843
3235222C0A222C4220632023413543453737222C0A222C432063202333333637
3033222C0A222C4420632023344138343139222C0A222C452063202333373733
3033222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E
2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E
2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2C
2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E
2E2E2E2E2E2E2E2E2E2E2E2E2E2D2E2A2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E612E622E632E2A
2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E
2E2E2E2E2E2E2E2C2E642E652E662E2A2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E612E672E682E692E6A2E6B
2E2A2E2A2E2A2E2A2E2A2E612E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E
2E2E2E6C2E6D2E6E2E6F2E702E712E722E722E712E652E6A2E682E2C2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E732E742E752E762E772E782E792E7A
2E7A2E792E782E412E422E2C2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2C2E43
2E442E452E462E472E482E492E4A2E4B2E4B2E4A2E4C2E4D2E4E2E2C2E2E2E2E
2E2E222C0A222E2E2E2E2E4F2E502E512E522E532E542E552E462E562E572E58
2E592E5A2E302E312E6E2E2C2E2E2E2E2E2E222C0A222E2E2E2E2E4F2E322E33
2E342E352E362E372E382E392E402E232E232E232E232E3B2E3A2E2C2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2C2E3D2E2B2E252E242E282E292E5B2E5D2C2E
2E232E232E232C2C2C2D2C2A2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E
2C612C622C632C642C652C662C672C682E232E232E232C2C2C2D2C2A2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2C692C6A2C6B2C6C2C6D2C6E2C6F
2C702C702C702C702C2D2C2A2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E
2E2E2E2E2C712C722C732C742C752C762E2A2E2A2E2A2E2A2E2A2C772E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2A2C782C792C752E2A
2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E
2E2E2E2E2E2E2E2E2C7A2C412C422C2A2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2C432C442E2A
2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E
2E2E2E2E2E2E2E2E2E2E2E2E2E2E2C452E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E
2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E
2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E
2E2E227D0A
}
NumGlyphs = 0
OnClick = EnlargeLeftSpeedButtonClick
@ -245,53 +288,93 @@ object LazDockControlEditorDlg: TLazDockControlEditorDlg
Width = 25
Color = clBtnFace
Glyph.Data = {
D20500002F2A2058504D202A2F0A7374617469632063686172202A6772617068
69635B5D203D207B0A2232322032322035382031222C0A222E2063204E6F6E65
222C0A222C20632023464646464646222C0A222D20632023334237373034222C
0A222A20632023424644454135222C0A226120632023334237333034222C0A22
6220632023424444373944222C0A226320632023433644464137222C0A226420
632023393742463646222C0A226520632023334437373037222C0A2266206320
23423744373945222C0A226720632023383442443533222C0A22682063202338
3742463537222C0A226920632023384442443542222C0A226A20632023384542
443541222C0A226B20632023414644373843222C0A226C206320233836423734
46222C0A226D20632023383642443446222C0A226E2063202338364246344222
2C0A226F20632023383542443441222C0A227020632023413543463737222C0A
227120632023414644373837222C0A227220632023344638353142222C0A2273
20632023303030303030222C0A227420632023373341443335222C0A22752063
2023364241463246222C0A227620632023334437373033222C0A227720632023
413743463746222C0A227820632023353739453130222C0A2279206320233445
39453036222C0A227A20632023373742443333222C0A22412063202337374246
3244222C0A224220632023394443363737222C0A224320632023353339443044
222C0A224420632023344639433036222C0A224520632023353641353038222C
0A224620632023354241463041222C0A224720632023354642353043222C0A22
4820632023363342373045222C0A224920632023384443463441222C0A224A20
632023413544363733222C0A224B20632023344538373137222C0A224C206320
23334237373033222C0A224D20632023353641373039222C0A224E2063202335
4241463042222C0A224F20632023363342353046222C0A225020632023393444
363541222C0A225120632023394443463642222C0A2252206320233433374230
46222C0A225320632023333536423034222C0A22542063202341374345374622
2C0A225520632023354241443044222C0A225620632023363742353145222C0A
225720632023333937333034222C0A225820632023364239443339222C0A2259
20632023304631463030222C0A225A20632023354138453239222C0A22302063
2023333536463033222C0A223120632023303730453030222C0A222E2E2E2E2E
2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E
2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2C2C2E2E2E2E2E2E2E2E2E
2E2E2E2E2E222C0A222E2C2E2E2E2E2E2E2E2E2E2E2E2E2E2C2C2C2C2C2C2C22
2C0A222E2E2E2E2E2E2E2E2E2D2A2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E
2C2E2E2E2E2E2E2E2E2E2E2E2E2E2C2C2C2C2E222C0A222E2E2E2E2E2E61612E
2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2C2C6162632E2E2E2E2E2E2E2E64
652E2E2E2E2E2E222C0A222E2E2E2D66676768696A6A6968686B2E2E2E2E2E2E
2E222C0A222E2E2E2E2E2E2E2E2E2E2E6C6D6E6F7071722D732C2C222C0A222E
2E2E2E2E2E74752E2E2E2E2E2E2E2E2E2E2E762C2C222C0A222C2C2C2D777879
79792E2E2E2E2E7A412E2E2E2E2E2E222C0A222E2E2E2D424379797979444546
4748494A4B4C2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E4D4E4F5051525373
73732C222C0A222C2C2C612E2E542E542E2E552E2E2E2E2E2E2E737373222C0A
222C2C2C4C61616161612D54562E2E2E2E73732E2E2E2E222C0A222E2E2E7373
73737373575470585759737373732E2E2E222C0A222C2E2E732E2E2E2E2E2E2E
5A30317373737373737373222C0A222C2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E
2E2E737373222C0A222C2C2C2C737373732E2E2E2E2E2E2E7373737373737322
2C0A222E2E2E2C2C737373737373737373732E2E2E2E2E2E2E222C0A222E2E2E
2C2E2E2E2E2E2E2E2E2E2E2E2E2E732C2C2C2C227D0A
C10A00002F2A2058504D202A2F0A7374617469632063686172202A6772617068
69635B5D203D207B0A223232203232203130332032222C0A222E2E2063204E6F
6E65222C0A222E2C20632023334237373034222C0A222E2D2063202334413746
3135222C0A222E2A20632023424644454135222C0A222E612063202335463846
3244222C0A222E6220632023334237373033222C0A222E632063202343454446
4237222C0A222E6420632023433744454146222C0A222E652063202337333945
3436222C0A222E6620632023334237333034222C0A222E672063202333443737
3034222C0A222E6820632023433644464144222C0A222E692063202341374345
3746222C0A222E6A20632023433644464137222C0A222E6B2063202338364146
3542222C0A222E6C20632023424444373944222C0A222E6D2063202343364445
4146222C0A222E6E20632023433744464146222C0A222E6F2063202339374337
3642222C0A222E7020632023393743373637222C0A222E712063202342374436
3945222C0A222E7220632023393742463646222C0A222E732063202333443737
3037222C0A222E7420632023423744373945222C0A222E752063202338344244
3533222C0A222E7620632023383742463537222C0A222E772063202338444244
3542222C0A222E7820632023384542443541222C0A222E792063202341464437
3843222C0A222E7A20632023413543453746222C0A222E412063202334363746
3046222C0A222E4220632023423544363937222C0A222E432063202337464237
3442222C0A222E4420632023374642353441222C0A222E452063202338344237
3446222C0A222E4620632023383642373446222C0A222E472063202338374244
3533222C0A222E4820632023383642443446222C0A222E492063202338364246
3442222C0A222E4A20632023383542443441222C0A222E4B2063202341354346
3737222C0A222E4C20632023414644373837222C0A222E4D2063202334463835
3142222C0A222E4E20632023423544373936222C0A222E4F2063202337424237
3433222C0A222E5020632023373341443335222C0A222E512063202336424146
3246222C0A222E5220632023373341463337222C0A222E532063202337424237
3436222C0A222E5420632023374242353437222C0A222E552063202337464244
3437222C0A222E5620632023374642443433222C0A222E572063202337464246
3433222C0A222E5820632023374642463344222C0A222E592063202339374345
3545222C0A222E5A20632023414644363844222C0A222E302063202335463935
3242222C0A222E3120632023334437373033222C0A222E322063202341374346
3746222C0A222E3320632023353739453130222C0A222E342063202334453945
3036222C0A222E3520632023354241353131222C0A222E362063202336374146
3145222C0A222E3720632023364642373242222C0A222E382063202337374244
3333222C0A222E3920632023373742463244222C0A222E402063202338444345
3446222C0A222E2320632023413744373746222C0A222E3B2063202335413846
3233222C0A222E3A20632023394443363737222C0A222E3D2063202335333944
3044222C0A222E2B20632023344639433036222C0A222E252063202335364135
3038222C0A222E2420632023354241463041222C0A222E282063202335464235
3043222C0A222E2920632023363342373045222C0A222E5B2063202338444346
3441222C0A222E5D20632023413544363733222C0A222C2E2063202334453837
3137222C0A222C2C20632023353339463037222C0A222C2D2063202335364137
3039222C0A222C2A20632023354241463042222C0A222C612063202336334235
3046222C0A222C6220632023393444363541222C0A222C632063202339444346
3642222C0A222C6420632023343337423046222C0A222C652063202341354346
3746222C0A222C6620632023354241443044222C0A222C672063202336334237
3134222C0A222C6820632023394644363637222C0A222C692063202338464336
3542222C0A222C6A20632023334637373039222C0A222C6B2063202336374235
3145222C0A222C6C20632023394644373733222C0A222C6D2063202337424235
3442222C0A222C6E20632023333937333034222C0A222C6F2063202336423944
3339222C0A222C7020632023394343363737222C0A222C712063202335413845
3239222C0A222C7220632023333536463033222C0A222C732063202334423835
3139222C0A222C7420632023333336373033222C0A222C752063202333393733
3033222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E
2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E
2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2C2E2E2E2E2E2E
2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E
2E2E2E2E2E2E2E2E2E2C2E2D2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2C2E2A2E612E62
2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E
2E2E2E2E2E2E2E2E2E2C2E632E642E652E2C2E2E2E2E2E2E2E2E2E2E2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E622E662E662E662E662E662E672E682E692E6A
2E6B2E622E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E662E6C
2E6A2E6D2E682E6E2E642E642E6F2E702E712E722E732E2E2E2E2E2E2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2C2E742E752E752E762E772E782E782E772E76
2E762E792E7A2E412E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E662E42
2E432E442E452E462E472E472E462E482E492E4A2E4B2E4C2E4D2E2C2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2C2E4E2E4F2E502E512E512E522E532E542E55
2E562E572E582E592E5A2E302E312E2E2E2E222C0A222E2E2E2E2E2E2E2C2E32
2E332E342E342E342E342E342E352E362E372E382E392E402E232E3B2E312E2E
2E2E222C0A222E2E2E2E2E2E2E2C2E3A2E3D2E342E342E342E342E2B2E252E24
2E282E292E5B2E5D2C2E2E622E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2C2E3A
2E3D2E342E342E342E342C2C2C2D2C2A2C612C622C632C642E2E2E2E2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E662E3A2E692E692E692E692E692C652C662C67
2C682C692C6A2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E622E66
2E662E662E662E662E2C2E692C6B2C6C2C6D2E2C2E2E2E2E2E2E2E2E2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2C6E2E692E4B2C6F
2C6E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E
2E2E2E2E2E2E2E2E2E662C702C712C722E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E662C732C742E2E
2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E
2E2E2E2E2E2E2E2E2C752E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E
2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E
2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E
2E2E227D0A
}
NumGlyphs = 0
OnClick = EnlargeRightSpeedButtonClick
@ -305,51 +388,99 @@ object LazDockControlEditorDlg: TLazDockControlEditorDlg
Width = 25
Color = clBtnFace
Glyph.Data = {
870500002F2A2058504D202A2F0A7374617469632063686172202A6772617068
69635B5D203D207B0A2232322032322035332031222C0A222E2063204E6F6E65
222C0A222C20632023464646464646222C0A222D20632023363339363333222C
0A222A20632023354138463235222C0A226120632023334237333035222C0A22
6220632023334437373036222C0A226320632023333737373036222C0A226420
632023413743453835222C0A226520632023373341463342222C0A2266206320
23364241443244222C0A226720632023363341353146222C0A22682063202335
3739463133222C0A226920632023384542443541222C0A226A20632023364641
373346222C0A226B20632023334237373034222C0A226C206320233432383430
30222C0A226D20632023354138453242222C0A226E2063202342444436394322
2C0A226F20632023384543363545222C0A227020632023374642443437222C0A
227120632023424644463944222C0A227220632023424644453946222C0A2273
20632023424444463944222C0A227420632023373742463333222C0A22752063
2023363742353143222C0A227620632023354542373045222C0A227720632023
354542373043222C0A227820632023354642353043222C0A2279206320233545
41463043222C0A227A20632023413544363742222C0A22412063202341374436
3746222C0A224220632023413744363834222C0A224320632023363342443045
222C0A224420632023363342373045222C0A224520632023414644373746222C
0A224620632023343237463043222C0A224720632023334237373035222C0A22
4820632023333937373034222C0A224920632023334237333034222C0A224A20
632023364243363131222C0A224B20632023414444453836222C0A224C206320
23363742443130222C0A224D20632023364243373131222C0A224E2063202336
4643453133222C0A224F20632023363742463130222C0A225020632023364243
373132222C0A225120632023364643463134222C0A2252206320233733443731
35222C0A225320632023414644463834222C0A22542063202333443737303822
2C0A225520632023364643463133222C0A225620632023414444453834222C0A
225720632023303030303030222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E
2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E
222C0A222E2E2E2E2E2E2C2C2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E
2E2E2E2E2E2E2E2E2E2E2E2E2E2C2C2C2C2C2C2C222C0A222E2E2E2E2E2E2E2E
2E2E2D2A2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2C2E2E2E2E2E2E2E2E2E2E
2E2E2E2E2C2C2C2E222C0A222E2E2E2E2E2E2C612E2E2E2E2E2E2E2E2E2E2E2E
2E2E222C0A222E2C2C2C2C2E2E2E2E2E2E2E2E2E62632E2E2E2E2E2E222C0A22
2E2E2E2E2E2E2E2E6465666768692E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E
2E2E2E2E2E2E2E2E2E6A6B6C2C2C2C2C222C0A222E2E2E2E2E2E2E2E2E2E2E2E
2E2E2E2E2E2E2E2E2E2E222C0A222C2C2C6B6D6E6F702E2E2E2E2E2E2E2E2E2E
2E2E2E2E222C0A222E2E2E2E2E7172737475767778797A41422E2E2E2E2E222C
0A222E2E2E2E2E2E2E2E2E2E2E2E434445464748496B2C2C222C0A222C2C2E2E
2E2E492E432E2E4A2E2E2E2E2E2E2E2E2C2C222C0A222C2C2C2C2C2C494B4C4D
4E2E2E2E2E2E2C2C2E2E2E2E222C0A222E2E2E2C2C2C494B4F50515251505354
2C2C2C2E2E2E222C0A222C2E2E2C2E2E2E2E2E2E5055504A56542C2C2C2C2C2C
222C0A222C2C2C2C2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222C2C
5757575749492E2E2E2E2E2E2E4957575757572C222C0A222E2E2E2E2E2E5757
57575757575757572E2E2E2E2E2E222C0A222E2E2E2C2E2E2E2E2E2E2E2E2E2E
575757572C2C2C2C227D0A
910B00002F2A2058504D202A2F0A7374617469632063686172202A6772617068
69635B5D203D207B0A223232203232203131362032222C0A222E2E2063204E6F
6E65222C0A222E2C20632023334437373033222C0A222E2D2063202333423737
3034222C0A222E2A20632023363339363333222C0A222E612063202335413846
3235222C0A222E6220632023334237373033222C0A222E632063202335363836
3233222C0A222E6420632023414643453845222C0A222E652063202341354345
3746222C0A222E6620632023344138363136222C0A222E672063202334373746
3135222C0A222E6820632023383742443533222C0A222E692063202338364244
3533222C0A222E6A20632023393743373646222C0A222E6B2063202334333742
3041222C0A222E6C20632023343237423042222C0A222E6D2063202341374337
3836222C0A222E6E20632023393643373646222C0A222E6F2063202336424146
3246222C0A222E7020632023363341353231222C0A222E712063202338364246
3537222C0A222E7220632023384442443545222C0A222E732063202333443737
3036222C0A222E7420632023393742443737222C0A222E752063202341374345
3835222C0A222E7620632023373341463342222C0A222E772063202336424144
3244222C0A222E7820632023363341353146222C0A222E792063202335373946
3133222C0A222E7A20632023384542443541222C0A222E412063202337464146
3445222C0A222E4220632023383441463546222C0A222E432063202342354437
3936222C0A222E4420632023374242353437222C0A222E452063202337334144
3337222C0A222E4620632023363741443239222C0A222E472063202335454137
3143222C0A222E4820632023353739453130222C0A222E492063202335333943
3042222C0A222E4A20632023393743373637222C0A222E4B2063202336464137
3346222C0A222E4C20632023364639443433222C0A222E4D2063202342444437
3946222C0A222E4E20632023383442443533222C0A222E4F2063202337374237
3344222C0A222E5020632023373342353333222C0A222E512063202336424144
3237222C0A222E5220632023363341443142222C0A222E532063202335414135
3046222C0A222E5420632023353241353037222C0A222E552063202335414137
3133222C0A222E5620632023394543373646222C0A222E572063202336333936
3246222C0A222E5820632023354138453242222C0A222E592063202342444436
3943222C0A222E5A20632023384543363545222C0A222E302063202337464244
3437222C0A222E3120632023373742373339222C0A222E322063202337334235
3246222C0A222E3320632023364242373233222C0A222E342063202335464144
3132222C0A222E3520632023354241443042222C0A222E362063202335374144
3041222C0A222E3720632023353741353039222C0A222E382063202336334146
3144222C0A222E3920632023394443453737222C0A222E402063202335333844
3231222C0A222E2320632023344138353138222C0A222E3B2063202341464436
3934222C0A222E3A20632023424644463944222C0A222E3D2063202342464445
3946222C0A222E2B20632023424444463944222C0A222E252063202337374246
3333222C0A222E2420632023363742353143222C0A222E282063202335454237
3045222C0A222E2920632023354542373043222C0A222E5B2063202335464235
3043222C0A222E5D20632023354541463043222C0A222C2E2063202341354436
3742222C0A222C2C20632023413744363746222C0A222C2D2063202341374436
3834222C0A222C2A20632023394343373737222C0A222C612063202334423746
3136222C0A222C6220632023334237373035222C0A222C632063202333443742
3035222C0A222C6420632023424444453936222C0A222C652063202336374237
3139222C0A222C6620632023363342373045222C0A222C672063202336334244
3045222C0A222C6820632023363342463046222C0A222C692063202341464437
3746222C0A222C6A20632023343237463043222C0A222C6B2063202333393737
3034222C0A222C6C20632023334237333034222C0A222C6D2063202342354445
3844222C0A222C6E20632023363742443130222C0A222C6F2063202336374337
3131222C0A222C7020632023364243363131222C0A222C712063202341444445
3746222C0A222C7220632023334437373038222C0A222C732063202341444445
3836222C0A222C7420632023364243373131222C0A222C752063202336464345
3133222C0A222C7620632023414444453834222C0A222C772063202336374246
3130222C0A222C7820632023364243373132222C0A222C792063202336464346
3134222C0A222C7A20632023373344373135222C0A222C412063202341464446
3834222C0A222C4220632023414444463836222C0A222C432063202336374244
3046222C0A222C4420632023364643463133222C0A222C452063202341464445
3836222C0A222C4620632023414644453837222C0A222C472063202342354445
3837222C0A222C4820632023423544463834222C0A222E2E2E2E2E2E2E2E2E2E
2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E
2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E
2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2C2E2D2E2E
2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E
2E2E2E2E2E2E2E2E2E2E2E2A2E612E622E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E632E642E652E66
2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E
2E2E2E2E2E2E2E672E642E682E692E6A2E6B2E2E2E2E2E2E2E2E2E2E2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E6C2E6D2E6E2E6F2E702E71
2E722E732E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E
2E2E2E622E742E752E762E772E782E792E7A2E412E2D2E2E2E2E2E2E2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2D2E422E432E442E452E462E472E48
2E492E4A2E4B2E2D2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2C
2E4C2E4D2E4E2E4F2E502E512E522E532E542E552E562E572E2D2E2E2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2E2E582E592E5A2E302E312E322E332E342E35
2E362E372E382E392E402E2D2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E232E3B
2E3A2E3D2E2B2E252E242E282E292E5B2E5D2C2E2C2C2C2D2C2A2C612E2E2E2E
2E2E222C0A222E2E2E2E2E2D2C622C622C622C632C642C652C662C672C682C67
2C662C692C6A2C622C6B2C6C2E2D2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E
2E2E2C6C2C6D2C672C6E2C6F2C702C6F2C6E2C712C722E2E2E2E2E2E2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2C6C2C732C6E2C742C752C752C75
2C742C762C722E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E
2E2E2C6C2C732C772C782C792C7A2C792C782C412C722E2E2E2E2E2E2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2C6C2C422C432C702C782C442C78
2C702C762C722E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E
2E2E2C6C2C732C452C462C472C482C472C462C452C722E2E2E2E2E2E2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2C6C2C6C2C6C2C6C2C6C2C6C2C6C
2C6C2C6C2C6C2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E
2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E
2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E227D0A
}
NumGlyphs = 0
OnClick = EnlargeTopSpeedButtonClick
@ -363,56 +494,96 @@ object LazDockControlEditorDlg: TLazDockControlEditorDlg
Width = 25
Color = clBtnFace
Glyph.Data = {
1D0600002F2A2058504D202A2F0A7374617469632063686172202A6772617068
69635B5D203D207B0A2232322032322036332031222C0A222E2063204E6F6E65
222C0A222C20632023334237373034222C0A222D20632023334237333034222C
0A222A20632023464646464646222C0A226120632023433644464137222C0A22
6220632023433644454137222C0A226320632023383542373446222C0A226420
632023374242373436222C0A226520632023373341463342222C0A2266206320
23364641463331222C0A226720632023363741373237222C0A22682063202335
4541373143222C0A226920632023413543453835222C0A226A20632023413543
453834222C0A226B20632023413543463746222C0A226C206320233344373730
35222C0A226D20632023424644454135222C0A226E2063202337464244344222
2C0A226F20632023374242373433222C0A227020632023373742353337222C0A
227120632023373342353331222C0A227220632023363742353231222C0A2273
20632023353741373042222C0A227420632023413744363834222C0A22752063
2023414644373835222C0A227620632023413744363746222C0A227720632023
394543373733222C0A227820632023343637463131222C0A2279206320233339
37373033222C0A227A20632023334437373033222C0A22412063202336463946
3432222C0A224220632023424444463944222C0A224320632023384443373533
222C0A224420632023374242463342222C0A224520632023363342373133222C
0A224620632023363342443046222C0A224720632023363742443130222C0A22
4820632023353735373030222C0A224920632023374641443532222C0A224A20
632023423544453844222C0A224B20632023363742373142222C0A224C206320
23363742463130222C0A224D20632023364243363132222C0A224E2063202336
4243373132222C0A224F20632023364643373136222C0A225020632023413744
453646222C0A225120632023374242353437222C0A2252206320233432383430
30222C0A225320632023373343453134222C0A22542063202339444446363322
2C0A225520632023384643373541222C0A225620632023333537373030222C0A
225720632023334637333030222C0A225820632023384543373545222C0A2259
20632023334237333035222C0A225A20632023343337423042222C0A22302063
2023394543453642222C0A223120632023334237373033222C0A223220632023
343637463132222C0A223320632023413744373733222C0A2234206320234144
44373742222C0A223520632023353238453145222C0A22362063202330303030
3030222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A22
2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E
2C2D2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222A2A2A2A2A2A2D612E2E2E2E
2E2E2E2D2A2A2A2A2A2A222C0A222E2E2E2E2E2E2D62636465666768692D2E2E
2E2E2E2E222C0A222E2E2E2A2E2E2E2E2E2E2E2E2E2E6A2D2A2A2A2A2A2A222C
0A222E2E2E2E2E2E2D612E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222A2A2A2A
2A2A2D612E2E2E2E2E2E6B2D2E2E2E2E2E2E222C0A222E2E2E2E2E2E6C6D6E6F
70717273746C2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E7576
767778792A2A222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2C2A2A2A
222C0A222A2A2A2A7A414243444546472E2E2E2E2E2E2E2E2E2E222C0A222E2E
2E2A482C494A4B464C4D4E4F50516C522A2E2E2E222C0A222E2E2E2E2E2E2E2E
2E2E2E2E5354556C562A2A2A2A2A222C0A222A2A2A2E2E2E572E582E2E4E2E2E
2E2E2E2E2E2E2A2A222C0A222A2A2A2A2A2A2A595A302E2E2E2E2E2E2A2A2E2E
2E2E222C0A222E2E2E2E2E2A2A2A31323334352C2A2A2A2E2E2E2E2E222C0A22
2A2E2E2A2E2E2E2E2E2E2E2E2E2E2A2A2A2A2A2A2A2A222C0A222E2E2E2E2E2E
2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222A2A36363636362E2E2E2E2E
2E2E2E3636363636362A222C0A222E2E2E2E2E2E2E2E3636363636362E2E2E2E
2E2E2E2E222C0A222E2E2E2A2E2E2E2E2E2E2E2E2E2E2E2E2E362A2A2A2E227D
0A
310B00002F2A2058504D202A2F0A7374617469632063686172202A6772617068
69635B5D203D207B0A223232203232203131302032222C0A222E2E2063204E6F
6E65222C0A222E2C20632023334237373034222C0A222E2D2063202333423733
3034222C0A222E2A20632023433644464137222C0A222E612063202342444446
4137222C0A222E6220632023424444453944222C0A222E632063202342374436
3943222C0A222E6420632023423744363937222C0A222E652063202341464436
3845222C0A222E6620632023414643463844222C0A222E672063202341374345
3836222C0A222E6820632023433644454137222C0A222E692063202338354237
3446222C0A222E6A20632023374242373436222C0A222E6B2063202337334146
3342222C0A222E6C20632023364641463331222C0A222E6D2063202336374137
3237222C0A222E6E20632023354541373143222C0A222E6F2063202341354345
3835222C0A222E7020632023413543453834222C0A222E712063202338344237
3445222C0A222E7220632023354641373142222C0A222E732063202341374346
3746222C0A222E7420632023374642373442222C0A222E752063202337424237
3432222C0A222E7620632023373342353339222C0A222E772063202336374146
3237222C0A222E7820632023354241353136222C0A222E792063202341354346
3746222C0A222E7A20632023334437373035222C0A222E412063202342464445
4135222C0A222E4220632023374642443442222C0A222E432063202337424237
3433222C0A222E4420632023373742353337222C0A222E452063202337334235
3331222C0A222E4620632023363742353231222C0A222E472063202335374137
3042222C0A222E4820632023413744363834222C0A222E492063202335323835
3146222C0A222E4A20632023424444454135222C0A222E4B2063202343364446
4146222C0A222E4C20632023433744464137222C0A222E4D2063202338344244
3441222C0A222E4E20632023374642463432222C0A222E4F2063202337424246
3339222C0A222E5020632023364642443239222C0A222E512063202335464235
3046222C0A222E5220632023354241463042222C0A222E532063202341464437
3835222C0A222E5420632023413744363746222C0A222E552063202339454337
3733222C0A222E5620632023343637463131222C0A222E572063202336333935
3331222C0A222E5820632023393543373633222C0A222E592063202338374244
3445222C0A222E5A20632023383542463437222C0A222E302063202337424246
3342222C0A222E3120632023364242443146222C0A222E322063202336334235
3045222C0A222E3320632023363342373045222C0A222E342063202336334237
3131222C0A222E3520632023364642463237222C0A222E362063202341354437
3742222C0A222E3720632023353238453146222C0A222E382063202333443737
3033222C0A222E3920632023364639463432222C0A222E402063202342444446
3944222C0A222E2320632023384443373533222C0A222E3B2063202336334237
3133222C0A222E3A20632023363342443046222C0A222E3D2063202336374244
3130222C0A222E2B20632023363742463130222C0A222E252063202336424246
3141222C0A222E2420632023413544363737222C0A222E282063202336373943
3331222C0A222E2920632023374641443532222C0A222E5B2063202342354445
3844222C0A222E5D20632023363742373142222C0A222C2E2063202336424336
3132222C0A222C2C20632023364243373132222C0A222C2D2063202336464337
3136222C0A222C2A20632023413744453646222C0A222C612063202337424235
3437222C0A222C6220632023383742373541222C0A222C632063202339374346
3633222C0A222C6420632023363742443131222C0A222C652063202336424336
3131222C0A222C6620632023364643453133222C0A222C672063202337334345
3134222C0A222C6820632023394444463633222C0A222C692063202338464337
3541222C0A222C6A20632023384543373545222C0A222C6B2063202339354346
3537222C0A222C6C20632023364243373131222C0A222C6D2063202339364445
3445222C0A222C6E20632023394544363642222C0A222C6F2063202333463742
3039222C0A222C7020632023343337423042222C0A222C712063202339454345
3642222C0A222C7220632023384343453436222C0A222C732063202338364345
3342222C0A222C7420632023413744373737222C0A222C752063202334363746
3132222C0A222C7620632023413744373733222C0A222C772063202341444437
3742222C0A222C7820632023353238453145222C0A222C792063202335333843
3143222C0A222C7A20632023363339363244222C0A222C412063202333373646
3033222C0A222C4220632023333937333033222C0A222E2E2E2E2E2E2E2E2E2E
2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E
2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E
2E2E2E2C2E2D2E2D2E2D2E2D2E2D2E2D2E2D2E2D2E2C2E2E2E2E2E2E2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2D2E2A2E612E622E632E642E65
2E662E672E2D2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E
2E2E2E2D2E682E692E6A2E6B2E6C2E6D2E6E2E6F2E2D2E2E2E2E2E2E2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2D2E682E692E6A2E6B2E6C2E6D
2E6E2E702E2D2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E
2E2E2E2D2E2A2E712E6A2E6B2E6C2E6D2E722E732E2D2E2E2E2E2E2E2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2D2E2A2E742E752E762E6C2E77
2E782E792E2D2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2C2E2D2E2D
2E2D2E7A2E412E422E432E442E452E462E472E482E7A2E2C2E2C2E2C2E2C2E2E
2E2E222C0A222E2E2E2E2E2E2E492E4A2E4B2E4C2E412E4D2E4E2E4F2E502E51
2E522E532E542E542E552E562E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E57
2E412E582E592E5A2E302E312E322E332E332E342E352E362E372E2C2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2E2E382E392E402E232E302E3B2E3A2E3D2E2B
2E2B2E252E242E282E2C2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E
2E2C2E292E5B2E5D2E3A2E2B2C2E2C2C2C2D2C2A2C612E7A2E2E2E2E2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E7A2C622C632C642C652C662C67
2C682C692E7A2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E
2E2E2E2E2E7A2C6A2C6B2C6C2C2C2C6D2C6E2C6F2E2E2E2E2E2E2E2E2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2C702C712C722C732C74
2C752E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E
2E2E2E2E2E2E2E2E2C752C762C772C782E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2C792C7A2E38
2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E
2E2E2E2E2E2E2E2E2E2E2C412C422E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E
2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E222C0A222E2E2E2E2E2E2E2E2E2E
2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E
2E2E222C0A222E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E
2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E2E227D0A
}
NumGlyphs = 0
OnClick = EnlargeBottomSpeedButtonClick

View File

@ -47,7 +47,7 @@ LazarusResources.Add('TLazDockControlEditorDlg','FORMDATA',[
+'eButton'#7'OnClick'#7#19'DockPageButtonClick'#8'TabOrder'#2#4#0#0#9'TComboB'
+'ox'#19'DockControlComboBox'#22'AnchorSideLeft.Control'#7#16'DockControlLabe'
+'l'#19'AnchorSideLeft.Side'#7#9'asrBottom'#4'Left'#2'r'#6'Height'#2#25#3'Top'
+#2#5#5'Width'#3#172#0#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#0#16'AutoC'
+#2#5#5'Width'#3#156#0#7'Anchors'#11#5'akTop'#6'akLeft'#7'akRight'#0#16'AutoC'
+'ompleteText'#11#22'cbactEndOfLineComplete'#20'cbactSearchAscending'#0#18'Bo'
+'rderSpacing.Left'#2#4#9'MaxLength'#2#0#13'OnEditingDone'#7#30'DockControlCo'
+'mboBoxEditingDone'#8'TabOrder'#2#5#4'Text'#6#19'DockControlComboBox'#0#0#0#7
@ -62,114 +62,199 @@ LazarusResources.Add('TLazDockControlEditorDlg','FORMDATA',[
+'ng.HorizontalSpacing'#2#6#27'ChildSizing.VerticalSpacing'#2#6#18'ChildSizin'
+'g.Layout'#7#29'cclTopToBottomThenLeftToRight'#8'TabOrder'#2#3#0#12'TSpeedBu'
+'tton'#22'EnlargeLeftSpeedButton'#4'Left'#2#6#6'Height'#2#27#3'Top'#2#6#5'Wi'
+'dth'#2#25#5'Color'#7#9'clBtnFace'#10'Glyph.Data'#10#3#6#0#0#255#5#0#0'/* XP'
+'M */'#10'static char *graphic[] = {'#10'"22 22 61 1",'#10'". c None",'#10'"'
+', c #FFFFFF",'#10'"- c #BDD7A7",'#10'"* c #3B7304",'#10'"a c #397308",'#10
,'"b c #3B7703",'#10'"c c #C7DFAF",'#10'"d c #C6DFAD",'#10'"e c #AFD78C",'#10
+'"f c #87BD52",'#10'"g c #85BF53",'#10'"h c #87BF57",'#10'"i c #8DBD5B",'#10
+'"j c #8EBD5A",'#10'"k c #86BD57",'#10'"l c #BDDEA5",'#10'"m c #3B7704",'#10
+'"n c #86B74F",'#10'"o c #84B74F",'#10'"p c #84B74E",'#10'"q c #BDD69D",'#10
+'"r c #3D7703",'#10'"s c #7BBF39",'#10'"t c #7FBF3D",'#10'"u c #578C21",'#10
+'"v c #A5D77B",'#10'"w c #8DCE4E",'#10'"x c #73BF2B",'#10'"y c #77BF31",'#10
+'"z c #73BF29",'#10'"A c #67B71F",'#10'"B c #5FAF13",'#10'"C c #4E9E06",'#10
+'"D c #4B8614",'#10'"E c #9ECF73",'#10'"F c #8CCF4E",'#10'"G c #63BF0F",'#10
+'"H c #63B70E",'#10'"I c #5FB50C",'#10'"J c #5BAF0A",'#10'"K c #56A508",'#10
+'"L c #529D06",'#10'"M c #529F09",'#10'"N c #A5CF7B",'#10'"O c #397304",'#10
+'"P c #5BAF0B",'#10'"Q c #56A709",'#10'"R c #539F07",'#10'"S c #000000",'#10
+'"T c #3D7708",'#10'"U c #9FD76B",'#10'"V c #ADD784",'#10'"W c #254704",'#10
+'"X c #3D7704",'#10'"Y c #7BAF46",'#10'"Z c #A7D773",'#10'"0 c #6BB71E",'#10
+'"1 c #172B00",'#10'"2 c #679D35",'#10'"3 c #A7D677",'#10'"4 c #ADD684",'#10
+'"......................",'#10'"......................",'#10'"......,,......'
+'........",'#10'"....,..........,,,,,,,",'#10'"...........-*.........",'#10
+'"...,.............,,,,.",'#10'"......ab..............",'#10'",,,,,.........'
+'cd......",'#10'".......efghijjihklm...",'#10'"..............nopqm,,,",'#10
+'",,r...st.............,",'#10'",,ruvwxyzAB...CC......",'#10'"...mDEFGHIJKLC'
+'CCMNO...",'#10'"..........PQRCCCMNOSS,",'#10'",,,...T.U..V......OSSS",'#10
+'",,,SSSWXYZ0.....**....",'#10'"...SSSS1*234*SSSSSS...",'#10'",..S.........S'
+'SSSSSSSS",'#10'",,,...................",'#10'",,,,SSSSSSS....SSSSSSS",'#10
+'".......SSSSSSSSSSSS...",'#10'"...,............SS,,,."}'#10#9'NumGlyphs'#2#0
+#7'OnClick'#7#27'EnlargeLeftSpeedButtonClick'#8'ShowHint'#9#14'ParentShowHin'
+'t'#8#0#0#12'TSpeedButton'#23'EnlargeRightSpeedButton'#4'Left'#2'%'#6'Height'
+#2#27#3'Top'#2#6#5'Width'#2#25#5'Color'#7#9'clBtnFace'#10'Glyph.Data'#10#214
+#5#0#0#210#5#0#0'/* XPM */'#10'static char *graphic[] = {'#10'"22 22 58 1",'
+#10'". c None",'#10'", c #FFFFFF",'#10'"- c #3B7704",'#10'"* c #BFDEA5",'#10
+'"a c #3B7304",'#10'"b c #BDD79D",'#10'"c c #C6DFA7",'#10'"d c #97BF6F",'#10
+'"e c #3D7707",'#10'"f c #B7D79E",'#10'"g c #84BD53",'#10'"h c #87BF57",'#10
+'"i c #8DBD5B",'#10'"j c #8EBD5A",'#10'"k c #AFD78C",'#10'"l c #86B74F",'#10
+'"m c #86BD4F",'#10'"n c #86BF4B",'#10'"o c #85BD4A",'#10'"p c #A5CF77",'#10
+'"q c #AFD787",'#10'"r c #4F851B",'#10'"s c #000000",'#10'"t c #73AD35",'#10
+'"u c #6BAF2F",'#10'"v c #3D7703",'#10'"w c #A7CF7F",'#10'"x c #579E10",'#10
+'"y c #4E9E06",'#10'"z c #77BD33",'#10'"A c #77BF2D",'#10'"B c #9DC677",'#10
+'"C c #539D0D",'#10'"D c #4F9C06",'#10'"E c #56A508",'#10'"F c #5BAF0A",'#10
+'"G c #5FB50C",'#10'"H c #63B70E",'#10'"I c #8DCF4A",'#10'"J c #A5D673",'#10
+'"K c #4E8717",'#10'"L c #3B7703",'#10'"M c #56A709",'#10'"N c #5BAF0B",'#10
+'"O c #63B50F",'#10'"P c #94D65A",'#10'"Q c #9DCF6B",'#10'"R c #437B0F",'#10
+'"S c #356B04",'#10'"T c #A7CE7F",'#10'"U c #5BAD0D",'#10'"V c #67B51E",'#10
+'"W c #397304",'#10'"X c #6B9D39",'#10'"Y c #0F1F00",'#10'"Z c #5A8E29",'#10
+'"0 c #356F03",'#10'"1 c #070E00",'#10'"......................",'#10'"......'
+'................",'#10'"......,,..............",'#10'".,.............,,,,,,'
+',",'#10'".........-*...........",'#10'"...,.............,,,,.",'#10'"......'
+'aa..............",'#10'".,,abc........de......",'#10'"...-fgghijjihhk......'
+'.",'#10'"...........lmnopqr-s,,",'#10'"......tu...........v,,",'#10'",,,-wx'
+'yyy.....zA......",'#10'"...-BCyyyyDEFGHIJKL...",'#10'"...........MNOPQRSsss'
+',",'#10'",,,a..T.T..U.......sss",'#10'",,,Laaaaa-TV....ss....",'#10'"...sss'
+'sssWTpXWYssss...",'#10'",..s.......Z01ssssssss",'#10'",..................ss'
+'s",'#10'",,,,ssss.......sssssss",'#10'"...,,ssssssssss.......",'#10'"...,..'
+'...........s,,,,"}'#10#9'NumGlyphs'#2#0#7'OnClick'#7#28'EnlargeRightSpeedBu'
+'ttonClick'#8'ShowHint'#9#14'ParentShowHint'#8#0#0#12'TSpeedButton'#21'Enlar'
+'geTopSpeedButton'#4'Left'#2'D'#6'Height'#2#27#3'Top'#2#6#5'Width'#2#25#5'Co'
+'lor'#7#9'clBtnFace'#10'Glyph.Data'#10#139#5#0#0#135#5#0#0'/* XPM */'#10'sta'
+'tic char *graphic[] = {'#10'"22 22 53 1",'#10'". c None",'#10'", c #FFFFFF"'
+','#10'"- c #639633",'#10'"* c #5A8F25",'#10'"a c #3B7305",'#10'"b c #3D7706'
+'",'#10'"c c #377706",'#10'"d c #A7CE85",'#10'"e c #73AF3B",'#10'"f c #6BAD2'
+'D",'#10'"g c #63A51F",'#10'"h c #579F13",'#10'"i c #8EBD5A",'#10'"j c #6FA7'
+'3F",'#10'"k c #3B7704",'#10'"l c #428400",'#10'"m c #5A8E2B",'#10'"n c #BDD'
+'69C",'#10'"o c #8EC65E",'#10'"p c #7FBD47",'#10'"q c #BFDF9D",'#10'"r c #BF'
+'DE9F",'#10'"s c #BDDF9D",'#10'"t c #77BF33",'#10'"u c #67B51C",'#10'"v c #5'
+'EB70E",'#10'"w c #5EB70C",'#10'"x c #5FB50C",'#10'"y c #5EAF0C",'#10'"z c #'
+'A5D67B",'#10'"A c #A7D67F",'#10'"B c #A7D684",'#10'"C c #63BD0E",'#10'"D c '
+'#63B70E",'#10'"E c #AFD77F",'#10'"F c #427F0C",'#10'"G c #3B7705",'#10'"H c'
,' #397704",'#10'"I c #3B7304",'#10'"J c #6BC611",'#10'"K c #ADDE86",'#10'"L '
+'c #67BD10",'#10'"M c #6BC711",'#10'"N c #6FCE13",'#10'"O c #67BF10",'#10'"P'
+' c #6BC712",'#10'"Q c #6FCF14",'#10'"R c #73D715",'#10'"S c #AFDF84",'#10'"'
+'T c #3D7708",'#10'"U c #6FCF13",'#10'"V c #ADDE84",'#10'"W c #000000",'#10
+'"......................",'#10'"......................",'#10'"......,,......'
+'........",'#10'"...............,,,,,,,",'#10'"..........-*..........",'#10
+'"...,..............,,,.",'#10'"......,a..............",'#10'".,,,,.........'
+'bc......",'#10'"........defghi........",'#10'"...............jkl,,,,",'#10
+'"......................",'#10'",,,kmnop..............",'#10'".....qrstuvwxy'
+'zAB.....",'#10'"............CDEFGHIk,,",'#10'",,....I.C..J........,,",'#10
+'",,,,,,IKLMN.....,,....",'#10'"...,,,IKOPQRQPST,,,...",'#10'",..,......PUPJ'
+'VT,,,,,,",'#10'",,,,..................",'#10'",,WWWWII.......IWWWWW,",'#10
+'"......WWWWWWWWWW......",'#10'"...,..........WWWW,,,,"}'#10#9'NumGlyphs'#2#0
+#7'OnClick'#7#26'EnlargeTopSpeedButtonClick'#8'ShowHint'#9#14'ParentShowHint'
+#8#0#0#12'TSpeedButton'#24'EnlargeBottomSpeedButton'#4'Left'#2'c'#6'Height'#2
+#27#3'Top'#2#6#5'Width'#2#25#5'Color'#7#9'clBtnFace'#10'Glyph.Data'#10'!'#6#0
+#0#29#6#0#0'/* XPM */'#10'static char *graphic[] = {'#10'"22 22 63 1",'#10'"'
+'. c None",'#10'", c #3B7704",'#10'"- c #3B7304",'#10'"* c #FFFFFF",'#10'"a '
+'c #C6DFA7",'#10'"b c #C6DEA7",'#10'"c c #85B74F",'#10'"d c #7BB746",'#10'"e'
+' c #73AF3B",'#10'"f c #6FAF31",'#10'"g c #67A727",'#10'"h c #5EA71C",'#10'"'
+'i c #A5CE85",'#10'"j c #A5CE84",'#10'"k c #A5CF7F",'#10'"l c #3D7705",'#10
+'"m c #BFDEA5",'#10'"n c #7FBD4B",'#10'"o c #7BB743",'#10'"p c #77B537",'#10
+'"q c #73B531",'#10'"r c #67B521",'#10'"s c #57A70B",'#10'"t c #A7D684",'#10
+'"u c #AFD785",'#10'"v c #A7D67F",'#10'"w c #9EC773",'#10'"x c #467F11",'#10
+'"y c #397703",'#10'"z c #3D7703",'#10'"A c #6F9F42",'#10'"B c #BDDF9D",'#10
+'"C c #8DC753",'#10'"D c #7BBF3B",'#10'"E c #63B713",'#10'"F c #63BD0F",'#10
+'"G c #67BD10",'#10'"H c #575700",'#10'"I c #7FAD52",'#10'"J c #B5DE8D",'#10
+'"K c #67B71B",'#10'"L c #67BF10",'#10'"M c #6BC612",'#10'"N c #6BC712",'#10
+'"O c #6FC716",'#10'"P c #A7DE6F",'#10'"Q c #7BB547",'#10'"R c #428400",'#10
+'"S c #73CE14",'#10'"T c #9DDF63",'#10'"U c #8FC75A",'#10'"V c #357700",'#10
+'"W c #3F7300",'#10'"X c #8EC75E",'#10'"Y c #3B7305",'#10'"Z c #437B0B",'#10
+'"0 c #9ECE6B",'#10'"1 c #3B7703",'#10'"2 c #467F12",'#10'"3 c #A7D773",'#10
+'"4 c #ADD77B",'#10'"5 c #528E1E",'#10'"6 c #000000",'#10'".................'
+'.....",'#10'"......................",'#10'"......,-..............",'#10'"**'
+'****-a.......-******",'#10'"......-bcdefghi-......",'#10'"...*..........j-*'
+'*****",'#10'"......-a..............",'#10'"******-a......k-......",'#10'"..'
+'....lmnopqrstl......",'#10'"..............uvvwxy**",'#10'".................'
+'.,***",'#10'"****zABCDEFG..........",'#10'"...*H,IJKFLMNOPQlR*...",'#10'"..'
+'..........STUlV*****",'#10'"***...W.X..N........**",'#10'"*******YZ0......*'
+'*....",'#10'".....***12345,***.....",'#10'"*..*..........********",'#10'"..'
+'....................",'#10'"**66666........666666*",'#10'"........666666...'
+'.....",'#10'"...*.............6***."}'#10#9'NumGlyphs'#2#0#7'OnClick'#7#29
+'EnlargeBottomSpeedButtonClick'#8'ShowHint'#9#14'ParentShowHint'#8#0#0#0#0
+'dth'#2#25#5'Color'#7#9'clBtnFace'#10'Glyph.Data'#10'e'#11#0#0'a'#11#0#0'/* '
+'XPM */'#10'static char *graphic[] = {'#10'"22 22 113 2",'#10'".. c None",'
+#10'"., c #3B7704",'#10'".- c #4A7F15",'#10'".* c #3B7304",'#10'".a c #3B770'
,'3",'#10'".b c #5A8C29",'#10'".c c #BDD7A7",'#10'".d c #6F9F3F",'#10'".e c #'
+'C6DFAD",'#10'".f c #CFE7B7",'#10'".g c #7FAF56",'#10'".h c #BFDEA5",'#10'".'
+'i c #9FCE7B",'#10'".j c #C6DEAF",'#10'".k c #3D7705",'#10'".l c #3B7706",'
+#10'".m c #8FBD6B",'#10'".n c #B7D79C",'#10'".o c #94BF63",'#10'".p c #8FBF6'
+'3",'#10'".q c #C7DFAF",'#10'".r c #C7DEAF",'#10'".s c #437B0D",'#10'".t c #'
+'9DC77B",'#10'".u c #AFD78C",'#10'".v c #87BD52",'#10'".w c #85BF53",'#10'".'
+'x c #87BF57",'#10'".y c #8DBD5B",'#10'".z c #8EBD5A",'#10'".A c #86BD57",'
+#10'".B c #BDDEA5",'#10'".C c #4A8617",'#10'".D c #A7CE86",'#10'".E c #9FCF7'
+'7",'#10'".F c #7FBD46",'#10'".G c #85BD4A",'#10'".H c #86BF4B",'#10'".I c #'
+'86BD4F",'#10'".J c #86B74F",'#10'".K c #87BD53",'#10'".L c #84B74F",'#10'".'
+'M c #84B74E",'#10'".N c #BDD69D",'#10'".O c #3D7703",'#10'".P c #5A8E27",'
+#10'".Q c #AFD685",'#10'".R c #95CE5E",'#10'".S c #7BBF39",'#10'".T c #7FBF3'
+'D",'#10'".U c #7FBF43",'#10'".V c #7FBD47",'#10'".W c #7BB543",'#10'".X c #'
+'73AF39",'#10'".Y c #6BAF2F",'#10'".Z c #6FAF31",'#10'".0 c #73AF37",'#10'".'
+'1 c #7BB742",'#10'".2 c #578C21",'#10'".3 c #A5D77B",'#10'".4 c #8DCE4E",'
+#10'".5 c #73BF2B",'#10'".6 c #77BF31",'#10'".7 c #73BF29",'#10'".8 c #67B71'
+'F",'#10'".9 c #5FAF13",'#10'".@ c #52A507",'#10'".# c #4E9E06",'#10'".; c #'
+'529C0C",'#10'".: c #A7CE87",'#10'".= c #4B8614",'#10'".+ c #9ECF73",'#10'".'
+'% c #8CCF4E",'#10'".$ c #63BF0F",'#10'".( c #63B70E",'#10'".) c #5FB50C",'
+#10'".[ c #5BAF0A",'#10'".] c #56A508",'#10'",. c #529D06",'#10'",, c #529F0'
+'9",'#10'",- c #A5CF7B",'#10'",* c #397304",'#10'",a c #437B0E",'#10'",b c #'
+'97CF67",'#10'",c c #97D65F",'#10'",d c #67BD12",'#10'",e c #63B50D",'#10'",'
+'f c #5BAF0B",'#10'",g c #56A709",'#10'",h c #539F07",'#10'",i c #3D7708",'
+#10'",j c #8FC65A",'#10'",k c #9FD76B",'#10'",l c #6BBF17",'#10'",m c #5EB50'
+'C",'#10'",n c #ADD784",'#10'",o c #A5CF7F",'#10'",p c #A7CE7F",'#10'",q c #'
+'3D7704",'#10'",r c #7BAF46",'#10'",s c #A7D773",'#10'",t c #6BB71E",'#10'",'
+'u c #ADD684",'#10'",v c #3B7705",'#10'",w c #397303",'#10'",x c #679D35",'
+#10'",y c #A7D677",'#10'",z c #376F05",'#10'",A c #568C25",'#10'",B c #A5CE7'
+'7",'#10'",C c #336703",'#10'",D c #4A8419",'#10'",E c #377303",'#10'"......'
+'......................................",'#10'".............................'
+'...............",'#10'".........................,..................",'#10'"'
+'.......................-.*..................",'#10'"...................a.b.'
+'c.*..................",'#10'".................,.d.e.f.*..................",'
+#10'"...............a.g.h.i.j.k.*.*.*.*.*.a......",'#10'".............l.m.n.'
+'o.p.q.r.r.q.e.j.h.,......",'#10'"...........s.t.u.v.w.x.y.z.z.y.x.A.B.,....'
+'..",'#10'".......,.C.D.E.F.G.H.I.J.K.K.J.L.M.N.,......",'#10'".....O.P.Q.R.'
+'S.T.U.F.V.W.X.Y.Z.0.1.n.,......",'#10'".....O.2.3.4.5.6.7.8.9.@.#.#.#.#.;.:'
+'.,......",'#10'".......,.=.+.%.$.(.).[.],..#.#.#,,,-,*......",'#10'".......'
+'...,a,b,c,d,e,f,g,h.#.#.#,,,-,*......",'#10'"............,i,j,k,l,m,n,o,p,p'
+',p,p,-,*......",'#10'"..............,q,r,s,t,u,v.*.*.*.*.*,w......",'#10'".'
+'................*,x,y,u.*..................",'#10'"..................,z,A,B'
+',*..................",'#10'"....................,C,D.*..................",'
+#10'"........................,E..................",'#10'"...................'
+'.........................",'#10'"..........................................'
+'.."}'#10#9'NumGlyphs'#2#0#7'OnClick'#7#27'EnlargeLeftSpeedButtonClick'#8'Sh'
+'owHint'#9#14'ParentShowHint'#8#0#0#12'TSpeedButton'#23'EnlargeRightSpeedBut'
+'ton'#4'Left'#2'%'#6'Height'#2#27#3'Top'#2#6#5'Width'#2#25#5'Color'#7#9'clBt'
+'nFace'#10'Glyph.Data'#10#197#10#0#0#193#10#0#0'/* XPM */'#10'static char *g'
+'raphic[] = {'#10'"22 22 103 2",'#10'".. c None",'#10'"., c #3B7704",'#10'".'
+'- c #4A7F15",'#10'".* c #BFDEA5",'#10'".a c #5F8F2D",'#10'".b c #3B7703",'
+#10'".c c #CEDFB7",'#10'".d c #C7DEAF",'#10'".e c #739E46",'#10'".f c #3B730'
+'4",'#10'".g c #3D7704",'#10'".h c #C6DFAD",'#10'".i c #A7CE7F",'#10'".j c #'
+'C6DFA7",'#10'".k c #86AF5B",'#10'".l c #BDD79D",'#10'".m c #C6DEAF",'#10'".'
+'n c #C7DFAF",'#10'".o c #97C76B",'#10'".p c #97C767",'#10'".q c #B7D69E",'
+#10'".r c #97BF6F",'#10'".s c #3D7707",'#10'".t c #B7D79E",'#10'".u c #84BD5'
+'3",'#10'".v c #87BF57",'#10'".w c #8DBD5B",'#10'".x c #8EBD5A",'#10'".y c #'
+'AFD78C",'#10'".z c #A5CE7F",'#10'".A c #467F0F",'#10'".B c #B5D697",'#10'".'
+'C c #7FB74B",'#10'".D c #7FB54A",'#10'".E c #84B74F",'#10'".F c #86B74F",'
+#10'".G c #87BD53",'#10'".H c #86BD4F",'#10'".I c #86BF4B",'#10'".J c #85BD4'
+'A",'#10'".K c #A5CF77",'#10'".L c #AFD787",'#10'".M c #4F851B",'#10'".N c #'
+'B5D796",'#10'".O c #7BB743",'#10'".P c #73AD35",'#10'".Q c #6BAF2F",'#10'".'
+'R c #73AF37",'#10'".S c #7BB746",'#10'".T c #7BB547",'#10'".U c #7FBD47",'
+#10'".V c #7FBD43",'#10'".W c #7FBF43",'#10'".X c #7FBF3D",'#10'".Y c #97CE5'
+'E",'#10'".Z c #AFD68D",'#10'".0 c #5F952B",'#10'".1 c #3D7703",'#10'".2 c #'
,'A7CF7F",'#10'".3 c #579E10",'#10'".4 c #4E9E06",'#10'".5 c #5BA511",'#10'".'
+'6 c #67AF1E",'#10'".7 c #6FB72B",'#10'".8 c #77BD33",'#10'".9 c #77BF2D",'
+#10'".@ c #8DCE4F",'#10'".# c #A7D77F",'#10'".; c #5A8F23",'#10'".: c #9DC67'
+'7",'#10'".= c #539D0D",'#10'".+ c #4F9C06",'#10'".% c #56A508",'#10'".$ c #'
+'5BAF0A",'#10'".( c #5FB50C",'#10'".) c #63B70E",'#10'".[ c #8DCF4A",'#10'".'
+'] c #A5D673",'#10'",. c #4E8717",'#10'",, c #539F07",'#10'",- c #56A709",'
+#10'",* c #5BAF0B",'#10'",a c #63B50F",'#10'",b c #94D65A",'#10'",c c #9DCF6'
+'B",'#10'",d c #437B0F",'#10'",e c #A5CF7F",'#10'",f c #5BAD0D",'#10'",g c #'
+'63B714",'#10'",h c #9FD667",'#10'",i c #8FC65B",'#10'",j c #3F7709",'#10'",'
+'k c #67B51E",'#10'",l c #9FD773",'#10'",m c #7BB54B",'#10'",n c #397304",'
+#10'",o c #6B9D39",'#10'",p c #9CC677",'#10'",q c #5A8E29",'#10'",r c #356F0'
+'3",'#10'",s c #4B8519",'#10'",t c #336703",'#10'",u c #397303",'#10'"......'
+'......................................",'#10'".............................'
+'...............",'#10'"...................,........................",'#10'"'
+'...................,.-......................",'#10'"...................,.*.'
+'a.b..................",'#10'"...................,.c.d.e.,................",'
+#10'".......b.f.f.f.f.f.g.h.i.j.k.b..............",'#10'".......f.l.j.m.h.n.'
+'d.d.o.p.q.r.s............",'#10'".......,.t.u.u.v.w.x.x.w.v.v.y.z.A........'
+'..",'#10'".......f.B.C.D.E.F.G.G.F.H.I.J.K.L.M.,......",'#10'".......,.N.O.'
+'P.Q.Q.R.S.T.U.V.W.X.Y.Z.0.1....",'#10'".......,.2.3.4.4.4.4.4.5.6.7.8.9.@.#'
+'.;.1....",'#10'".......,.:.=.4.4.4.4.+.%.$.(.).[.],..b......",'#10'".......'
+',.:.=.4.4.4.4,,,-,*,a,b,c,d..........",'#10'".......f.:.i.i.i.i.i,e,f,g,h,i'
+',j............",'#10'".......b.f.f.f.f.f.,.i,k,l,m.,..............",'#10'".'
+'.................,n.i.K,o,n................",'#10'"...................f,p,q'
+',r..................",'#10'"...................f,s,t....................",'
+#10'"..................,u........................",'#10'"...................'
+'.........................",'#10'"..........................................'
+'.."}'#10#9'NumGlyphs'#2#0#7'OnClick'#7#28'EnlargeRightSpeedButtonClick'#8'S'
+'howHint'#9#14'ParentShowHint'#8#0#0#12'TSpeedButton'#21'EnlargeTopSpeedButt'
+'on'#4'Left'#2'D'#6'Height'#2#27#3'Top'#2#6#5'Width'#2#25#5'Color'#7#9'clBtn'
+'Face'#10'Glyph.Data'#10#149#11#0#0#145#11#0#0'/* XPM */'#10'static char *gr'
+'aphic[] = {'#10'"22 22 116 2",'#10'".. c None",'#10'"., c #3D7703",'#10'".-'
+' c #3B7704",'#10'".* c #639633",'#10'".a c #5A8F25",'#10'".b c #3B7703",'#10
+'".c c #568623",'#10'".d c #AFCE8E",'#10'".e c #A5CE7F",'#10'".f c #4A8616",'
+#10'".g c #477F15",'#10'".h c #87BD53",'#10'".i c #86BD53",'#10'".j c #97C76'
+'F",'#10'".k c #437B0A",'#10'".l c #427B0B",'#10'".m c #A7C786",'#10'".n c #'
+'96C76F",'#10'".o c #6BAF2F",'#10'".p c #63A521",'#10'".q c #86BF57",'#10'".'
+'r c #8DBD5E",'#10'".s c #3D7706",'#10'".t c #97BD77",'#10'".u c #A7CE85",'
+#10'".v c #73AF3B",'#10'".w c #6BAD2D",'#10'".x c #63A51F",'#10'".y c #579F1'
+'3",'#10'".z c #8EBD5A",'#10'".A c #7FAF4E",'#10'".B c #84AF5F",'#10'".C c #'
+'B5D796",'#10'".D c #7BB547",'#10'".E c #73AD37",'#10'".F c #67AD29",'#10'".'
+'G c #5EA71C",'#10'".H c #579E10",'#10'".I c #539C0B",'#10'".J c #97C767",'
+#10'".K c #6FA73F",'#10'".L c #6F9D43",'#10'".M c #BDD79F",'#10'".N c #84BD5'
+'3",'#10'".O c #77B73D",'#10'".P c #73B533",'#10'".Q c #6BAD27",'#10'".R c #'
+'63AD1B",'#10'".S c #5AA50F",'#10'".T c #52A507",'#10'".U c #5AA713",'#10'".'
+'V c #9EC76F",'#10'".W c #63962F",'#10'".X c #5A8E2B",'#10'".Y c #BDD69C",'
+#10'".Z c #8EC65E",'#10'".0 c #7FBD47",'#10'".1 c #77B739",'#10'".2 c #73B52'
+'F",'#10'".3 c #6BB723",'#10'".4 c #5FAD12",'#10'".5 c #5BAD0B",'#10'".6 c #'
+'57AD0A",'#10'".7 c #57A509",'#10'".8 c #63AF1D",'#10'".9 c #9DCE77",'#10'".'
+'@ c #538D21",'#10'".# c #4A8518",'#10'".; c #AFD694",'#10'".: c #BFDF9D",'
+#10'".= c #BFDE9F",'#10'".+ c #BDDF9D",'#10'".% c #77BF33",'#10'".$ c #67B51'
+'C",'#10'".( c #5EB70E",'#10'".) c #5EB70C",'#10'".[ c #5FB50C",'#10'".] c #'
+'5EAF0C",'#10'",. c #A5D67B",'#10'",, c #A7D67F",'#10'",- c #A7D684",'#10'",'
+'* c #9CC777",'#10'",a c #4B7F16",'#10'",b c #3B7705",'#10'",c c #3D7B05",'
+#10'",d c #BDDE96",'#10'",e c #67B719",'#10'",f c #63B70E",'#10'",g c #63BD0'
+'E",'#10'",h c #63BF0F",'#10'",i c #AFD77F",'#10'",j c #427F0C",'#10'",k c #'
+'397704",'#10'",l c #3B7304",'#10'",m c #B5DE8D",'#10'",n c #67BD10",'#10'",'
+'o c #67C711",'#10'",p c #6BC611",'#10'",q c #ADDE7F",'#10'",r c #3D7708",'
+#10'",s c #ADDE86",'#10'",t c #6BC711",'#10'",u c #6FCE13",'#10'",v c #ADDE8'
+'4",'#10'",w c #67BF10",'#10'",x c #6BC712",'#10'",y c #6FCF14",'#10'",z c #'
+'73D715",'#10'",A c #AFDF84",'#10'",B c #ADDF86",'#10'",C c #67BD0F",'#10'",'
+'D c #6FCF13",'#10'",E c #AFDE86",'#10'",F c #AFDE87",'#10'",G c #B5DE87",'
+#10'",H c #B5DF84",'#10'"............................................",'#10
+'"............................................",'#10'"......................'
,'......................",'#10'".....................,.-...................."'
+','#10'".....................*.a.b..................",'#10'"................'
+'...c.d.e.f..................",'#10'".................g.d.h.i.j.k...........'
+'.....",'#10'"...............l.m.n.o.p.q.r.s..............",'#10'"..........'
+'...b.t.u.v.w.x.y.z.A.-............",'#10'"...........-.B.C.D.E.F.G.H.I.J.K.'
+'-..........",'#10'".........,.L.M.N.O.P.Q.R.S.T.U.V.W.-........",'#10'"....'
+'.....X.Y.Z.0.1.2.3.4.5.6.7.8.9.@.-......",'#10'".......#.;.:.=.+.%.$.(.).[.'
+'],.,,,-,*,a......",'#10'".....-,b,b,b,c,d,e,f,g,h,g,f,i,j,b,k,l.-....",'#10
+'"............,l,m,g,n,o,p,o,n,q,r............",'#10'"............,l,s,n,t,u'
+',u,u,t,v,r............",'#10'"............,l,s,w,x,y,z,y,x,A,r............"'
+','#10'"............,l,B,C,p,x,D,x,p,v,r............",'#10'"............,l,s'
+',E,F,G,H,G,F,E,r............",'#10'"............,l,l,l,l,l,l,l,l,l,l.......'
+'.....",'#10'"............................................",'#10'"..........'
+'.................................."}'#10#9'NumGlyphs'#2#0#7'OnClick'#7#26'E'
+'nlargeTopSpeedButtonClick'#8'ShowHint'#9#14'ParentShowHint'#8#0#0#12'TSpeed'
+'Button'#24'EnlargeBottomSpeedButton'#4'Left'#2'c'#6'Height'#2#27#3'Top'#2#6
+#5'Width'#2#25#5'Color'#7#9'clBtnFace'#10'Glyph.Data'#10'5'#11#0#0'1'#11#0#0
+'/* XPM */'#10'static char *graphic[] = {'#10'"22 22 110 2",'#10'".. c None"'
+','#10'"., c #3B7704",'#10'".- c #3B7304",'#10'".* c #C6DFA7",'#10'".a c #BD'
+'DFA7",'#10'".b c #BDDE9D",'#10'".c c #B7D69C",'#10'".d c #B7D697",'#10'".e '
+'c #AFD68E",'#10'".f c #AFCF8D",'#10'".g c #A7CE86",'#10'".h c #C6DEA7",'#10
+'".i c #85B74F",'#10'".j c #7BB746",'#10'".k c #73AF3B",'#10'".l c #6FAF31",'
+#10'".m c #67A727",'#10'".n c #5EA71C",'#10'".o c #A5CE85",'#10'".p c #A5CE8'
+'4",'#10'".q c #84B74E",'#10'".r c #5FA71B",'#10'".s c #A7CF7F",'#10'".t c #'
+'7FB74B",'#10'".u c #7BB742",'#10'".v c #73B539",'#10'".w c #67AF27",'#10'".'
+'x c #5BA516",'#10'".y c #A5CF7F",'#10'".z c #3D7705",'#10'".A c #BFDEA5",'
+#10'".B c #7FBD4B",'#10'".C c #7BB743",'#10'".D c #77B537",'#10'".E c #73B53'
+'1",'#10'".F c #67B521",'#10'".G c #57A70B",'#10'".H c #A7D684",'#10'".I c #'
+'52851F",'#10'".J c #BDDEA5",'#10'".K c #C6DFAF",'#10'".L c #C7DFA7",'#10'".'
+'M c #84BD4A",'#10'".N c #7FBF42",'#10'".O c #7BBF39",'#10'".P c #6FBD29",'
+#10'".Q c #5FB50F",'#10'".R c #5BAF0B",'#10'".S c #AFD785",'#10'".T c #A7D67'
+'F",'#10'".U c #9EC773",'#10'".V c #467F11",'#10'".W c #639531",'#10'".X c #'
+'95C763",'#10'".Y c #87BD4E",'#10'".Z c #85BF47",'#10'".0 c #7BBF3B",'#10'".'
+'1 c #6BBD1F",'#10'".2 c #63B50E",'#10'".3 c #63B70E",'#10'".4 c #63B711",'
+#10'".5 c #6FBF27",'#10'".6 c #A5D77B",'#10'".7 c #528E1F",'#10'".8 c #3D770'
+'3",'#10'".9 c #6F9F42",'#10'".@ c #BDDF9D",'#10'".# c #8DC753",'#10'".; c #'
+'63B713",'#10'".: c #63BD0F",'#10'".= c #67BD10",'#10'".+ c #67BF10",'#10'".'
+'% c #6BBF1A",'#10'".$ c #A5D677",'#10'".( c #679C31",'#10'".) c #7FAD52",'
+#10'".[ c #B5DE8D",'#10'".] c #67B71B",'#10'",. c #6BC612",'#10'",, c #6BC71'
+'2",'#10'",- c #6FC716",'#10'",* c #A7DE6F",'#10'",a c #7BB547",'#10'",b c #'
+'87B75A",'#10'",c c #97CF63",'#10'",d c #67BD11",'#10'",e c #6BC611",'#10'",'
+'f c #6FCE13",'#10'",g c #73CE14",'#10'",h c #9DDF63",'#10'",i c #8FC75A",'
+#10'",j c #8EC75E",'#10'",k c #95CF57",'#10'",l c #6BC711",'#10'",m c #96DE4'
+'E",'#10'",n c #9ED66B",'#10'",o c #3F7B09",'#10'",p c #437B0B",'#10'",q c #'
+'9ECE6B",'#10'",r c #8CCE46",'#10'",s c #86CE3B",'#10'",t c #A7D777",'#10'",'
+'u c #467F12",'#10'",v c #A7D773",'#10'",w c #ADD77B",'#10'",x c #528E1E",'
+#10'",y c #538C1C",'#10'",z c #63962D",'#10'",A c #376F03",'#10'",B c #39730'
+'3",'#10'"............................................",'#10'"..............'
+'..............................",'#10'".............,.-.-.-.-.-.-.-.-.,.....'
+'.......",'#10'".............-.*.a.b.c.d.e.f.g.-............",'#10'"........'
+'.....-.h.i.j.k.l.m.n.o.-............",'#10'".............-.h.i.j.k.l.m.n.p.'
+'-............",'#10'".............-.*.q.j.k.l.m.r.s.-............",'#10'"..'
+'...........-.*.t.u.v.l.w.x.y.-............",'#10'".....,.-.-.-.z.A.B.C.D.E.'
+'F.G.H.z.,.,.,.,....",'#10'".......I.J.K.L.A.M.N.O.P.Q.R.S.T.T.U.V......",'
+#10'".........W.A.X.Y.Z.0.1.2.3.3.4.5.6.7.,......",'#10'".........8.9.@.#.0.'
+';.:.=.+.+.%.$.(.,........",'#10'"...........,.).[.].:.+,.,,,-,*,a.z........'
+'..",'#10'".............z,b,c,d,e,f,g,h,i.z............",'#10'".............'
+'..z,j,k,l,,,m,n,o..............",'#10'"................,p,q,r,s,t,u........'
+'........",'#10'"..................,u,v,w,x..................",'#10'".......'
+'.............,y,z.8..................",'#10'"....................,A,B......'
+'..............",'#10'"............................................",'#10'".'
+'...........................................",'#10'"........................'
+'...................."}'#10#9'NumGlyphs'#2#0#7'OnClick'#7#29'EnlargeBottomSp'
+'eedButtonClick'#8'ShowHint'#9#14'ParentShowHint'#8#0#0#0#0
]);

View File

@ -204,6 +204,8 @@ function GetLazDockSplitterOrParent(Control: TControl; Side: TAnchorKind;
out AnchorControl: TControl): boolean;
function CountAnchoredControls(Control: TControl; Side: TAnchorKind
): Integer;
function NeighbourCanBeShrinked(EnlargeControl, Neighbour: TControl;
Side: TAnchorKind): boolean;
implementation
@ -255,6 +257,30 @@ begin
end;
end;
function NeighbourCanBeShrinked(EnlargeControl, Neighbour: TControl;
Side: TAnchorKind): boolean;
const
MinControlSize = 20;
var
Splitter: TLazDockSplitter;
begin
Result:=false;
if not GetLazDockSplitter(EnlargeControl,OppositeAnchor[Side],Splitter) then
exit;
case Side of
akLeft: // check if left side of Neighbour can be moved
Result:=Neighbour.Left+Neighbour.Width
>EnlargeControl.Left+EnlargeControl.Width+Splitter.Width+MinControlSize;
akRight: // check if right side of Neighbour can be moved
Result:=Neighbour.Left+MinControlSize+Splitter.Width<EnlargeControl.Left;
akTop: // check if top side of Neighbour can be moved
Result:=Neighbour.Top+Neighbour.Height
>EnlargeControl.Top+EnlargeControl.Height+Splitter.Height+MinControlSize;
akBottom: // check if bottom side of Neighbour can be moved
Result:=Neighbour.Top+MinControlSize+Splitter.Height<EnlargeControl.Top;
end;
end;
{ TLazDockPages }
function TLazDockPages.GetActiveNotebookPageComponent: TLazDockPage;
@ -1395,7 +1421,8 @@ function TAnchoredDockManager.EnlargeControl(Control: TControl;
Side: TAnchorKind; Simulate: boolean): boolean;
{ If Simulate=true then it will only test if control can be enlarged.
Example: Move one neighbour, enlarge Control. Two splitters are resized.
Case A:
Shrink one neighbour control, enlarge Control. Two splitters are resized.
|#| |# |#| |#
|#| Control |# |#| |#
@ -1403,24 +1430,29 @@ function TAnchoredDockManager.EnlargeControl(Control: TControl;
===============# ===#| |#
--------------+# --+#| |#
A |# A|#| |#
|# |#| |#
--------------+# --+#+---------+#
================== ===================
Example: Move two neigbours, enlarge Control, resize one splitter, rotate the
other splitter.
Case B:
Move one neighbour splitter, enlarge Control, resize one splitter,
rotate the other splitter.
|#| |#| |#| |#|
|#| Control |#| |#| |#|
--+#+---------+#+-- --> --+#| Control |#+--
=================== ===#| |#===
--------+#+-------- --+#| |#+--
A |#| B A|#| |#|B
|#| |#| |#|
|#| B |#| |#|B
|#+-------- |#| |#+--
A |#========= A|#| |#===
|#+-------- |#| |#+--
|#| C |#| |#|C
--------+#+-------- --+#+---------+#+--
=================== ===================
}
const
MinControlSize = 20;
var
MainSplitter: TLazDockSplitter;
Side2: TAnchorKind;
@ -1431,8 +1463,19 @@ var
i: Integer;
Sibling: TControl;
CurSplitter: TLazDockSplitter;
Neighbour1: TControl;
Neighbour2: TControl;
Neighbour: TControl;
ShrinkSide: TAnchorKind;
ParentDisabledAlign: Boolean;
EnlargeSplitter: TLazDockSplitter;
RotateSplitter: TLazDockSplitter;
procedure ParentDisableAlign;
begin
if ParentDisabledAlign then exit;
ParentDisabledAlign:=true;
Parent.DisableAlign;
end;
begin
Result:=false;
if Control=nil then exit;
@ -1448,15 +1491,14 @@ begin
if (Side2Anchor=Parent) and (Side3Anchor=Parent) then exit;
// search controls anchored to the MainSplitter on the other side
Neighbour1:=nil;
Neighbour2:=nil;
Neighbour:=nil;
for i:=0 to Parent.ControlCount-1 do begin
Sibling:=Parent.Controls[i];
if (not GetLazDockSplitter(Sibling,OppositeAnchor[Side],CurSplitter))
or (CurSplitter<>MainSplitter) then continue;
// Sibling is anchored to MainSplitter on the other side
// check if it is at the same height as Control
if Side in [akLeft,akRight] then begin
if Side in [akTop,akBottom] then begin
if (Side2Anchor is TLazDockSplitter) then begin
if (Sibling.Left+Sibling.Width<Side2Anchor.Left) then continue;
end else begin
@ -1483,25 +1525,162 @@ begin
if Sibling.Top>Control.Top+Control.Height then continue;
end;
end;
if Neighbour1=nil then
Neighbour1:=Sibling
else if Neighbour2=nil then
Neighbour2:=Sibling
else begin
// too many Neighbours
exit;
if Neighbour=nil then
Neighbour:=Sibling
else if Sibling is TLazDockSplitter then begin
if Neighbour is TLazDockSplitter then begin
// two splitters means, there is at least one Neighbour which can not
// be shrinked
exit;
end;
Neighbour:=Sibling;
end;
end;
if Neighbour1=nil then exit; // no neighbour found
if Neighbour2=nil then begin
// one neighbour
end else begin
// two neigbours
if Neighbour=nil then exit; // no neighbour found
ParentDisabledAlign:=false;
try
if Neighbour is TLazDockSplitter then begin
// one splitter as Neighbour
RotateSplitter:=TLazDockSplitter(Neighbour);
// check that all anchored controls of this splitter can be shrinked
for i:=0 to Parent.ControlCount-1 do begin
Sibling:=Parent.Controls[i];
if Sibling=RotateSplitter then continue;
if GetLazDockSplitter(Sibling,Side2,CurSplitter)
and (CurSplitter=RotateSplitter)
and (not NeighbourCanBeShrinked(Control,Sibling,Side2))
then begin
// this Sibling is anchored with Side2 at RotateSplitter
// but can not be shrinked
exit;
end;
if GetLazDockSplitter(Sibling,Side3,CurSplitter)
and (CurSplitter=RotateSplitter)
and (not NeighbourCanBeShrinked(Control,Sibling,Side3))
then begin
// this Sibling is anchored with Side3 at RotateSplitter
// but can not be shrinked
exit;
end;
end;
{ |#| |#| |#| |#|
|#| Control |#| |#| |#|
--+#+---------+#+-- --> --+#| Control |#+--
=================== ===#| |#===
--------+#+-------- --+#| |#+--
|#| B |#| |#|B
|#+-------- |#| |#+--
A |#========= A|#| |#===
|#+-------- |#| |#+--
|#| C |#| |#|C
--------+#+-------- --+#+---------+#+--
=================== =================== }
Result:=true;
if not Simulate then begin
ParentDisableAlign;
GetLazDockSplitter(Control,OppositeAnchor[Side2],EnlargeSplitter);
// enlarge Control and its two side splitters
Control.AnchorSame(Side,RotateSplitter);
Side2Anchor.AnchorSame(Side,RotateSplitter);
Side3Anchor.AnchorSame(Side,RotateSplitter);
// shrink controls anchored to RotateSplitter
for i:=0 to Parent.ControlCount-1 do begin
Sibling:=Parent.Controls[i];
if Sibling=RotateSplitter then continue;
if GetLazDockSplitter(Sibling,Side2,CurSplitter)
and (CurSplitter=RotateSplitter) then begin
// this Sibling is anchored with Side2 at RotateSplitter
Sibling.AnchorToNeighbour(Side2,0,Side3Anchor);
end;
if GetLazDockSplitter(Sibling,Side3,CurSplitter)
and (CurSplitter=RotateSplitter) then begin
// this Sibling is anchored with Side3 at RotateSplitter
Sibling.AnchorToNeighbour(Side3,0,Side2Anchor);
end;
end;
// rotate RotateSplitter
RotateSplitter.AnchorSide[Side].Control:=nil;
RotateSplitter.AnchorSide[OppositeAnchor[Side]].Control:=nil;
RotateSplitter.ResizeAnchor:=Side;
RotateSplitter.AnchorToNeighbour(Side2,0,Side3Anchor);
RotateSplitter.AnchorSame(Side3,MainSplitter);
if Side in [akLeft,akRight] then
RotateSplitter.Anchors:=RotateSplitter.Anchors-[akRight]+[akLeft]
else
RotateSplitter.Anchors:=RotateSplitter.Anchors-[akBottom]+[akTop];
// shrink MainSplitter
MainSplitter.AnchorToNeighbour(Side2,0,Side2Anchor);
// reanchor controls from MainSplitter to RotateSplitter
for i:=0 to Parent.ControlCount-1 do begin
Sibling:=Parent.Controls[i];
if GetLazDockSplitter(Sibling,Side,CurSplitter)
and (CurSplitter=MainSplitter) then begin
if Side in [akLeft,akRight] then begin
if Sibling.Top>Control.Top then
Sibling.AnchorSide[Side].Control:=RotateSplitter;
end else begin
if Sibling.Left>Control.Left then
Sibling.AnchorSide[Side].Control:=RotateSplitter;
end;
end;
end;
end;
end else begin
// shrink a neighbour control
// check if Neighbour already shares a side with Control
if (Neighbour.AnchorSide[Side2].Control<>Side2Anchor)
and (Neighbour.AnchorSide[Side3].Control<>Side3Anchor) then begin
{ Neighbour is too broad.
|#| |#|
|#| Control |#|
--+#+---------+#+--
===================
-------------------
Neighbour
------------------- }
exit;
end;
// check if the Neighbour can be shrinked
if NeighbourCanBeShrinked(Control,Neighbour,Side2) then begin
ShrinkSide:=Side2;
end else if NeighbourCanBeShrinked(Control,Neighbour,Side3) then begin
ShrinkSide:=Side2;
end else begin
// Neighbour can not be shrinked
exit;
end;
{ EnlargeSplitter
^
|#| |# |#| |#
|#| Control |# |#| |#
--+#+---------+# --> --+#| Control |#
MainSplitter <-- ===============# ===#| |#
--------------+# --+#| |#
Neighbour|# N|#| |#
--------------+# --+#+---------+#
================== =================== }
Result:=true;
if not Simulate then begin
ParentDisableAlign;
GetLazDockSplitter(Control,OppositeAnchor[ShrinkSide],EnlargeSplitter);
Neighbour.AnchorToNeighbour(ShrinkSide,0,EnlargeSplitter);
MainSplitter.AnchorToNeighbour(ShrinkSide,0,EnlargeSplitter);
EnlargeSplitter.AnchorSame(Side,Neighbour);
Control.AnchorSame(Side,Neighbour);
end;
end;
finally
if ParentDisabledAlign then
Parent.EnableAlign;
end;
end;