Skip to content

Commit f3e8d49

Browse files
committed
Add an 'advanced operation history' menu item
1 parent 6cbb671 commit f3e8d49

File tree

4 files changed

+95
-2
lines changed

4 files changed

+95
-2
lines changed
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<Page
3+
x:Class="UniGetUI.Interface.Pages.AdvancedOperationHistoryPage"
4+
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
5+
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
6+
xmlns:local="using:UniGetUI.Interface.Pages"
7+
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
8+
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:animations="using:CommunityToolkit.WinUI.Animations" xmlns:widgets="using:UniGetUI.Interface.Widgets"
9+
mc:Ignorable="d">
10+
11+
<animations:Implicit.ShowAnimations>
12+
<animations:TranslationAnimation Duration="0:0:0.25" From="0,100,0" To="0"/>
13+
<animations:OpacityAnimation Duration="0:0:0.25" From="0" To="1"/>
14+
</animations:Implicit.ShowAnimations>
15+
16+
<Grid RowSpacing="4">
17+
<!-- <Grid.RowDefinitions>
18+
<RowDefinition Height="Auto"/>
19+
<RowDefinition Height="*"/>
20+
</Grid.RowDefinitions>
21+
<Grid Grid.Row="0" ColumnSpacing="0">
22+
<Grid.ColumnDefinitions>
23+
<ColumnDefinition Width="Auto"/>
24+
<ColumnDefinition Width="Auto"/>
25+
<ColumnDefinition Width="*"/>
26+
<ColumnDefinition Width="Auto"/>
27+
<ColumnDefinition Width="*"/>
28+
<ColumnDefinition Width="Auto"/>
29+
</Grid.ColumnDefinitions>
30+
<Button Grid.Column="0" Name="CopyButton" Click="CopyButton_Click" CornerRadius="6,0,0,6">
31+
<widgets:TranslatedTextBlock Text="Copy to clipboard"/>
32+
</Button>
33+
<Button Grid.Column="1" Name="ExportButton" Click="ExportButton_Click" CornerRadius="0,6,6,0">
34+
<widgets:TranslatedTextBlock Text="Export to a file"/>
35+
</Button>
36+
<StackPanel Name="LogLevelPane" Grid.Column="3" Orientation="Horizontal" Spacing="10">
37+
<widgets:TranslatedTextBlock Text="Log level:" VerticalAlignment="Center"/>
38+
<ComboBox Name="LogLevelCombo" x:FieldModifier="protected" SelectionChanged="LogLevelCombo_SelectionChanged" PlaceholderText="Pick a color" Width="250" CornerRadius="6"/>
39+
</StackPanel>
40+
<Button Grid.Column="5" Name="ReloadButton" Click="ReloadButton_Click">
41+
<widgets:TranslatedTextBlock Text="Reload log"/>
42+
</Button>
43+
</Grid>
44+
<ScrollViewer x:FieldModifier="protected" Name="MainScroller" Grid.Row="1" HorizontalScrollMode="Disabled" Background="{ThemeResource ApplicationPageBackgroundThemeBrush}" CornerRadius="8">
45+
<RichTextBlock x:FieldModifier="protected" LineHeight="18" Name="LogTextBox" FontFamily="Consolas" TextWrapping="WrapWholeWords" HorizontalAlignment="Stretch" VerticalAlignment="Top" Margin="8"/>
46+
</ScrollViewer> -->
47+
<widgets:TranslatedTextBlock Text="Hello" />
48+
</Grid>
49+
</Page>
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
using System.Diagnostics;
2+
using ExternalLibraries.Clipboard;
3+
using Microsoft.UI.Xaml;
4+
using Microsoft.UI.Xaml.Controls;
5+
using UniGetUI.Core.Tools;
6+
using Windows.Storage;
7+
using Windows.Storage.Pickers;
8+
using Windows.UI;
9+
10+
// To learn more about WinUI, the WinUI project structure,
11+
// and more about our project templates, see: http://aka.ms/winui-project-info.
12+
13+
namespace UniGetUI.Interface.Pages
14+
{
15+
public partial class AdvancedOperationHistoryPage : IKeyboardShortcutListener, IEnterLeaveListener
16+
{
17+
18+
19+
public void ReloadTriggered()
20+
{ }
21+
public void SelectAllTriggered()
22+
{ }
23+
public void SearchTriggered()
24+
{ }
25+
public void OnEnter()
26+
{ }
27+
public void OnLeave()
28+
{ }
29+
}
30+
}

