mirror of
https://github.com/YGGverse/Yoda.git
synced 2026-04-02 17:45:28 +00:00
create separated widget mod implementation
This commit is contained in:
parent
034bfb44f6
commit
8fa56ebf9a
3 changed files with 32 additions and 13 deletions
|
|
@ -1,19 +1,20 @@
|
||||||
mod subject;
|
mod subject;
|
||||||
mod tray;
|
mod tray;
|
||||||
|
mod widget;
|
||||||
use std::sync::Arc;
|
|
||||||
|
|
||||||
use gtk::HeaderBar;
|
|
||||||
|
|
||||||
pub struct Header {
|
pub struct Header {
|
||||||
pub widget: Arc<gtk::HeaderBar>,
|
widget: widget::Header,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl Header {
|
||||||
pub fn new() -> Header {
|
pub fn new() -> Header {
|
||||||
let widget = Arc::new(HeaderBar::builder().build());
|
Self {
|
||||||
|
widget: widget::Header::new(&tray::new(), &subject::new()),
|
||||||
widget.pack_start(&tray::new());
|
}
|
||||||
widget.set_title_widget(Some(&subject::new()));
|
}
|
||||||
|
|
||||||
Header { widget }
|
// Getters
|
||||||
|
pub fn widget(&self) -> &widget::Header {
|
||||||
|
&self.widget
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
18
src/browser/header/widget.rs
Normal file
18
src/browser/header/widget.rs
Normal file
|
|
@ -0,0 +1,18 @@
|
||||||
|
pub struct Header {
|
||||||
|
gtk: gtk::HeaderBar,
|
||||||
|
}
|
||||||
|
|
||||||
|
impl Header {
|
||||||
|
pub fn new(tray: >k::Box, subject: >k::Box) -> Header {
|
||||||
|
let gtk = gtk::HeaderBar::builder().build();
|
||||||
|
|
||||||
|
gtk.pack_start(tray);
|
||||||
|
gtk.set_title_widget(Some(subject));
|
||||||
|
|
||||||
|
Self { gtk }
|
||||||
|
}
|
||||||
|
|
||||||
|
pub fn gtk(&self) -> >k::HeaderBar {
|
||||||
|
&self.gtk
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -22,7 +22,7 @@ impl Browser {
|
||||||
// Init widget
|
// Init widget
|
||||||
let widget = widget::Browser::new(
|
let widget = widget::Browser::new(
|
||||||
app,
|
app,
|
||||||
header::new().widget.as_ref(), // @TODO
|
header::Header::new().widget().gtk(),
|
||||||
main::new().widget.as_ref(), // @TODO
|
main::new().widget.as_ref(), // @TODO
|
||||||
default_width,
|
default_width,
|
||||||
default_height,
|
default_height,
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue