Skip to content

Commit b789267

Browse files
committed
ux: use YES/NO instead of OK/CANCEL to ask confirm about auto-updating submodules (#2045)
Signed-off-by: leo <[email protected]>
1 parent afafac8 commit b789267

File tree

8 files changed

+36
-5
lines changed

8 files changed

+36
-5
lines changed

src/App.axaml.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -159,12 +159,12 @@ public static void ShowWindow(object data)
159159
}
160160
}
161161

162-
public static async Task<bool> AskConfirmAsync(string message)
162+
public static async Task<bool> AskConfirmAsync(string message, Models.ConfirmButtonType buttonType = Models.ConfirmButtonType.OkCancel)
163163
{
164164
if (Current?.ApplicationLifetime is IClassicDesktopStyleApplicationLifetime { MainWindow: { } owner })
165165
{
166166
var confirm = new Views.Confirm();
167-
confirm.Message.Text = message;
167+
confirm.SetData(message, buttonType);
168168
return await confirm.ShowDialog<bool>(owner);
169169
}
170170

src/Models/ConfirmButtonType.cs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
namespace SourceGit.Models
2+
{
3+
public enum ConfirmButtonType
4+
{
5+
OkCancel = 0,
6+
YesNo,
7+
}
8+
}

src/Resources/Locales/en_US.axaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -545,6 +545,7 @@
545545
<x:String x:Key="Text.MoveRepositoryNode" xml:space="preserve">Move Repository Node</x:String>
546546
<x:String x:Key="Text.MoveRepositoryNode.Target" xml:space="preserve">Select parent node for:</x:String>
547547
<x:String x:Key="Text.Name" xml:space="preserve">Name:</x:String>
548+
<x:String x:Key="Text.No" xml:space="preserve">NO</x:String>
548549
<x:String x:Key="Text.NotConfigured" xml:space="preserve">Git has NOT been configured. Please to go [Preferences] and configure it first.</x:String>
549550
<x:String x:Key="Text.Open" xml:space="preserve">Open</x:String>
550551
<x:String x:Key="Text.Open.SystemDefaultEditor" xml:space="preserve">Default Editor (System)</x:String>
@@ -941,4 +942,5 @@
941942
<x:String x:Key="Text.Worktree.Open" xml:space="preserve">Open</x:String>
942943
<x:String x:Key="Text.Worktree.Remove" xml:space="preserve">Remove</x:String>
943944
<x:String x:Key="Text.Worktree.Unlock" xml:space="preserve">Unlock</x:String>
945+
<x:String x:Key="Text.Yes" xml:space="preserve">YES</x:String>
944946
</ResourceDictionary>

src/Resources/Locales/zh_CN.axaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -549,6 +549,7 @@
549549
<x:String x:Key="Text.MoveRepositoryNode" xml:space="preserve">调整仓库分组</x:String>
550550
<x:String x:Key="Text.MoveRepositoryNode.Target" xml:space="preserve">请选择目标分组:</x:String>
551551
<x:String x:Key="Text.Name" xml:space="preserve">名称 :</x:String>
552+
<x:String x:Key="Text.No" xml:space="preserve">不用了</x:String>
552553
<x:String x:Key="Text.NotConfigured" xml:space="preserve">GIT尚未配置。请打开【偏好设置】配置GIT路径。</x:String>
553554
<x:String x:Key="Text.Open" xml:space="preserve">打开</x:String>
554555
<x:String x:Key="Text.Open.SystemDefaultEditor" xml:space="preserve">系统默认编辑器</x:String>
@@ -945,4 +946,5 @@
945946
<x:String x:Key="Text.Worktree.Open" xml:space="preserve">打开工作树</x:String>
946947
<x:String x:Key="Text.Worktree.Remove" xml:space="preserve">移除工作树</x:String>
947948
<x:String x:Key="Text.Worktree.Unlock" xml:space="preserve">解除工作树锁定</x:String>
949+
<x:String x:Key="Text.Yes" xml:space="preserve">好的</x:String>
948950
</ResourceDictionary>

src/Resources/Locales/zh_TW.axaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -549,6 +549,7 @@
549549
<x:String x:Key="Text.MoveRepositoryNode" xml:space="preserve">調整存放庫分組</x:String>
550550
<x:String x:Key="Text.MoveRepositoryNode.Target" xml:space="preserve">請選擇目標分組:</x:String>
551551
<x:String x:Key="Text.Name" xml:space="preserve">名稱:</x:String>
552+
<x:String x:Key="Text.No" xml:space="preserve">不,謝謝</x:String>
552553
<x:String x:Key="Text.NotConfigured" xml:space="preserve">尚未設定 Git。請開啟 [偏好設定] 以設定 Git 路徑。</x:String>
553554
<x:String x:Key="Text.Open" xml:space="preserve">開啟</x:String>
554555
<x:String x:Key="Text.Open.SystemDefaultEditor" xml:space="preserve">系統預設編輯器</x:String>
@@ -945,4 +946,5 @@
945946
<x:String x:Key="Text.Worktree.Open" xml:space="preserve">開啟工作區</x:String>
946947
<x:String x:Key="Text.Worktree.Remove" xml:space="preserve">移除工作區</x:String>
947948
<x:String x:Key="Text.Worktree.Unlock" xml:space="preserve">解除鎖定工作區</x:String>
949+
<x:String x:Key="Text.Yes" xml:space="preserve">好的</x:String>
948950
</ResourceDictionary>

src/ViewModels/Repository.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1508,7 +1508,7 @@ public async Task TryAutoUpdateSubmodules(Models.ICommandLog log)
15081508
builder.Append("\n");
15091509

15101510
var msg = App.Text("Checkout.WarnUpdatingSubmodules", builder.ToString());
1511-
var shouldContinue = await App.AskConfirmAsync(msg);
1511+
var shouldContinue = await App.AskConfirmAsync(msg, Models.ConfirmButtonType.YesNo);
15121512
if (!shouldContinue)
15131513
break;
15141514
}

src/Views/Confirm.axaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,21 +42,21 @@
4242
<!-- Buttons -->
4343
<StackPanel Grid.Row="2" Margin="0,0,0,16" Orientation="Horizontal" HorizontalAlignment="Center">
4444
<Button Classes="flat"
45+
x:Name="BtnYes"
4546
Width="80"
4647
Height="30"
4748
Margin="4,0"
4849
Click="Sure"
49-
Content="{DynamicResource Text.Sure}"
5050
HorizontalAlignment="Center"
5151
HorizontalContentAlignment="Center"
5252
VerticalContentAlignment="Center"/>
5353

5454
<Button Classes="flat primary"
55+
x:Name="BtnNo"
5556
Width="80"
5657
Height="30"
5758
Margin="4,0"
5859
Click="CloseWindow"
59-
Content="{DynamicResource Text.Cancel}"
6060
HorizontalAlignment="Center"
6161
HorizontalContentAlignment="Center"
6262
VerticalContentAlignment="Center"/>

src/Views/Confirm.axaml.cs

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,23 @@ public Confirm()
99
InitializeComponent();
1010
}
1111

12+
public void SetData(string message, Models.ConfirmButtonType buttonType)
13+
{
14+
Message.Text = message;
15+
16+
switch (buttonType)
17+
{
18+
case Models.ConfirmButtonType.OkCancel:
19+
BtnYes.Content = App.Text("Sure");
20+
BtnNo.Content = App.Text("Cancel");
21+
break;
22+
case Models.ConfirmButtonType.YesNo:
23+
BtnYes.Content = App.Text("Yes");
24+
BtnNo.Content = App.Text("No");
25+
break;
26+
}
27+
}
28+
1229
private void Sure(object _1, RoutedEventArgs _2)
1330
{
1431
Close(true);

0 commit comments

Comments
 (0)