mirror of
https://github.com/johrpan/musicus.git
synced 2025-10-27 04:07:25 +01:00
Initial port to GTK4
This commit is contained in:
parent
1a9e58d627
commit
801a130ef8
76 changed files with 3098 additions and 6625 deletions
|
|
@ -6,6 +6,7 @@ use crate::widgets::{Navigator, NavigatorScreen};
|
|||
use gettextrs::gettext;
|
||||
use glib::clone;
|
||||
use gtk::prelude::*;
|
||||
use libhandy::prelude::*;
|
||||
use std::cell::RefCell;
|
||||
use std::rc::Rc;
|
||||
|
||||
|
|
@ -73,23 +74,23 @@ impl RecordingSelector {
|
|||
async move { clone.backend.db().get_recordings_for_work(&clone.work.id).await.unwrap() }
|
||||
}));
|
||||
|
||||
this.selector.set_make_widget(|recording| {
|
||||
let label = gtk::Label::new(Some(&recording.get_performers()));
|
||||
label.set_halign(gtk::Align::Start);
|
||||
label.set_margin_start(6);
|
||||
label.set_margin_end(6);
|
||||
label.set_margin_top(6);
|
||||
label.set_margin_bottom(6);
|
||||
label.upcast()
|
||||
});
|
||||
this.selector.set_make_widget(clone!(@strong this => move |recording| {
|
||||
let row = libhandy::ActionRow::new();
|
||||
row.set_activatable(true);
|
||||
row.set_title(Some(&recording.get_performers()));
|
||||
|
||||
let recording = recording.to_owned();
|
||||
row.connect_activated(clone!(@strong this => move |_| {
|
||||
this.select(&recording);
|
||||
}));
|
||||
|
||||
row.upcast()
|
||||
}));
|
||||
|
||||
this.selector.set_filter(|search, recording| {
|
||||
recording.get_performers().to_lowercase().contains(search)
|
||||
});
|
||||
|
||||
this.selector
|
||||
.set_selected_cb(clone!(@strong this => move |recording| this.select(recording)));
|
||||
|
||||
this
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue