Skip to content

Commit dd1a080

Browse files
committed
configure_v3: use tabbed UI for patch selection
It makes the full patches list more visible, while not being too distracting for users who just want to install the language patch for their language.
1 parent 12c6a54 commit dd1a080

File tree

4 files changed

+23
-34
lines changed

4 files changed

+23
-34
lines changed

thcrap_configure_v3/Page2.xaml

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,12 @@
66
xmlns:local="clr-namespace:thcrap_configure_v3"
77
mc:Ignorable="d"
88
d:DesignHeight="450" d:DesignWidth="800">
9-
<DockPanel>
10-
<Grid DockPanel.Dock="Bottom" Cursor="Hand" MouseUp="ChangeMode">
11-
<TextBlock Foreground="Blue" TextDecorations="Underline" x:Name="SimpleText">Advanced mode...</TextBlock>
12-
<TextBlock Foreground="Blue" TextDecorations="Underline" x:Name="AdvancedText" Visibility="Collapsed">Simple mode...</TextBlock>
13-
</Grid>
14-
<local:Page2_simple x:Name="Simple" />
15-
<local:Page2_advanced x:Name="Advanced" Visibility="Collapsed" />
16-
</DockPanel>
9+
<TabControl SelectionChanged="TabChanged">
10+
<TabItem Header="Language patches">
11+
<local:Page2_simple x:Name="Simple" Margin="6" />
12+
</TabItem>
13+
<TabItem Header="All patches" Name="tab_AllPatches">
14+
<local:Page2_advanced x:Name="Advanced" Margin="6" />
15+
</TabItem>
16+
</TabControl>
1717
</UserControl>

thcrap_configure_v3/Page2.xaml.cs

Lines changed: 9 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -59,33 +59,18 @@ public string GetConfigName()
5959
return patches[0].Id.Substring("lang_".Length);
6060
}
6161

62-
private void GoToAdvanced()
62+
private void TabChanged(object sender, SelectionChangedEventArgs e)
6363
{
64-
Advanced.configMaxLength = 248 - (Environment.CurrentDirectory.Length + "\\config\\.js".Length);
65-
Advanced.SetInitialPatch(Simple.GetSelectedRepoPatch()[0]);
64+
if ((sender as TabControl).SelectedContent == Advanced)
65+
{
66+
Advanced.SetInitialPatch(Simple.GetSelectedRepoPatch()[0]);
6667

67-
Simple.Visibility = Visibility.Collapsed;
68-
SimpleText.Visibility = Visibility.Collapsed;
69-
Advanced.Visibility = Visibility.Visible;
70-
AdvancedText.Visibility = Visibility.Visible;
71-
mode = Mode.Advanced;
72-
}
73-
74-
private void GoToSimple()
75-
{
76-
Advanced.Visibility = Visibility.Collapsed;
77-
AdvancedText.Visibility = Visibility.Collapsed;
78-
Simple.Visibility = Visibility.Visible;
79-
SimpleText.Visibility = Visibility.Visible;
80-
mode = Mode.Simple;
81-
}
82-
83-
private void ChangeMode(object sender, MouseButtonEventArgs e)
84-
{
85-
if (mode == Mode.Simple)
86-
GoToAdvanced();
68+
mode = Mode.Advanced;
69+
}
8770
else
88-
GoToSimple();
71+
{
72+
mode = Mode.Simple;
73+
}
8974
}
9075
}
9176
}

thcrap_configure_v3/Page2_advanced.xaml.cs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ namespace thcrap_configure_v3
2424
public partial class Page2_advanced : UserControl
2525
{
2626
private int isUnedited = 1;
27-
public int configMaxLength = 0;
27+
private int configMaxLength = 0;
2828

2929
private void ResetConfigName()
3030
{
@@ -293,6 +293,10 @@ public void ConfigNameChanged(object sender, TextChangedEventArgs e)
293293
{
294294
isUnedited--;
295295
}
296+
if (configMaxLength == 0)
297+
{
298+
configMaxLength = 248 - (Environment.CurrentDirectory.Length + "\\config\\.js".Length);
299+
}
296300
if (ConfigName.Text.Length > configMaxLength)
297301
{
298302
ConfigName.Text = ConfigName.Text.Substring(0, configMaxLength);

thcrap_configure_v3/Page2_simple.xaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
<ItemsControl x:Name="UserLanguagePatches">
1212
<ItemsControl.ItemTemplate>
1313
<DataTemplate>
14-
<RadioButton GroupName="patch" IsChecked="{Binding IsChecked}">
14+
<RadioButton GroupName="patch" IsChecked="{Binding IsChecked}" Margin="0,0,0,2">
1515
<TextBlock Text="{Binding patch.Title}" />
1616
</RadioButton>
1717
</DataTemplate>

0 commit comments

Comments
 (0)