1
0
Fork 0
mirror of synced 2024-05-03 03:52:58 +12:00
This commit is contained in:
Rafał Mikrut 2024-01-23 18:28:06 +01:00
parent bb3ffa4cc6
commit 743f98155c
9 changed files with 100 additions and 119 deletions

155
Cargo.lock generated
View file

@ -762,16 +762,16 @@ dependencies = [
[[package]]
name = "chrono"
version = "0.4.31"
version = "0.4.32"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7f2c685bad3eb3d45a01354cedb7d5faa66194d1d58ba6e267a8de788f79db38"
checksum = "41daef31d7a747c5c847246f36de49ced6f7403b4cdabc807a97b5cc184cda7a"
dependencies = [
"android-tzdata",
"iana-time-zone",
"js-sys",
"num-traits",
"wasm-bindgen",
"windows-targets 0.48.5",
"windows-targets 0.52.0",
]
[[package]]
@ -944,7 +944,7 @@ dependencies = [
[[package]]
name = "const-field-offset"
version = "0.1.3"
source = "git+https://github.com/slint-ui/slint.git#43d1f62fb113e432ebfa7e9fb8a033ae1788e566"
source = "git+https://github.com/slint-ui/slint.git#c350d787c14c24131beb3a555acc291cbc779e79"
dependencies = [
"const-field-offset-macro",
"field-offset",
@ -953,7 +953,7 @@ dependencies = [
[[package]]
name = "const-field-offset-macro"
version = "0.1.3"
source = "git+https://github.com/slint-ui/slint.git#43d1f62fb113e432ebfa7e9fb8a033ae1788e566"
source = "git+https://github.com/slint-ui/slint.git#c350d787c14c24131beb3a555acc291cbc779e79"
dependencies = [
"proc-macro2",
"quote",
@ -1903,21 +1903,21 @@ version = "0.5.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "674e258f4b5d2dcd63888c01c68413c51f565e8af99d2f7701c7b81d79ef41c4"
dependencies = [
"roxmltree",
"roxmltree 0.18.1",
]
[[package]]
name = "fontdb"
version = "0.15.0"
version = "0.16.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "020e203f177c0fb250fb19455a252e838d2bbbce1f80f25ecc42402aafa8cd38"
checksum = "98b88c54a38407f7352dd2c4238830115a6377741098ffd1f997c813d0e088a6"
dependencies = [
"fontconfig-parser",
"log",
"memmap2 0.8.0",
"memmap2 0.9.3",
"slotmap",
"tinyvec",
"ttf-parser 0.19.2",
"ttf-parser",
]
[[package]]
@ -1927,7 +1927,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9099a2f86b8e674b75d03ff154b3fe4c5208ed249ced8d69cc313a9fa40bb488"
dependencies = [
"hashbrown 0.14.3",
"ttf-parser 0.20.0",
"ttf-parser",
]
[[package]]
@ -2661,7 +2661,7 @@ dependencies = [
[[package]]
name = "i-slint-backend-linuxkms"
version = "1.4.0"
source = "git+https://github.com/slint-ui/slint.git#43d1f62fb113e432ebfa7e9fb8a033ae1788e566"
source = "git+https://github.com/slint-ui/slint.git#c350d787c14c24131beb3a555acc291cbc779e79"
dependencies = [
"calloop",
"drm 0.9.0",
@ -2681,7 +2681,7 @@ dependencies = [
[[package]]
name = "i-slint-backend-selector"
version = "1.4.0"
source = "git+https://github.com/slint-ui/slint.git#43d1f62fb113e432ebfa7e9fb8a033ae1788e566"
source = "git+https://github.com/slint-ui/slint.git#c350d787c14c24131beb3a555acc291cbc779e79"
dependencies = [
"cfg-if",
"i-slint-backend-linuxkms",
@ -2694,7 +2694,7 @@ dependencies = [
[[package]]
name = "i-slint-backend-winit"
version = "1.4.0"
source = "git+https://github.com/slint-ui/slint.git#43d1f62fb113e432ebfa7e9fb8a033ae1788e566"
source = "git+https://github.com/slint-ui/slint.git#c350d787c14c24131beb3a555acc291cbc779e79"
dependencies = [
"bytemuck",
"cfg-if",
@ -2728,7 +2728,7 @@ dependencies = [
[[package]]
name = "i-slint-common"
version = "1.4.0"
source = "git+https://github.com/slint-ui/slint.git#43d1f62fb113e432ebfa7e9fb8a033ae1788e566"
source = "git+https://github.com/slint-ui/slint.git#c350d787c14c24131beb3a555acc291cbc779e79"
dependencies = [
"cfg-if",
"derive_more",
@ -2739,7 +2739,7 @@ dependencies = [
[[package]]
name = "i-slint-compiler"
version = "1.4.0"
source = "git+https://github.com/slint-ui/slint.git#43d1f62fb113e432ebfa7e9fb8a033ae1788e566"
source = "git+https://github.com/slint-ui/slint.git#c350d787c14c24131beb3a555acc291cbc779e79"
dependencies = [
"by_address",
"codemap",
@ -2768,7 +2768,7 @@ dependencies = [
[[package]]
name = "i-slint-core"
version = "1.4.0"
source = "git+https://github.com/slint-ui/slint.git#43d1f62fb113e432ebfa7e9fb8a033ae1788e566"
source = "git+https://github.com/slint-ui/slint.git#c350d787c14c24131beb3a555acc291cbc779e79"
dependencies = [
"auto_enums",
"bytemuck",
@ -2793,7 +2793,7 @@ dependencies = [
"portable-atomic",
"resvg",
"rgb",
"rustybuzz 0.11.0",
"rustybuzz 0.12.1",
"scoped-tls-hkt",
"scopeguard",
"slab",
@ -2811,7 +2811,7 @@ dependencies = [
[[package]]
name = "i-slint-core-macros"
version = "1.4.0"
source = "git+https://github.com/slint-ui/slint.git#43d1f62fb113e432ebfa7e9fb8a033ae1788e566"
source = "git+https://github.com/slint-ui/slint.git#c350d787c14c24131beb3a555acc291cbc779e79"
dependencies = [
"quote",
"syn 2.0.48",
@ -2820,7 +2820,7 @@ dependencies = [
[[package]]
name = "i-slint-renderer-femtovg"
version = "1.4.0"
source = "git+https://github.com/slint-ui/slint.git#43d1f62fb113e432ebfa7e9fb8a033ae1788e566"
source = "git+https://github.com/slint-ui/slint.git#c350d787c14c24131beb3a555acc291cbc779e79"
dependencies = [
"cfg-if",
"const-field-offset",
@ -2840,7 +2840,7 @@ dependencies = [
"raw-window-handle",
"rgb",
"scoped-tls-hkt",
"ttf-parser 0.20.0",
"ttf-parser",
"unicode-script",
"unicode-segmentation",
"vtable",
@ -2852,7 +2852,7 @@ dependencies = [
[[package]]
name = "i-slint-renderer-skia"
version = "1.4.0"
source = "git+https://github.com/slint-ui/slint.git#43d1f62fb113e432ebfa7e9fb8a033ae1788e566"
source = "git+https://github.com/slint-ui/slint.git#c350d787c14c24131beb3a555acc291cbc779e79"
dependencies = [
"ash",
"bytemuck",
@ -4062,7 +4062,7 @@ version = "0.20.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d4586edfe4c648c71797a74c84bacb32b52b212eff5dfe2bb9f2c599844023e7"
dependencies = [
"ttf-parser 0.20.0",
"ttf-parser",
]
[[package]]
@ -4514,19 +4514,13 @@ dependencies = [
"crossbeam-utils",
]
[[package]]
name = "rctree"
version = "0.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3b42e27ef78c35d3998403c1d26f3efd9e135d3e5121b0a4845cc5cc27547f4f"
[[package]]
name = "realfft"
version = "3.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "953d9f7e5cdd80963547b456251296efc2626ed4e3cbf36c869d9564e0220571"
dependencies = [
"rustfft 6.1.0",
"rustfft 6.2.0",
]
[[package]]
@ -4604,9 +4598,9 @@ checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f"
[[package]]
name = "resvg"
version = "0.36.0"
version = "0.38.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cc7980f653f9a7db31acff916a262c3b78c562919263edea29bf41a056e20497"
checksum = "5c34501046959e06470ba62a2dc7f31c15f94ac250d842a45f9e012f4ee40c1e"
dependencies = [
"log",
"pico-args",
@ -4690,6 +4684,12 @@ dependencies = [
"xmlparser",
]
[[package]]
name = "roxmltree"
version = "0.19.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3cd14fd5e3b777a7422cca79358c57a8f6e3a703d9ac187448d0daf220c2407f"
[[package]]
name = "rubato"
version = "0.12.0"
@ -4772,7 +4772,7 @@ version = "0.7.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8b61555105d6a9bf98797c063c362a1d24ed8ab0431655e38f1cf51e52089551"
dependencies = [
"rustfft 6.1.0",
"rustfft 6.2.0",
]
[[package]]
@ -4791,9 +4791,9 @@ dependencies = [
[[package]]
name = "rustfft"
version = "6.1.0"
version = "6.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e17d4f6cbdb180c9f4b2a26bbf01c4e647f1e1dea22fe8eb9db54198b32f9434"
checksum = "43806561bc506d0c5d160643ad742e3161049ac01027b5e6d7524091fd401d86"
dependencies = [
"num-complex 0.4.4",
"num-integer",
@ -4866,23 +4866,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "023a224821c3208db13134f398c2d92ed81267ef4f65ac8dff670c00b829faac"
dependencies = [
"rubato",
"rustfft 6.1.0",
]
[[package]]
name = "rustybuzz"
version = "0.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "71cd15fef9112a1f94ac64b58d1e4628192631ad6af4dc69997f995459c874e7"
dependencies = [
"bitflags 1.3.2",
"bytemuck",
"smallvec",
"ttf-parser 0.19.2",
"unicode-bidi-mirroring",
"unicode-ccc",
"unicode-properties",
"unicode-script",
"rustfft 6.2.0",
]
[[package]]
@ -4894,7 +4878,23 @@ dependencies = [
"bitflags 1.3.2",
"bytemuck",
"smallvec",
"ttf-parser 0.20.0",
"ttf-parser",
"unicode-bidi-mirroring",
"unicode-ccc",
"unicode-properties",
"unicode-script",
]
[[package]]
name = "rustybuzz"
version = "0.12.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f0ae5692c5beaad6a9e22830deeed7874eae8a4e3ba4076fb48e12c56856222c"
dependencies = [
"bitflags 2.4.2",
"bytemuck",
"smallvec",
"ttf-parser",
"unicode-bidi-mirroring",
"unicode-ccc",
"unicode-properties",
@ -5074,9 +5074,9 @@ dependencies = [
[[package]]
name = "shlex"
version = "1.2.0"
version = "1.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a7cee0529a6d40f580e7a5e6c495c8fbfe21b7b52795ed4bb5e62cdf92bc6380"
checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
[[package]]
name = "signal-hook-registry"
@ -5151,7 +5151,7 @@ dependencies = [
[[package]]
name = "slint"
version = "1.4.0"
source = "git+https://github.com/slint-ui/slint.git#43d1f62fb113e432ebfa7e9fb8a033ae1788e566"
source = "git+https://github.com/slint-ui/slint.git#c350d787c14c24131beb3a555acc291cbc779e79"
dependencies = [
"const-field-offset",
"i-slint-backend-selector",
@ -5167,7 +5167,7 @@ dependencies = [
[[package]]
name = "slint-build"
version = "1.4.0"
source = "git+https://github.com/slint-ui/slint.git#43d1f62fb113e432ebfa7e9fb8a033ae1788e566"
source = "git+https://github.com/slint-ui/slint.git#c350d787c14c24131beb3a555acc291cbc779e79"
dependencies = [
"i-slint-compiler",
"spin_on",
@ -5178,7 +5178,7 @@ dependencies = [
[[package]]
name = "slint-macros"
version = "1.4.0"
source = "git+https://github.com/slint-ui/slint.git#43d1f62fb113e432ebfa7e9fb8a033ae1788e566"
source = "git+https://github.com/slint-ui/slint.git#c350d787c14c24131beb3a555acc291cbc779e79"
dependencies = [
"i-slint-compiler",
"proc-macro2",
@ -5420,9 +5420,9 @@ checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc"
[[package]]
name = "svgtypes"
version = "0.12.0"
version = "0.13.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d71499ff2d42f59d26edb21369a308ede691421f79ebc0f001e2b1fd3a7c9e52"
checksum = "6e44e288cd960318917cbd540340968b90becc8bc81f171345d706e7a89d9d70"
dependencies = [
"kurbo",
"siphasher",
@ -6000,12 +6000,6 @@ version = "0.3.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "622b09ce2fe2df4618636fb92176d205662f59803f39e70d1c333393082de96c"
[[package]]
name = "ttf-parser"
version = "0.19.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "49d64318d8311fc2668e48b63969f4343e0a85c4a109aa8460d6672e364b8bd1"
[[package]]
name = "ttf-parser"
version = "0.20.0"
@ -6207,9 +6201,9 @@ checksum = "daf8dba3b7eb870caf1ddeed7bc9d2a049f3cfdfae7cb521b087cc33ae4c49da"
[[package]]
name = "usvg"
version = "0.36.0"
version = "0.38.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c51daa774fe9ee5efcf7b4fec13019b8119cda764d9a8b5b06df02bb1445c656"
checksum = "377f62b4a3c173de8654c1aa80ab1dac1154e6f13a779a9943e53780120d1625"
dependencies = [
"base64",
"log",
@ -6222,16 +6216,16 @@ dependencies = [
[[package]]
name = "usvg-parser"
version = "0.36.0"
version = "0.38.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "45c88a5ffaa338f0e978ecf3d4e00d8f9f493e29bed0752e1a808a1db16afc40"
checksum = "351a05e6f2023d6b4e946f734240a3927aefdcf930d7d42587a2c8a8869814b0"
dependencies = [
"data-url",
"flate2",
"imagesize",
"kurbo",
"log",
"roxmltree",
"roxmltree 0.19.0",
"simplecss",
"siphasher",
"svgtypes",
@ -6240,14 +6234,14 @@ dependencies = [
[[package]]
name = "usvg-text-layout"
version = "0.36.0"
version = "0.38.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4d2374378cb7a3fb8f33894e0fdb8625e1bbc4f25312db8d91f862130b541593"
checksum = "8c41888b9d5cf431fe852eaf9d047bbde83251b98f1749c2f08b1071e6db46e2"
dependencies = [
"fontdb",
"kurbo",
"log",
"rustybuzz 0.10.0",
"rustybuzz 0.12.1",
"unicode-bidi",
"unicode-script",
"unicode-vo",
@ -6256,11 +6250,10 @@ dependencies = [
[[package]]
name = "usvg-tree"
version = "0.36.0"
version = "0.38.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6cacb0c5edeaf3e80e5afcf5b0d4004cc1d36318befc9a7c6606507e5d0f4062"
checksum = "18863e0404ed153d6e56362c5b1146db9f4f262a3244e3cf2dbe7d8a85909f05"
dependencies = [
"rctree",
"strict-num",
"svgtypes",
"tiny-skia-path",
@ -6325,7 +6318,7 @@ dependencies = [
[[package]]
name = "vtable"
version = "0.1.11"
source = "git+https://github.com/slint-ui/slint.git#43d1f62fb113e432ebfa7e9fb8a033ae1788e566"
source = "git+https://github.com/slint-ui/slint.git#c350d787c14c24131beb3a555acc291cbc779e79"
dependencies = [
"const-field-offset",
"portable-atomic",
@ -6336,7 +6329,7 @@ dependencies = [
[[package]]
name = "vtable-macro"
version = "0.1.10"
source = "git+https://github.com/slint-ui/slint.git#43d1f62fb113e432ebfa7e9fb8a033ae1788e566"
source = "git+https://github.com/slint-ui/slint.git#c350d787c14c24131beb3a555acc291cbc779e79"
dependencies = [
"proc-macro2",
"quote",
@ -6607,9 +6600,9 @@ checksum = "1778a42e8b3b90bff8d0f5032bf22250792889a5cdc752aa0020c84abe3aaf10"
[[package]]
name = "weezl"
version = "0.1.7"
version = "0.1.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9193164d4de03a926d909d3bc7c30543cecb35400c02114792c2cae20d5e2dbb"
checksum = "53a85b86a771b1c87058196170769dd264f66c0782acf1ae6cc51bfd64b39082"
[[package]]
name = "which"

View file

@ -94,7 +94,7 @@ impl EmptyFolder {
self.information.number_of_empty_folders = self.empty_folder_list.len();
}
// #[fun_time(message = "check_for_empty_folders", level = "debug")]
#[fun_time(message = "check_for_empty_folders", level = "debug")]
fn check_for_empty_folders(&mut self, stop_receiver: Option<&Receiver<()>>, progress_sender: Option<&Sender<ProgressData>>) -> bool {
let mut folders_to_check: Vec<PathBuf> = self.common_data.directories.included_directories.clone();

View file

@ -15,7 +15,7 @@ glib = "0.18"
gtk4 = { version = "0.7", default-features = false, features = ["v4_6"] }
humansize = "2.1"
chrono = "0.4.31"
chrono = "0.4.32"
# Used for sending stop signal across threads
crossbeam-channel = "0.5"

View file

@ -13,7 +13,7 @@ build = "build.rs"
[dependencies]
rand = "0.8"
czkawka_core = { version = "6.1.0", path = "../czkawka_core" }
chrono = "0.4.31"
chrono = "0.4.32"
open = "5.0"
crossbeam-channel = "0.5"
handsome_logger = "0.8"

View file

@ -1,6 +1,6 @@
# Krokiet
Krokiet is new Czkawka frontend written in Slint(written mostly in Rust) in opposite to Gtk 4 frontend which uses mostly
Krokiet is new Czkawka frontend written in Slint, which uses Rust in opposite to Gtk 4 frontend which uses mostly
C code.
Different toolkit means different look, limitations and features, so you should not expect same features like in Gtk 4
@ -24,7 +24,7 @@ sudo apt install libfontconfig-dev libfreetype-dev
Default compilation is done by `cargo build --release` and should work on most systems.
You need the latest available version of Rust to compile it, because Krokiet aims to support the latest slint verions,
You need the latest available version of Rust to compile it, because Krokiet aims to support the latest slint versions,
that should provide best experience.
The only exception is building skia renderer which is non default feature that can be enabled manually if you want to
@ -103,25 +103,6 @@ SLINT_STYLE=material-dark cargo run -- --path .
preview - [slint live preview example](https://slint.dev/releases/1.3.0/editor/?load_demo=examples/printerdemo/ui/printerdemo.slint)
- Improving app rust code
## Missing features available in GTK 4 frontend
- icons in buttons
- resizable input files panel
- settings
- moving files
- deleting files
- sorting files
- saving results
- symlink/hardlink
- implementing all modes
- multiple selection
- proper popup windows - slint not handle them properly
- logo
- about window
- reference folders
- translations(problem is only with interface, messages like "Checking {x} file" can be easily translated from rust
side)
## Why Slint?
There are multiple reasons why I decided to use Slint as toolkit for Krokiet over other toolkits.

View file

@ -24,7 +24,6 @@ export component ActionButtons inherits HorizontalLayout {
in-out property <bool> stop_requested: false;
in-out property <bool> scanning;
in-out property <bool> lists_enabled: GuiState.active_tab != CurrentTab.Settings;
// in-out property <>
out property <int> name;
height: 30px;
spacing: 4px;

View file

@ -4,10 +4,13 @@ import {Settings} from "settings.slint";
import {BottomPanelVisibility} from "common.slint";
import {Callabler} from "callabler.slint";
import {GuiState} from "gui_state.slint";
import {IncludedDirectories, ExcludedDirectories} from "included_directories.slint";
component DirectoriesPanel inherits HorizontalLayout {
callback folder_choose_requested(bool);
callback show_manual_add_dialog(bool);
spacing: 5px;
// Included directories
VerticalLayout {
horizontal-stretch: 0.0;
@ -22,7 +25,7 @@ component DirectoriesPanel inherits HorizontalLayout {
Button {
text: "Remove";
clicked => {
Callabler.remove_item_directories(true, included-list.current-item);
Callabler.remove_item_directories(true, included_list.current_index);
}
}
@ -46,9 +49,7 @@ component DirectoriesPanel inherits HorizontalLayout {
}
}
included_list := StandardListView {
model: Settings.included-directories;
}
included_list := IncludedDirectories { }
}
// Excluded directories
@ -65,7 +66,7 @@ component DirectoriesPanel inherits HorizontalLayout {
Button {
text: "Remove";
clicked => {
Callabler.remove_item_directories(false, excluded-list.current-item);
Callabler.remove_item_directories(false, excluded_list.current_index);
}
}
@ -89,9 +90,7 @@ component DirectoriesPanel inherits HorizontalLayout {
}
}
excluded_list := StandardListView {
model: Settings.excluded-directories;
}
excluded_list := ExcludedDirectories { }
}
}

View file

@ -3,20 +3,22 @@ import {Button, StandardListView, VerticalBox, ListView, ScrollView, TextEdit, C
import {Callabler} from "callabler.slint";
import {IncludedDirectoriesModel, ExcludedDirectoriesModel} from "common.slint";
import {ColorPalette} from "color_palette.slint";
import {Settings} from "settings.slint";
export component InlcudedDirectories {
in-out property <[IncludedDirectoriesModel]> model: [{path: "/home/path", referenced_folder: false, selected_row: false}];
export component IncludedDirectories {
in-out property <[IncludedDirectoriesModel]> model: Settings.included_directories_model;
in-out property <int> current_index: -1;
in-out property <length> size_referenced_folder: 40px;
in-out property <length> size_referenced_folder: 33px;
min-width: 50px;
VerticalLayout {
HorizontalLayout {
spacing: 5px;
Text {
text: "Referenced folder";
text: "Ref";
width: size_referenced_folder;
horizontal-alignment: center;
}
Text{
horizontal-stretch: 1.0;
@ -48,7 +50,7 @@ export component InlcudedDirectories {
}
export component ExcludedDirectories {
in-out property <[ExcludedDirectoriesModel]> model: [{path:"/home/path", selected_row: false}, {path:"/home/path", selected_row: false}, ];
in-out property <[ExcludedDirectoriesModel]> model: Settings.excluded_directories_model;
in-out property <int> current_index: -1;
private property <PointerEvent> event;

View file

@ -1,3 +1,6 @@
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"];
@ -5,6 +8,10 @@ export global Settings {
in-out property <[StandardListViewItem]> included_directories: [{text: "ABCD"}, {text: "BCDA"}];
in-out property <[StandardListViewItem]> excluded_directories: [{text: "ABCD"}, {text: "BCDA"}, {text: "CDFFF"}];
in-out property <[IncludedDirectoriesModel]> included_directories_model: [{path: "/home/path", referenced_folder: false, selected_row: false}];
in-out property <[ExcludedDirectoriesModel]> excluded_directories_model: [{path:"/home/path", selected_row: false}, {path:"/home/path", selected_row: false}];
// Settings
in-out property <string> excluded_items: "Excluded items";
in-out property <string> allowed_extensions: "Allowed extensions";