diff --git a/DiscordChatExporter/Views/ErrorDialog.ammy b/DiscordChatExporter/Views/ErrorDialog.ammy index 7eb89d3..f1830d2 100644 --- a/DiscordChatExporter/Views/ErrorDialog.ammy +++ b/DiscordChatExporter/Views/ErrorDialog.ammy @@ -2,24 +2,24 @@ UserControl "DiscordChatExporter.Views.ErrorDialog" { DataContext: bind ErrorViewModel from $resource Container - Width: 250 + Width: 250 - StackPanel { - // Message - TextBlock { - Margin: 16 - FontSize: 16 - TextWrapping: WrapWithOverflow - Text: bind Message - } + StackPanel { + // Message + TextBlock { + Margin: 16 + FontSize: 16 + TextWrapping: WrapWithOverflow + Text: bind Message + } - // OK - Button { - Margin: 8 - Command: DialogHost.CloseDialogCommand - Content: "OK" - HorizontalAlignment: Right - Style: resource dyn "MaterialDesignFlatButton" - } + // OK + Button { + Margin: 8 + Command: DialogHost.CloseDialogCommand + Content: "OK" + HorizontalAlignment: Right + Style: resource dyn "MaterialDesignFlatButton" } + } } \ No newline at end of file diff --git a/DiscordChatExporter/Views/ExportSetupDialog.ammy b/DiscordChatExporter/Views/ExportSetupDialog.ammy index 5545758..1ad0ec2 100644 --- a/DiscordChatExporter/Views/ExportSetupDialog.ammy +++ b/DiscordChatExporter/Views/ExportSetupDialog.ammy @@ -8,7 +8,7 @@ UserControl "DiscordChatExporter.Views.ExportSetupDialog" { StackPanel { // File path TextBox { - Margin: "16 16 16 8" + Margin: [16, 16, 16, 8] HintAssist.Hint: "Output file" HintAssist.IsFloating: true IsReadOnly: true @@ -18,18 +18,19 @@ UserControl "DiscordChatExporter.Views.ExportSetupDialog" { // Format ComboBox { - Margin: "16 8 16 8" + Margin: [16, 8, 16, 8] HintAssist.Hint: "Export format" HintAssist.IsFloating: true IsReadOnly: true ItemsSource: bind AvailableFormats + SelectedItem: bind SelectedFormat + ItemTemplate: DataTemplate { TextBlock { Text: bind convert (ExportFormat f) => Extensions.GetDisplayName(f) } } - SelectedItem: bind SelectedFormat } // Date range @@ -37,16 +38,16 @@ UserControl "DiscordChatExporter.Views.ExportSetupDialog" { #TwoColumns("*", "*") DatePicker { - Grid.Column: 0 - Margin: "16 20 8 8" + #Cell(0, 0) + Margin: [16, 20, 8, 8] HintAssist.Hint: "From (optional)" HintAssist.IsFloating: true SelectedDate: bind From } DatePicker { - Grid.Column: 1 - Margin: "8 20 16 8" + #Cell(0, 1) + Margin: [8, 20, 16, 8] HintAssist.Hint: "To (optional)" HintAssist.IsFloating: true SelectedDate: bind To @@ -59,26 +60,27 @@ UserControl "DiscordChatExporter.Views.ExportSetupDialog" { // Browse Button "BrowseButton" { + Margin: 8 Click: BrowseButton_Click Content: "BROWSE" - Margin: 8 Style: resource dyn "MaterialDesignFlatButton" } // Export Button "ExportButton" { + Margin: 8 Click: ExportButton_Click Command: bind ExportCommand Content: "EXPORT" - Margin: 8 + IsDefault: true Style: resource dyn "MaterialDesignFlatButton" } // Cancel Button { + Margin: 8 Command: DialogHost.CloseDialogCommand Content: "CANCEL" - Margin: 8 Style: resource dyn "MaterialDesignFlatButton" } } diff --git a/DiscordChatExporter/Views/MainWindow.ammy b/DiscordChatExporter/Views/MainWindow.ammy index 3e7fd9c..d275c62 100644 --- a/DiscordChatExporter/Views/MainWindow.ammy +++ b/DiscordChatExporter/Views/MainWindow.ammy @@ -33,32 +33,32 @@ Window "DiscordChatExporter.Views.MainWindow" { #TwoColumns("*", "Auto") Card { - Grid.Column: 0 - Margin: "6 6 0 6" + #Cell(0, 0) + Margin: [6, 6, 0, 6] Grid { #TwoColumns("*", "Auto") // Token TextBox "TokenTextBox" { - Grid.Column: 0 + #Cell(0, 0) Margin: 6 BorderThickness: 0 HintAssist.Hint: "Token" - KeyDown: TokenTextBox_KeyDown FontSize: 16 Text: bind Token set [ UpdateSourceTrigger: PropertyChanged ] TextFieldAssist.DecorationVisibility: Hidden - TextFieldAssist.TextBoxViewMargin: "0 0 2 0" + TextFieldAssist.TextBoxViewMargin: [0, 0, 2, 0] } // Submit Button { - Grid.Column: 1 - Margin: "0 6 6 6" + #Cell(0, 1) + Margin: [0, 6, 6, 6] Padding: 4 Command: bind PullDataCommand + IsDefault: true Style: resource dyn "MaterialDesignFlatButton" PackIcon { @@ -72,7 +72,7 @@ Window "DiscordChatExporter.Views.MainWindow" { // Popup menu PopupBox { - Grid.Column: 1 + #Cell(0, 1) Foreground: resource dyn "PrimaryHueMidForegroundBrush" PlacementMode: LeftAndAlignTopEdges @@ -122,7 +122,7 @@ Window "DiscordChatExporter.Views.MainWindow" { TransitioningContent { OpeningEffect: TransitionEffect { Duration: "0:0:0.3" - Kind: SlideInFromRight + Kind: SlideInFromLeft } Border { @@ -131,9 +131,11 @@ Window "DiscordChatExporter.Views.MainWindow" { Cursor: CursorType.Hand Image { - Margin: "12 4 12 4" + Margin: [12, 4, 12, 4] Width: 48 Height: 48 + Source: bind IconUrl + ToolTip: bind Name OpacityMask: RadialGradientBrush { GradientStops: [ GradientStop { Color: "#FF000000", Offset: 0 } @@ -141,8 +143,6 @@ Window "DiscordChatExporter.Views.MainWindow" { GradientStop { Color: "#00000000", Offset: 1 } ] } - Source: bind IconUrl - ToolTip: bind Name } } } @@ -177,12 +177,12 @@ Window "DiscordChatExporter.Views.MainWindow" { ] PackIcon { - Margin: "16 7 0 6" + Margin: [16, 7, 0, 6] Kind: PackIconKind.Pound VerticalAlignment: Center } TextBlock { - Margin: "3 8 8 8" + Margin: [3, 8, 8, 8] FontSize: 14 Text: bind Name VerticalAlignment: Center @@ -196,7 +196,7 @@ Window "DiscordChatExporter.Views.MainWindow" { // Content placeholder StackPanel { - Margin: "32 32 8 8" + Margin: [32, 32, 8, 8] Visibility: bind IsDataAvailable convert (bool b) => b ? Visibility.Hidden : Visibility.Visible @@ -206,13 +206,13 @@ Window "DiscordChatExporter.Views.MainWindow" { } TextBlock { - Margin: "0 8 0 0" + Margin: [0, 8, 0, 0] FontSize: 16 Text: "To obtain it, follow these steps:" } TextBlock { - Margin: "8 0 0 0" + Margin: [8, 0, 0, 0] FontSize: 14 Run { diff --git a/DiscordChatExporter/Views/MainWindow.ammy.cs b/DiscordChatExporter/Views/MainWindow.ammy.cs index 84338c4..9821a90 100644 --- a/DiscordChatExporter/Views/MainWindow.ammy.cs +++ b/DiscordChatExporter/Views/MainWindow.ammy.cs @@ -1,7 +1,5 @@ using System.Reflection; -using System.Windows.Input; using DiscordChatExporter.Messages; -using DiscordChatExporter.ViewModels; using GalaSoft.MvvmLight.Messaging; using MaterialDesignThemes.Wpf; using Tyrrrz.Extensions; @@ -10,26 +8,20 @@ namespace DiscordChatExporter.Views { public partial class MainWindow { - private IMainViewModel ViewModel => (IMainViewModel) DataContext; - public MainWindow() { InitializeComponent(); Title += $" v{Assembly.GetExecutingAssembly().GetName().Version}"; - Messenger.Default.Register(this, m => DialogHost.Show(new ErrorDialog()).Forget()); - Messenger.Default.Register(this, m => DialogHost.Show(new ExportDoneDialog()).Forget()); - Messenger.Default.Register(this, m => DialogHost.Show(new ExportSetupDialog()).Forget()); - Messenger.Default.Register(this, m => DialogHost.Show(new SettingsDialog()).Forget()); - } - - public void TokenTextBox_KeyDown(object sender, KeyEventArgs e) - { - if (e.Key == Key.Enter) - { - // Execute command - ViewModel.PullDataCommand.Execute(null); - } + // Dialogs + Messenger.Default.Register(this, + m => DialogHost.Show(new ErrorDialog()).Forget()); + Messenger.Default.Register(this, + m => DialogHost.Show(new ExportDoneDialog()).Forget()); + Messenger.Default.Register(this, + m => DialogHost.Show(new ExportSetupDialog()).Forget()); + Messenger.Default.Register(this, + m => DialogHost.Show(new SettingsDialog()).Forget()); } } } \ No newline at end of file diff --git a/DiscordChatExporter/Views/SettingsDialog.ammy b/DiscordChatExporter/Views/SettingsDialog.ammy index 531ad0e..856c4bf 100644 --- a/DiscordChatExporter/Views/SettingsDialog.ammy +++ b/DiscordChatExporter/Views/SettingsDialog.ammy @@ -7,7 +7,7 @@ UserControl "DiscordChatExporter.Views.SettingsDialog" { StackPanel { // Date format TextBox { - Margin: "16 16 16 8" + Margin: [16, 16, 16, 8] HintAssist.Hint: "Date format" HintAssist.IsFloating: true Text: bind DateFormat @@ -15,7 +15,7 @@ UserControl "DiscordChatExporter.Views.SettingsDialog" { // Group limit TextBox { - Margin: "16 8 16 8" + Margin: [16, 8, 16, 8] HintAssist.Hint: "Message group limit" HintAssist.IsFloating: true Text: bind MessageGroupLimit