blob: b950f68173e6d65e7c33dc8f7c6b9e8900e262d3 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
use crate::{database_connection::DatabaseConnectionResult, DatabaseConnection};
pub fn new_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_file_name("schist.sqlite")
.set_title("New file");
if let Some(starting_directory) = starting_directory {
file_dialog = file_dialog.set_directory(starting_directory);
}
file_dialog.save_file().map(DatabaseConnection::establish)
}
|