Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions src/Resources/Locales/ca_ES.axaml
Original file line number Diff line number Diff line change
Expand Up @@ -889,6 +889,7 @@
<x:String x:Key="Text.SaveAsPatchSuccess" xml:space="preserve">El pedaç s'ha desat correctament!</x:String>
<x:String x:Key="Text.ScanRepositories" xml:space="preserve">Escaneja repositoris</x:String>
<x:String x:Key="Text.ScanRepositories.RootDir" xml:space="preserve">Directori arrel:</x:String>
<x:String x:Key="Text.ScanRepositories.TargetGroup" xml:space="preserve">Grup objectiu:</x:String>
<x:String x:Key="Text.ScanRepositories.UseCustomDir" xml:space="preserve">Escaneja un altre directori personalitzat</x:String>
<x:String x:Key="Text.SelfUpdate" xml:space="preserve">Comprova si hi ha actualitzacions...</x:String>
<x:String x:Key="Text.SelfUpdate.Available" xml:space="preserve">Hi ha una versió nova d'aquest programari disponible: </x:String>
Expand Down
1 change: 1 addition & 0 deletions src/Resources/Locales/de_DE.axaml
Original file line number Diff line number Diff line change
Expand Up @@ -858,6 +858,7 @@ $1, $2, … Werte der Eingabe-Steuerelemente</x:String>
<x:String x:Key="Text.SaveAsPatchSuccess" xml:space="preserve">Patch wurde erfolgreich gespeichert!</x:String>
<x:String x:Key="Text.ScanRepositories" xml:space="preserve">Durchsuche Repositorys</x:String>
<x:String x:Key="Text.ScanRepositories.RootDir" xml:space="preserve">Stammverzeichnis:</x:String>
<x:String x:Key="Text.ScanRepositories.TargetGroup" xml:space="preserve">Zielgruppe:</x:String>
<x:String x:Key="Text.ScanRepositories.UseCustomDir" xml:space="preserve">Anderes benutzerdefiniertes Verzeichnis durchsuchen</x:String>
<x:String x:Key="Text.SelfUpdate" xml:space="preserve">Suche nach Aktualisierungen…</x:String>
<x:String x:Key="Text.SelfUpdate.Available" xml:space="preserve">Eine neue Version dieses Programms ist verfügbar: </x:String>
Expand Down
1 change: 1 addition & 0 deletions src/Resources/Locales/el_GR.axaml
Original file line number Diff line number Diff line change
Expand Up @@ -854,6 +854,7 @@
<x:String x:Key="Text.SaveAsPatchSuccess" xml:space="preserve">Το patch αποθηκεύτηκε με επιτυχία!</x:String>
<x:String x:Key="Text.ScanRepositories" xml:space="preserve">Σάρωση αποθετηρίων</x:String>
<x:String x:Key="Text.ScanRepositories.RootDir" xml:space="preserve">Ριζικός φάκελος:</x:String>
<x:String x:Key="Text.ScanRepositories.TargetGroup" xml:space="preserve">Ομάδα προορισμού:</x:String>
<x:String x:Key="Text.ScanRepositories.UseCustomDir" xml:space="preserve">Σάρωση άλλου προσαρμοσμένου φακέλου</x:String>
<x:String x:Key="Text.SelfUpdate" xml:space="preserve">Έλεγχος για ενημερώσεις...</x:String>
<x:String x:Key="Text.SelfUpdate.Available" xml:space="preserve">Είναι διαθέσιμη νέα έκδοση αυτού του λογισμικού: </x:String>
Expand Down
1 change: 1 addition & 0 deletions src/Resources/Locales/en_US.axaml
Original file line number Diff line number Diff line change
Expand Up @@ -900,6 +900,7 @@ Manually add a branch/tag history filter will disable this feature automatically
<x:String x:Key="Text.SaveAsPatchSuccess" xml:space="preserve">Patch has been saved successfully!</x:String>
<x:String x:Key="Text.ScanRepositories" xml:space="preserve">Scan Repositories</x:String>
<x:String x:Key="Text.ScanRepositories.RootDir" xml:space="preserve">Root Dir:</x:String>
<x:String x:Key="Text.ScanRepositories.TargetGroup" xml:space="preserve">Target Group:</x:String>
<x:String x:Key="Text.ScanRepositories.UseCustomDir" xml:space="preserve">Scan another custom directory</x:String>
<x:String x:Key="Text.SelfUpdate" xml:space="preserve">Check for Updates...</x:String>
<x:String x:Key="Text.SelfUpdate.Available" xml:space="preserve">New version of this software is available: </x:String>
Expand Down
1 change: 1 addition & 0 deletions src/Resources/Locales/es_ES.axaml
Original file line number Diff line number Diff line change
Expand Up @@ -896,6 +896,7 @@
<x:String x:Key="Text.SaveAsPatchSuccess" xml:space="preserve">¡El parche se ha guardado exitosamente!</x:String>
<x:String x:Key="Text.ScanRepositories" xml:space="preserve">Escanear Repositorios</x:String>
<x:String x:Key="Text.ScanRepositories.RootDir" xml:space="preserve">Directorio Raíz:</x:String>
<x:String x:Key="Text.ScanRepositories.TargetGroup" xml:space="preserve">Grupo objetivo:</x:String>
<x:String x:Key="Text.ScanRepositories.UseCustomDir" xml:space="preserve">Escanear otro directorio personalizado</x:String>
<x:String x:Key="Text.SelfUpdate" xml:space="preserve">Buscar Actualizaciones...</x:String>
<x:String x:Key="Text.SelfUpdate.Available" xml:space="preserve">Nueva versión de este software disponible: </x:String>
Expand Down
1 change: 1 addition & 0 deletions src/Resources/Locales/fr_FR.axaml
Original file line number Diff line number Diff line change
Expand Up @@ -818,6 +818,7 @@
<x:String x:Key="Text.SaveAsPatchSuccess" xml:space="preserve">Le patch a été sauvegardé !</x:String>
<x:String x:Key="Text.ScanRepositories" xml:space="preserve">Analyser les repositories</x:String>
<x:String x:Key="Text.ScanRepositories.RootDir" xml:space="preserve">Dossier racine :</x:String>
<x:String x:Key="Text.ScanRepositories.TargetGroup" xml:space="preserve">Groupe cible :</x:String>
<x:String x:Key="Text.ScanRepositories.UseCustomDir" xml:space="preserve">Scanner un autre répertoire personnalisé</x:String>
<x:String x:Key="Text.SelfUpdate" xml:space="preserve">Rechercher des mises à jour...</x:String>
<x:String x:Key="Text.SelfUpdate.Available" xml:space="preserve">Une nouvelle version du logiciel est disponible :</x:String>
Expand Down
1 change: 1 addition & 0 deletions src/Resources/Locales/he_IL.axaml
Original file line number Diff line number Diff line change
Expand Up @@ -818,6 +818,7 @@
<x:String x:Key="Text.SaveAsPatchSuccess" xml:space="preserve">ה־Patch נשמר בהצלחה!</x:String>
<x:String x:Key="Text.ScanRepositories" xml:space="preserve">סרוק מאגרים</x:String>
<x:String x:Key="Text.ScanRepositories.RootDir" xml:space="preserve">תיקיית שורש:</x:String>
<x:String x:Key="Text.ScanRepositories.TargetGroup" xml:space="preserve">קבוצת יעד:</x:String>
<x:String x:Key="Text.ScanRepositories.UseCustomDir" xml:space="preserve">סרוק תיקייה מותאמת אישית אחרת</x:String>
<x:String x:Key="Text.SelfUpdate" xml:space="preserve">בדוק עדכונים...</x:String>
<x:String x:Key="Text.SelfUpdate.Available" xml:space="preserve">גרסה חדשה של התוכנה זמינה: </x:String>
Expand Down
1 change: 1 addition & 0 deletions src/Resources/Locales/id_ID.axaml
Original file line number Diff line number Diff line change
Expand Up @@ -859,6 +859,7 @@
<x:String x:Key="Text.SaveAsPatchSuccess" xml:space="preserve">Patch berhasil disimpan!</x:String>
<x:String x:Key="Text.ScanRepositories" xml:space="preserve">Pindai Repositori</x:String>
<x:String x:Key="Text.ScanRepositories.RootDir" xml:space="preserve">Direktori Root:</x:String>
<x:String x:Key="Text.ScanRepositories.TargetGroup" xml:space="preserve">Grup Target:</x:String>
<x:String x:Key="Text.ScanRepositories.UseCustomDir" xml:space="preserve">Pindai direktori kustom lain</x:String>
<x:String x:Key="Text.SelfUpdate" xml:space="preserve">Periksa Pembaruan...</x:String>
<x:String x:Key="Text.SelfUpdate.Available" xml:space="preserve">Versi baru dari perangkat lunak ini tersedia: </x:String>
Expand Down
1 change: 1 addition & 0 deletions src/Resources/Locales/it_IT.axaml
Original file line number Diff line number Diff line change
Expand Up @@ -763,6 +763,7 @@ ${pure_files:N} Come ${files:N}, ma senza cartelle</x:String>
<x:String x:Key="Text.SaveAsPatchSuccess" xml:space="preserve">La patch è stata salvata con successo!</x:String>
<x:String x:Key="Text.ScanRepositories" xml:space="preserve">Scansiona Repository</x:String>
<x:String x:Key="Text.ScanRepositories.RootDir" xml:space="preserve">Cartella Principale:</x:String>
<x:String x:Key="Text.ScanRepositories.TargetGroup" xml:space="preserve">Gruppo di destinazione:</x:String>
<x:String x:Key="Text.ScanRepositories.UseCustomDir" xml:space="preserve">Scansiona un'altra cartella personalizzata</x:String>
<x:String x:Key="Text.SelfUpdate" xml:space="preserve">Controlla Aggiornamenti...</x:String>
<x:String x:Key="Text.SelfUpdate.Available" xml:space="preserve">È disponibile una nuova versione del software:</x:String>
Expand Down
1 change: 1 addition & 0 deletions src/Resources/Locales/ja_JP.axaml
Original file line number Diff line number Diff line change
Expand Up @@ -878,6 +878,7 @@
<x:String x:Key="Text.SaveAsPatchSuccess" xml:space="preserve">パッチが正常に保存されました!</x:String>
<x:String x:Key="Text.ScanRepositories" xml:space="preserve">リポジトリをスキャン</x:String>
<x:String x:Key="Text.ScanRepositories.RootDir" xml:space="preserve">ルートディレクトリ:</x:String>
<x:String x:Key="Text.ScanRepositories.TargetGroup" xml:space="preserve">ターゲットグループ:</x:String>
<x:String x:Key="Text.ScanRepositories.UseCustomDir" xml:space="preserve">任意の別ディレクトリをスキャン</x:String>
<x:String x:Key="Text.SelfUpdate" xml:space="preserve">更新を確認...</x:String>
<x:String x:Key="Text.SelfUpdate.Available" xml:space="preserve">このソフトウェアの新しいバージョンが利用できます: </x:String>
Expand Down
1 change: 1 addition & 0 deletions src/Resources/Locales/ko_KR.axaml
Original file line number Diff line number Diff line change
Expand Up @@ -826,6 +826,7 @@
<x:String x:Key="Text.SaveAsPatchSuccess" xml:space="preserve">패치가 성공적으로 저장되었습니다!</x:String>
<x:String x:Key="Text.ScanRepositories" xml:space="preserve">저장소 스캔</x:String>
<x:String x:Key="Text.ScanRepositories.RootDir" xml:space="preserve">루트 디렉터리:</x:String>
<x:String x:Key="Text.ScanRepositories.TargetGroup" xml:space="preserve">대상 그룹:</x:String>
<x:String x:Key="Text.ScanRepositories.UseCustomDir" xml:space="preserve">다른 사용자 정의 디렉터리 스캔</x:String>
<x:String x:Key="Text.SelfUpdate" xml:space="preserve">업데이트 확인...</x:String>
<x:String x:Key="Text.SelfUpdate.Available" xml:space="preserve">이 소프트웨어의 새 버전을 사용할 수 있습니다: </x:String>
Expand Down
1 change: 1 addition & 0 deletions src/Resources/Locales/pt_BR.axaml
Original file line number Diff line number Diff line change
Expand Up @@ -543,6 +543,7 @@
<x:String x:Key="Text.SaveAsPatchSuccess" xml:space="preserve">Patch salvo com sucesso!</x:String>
<x:String x:Key="Text.ScanRepositories" xml:space="preserve">Escanear Repositórios</x:String>
<x:String x:Key="Text.ScanRepositories.RootDir" xml:space="preserve">Diretório Raiz:</x:String>
<x:String x:Key="Text.ScanRepositories.TargetGroup" xml:space="preserve">Grupo alvo:</x:String>
<x:String x:Key="Text.SelfUpdate" xml:space="preserve">Verificar atualizações...</x:String>
<x:String x:Key="Text.SelfUpdate.Available" xml:space="preserve">Nova versão deste software disponível: </x:String>
<x:String x:Key="Text.SelfUpdate.Error" xml:space="preserve">Falha ao verificar atualizações!</x:String>
Expand Down
1 change: 1 addition & 0 deletions src/Resources/Locales/ru_RU.axaml
Original file line number Diff line number Diff line change
Expand Up @@ -904,6 +904,7 @@
<x:String x:Key="Text.SaveAsPatchSuccess" xml:space="preserve">Заплатка успешно сохранена!</x:String>
<x:String x:Key="Text.ScanRepositories" xml:space="preserve">Обнаружение репозиториев</x:String>
<x:String x:Key="Text.ScanRepositories.RootDir" xml:space="preserve">Корневой каталог:</x:String>
<x:String x:Key="Text.ScanRepositories.TargetGroup" xml:space="preserve">Целевая группа:</x:String>
<x:String x:Key="Text.ScanRepositories.UseCustomDir" xml:space="preserve">Сканировать другой пользовательский каталог</x:String>
<x:String x:Key="Text.SelfUpdate" xml:space="preserve">Проверить обновления...</x:String>
<x:String x:Key="Text.SelfUpdate.Available" xml:space="preserve">Доступна новая версия программного обеспечения: </x:String>
Expand Down
1 change: 1 addition & 0 deletions src/Resources/Locales/ta_IN.axaml
Original file line number Diff line number Diff line change
Expand Up @@ -552,6 +552,7 @@
<x:String x:Key="Text.SaveAsPatchSuccess" xml:space="preserve">ஒட்டு வெற்றிகரமாக சேமிக்கப்பட்டது!</x:String>
<x:String x:Key="Text.ScanRepositories" xml:space="preserve">களஞ்சியங்களை வருடு</x:String>
<x:String x:Key="Text.ScanRepositories.RootDir" xml:space="preserve">வேர் அடைவு:</x:String>
<x:String x:Key="Text.ScanRepositories.TargetGroup" xml:space="preserve">இலக்கு குழு:</x:String>
<x:String x:Key="Text.SelfUpdate" xml:space="preserve">புதுப்பிப்புகளைச் சரிபார்...</x:String>
<x:String x:Key="Text.SelfUpdate.Available" xml:space="preserve">இந்த மென்பொருளின் புதிய பதிப்பு கிடைக்கிறது: </x:String>
<x:String x:Key="Text.SelfUpdate.Error" xml:space="preserve">புதுப்பிப்புகளைச் சரிபார்க்க முடியவில்லை!</x:String>
Expand Down
1 change: 1 addition & 0 deletions src/Resources/Locales/uk_UA.axaml
Original file line number Diff line number Diff line change
Expand Up @@ -556,6 +556,7 @@
<x:String x:Key="Text.SaveAsPatchSuccess" xml:space="preserve">Патч успішно збережено!</x:String>
<x:String x:Key="Text.ScanRepositories" xml:space="preserve">Сканувати сховища</x:String>
<x:String x:Key="Text.ScanRepositories.RootDir" xml:space="preserve">Коренева тека:</x:String>
<x:String x:Key="Text.ScanRepositories.TargetGroup" xml:space="preserve">Цільова група:</x:String>
<x:String x:Key="Text.SelfUpdate" xml:space="preserve">Перевірити оновлення...</x:String>
<x:String x:Key="Text.SelfUpdate.Available" xml:space="preserve">Доступна нова версія програми: </x:String>
<x:String x:Key="Text.SelfUpdate.Error" xml:space="preserve">Не вдалося перевірити оновлення!</x:String>
Expand Down
1 change: 1 addition & 0 deletions src/Resources/Locales/zh_CN.axaml
Original file line number Diff line number Diff line change
Expand Up @@ -904,6 +904,7 @@
<x:String x:Key="Text.SaveAsPatchSuccess" xml:space="preserve">补丁已成功保存!</x:String>
<x:String x:Key="Text.ScanRepositories" xml:space="preserve">扫描仓库</x:String>
<x:String x:Key="Text.ScanRepositories.RootDir" xml:space="preserve">根路径 :</x:String>
<x:String x:Key="Text.ScanRepositories.TargetGroup" xml:space="preserve">目标分组 :</x:String>
<x:String x:Key="Text.ScanRepositories.UseCustomDir" xml:space="preserve">扫描其他自定义路径</x:String>
<x:String x:Key="Text.SelfUpdate" xml:space="preserve">检测更新...</x:String>
<x:String x:Key="Text.SelfUpdate.Available" xml:space="preserve">检测到软件有版本更新: </x:String>
Expand Down
1 change: 1 addition & 0 deletions src/Resources/Locales/zh_TW.axaml
Original file line number Diff line number Diff line change
Expand Up @@ -889,6 +889,7 @@
<x:String x:Key="Text.SaveAsPatchSuccess" xml:space="preserve">修補檔已成功儲存!</x:String>
<x:String x:Key="Text.ScanRepositories" xml:space="preserve">掃描存放庫</x:String>
<x:String x:Key="Text.ScanRepositories.RootDir" xml:space="preserve">頂層目錄:</x:String>
<x:String x:Key="Text.ScanRepositories.TargetGroup" xml:space="preserve">目標分組:</x:String>
<x:String x:Key="Text.ScanRepositories.UseCustomDir" xml:space="preserve">掃描其他自訂目錄</x:String>
<x:String x:Key="Text.SelfUpdate" xml:space="preserve">檢查更新...</x:String>
<x:String x:Key="Text.SelfUpdate.Available" xml:space="preserve">軟體有版本更新:</x:String>
Expand Down
6 changes: 5 additions & 1 deletion src/ViewModels/Preferences.cs
Original file line number Diff line number Diff line change
Expand Up @@ -541,7 +541,11 @@ public RepositoryNode FindNode(string id)

