1
0
Fork 0
mirror of synced 2024-05-17 19:03:08 +12:00
czkawka/krokiet/ui/settings.slint
Rafał Mikrut cd1c6e953d Ad
2024-02-17 12:16:31 +01:00

94 lines
4.9 KiB
Plaintext

import {IncludedDirectoriesModel, ExcludedDirectoriesModel} from "common.slint";
export global Settings {
in-out property <int> settings_preset_idx: 0;
in-out property <[string]> settings_presets: ["Preset 1", "Preset 2"];
in-out property <[IncludedDirectoriesModel]> included_directories_model: [{path: "/home/path", referenced_folder: false, selected_row: false}];
in-out property <int> included_directories_model_selected_idx: -1;
in-out property <[ExcludedDirectoriesModel]> excluded_directories_model: [{path:"/home/path", selected_row: false}, {path:"/home/a", selected_row: false}];
in-out property <int> excluded_directories_model_selected_idx: -1;
// Settings
in-out property <string> excluded_items: "Excluded items";
in-out property <string> allowed_extensions: "Allowed extensions";
in-out property <string> excluded_extensions: "Excluded extensions";
in-out property <string> minimum_file_size: 0;
in-out property <string> maximum_file_size: 0;
in-out property <bool> recursive_search: true;
in-out property <bool> use_cache: false;
in-out property <bool> save_as_json: false;
in-out property <bool> move_to_trash: false;
in-out property <bool> ignore_other_filesystems: false;
in-out property <float> thread_number: 4;
in-out property <bool> duplicate_image_preview;
in-out property <bool> duplicate_hide_hard_links;
in-out property <bool> duplicate_use_prehash;
in-out property <string> duplicate_minimal_hash_cache_size;
in-out property <string> duplicate_minimal_prehash_cache_size;
in-out property <bool> duplicate_delete_outdated_entries;
in-out property <bool> similar_images_show_image_preview;
in-out property <bool> similar_images_delete_outdated_entries;
// in-out property <int> similar_videos_show_video_preview; // TODO - maybe someday
in-out property <bool> similar_videos_delete_outdated_entries;
in-out property <bool> similar_music_delete_outdated_entries;
// Allowed subsettings
// Similar Images
in-out property <[string]> similar_images_sub_available_hash_size: ["8", "16", "32", "64"];
in-out property <int> similar_images_sub_hash_size_index: 0;
in-out property <string> similar_images_sub_hash_size_value: "8";
in-out property <[string]> similar_images_sub_available_resize_algorithm: ["Lanczos3", "Nearest", "Triangle", "Gaussian", "CatmullRom"];
in-out property <int> similar_images_sub_resize_algorithm_index: 0;
in-out property <string> similar_images_sub_resize_algorithm_value: "Lanczos3";
in-out property <[string]> similar_images_sub_available_hash_type: ["Gradient", "Mean", "VertGradient", "BlockHash", "DoubleGradient"];
in-out property <int> similar_images_sub_hash_alg_index: 0;
in-out property <string> similar_images_sub_hash_alg_value: "Gradient";
in-out property <float> similar_images_sub_max_similarity: 40;
in-out property <float> similar_images_sub_current_similarity: 20;
in-out property <bool> similar_images_sub_ignore_same_size;
// Duplicates
in-out property <[string]> duplicates_sub_check_method: ["Hash", "Size", "Name", "Size and Name"];
in-out property <int> duplicates_sub_check_method_index: 0;
in-out property <string> duplicates_sub_check_method_value: "Hash";
in-out property <[string]> duplicates_sub_available_hash_type: ["Blake3", "CRC32", "XXH3"];
in-out property <int> duplicates_sub_available_hash_type_index: 0;
in-out property <string> duplicates_sub_available_hash_type_value: "Blake3";
// Big files
in-out property <[string]> biggest_files_sub_method: ["The Biggest", "The Smallest"];
in-out property <int> biggest_files_sub_method_index: 0;
in-out property <string> biggest_files_sub_method_value: "The Biggest";
in-out property <string> biggest_files_sub_number_of_files: 50;
// Similar Videos
in-out property <bool> similar_videos_sub_ignore_same_size;
in-out property <float> similar_videos_sub_max_similarity: 20;
in-out property <float> similar_videos_sub_current_similarity: 15;
// Same Music
in-out property <[string]> similar_music_sub_audio_check_type: ["Tags", "Fingerprint"];
in-out property <int> similar_music_sub_audio_check_type_index: 0;
in-out property <string> similar_music_sub_audio_check_type_value: "Tags";
in-out property <bool> similar_music_sub_approximate_comparison;
in-out property <bool> similar_music_sub_title: true;
in-out property <bool> similar_music_sub_artist: true;
in-out property <bool> similar_music_sub_year: false;
in-out property <bool> similar_music_sub_bitrate: false;
in-out property <bool> similar_music_sub_genre: false;
in-out property <bool> similar_music_sub_length: false;
// Broken Files
in-out property <bool> broken_files_sub_audio: true;
in-out property <bool> broken_files_sub_pdf: false;
in-out property <bool> broken_files_sub_archive: false;
in-out property <bool> broken_files_sub_image: false;
}