Home SpTBXLib VELVEx MultiInstaller Skin Editor



The contents of this package are subject to the Mozilla Public License Version 1.1, you may not use this package except in compliance with the License.
You may obtain a copy of the License at: http://www.mozilla.org/MPL

Software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or implied.

The initial developer of this package is Robert Lee.


VELVEx is free under the terms of the Mozilla Public License.

However, if you wish to express your appreciation for the time and resources the authors have expended developing and supporting it over the years, we do accept and appreciate donations.

Donations are accepted via PayPal. Please click the following link to donate:


Thank you for your support.


Filename Date Size Description


23 January 2006


VELVEx for Delphi 5-2006 and C++Builder 5-2006


31 May 2005


VELVEx compiled demos

Release History
23 January 2006 - version 1.4.9
  - Fixed ImageEn AV when creating the thumbnails.
  - Fixed incorrect thumbnails details when using ImageEn.
  - Fixed incorrect JPEG 2000 images loading with ImageEn.
  - Improved the thumbnails shell extraction.
  - Minor changes.
3 December 2005 - version 1.4.8
  - Fixed incorrect tbFit border painting.
17 November 2005 - version 1.4.7
  - Fixed incorrect icon selection painting.
  - Fixed incorrect thumbnail details painting.
  - Added ESC key handler to cancel cut or copy.
11 November 2005 - version 1.4.6
  - Made GetChildByIndex function more robust.
  - Fixed 0000017 Mantis entry: AV when deleting file.
  - Fixed 0000023 Mantis entry: incorrect mouse click events when
    HideCaptions or ComCtl6 was used.
  - Fixed problem in CM_FONTCHANGED and Begin/End Update causing
    TListview to access window handle during streaming, thanks to
    Jim for the fix.
  - Fixed incorrect focus painting when syncronizing the selection.
  - Fixed incorrect icon selection painting.  
  - Improved ImageEn support, thanks to Kai Brendel for reporting this.
  - Added support for VT 4.4.2
  - Added support for threaded enumeration of objects - Jim K
  - Added new border styles, tbWindowed and tbFit.
  - Added new SingleLineCaptions property to the ThumbsOptions.
  - Added Ctrl-I shortcut to invert the selection.
31 May 2005 - version 1.4.5
  - Fixed AV when creating large Metafiles thumbnails, thanks to
    Polo for the fix.
  - Fixed incorrect drag image when DragImageKind was diNoImage, 
    thanks to Thomas Bauer for reporting this.
  - Denied Theme Manager subclassing.
  - Added new property: ThumbsOptions.CacheOptions.AdjustIconSize to 
    allow dynamic thumbnails resizing.
21 December 2004 - version 1.4.4
  - Added EditFile method, to easily browse for a file to select it 
    and begin to edit it.
  - Fixed incorrect checkboxes sync.
  - Fixed incorrect mouse button click handling when ComCtrls 6 is 
    used, thanks to Gabriel Cristescu for reporting this.
30 August 2004 - version 1.4.3
  - Added checkbox support for vsxThumbs viewstyle.
  - Added partial background image support to non vsxReport 
    ViewStyles, the background should be loaded in the listview
    using the ListView_SetBkImage API:
      BK: TLVBKImage;
      with LV.TreeOptions do
        PaintOptions := PaintOptions + [toShowBackground];
      // LVBKIF_SOURCE_HBITMAP is not supported by ListView_SetBkImage
      // TLVBKImage.hbm is not supported by ListView_SetBkImage
      Fillchar(BK, SizeOf(BK), 0);
      BK.pszImage := PChar(Edit1.text);
      ListView_SetBkImage(LV.ChildListview.Handle, @BK);
4 June 2004 - version 1.4.2
  - Added support for toHideOverlay and toRestoreTopNodeOnRefresh
  - Added new property: ThumbsOptions.CacheOptions.CacheProcessing
    to allow ascending or descending sorting of the thread cache 
    processing list.
    When this property is tcpAscending the top files in the 
    listview are thumbnailed first.
  - Fixed incorrect selection painting, it now uses the values in
    Colors.FocusedSelectionColor and Colors.UnFocusedSelectionColor.
  - Fixed an incorrect call to OnEditCancelled.
  - Fixed an incorrect call to OnDblClick.
  - Reworked the internal cache events.
