blob: 53d36c67f835ae28c716d6999e63941857f39db7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
use crate::{database_connection::DatabaseConnectionResult, DatabaseConnection};
pub fn pick_file_dialog<P>(starting_directory: Option<P>) -> Option<DatabaseConnectionResult>
where
P: AsRef<std::path::Path>,
{
let mut file_dialog = rfd::FileDialog::new()
.add_filter("SQLite database", &["sqlite"])
.set_title("Open file");
if let Some(starting_directory) = starting_directory {
file_dialog = file_dialog.set_directory(starting_directory);
}
file_dialog.pick_file().map(DatabaseConnection::establish)
}
|