^ What's the point?
^ Features
^ Installation
^ Supported file formats
^ Settings
^ Keyboard shortcuts
^ Useful information

more snapshots...

Download :: Topics on this subject on the Forum :: Changelog & History :: Known bugs and issues :: Top
Filesystem Dialogs Library

Enhanced file and folder selector component for the Win32 platform. It is call compatible with comdlg32.dll.
Filesystem Dialogs is an Open File/Save File/Folder selector replacement. It's purpose is to provide the most powerful user-friendly file and folder selection options and file managament tools for the session.
Delphi and VC++ example included.

If you like this library, check the Vanga Rengi Mangaro Project, which is a project to patch every process to use Filesystem Dialogs dialogs instead of the default Windows dialogs.
  • NEW in version 2.1.3: unicode file name support.
  • NEW in version 2.1.3.5283: supports both BASS 2.3 and 2.4.

Features
  • All window/column position/size & sorting settings are saved for every application and/or the user can choose to always use his/her favorite dialog settings
  • Has a very hiqh quality thumbnail mode (that supports much more formats then the default Windows dialog, supports EXIF thumbnails and displays audio files too Taged with ID3v2 and containing a SESC frame)
  • Drag&Drop for files/folders (you can drop files from Windows explorer onto the window too)
  • If bass.dll is found initialized in the process space thumbnails are generated from all audio files (all file formats that BASS actually supports, or there is plugin loaded for BASS for the particular format - see http://www.un4seen.com/bass.html for details) quite an option to BASS using applications
  • FreeImage.dll is supported also (adds many more formats)
  • Can give back multiple files from different folders (that comdlg32.dll's can't) for example when loading multiple recent documents (not available with comdlg32.dll interface)
  • Has a recent document list on a per-application basis (one of my favorite features - a real implementation of the Windows idea) available with one click: click the button above the drives
  • You can use all your existing comdlg32.dll calls, just call the FilesystemDialogs_GetOpenFileNameA-W() and FilesystemDialogs_GetSaveFileNameA-W() respectively
  • Implements by far the best folder selector
  • Has option to cache the thumbnails on a per folder basis
  • Automatically decodes URL encoded filanames and underscores (eg.: "Man%20on%20the_Mars.jpg" -> "Man on the Mars.jpg") and false characters
  • And the most important: Has a customizable favorite folders and recent folder list on the left, which serves you with one easy click always!
  • File viewer (previewer) pictures/images & web browser for the rest of the files (a secondary display mode - for dual display setups)
  • Around 30MB in process space
  • Speed: The file dialogs appear for the first time in 1 to 2 seconds and ~600ms on consecutive calls on a 1.5GHz system + list update
  • Option to call the dialogs not modally, but like an ordinary form (ideal for multi monitor applications and this is the prefered way also)
  • Option to integrate the dialog into a parent handle (powerfull feature) and trigger an event on file selection
  • Full unicode file name support

Compatibility
  • Windows 2000
  • Windows XP
  • Windows Vista

Drawbacks
  • Subclassing used for comdlg32.dll's dialogs will not work

Requirements
  • Delphi (TOpen/SaveDialog compatible) component and C++ header included, VB, C# or any developer environment that supports the stdcall calling convention.

Installation
  • Unpack the Filesystem Dialogs package ("Filesystem Dialogs x.x.x.zip").
  • In Delphi menu: Component: Install component.
  • Unit file name: select "FilesystemDialogsDefs.pas".
  • Compile and save package.
If everything went smooth you can access Filesystem Dialogs's dialog component on 3delite's tab.

  • Other language developers see the "FilesystemDialogsDynamic.pas" source for the simple structures (two needed) that can be converted to your language.

Filesystem Dialogs Library in shareware and commercial software?

The component is free for use in free software. If you like it and want to use it in a (shareware or) commercial product you have to buy a license.


Supported thumbnail and viewer file formats

Pictures:
  • JPG images (*.jpg, *.jpeg)
  • TIFF images (*.tif, *.tiff) (You need a license to use the LZW compressed format)
  • GFI fax images (*.fax)
  • SGI images (*.bw, *.rgb, *.rgba, *.sgi)
  • Autodesk images files (*.cel, *.pic) old style only
  • Truevision images (*.tga, *.vst, *.icb, *.vda, *.win)
  • ZSoft Paintbrush images (*.pcx, *.pcc)
  • Word 5.x screen capture files (*.scr)
  • Kodak Photo-CD images (*.pcd)
  • Portable pixel/gray map images (*.ppm, *.pgm, *.pbm)
  • Dr. Halo images (*.cut, *.pal)
  • CompuServe images (*.gif)
  • SGI Wavefront images (*.rla, *.rpf)
  • Standard Windows bitmap images (*.bmp, *.rle, *.dib),
  • Photoshop images (*.psd, *.pdd)
  • Paintshop Pro images (*.psp)
  • Portable network graphic images (*.png)
If Free Image Library (FreeImage.dll) is found in the process space or in the file system path, additional formats are available, - also there is a twice chance that special non-ordinary formats are recognised too:
  • Amiga (*.iff, *.lbm)
  • DirectDraw Surface (*.dds)
  • Raw Fax format CCITT G3 (*.g3)
  • High Dynamic Range (*.hdr)
  • JPEG Network Graphics (*.jng)
  • Commodore 64 Koala format (*.koa)
  • Multiple Network Graphics (*.mng)
  • Sun Rasterfile (*.ras)
  • Truevision Targa files (*.tga, *.targa)
  • Wireless Bitmap (*.wbmp)
  • X11 Bitmap Format (*.xbm)
  • X11 Pixmap Format (*.xpm)
See the homepage for all the supported files.


Audios:
  • MPEG audio Tag-ed with ID3v2 containing SESC frame (*.mp3, *.mp2, *.mp1)
  • Free Lossless Audio Codec audio file Taged with ID3v2 containing SESC frame (*.flac)
  • But every file is checked, if it contains a SESC frame it is displayed as an audio file.
  • Furthermore if bass.dll is found in the process space or in the file system path, thumbnails are generated for all audio files that BASS can open (all the file formats that BASS supports or there is a BASS plugin loaded for the particular format).

Webpages:
  • HTML files (*.html, *.htm, *.mht)
  • URL files (links) (*.url)
  • Flash files (*.swf)

Text:
  • Text files (*.txt, *.text, *.log)

Keyboard shortcuts
  • F1: Online help (this page)
  • F3: Viewer on/off
  • F7: Create new folder
  • Esc: Close the dialog & cancel
  • Ctrl + A: Select all
When navigating in the lister:

  • F2: Rename selected item
  • Left arrow: Up one folder
  • Right arrow: If on folder go into it
  • Up arrow: Navigate on the list up and wraps down if reaches top
  • Down arrow: Navigate on the list down and wraps up if reaches bottom
  • Any character: The usual quick jump to the file name beggining with that letter
  • Ctrl + D: Copy selected file name to the clipboard

While pre-viewing:

  • Left mouse button: Hold down and drag image
  • Middle mouse button: Reset all view
  • Mouse wheel: Zoom in and zoom out
  • Right mouse button: Full context menu for the file
  • PageUp: Previous file
  • PageDown: Advance to the next file

Secondary full-screen viewer:

  • Esc: Close
  • Space: Audio Play/Pause

Settings
  • Automatically go into folders after creating them
    Go into folders after creating them. Quite a reasonable event. You can disable it for backward compatibility though.

  • Milisecond precise time display
    Timestamp will display ms (milliseconds) too.

  • Display Artist - Title in Description field for ID3 Tag-ed files
    Display ID3 data in the Description field. First ID3v2 is checked if non existent, falls back to ID3v1. This does take longer time to update the list though.
    Formats checked: .MP1 .MP2 .MP3 .MP4 .M4A .WAV .MPC .AAC .APE .VQF .FLAC

  • Disable tree view until first use (greatly increases performance)
    The tree-view won't be refreshed/updated until the first use (clicking on it etc.) this results about twice the speed when changing folders.

  • Always use last used folder (per app.)
    Always use last used folder when the dialog pops up. That is from where you last browsed for files.

  • Remember only one dialog setting and use it for every application
    Only one dialog appeareance will be used for every application. That is: the new dialog will be opened at the same place and will use the same settings where you last left it.

  • Save settings on "Cancel" too, not only on "Open" and "Save"
    Save dialog's settings (column layout, filters, view mode etc.) every time the window is closed, not only when an "OK" type button or event is commited, but on "Cancel" or when the user simpli closes the window with the close button (X) too.

  • Show Scrollbars on Recent Folders List and Drives and Favorites List
    You should use an app. like Wheeler to gain control over the lister with the mouse wheel.

  • Font for Lister
    Select a font for lister display. User's preference.
    Warning: Draging is a bit broken with another font!

  • Recent folders to remember
    Number of visited folders to remember.

  • Don't display file extensions
    Only for those who don't like seeing the .jpg extension.

  • When saving files force extension case to
    Force extension case to lower or upper case. Select for convinience.
    Upper case: Pic.Jpg -> Pic.JPG
    Lower case: Pic.Jpg -> Pic.jpg

  • Display file extensions converted too
    Display file extensions converted to the selected case.

  • Use Lanczos filter for thumbnails (slow filter but gives highest quality)
    Using Lanczos filter will result the highest, most crisp quality for the generated images, but will take more time to generate the thumbnails. Recommended though. Without Use Lanczos filter for thumbnails checked the most simple and fastest linear mode is used which results pixely thumbnails. But is much more faster though.

  • Generate thumbnails for folders which contain pictures
    Little thumbnails will be generated and shown on top of folder icons in thumbnail mode, so you can see the first pictures inside the folder.

  • Generate thumbnails for recognised audio files
    Unique feature, only available with BASS. If BASS library is found in the process space and is in an initialized state, thumbnails will be generated from all audio files supported by BASS (and it's plugins). Very usefull feature for applications dealing with sound and audio files.
    Note that you still get thumbnails for audio files even without BASS, if they are Taged with ID3v2 and contain sample cache (SESC frame).

  • Save SESC (cache for sample graphics) into ID3v2 (+0.35% file size)
    Save the "thumbnail graphics" data into the file, in an ID3v2 Tag. This sample cache is very small, it's about 0.35% size of the file (for example: ~30KB for an ordinary MP3 file), and the next time when a thumbnail is needed for the audio file this cache will be used which means no sampling is needed, which means nearly instant thumbnail display (this is even faster then generating a thumbnail for a picture file).

  • Cache the thumbnails (~1MB on every ~100MB)
    Save the thumbnail cache (inside Thumbs Filesystem Dialogs.db in every folder in ID3v2 format) and obtain instantenous loading of non audio thumbnails (~45MB/DVD).

  • Zoom small images x2
    Will magnify small images two times (to the double), that can fit with this double size into the thumbnail. This is the opposite what should happen as the thumbnails are about creating small pictures.

  • Center folder names on folder thumbnails (else aligned to the left)
    Folder names will be centered on folder thumbnails (recommended as it is more perspicuous), if you uncheck this, the text is aligned to the left.
You can use the above text in your application's documentation, if you want.


Useful Programs that work well together with Filesystem Dialogs
  • BASS - Audio library. If Filesystem Dialogs finds one it will make use of it.
  • Free Image Library - If FreeImage.dll is found in the process space or in the file system path, additional formats are available, - also there is a twice chance that special non-ordinary formats are recognised too.
  • Wheeler - A free program that enhances the behavior of your mouse wheel.
  • Hard Disk Sentinel - A hard disk monitoring application to find possible hard disk problems, performance degradations and failures. It can alert if a problem detected or if temperature is too high and it has other reporting options.

Useful information


[Top]