58 lines
2.6 KiB
Markdown
58 lines
2.6 KiB
Markdown
# Portable File Dialogs
|
|
|
|
A free C++11 file dialog library.
|
|
|
|
* works on Windows, Mac OS X, Linux
|
|
* **single-header**, no extra library dependencies
|
|
* **synchronous *or* asynchronous** (does not block the rest of your program!)
|
|
* **cancelable** (kill asynchronous dialogues without user interaction)
|
|
* **secure** (immune to shell-quote vulnerabilities)
|
|
|
|
## Status
|
|
|
|
The library is pretty robust. It is not as feature-complete as
|
|
[Tiny File Dialogs](https://sourceforge.net/projects/tinyfiledialogs/),
|
|
but has asynchonous dialogs, more maintainable code, and fewer potential
|
|
security issues.
|
|
|
|
The currently available backends are:
|
|
|
|
* Win32 API (all known versions of Windows)
|
|
* Mac OS X (using AppleScript)
|
|
* GNOME desktop (using [Zenity](https://en.wikipedia.org/wiki/Zenity) or its clones Matedialog and Qarma)
|
|
* KDE desktop (using [KDialog](https://github.com/KDE/kdialog))
|
|
|
|
Experimental support for Emscripten is on its way.
|
|
|
|
## Documentation
|
|
|
|
* [Message Box API](doc/message.md)
|
|
* [Notification API](doc/notify.md)
|
|
* [File Open API](doc/open_file.md)
|
|
* [Folder Selection Open API](select_folder.md)
|
|
|
|
## Screenshots (Windows 10)
|
|
|
|

|
|

|
|

|
|
|
|
## Screenshots (Mac OS X, dark theme)
|
|
|
|

|
|

|
|

|
|
|
|
## Screenshots (Linux, GNOME desktop)
|
|
|
|

|
|

|
|

|
|
|
|
## Screenshots (Linux, KDE Plasma desktop)
|
|
|
|

|
|

|
|

|
|
|