Using the new syntax

This commit is contained in:
qiufeng 2025-04-12 11:45:52 +08:00
parent f3d99d64bf
commit 81f02a20c5

View file

@ -48,7 +48,7 @@ namespace SourceGit.ViewModels
{ {
_ignoreIndexChange = true; _ignoreIndexChange = true;
Pages = new AvaloniaList<LauncherPage>(); Pages = [];
AddNewTab(); AddNewTab();
var pref = Preferences.Instance; var pref = Preferences.Instance;
@ -205,8 +205,7 @@ namespace SourceGit.ViewModels
return; return;
} }
if (page == null) page ??= _activePage;
page = _activePage;
var removeIdx = Pages.IndexOf(page); var removeIdx = Pages.IndexOf(page);
var activeIdx = Pages.IndexOf(_activePage); var activeIdx = Pages.IndexOf(_activePage);
@ -239,7 +238,7 @@ namespace SourceGit.ViewModels
CloseRepositoryInTab(one); CloseRepositoryInTab(one);
} }
Pages = new AvaloniaList<LauncherPage> { ActivePage }; Pages = [ActivePage];
ActiveWorkspace.ActiveIdx = 0; ActiveWorkspace.ActiveIdx = 0;
OnPropertyChanged(nameof(Pages)); OnPropertyChanged(nameof(Pages));
@ -360,9 +359,11 @@ namespace SourceGit.ViewModels
var icon = App.CreateMenuIcon(workspace.IsActive ? "Icons.Check" : "Icons.Workspace"); var icon = App.CreateMenuIcon(workspace.IsActive ? "Icons.Check" : "Icons.Workspace");
icon.Fill = workspace.Brush; icon.Fill = workspace.Brush;
var item = new MenuItem(); var item = new MenuItem
item.Header = workspace.Name; {
item.Icon = icon; Header = workspace.Name,
Icon = icon
};
item.Click += (_, e) => item.Click += (_, e) =>
{ {
if (!workspace.IsActive) if (!workspace.IsActive)
@ -376,8 +377,10 @@ namespace SourceGit.ViewModels
menu.Items.Add(new MenuItem() { Header = "-" }); menu.Items.Add(new MenuItem() { Header = "-" });
var configure = new MenuItem(); var configure = new MenuItem
configure.Header = App.Text("Workspace.Configure"); {
Header = App.Text("Workspace.Configure")
};
configure.Click += (_, e) => configure.Click += (_, e) =>
{ {
App.OpenDialog(new Views.ConfigureWorkspace() { DataContext = new ConfigureWorkspace() }); App.OpenDialog(new Views.ConfigureWorkspace() { DataContext = new ConfigureWorkspace() });
@ -394,9 +397,11 @@ namespace SourceGit.ViewModels
return null; return null;
var menu = new ContextMenu(); var menu = new ContextMenu();
var close = new MenuItem(); var close = new MenuItem
close.Header = App.Text("PageTabBar.Tab.Close"); {
close.InputGesture = KeyGesture.Parse(OperatingSystem.IsMacOS() ? "⌘+W" : "Ctrl+W"); Header = App.Text("PageTabBar.Tab.Close"),
InputGesture = KeyGesture.Parse(OperatingSystem.IsMacOS() ? "⌘+W" : "Ctrl+W")
};
close.Click += (_, e) => close.Click += (_, e) =>
{ {
CloseTab(page); CloseTab(page);
@ -404,8 +409,10 @@ namespace SourceGit.ViewModels
}; };
menu.Items.Add(close); menu.Items.Add(close);
var closeOthers = new MenuItem(); var closeOthers = new MenuItem
closeOthers.Header = App.Text("PageTabBar.Tab.CloseOther"); {
Header = App.Text("PageTabBar.Tab.CloseOther")
};
closeOthers.Click += (_, e) => closeOthers.Click += (_, e) =>
{ {
CloseOtherTabs(); CloseOtherTabs();
@ -413,8 +420,10 @@ namespace SourceGit.ViewModels
}; };
menu.Items.Add(closeOthers); menu.Items.Add(closeOthers);
var closeRight = new MenuItem(); var closeRight = new MenuItem
closeRight.Header = App.Text("PageTabBar.Tab.CloseRight"); {
Header = App.Text("PageTabBar.Tab.CloseRight")
};
closeRight.Click += (_, e) => closeRight.Click += (_, e) =>
{ {
CloseRightTabs(); CloseRightTabs();
@ -424,9 +433,11 @@ namespace SourceGit.ViewModels
if (page.Node.IsRepository) if (page.Node.IsRepository)
{ {
var bookmark = new MenuItem(); var bookmark = new MenuItem
bookmark.Header = App.Text("PageTabBar.Tab.Bookmark"); {
bookmark.Icon = App.CreateMenuIcon("Icons.Bookmark"); Header = App.Text("PageTabBar.Tab.Bookmark"),
Icon = App.CreateMenuIcon("Icons.Bookmark")
};
for (int i = 0; i < Models.Bookmarks.Supported.Count; i++) for (int i = 0; i < Models.Bookmarks.Supported.Count; i++)
{ {
@ -436,8 +447,10 @@ namespace SourceGit.ViewModels
icon.Fill = Models.Bookmarks.Brushes[i]; icon.Fill = Models.Bookmarks.Brushes[i];
var dupIdx = i; var dupIdx = i;
var setter = new MenuItem(); var setter = new MenuItem
setter.Header = icon; {
Header = icon
};
setter.Click += (_, e) => setter.Click += (_, e) =>
{ {
page.Node.Bookmark = dupIdx; page.Node.Bookmark = dupIdx;
@ -448,9 +461,11 @@ namespace SourceGit.ViewModels
menu.Items.Add(new MenuItem() { Header = "-" }); menu.Items.Add(new MenuItem() { Header = "-" });
menu.Items.Add(bookmark); menu.Items.Add(bookmark);
var copyPath = new MenuItem(); var copyPath = new MenuItem
copyPath.Header = App.Text("PageTabBar.Tab.CopyPath"); {
copyPath.Icon = App.CreateMenuIcon("Icons.Copy"); Header = App.Text("PageTabBar.Tab.CopyPath"),
Icon = App.CreateMenuIcon("Icons.Copy")
};
copyPath.Click += (_, e) => copyPath.Click += (_, e) =>
{ {
page.CopyPath(); page.CopyPath();