Skip to content

Commit 9ddc165

Browse files
committed
save/load rearranged column displayindex for recent grid (fixes #39)
1 parent 923a41f commit 9ddc165

File tree

4 files changed

+49
-1
lines changed

4 files changed

+49
-1
lines changed

UnityLauncherPro/MainWindow.xaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -454,7 +454,7 @@
454454
<Button Style="{StaticResource CustomButton}" ToolTip="Add existing project" x:Name="btnAddProjectFolder" Content="Add Project.." Height="22" Width="78" HorizontalAlignment="Right" VerticalAlignment="Top" Margin="0,4,34,0" Click="BtnAddProjectFolder_Click" BorderBrush="{x:Null}" TabIndex="10" />
455455
<Button Style="{StaticResource CustomButton}" ToolTip="Refresh list (F5)" x:Name="btnRefreshProjectList" Content="" Height="22" Width="22" HorizontalAlignment="Right" VerticalAlignment="Top" FontSize="16" Margin="0,4,3,0" Padding="1,-2,1,1" BorderBrush="{x:Null}" Click="BtnRefreshProjectList_Click" TabIndex="11"/>
456456

457-
<DataGrid x:Name="gridRecent" HorizontalContentAlignment="Left" VerticalContentAlignment="Top" SelectionMode="Single" Margin="4,30,2,42" CanUserAddRows="False" Background="{x:Null}" BorderBrush="{x:Null}" ColumnHeaderStyle="{StaticResource HeaderStyle}" Padding="0" HorizontalScrollBarVisibility="Disabled" HeadersVisibility="Column" Foreground="{DynamicResource ThemeGridForeground}" HorizontalGridLinesBrush="{DynamicResource ThemeGridHorizontalGridLines}" VerticalGridLinesBrush="{DynamicResource ThemeGridVerticalGridLines}" AutoGenerateColumns="False" PreviewKeyDown="GridRecent_PreviewKeyDown" Loaded="GridRecent_Loaded" TabIndex="2" CellEditEnding="GridRecent_CellEditEnding" PreviewMouseDoubleClick="GridRecent_PreviewMouseDoubleClick" ContextMenuOpening="GridRecent_ContextMenuOpening" BeginningEdit="GridRecent_BeginningEdit" RowHeight="21" >
457+
<DataGrid x:Name="gridRecent" HorizontalContentAlignment="Left" VerticalContentAlignment="Top" SelectionMode="Single" Margin="4,30,2,42" CanUserAddRows="False" Background="{x:Null}" BorderBrush="{x:Null}" ColumnHeaderStyle="{StaticResource HeaderStyle}" Padding="0" HorizontalScrollBarVisibility="Disabled" HeadersVisibility="Column" Foreground="{DynamicResource ThemeGridForeground}" HorizontalGridLinesBrush="{DynamicResource ThemeGridHorizontalGridLines}" VerticalGridLinesBrush="{DynamicResource ThemeGridVerticalGridLines}" AutoGenerateColumns="False" PreviewKeyDown="GridRecent_PreviewKeyDown" Loaded="GridRecent_Loaded" TabIndex="2" CellEditEnding="GridRecent_CellEditEnding" PreviewMouseDoubleClick="GridRecent_PreviewMouseDoubleClick" ContextMenuOpening="GridRecent_ContextMenuOpening" BeginningEdit="GridRecent_BeginningEdit" RowHeight="21" ColumnReordered="GridRecent_ColumnReordered" >
458458

459459
<DataGrid.CommandBindings>
460460
<CommandBinding Command="ApplicationCommands.Copy" Executed="CopyRowFolderToClipBoard" CanExecute="CanExecute_Copy"/>

UnityLauncherPro/MainWindow.xaml.cs

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -326,6 +326,28 @@ void LoadSettings()
326326
}
327327

328328
useHumanFriendlyDateFormat = Properties.Settings.Default.useHumandFriendlyLastModified;
329+
330+
// recent grid column display index order
331+
var order = Properties.Settings.Default.recentColumnsOrder;
332+
333+
// if we dont have any values, get & set them now
334+
if (order == null)
335+
{
336+
Properties.Settings.Default.recentColumnsOrder = new Int32[gridRecent.Columns.Count];
337+
for (int i = 0; i < gridRecent.Columns.Count; i++)
338+
{
339+
Properties.Settings.Default.recentColumnsOrder[i] = gridRecent.Columns[i].DisplayIndex;
340+
}
341+
Properties.Settings.Default.Save();
342+
}
343+
else // load existing order
344+
{
345+
for (int i = 0; i < gridRecent.Columns.Count; i++)
346+
{
347+
gridRecent.Columns[i].DisplayIndex = Properties.Settings.Default.recentColumnsOrder[i];
348+
}
349+
}
350+
329351
} // LoadSettings()
330352

331353
private void SaveSettingsOnExit()
@@ -1994,6 +2016,18 @@ private void ChkHumanFriendlyDateTime_Checked(object sender, RoutedEventArgs e)
19942016
Properties.Settings.Default.Save();
19952017
}
19962018

2019+
private void GridRecent_ColumnReordered(object sender, DataGridColumnEventArgs e)
2020+
{
2021+
// get new display indexes
2022+
for (int i = 0; i < gridRecent.Columns.Count; i++)
2023+
{
2024+
Properties.Settings.Default.recentColumnsOrder[i] = gridRecent.Columns[i].DisplayIndex;
2025+
}
2026+
Properties.Settings.Default.Save();
2027+
}
2028+
2029+
2030+
19972031
//private void CmbPlatformSelection_ManipulationInertiaStarting(object sender, ManipulationInertiaStartingEventArgs e)
19982032
//{
19992033
// var comb = (ComboBox)sender;

UnityLauncherPro/Properties/Settings.Designer.cs

Lines changed: 11 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

UnityLauncherPro/Properties/Settings.settings

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,5 +83,8 @@
8383
<Setting Name="useHumandFriendlyLastModified" Type="System.Boolean" Scope="User">
8484
<Value Profile="(Default)">False</Value>
8585
</Setting>
86+
<Setting Name="recentColumnsOrder" Type="System.Int32[]" Scope="User">
87+
<Value Profile="(Default)" />
88+
</Setting>
8689
</Settings>
8790
</SettingsFile>

0 commit comments

Comments
 (0)