[niepce/gtk4] gtk4: Fix spacing of the main UI
- From: Hubert Figuière <hub src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [niepce/gtk4] gtk4: Fix spacing of the main UI
- Date: Mon, 9 May 2022 01:47:25 +0000 (UTC)
commit 4a8e87c851d03b87c7bf6433c4f3d9187a661490
Author: Hubert Figuière <hub figuiere net>
Date: Fri May 6 21:19:47 2022 -0400
gtk4: Fix spacing of the main UI
niepce-main/src/niepce/ui/image_grid_view.rs | 3 +--
niepce-main/src/niepce/ui/imagetoolbar.rs | 27 ++++++++++++++++++++++-----
src/niepce/ui/moduleshellwidget.cpp | 2 +-
src/niepce/ui/workspacecontroller.cpp | 1 +
4 files changed, 25 insertions(+), 8 deletions(-)
---
diff --git a/niepce-main/src/niepce/ui/image_grid_view.rs b/niepce-main/src/niepce/ui/image_grid_view.rs
index c24b86c..70eb14d 100644
--- a/niepce-main/src/niepce/ui/image_grid_view.rs
+++ b/niepce-main/src/niepce/ui/image_grid_view.rs
@@ -60,14 +60,13 @@ impl ImageGridView {
x: f64,
y: f64,
) {
- gesture.last_event(None).and_then(|event| {
+ gesture.last_event(None).map(|event| {
if event.triggers_context_menu() {
if let Some(ref menu) = menu {
menu.set_pointing_to(Some(&gdk4::Rectangle::new(x as i32, y as i32, 0, 0)));
menu.popup();
}
}
- Some(())
});
if let Some((_, cell)) = icon_view.item_at_pos(x as i32, y as i32) {
diff --git a/niepce-main/src/niepce/ui/imagetoolbar.rs b/niepce-main/src/niepce/ui/imagetoolbar.rs
index f4a3c50..b8b14ae 100644
--- a/niepce-main/src/niepce/ui/imagetoolbar.rs
+++ b/niepce-main/src/niepce/ui/imagetoolbar.rs
@@ -1,5 +1,5 @@
/*
- * niepce - ui/imagetoolbar.rs
+ * niepce - niepce/ui/imagetoolbar.rs
*
* Copyright (C) 2018-2022 Hubert Figuière
*
@@ -20,29 +20,46 @@
use glib::translate::*;
use gtk4::prelude::*;
+/// Create a box for linked button.
+fn linked_box() -> gtk4::Box {
+ let box_ = gtk4::Box::new(gtk4::Orientation::Horizontal, 0);
+ box_.add_css_class("linked");
+
+ box_
+}
+
#[no_mangle]
pub extern "C" fn image_toolbar_new() -> *mut gtk4_sys::GtkBox {
let toolbar = gtk4::Box::new(gtk4::Orientation::Horizontal, 6);
// XXX set style class "toolbar"
+ toolbar.set_margin_top(4);
+ toolbar.set_margin_bottom(4);
+ toolbar.set_margin_start(4);
+ toolbar.set_margin_end(4);
+
+ let box_ = linked_box();
let tool_item = gtk4::Button::from_icon_name("go-previous-symbolic");
tool_item.set_action_name(Some("shell.PrevImage"));
- toolbar.append(&tool_item);
+ box_.append(&tool_item);
let tool_item = gtk4::Button::from_icon_name("go-next-symbolic");
tool_item.set_action_name(Some("shell.NextImage"));
- toolbar.append(&tool_item);
+ box_.append(&tool_item);
+ toolbar.append(&box_);
// let separator = gtk4::SeparatorToolItem::new();
// toolbar.add(&separator);
+ let box_ = linked_box();
let tool_item = gtk4::Button::from_icon_name("object-rotate-left-symbolic");
tool_item.set_action_name(Some("shell.RotateLeft"));
- toolbar.append(&tool_item);
+ box_.append(&tool_item);
let tool_item = gtk4::Button::from_icon_name("object-rotate-right-symbolic");
tool_item.set_action_name(Some("shell.RotateRight"));
- toolbar.append(&tool_item);
+ box_.append(&tool_item);
+ toolbar.append(&box_);
toolbar.to_glib_full()
}
diff --git a/src/niepce/ui/moduleshellwidget.cpp b/src/niepce/ui/moduleshellwidget.cpp
index 62ecad6..ba1fcf3 100644
--- a/src/niepce/ui/moduleshellwidget.cpp
+++ b/src/niepce/ui/moduleshellwidget.cpp
@@ -30,10 +30,10 @@ ModuleShellWidget::ModuleShellWidget()
: Gtk::Box(Gtk::Orientation::VERTICAL)
, m_mainbox()
{
- set_spacing(4);
m_menubutton.set_direction(Gtk::ArrowType::NONE);
m_menubutton.set_icon_name("view-more-symbolic");
m_mainbox.set_end_widget(m_menubutton);
+ m_mainbox.set_margin(4);
append(m_mainbox);
m_mainbox.set_center_widget(m_switcher);
diff --git a/src/niepce/ui/workspacecontroller.cpp b/src/niepce/ui/workspacecontroller.cpp
index 741ea28..f59e44f 100644
--- a/src/niepce/ui/workspacecontroller.cpp
+++ b/src/niepce/ui/workspacecontroller.cpp
@@ -422,6 +422,7 @@ Gtk::Widget * WorkspaceController::buildWidget()
Gtk::Box* header = Gtk::manage(new Gtk::Box(Gtk::Orientation::HORIZONTAL));
header->set_spacing(4);
+ header->set_margin(4);
// TODO make it a mnemonic
m_label.set_text_with_mnemonic(Glib::ustring(_("_Workspace")));
m_label.set_mnemonic_widget(m_librarytree);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]