Skip to content

Commit d16c361

Browse files
committed
fix upgrade window double click on scrollbar (now disabled), new project: show template count, update template list on unity version change, press §-key to cycle through selected templates
1 parent 20a5f34 commit d16c361

File tree

3 files changed

+26
-19
lines changed

3 files changed

+26
-19
lines changed

UnityLauncherPro/NewProject.xaml

Lines changed: 5 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -171,29 +171,20 @@
171171
<Grid>
172172
<StackPanel Margin="10,3">
173173
<Label Content="Unity Version " Foreground="{DynamicResource ThemeButtonForeground}" Margin="0,0,0,3" Padding="5,5,5,3" />
174-
<DataGrid x:Name="gridAvailableVersions" SelectionMode="Single" Height="120" Margin="3,0" VerticalAlignment="Top" HeadersVisibility="None" AutoGenerateColumns="False" IsSynchronizedWithCurrentItem="True" Foreground="{DynamicResource ThemeButtonForeground}" Background="{DynamicResource ThemeMainBackgroundColor}" SelectionChanged="GridAvailableVersions_SelectionChanged" IsTabStop="True" TabIndex="1" KeyboardNavigation.TabNavigation = "None" Loaded="GridAvailableVersions_Loaded" EnableRowVirtualization="False" VerticalScrollBarVisibility="Visible">
174+
<DataGrid x:Name="gridAvailableVersions" KeyboardNavigation.TabNavigation = "None" SelectionMode="Single" Height="120" Margin="3,0" VerticalAlignment="Top" HeadersVisibility="None" AutoGenerateColumns="False" IsSynchronizedWithCurrentItem="True" Foreground="{DynamicResource ThemeButtonForeground}" Background="{DynamicResource ThemeMainBackgroundColor}" SelectionChanged="GridAvailableVersions_SelectionChanged" IsTabStop="True" TabIndex="1" Loaded="GridAvailableVersions_Loaded" EnableRowVirtualization="False" VerticalScrollBarVisibility="Visible">
175175
<DataGrid.Columns>
176176
<DataGridTextColumn Header="Key" Binding="{Binding Key}" IsReadOnly="True" CanUserResize="False" MinWidth="300" />
177177
</DataGrid.Columns>
178-
<!--<local:Project GITBranch="" Modified="" Title="dfgh" Path="A:/temp" Version="5.6.7f1"/>
179-
<local:Project GITBranch="" Modified="" Title="dfgh" Path="A:/temp" Version="5.6.7f1"/>
180-
<local:Project GITBranch="" Modified="" Title="dfgh" Path="A:/temp" Version="5.6.7f1"/>
181-
<local:Project GITBranch="" Modified="" Title="dfgh" Path="A:/temp" Version="5.6.7f1"/>
182-
<local:Project GITBranch="" Modified="" Title="dfgh" Path="A:/temp" Version="5.6.7f1"/>
183-
<local:Project GITBranch="" Modified="" Title="dfgh" Path="A:/temp" Version="5.6.7f1"/>
184-
<local:Project GITBranch="" Modified="" Title="dfgh" Path="A:/temp" Version="5.6.7f1"/>
185-
<local:Project GITBranch="" Modified="" Title="MMO" Path="A:/temp" Version="2018.3.13f1"/>-->
186178
</DataGrid>
187179

188-
189180
<Grid HorizontalAlignment="Stretch" Margin="0,3,0,0">
190181
<Grid.ColumnDefinitions>
191182
<ColumnDefinition Width="60*"/>
192183
<ColumnDefinition Width="*"/>
193184
<ColumnDefinition Width="40*"/>
194185
</Grid.ColumnDefinitions>
195186
<Label Grid.Column="0" Content="Project Name:" Foreground="{DynamicResource ThemeButtonForeground}" Margin="0" Padding="5,5,5,0" />
196-
<Label Grid.Column="2" Content="Template:" Foreground="{DynamicResource ThemeButtonForeground}" Margin="0" Padding="5,5,5,0" />
187+
<Label x:Name="lblTemplateTitleAndCount" Grid.Column="2" Content="Template:" Foreground="{DynamicResource ThemeButtonForeground}" Margin="0" Padding="5,5,5,0" />
197188
</Grid>
198189

199190
<Grid HorizontalAlignment="Stretch" Margin="0,3,0,0">
@@ -203,21 +194,19 @@
203194
<ColumnDefinition Width="40*"/>
204195
</Grid.ColumnDefinitions>
205196
<TextBox Grid.Column="0" x:Name="txtNewProjectName" VerticalAlignment="Center" IsUndoEnabled="True" TextChanged="TxtNewProjectName_TextChanged" PreviewKeyDown="TxtNewProjectName_PreviewKeyDown" TabIndex="0" Margin="4,2" Grid.ColumnSpan="2" />
206-
<ComboBox Grid.Column="2" x:Name="cmbNewProjectTemplate" DisplayMemberPath="Key" SelectedIndex="0" Margin="4,0" />
197+
<ComboBox Grid.Column="2" x:Name="cmbNewProjectTemplate" DisplayMemberPath="Key" SelectedIndex="0" Margin="4,0" TabIndex="2" />
207198
</Grid>
208199

