86 lines
4.4 KiB
Text
86 lines
4.4 KiB
Text
|
|
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_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_available_hash_type: ["Gradient", "Mean", "VertGradient", "BlockHash", "DoubleGradient"];
|
|
in-out property <int> similar_images_sub_hash_type_index: 0;
|
|
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_available_hash_type: ["Blake3", "CRC32", "XXH3"];
|
|
in-out property <int> duplicates_sub_available_hash_type_index: 0;
|
|
|
|
// 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_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 <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;
|
|
}
|