Film modal now obtains data from DataManager
This commit is contained in:
parent
8639e08ac5
commit
20326fde8f
3 changed files with 51 additions and 36 deletions
22
src/main.rs
22
src/main.rs
|
|
@ -15,6 +15,7 @@ use crate :: data_manager :: * ;
|
|||
use crate :: error :: * ;
|
||||
use crate :: error :: ZoodexError :: * ;
|
||||
use crate :: ui :: * ;
|
||||
use crate :: utility :: * ;
|
||||
|
||||
|
||||
|
||||
|
|
@ -38,13 +39,26 @@ fn add_style_provider ( _ : & Application ) {
|
|||
}
|
||||
|
||||
fn show_window ( application : & Application ) {
|
||||
let ui = UI :: new (application) ;
|
||||
ui . show_window () ;
|
||||
let window = leak (
|
||||
ApplicationWindow :: builder ()
|
||||
. application (application)
|
||||
. title ("Zoödex")
|
||||
. build ()
|
||||
) ;
|
||||
|
||||
spawn_future_local ( async move {
|
||||
async_result_context ! (
|
||||
async {
|
||||
let data_manager = DataManager :: new () . await ? ;
|
||||
let data_manager = leak ( DataManager :: new () . await ? ) ;
|
||||
|
||||
let ui = UI :: new (
|
||||
window ,
|
||||
|film_uuid| Box :: pin ( async {
|
||||
data_manager . get_film_details (film_uuid) . await . unwrap ()
|
||||
} ) ,
|
||||
) ;
|
||||
window . set_visible (true) ;
|
||||
|
||||
let collection = data_manager . get_collection_overview () . await ? ;
|
||||
ui . render_collection_overview (collection) . await ;
|
||||
Ok (())
|
||||
|
|
@ -53,7 +67,7 @@ fn show_window ( application : & Application ) {
|
|||
match error {
|
||||
CollectionFileReadError => eprintln ! ("Could not read collection file") ,
|
||||
} ;
|
||||
ui . close_window () ;
|
||||
window . close () ;
|
||||
} ,
|
||||
) ;
|
||||
} ) ;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue