mirror of
https://github.com/YGGverse/Yoda.git
synced 2025-03-10 12:41:34 +00:00
draft session actions delegation
This commit is contained in:
parent
11f2f1eae7
commit
96103048df
13
src/app.rs
13
src/app.rs
@ -115,13 +115,13 @@ impl App {
|
||||
match database.records() {
|
||||
Ok(records) => {
|
||||
for record in records {
|
||||
println!("{:?}", record.id) // @TODO
|
||||
browser.restore(record.id);
|
||||
}
|
||||
}
|
||||
Err(error) => panic!("{error}"), // @TODO
|
||||
}
|
||||
|
||||
// Activate events
|
||||
// Assign browser window to this application
|
||||
browser.widget().set_application(Some(this));
|
||||
|
||||
// Show main widget
|
||||
@ -133,15 +133,15 @@ impl App {
|
||||
// let browser = browser.clone();
|
||||
let database = database.clone();
|
||||
move |_| {
|
||||
// @TODO transaction?
|
||||
match database.records() {
|
||||
Ok(records) => {
|
||||
// Cleanup previous session records
|
||||
for record in records {
|
||||
match database.delete(record.id) {
|
||||
Ok(_) => {
|
||||
|
||||
// Delegate clean action to children components
|
||||
// browser.clean(app_id); @TODO
|
||||
browser.clean(record.id);
|
||||
}
|
||||
Err(error) => panic!("{error}"), // @TODO
|
||||
}
|
||||
@ -150,11 +150,10 @@ impl App {
|
||||
// Save current session to DB
|
||||
match database.add() {
|
||||
Ok(_) => {
|
||||
// let app_id = database.last_insert_id();
|
||||
let app_id = database.last_insert_id();
|
||||
|
||||
// Delegate save action to children components
|
||||
// self.browser.save(app_id) @TODO
|
||||
// ..
|
||||
browser.save(app_id);
|
||||
}
|
||||
Err(error) => panic!("{error}"), // @TODO
|
||||
}
|
||||
|
@ -191,6 +191,11 @@ impl Browser {
|
||||
}
|
||||
}
|
||||
|
||||
// Actions
|
||||
pub fn clean(&self, app_id: i64) {}
|
||||
pub fn restore(&self, app_id: i64) {}
|
||||
pub fn save(&self, app_id: i64) {}
|
||||
|
||||
// Getters
|
||||
pub fn widget(&self) -> &ApplicationWindow {
|
||||
&self.widget
|
||||
|
Loading…
x
Reference in New Issue
Block a user