mirror of
https://github.com/YGGverse/Yoda.git
synced 2025-02-03 15:04:13 +00:00
replace arguments with callback
This commit is contained in:
parent
44be1a7dab
commit
e0adc0661c
@ -237,7 +237,7 @@ impl Page {
|
|||||||
let title = "Titan input";
|
let title = "Titan input";
|
||||||
|
|
||||||
// Toggle input form
|
// Toggle input form
|
||||||
self.input.set_new_titan(&self.tab_action, uri, Some(title));
|
// @TODO self.input.set_new_titan(|data|{});
|
||||||
|
|
||||||
// Update meta
|
// Update meta
|
||||||
self.meta.set_status(status).set_title(title);
|
self.meta.set_status(status).set_title(title);
|
||||||
|
@ -66,8 +66,8 @@ impl Input {
|
|||||||
));
|
));
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn set_new_titan(&self, action: &Rc<TabAction>, base: &Uri, title: Option<&str>) {
|
pub fn set_new_titan(&self, callback: impl Fn(&[u8]) + 'static) {
|
||||||
self.widget
|
self.widget
|
||||||
.update(Some(&Titan::build(action, base, title).widget.g_box));
|
.update(Some(&Titan::build(callback).widget.g_box));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -8,11 +8,7 @@ use form::Form;
|
|||||||
use title::Title;
|
use title::Title;
|
||||||
use widget::Widget;
|
use widget::Widget;
|
||||||
|
|
||||||
use super::TabAction;
|
use gtk::{gio::SimpleAction, glib::uuid_string_random};
|
||||||
use gtk::{
|
|
||||||
gio::SimpleAction,
|
|
||||||
glib::{uuid_string_random, Uri},
|
|
||||||
};
|
|
||||||
use std::rc::Rc;
|
use std::rc::Rc;
|
||||||
|
|
||||||
pub struct Titan {
|
pub struct Titan {
|
||||||
@ -24,7 +20,7 @@ impl Titan {
|
|||||||
// Constructors
|
// Constructors
|
||||||
|
|
||||||
/// Build new `Self`
|
/// Build new `Self`
|
||||||
pub fn build(_tab_action: &Rc<TabAction>, _base: &Uri, title: Option<&str>) -> Self {
|
pub fn build(callback: impl Fn(&[u8]) + 'static) -> Self {
|
||||||
// Init local actions
|
// Init local actions
|
||||||
let action_update = SimpleAction::new(&uuid_string_random(), None);
|
let action_update = SimpleAction::new(&uuid_string_random(), None);
|
||||||
let action_send = SimpleAction::new(&uuid_string_random(), None);
|
let action_send = SimpleAction::new(&uuid_string_random(), None);
|
||||||
@ -32,7 +28,7 @@ impl Titan {
|
|||||||
// Init components
|
// Init components
|
||||||
let control = Rc::new(Control::build(action_send.clone()));
|
let control = Rc::new(Control::build(action_send.clone()));
|
||||||
let form = Rc::new(Form::build(action_update.clone()));
|
let form = Rc::new(Form::build(action_update.clone()));
|
||||||
let title = Rc::new(Title::build(title));
|
let title = Rc::new(Title::build(None)); // @TODO
|
||||||
|
|
||||||
// Init widget
|
// Init widget
|
||||||
let widget = Rc::new(Widget::build(
|
let widget = Rc::new(Widget::build(
|
||||||
@ -50,13 +46,7 @@ impl Titan {
|
|||||||
|
|
||||||
action_send.connect_activate({
|
action_send.connect_activate({
|
||||||
// @TODO let form = form.clone();
|
// @TODO let form = form.clone();
|
||||||
move |_, _| {
|
move |_, _| callback(&[]) // @TODO input data
|
||||||
todo!()
|
|
||||||
/* tab_action.load.activate(
|
|
||||||
Some(&),
|
|
||||||
true,
|
|
||||||
);*/
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
|
||||||
// Return activated struct
|
// Return activated struct
|
||||||
|
Loading…
x
Reference in New Issue
Block a user