filepicker_windows 3.0.0
filepicker_windows: ^3.0.0 copied to clipboard
File and directory picker for Windows that uses common dialog controls.
File and directory picker for Windows that uses common dialog controls.
This package builds on top of the package:win32 and provides a high-level abstraction over native registry APIs. It eliminates the need to work directly with FFI, raw pointers, or low-level Win32 calls while preserving performance and correctness.
✨ Features #
- 📂 Open a single file or multiple files simultaneously
- 💾 Save a file
- 📁 Select a directory
- 🔍 Filter by file type with friendly display names
- 📌 Add custom places to the dialog's navigation pane
- 🪟 Pin to the correct window — always opens as a modal in front of your app
🚀 Getting Started #
Add the package to your pubspec.yaml:
dependencies:
filepicker_windows: ^3.0.0
Then import it:
import 'package:filepicker_windows/filepicker_windows.dart';
⚡ Quick Example #
Show a file open dialog:
import 'package:filepicker_windows/filepicker_windows.dart';
void main() {
final picker = OpenFilePicker()
..filterSpecification = {
'Word Document (*.doc)': '*.doc',
'Web Page (*.htm; *.html)': '*.htm;*.html',
'Text Document (*.txt)': '*.txt',
'All Files': '*.*',
}
..defaultFilterIndex = 0
..defaultExtension = 'doc'
..title = 'Select a document';
final file = picker.getFile();
if (file != null) {
print('Selected file: ${file.path}');
} else {
print('No file selected.');
}
}
More examples — including multi-file selection, save dialogs, directory picking, and custom places — are available in the example directory.
For a more advanced demonstration, see example/wallpaper/, a Flutter app
that uses the picker to select an image and set it as the desktop wallpaper.
📝 Documentation #
Full API reference is available here:
Additional usage examples are located in the example directory.
🐞 Features and Bugs #
If you encounter bugs or need additional functionality, please file an issue.