Excluded items
This commit is contained in:
parent
9cbfe5274b
commit
20c8b6ec01
2
.github/workflows/windows.yml
vendored
2
.github/workflows/windows.yml
vendored
|
@ -42,7 +42,7 @@ jobs:
|
|||
|
||||
- name: Show console window on windows
|
||||
run: |
|
||||
./sd.exe -s '#![windows_subsystem = "windows"]' '//#![windows_subsystem = "windows"]' krokiet/src/main.rs
|
||||
./sd -s '#![windows_subsystem = "windows"]' '//#![windows_subsystem = "windows"]' krokiet/src/main.rs
|
||||
cat krokiet/src/main.rs
|
||||
|
||||
- name: Compile Krokiet Console
|
||||
|
|
|
@ -15,12 +15,21 @@ const DEFAULT_EXCLUDED_DIRECTORIES: &[&str] = &["/proc", "/dev", "/sys", "/run",
|
|||
#[cfg(not(target_family = "unix"))]
|
||||
const DEFAULT_EXCLUDED_DIRECTORIES: &[&str] = &["C:\\Windows"];
|
||||
|
||||
#[cfg(target_family = "unix")]
|
||||
pub const DEFAULT_EXCLUDED_ITEMS: &str = "*/.git/*,*/node_modules/*,*/lost+found/*,*/Trash/*,*/.Trash-*/*,*/snap/*,/home/*/.cache/*";
|
||||
#[cfg(not(target_family = "unix"))]
|
||||
pub const DEFAULT_EXCLUDED_ITEMS: &str = "*\\.git\\*,*\\node_modules\\*,*\\lost+found\\*,*:\\windows\\*,*:\\$RECYCLE.BIN\\*,*:\\$SysReset\\*,*:\\System Volume Information\\*,*:\\OneDriveTemp\\*,*:\\hiberfil.sys,*:\\pagefile.sys,*:\\swapfile.sys";
|
||||
|
||||
#[derive(Debug, Clone, Serialize, Deserialize)]
|
||||
pub struct SettingsCustom {
|
||||
#[serde(default = "default_included_directories")]
|
||||
pub included_directories: Vec<PathBuf>,
|
||||
#[serde(default = "default_excluded_directories")]
|
||||
pub excluded_directories: Vec<PathBuf>,
|
||||
#[serde(default = "default_excluded_items")]
|
||||
pub excluded_items: String,
|
||||
#[serde(default)]
|
||||
pub allowed_extensions: String,
|
||||
}
|
||||
|
||||
impl Default for SettingsCustom {
|
||||
|
@ -28,12 +37,14 @@ impl Default for SettingsCustom {
|
|||
Self {
|
||||
included_directories: default_included_directories(),
|
||||
excluded_directories: default_excluded_directories(),
|
||||
excluded_items: default_excluded_items(),
|
||||
allowed_extensions: String::new(),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
pub fn reset_settings(app: &MainWindow) {
|
||||
set_settings_to_gui(app, &SettingsCustom::default());
|
||||
serde::set_settings_to_gui(app, &SettingsCustom::default());
|
||||
}
|
||||
|
||||
pub fn load_settings_from_file(app: &MainWindow) {
|
||||
|
@ -100,12 +111,15 @@ pub fn set_settings_to_gui(app: &MainWindow, custom_settings: &SettingsCustom) {
|
|||
let settings = app.global::<Settings>();
|
||||
|
||||
// Included directories
|
||||
let included_items = create_string_standard_list_view_from_pathbuf(&custom_settings.included_directories);
|
||||
settings.set_included_directories(included_items);
|
||||
let included_directories = create_string_standard_list_view_from_pathbuf(&custom_settings.included_directories);
|
||||
settings.set_included_directories(included_directories);
|
||||
|
||||
// Excluded directories
|
||||
let excluded_items = create_string_standard_list_view_from_pathbuf(&custom_settings.excluded_directories);
|
||||
settings.set_excluded_directories(excluded_items);
|
||||
let excluded_directories = create_string_standard_list_view_from_pathbuf(&custom_settings.excluded_directories);
|
||||
settings.set_excluded_directories(excluded_directories);
|
||||
|
||||
settings.set_excluded_items(custom_settings.excluded_items.clone().into());
|
||||
settings.set_allowed_extensions(custom_settings.allowed_extensions.clone().into());
|
||||
|
||||
// Clear text
|
||||
app.global::<GuiState>().set_info_text("".into());
|
||||
|
@ -120,9 +134,14 @@ pub fn collect_settings(app: &MainWindow) -> SettingsCustom {
|
|||
let excluded_directories = settings.get_excluded_directories();
|
||||
let excluded_directories = excluded_directories.iter().map(|x| PathBuf::from(x.text.as_str())).collect::<Vec<_>>();
|
||||
|
||||
let excluded_items = settings.get_excluded_items().to_string();
|
||||
let allowed_extensions = settings.get_allowed_extensions().to_string();
|
||||
|
||||
SettingsCustom {
|
||||
included_directories,
|
||||
excluded_directories,
|
||||
excluded_items,
|
||||
allowed_extensions,
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -147,3 +166,7 @@ fn default_excluded_directories() -> Vec<PathBuf> {
|
|||
excluded_directories.sort();
|
||||
excluded_directories
|
||||
}
|
||||
|
||||
fn default_excluded_items() -> String {
|
||||
DEFAULT_EXCLUDED_ITEMS.to_string()
|
||||
}
|
||||
|
|
|
@ -17,7 +17,7 @@ component TextComponent inherits HorizontalLayout {
|
|||
LineEdit {
|
||||
horizontal-stretch: 1.0;
|
||||
height: SettingsSize.item_height;
|
||||
text: Settings.excluded_items;
|
||||
text: model;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue