Class TSystemComboBox (unit SystemTreeView) |
Inherits from
TComboBox
constructor Create(AOwner: TComponent);
- ------------------------------------------------------------------------------} {------------------------------------------------------------------------------} {------------------------------------------------------------------------------} {------------------------------------------------------------------------------} {------------------------------------------------------------------------------} {------------------------------------------------------------------------------} {------------------------------------------------------------------------------} {$IFDEF STV_SYSCOMBOBOX
destructor Destroy;
DON'T FREE THE SYSTEM IMAGE LIST!!!!! BAD IDEA (tm)!
procedure Reset;
procedure CreateWnd;
Free the image list object.
procedure DrawItem(Index: Integer; Rect: TRect; State: TOwnerDrawState);
function EnumerateFolders(const ShellFolder: IShellFolder;
ParentItem: TFolderItemData): boolean;
scbSystem
procedure MeasureItem(Index: Integer; var Height: Integer);
Maybe an event for this??? No items to enum when there should be.
procedure SetItemType(Val: TSCBType);
procedure WMDestroy(var Message: TWMDestroy);
This is really stupid, but DestroyWnd isn't getting called.
procedure AddItem(const ShellFolder: IShellFolder; FQ_IDList,
IDList: PItemIDList; Indent: UINT);
BrushCopy(Bounds(Rect.
function AddItemData(ItemFolder: IShellFolder; aIDList,
aFQ_IDList: PItemIDList; Attrs: UINT; aIndent: UINT): TFolderItemData;
if
procedure FreeAllItemData;
procedure FreeItemData(Item: integer);
AddItemDta
function GetItemData(Item: integer): TFolderItemData;
property ItemType : TSCBType
FImages : TImageList;
FItemType : TSCBType;
constructor Create(AOwner: TComponent);
------------------------------------------------------------------------------} {------------------------------------------------------------------------------} {------------------------------------------------------------------------------} {------------------------------------------------------------------------------} {------------------------------------------------------------------------------} {------------------------------------------------------------------------------} {------------------------------------------------------------------------------} {$IFDEF STV_SYSCOMBOBOX
destructor Destroy;
DON'T FREE THE SYSTEM IMAGE LIST!!!!! BAD IDEA (tm)!
procedure Reset;
procedure CreateWnd;
Free the image list object. Doesn't release the image list handle because it doesn't belong to us, but the system. Go ahead, delete the handle and see what happens.... :) It won't crash anything, but Explorer will look a bit strange.
procedure DrawItem(Index: Integer; Rect: TRect; State: TOwnerDrawState);
function EnumerateFolders(const ShellFolder: IShellFolder;
ParentItem: TFolderItemData): boolean;
scbSystem
procedure MeasureItem(Index: Integer; var Height: Integer);
Maybe an event for this??? No items to enum when there should be.
procedure SetItemType(Val: TSCBType);
procedure WMDestroy(var Message: TWMDestroy);
This is really stupid, but DestroyWnd isn't getting called... procedure DestroyWnd; override;
procedure TSystemComboBox.DestroyWnd;
begin
FreeAllItemData;
inherited DestroyWnd;
end;
procedure AddItem(const ShellFolder: IShellFolder; FQ_IDList,
IDList: PItemIDList; Indent: UINT);
BrushCopy(Bounds(Rect.Left + 2, Rect.Top, FImages.Width, FImages.Height,
Bmp, Bounds(0, 0, FImages.Width, FImages.Height), FImages.BkColor);
function AddItemData(ItemFolder: IShellFolder; aIDList,
aFQ_IDList: PItemIDList; Attrs: UINT; aIndent: UINT): TFolderItemData;
if
procedure FreeAllItemData;
procedure FreeItemData(Item: integer);
AddItemDta
function GetItemData(Item: integer): TFolderItemData;
property ItemType : TSCBType
FImages : TImageList;
FItemType : TSCBType;