Improve the layout of the application and the architecture of the top level layout widget #67
|
@ -1,7 +1,7 @@
|
|||
fn main() {
|
||||
glib_build_tools::compile_resources(
|
||||
&["resources"],
|
||||
"resources/resources.gresources.xml",
|
||||
"resources/gresources.xml",
|
||||
"com.luminescent-dreams.kifu-gtk.gresource",
|
||||
);
|
||||
}
|
||||
|
|
|
@ -2,5 +2,6 @@
|
|||
<gresources>
|
||||
<gresource prefix="/com/luminescent-dreams/kifu-gtk/">
|
||||
<file>wood_texture.jpg</file>
|
||||
<file>style.css</file>
|
||||
</gresource>
|
||||
</gresources>
|
|
@ -0,0 +1 @@
|
|||
@define_color accent_color: @purple_5;
|
|
@ -1,6 +1,7 @@
|
|||
use adw::prelude::*;
|
||||
use gio::resources_lookup_data;
|
||||
use glib::IsA;
|
||||
use gtk::prelude::*;
|
||||
use gtk::{prelude::*, STYLE_PROVIDER_PRIORITY_USER};
|
||||
|
||||
mod chat;
|
||||
pub use chat::Chat;
|
||||
|
@ -14,9 +15,6 @@ pub use game_preview::GamePreview;
|
|||
mod library;
|
||||
pub use library::Library;
|
||||
|
||||
mod layout;
|
||||
pub use layout::Layout;
|
||||
|
||||
mod player_card;
|
||||
pub use player_card::PlayerCard;
|
||||
|
||||
|
@ -40,6 +38,27 @@ pub struct AppWindow {
|
|||
|
||||
impl AppWindow {
|
||||
pub fn new(app: &adw::Application) -> Self {
|
||||
let window = adw::ApplicationWindow::builder()
|
||||
.application(app)
|
||||
.width_request(800)
|
||||
.height_request(500)
|
||||
.build();
|
||||
|
||||
let stylesheet = String::from_utf8(
|
||||
resources_lookup_data(
|
||||
"/com/luminescent-dreams/kifu-gtk/style.css",
|
||||
gio::ResourceLookupFlags::NONE,
|
||||
)
|
||||
.expect("stylesheet should just be available")
|
||||
.to_vec(),
|
||||
)
|
||||
.expect("to parse stylesheet");
|
||||
|
||||
let provider = gtk::CssProvider::new();
|
||||
provider.load_from_data(&stylesheet);
|
||||
let content = window.style_context();
|
||||
content.add_provider(&provider, STYLE_PROVIDER_PRIORITY_USER);
|
||||
|
||||
let header = adw::HeaderBar::builder()
|
||||
.title_widget(>k::Label::new(Some("Kifu")))
|
||||
.build();
|
||||
|
@ -66,12 +85,6 @@ impl AppWindow {
|
|||
layout.append(&header);
|
||||
layout.append(&content);
|
||||
|
||||
let window = adw::ApplicationWindow::builder()
|
||||
.application(app)
|
||||
.width_request(800)
|
||||
.height_request(500)
|
||||
.build();
|
||||
|
||||
window.set_content(Some(&layout));
|
||||
|
||||
Self {
|
||||
|
|
Loading…
Reference in New Issue