Skip to content

Commit 457b55a

Browse files
authored
Allow to hide upper notebook (#491)
1 parent a8aa8a2 commit 457b55a

File tree

4 files changed

+42
-6
lines changed

4 files changed

+42
-6
lines changed

czkawka_gui/src/connect_hide_text_view_errors.rs czkawka_gui/src/connect_show_hide_ui.rs

+12-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ use gtk::prelude::*;
22

33
use crate::gui_data::GuiData;
44

5-
pub fn connect_hide_text_view_errors(gui_data: &GuiData) {
5+
pub fn connect_show_hide_ui(gui_data: &GuiData) {
66
let check_button_settings_show_text_view = gui_data.settings.check_button_settings_show_text_view.clone();
77
let buttons_show_errors = gui_data.bottom_buttons.buttons_show_errors.clone();
88
let scrolled_window_errors = gui_data.scrolled_window_errors.clone();
@@ -16,4 +16,15 @@ pub fn connect_hide_text_view_errors(gui_data: &GuiData) {
1616
check_button_settings_show_text_view.set_active(true);
1717
}
1818
});
19+
20+
let buttons_show_upper_notebook = gui_data.bottom_buttons.buttons_show_upper_notebook.clone();
21+
let notebook_upper = gui_data.upper_notebook.notebook_upper.clone();
22+
23+
buttons_show_upper_notebook.connect_clicked(move |_| {
24+
if notebook_upper.is_visible() {
25+
notebook_upper.hide();
26+
} else {
27+
notebook_upper.show();
28+
}
29+
});
1930
}

czkawka_gui/src/gui_bottom_buttons.rs

+5-1
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ pub struct GuiBottomButtons {
1111
pub buttons_hardlink: gtk::Button,
1212
pub buttons_move: gtk::Button,
1313
pub buttons_show_errors: gtk::Button,
14+
pub buttons_show_upper_notebook: gtk::Button,
1415
pub buttons_names: [String; 7],
1516
pub buttons_array: [Widget; 7],
1617
}
@@ -38,7 +39,9 @@ impl GuiBottomButtons {
3839
));
3940

4041
let buttons_show_errors: gtk::Button = builder.object("buttons_show_errors").unwrap();
41-
buttons_show_errors.set_tooltip_text(Some("Show/Hide bottom error panel"));
42+
buttons_show_errors.set_tooltip_text(Some("Show/Hide bottom error panel."));
43+
let buttons_show_upper_notebook: gtk::Button = builder.object("buttons_show_upper_notebook").unwrap();
44+
buttons_show_upper_notebook.set_tooltip_text(Some("Show/Hide upper notebook panel."));
4245

4346
let buttons_names = [
4447
"search".to_string(),
@@ -70,6 +73,7 @@ impl GuiBottomButtons {
7073
buttons_hardlink,
7174
buttons_move,
7275
buttons_show_errors,
76+
buttons_show_upper_notebook,
7377
buttons_names,
7478
buttons_array,
7579
}

czkawka_gui/src/main.rs

+3-3
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,12 @@ use crate::connect_button_select::*;
1818
use crate::connect_button_stop::*;
1919
use crate::connect_duplicate_buttons::*;
2020
use crate::connect_header_buttons::*;
21-
use crate::connect_hide_text_view_errors::*;
2221
use crate::connect_notebook_tabs::*;
2322
use crate::connect_popovers::*;
2423
use crate::connect_progress_window::*;
2524
use crate::connect_selection_of_directories::*;
2625
use crate::connect_settings::*;
26+
use crate::connect_show_hide_ui::*;
2727
use crate::connect_similar_image_size_change::*;
2828
use crate::gui_data::*;
2929
use crate::initialize_gui::*;
@@ -41,12 +41,12 @@ mod connect_button_select;
4141
mod connect_button_stop;
4242
mod connect_duplicate_buttons;
4343
mod connect_header_buttons;
44-
mod connect_hide_text_view_errors;
4544
mod connect_notebook_tabs;
4645
mod connect_popovers;
4746
mod connect_progress_window;
4847
mod connect_selection_of_directories;
4948
mod connect_settings;
49+
mod connect_show_hide_ui;
5050
mod connect_similar_image_size_change;
5151
mod create_tree_view;
5252
mod gui_about;
@@ -139,7 +139,7 @@ fn main() {
139139
futures_receiver_invalid_symlinks,
140140
futures_receiver_broken_files,
141141
);
142-
connect_hide_text_view_errors(&gui_data);
142+
connect_show_hide_ui(&gui_data);
143143
connect_settings(&gui_data);
144144
connect_button_about(&gui_data);
145145
connect_about_buttons(&gui_data);

czkawka_gui/ui/main_window.glade

+22-1
Original file line numberDiff line numberDiff line change
@@ -2141,6 +2141,27 @@ Author: Rafał Mikrut
21412141
<property name="position">1</property>
21422142
</packing>
21432143
</child>
2144+
<child>
2145+
<object class="GtkButton" id="buttons_show_upper_notebook">
2146+
<property name="visible">True</property>
2147+
<property name="can-focus">True</property>
2148+
<property name="receives-default">True</property>
2149+
<child>
2150+
<object class="GtkImage">
2151+
<property name="visible">True</property>
2152+
<property name="can-focus">False</property>
2153+
<property name="halign">center</property>
2154+
<property name="icon-name">text-x-script</property>
2155+
</object>
2156+
</child>
2157+
</object>
2158+
<packing>
2159+
<property name="expand">False</property>
2160+
<property name="fill">True</property>
2161+
<property name="pack-type">end</property>
2162+
<property name="position">2</property>
2163+
</packing>
2164+
</child>
21442165
<child>
21452166
<object class="GtkBox" id="action_buttons">
21462167
<property name="visible">True</property>
@@ -2416,7 +2437,7 @@ Author: Rafał Mikrut
24162437
<property name="expand">False</property>
24172438
<property name="fill">True</property>
24182439
<property name="pack-type">end</property>
2419-
<property name="position">2</property>
2440+
<property name="position">3</property>
24202441
</packing>
24212442
</child>
24222443
</object>

0 commit comments

Comments
 (0)