209-
210-
211200
<Label x:Name="lblNewProjectFolder" Content="(folder)" Foreground="{DynamicResource ThemeButtonBackground}" Margin="0" FontSize="10" Padding="5,0,5,3" />
212201
<Grid HorizontalAlignment="Stretch" Margin="0,8,0,0">
213202
<Grid.ColumnDefinitions>
214203
<ColumnDefinition Width="*"/>
215204
<ColumnDefinition Width="*"/>
216205
</Grid.ColumnDefinitions>
217-
<Button Grid.Column="0" Style="{StaticResource CustomButton}" x:Name="btnCancelNewProject" Background="{DynamicResource ThemeButtonBackground}" Foreground="#FFC1C1C1" Margin="3,0,3,3" BorderBrush="{x:Null}" VerticalAlignment="Top" Height="35" Click="BtnCancelNewProject_Click" IsTabStop="False" >
206+
<Button Grid.Column="0" Style="{StaticResource CustomButton}" x:Name="btnCancelNewProject" Background="{DynamicResource ThemeButtonBackground}" Foreground="#FFC1C1C1" Margin="3,0,3,3" BorderBrush="{x:Null}" VerticalAlignment="Top" Height="35" Click="BtnCancelNewProject_Click" TabIndex="4" >
218207
<Label Foreground="{DynamicResource ThemeButtonForeground}" Content="Cancel"/>
219208
</Button>
220-
<Button Grid.Column="1" Style="{StaticResource CustomButton}" x:Name="btnCreateNewProject" Background="{DynamicResource ThemeButtonBackground}" Foreground="#FFC1C1C1" Margin="3,0,3,3" BorderBrush="{x:Null}" VerticalAlignment="Top" Height="35" Click="BtnCreateNewProject_Click" IsTabStop="False">
209+
<Button Grid.Column="1" Style="{StaticResource CustomButton}" x:Name="btnCreateNewProject" Background="{DynamicResource ThemeButtonBackground}" Foreground="#FFC1C1C1" Margin="3,0,3,3" BorderBrush="{x:Null}" VerticalAlignment="Top" Height="35" Click="BtnCreateNewProject_Click" TabIndex="3">
221210
<Label Foreground="{DynamicResource ThemeButtonForeground}" Content="_Create"/>
222211
</Button>
223212
</Grid>

UnityLauncherPro/NewProject.xaml.cs

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,15 +35,21 @@ public NewProject(string unityVersion, string suggestedName, string targetFolder
3535
gridAvailableVersions.ScrollIntoView(item);
3636
}
3737

38-
// scan available templates, TODO should cache this at least per session?
39-
cmbNewProjectTemplate.ItemsSource = Tools.ScanTemplates(item.Value);
38+
UpdateTemplatesDropDown(item.Value);
4039

4140
// select projectname text so can overwrite if needed
4241
txtNewProjectName.Focus();
4342
txtNewProjectName.SelectAll();
4443
newProjectName = txtNewProjectName.Text;
4544
}
4645

46+
void UpdateTemplatesDropDown(string unityPath)
47+
{
48+
// scan available templates, TODO could cache this at least per session?
49+
cmbNewProjectTemplate.ItemsSource = Tools.ScanTemplates(unityPath);
50+
cmbNewProjectTemplate.SelectedIndex = 0;
51+
lblTemplateTitleAndCount.Content = "Template: (" + (cmbNewProjectTemplate.Items.Count - 1) + ")";
52+
}
4753
private void BtnCreateNewProject_Click(object sender, RoutedEventArgs e)
4854
{
4955
templateZipPath = ((KeyValuePair<string, string>)cmbNewProjectTemplate.SelectedValue).Value;
@@ -61,6 +67,10 @@ private void Window_PreviewKeyDown(object sender, KeyEventArgs e)
6167
{
6268
switch (e.Key)
6369
{
70+
case Key.Oem5: // select next template §-key
71+
cmbNewProjectTemplate.SelectedIndex = ++cmbNewProjectTemplate.SelectedIndex % cmbNewProjectTemplate.Items.Count;
72+
e.Handled = true; // override writing to textbox
73+
break;
6474
case Key.Enter: // enter accept
6575
UpdateSelectedVersion();
6676
DialogResult = true;
@@ -117,6 +127,8 @@ private void GridAvailableVersions_SelectionChanged(object sender, SelectionChan
117127
var k = gridAvailableVersions.SelectedItem as KeyValuePair<string, string>?;
118128
newVersion = k.Value.Key;
119129
GenerateNewName();
130+
// update templates list for selected unity version
131+
UpdateTemplatesDropDown(k.Value.Value);
120132
}
121133

122134
private void GridAvailableVersions_Loaded(object sender, RoutedEventArgs e)

UnityLauncherPro/UpgradeWindow.xaml.cs

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
using System.Windows;
55
using System.Windows.Controls;
66
using System.Windows.Input;
7+
using System.Windows.Media;
78

89
namespace UnityLauncherPro
910
{
@@ -126,7 +127,12 @@ private void GridAvailableVersions_Loaded(object sender, RoutedEventArgs e)
126127

127128
private void GridAvailableVersions_PreviewMouseDoubleClick(object sender, MouseButtonEventArgs e)
128129
{
129-
Upgrade();
130+
var src = VisualTreeHelper.GetParent((DependencyObject)e.OriginalSource);
131+
var srcType = src.GetType();
132+
if (srcType == typeof(ContentPresenter))
133+
{
134+
Upgrade();
135+
}
130136
}
131137

132138
void Upgrade()

0 commit comments

Comments
 (0)