src/UniGetUI/Pages/MainView.xaml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,13 @@
2323
<MenuFlyoutSeparator Height="5"/>
2424
<widgets:BetterMenuItem Text="WingetUI Log" IconName="buggy" Name="WingetUILogs" Click="UniGetUILogs_Click" />
2525
<widgets:BetterMenuItem Text="Package Manager logs" IconName="console" Name="ManagerLogsMenu" Click="ManagerLogsMenu_Click" />
26-
<widgets:BetterMenuItem Text="Operation history" IconName="history" Name="OperationHistoryMenu" Click="OperationHistoryMenu_Click" />
26+
<MenuFlyoutSubItem x:Name="OperationHistorySubMenu" Text="Operation history">
27+
<MenuFlyoutSubItem.Icon>
28+
<widgets:LocalIcon FontSize="24" Icon="History" />
29+
</MenuFlyoutSubItem.Icon>
30+
<widgets:BetterMenuItem Text="Operation logs" Name="OperationHistoryMenu" Click="OperationHistoryMenu_Click" />
31+
<widgets:BetterMenuItem Text="Advanced operation history" Name="AdvancedOperationHistoryMenu" Click="AdvancedOperationHistoryMenu_Click" />
32+
</MenuFlyoutSubItem>
2733
<MenuFlyoutSeparator Height="5"/>
2834
<widgets:BetterMenuItem x:Name="VersionMenuItem" IconName="info_round" IsEnabled="False" />
2935
<widgets:BetterMenuItem Text="Release notes" IconName="megaphone" Name="ReleaseNotesMenu" Click="ReleaseNotesMenu_Click" />

src/UniGetUI/Pages/MainView.xaml.cs

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ public enum PageType
3131
OwnLog,
3232
ManagerLog,
3333
OperationHistory,
34+
AdvancedOperationHistory,
3435
Help,
3536
Null // Used for initializers
3637
}
@@ -45,6 +46,7 @@ public sealed partial class MainView : UserControl
4546
private UniGetUILogPage? UniGetUILogPage;
4647
private ManagerLogsPage? ManagerLogPage;
4748
private OperationHistoryPage? OperationHistoryPage;
49+
private AdvancedOperationHistoryPage? AdvancedOperationHistoryPage;
4850
private HelpPage? HelpPage;
4951

5052
private PageType OldPage_t = PageType.Null;
@@ -172,6 +174,7 @@ private Page GetPageForType(PageType type)
172174
PageType.OwnLog => UniGetUILogPage ??= new UniGetUILogPage(),
173175
PageType.ManagerLog => ManagerLogPage ??= new ManagerLogsPage(),
174176
PageType.OperationHistory => OperationHistoryPage ??= new OperationHistoryPage(),
177+
PageType.AdvancedOperationHistory => AdvancedOperationHistoryPage ??= new AdvancedOperationHistoryPage(),
175178
PageType.Help => HelpPage ??= new HelpPage(),
176179
PageType.Null => throw new InvalidCastException("Page type is Null"),
177180
_ => throw new InvalidDataException($"Unknown page type {type}")
@@ -189,6 +192,7 @@ private static PageType GetNextPage(PageType type)
189192

190193
// "Extra" pages
191194
PageType.OperationHistory => PageType.Discover,
195+
PageType.AdvancedOperationHistory => PageType.Discover,
192196
PageType.OwnLog => PageType.Discover,
193197
PageType.ManagerLog => PageType.Discover,
194198
PageType.Help => PageType.Discover,
@@ -208,6 +212,7 @@ private static PageType GetPreviousPage(PageType type)
208212

209213
// "Extra" pages
210214
PageType.OperationHistory => PageType.Discover,
215+
PageType.AdvancedOperationHistory => PageType.Discover,
211216
PageType.OwnLog => PageType.Discover,
212217
PageType.ManagerLog => PageType.Discover,
213218
PageType.Help => PageType.Discover,
@@ -227,7 +232,7 @@ private void SelectNavButtonForPage(PageType page)
227232

228233
SettingsNavButton.IsChecked = page is PageType.Settings;
229234
AboutNavButton.IsChecked = false;
230-
MoreNavButton.IsChecked = page is PageType.Help or PageType.ManagerLog or PageType.OperationHistory or PageType.OwnLog;
235+
MoreNavButton.IsChecked = page is PageType.Help or PageType.ManagerLog or PageType.OperationHistory or PageType.AdvancedOperationHistory or PageType.OwnLog;
231236
}
232237

233238
private async void AboutNavButton_Click(object sender, EventArgs e)
@@ -279,6 +284,9 @@ private void ReleaseNotesMenu_Click(object sender, RoutedEventArgs e)
279284
private void OperationHistoryMenu_Click(object sender, RoutedEventArgs e)
280285
=> NavigateTo(PageType.OperationHistory);
281286

287+
private void AdvancedOperationHistoryMenu_Click(object sender, RoutedEventArgs e)
288+
=> NavigateTo(PageType.AdvancedOperationHistory);
289+
282290
private void ManagerLogsMenu_Click(object sender, RoutedEventArgs e)
283291
=> OpenManagerLogs();
284292

0 commit comments

Comments
 (0)