FileDialog
File Open, File Save and Folder Picker dialogs.
Note. There is an option to use native controls, or Glok controls. (See native boolean parameter of the constructor).
Initially, only native controls were possible, but I added Glok controls, and made this the default because :
The native library seems to have a critical bug when running on Linux. It very occasionally crashes the application :-( (This library is part of LWJGL - which provide all the OpenGL wrappers and other goodies).
The native dialogs really annoy me - they ignore the initialDirectory I've read somewhere that this is deliberate, because users were confused by this feature. WTF? So now I have to navigate to the same folder again and again just to Save-As with a new name? No, that's madness!
The native library's API is dreadful, and hints that it was written by a very naive programmer.
The downsides of the Glok controls :
Looks and behaves differently from the native controls
Doesn't include
favouriteplaces.Doesn't include file previews
There may be other features in the native controls too.
But has Glok's version have some advantages too :
Uses the same Theme as your application.
Allows you to browse a folder using the file-manager (via a right-click menu).
They match the theme of your application.
The default value of native (in the primary constructor) is taken from GlokSettings.nativeFileDialogs. Therefore, you can easily switch between native and glok from a single place.