2021-01-11 08:12:08 +13:00
|
|
|
use gtk::prelude::*;
|
2021-07-08 07:13:36 +12:00
|
|
|
use gtk::Builder;
|
2021-01-11 08:12:08 +13:00
|
|
|
|
|
|
|
#[derive(Clone)]
|
2021-03-28 01:14:02 +13:00
|
|
|
pub struct GuiPopovers {
|
2021-01-11 08:12:08 +13:00
|
|
|
pub buttons_popover_select_all: gtk::Button,
|
|
|
|
pub buttons_popover_unselect_all: gtk::Button,
|
|
|
|
pub buttons_popover_reverse: gtk::Button,
|
|
|
|
pub buttons_popover_select_all_except_oldest: gtk::Button,
|
|
|
|
pub buttons_popover_select_all_except_newest: gtk::Button,
|
|
|
|
pub buttons_popover_select_one_oldest: gtk::Button,
|
|
|
|
pub buttons_popover_select_one_newest: gtk::Button,
|
|
|
|
pub buttons_popover_select_custom: gtk::Button,
|
|
|
|
pub buttons_popover_unselect_custom: gtk::Button,
|
|
|
|
pub buttons_popover_select_all_images_except_biggest: gtk::Button,
|
|
|
|
pub buttons_popover_select_all_images_except_smallest: gtk::Button,
|
|
|
|
|
|
|
|
pub separator_select_image_size: gtk::Separator,
|
|
|
|
pub separator_select_reverse: gtk::Separator,
|
|
|
|
pub separator_select_date: gtk::Separator,
|
|
|
|
pub separator_select_custom: gtk::Separator,
|
|
|
|
|
|
|
|
pub buttons_popover_right_click_open_file: gtk::Button,
|
|
|
|
pub buttons_popover_right_click_open_folder: gtk::Button,
|
|
|
|
|
|
|
|
pub popover_select: gtk::Popover,
|
|
|
|
pub popover_right_click: gtk::Popover,
|
|
|
|
}
|
|
|
|
|
2021-03-28 01:14:02 +13:00
|
|
|
impl GuiPopovers {
|
2021-07-08 07:13:36 +12:00
|
|
|
pub fn create_from_builder() -> Self {
|
|
|
|
let glade_src = include_str!("../ui/popover_select.glade").to_string();
|
|
|
|
let builder = Builder::from_string(glade_src.as_str());
|
|
|
|
|
2021-06-26 04:07:13 +12:00
|
|
|
let buttons_popover_select_all: gtk::Button = builder.object("buttons_popover_select_all").unwrap();
|
|
|
|
let buttons_popover_unselect_all: gtk::Button = builder.object("buttons_popover_unselect_all").unwrap();
|
|
|
|
let buttons_popover_reverse: gtk::Button = builder.object("buttons_popover_reverse").unwrap();
|
|
|
|
let buttons_popover_select_all_except_oldest: gtk::Button = builder.object("buttons_popover_select_all_except_oldest").unwrap();
|
|
|
|
let buttons_popover_select_all_except_newest: gtk::Button = builder.object("buttons_popover_select_all_except_newest").unwrap();
|
|
|
|
let buttons_popover_select_one_oldest: gtk::Button = builder.object("buttons_popover_select_one_oldest").unwrap();
|
|
|
|
let buttons_popover_select_one_newest: gtk::Button = builder.object("buttons_popover_select_one_newest").unwrap();
|
|
|
|
let buttons_popover_select_custom: gtk::Button = builder.object("buttons_popover_select_custom").unwrap();
|
|
|
|
let buttons_popover_unselect_custom: gtk::Button = builder.object("buttons_popover_unselect_custom").unwrap();
|
|
|
|
let buttons_popover_select_all_images_except_biggest: gtk::Button = builder.object("buttons_popover_select_all_images_except_biggest").unwrap();
|
|
|
|
let buttons_popover_select_all_images_except_smallest: gtk::Button = builder.object("buttons_popover_select_all_images_except_smallest").unwrap();
|
2021-01-11 08:12:08 +13:00
|
|
|
|
2021-06-26 04:07:13 +12:00
|
|
|
let separator_select_image_size: gtk::Separator = builder.object("separator_select_image_size").unwrap();
|
|
|
|
let separator_select_reverse: gtk::Separator = builder.object("separator_select_reverse").unwrap();
|
|
|
|
let separator_select_date: gtk::Separator = builder.object("separator_select_date").unwrap();
|
|
|
|
let separator_select_custom: gtk::Separator = builder.object("separator_select_custom").unwrap();
|
2021-01-11 08:12:08 +13:00
|
|
|
|
2021-07-08 07:13:36 +12:00
|
|
|
let popover_select: gtk::Popover = builder.object("popover_select").unwrap();
|
|
|
|
|
|
|
|
// Popover right click
|
|
|
|
let glade_src = include_str!("../ui/popover_right_click.glade").to_string();
|
|
|
|
let builder = Builder::from_string(glade_src.as_str());
|
|
|
|
|
2021-06-26 04:07:13 +12:00
|
|
|
let buttons_popover_right_click_open_file: gtk::Button = builder.object("buttons_popover_right_click_open_file").unwrap();
|
|
|
|
let buttons_popover_right_click_open_folder: gtk::Button = builder.object("buttons_popover_right_click_open_folder").unwrap();
|
2021-01-11 08:12:08 +13:00
|
|
|
|
2021-06-26 04:07:13 +12:00
|
|
|
let popover_right_click: gtk::Popover = builder.object("popover_right_click").unwrap();
|
2021-01-11 08:12:08 +13:00
|
|
|
|
|
|
|
Self {
|
|
|
|
buttons_popover_select_all,
|
|
|
|
buttons_popover_unselect_all,
|
|
|
|
buttons_popover_reverse,
|
|
|
|
buttons_popover_select_all_except_oldest,
|
|
|
|
buttons_popover_select_all_except_newest,
|
|
|
|
buttons_popover_select_one_oldest,
|
|
|
|
buttons_popover_select_one_newest,
|
|
|
|
buttons_popover_select_custom,
|
|
|
|
buttons_popover_unselect_custom,
|
|
|
|
buttons_popover_select_all_images_except_biggest,
|
|
|
|
buttons_popover_select_all_images_except_smallest,
|
|
|
|
separator_select_image_size,
|
|
|
|
separator_select_reverse,
|
|
|
|
separator_select_date,
|
|
|
|
separator_select_custom,
|
|
|
|
buttons_popover_right_click_open_file,
|
|
|
|
buttons_popover_right_click_open_folder,
|
|
|
|
popover_select,
|
|
|
|
popover_right_click,
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|