public RepositoryNode FindOrCreateGroupRecursive(string path)
{
List<RepositoryNode> collection = RepositoryNodes;
return FindOrCreateGroupRecursive(RepositoryNodes, path);
}

public RepositoryNode FindOrCreateGroupRecursive(List<RepositoryNode> collection, string path)
{
RepositoryNode node = null;

foreach (var name in path.Split('/'))
Expand Down
26 changes: 24 additions & 2 deletions src/ViewModels/ScanRepositories.cs
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,12 @@ public Models.ScanDir Selected
set => SetProperty(ref _selected, value, true);
}

public string TargetGroupPath
{
get => _targetGroupPath;
set => SetProperty(ref _targetGroupPath, value);
}

public ScanRepositories()
{
ScanDirs = new List<Models.ScanDir>();
Expand Down Expand Up @@ -92,6 +98,21 @@ public override async Task<bool> Sure()
// Make sure this task takes at least 0.5s to avoid the popup panel disappearing too quickly.
await minDelay;

RepositoryNode targetParent = null;
var targetCollection = Preferences.Instance.RepositoryNodes;
if (found.Count > 0)
{
var groupPath = string.IsNullOrWhiteSpace(_targetGroupPath)
? string.Empty
: string.Join('/', _targetGroupPath.Replace('\\', '/').Split('/',
StringSplitOptions.RemoveEmptyEntries | StringSplitOptions.TrimEntries));
if (!string.IsNullOrEmpty(groupPath))
{
targetParent = Preferences.Instance.FindOrCreateGroupRecursive(groupPath);
targetCollection = targetParent.SubNodes;
}
}

var normalizedRoot = rootDir.FullName.Replace('\\', '/').TrimEnd('/');
for (var i = 0; i < found.Count; i++)
{
Expand All @@ -100,13 +121,13 @@ public override async Task<bool> Sure()
var parent = new DirectoryInfo(f).Parent!.FullName.Replace('\\', '/').TrimEnd('/');
if (parent.Equals(normalizedRoot, StringComparison.OrdinalIgnoreCase))
{
var node = Preferences.Instance.FindOrAddNodeByRepositoryPath(f, null, false, false);
var node = Preferences.Instance.FindOrAddNodeByRepositoryPath(f, targetParent, false, false);
await node.UpdateStatusAsync(false, null);
}
else if (parent.StartsWith(normalizedRoot, StringComparison.OrdinalIgnoreCase))
{
var relative = parent.Substring(normalizedRoot.Length).TrimStart('/');
var group = Preferences.Instance.FindOrCreateGroupRecursive(relative);
var group = Preferences.Instance.FindOrCreateGroupRecursive(targetCollection, relative);
var node = Preferences.Instance.FindOrAddNodeByRepositoryPath(f, group, false, false);
await node.UpdateStatusAsync(false, null);
}
Expand Down Expand Up @@ -191,5 +212,6 @@ private bool IsManaged(string path)
private string _customDir = string.Empty;
private Models.ScanDir _selected = null;
private int _untrusted = 0;
private string _targetGroupPath = string.Empty;
}
}
12 changes: 11 additions & 1 deletion src/Views/ScanRepositories.axaml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
Text="{DynamicResource Text.ScanRepositories}"/>
</StackPanel>

<Grid Margin="0,16,0,0" RowDefinitions="32,32" ColumnDefinitions="120,*">
<Grid Margin="0,16,0,0" RowDefinitions="32,32,Auto" ColumnDefinitions="120,*">
<TextBlock Grid.Row="0" Grid.Column="0"
HorizontalAlignment="Right" VerticalAlignment="Center"
Margin="0,0,8,0"
Expand Down Expand Up @@ -61,6 +61,16 @@
<CheckBox Grid.Row="1" Grid.Column="1"
Content="{DynamicResource Text.ScanRepositories.UseCustomDir}"
IsChecked="{Binding UseCustomDir, Mode=TwoWay}"/>

<TextBlock Grid.Row="2" Grid.Column="0"
HorizontalAlignment="Right" VerticalAlignment="Center"
Margin="0,8,8,0"
Text="{DynamicResource Text.ScanRepositories.TargetGroup}"/>
<TextBox Grid.Row="2" Grid.Column="1"
Height="28"
Margin="0,4,0,0"
CornerRadius="3"
Text="{Binding TargetGroupPath, Mode=TwoWay}"/>
</Grid>
</StackPanel>
</UserControl>