From e3822bae5450980abf0dc2994ef9554b8569b8c3 Mon Sep 17 00:00:00 2001 From: Mark van Renswoude Date: Mon, 10 Dec 2007 20:29:57 +0000 Subject: [PATCH] Added: component icons --- Lib/D2006/UnitSwitcherD2006.bpl | Bin 117760 -> 117760 bytes Packages/D2006/UnitSwitcher.dpk | 3 +- Source/BaseSwClient.pas | 44 +++++++++--- Source/BaseSwDialog.dfm | 4 +- Source/BaseSwDialog.pas | 21 ++++-- Source/CmpSwClient.pas | 18 ++++- Source/CmpSwDialog.dfm | 7 +- Source/CmpSwDialog.pas | 119 +++++++++++++++++++++++++++++--- Source/CmpSwFilters.pas | 44 ++++++++++++ Source/UnSwDialog.dfm | 7 +- 10 files changed, 229 insertions(+), 38 deletions(-) create mode 100644 Source/CmpSwFilters.pas diff --git a/Lib/D2006/UnitSwitcherD2006.bpl b/Lib/D2006/UnitSwitcherD2006.bpl index 1f15c10fbc0f61659b6a1125278987b8dfb057b2..447eaa28c220287d2e4e54fcc46286074157d7ed 100644 GIT binary patch delta 36488 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 a85J3Iw;xPnoGCs%r;agW`=dI>G#>!6E5x|~ delta 33665 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%0Av;aN<4w&9OiCK{wdBZBGE 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 0 then try - bitmapHandle := LoadBitmap(packageHandle, PChar(AClassName)); + { BDS includes 16x16 versions of the component bitmaps, try those first } + bitmapHandle := LoadBitmap(packageHandle, PChar(AClassName + '16')); + if bitmapHandle = 0 then + bitmapHandle := LoadBitmap(packageHandle, PChar(AClassName)); + if bitmapHandle <> 0 then begin - bitmap ;= - // #ToDo1 (MvR) 10-12-2007: proper transparency - Result := ImageList_AddMasked(FImageList.Handle, bitmapHandle, - GetTransparentColor(bitmapHandle)); + bitmap := Graphics.TBitmap.Create(); + try + bitmap.Handle := bitmapHandle; + + if (bitmap.Width <> FImageList.Width) or + (bitmap.Height <> FImageList.Height) then + begin + ResizeBitmap(bitmap, FImageList.Width, FImageList.Height); + end; + + Result := FImageList.AddMasked(bitmap, bitmap.TransparentColor); + finally + FreeAndNil(bitmap); + end; end; finally FreeLibrary(packageHandle); @@ -148,10 +180,75 @@ begin end; +procedure TCmpSwStyleVisitor.ResizeBitmap(const ABitmap: Graphics.TBitmap; + const AWidth, AHeight: Integer); +var + tempBitmap: Graphics.TBitmap; + +begin + tempBitmap := Graphics.TBitmap.Create(); + try + tempBitmap.PixelFormat := pf24bit; + tempBitmap.Width := AWidth; + tempBitmap.Height := AHeight; + + tempBitmap.Canvas.CopyRect(Rect(0, 0, AWidth, AHeight), ABitmap.Canvas, + Rect(0, 0, ABitmap.Width, ABitmap.Height)); + + ABitmap.Assign(tempBitmap); + finally + FreeAndNil(tempBitmap); + end; +end; + + { TfrmCmpSwDialog } +function TfrmCmpSwDialog.InternalExecute(): TBaseSwItemList; +begin + FClassFilteredList := TBaseSwItemList.Create(); + FClassFilter := TCmpSwComponentClassFilter.Create(); + try + UpdateClassFilter(); + Result := inherited InternalExecute(); + finally + FreeAndNil(FClassFilter); + FreeAndNil(FClassFilteredList); + end; +end; + + function TfrmCmpSwDialog.CreateStyleVisitor(): TBaseSwStyleVisitor; begin Result := TCmpSwStyleVisitor.Create(ilsTypes); end; + +procedure TfrmCmpSwDialog.DrawItemText(ACanvas: TCanvas; AItem: TBaseSwItem; ARect: TRect); +var + text: String; + +begin + inherited; + + ACanvas.Font.Color := clGrayText; + text := (AItem as TCmpSwComponent).ComponentClass; + + DrawText(ACanvas.Handle, PChar(text), Length(text), ARect, DT_SINGLELINE or + DT_RIGHT or DT_VCENTER); +end; + + +procedure TfrmCmpSwDialog.UpdateClassFilter(); +begin +// FClassFilteredList.Clone(ItemList); +// FClassFilter.FilterList(FClassFilteredList); +end; + + +function TfrmCmpSwDialog.GetBaseItemList(): TBaseSwItemList; +begin +// Result := FClassFilteredList; + Result := inherited GetBaseItemList; +end; + end. diff --git a/Source/CmpSwFilters.pas b/Source/CmpSwFilters.pas new file mode 100644 index 0000000..024fbfb --- /dev/null +++ b/Source/CmpSwFilters.pas @@ -0,0 +1,44 @@ +unit CmpSwFilters; + +interface +uses + BaseSwFilters, + BaseSwObjects; + + +type + TCmpSwComponentClassFilter = class(TBaseSwItemSimpleFilter) + protected + procedure VisitItem(const AItem: TBaseSwItem); override; + end; + + +implementation +uses + SysUtils, + + CmpSwObjects; + + +{ TCmpSwComponentClassFilter } +procedure TCmpSwComponentClassFilter.VisitItem(const AItem: TBaseSwItem); +var + componentClass: String; + +begin + componentClass := TCmpSwComponent(AItem).ComponentClass; + + // #ToDo1 (MvR) 10-12-2007: use a configurable list + if SameText(componentClass, 'TMenuItem') or + SameText(componentClass, 'TAction') or + SameText(componentClass, 'TTBXItem') or + SameText(componentClass, 'TTBItem') or + SameText(componentClass, 'TTBXSeparatorItem') or + SameText(componentClass, 'TTBXNoPrefixItem') or + SameText(componentClass, 'TTBXNoPrefixSubmenuItem') or + SameText(componentClass, 'TTBXSubmenuItem') or + SameText(componentClass, 'TX2GraphicContainerItem') then + FilterItem(AItem); +end; + +end. diff --git a/Source/UnSwDialog.dfm b/Source/UnSwDialog.dfm index 158b77e..d165b88 100644 --- a/Source/UnSwDialog.dfm +++ b/Source/UnSwDialog.dfm @@ -3,8 +3,10 @@ inherited frmUnSwDialog: TfrmUnSwDialog TextHeight = 13 inherited pnlMain: TPanel Height = 307 + ExplicitHeight = 307 inherited lstItems: TListBox Height = 254 + ExplicitHeight = 254 end end inherited pnlButtons: TPanel @@ -69,7 +71,7 @@ inherited frmUnSwDialog: TfrmUnSwDialog end inherited ilsTypes: TImageList Bitmap = { - 494C010106000900040010001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600 + 494C010106000900040010001000FFFFFFFFFF00FFFFFFFFFFFFFFFF424D3600 0000000000003600000028000000400000003000000001002000000000000030 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 @@ -469,8 +471,7 @@ inherited frmUnSwDialog: TfrmUnSwDialog E000E0000000AC0FE000E0000000BF3FE000E0000000FFFFE000600000001000 E000200000001000E00000000000B000E00020000000F000E00060000000F000 E000E0000000F000E000E0000000F000E000E0000000F000E001E0010000F000 - E003E003FFFFF000E007E007FFFFF00000000000000000000000000000000000 - 000000000000} + E003E003FFFFF000E007E007FFFFF000} end inherited alMain: TActionList object actSortByName: TAction