From ab3e0439e12dee592a8f6fe2a968e4bb429a60f8 Mon Sep 17 00:00:00 2001 From: Joe Carstairs Date: Sun, 22 Dec 2024 18:28:32 +0000 Subject: Adds other views --- schist_gtk4_gui/src/transactions_view.rs | 56 ++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 schist_gtk4_gui/src/transactions_view.rs (limited to 'schist_gtk4_gui/src/transactions_view.rs') diff --git a/schist_gtk4_gui/src/transactions_view.rs b/schist_gtk4_gui/src/transactions_view.rs new file mode 100644 index 0000000..39a2a98 --- /dev/null +++ b/schist_gtk4_gui/src/transactions_view.rs @@ -0,0 +1,56 @@ +use gtk::{ + glib::{ + self, + subclass::{ + object::{ObjectImpl, ObjectImplExt}, + types::ObjectSubclass, + InitializingObject, + }, + Object, + }, + subclass::{ + box_::BoxImpl, + widget::{CompositeTemplateClass, CompositeTemplateInitializingExt, WidgetImpl}, + }, +}; + +glib::wrapper! { + pub struct SchistTransactionsView(ObjectSubclass) + @extends gtk::Box, gtk::Widget, + @implements gtk::Accessible, gtk::Buildable, gtk::ConstraintTarget, gtk::Orientable; +} + +impl SchistTransactionsView { + pub fn new() -> Self { + Object::builder().build() + } +} + +#[derive(gtk::CompositeTemplate, Default)] +#[template(resource = "/net/joeac/schist/ui/transactions_view.ui")] +pub struct SchistTransactionsViewImpl {} + +#[glib::object_subclass] +impl ObjectSubclass for SchistTransactionsViewImpl { + const NAME: &'static str = "SchistTransactionsView"; + type Type = SchistTransactionsView; + type ParentType = gtk::Box; + + fn class_init(klass: &mut Self::Class) { + klass.bind_template(); + } + + fn instance_init(obj: &InitializingObject) { + obj.init_template(); + } +} + +impl ObjectImpl for SchistTransactionsViewImpl { + fn constructed(&self) { + self.parent_constructed(); + } +} + +impl WidgetImpl for SchistTransactionsViewImpl {} + +impl BoxImpl for SchistTransactionsViewImpl {} -- cgit v1.2.3