5 March 2004 - version 1.4.1
  - Compatible with VSTools 1.1.15
  - Fixed drag and drop synchronization, it now correctly fires
    OnDragDrop event when the ViewStyle <> vsxReport.
  - Fixed incorrect icon spacing when the handle is recreated.
20 December 2003 - version 1.4
  - Compatible with VT 4.0.16 and VSTools 1.1.12c
  - Changed the Cache StreamVersion, previous cache files will 
    be reloaded.
  - Fixed Drag&Drop synchronization, the OLE drop is disabled
    by setting off toAcceptOLEDrop.
  - Fixed incorrect focus painting.
  - Fixed DetailedHints inconsistence.
  - Fixed TCacheList problem with some exotic folder names.
  - Fixed another VCL TListview bug, the edit control was not
    correctly showed when using large fonts in vsxList and 
    vsxSmallIcons ViewStyles, thanks to Boris for reporting this.
  - Adem Baba added support for the ImageMagick graphic library 
    (http://www.imagemagick.org) using Nils Haeck Delphi wrapper: 
  - Added ImageLibrary property to get the image library type that
    is being used.
  - Added HideCaptions option to hide the thumbnails captions.
  - Updated demo.
  - New SpeedTest demo.
16 October 2003 - version 1.3.5
  - Fixed incorrect selection synchronization when the Listview
    loses focus.
  - Fixed drag and drop synchronization, it now correctly fires
    OnStartDrag, OnEndDrag, OnDragDrop when the
    ViewStyle <> vsxReport.
  - ThumbsCache.Compressed is now defaulted to False, it 
    improves the rendering speed performance when the cache
    is not saved.
  - Added full unicode support for ImageEn lib.
  - LoadGraphic now has support for ImageEn lib.
  - Added ShowXLIcons option to show XL-Icons in vsxThumbs mode
    (it will only work on WinXP).
  - Added ShellExtractExtensionsList to selectively load shell
    supported thumbnails.
    Suppose you only want images + html thumbnails, then you 
    should turn off seShellExtract to disable the extraction of
    additional shell supported files (doc, xls, etc) and then 
    add '.html' to the ShellExtractExtensionsList.
  - Mouse wheel will now scroll by thumbnail height.
  - New IDE component palette icon.
  - Updated Demo.
21 August 2003 - version 1.3.4
  - Fixed incorrect icon arrangement on vsxList mode.
  - Fixed incorrect thumbnail reloading method.
19 June 2003 - version 1.3.3
  - Changed the DefaultStreamVersion of the cache.
18 June 2003 - version 1.3.2
  - Fixed AV when the RootFolder is renamed and the cache
    saving is activated.
  - Added UseSubsampling property to resize the thumbnails
    smoothly without loss of image quality.
  - Added Compressed property to the Cache options, it activates
    the on-the-fly cache compression system. VELVEx uses JPEG
    compression because it's the most effective compression method
    for images, the drawback is that there's a loss of quality in the 
    thumbnails, if you are looking for the highest quality rendering 
    deactivate this property and set UseSubsampling to true.
    Here are some tests on a folder with 200 images 
    (120 x 120 thumbnails):
      No compression: 7205 Kb, 0% compressed
      ZLib: 5002 Kb, 30% compressed
      JPEG: 441 Kb, 94% compressed
  - Lossless Compression for small images.
  - Greatly improved thumbnails rendering speed.
  - Reduced flicker when scrolling.
  - Updated Demo.
23 May 2003 - version 1.3.1
  - Fixed an AV on WinXP, changed SupportsShellExtract.
20 May 2003 - version 1.3
  - Added Stretch property to the thumbnail options, it
    stretches the thumb images to fit the thumbnail size.
  - Fixed incorrect drag image offset, thanks to Jim.
  - Fixed drag images not showing on WinXP, thanks to Jim.
  - Fixed incorrect mouse state when opening the context menu,
    thanks to Jim.
  - Fixed thumbnail renaming bug, when the file extension was
    changed the thumbnail was not refreshed.
  - Made a workaround of a TListview bug, when the Listview is
    small enough to not fit 2 fully visible items the PageUp/PageDown
    buttons don't work.
  - Fixed thumbnail creation bug, the images were shrinked if
    the thumb size was higher than the image size.
  - SyncItemsCount was not called when the items were deleted.
  - Fixed Details drawing in Win9x.
  - Fixed a bug in MakeThumbFromFile, TJPEGImage doesn't accepts
    images with 1 pixel width or heigth, the minimum size of the
    thumbnails is now set to 2.
  - Fixed a bug in ValidateListItem, it didn't work for the first
    node in the list.
  - Fixed a bug in the Drag&Drop mechanism, it now doesn't allow
    to drop in the dragged item unless the right button is used
    for the drag operation or when Ctrl, Alt, Shift keys are being
    The same goes for dropping in the background.
  - Fixed a bug in the Drag&Drop mechanism, it didn't accept 
    items outside the listview unless Ctrl, Alt or Shift keys was
  - Fixed a bug in the thumbnails cache saving mechanism, thanks
    to Eric Fookes for pointing this out.
7 April 2003 - version 1.2
  - The cache is automatically updated when loaded. If an image
    file was changed the thumbnail will be reloaded.
  - Added DetailedHints property to the thumbnail options to show a
    hint including file name, size, date, type, image size, and
    shell icon. ShowHint must be true.
  - Added OnThumbsGetDetails event to set a customized string for
    the hints and thumbnails details.
  - Fixed mem leak in MakeThumbFromFile for using StretchDraw,
    which is not thread safe.
  - Fixed a bug in the Drag&Drop mechanism, now it doesn't allow to
    drop a file if the shell doesn't support it.
  - Fixed the drawing of the multiple Drag&Drop bitmap.
  - Fixed a TListview bug, in virtual mode when the icon arrangement
    is iaLeft the arrow key press are scrambled.
  - The Bevel and Border properties are now correctly synched.
  - Demo updated.
27 February 2003 - version 1.1
  - Added OnThumbThreadClass event, to replace the thumbnail
    thread with a custom one, thanks to Jim for implementing this.
  - Added a new demo to showcase how to create a custom thumbnail
  - Fixed an incorrect parameter in OnThumbsCacheAdd event.
17 February 2003 - version 1.0
  - Added UseShellExtraction property, it is used to let the shell
    extract and create the thumbnail. Jim added support for
    IExtractImage in the Thumbnails thread. HTML files, and most 
    image files and any other format that is supported by windows or
    a shell extension is shown as a thumbnail!
    VELVEx will try to create the thumbnails with the image library,
    if that fails and UseShellExtraction is enabled it will try
    with the Shell IExtractImage interface.
    I decided to leave the image files to the default image library
    based on some tests:
    With a folder of 180 jpg files:
      Windows Explorer (IExtractImage): ~20 secs.
      ACDSee: ~10 secs.
      VELVEx: ~5 secs.
    Cache file size:
      Windows Explorer: ~1000 KB
      ACDSee: unknown
      VELVEx: ~270 KB
  - Regrouped the thumbnails properties into ThumbOptions property
  - Added ValidateListItem public method to get a valid TListitem
    associated with a Node. 
    The obtained ListItem gives you access to its properties and
    methods, which will be sensible to use only when the ViewStyle
    is not in vsxReport, for example:
      L: TListItem;
      if LVEx.ValidateListItem(LVEx.FocusedNode, L) then
  - Added LoadAllAtOnce property to load all the thumbnails at once,
    like ACDSee.
  - Added ExtensionsExcludeList public property, is a list that 
    contains the file extensions that should be excluded from creating 
    the thumbnails.
    This could be helpfull when you don't want the shell to create
    thumbnails for a specific file extension.
  - Added BorderSize property to set the thumbnails border width.
  - Added ShowSmallIcon property to show the file small icon on the
    top-right border of the thumbnails.
  - OnEnter and OnExit events are now triggered correctly.
  - Fixed a bug in the cache deleting method, when AutoLoad was true
    and the thumbnail was reloaded, the cache was getting scrambled.
  - Fixed a bug in the editing method, in Win9x if the Delete key was
    pressed an AV was raised.
  - Fixed a bug in the editing method, when an item was reselected
    after the control was unfocused the item enters in edit mode.
    It's a classic TListview bug.
  - Minor bug fixes.
  - Demo updated.
29 December 2002 - version 0.9.9
  - Fixed minor selection and focus issues, thanks to Boris.
19 December 2002 - version 0.9.8
  - Added a chance to change the items caption via DoGetVETText,
    thanks to Jim for implementing this.
  - Added ThumbsHighlight, ThumbsHighlightColor properties to
    control the image files highlighting.
  - Fixed a bug in TExtensionsList, it was not filled correctly
    in Delphi 5.
  - Fixed a bug in CreateNewFolder, it was giving an AV when the
    ViewStyle was not vsxReport.
  - Fixed a bug in the painting method, items were not properly
    blended and cut items were not ghosted.
  - Fixed a bug when Align and Constraints were setted at runtime
    and the ViewStyle wasn't vsxReport it didn't worked as expected.
7 December 2002 - version 0.9.7
  - Reworked the cache mechanism, improved thumbnails creation and
    painting speed.
  - Added new public method for cache cleaning, 
  - Added new public method for cache item reload, 
  - Added new property, ThumbsCacheOptions.CompressionQuality, 
    to control the thumbnail compression, default value of 60 
    (1..100, 1 highest compression but lowest quality, 100 
    lowest compression but highest quality).
  - Updated demo.
1 December 2002 - version 0.9.6
  - Added support for ImageEn (http://www.hicomponents.com) and
    Envision (http://www.intervalsoftware.com) image libraries.
30 November 2002 - version 0.9.5
  - Three new events added:
    OnThumbsCacheAdd: fired when a thumbnail is added
    to the cache.
    OnThumbsCacheRead: fired when a thumbnail must be read 
    from the cache.
    OnThumbsCacheProcessing: fired when a thumbnail is about
    to be processed.
11 November 2002 - version 0.9.4
  - Reworked the thumbnail cache to support unicode path names.
  - Reworked the thumbnails creation mechanism to support unicode
    path names.
    VLVEx can now browse through unicode folders and create the correct
    thumbnails, it is now one of the few thumbnail creation components
    that has full unicode support.
7 November 2002 - version 0.9.3
  - The cache file is now compressed and the size is reduced by 10
    times, thanks to Gerald Koeder for the tip.
  - Improved the cache management, introduced a new property 
  - The cache will now be automatically loaded/saved when
    ThumbsCacheOptions.AutoLoad/AutoSave is true.
  - ThumbWidth and ThumbHeight now reflect the real pixel size of the
  - Updated the demo.
7 October 2002 - version 0.9.2c
  - Hidden files where not ghosted when ViewStyle was not vsxReport.
  - ShellContextSubMenu now works when ViewStyle is not vsxReport.
5 October 2002 - version 0.9.2
  - Fixed a MS Listview control Shift-selection bug.
23 September 2002 - version 0.9.1
  - Improved the thumbnails cache to support comments.
20 September 2002 - version 0.9
  - Implemented a new threading system, thanks to Jim.
  - The thumbnails cache can now be loaded and saved to disk, improved
    demo to show this.
8 September 2002 - version 0.8.3
  - GraphicEx support, thanks to Jim.
  - Fixed a bug in TListview not throwing a Change event when Shift 
    selecting a block of items, thanks to Jim.
4 September 2002 - version 0.8.2
  - Fixed a thread bug in D7, thanks to Jim and Gerald.
  - Fixed OnClick and OnDblClick not triggering, thanks to Matthias.
25 August 2002 - version 0.8
  - Greatly improved Listview custom drawing method and fixed 
    all WinXP painting issues, thanks to Jim and Bill.
  - Fixed icon arrangement issues.
  - Improved drag image.
  - Improved demo.
17 August 2002 - version 0.7.3
  - Fixed incorrect item column arrangement when the ViewStyle
    is vsxList or vsxSmallIcon, thanks to Jim.
  - Fixed painting issues in WinXP, thanks to Bill Miller.
  - Fixed canvas not invalidated when resizing in WinXP.
12 August 2002 - version 0.7.2
  - Added 2 new properties that allows to show file and image 
    properties in vsxThumbs ViewStyle: ThumbDetails and 
  - Added ThumbsOnlyBorder property, when true it shows 
    borders only in valid image thumbnails when vsxThumbs 
    ViewStyle, otherwise it shows borders for all the files 
    and folders.
  - Fixed items arrangement bug in vsxThumbs ViewStyle.
  - Fixed visibility problem when OnEnumFolder is assigned.
  - Fixed no editing mode on mouse click, thanks to Jim.
  - Improved demo.
  - Readme file created for version history, installation and
    basic user guide.
11 August 2002 - version 0.7.1
  - Fixed no captions in W9x, thanks to Jim,
  - Fixed no captions when the handle is recreated.
  - VirtualExplorerListviewEx doesn't work with ThemeManager
    version lower
    than 1.9, please download the new version at:
9 August 2002 - version 0.7
  - Added unicode support, thanks to Troy Wolbrink.
  - Fixed a positional bug in the child Listview Popupmenu,
    added ContextMenu events notifications, thanks to Jim.
  - Added VETColors support for file caption colors.
  - Improved browse and selection speed (2000 files drag selection 
    in Icon viewstyle 30 sec, before it was 55 sec. Win Explorer gets 
    the job done in 10 sec... grrr. The problem lies in the 
    CustomDrawing of the M$ Listview, it slows everything down, 
    don't know how the heck  Win Explorer manages this
19 July 2002 - version 0.6 (Jim Kueneman)
  - Added the long awaited Drag and Drop Support.  Please be
    careful with this as it seems ok but if you delete you 
    hard drive I take no responsibility. 
    The drag image sucks but I spent all the time on TListview
    I am going to trying to get it to create a better drag image,
    it won't because of the custom draw and no image lists assiged
    to the control (don't try to assign a image list with custom 
    draw either!).
  - Fixed bug with the new FNodeArray when the VT structure
    change was detected and VLVEx called SyncItemsCount.
    This method would change the number of items in the 
    Listview but did not check to see if FNodeArray was big enough.
14 July 2002 - version 0.5.1
  - Fixed Listview visibility bug, thanks to Aaron
4 July 2002 - version 0.5
  - Jim Kuenaman adapted the VET Icon thread, thanks Jim.
  - Implemented a Thumbnails cache to save bitmap handles, thanks to 
    Werner Lehmann.
  - Fixed clipboard, key and mouse sync, thanks to Bill Miller.
30 April 2002 - version 0.4.4
  - Fixed memory leak in DummyImageList creation, thanks to 
    Milan Vandrovec.
  - Added Focus sync, thanks to Bill Miller.
28 April 2002 - version 0.4.2
  - Fixed painting issues in the child VCL Listview on WinXP, woohoo.
16 April 2002 - version 0.4.1
  - Fixed Thread race condition.
  - Fixed file deletion synch.
15 April 2002 - version 0.4
  - Unit and Class name changes to support VSTools RC 1.
  - Created a base class with unpublished properties: 
  - Need to lock the canvas of the bitmap in MakeThumbFromFile.
1 April 2002 - version 0.3
  - Improved thread speed, and fixed some bugs.
  - Fixed flicker when changing viewstyles.
  - Added ThumbBorders.
  - Added OnThumbsDrawBefore and OnThumbsDrawAfter event 
  - Added SyncRepaint method to force repaint in the child VCL 
  - Added GetThumbDrawingBounds method to get the real thumbs 
    drawing bounds, instead of the Imagelib size.
  - Removed OnThumbsFilter and added ExtensionsList instead, to
    improve speed.
  - ThumbSpaceWidth and ThumbSpaceHeight properties now represent the
    true pixel space between thumbnails.
30 March 2002 - version 0.2.1
  - Corrected a bug that caused a lot of flicker when changing dirs.
  - Added BorderStyle, Color, Ctrl3D, Cursor, and Font synchronizing,
    thanks to Bill Miller.
  - Corrected Delphi 4 and 5 package issues, thanks to Jim Kueneman.
  - Corrected Delphi 4 and 5 problems with FListview.SelectAll, 
    thanks to Jim Kueneman.
27 March 2002 - version 0.2
  - Corrected Delphi 4 and 5 package issues, thanks to Jim Kueneman.
  - Constraints assignment bug fixed, thanks to Milan Vandrovec.
  - F5, Ctrl+C, Ctrl+V, Ctrl+X and Delete keys implemented.
24 March 2002 - version 0.1
  - Thumbnails implemented.
  - OnDataFind implemented, key navigation for the Listview.
  - Ghosted items painted correctly now.
  - Edit handling implemented, unicode not supported.