Class TSystemComboBox (unit SystemTreeView)

Inherits from

TComboBox

Constructors


constructor Create(AOwner: TComponent);

------------------------------------------------------------------------------} {------------------------------------------------------------------------------} {------------------------------------------------------------------------------} {------------------------------------------------------------------------------} {------------------------------------------------------------------------------} {------------------------------------------------------------------------------} {------------------------------------------------------------------------------} {$IFDEF STV_SYSCOMBOBOX


Functions

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;


Properties

property ItemType : TSCBType


Events

Variables

FImages : TImageList;


FItemType : TSCBType;



Constructors


constructor Create(AOwner: TComponent);

------------------------------------------------------------------------------} {------------------------------------------------------------------------------} {------------------------------------------------------------------------------} {------------------------------------------------------------------------------} {------------------------------------------------------------------------------} {------------------------------------------------------------------------------} {------------------------------------------------------------------------------} {$IFDEF STV_SYSCOMBOBOX


Functions


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;


Properties


property ItemType : TSCBType


Events


Variables


FImages : TImageList;


FItemType : TSCBType;