From 19afce5d2e4f8f3190cbe71076c72068b5aa6c3a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rafa=C5=82=20Mikrut?= <41945903+qarmin@users.noreply.github.com> Date: Mon, 23 May 2022 19:04:28 +0200 Subject: [PATCH] Several small fixes (#727) --- czkawka_core/src/common.rs | 8 +- czkawka_core/src/common_extensions.rs | 12 + czkawka_core/src/same_music.rs | 17 +- czkawka_core/src/similar_images.rs | 6 + czkawka_core/src/similar_videos.rs | 5 + .../connect_things/connect_button_delete.rs | 9 +- .../connect_things/connect_button_hardlink.rs | 18 +- czkawka_gui/ui/czkawka.cmb | 176 +++++----- czkawka_gui/ui/main_window.ui | 311 +++++++++--------- 9 files changed, 304 insertions(+), 258 deletions(-) mode change 100644 => 100755 czkawka_gui/ui/czkawka.cmb diff --git a/czkawka_core/src/common.rs b/czkawka_core/src/common.rs index a6d0eb3..337a9ee 100644 --- a/czkawka_core/src/common.rs +++ b/czkawka_core/src/common.rs @@ -14,15 +14,13 @@ pub const RAW_IMAGE_EXTENSIONS: &[&str] = &[ ".cr2", ".ari", ]; pub const IMAGE_RS_EXTENSIONS: &[&str] = &[ - ".jpg", ".jpeg", ".png", ".bmp", ".tiff", ".tif", ".tga", ".ff", ".jif", ".jfi", ".webp", ".gif", ".ico", ".exr", ".hdr", ".dds", + ".jpg", ".jpeg", ".png", ".bmp", ".tiff", ".tif", ".tga", ".ff", ".jif", ".jfi", ".webp", ".gif", ".ico", ".exr", ".hdr", ]; -pub const IMAGE_RS_SIMILAR_IMAGES_EXTENSIONS: &[&str] = &[ - ".jpg", ".jpeg", ".png", ".tiff", ".tif", ".tga", ".ff", ".jif", ".jfi", ".bmp", ".webp", ".exr", ".hdr", ".dds", -]; +pub const IMAGE_RS_SIMILAR_IMAGES_EXTENSIONS: &[&str] = &[".jpg", ".jpeg", ".png", ".tiff", ".tif", ".tga", ".ff", ".jif", ".jfi", ".bmp", ".webp", ".exr", ".hdr"]; pub const IMAGE_RS_BROKEN_FILES_EXTENSIONS: &[&str] = &[ - ".jpg", ".jpeg", ".png", ".tiff", ".tif", ".tga", ".ff", ".jif", ".jfi", ".gif", ".bmp", ".ico", ".jfif", ".jpe", ".pnz", ".dib", ".webp", ".exr", ".hdr", ".dds", + ".jpg", ".jpeg", ".png", ".tiff", ".tif", ".tga", ".ff", ".jif", ".jfi", ".gif", ".bmp", ".ico", ".jfif", ".jpe", ".pnz", ".dib", ".webp", ".exr", ".hdr", ]; pub const ZIP_FILES_EXTENSIONS: &[&str] = &[".zip"]; diff --git a/czkawka_core/src/common_extensions.rs b/czkawka_core/src/common_extensions.rs index 84fb843..a9655bb 100644 --- a/czkawka_core/src/common_extensions.rs +++ b/czkawka_core/src/common_extensions.rs @@ -77,4 +77,16 @@ impl Extensions { self.file_extensions.push(extension.to_string()); } } + + pub fn validate_allowed_extensions(&mut self, file_extensions: &[&str]) { + let mut current_file_extensions = Vec::new(); + + for extension in file_extensions { + assert!(extension.starts_with('.')); + if self.file_extensions.contains(&extension.to_string()) { + current_file_extensions.push(extension.to_string()); + } + } + self.file_extensions = current_file_extensions; + } } diff --git a/czkawka_core/src/same_music.rs b/czkawka_core/src/same_music.rs index 3240d91..971874b 100644 --- a/czkawka_core/src/same_music.rs +++ b/czkawka_core/src/same_music.rs @@ -10,7 +10,7 @@ use std::time::{Duration, SystemTime}; use std::{mem, panic, thread}; use crossbeam_channel::Receiver; -use lofty::{read_from_path, AudioFile, ItemKey}; +use lofty::{read_from, AudioFile, ItemKey}; use rayon::prelude::*; use serde::{Deserialize, Serialize}; @@ -251,7 +251,13 @@ impl SameMusic { fn check_files(&mut self, stop_receiver: Option<&Receiver<()>>, progress_sender: Option<&futures::channel::mpsc::UnboundedSender>) -> bool { if !self.allowed_extensions.using_custom_extensions() { self.allowed_extensions.extend_allowed_extensions(AUDIO_FILES_EXTENSIONS); + } else { + self.allowed_extensions.validate_allowed_extensions(AUDIO_FILES_EXTENSIONS); + if !self.allowed_extensions.using_custom_extensions() { + return true; + } } + let result = DirTraversalBuilder::new() .root_dirs(self.directories.included_directories.clone()) .group_by(|_fe| ()) @@ -362,8 +368,13 @@ impl SameMusic { return None; } - let result = panic::catch_unwind(|| { - match read_from_path(&path, true) { + let mut file = match File::open(&path) { + Ok(t) => t, + Err(_) => return Some(None), + }; + + let result = panic::catch_unwind(move || { + match read_from(&mut file, true) { Ok(t) => Some(t), Err(_inspected) => { // println!("Failed to open {}", path); diff --git a/czkawka_core/src/similar_images.rs b/czkawka_core/src/similar_images.rs index 41986ac..73ab738 100644 --- a/czkawka_core/src/similar_images.rs +++ b/czkawka_core/src/similar_images.rs @@ -279,6 +279,12 @@ impl SimilarImages { if !self.allowed_extensions.using_custom_extensions() { self.allowed_extensions.extend_allowed_extensions(IMAGE_RS_SIMILAR_IMAGES_EXTENSIONS); self.allowed_extensions.extend_allowed_extensions(RAW_IMAGE_EXTENSIONS); + } else { + self.allowed_extensions + .validate_allowed_extensions(&[IMAGE_RS_SIMILAR_IMAGES_EXTENSIONS, RAW_IMAGE_EXTENSIONS].concat()); + if !self.allowed_extensions.using_custom_extensions() { + return true; + } } // Add root folders for finding diff --git a/czkawka_core/src/similar_videos.rs b/czkawka_core/src/similar_videos.rs index 22815a7..f299ec0 100644 --- a/czkawka_core/src/similar_videos.rs +++ b/czkawka_core/src/similar_videos.rs @@ -237,6 +237,11 @@ impl SimilarVideos { if !self.allowed_extensions.using_custom_extensions() { self.allowed_extensions.extend_allowed_extensions(VIDEO_FILES_EXTENSIONS); + } else { + self.allowed_extensions.validate_allowed_extensions(VIDEO_FILES_EXTENSIONS); + if !self.allowed_extensions.using_custom_extensions() { + return true; + } } // Add root folders for finding diff --git a/czkawka_gui/src/connect_things/connect_button_delete.rs b/czkawka_gui/src/connect_things/connect_button_delete.rs index bca3c64..dce2ec5 100644 --- a/czkawka_gui/src/connect_things/connect_button_delete.rs +++ b/czkawka_gui/src/connect_things/connect_button_delete.rs @@ -193,10 +193,11 @@ fn create_dialog_group_deletion(window_main: >k4::Window) -> (Dialog, CheckBut button_ok.grab_focus(); - let internal_box = get_dialog_box_child(&dialog); - internal_box.append(&label); - internal_box.append(&label2); - internal_box.append(&check_button); + let parent = button_ok.parent().unwrap().parent().unwrap().downcast::().unwrap(); // TODO Hack, but not so ugly as before + parent.set_orientation(Orientation::Vertical); + parent.insert_child_after(&label, None::<>k4::Widget>); + parent.insert_child_after(&label2, Some(&label)); + parent.insert_child_after(&check_button, Some(&label2)); dialog.show(); (dialog, check_button) diff --git a/czkawka_gui/src/connect_things/connect_button_hardlink.rs b/czkawka_gui/src/connect_things/connect_button_hardlink.rs index f08f931..bcb4a3d 100644 --- a/czkawka_gui/src/connect_things/connect_button_hardlink.rs +++ b/czkawka_gui/src/connect_things/connect_button_hardlink.rs @@ -2,7 +2,7 @@ use std::fs; use std::path::PathBuf; use gtk4::prelude::*; -use gtk4::{Align, CheckButton, Dialog, ResponseType, TextView, TreeIter, TreePath}; +use gtk4::{Align, CheckButton, Dialog, Orientation, ResponseType, TextView, TreeIter, TreePath}; use crate::flg; use czkawka_core::duplicate::make_hard_link; @@ -275,10 +275,11 @@ fn create_dialog_non_group(window_main: >k4::Window) -> Dialog { button_ok.grab_focus(); - let internal_box = get_dialog_box_child(&dialog); - internal_box.append(&label); - internal_box.append(&label2); - internal_box.append(&label3); + let parent = button_ok.parent().unwrap().parent().unwrap().downcast::().unwrap(); // TODO Hack, but not so ugly as before + parent.set_orientation(Orientation::Vertical); + parent.insert_child_after(&label, None::<>k4::Widget>); + parent.insert_child_after(&label2, Some(&label)); + parent.insert_child_after(&label3, Some(&label2)); dialog.show(); dialog @@ -384,9 +385,10 @@ fn create_dialog_ask_for_linking(window_main: >k4::Window) -> (Dialog, CheckBu button_ok.grab_focus(); - let internal_box = get_dialog_box_child(&dialog); - internal_box.append(&label); - internal_box.append(&check_button); + let parent = button_ok.parent().unwrap().parent().unwrap().downcast::().unwrap(); // TODO Hack, but not so ugly as before + parent.set_orientation(Orientation::Vertical); + parent.insert_child_after(&label, None::<>k4::Widget>); + parent.insert_child_after(&check_button, Some(&label)); dialog.show(); (dialog, check_button) diff --git a/czkawka_gui/ui/czkawka.cmb b/czkawka_gui/ui/czkawka.cmb old mode 100644 new mode 100755 index 18bb8b1..cb6c4e5 --- a/czkawka_gui/ui/czkawka.cmb +++ b/czkawka_gui/ui/czkawka.cmb @@ -173,44 +173,11 @@ (5,135,"GtkScrolledWindow","scrolled_window_bad_extensions",134,None,None,None,None), (5,136,"GtkLabel",None,134,None,None,None,None), (5,137,"GtkBox","buttons",3,None,None,None,1), - (5,138,"GtkBox","control_buttons",137,None,None,None,None), + (5,138,"GtkBox",None,137,None,None,None,None), (5,139,"GtkButton","buttons_search",138,None,None,None,None), (5,140,"GtkBox",None,139,None,None,None,None), (5,141,"GtkImage",None,140,None,None,None,None), (5,142,"GtkLabel",None,140,None,None,None,1), - (5,143,"GtkButton","buttons_show_errors",137,None,None,None,1), - (5,144,"GtkImage",None,143,None,None,None,None), - (5,145,"GtkButton","buttons_show_upper_notebook",137,None,None,None,2), - (5,146,"GtkImage",None,145,None,None,None,None), - (5,147,"GtkBox","action_buttons",137,None,None,None,3), - (5,148,"GtkMenuButton","buttons_select",147,None,None,None,None), - (5,149,"GtkBox",None,148,None,None,None,None), - (5,150,"GtkImage",None,149,None,None,None,None), - (5,151,"GtkLabel",None,149,None,None,None,1), - (5,152,"GtkButton","buttons_compare",147,None,None,None,1), - (5,153,"GtkBox",None,152,None,None,None,None), - (5,154,"GtkImage",None,153,None,None,None,None), - (5,155,"GtkLabel",None,153,None,None,None,1), - (5,156,"GtkButton","buttons_delete",147,None,None,None,2), - (5,157,"GtkBox",None,156,None,None,None,None), - (5,158,"GtkImage",None,157,None,None,None,None), - (5,159,"GtkLabel",None,157,None,None,None,1), - (5,160,"GtkButton","buttons_move",147,None,None,None,3), - (5,161,"GtkBox",None,160,None,None,None,None), - (5,162,"GtkImage",None,161,None,None,None,None), - (5,163,"GtkLabel",None,161,None,None,None,1), - (5,164,"GtkButton","buttons_save",147,None,None,None,4), - (5,165,"GtkBox",None,164,None,None,None,None), - (5,166,"GtkImage",None,165,None,None,None,None), - (5,167,"GtkLabel",None,165,None,None,None,1), - (5,168,"GtkButton","buttons_symlink",147,None,None,None,5), - (5,169,"GtkBox",None,168,None,None,None,None), - (5,170,"GtkImage",None,169,None,None,None,None), - (5,171,"GtkLabel",None,169,None,None,None,1), - (5,172,"GtkButton","buttons_hardlink",147,None,None,None,6), - (5,173,"GtkBox",None,172,None,None,None,None), - (5,174,"GtkImage",None,173,None,None,None,None), - (5,175,"GtkLabel",None,173,None,None,None,1), (5,176,"GtkBox",None,3,None,None,None,2), (5,177,"GtkEntry","entry_info",176,None,None,None,None), (5,178,"GtkEntry",None,176,None,None,None,1), @@ -222,6 +189,40 @@ (5,184,"GtkImage",None,183,None,None,None,None), (5,185,"GtkButton","button_app_info",182,None,None,None,1), (5,186,"GtkImage",None,185,None,None,None,None), + (5,187,"GtkBox",None,137,None,None,None,4), + (5,188,"GtkBox",None,187,None,None,None,1), + (5,189,"GtkMenuButton","buttons_select",188,None,None,None,None), + (5,190,"GtkBox",None,189,None,None,None,None), + (5,191,"GtkImage",None,190,None,None,None,None), + (5,192,"GtkLabel",None,190,None,None,None,1), + (5,193,"GtkButton","buttons_compare",188,None,None,None,1), + (5,194,"GtkBox",None,193,None,None,None,None), + (5,195,"GtkImage",None,194,None,None,None,None), + (5,196,"GtkLabel",None,194,None,None,None,1), + (5,197,"GtkButton","buttons_delete",188,None,None,None,2), + (5,198,"GtkBox",None,197,None,None,None,None), + (5,199,"GtkImage",None,198,None,None,None,None), + (5,200,"GtkLabel",None,198,None,None,None,1), + (5,201,"GtkButton","buttons_move",188,None,None,None,3), + (5,202,"GtkBox",None,201,None,None,None,None), + (5,203,"GtkImage",None,202,None,None,None,None), + (5,204,"GtkLabel",None,202,None,None,None,1), + (5,205,"GtkButton","buttons_save",188,None,None,None,4), + (5,206,"GtkBox",None,205,None,None,None,None), + (5,207,"GtkImage",None,206,None,None,None,None), + (5,208,"GtkLabel",None,206,None,None,None,1), + (5,209,"GtkButton","buttons_symlink",188,None,None,None,5), + (5,210,"GtkBox",None,209,None,None,None,None), + (5,211,"GtkImage",None,210,None,None,None,None), + (5,212,"GtkLabel",None,210,None,None,None,1), + (5,213,"GtkButton","buttons_hardlink",188,None,None,None,6), + (5,214,"GtkBox",None,213,None,None,None,None), + (5,215,"GtkImage",None,214,None,None,None,None), + (5,216,"GtkLabel",None,214,None,None,None,1), + (5,217,"GtkButton","buttons_show_errors",187,None,None,None,2), + (5,218,"GtkImage",None,217,None,None,None,None), + (5,219,"GtkButton","buttons_show_upper_notebook",187,None,None,None,3), + (5,220,"GtkImage",None,219,None,None,None,None), (6,1,"GtkPopover","popover_right_click",None,None,None,None,None), (6,2,"GtkBox",None,1,None,None,None,None), (6,3,"GtkButton","buttons_popover_right_click_open_file",2,None,None,None,None), @@ -641,58 +642,6 @@ (5,140,"GtkWidget","halign","center",None,None,None,None,None), (5,141,"GtkImage","icon-name","image-missing",None,None,None,None,None), (5,142,"GtkLabel","label","Search",1,None,None,None,None), - (5,143,"GtkWidget","focusable","1",None,None,None,None,None), - (5,143,"GtkWidget","receives-default","1",None,None,None,None,None), - (5,144,"GtkImage","icon-name","image-missing",None,None,None,None,None), - (5,144,"GtkWidget","halign","center",None,None,None,None,None), - (5,145,"GtkWidget","focusable","1",None,None,None,None,None), - (5,145,"GtkWidget","receives-default","1",None,None,None,None,None), - (5,146,"GtkImage","icon-name","image-missing",None,None,None,None,None), - (5,146,"GtkWidget","halign","center",None,None,None,None,None), - (5,147,"GtkBox","spacing","2",None,None,None,None,None), - (5,148,"GtkWidget","focus-on-click","0",None,None,None,None,None), - (5,148,"GtkWidget","focusable","1",None,None,None,None,None), - (5,148,"GtkWidget","receives-default","1",None,None,None,None,None), - (5,149,"GtkBox","spacing","2",None,None,None,None,None), - (5,149,"GtkWidget","halign","center",None,None,None,None,None), - (5,150,"GtkImage","icon-name","image-missing",None,None,None,None,None), - (5,151,"GtkLabel","label","Select",1,None,None,None,None), - (5,152,"GtkWidget","focusable","1",None,None,None,None,None), - (5,152,"GtkWidget","receives-default","1",None,None,None,None,None), - (5,153,"GtkBox","spacing","2",None,None,None,None,None), - (5,153,"GtkWidget","halign","center",None,None,None,None,None), - (5,154,"GtkImage","icon-name","image-missing",None,None,None,None,None), - (5,155,"GtkLabel","label","Compare",1,None,None,None,None), - (5,156,"GtkWidget","focusable","1",None,None,None,None,None), - (5,156,"GtkWidget","receives-default","1",None,None,None,None,None), - (5,157,"GtkBox","spacing","2",None,None,None,None,None), - (5,157,"GtkWidget","halign","center",None,None,None,None,None), - (5,158,"GtkImage","icon-name","image-missing",None,None,None,None,None), - (5,159,"GtkLabel","label","Delete",1,None,None,None,None), - (5,160,"GtkWidget","focusable","1",None,None,None,None,None), - (5,160,"GtkWidget","receives-default","1",None,None,None,None,None), - (5,161,"GtkBox","spacing","2",None,None,None,None,None), - (5,161,"GtkWidget","halign","center",None,None,None,None,None), - (5,162,"GtkImage","icon-name","image-missing",None,None,None,None,None), - (5,163,"GtkLabel","label","Move",1,None,None,None,None), - (5,164,"GtkWidget","focusable","1",None,None,None,None,None), - (5,164,"GtkWidget","receives-default","1",None,None,None,None,None), - (5,165,"GtkBox","spacing","2",None,None,None,None,None), - (5,165,"GtkWidget","halign","center",None,None,None,None,None), - (5,166,"GtkImage","icon-name","image-missing",None,None,None,None,None), - (5,167,"GtkLabel","label","Save",1,None,None,None,None), - (5,168,"GtkWidget","focusable","1",None,None,None,None,None), - (5,168,"GtkWidget","receives-default","1",None,None,None,None,None), - (5,169,"GtkBox","spacing","2",None,None,None,None,None), - (5,169,"GtkWidget","halign","center",None,None,None,None,None), - (5,170,"GtkImage","icon-name","image-missing",None,None,None,None,None), - (5,171,"GtkLabel","label","Symlink",1,None,None,None,None), - (5,172,"GtkWidget","focusable","1",None,None,None,None,None), - (5,172,"GtkWidget","receives-default","1",None,None,None,None,None), - (5,173,"GtkBox","spacing","2",None,None,None,None,None), - (5,173,"GtkWidget","halign","center",None,None,None,None,None), - (5,174,"GtkImage","icon-name","image-missing",None,None,None,None,None), - (5,175,"GtkLabel","label","Hardlink",1,None,None,None,None), (5,176,"GtkWidget","margin-bottom","5",None,None,None,None,None), (5,176,"GtkWidget","margin-end","5",None,None,None,None,None), (5,176,"GtkWidget","margin-start","5",None,None,None,None,None), @@ -719,6 +668,61 @@ (5,185,"GtkWidget","focusable","1",None,None,None,None,None), (5,185,"GtkWidget","receives-default","1",None,None,None,None,None), (5,186,"GtkImage","icon-name","image-missing",None,None,None,None,None), + (5,187,"GtkWidget","halign","end",None,None,None,None,None), + (5,187,"GtkWidget","hexpand","True",None,None,None,None,None), + (5,188,"GtkBox","spacing","2",None,None,None,None,None), + (5,188,"GtkWidget","halign","end",None,None,None,None,None), + (5,189,"GtkWidget","focus-on-click","0",None,None,None,None,None), + (5,189,"GtkWidget","focusable","1",None,None,None,None,None), + (5,189,"GtkWidget","receives-default","1",None,None,None,None,None), + (5,190,"GtkBox","spacing","2",None,None,None,None,None), + (5,190,"GtkWidget","halign","center",None,None,None,None,None), + (5,191,"GtkImage","icon-name","image-missing",None,None,None,None,None), + (5,192,"GtkLabel","label","Select",1,None,None,None,None), + (5,193,"GtkWidget","focusable","1",None,None,None,None,None), + (5,193,"GtkWidget","receives-default","1",None,None,None,None,None), + (5,194,"GtkBox","spacing","2",None,None,None,None,None), + (5,194,"GtkWidget","halign","center",None,None,None,None,None), + (5,195,"GtkImage","icon-name","image-missing",None,None,None,None,None), + (5,196,"GtkLabel","label","Compare",1,None,None,None,None), + (5,197,"GtkWidget","focusable","1",None,None,None,None,None), + (5,197,"GtkWidget","receives-default","1",None,None,None,None,None), + (5,198,"GtkBox","spacing","2",None,None,None,None,None), + (5,198,"GtkWidget","halign","center",None,None,None,None,None), + (5,199,"GtkImage","icon-name","image-missing",None,None,None,None,None), + (5,200,"GtkLabel","label","Delete",1,None,None,None,None), + (5,201,"GtkWidget","focusable","1",None,None,None,None,None), + (5,201,"GtkWidget","receives-default","1",None,None,None,None,None), + (5,202,"GtkBox","spacing","2",None,None,None,None,None), + (5,202,"GtkWidget","halign","center",None,None,None,None,None), + (5,203,"GtkImage","icon-name","image-missing",None,None,None,None,None), + (5,204,"GtkLabel","label","Move",1,None,None,None,None), + (5,205,"GtkWidget","focusable","1",None,None,None,None,None), + (5,205,"GtkWidget","receives-default","1",None,None,None,None,None), + (5,206,"GtkBox","spacing","2",None,None,None,None,None), + (5,206,"GtkWidget","halign","center",None,None,None,None,None), + (5,207,"GtkImage","icon-name","image-missing",None,None,None,None,None), + (5,208,"GtkLabel","label","Save",1,None,None,None,None), + (5,209,"GtkWidget","focusable","1",None,None,None,None,None), + (5,209,"GtkWidget","receives-default","1",None,None,None,None,None), + (5,210,"GtkBox","spacing","2",None,None,None,None,None), + (5,210,"GtkWidget","halign","center",None,None,None,None,None), + (5,211,"GtkImage","icon-name","image-missing",None,None,None,None,None), + (5,212,"GtkLabel","label","Symlink",1,None,None,None,None), + (5,213,"GtkWidget","focusable","1",None,None,None,None,None), + (5,213,"GtkWidget","receives-default","1",None,None,None,None,None), + (5,214,"GtkBox","spacing","2",None,None,None,None,None), + (5,214,"GtkWidget","halign","center",None,None,None,None,None), + (5,215,"GtkImage","icon-name","image-missing",None,None,None,None,None), + (5,216,"GtkLabel","label","Hardlink",1,None,None,None,None), + (5,217,"GtkWidget","focusable","1",None,None,None,None,None), + (5,217,"GtkWidget","receives-default","1",None,None,None,None,None), + (5,218,"GtkImage","icon-name","image-missing",None,None,None,None,None), + (5,218,"GtkWidget","halign","center",None,None,None,None,None), + (5,219,"GtkWidget","focusable","1",None,None,None,None,None), + (5,219,"GtkWidget","receives-default","1",None,None,None,None,None), + (5,220,"GtkImage","icon-name","image-missing",None,None,None,None,None), + (5,220,"GtkWidget","halign","center",None,None,None,None,None), (6,1,"GtkPopover","child",None,None,None,None,None,2), (6,1,"GtkPopover","position","left",None,None,None,None,None), (6,2,"GtkOrientable","orientation","vertical",None,None,None,None,None), diff --git a/czkawka_gui/ui/main_window.ui b/czkawka_gui/ui/main_window.ui index bd7f9ca..4f35945 100644 --- a/czkawka_gui/ui/main_window.ui +++ b/czkawka_gui/ui/main_window.ui @@ -807,7 +807,7 @@ 5 2 - + 2 @@ -834,49 +834,164 @@ - - 1 - 1 + + end + True - - center - image-missing - - - - - - - 1 - 1 - - - center - image-missing - - - - - - - 2 - - - 0 - 1 - 1 + + end + 2 - - center - 2 + + 0 + 1 + 1 - - image-missing + + center + 2 + + + image-missing + + + + + Select + + + + + + + 1 + 1 - - Select + + center + 2 + + + image-missing + + + + + Compare + + + + + + + + + 1 + 1 + + + center + 2 + + + image-missing + + + + + Delete + + + + + + + + + 1 + 1 + + + center + 2 + + + image-missing + + + + + Move + + + + + + + + + 1 + 1 + + + center + 2 + + + image-missing + + + + + Save + + + + + + + + + 1 + 1 + + + center + 2 + + + image-missing + + + + + Symlink + + + + + + + + + 1 + 1 + + + center + 2 + + + image-missing + + + + + Hardlink + + @@ -884,133 +999,25 @@ - + 1 1 - + center - 2 - - - image-missing - - - - - Compare - - + image-missing - + 1 1 - + center - 2 - - - image-missing - - - - - Delete - - - - - - - - - 1 - 1 - - - center - 2 - - - image-missing - - - - - Move - - - - - - - - - 1 - 1 - - - center - 2 - - - image-missing - - - - - Save - - - - - - - - - 1 - 1 - - - center - 2 - - - image-missing - - - - - Symlink - - - - - - - - - 1 - 1 - - - center - 2 - - - image-missing - - - - - Hardlink - - + image-missing