mirror of
https://github.com/sourcegit-scm/sourcegit
synced 2025-06-16 16:05:00 +00:00
feature: supports to show submodules as tree or list (#1307)
Signed-off-by: leo <longshuang@msn.cn>
This commit is contained in:
parent
d299469613
commit
ed1351b1f7
10 changed files with 302 additions and 152 deletions
|
@ -210,7 +210,21 @@ namespace SourceGit.ViewModels
|
|||
private set => SetProperty(ref _submodules, value);
|
||||
}
|
||||
|
||||
public SubmoduleCollection VisibleSubmodules
|
||||
public bool ShowSubmodulesAsTree
|
||||
{
|
||||
get => Preferences.Instance.ShowSubmodulesAsTree;
|
||||
set
|
||||
{
|
||||
if (value != Preferences.Instance.ShowSubmodulesAsTree)
|
||||
{
|
||||
Preferences.Instance.ShowSubmodulesAsTree = value;
|
||||
VisibleSubmodules = BuildVisibleSubmodules();
|
||||
OnPropertyChanged();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public object VisibleSubmodules
|
||||
{
|
||||
get => _visibleSubmodules;
|
||||
private set => SetProperty(ref _visibleSubmodules, value);
|
||||
|
@ -536,7 +550,7 @@ namespace SourceGit.ViewModels
|
|||
_tags.Clear();
|
||||
_visibleTags.Clear();
|
||||
_submodules.Clear();
|
||||
_visibleSubmodules.Clear();
|
||||
_visibleSubmodules = null;
|
||||
_searchedCommits.Clear();
|
||||
_selectedSearchedCommit = null;
|
||||
|
||||
|
@ -2512,7 +2526,7 @@ namespace SourceGit.ViewModels
|
|||
return visible;
|
||||
}
|
||||
|
||||
private SubmoduleCollection BuildVisibleSubmodules()
|
||||
private object BuildVisibleSubmodules()
|
||||
{
|
||||
var visible = new List<Models.Submodule>();
|
||||
if (string.IsNullOrEmpty(_filter))
|
||||
|
@ -2528,7 +2542,10 @@ namespace SourceGit.ViewModels
|
|||
}
|
||||
}
|
||||
|
||||
return SubmoduleCollection.Build(visible, _visibleSubmodules);
|
||||
if (Preferences.Instance.ShowSubmodulesAsTree)
|
||||
return SubmoduleCollectionAsTree.Build(visible, _visibleSubmodules as SubmoduleCollectionAsTree);
|
||||
else
|
||||
return new SubmoduleCollectionAsList() { Submodules = visible };
|
||||
}
|
||||
|
||||
private void RefreshHistoriesFilters(bool refresh)
|
||||
|
@ -2760,7 +2777,7 @@ namespace SourceGit.ViewModels
|
|||
private List<Models.Tag> _tags = new List<Models.Tag>();
|
||||
private List<Models.Tag> _visibleTags = new List<Models.Tag>();
|
||||
private List<Models.Submodule> _submodules = new List<Models.Submodule>();
|
||||
private SubmoduleCollection _visibleSubmodules = new SubmoduleCollection();
|
||||
private object _visibleSubmodules = null;
|
||||
|
||||
private bool _isAutoFetching = false;
|
||||
private Timer _autoFetchTimer = null;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue