From b7e4eaccafe522143efcc5330a2f9a3df0ca8d7a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rafa=C5=82=20Mikrut?= Date: Sat, 27 Nov 2021 20:49:20 +0100 Subject: [PATCH] Modified include organization --- czkawka_cli/src/commands.rs | 8 +-- czkawka_cli/src/main.rs | 10 ++-- czkawka_core/src/big_file.rs | 18 ++++--- czkawka_core/src/broken_files.rs | 17 ++++--- czkawka_core/src/common.rs | 3 +- czkawka_core/src/common_directory.rs | 5 +- czkawka_core/src/common_extensions.rs | 3 +- czkawka_core/src/common_items.rs | 5 +- czkawka_core/src/duplicate.rs | 22 ++++---- czkawka_core/src/empty_files.rs | 11 ++-- czkawka_core/src/empty_folder.rs | 14 ++--- czkawka_core/src/invalid_symlinks.rs | 11 ++-- czkawka_core/src/same_music.rs | 17 ++++--- czkawka_core/src/similar_images.rs | 26 +++++----- czkawka_core/src/similar_videos.rs | 24 +++++---- czkawka_core/src/temporary.rs | 11 ++-- czkawka_gui/src/compute_results.rs | 18 ++++--- czkawka_gui/src/connect_about_buttons.rs | 3 +- czkawka_gui/src/connect_button_delete.rs | 12 +++-- czkawka_gui/src/connect_button_hardlink.rs | 13 +++-- czkawka_gui/src/connect_button_move.rs | 8 +-- czkawka_gui/src/connect_button_save.rs | 13 +++-- czkawka_gui/src/connect_button_search.rs | 24 ++++----- czkawka_gui/src/connect_button_select.rs | 6 ++- czkawka_gui/src/connect_button_stop.rs | 3 +- czkawka_gui/src/connect_header_buttons.rs | 3 +- .../src/connect_hide_text_view_errors.rs | 3 +- czkawka_gui/src/connect_notebook_tabs.rs | 3 +- czkawka_gui/src/connect_popovers.rs | 8 +-- czkawka_gui/src/connect_progress_window.rs | 9 ++-- .../src/connect_selection_of_directories.rs | 5 +- czkawka_gui/src/connect_settings.rs | 5 +- .../src/connect_similar_image_size_change.rs | 6 ++- czkawka_gui/src/create_tree_view.rs | 3 +- czkawka_gui/src/gui_data.rs | 33 ++++++------ czkawka_gui/src/gui_main_notebook.rs | 3 +- czkawka_gui/src/help_functions.rs | 13 +++-- czkawka_gui/src/initialize_gui.rs | 23 +++++---- czkawka_gui/src/main.rs | 51 ++++++++++--------- czkawka_gui/src/opening_selecting_records.rs | 3 +- czkawka_gui/src/saving_loading.rs | 14 ++--- czkawka_gui/src/taskbar_progress.rs | 5 +- czkawka_gui/src/taskbar_progress_dummy.rs | 1 + czkawka_gui/src/taskbar_progress_win.rs | 2 + 44 files changed, 280 insertions(+), 218 deletions(-) diff --git a/czkawka_cli/src/commands.rs b/czkawka_cli/src/commands.rs index 35fda36..5c7326a 100644 --- a/czkawka_cli/src/commands.rs +++ b/czkawka_cli/src/commands.rs @@ -1,9 +1,11 @@ +use std::path::PathBuf; + +use img_hash::{FilterType, HashAlg}; +use structopt::StructOpt; + use czkawka_core::duplicate::{CheckingMethod, DeleteMethod, HashType}; use czkawka_core::same_music::MusicSimilarity; use czkawka_core::similar_images::SimilarityPreset; -use img_hash::{FilterType, HashAlg}; -use std::path::PathBuf; -use structopt::StructOpt; #[derive(Debug, StructOpt)] #[structopt(name = "czkawka", help_message = HELP_MESSAGE, template = HELP_TEMPLATE)] diff --git a/czkawka_cli/src/main.rs b/czkawka_cli/src/main.rs index 37d653c..5a951da 100644 --- a/czkawka_cli/src/main.rs +++ b/czkawka_cli/src/main.rs @@ -1,10 +1,10 @@ -mod commands; +use std::process; -use commands::Commands; +use structopt::StructOpt; +use commands::Commands; #[allow(unused_imports)] // It is used in release for print_results(). use czkawka_core::common_traits::*; - use czkawka_core::similar_images::test_image_conversion_speed; use czkawka_core::{ big_file::{self, BigFile}, @@ -19,8 +19,8 @@ use czkawka_core::{ similar_videos::SimilarVideos, temporary::{self, Temporary}, }; -use std::process; -use structopt::StructOpt; + +mod commands; fn main() { let command = Commands::from_args(); diff --git a/czkawka_core/src/big_file.rs b/czkawka_core/src/big_file.rs index 5152ed8..ede2855 100644 --- a/czkawka_core/src/big_file.rs +++ b/czkawka_core/src/big_file.rs @@ -1,11 +1,3 @@ -use crate::common::Common; -use crate::common_directory::Directories; -use crate::common_extensions::Extensions; -use crate::common_items::ExcludedItems; -use crate::common_messages::Messages; -use crate::common_traits::{DebugPrint, PrintResults, SaveResults}; -use crossbeam_channel::Receiver; -use humansize::{file_size_opts as options, FileSize}; use std::collections::BTreeMap; use std::ffi::OsStr; use std::fs::{File, Metadata}; @@ -19,6 +11,16 @@ use std::time::Duration; use std::time::{SystemTime, UNIX_EPOCH}; use std::{fs, thread}; +use crossbeam_channel::Receiver; +use humansize::{file_size_opts as options, FileSize}; + +use crate::common::Common; +use crate::common_directory::Directories; +use crate::common_extensions::Extensions; +use crate::common_items::ExcludedItems; +use crate::common_messages::Messages; +use crate::common_traits::{DebugPrint, PrintResults, SaveResults}; + #[derive(Debug)] pub struct ProgressData { pub files_checked: usize, diff --git a/czkawka_core/src/broken_files.rs b/czkawka_core/src/broken_files.rs index 87555c4..def5d07 100644 --- a/czkawka_core/src/broken_files.rs +++ b/czkawka_core/src/broken_files.rs @@ -1,23 +1,24 @@ +use std::collections::BTreeMap; use std::fs::{File, Metadata, OpenOptions}; use std::io::prelude::*; +use std::io::{BufReader, BufWriter}; use std::path::{Path, PathBuf}; +use std::sync::atomic::{AtomicBool, AtomicUsize, Ordering}; +use std::sync::Arc; +use std::thread::sleep; use std::time::{Duration, SystemTime, UNIX_EPOCH}; use std::{fs, mem, thread}; +use crossbeam_channel::Receiver; +use directories_next::ProjectDirs; +use rayon::prelude::*; + use crate::common::Common; use crate::common_directory::Directories; use crate::common_extensions::Extensions; use crate::common_items::ExcludedItems; use crate::common_messages::Messages; use crate::common_traits::*; -use crossbeam_channel::Receiver; -use directories_next::ProjectDirs; -use rayon::prelude::*; -use std::collections::BTreeMap; -use std::io::{BufReader, BufWriter}; -use std::sync::atomic::{AtomicBool, AtomicUsize, Ordering}; -use std::sync::Arc; -use std::thread::sleep; const CACHE_FILE_NAME: &str = "cache_broken_files.txt"; diff --git a/czkawka_core/src/common.rs b/czkawka_core/src/common.rs index 958e253..6fcb024 100644 --- a/czkawka_core/src/common.rs +++ b/czkawka_core/src/common.rs @@ -126,9 +126,10 @@ impl Common { #[cfg(test)] mod test { - use crate::common::Common; use std::path::PathBuf; + use crate::common::Common; + #[test] fn test_regex() { assert!(Common::regex_check("*home*", "/home/rafal")); diff --git a/czkawka_core/src/common_directory.rs b/czkawka_core/src/common_directory.rs index d91938d..0cd1ad0 100644 --- a/czkawka_core/src/common_directory.rs +++ b/czkawka_core/src/common_directory.rs @@ -1,8 +1,9 @@ -use crate::common::Common; -use crate::common_messages::Messages; use std::path::{Path, PathBuf}; use std::time::SystemTime; +use crate::common::Common; +use crate::common_messages::Messages; + #[derive(Default)] pub struct Directories { pub excluded_directories: Vec, diff --git a/czkawka_core/src/common_extensions.rs b/czkawka_core/src/common_extensions.rs index 3c6d47f..87b1aa3 100644 --- a/czkawka_core/src/common_extensions.rs +++ b/czkawka_core/src/common_extensions.rs @@ -1,6 +1,7 @@ +use std::time::SystemTime; + use crate::common::Common; use crate::common_messages::Messages; -use std::time::SystemTime; #[derive(Default)] pub struct Extensions { diff --git a/czkawka_core/src/common_items.rs b/czkawka_core/src/common_items.rs index b2c2530..558d2df 100644 --- a/czkawka_core/src/common_items.rs +++ b/czkawka_core/src/common_items.rs @@ -1,8 +1,9 @@ -use crate::common::Common; -use crate::common_messages::Messages; use std::path::Path; use std::time::SystemTime; +use crate::common::Common; +use crate::common_messages::Messages; + #[derive(Default)] pub struct ExcludedItems { pub items: Vec, diff --git a/czkawka_core/src/duplicate.rs b/czkawka_core/src/duplicate.rs index 38623f4..c4e8a7c 100644 --- a/czkawka_core/src/duplicate.rs +++ b/czkawka_core/src/duplicate.rs @@ -1,30 +1,31 @@ -use crossbeam_channel::Receiver; -use humansize::{file_size_opts as options, FileSize}; use std::collections::BTreeMap; #[cfg(target_family = "unix")] use std::collections::HashSet; use std::fs::{File, Metadata, OpenOptions}; +use std::hash::Hasher; use std::io::prelude::*; use std::io::{self, Error, ErrorKind}; +use std::io::{BufReader, BufWriter}; #[cfg(target_family = "unix")] use std::os::unix::fs::MetadataExt; use std::path::{Path, PathBuf}; +use std::sync::atomic::{AtomicBool, AtomicUsize, Ordering}; +use std::sync::Arc; +use std::thread::sleep; use std::time::{Duration, SystemTime, UNIX_EPOCH}; use std::{fs, mem, thread}; +use crossbeam_channel::Receiver; +use directories_next::ProjectDirs; +use humansize::{file_size_opts as options, FileSize}; +use rayon::prelude::*; + use crate::common::Common; use crate::common_directory::Directories; use crate::common_extensions::Extensions; use crate::common_items::ExcludedItems; use crate::common_messages::Messages; use crate::common_traits::*; -use directories_next::ProjectDirs; -use rayon::prelude::*; -use std::hash::Hasher; -use std::io::{BufReader, BufWriter}; -use std::sync::atomic::{AtomicBool, AtomicUsize, Ordering}; -use std::sync::Arc; -use std::thread::sleep; const HASH_MB_LIMIT_BYTES: u64 = 1024 * 1024; // 1MB @@ -1482,7 +1483,6 @@ fn load_hashes_from_file(text_messages: &mut Messages, type_of_hash: &HashType) #[cfg(test)] mod tests { - use super::*; use std::fs::{read_dir, File}; use std::io; #[cfg(target_family = "windows")] @@ -1490,6 +1490,8 @@ mod tests { #[cfg(target_family = "unix")] use std::os::unix::fs::MetadataExt; + use super::*; + #[cfg(target_family = "unix")] fn assert_inode(before: &Metadata, after: &Metadata) { assert_eq!(before.ino(), after.ino()); diff --git a/czkawka_core/src/empty_files.rs b/czkawka_core/src/empty_files.rs index 1d7488b..dc663e8 100644 --- a/czkawka_core/src/empty_files.rs +++ b/czkawka_core/src/empty_files.rs @@ -1,20 +1,21 @@ use std::fs::{File, Metadata}; use std::io::prelude::*; +use std::io::BufWriter; use std::path::PathBuf; +use std::sync::atomic::{AtomicBool, AtomicUsize, Ordering}; +use std::sync::Arc; +use std::thread::sleep; use std::time::{Duration, SystemTime, UNIX_EPOCH}; use std::{fs, thread}; +use crossbeam_channel::Receiver; + use crate::common::Common; use crate::common_directory::Directories; use crate::common_extensions::Extensions; use crate::common_items::ExcludedItems; use crate::common_messages::Messages; use crate::common_traits::*; -use crossbeam_channel::Receiver; -use std::io::BufWriter; -use std::sync::atomic::{AtomicBool, AtomicUsize, Ordering}; -use std::sync::Arc; -use std::thread::sleep; #[derive(Debug)] pub struct ProgressData { diff --git a/czkawka_core/src/empty_folder.rs b/czkawka_core/src/empty_folder.rs index f66500a..4f44f76 100644 --- a/czkawka_core/src/empty_folder.rs +++ b/czkawka_core/src/empty_folder.rs @@ -1,9 +1,3 @@ -use crate::common::Common; -use crate::common_directory::Directories; -use crate::common_items::ExcludedItems; -use crate::common_messages::Messages; -use crate::common_traits::{DebugPrint, PrintResults, SaveResults}; -use crossbeam_channel::Receiver; use std::collections::BTreeMap; use std::fs::{File, Metadata}; use std::io::{BufWriter, Write}; @@ -14,6 +8,14 @@ use std::thread::sleep; use std::time::{Duration, SystemTime, UNIX_EPOCH}; use std::{fs, thread}; +use crossbeam_channel::Receiver; + +use crate::common::Common; +use crate::common_directory::Directories; +use crate::common_items::ExcludedItems; +use crate::common_messages::Messages; +use crate::common_traits::{DebugPrint, PrintResults, SaveResults}; + #[derive(Debug)] pub struct ProgressData { pub current_stage: u8, diff --git a/czkawka_core/src/invalid_symlinks.rs b/czkawka_core/src/invalid_symlinks.rs index 5e2727e..b0df689 100644 --- a/czkawka_core/src/invalid_symlinks.rs +++ b/czkawka_core/src/invalid_symlinks.rs @@ -1,20 +1,21 @@ use std::fs::{File, Metadata}; use std::io::prelude::*; +use std::io::BufWriter; use std::path::PathBuf; +use std::sync::atomic::{AtomicBool, AtomicUsize, Ordering}; +use std::sync::Arc; +use std::thread::sleep; use std::time::{Duration, SystemTime, UNIX_EPOCH}; use std::{fs, thread}; +use crossbeam_channel::Receiver; + use crate::common::Common; use crate::common_directory::Directories; use crate::common_extensions::Extensions; use crate::common_items::ExcludedItems; use crate::common_messages::Messages; use crate::common_traits::*; -use crossbeam_channel::Receiver; -use std::io::BufWriter; -use std::sync::atomic::{AtomicBool, AtomicUsize, Ordering}; -use std::sync::Arc; -use std::thread::sleep; #[derive(Debug)] pub struct ProgressData { diff --git a/czkawka_core/src/same_music.rs b/czkawka_core/src/same_music.rs index 3b6532c..478c23f 100644 --- a/czkawka_core/src/same_music.rs +++ b/czkawka_core/src/same_music.rs @@ -1,22 +1,23 @@ +use std::collections::BTreeMap; use std::fs::{File, Metadata}; use std::io::prelude::*; +use std::io::BufWriter; use std::path::PathBuf; +use std::sync::atomic::{AtomicBool, AtomicUsize, Ordering}; +use std::sync::Arc; +use std::thread::sleep; use std::time::{Duration, SystemTime, UNIX_EPOCH}; use std::{fs, thread}; +use audiotags::Tag; +use crossbeam_channel::Receiver; +use rayon::prelude::*; + use crate::common::Common; use crate::common_directory::Directories; use crate::common_items::ExcludedItems; use crate::common_messages::Messages; use crate::common_traits::*; -use audiotags::Tag; -use crossbeam_channel::Receiver; -use rayon::prelude::*; -use std::collections::BTreeMap; -use std::io::BufWriter; -use std::sync::atomic::{AtomicBool, AtomicUsize, Ordering}; -use std::sync::Arc; -use std::thread::sleep; #[derive(Debug)] pub struct ProgressData { diff --git a/czkawka_core/src/similar_images.rs b/czkawka_core/src/similar_images.rs index dbf126b..6dd5c5f 100644 --- a/czkawka_core/src/similar_images.rs +++ b/czkawka_core/src/similar_images.rs @@ -1,15 +1,3 @@ -use crate::common::Common; -use crate::common_directory::Directories; -use crate::common_items::ExcludedItems; -use crate::common_messages::Messages; -use crate::common_traits::{DebugPrint, PrintResults, SaveResults}; -use bk_tree::BKTree; -use crossbeam_channel::Receiver; -use directories_next::ProjectDirs; -use humansize::{file_size_opts as options, FileSize}; -use image::GenericImageView; -use img_hash::{FilterType, HashAlg, HasherConfig}; -use rayon::prelude::*; use std::collections::{BTreeMap, BTreeSet}; use std::fs::OpenOptions; use std::fs::{File, Metadata}; @@ -22,6 +10,20 @@ use std::thread::sleep; use std::time::{Duration, SystemTime, UNIX_EPOCH}; use std::{fs, mem, thread}; +use bk_tree::BKTree; +use crossbeam_channel::Receiver; +use directories_next::ProjectDirs; +use humansize::{file_size_opts as options, FileSize}; +use image::GenericImageView; +use img_hash::{FilterType, HashAlg, HasherConfig}; +use rayon::prelude::*; + +use crate::common::Common; +use crate::common_directory::Directories; +use crate::common_items::ExcludedItems; +use crate::common_messages::Messages; +use crate::common_traits::{DebugPrint, PrintResults, SaveResults}; + // TODO check for better values pub const SIMILAR_VALUES: [[u32; 6]; 3] = [ [0, 1, 2, 3, 4, 5], // 4 - Max 16 diff --git a/czkawka_core/src/similar_videos.rs b/czkawka_core/src/similar_videos.rs index 38fc507..9f992c1 100644 --- a/czkawka_core/src/similar_videos.rs +++ b/czkawka_core/src/similar_videos.rs @@ -1,14 +1,3 @@ -use crate::common::Common; -use crate::common_directory::Directories; -use crate::common_extensions::Extensions; -use crate::common_items::ExcludedItems; -use crate::common_messages::Messages; -use crate::common_traits::{DebugPrint, PrintResults, SaveResults}; -use crossbeam_channel::Receiver; -use directories_next::ProjectDirs; -use ffmpeg_cmdline_utils::FfmpegErrorKind::FfmpegNotFound; -use humansize::{file_size_opts as options, FileSize}; -use rayon::prelude::*; use std::collections::{BTreeMap, HashMap}; use std::fs::OpenOptions; use std::fs::{File, Metadata}; @@ -20,9 +9,22 @@ use std::sync::Arc; use std::thread::sleep; use std::time::{Duration, SystemTime, UNIX_EPOCH}; use std::{fs, mem, thread}; + +use crossbeam_channel::Receiver; +use directories_next::ProjectDirs; +use ffmpeg_cmdline_utils::FfmpegErrorKind::FfmpegNotFound; +use humansize::{file_size_opts as options, FileSize}; +use rayon::prelude::*; use vid_dup_finder_lib::HashCreationErrorKind::DetermineVideo; use vid_dup_finder_lib::{NormalizedTolerance, VideoHash}; +use crate::common::Common; +use crate::common_directory::Directories; +use crate::common_extensions::Extensions; +use crate::common_items::ExcludedItems; +use crate::common_messages::Messages; +use crate::common_traits::{DebugPrint, PrintResults, SaveResults}; + pub const MAX_TOLERANCE: i32 = 20; #[derive(Debug)] diff --git a/czkawka_core/src/temporary.rs b/czkawka_core/src/temporary.rs index b9cf0d1..3e5c496 100644 --- a/czkawka_core/src/temporary.rs +++ b/czkawka_core/src/temporary.rs @@ -1,19 +1,20 @@ use std::fs::{File, Metadata}; use std::io::prelude::*; +use std::io::BufWriter; use std::path::PathBuf; +use std::sync::atomic::{AtomicBool, AtomicUsize, Ordering}; +use std::sync::Arc; +use std::thread::sleep; use std::time::{Duration, SystemTime, UNIX_EPOCH}; use std::{fs, thread}; +use crossbeam_channel::Receiver; + use crate::common::Common; use crate::common_directory::Directories; use crate::common_items::ExcludedItems; use crate::common_messages::Messages; use crate::common_traits::*; -use crossbeam_channel::Receiver; -use std::io::BufWriter; -use std::sync::atomic::{AtomicBool, AtomicUsize, Ordering}; -use std::sync::Arc; -use std::thread::sleep; #[derive(Debug)] pub struct ProgressData { diff --git a/czkawka_gui/src/compute_results.rs b/czkawka_gui/src/compute_results.rs index 945acde..2b96683 100644 --- a/czkawka_gui/src/compute_results.rs +++ b/czkawka_gui/src/compute_results.rs @@ -1,18 +1,20 @@ -use humansize::{file_size_opts as options, FileSize}; use std::cell::RefCell; use std::collections::HashMap; +use std::path::PathBuf; +use std::rc::Rc; -use crate::gui_data::GuiData; -use crate::help_functions::*; -use crate::notebook_enums::*; use chrono::NaiveDateTime; +use glib::Receiver; +use gtk::prelude::*; +use humansize::{file_size_opts as options, FileSize}; + use czkawka_core::duplicate::CheckingMethod; use czkawka_core::same_music::MusicSimilarity; use czkawka_core::similar_images; -use glib::Receiver; -use gtk::prelude::*; -use std::path::PathBuf; -use std::rc::Rc; + +use crate::gui_data::GuiData; +use crate::help_functions::*; +use crate::notebook_enums::*; pub fn connect_compute_results(gui_data: &GuiData, glib_stop_receiver: Receiver) { let buttons_search = gui_data.bottom_buttons.buttons_search.clone(); diff --git a/czkawka_gui/src/connect_about_buttons.rs b/czkawka_gui/src/connect_about_buttons.rs index 889961e..bd5778b 100644 --- a/czkawka_gui/src/connect_about_buttons.rs +++ b/czkawka_gui/src/connect_about_buttons.rs @@ -1,6 +1,7 @@ -use crate::gui_data::GuiData; use gtk::prelude::*; +use crate::gui_data::GuiData; + const SPONSOR_SITE: &str = "https://github.com/sponsors/qarmin"; const REPOSITORY_SITE: &str = "https://github.com/qarmin/czkawka"; const INSTRUCTION_SITE: &str = "https://github.com/qarmin/czkawka/blob/master/instructions/Instruction.md"; diff --git a/czkawka_gui/src/connect_button_delete.rs b/czkawka_gui/src/connect_button_delete.rs index 35cfa73..f09e7b3 100644 --- a/czkawka_gui/src/connect_button_delete.rs +++ b/czkawka_gui/src/connect_button_delete.rs @@ -1,12 +1,14 @@ -use crate::gui_data::GuiData; -use crate::help_functions::*; -use crate::notebook_enums::*; -use gtk::prelude::*; -use gtk::{Align, CheckButton, Dialog, TextView}; use std::collections::BTreeMap; use std::fs; use std::fs::Metadata; +use gtk::prelude::*; +use gtk::{Align, CheckButton, Dialog, TextView}; + +use crate::gui_data::GuiData; +use crate::help_functions::*; +use crate::notebook_enums::*; + // TODO add support for checking if really symlink doesn't point to correct directory/file pub fn connect_button_delete(gui_data: &GuiData) { diff --git a/czkawka_gui/src/connect_button_hardlink.rs b/czkawka_gui/src/connect_button_hardlink.rs index d6d484c..d15fc98 100644 --- a/czkawka_gui/src/connect_button_hardlink.rs +++ b/czkawka_gui/src/connect_button_hardlink.rs @@ -1,11 +1,14 @@ +use std::fs; +use std::path::PathBuf; + +use gtk::prelude::*; +use gtk::{TextView, TreeIter, TreePath}; + +use czkawka_core::duplicate::make_hard_link; + use crate::gui_data::GuiData; use crate::help_functions::*; use crate::notebook_enums::*; -use czkawka_core::duplicate::make_hard_link; -use gtk::prelude::*; -use gtk::{TextView, TreeIter, TreePath}; -use std::fs; -use std::path::PathBuf; pub fn connect_button_hardlink_symlink(gui_data: &GuiData) { let buttons_hardlink = gui_data.bottom_buttons.buttons_hardlink.clone(); diff --git a/czkawka_gui/src/connect_button_move.rs b/czkawka_gui/src/connect_button_move.rs index 746e787..514f907 100644 --- a/czkawka_gui/src/connect_button_move.rs +++ b/czkawka_gui/src/connect_button_move.rs @@ -1,9 +1,11 @@ +use std::path::{Path, PathBuf}; + +use gtk::prelude::*; +use gtk::TreePath; + use crate::gui_data::GuiData; use crate::help_functions::*; use crate::notebook_enums::*; -use gtk::prelude::*; -use gtk::TreePath; -use std::path::{Path, PathBuf}; pub fn connect_button_move(gui_data: &GuiData) { let buttons_move = gui_data.bottom_buttons.buttons_move.clone(); diff --git a/czkawka_gui/src/connect_button_save.rs b/czkawka_gui/src/connect_button_save.rs index 553f259..ea2d0ef 100644 --- a/czkawka_gui/src/connect_button_save.rs +++ b/czkawka_gui/src/connect_button_save.rs @@ -1,12 +1,15 @@ -use crate::gui_data::GuiData; -use crate::notebook_enums::*; -use czkawka_core::common_traits::SaveResults; -use gtk::prelude::*; -use gtk::{Button, Entry}; use std::cell::RefCell; use std::collections::HashMap; use std::rc::Rc; +use gtk::prelude::*; +use gtk::{Button, Entry}; + +use czkawka_core::common_traits::SaveResults; + +use crate::gui_data::GuiData; +use crate::notebook_enums::*; + pub fn connect_button_save(gui_data: &GuiData) { let buttons_save = gui_data.bottom_buttons.buttons_save.clone(); let buttons_save_clone = gui_data.bottom_buttons.buttons_save.clone(); diff --git a/czkawka_gui/src/connect_button_search.rs b/czkawka_gui/src/connect_button_search.rs index 74eb2e6..07cf0ce 100644 --- a/czkawka_gui/src/connect_button_search.rs +++ b/czkawka_gui/src/connect_button_search.rs @@ -1,8 +1,12 @@ -use czkawka_core::*; +use std::sync::atomic::{AtomicBool, Ordering}; +use std::sync::Arc; +use std::thread; + +use glib::Sender; +use gtk::prelude::*; +use gtk::WindowPosition; +use img_hash::{FilterType, HashAlg}; -use crate::gui_data::GuiData; -use crate::help_functions::*; -use crate::notebook_enums::*; use czkawka_core::big_file::BigFile; use czkawka_core::broken_files::BrokenFiles; use czkawka_core::duplicate::{DuplicateFinder, HashType}; @@ -13,15 +17,11 @@ use czkawka_core::same_music::{MusicSimilarity, SameMusic}; use czkawka_core::similar_images::SimilarImages; use czkawka_core::similar_videos::SimilarVideos; use czkawka_core::temporary::Temporary; -use glib::Sender; -use gtk::prelude::*; - -use gtk::WindowPosition; -use img_hash::{FilterType, HashAlg}; -use std::sync::atomic::{AtomicBool, Ordering}; -use std::sync::Arc; -use std::thread; +use czkawka_core::*; +use crate::gui_data::GuiData; +use crate::help_functions::*; +use crate::notebook_enums::*; use crate::taskbar_progress::tbp_flags::TBPF_NOPROGRESS; #[allow(clippy::too_many_arguments)] diff --git a/czkawka_gui/src/connect_button_select.rs b/czkawka_gui/src/connect_button_select.rs index d2354b0..db0bd96 100644 --- a/czkawka_gui/src/connect_button_select.rs +++ b/czkawka_gui/src/connect_button_select.rs @@ -1,9 +1,11 @@ +use std::collections::HashMap; + +use gtk::prelude::*; + use crate::gui_data::GuiData; use crate::gui_popovers::GuiPopovers; use crate::help_functions::PopoverTypes; use crate::notebook_enums::*; -use gtk::prelude::*; -use std::collections::HashMap; pub fn connect_button_select(gui_data: &GuiData) { let mut hashmap: HashMap> = Default::default(); diff --git a/czkawka_gui/src/connect_button_stop.rs b/czkawka_gui/src/connect_button_stop.rs index b4eea96..24cf5f1 100644 --- a/czkawka_gui/src/connect_button_stop.rs +++ b/czkawka_gui/src/connect_button_stop.rs @@ -1,6 +1,7 @@ -use crate::gui_data::GuiData; use gtk::prelude::*; +use crate::gui_data::GuiData; + pub fn connect_button_stop(gui_data: &GuiData) { let button_stop_in_dialog = gui_data.progress_window.button_stop_in_dialog.clone(); let stop_sender = gui_data.stop_sender.clone(); diff --git a/czkawka_gui/src/connect_header_buttons.rs b/czkawka_gui/src/connect_header_buttons.rs index 04a481e..961cc53 100644 --- a/czkawka_gui/src/connect_header_buttons.rs +++ b/czkawka_gui/src/connect_header_buttons.rs @@ -1,7 +1,8 @@ -use crate::gui_data::GuiData; use gtk::prelude::*; use gtk::WindowPosition; +use crate::gui_data::GuiData; + pub fn connect_button_about(gui_data: &GuiData) { let about_dialog = gui_data.about.about_dialog.clone(); let button_app_info = gui_data.header.button_app_info.clone(); diff --git a/czkawka_gui/src/connect_hide_text_view_errors.rs b/czkawka_gui/src/connect_hide_text_view_errors.rs index 1584ce6..7ab66f3 100644 --- a/czkawka_gui/src/connect_hide_text_view_errors.rs +++ b/czkawka_gui/src/connect_hide_text_view_errors.rs @@ -1,6 +1,7 @@ -use crate::gui_data::GuiData; use gtk::prelude::*; +use crate::gui_data::GuiData; + pub fn connect_hide_text_view_errors(gui_data: &GuiData) { let check_button_settings_show_text_view = gui_data.settings.check_button_settings_show_text_view.clone(); let buttons_show_errors = gui_data.bottom_buttons.buttons_show_errors.clone(); diff --git a/czkawka_gui/src/connect_notebook_tabs.rs b/czkawka_gui/src/connect_notebook_tabs.rs index e73dbc9..f976c84 100644 --- a/czkawka_gui/src/connect_notebook_tabs.rs +++ b/czkawka_gui/src/connect_notebook_tabs.rs @@ -1,7 +1,8 @@ +use gtk::prelude::*; + use crate::gui_data::GuiData; use crate::help_functions::*; use crate::notebook_enums::*; -use gtk::prelude::*; pub fn connect_notebook_tabs(gui_data: &GuiData) { let shared_buttons = gui_data.shared_buttons.clone(); diff --git a/czkawka_gui/src/connect_popovers.rs b/czkawka_gui/src/connect_popovers.rs index 106dffd..063f4f6 100644 --- a/czkawka_gui/src/connect_popovers.rs +++ b/czkawka_gui/src/connect_popovers.rs @@ -1,9 +1,11 @@ -use crate::gui_data::GuiData; -use crate::help_functions::*; -use czkawka_core::common::Common; use gtk::prelude::*; use gtk::{TreeIter, Window}; +use czkawka_core::common::Common; + +use crate::gui_data::GuiData; +use crate::help_functions::*; + // File length variable allows users to choose duplicates which have shorter file name // e.g. 'tar.gz' will be selected instead 'tar.gz (copy)' etc. diff --git a/czkawka_gui/src/connect_progress_window.rs b/czkawka_gui/src/connect_progress_window.rs index 349610d..92cd3b8 100644 --- a/czkawka_gui/src/connect_progress_window.rs +++ b/czkawka_gui/src/connect_progress_window.rs @@ -1,11 +1,10 @@ -use crate::gui_data::GuiData; -use crate::taskbar_progress::tbp_flags::TBPF_INDETERMINATE; +use futures::StreamExt; +use gtk::prelude::*; use czkawka_core::{big_file, broken_files, duplicate, empty_files, empty_folder, invalid_symlinks, same_music, similar_images, similar_videos, temporary}; -use futures::StreamExt; - -use gtk::prelude::*; +use crate::gui_data::GuiData; +use crate::taskbar_progress::tbp_flags::TBPF_INDETERMINATE; #[allow(clippy::too_many_arguments)] pub fn connect_progress_window( diff --git a/czkawka_gui/src/connect_selection_of_directories.rs b/czkawka_gui/src/connect_selection_of_directories.rs index 2c97233..c20958b 100644 --- a/czkawka_gui/src/connect_selection_of_directories.rs +++ b/czkawka_gui/src/connect_selection_of_directories.rs @@ -1,11 +1,12 @@ -use crate::gui_data::GuiData; -use crate::help_functions::{get_list_store, ColumnsDirectory}; use gtk::prelude::*; use gtk::{TreeView, Window}; #[cfg(target_family = "windows")] use czkawka_core::common::Common; +use crate::gui_data::GuiData; +use crate::help_functions::{get_list_store, ColumnsDirectory}; + pub fn connect_selection_of_directories(gui_data: &GuiData) { // Add manually directory { diff --git a/czkawka_gui/src/connect_settings.rs b/czkawka_gui/src/connect_settings.rs index 5bff065..c5e055c 100644 --- a/czkawka_gui/src/connect_settings.rs +++ b/czkawka_gui/src/connect_settings.rs @@ -1,8 +1,9 @@ -use crate::gui_data::GuiData; -use crate::saving_loading::{load_configuration, reset_configuration, save_configuration}; use gtk::prelude::*; use gtk::WindowPosition; +use crate::gui_data::GuiData; +use crate::saving_loading::{load_configuration, reset_configuration, save_configuration}; + pub fn connect_settings(gui_data: &GuiData) { // Connect button settings { diff --git a/czkawka_gui/src/connect_similar_image_size_change.rs b/czkawka_gui/src/connect_similar_image_size_change.rs index 614b958..e14d38d 100644 --- a/czkawka_gui/src/connect_similar_image_size_change.rs +++ b/czkawka_gui/src/connect_similar_image_size_change.rs @@ -1,7 +1,9 @@ -use crate::gui_data::GuiData; -use czkawka_core::similar_images::SIMILAR_VALUES; use gtk::prelude::*; +use czkawka_core::similar_images::SIMILAR_VALUES; + +use crate::gui_data::GuiData; + pub fn connect_similar_image_size_change(gui_data: &GuiData) { // This should set values to max possible value like in return_similarity_from_similarity_preset and get_string_from_similarity { diff --git a/czkawka_gui/src/create_tree_view.rs b/czkawka_gui/src/create_tree_view.rs index 9a34a1a..79ccf48 100644 --- a/czkawka_gui/src/create_tree_view.rs +++ b/czkawka_gui/src/create_tree_view.rs @@ -1,7 +1,8 @@ -use crate::help_functions::*; use gtk::prelude::*; use gtk::TreeViewColumn; +use crate::help_functions::*; + pub fn create_tree_view_duplicates(tree_view: &mut gtk::TreeView) { let model = get_list_store(tree_view); diff --git a/czkawka_gui/src/gui_data.rs b/czkawka_gui/src/gui_data.rs index 910185c..d18cf22 100644 --- a/czkawka_gui/src/gui_data.rs +++ b/czkawka_gui/src/gui_data.rs @@ -1,14 +1,11 @@ -use crate::gui_about::GuiAbout; -use crate::gui_bottom_buttons::GuiBottomButtons; -use crate::gui_header::GuiHeader; -use crate::gui_main_notebook::GuiMainNotebook; -use crate::gui_popovers::GuiPopovers; -use crate::gui_progress_dialog::GuiProgressDialog; -use crate::gui_settings::GuiSettings; -use crate::gui_upper_notepad::GuiUpperNotebook; -use crate::notebook_enums::*; -use crate::taskbar_progress::TaskbarProgress; +use std::cell::RefCell; +use std::collections::HashMap; +use std::rc::Rc; + use crossbeam_channel::unbounded; +use gtk::prelude::*; +use gtk::{Builder, WindowPosition}; + use czkawka_core::big_file::BigFile; use czkawka_core::broken_files::BrokenFiles; use czkawka_core::duplicate::DuplicateFinder; @@ -19,11 +16,17 @@ use czkawka_core::same_music::SameMusic; use czkawka_core::similar_images::SimilarImages; use czkawka_core::similar_videos::SimilarVideos; use czkawka_core::temporary::Temporary; -use gtk::prelude::*; -use gtk::{Builder, WindowPosition}; -use std::cell::RefCell; -use std::collections::HashMap; -use std::rc::Rc; + +use crate::gui_about::GuiAbout; +use crate::gui_bottom_buttons::GuiBottomButtons; +use crate::gui_header::GuiHeader; +use crate::gui_main_notebook::GuiMainNotebook; +use crate::gui_popovers::GuiPopovers; +use crate::gui_progress_dialog::GuiProgressDialog; +use crate::gui_settings::GuiSettings; +use crate::gui_upper_notepad::GuiUpperNotebook; +use crate::notebook_enums::*; +use crate::taskbar_progress::TaskbarProgress; #[derive(Clone)] pub struct GuiData { diff --git a/czkawka_gui/src/gui_main_notebook.rs b/czkawka_gui/src/gui_main_notebook.rs index 8912ac4..cbe553b 100644 --- a/czkawka_gui/src/gui_main_notebook.rs +++ b/czkawka_gui/src/gui_main_notebook.rs @@ -1,7 +1,8 @@ -use crate::notebook_enums::NUMBER_OF_NOTEBOOK_MAIN_TABS; use gtk::prelude::*; use gtk::TreeView; +use crate::notebook_enums::NUMBER_OF_NOTEBOOK_MAIN_TABS; + #[derive(Clone)] pub struct GuiMainNotebook { pub notebook_main: gtk::Notebook, diff --git a/czkawka_gui/src/help_functions.rs b/czkawka_gui/src/help_functions.rs index 8233510..64a5877 100644 --- a/czkawka_gui/src/help_functions.rs +++ b/czkawka_gui/src/help_functions.rs @@ -1,4 +1,9 @@ -use crate::notebook_enums::{NotebookMainEnum, NUMBER_OF_NOTEBOOK_MAIN_TABS}; +use std::collections::HashMap; +use std::path::{Path, PathBuf}; + +use gtk::prelude::*; +use gtk::{ListStore, TextView}; + use czkawka_core::big_file::BigFile; use czkawka_core::broken_files::BrokenFiles; use czkawka_core::common_messages::Messages; @@ -11,10 +16,8 @@ use czkawka_core::same_music::SameMusic; use czkawka_core::similar_images::SimilarImages; use czkawka_core::similar_videos::SimilarVideos; use czkawka_core::temporary::Temporary; -use gtk::prelude::*; -use gtk::{ListStore, TextView}; -use std::collections::HashMap; -use std::path::{Path, PathBuf}; + +use crate::notebook_enums::{NotebookMainEnum, NUMBER_OF_NOTEBOOK_MAIN_TABS}; #[derive(Eq, PartialEq)] pub enum PopoverTypes { diff --git a/czkawka_gui/src/initialize_gui.rs b/czkawka_gui/src/initialize_gui.rs index c507ee5..321fc7e 100644 --- a/czkawka_gui/src/initialize_gui.rs +++ b/czkawka_gui/src/initialize_gui.rs @@ -1,3 +1,16 @@ +use std::cmp::Ordering; +use std::fs; +use std::path::Path; + +use directories_next::ProjectDirs; +use gtk::prelude::*; +use gtk::{CheckButton, Image, SelectionMode, TextView, TreeView}; +use image::imageops::FilterType; +use image::GenericImageView; + +use czkawka_core::similar_images::SIMILAR_VALUES; +use czkawka_core::similar_videos::MAX_TOLERANCE; + use crate::connect_button_delete::{basic_remove, empty_folder_remover}; use crate::create_tree_view::*; use crate::delete_things; @@ -5,16 +18,6 @@ use crate::gui_data::*; use crate::help_functions::*; use crate::notebook_enums::NotebookMainEnum; use crate::opening_selecting_records::*; -use czkawka_core::similar_images::SIMILAR_VALUES; -use czkawka_core::similar_videos::MAX_TOLERANCE; -use directories_next::ProjectDirs; -use gtk::prelude::*; -use gtk::{CheckButton, Image, SelectionMode, TextView, TreeView}; -use image::imageops::FilterType; -use image::GenericImageView; -use std::cmp::Ordering; -use std::fs; -use std::path::Path; const KEY_DELETE: u16 = 119; diff --git a/czkawka_gui/src/main.rs b/czkawka_gui/src/main.rs index bdf0753..2ac5155 100644 --- a/czkawka_gui/src/main.rs +++ b/czkawka_gui/src/main.rs @@ -3,6 +3,32 @@ #![allow(clippy::collapsible_else_if)] #![allow(clippy::too_many_arguments)] +use gtk::prelude::*; + +use czkawka_core::*; + +use crate::compute_results::*; +use crate::connect_about_buttons::*; +use crate::connect_button_delete::*; +use crate::connect_button_hardlink::*; +use crate::connect_button_move::*; +use crate::connect_button_save::*; +use crate::connect_button_search::*; +use crate::connect_button_select::*; +use crate::connect_button_stop::*; +use crate::connect_header_buttons::*; +use crate::connect_hide_text_view_errors::*; +use crate::connect_notebook_tabs::*; +use crate::connect_popovers::*; +use crate::connect_progress_window::*; +use crate::connect_selection_of_directories::*; +use crate::connect_settings::*; +use crate::connect_similar_image_size_change::*; +use crate::gui_data::*; +use crate::initialize_gui::*; +use crate::saving_loading::*; +use crate::tests::validate_notebook_data; + mod compute_results; mod connect_about_buttons; mod connect_button_delete; @@ -42,31 +68,6 @@ mod taskbar_progress_dummy; mod taskbar_progress_win; mod tests; -use czkawka_core::*; - -use crate::compute_results::*; -use crate::connect_about_buttons::*; -use crate::connect_button_delete::*; -use crate::connect_button_hardlink::*; -use crate::connect_button_move::*; -use crate::connect_button_save::*; -use crate::connect_button_search::*; -use crate::connect_button_select::*; -use crate::connect_button_stop::*; -use crate::connect_header_buttons::*; -use crate::connect_hide_text_view_errors::*; -use crate::connect_notebook_tabs::*; -use crate::connect_popovers::*; -use crate::connect_progress_window::*; -use crate::connect_selection_of_directories::*; -use crate::connect_settings::*; -use crate::connect_similar_image_size_change::*; -use crate::gui_data::*; -use crate::initialize_gui::*; -use crate::saving_loading::*; -use crate::tests::validate_notebook_data; -use gtk::prelude::*; - fn main() { let application = gtk::Application::builder().application_id("com.github.qarmin").build(); application.connect_activate(|application| { diff --git a/czkawka_gui/src/opening_selecting_records.rs b/czkawka_gui/src/opening_selecting_records.rs index 5264659..f2f5d41 100644 --- a/czkawka_gui/src/opening_selecting_records.rs +++ b/czkawka_gui/src/opening_selecting_records.rs @@ -1,6 +1,7 @@ -use crate::help_functions::*; use gtk::prelude::*; +use crate::help_functions::*; + const KEY_ENTER: u16 = 36; const KEY_SPACE: u16 = 65; diff --git a/czkawka_gui/src/saving_loading.rs b/czkawka_gui/src/saving_loading.rs index fd10a62..0360510 100644 --- a/czkawka_gui/src/saving_loading.rs +++ b/czkawka_gui/src/saving_loading.rs @@ -1,14 +1,16 @@ -use crate::gui_settings::GuiSettings; -use crate::gui_upper_notepad::GuiUpperNotebook; -use crate::help_functions::*; -use directories_next::ProjectDirs; -use gtk::prelude::*; -use gtk::{ScrolledWindow, TextView}; use std::fs::File; use std::io::Write; use std::path::Path; use std::{env, fs}; +use directories_next::ProjectDirs; +use gtk::prelude::*; +use gtk::{ScrolledWindow, TextView}; + +use crate::gui_settings::GuiSettings; +use crate::gui_upper_notepad::GuiUpperNotebook; +use crate::help_functions::*; + // TODO organize this better, add specific functions that will allow to load from files specific strings const SAVE_FILE_NAME: &str = "czkawka_gui_config.txt"; diff --git a/czkawka_gui/src/taskbar_progress.rs b/czkawka_gui/src/taskbar_progress.rs index 1d9033a..3bf52c7 100644 --- a/czkawka_gui/src/taskbar_progress.rs +++ b/czkawka_gui/src/taskbar_progress.rs @@ -1,5 +1,4 @@ -#[cfg(target_os = "windows")] -pub use crate::taskbar_progress_win::{tbp_flags, TaskbarProgress}; - #[cfg(not(target_os = "windows"))] pub use crate::taskbar_progress_dummy::{tbp_flags, TaskbarProgress}; +#[cfg(target_os = "windows")] +pub use crate::taskbar_progress_win::{tbp_flags, TaskbarProgress}; diff --git a/czkawka_gui/src/taskbar_progress_dummy.rs b/czkawka_gui/src/taskbar_progress_dummy.rs index 45b2acf..1406423 100644 --- a/czkawka_gui/src/taskbar_progress_dummy.rs +++ b/czkawka_gui/src/taskbar_progress_dummy.rs @@ -1,5 +1,6 @@ #![allow(clippy::upper_case_acronyms)] #![cfg(not(target_os = "windows"))] + use std::convert::From; enum HWND__ {} diff --git a/czkawka_gui/src/taskbar_progress_win.rs b/czkawka_gui/src/taskbar_progress_win.rs index 2d43094..466c11b 100644 --- a/czkawka_gui/src/taskbar_progress_win.rs +++ b/czkawka_gui/src/taskbar_progress_win.rs @@ -1,8 +1,10 @@ #![cfg(target_os = "windows")] extern crate winapi; + use std::cell::RefCell; use std::convert::From; use std::ptr; + use winapi::ctypes::c_void; use winapi::shared::windef::HWND; use winapi::shared::winerror::{E_POINTER, S_OK};