1
0
Fork 0
mirror of synced 2024-05-14 09:23:13 +12:00
czkawka/krokiet/ui/settings.slint
Rafał Mikrut 0446ff366c
More work on Krokiet (#1210)
* Disable flaky tests

* More

* More

* About

* TODO

* More

* Heh

* Progress

* A little

* Music

* Models

* Subsettings

* Water

* Header

* Saving

* Poprawa elementów

* Ad

* Names
2024-02-17 13:53:42 +01:00

100 lines
5.3 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";
in-out property <bool> duplicates_sub_name_case_sensitive: false;
// 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;
in-out property <float> similar_music_sub_minimal_fragment_duration_value: 5.0;
in-out property <float> similar_music_sub_minimal_fragment_duration_max: 180.0;
in-out property <float> similar_music_sub_maximum_difference_value: 3.0;
in-out property <float> similar_music_sub_maximum_difference_max: 10.0;
// 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;
}