EpisodesView: Add an empty cover to the widget.

This commit is contained in:
Jordan Petridis 2017-12-18 21:35:51 +02:00
parent 61bd7893c7
commit 5220eaceee
No known key found for this signature in database
GPG Key ID: CEABAD9F5683B9A6
2 changed files with 22 additions and 4 deletions

View File

@ -9,7 +9,7 @@
<object class="GtkImage" id="cover"> <object class="GtkImage" id="cover">
<property name="visible">True</property> <property name="visible">True</property>
<property name="can_focus">False</property> <property name="can_focus">False</property>
<property name="pixel_size">102</property> <property name="pixel_size">64</property>
<property name="icon_name">image-x-generic-symbolic</property> <property name="icon_name">image-x-generic-symbolic</property>
</object> </object>
<packing> <packing>

View File

@ -2,6 +2,7 @@ use gtk;
use gtk::prelude::*; use gtk::prelude::*;
use hammond_data::dbqueries; use hammond_data::dbqueries;
use hammond_data::EpisodeWidgetQuery;
use widgets::episode::EpisodeWidget; use widgets::episode::EpisodeWidget;
@ -43,8 +44,8 @@ impl EpisodesView {
list.set_selection_mode(gtk::SelectionMode::None); list.set_selection_mode(gtk::SelectionMode::None);
episodes.into_iter().for_each(|mut ep| { episodes.into_iter().for_each(|mut ep| {
let widget = EpisodeWidget::new(&mut ep); let viewep = EpisodesViewWidget::new(&mut ep);
list.add(&widget.container); list.add(&viewep.container);
let sep = gtk::Separator::new(gtk::Orientation::Vertical); let sep = gtk::Separator::new(gtk::Orientation::Vertical);
sep.set_sensitive(false); sep.set_sensitive(false);
@ -72,7 +73,24 @@ impl Default for EpisodesViewWidget {
let container: gtk::Box = builder.get_object("container").unwrap(); let container: gtk::Box = builder.get_object("container").unwrap();
let image: gtk::Image = builder.get_object("cover").unwrap(); let image: gtk::Image = builder.get_object("cover").unwrap();
let ep = EpisodeWidget::default(); let ep = EpisodeWidget::default();
container.add(&ep.container); container.pack_start(&ep.container, true, true, 5);
EpisodesViewWidget {
container,
image,
episode: ep.container,
}
}
}
impl EpisodesViewWidget {
fn new(episode: &mut EpisodeWidgetQuery) -> EpisodesViewWidget {
let builder =
gtk::Builder::new_from_resource("/org/gnome/hammond/gtk/episodes_view_widget.ui");
let container: gtk::Box = builder.get_object("container").unwrap();
let image: gtk::Image = builder.get_object("cover").unwrap();
let ep = EpisodeWidget::new(episode);
container.pack_start(&ep.container, true, true, 5);
EpisodesViewWidget { EpisodesViewWidget {
container, container,