Browse Source

1. DPI aware
2. Resolution adaptive
3. Version 1.0.2103.0

Snoopy 4 years ago
parent
commit
13025a0623
4 changed files with 106 additions and 89 deletions
  1. 83 81
      MainWindow.xaml
  2. 19 4
      MainWindow.xaml.cs
  3. 2 2
      Properties/AssemblyInfo.cs
  4. 2 2
      SaveSdCard.xaml

+ 83 - 81
MainWindow.xaml

@@ -8,91 +8,93 @@
         xmlns:md="http://materialdesigninxaml.net/winfx/xaml/themes"
         xmlns:fd="clr-namespace:SourceChord.FluentWPF;assembly=FluentWPF"
         fd:AcrylicWindow.Enabled="True" fd:AcrylicWindow.AcrylicWindowStyle="NoIcon"
-        fd:AcrylicWindow.ExtendViewIntoTitleBar="True"
+        fd:AcrylicWindow.ExtendViewIntoTitleBar="True" SizeToContent="Manual"
         fd:AcrylicWindow.TintColor="#FFFFFF" fd:AcrylicWindow.NoiseOpacity="0.02"
-        Title="Phihong EVSE UI Tool" Height="800" Width="1200" FontFamily="Segoe UI" Foreground="Black"
+        Title="Phihong EVSE UI Tool"  FontFamily="Segoe UI" Foreground="Black"
         WindowStyle="None" AllowsTransparency="True" WindowStartupLocation="CenterScreen">
-    <Grid>
-        <Grid.ColumnDefinitions>
-            <ColumnDefinition Width="320"/>
-            <ColumnDefinition Width="*"/>
-        </Grid.ColumnDefinitions>
-        <Grid.RowDefinitions>
-            <RowDefinition Height="100"/>
-            <RowDefinition Height="*"/>
-        </Grid.RowDefinitions>
+    <local:DpiDecorator>
+        <Grid>
+            <Grid.ColumnDefinitions>
+                <ColumnDefinition Width="320"/>
+                <ColumnDefinition Width="*"/>
+            </Grid.ColumnDefinitions>
+            <Grid.RowDefinitions>
+                <RowDefinition Height="100"/>
+                <RowDefinition Height="*"/>
+            </Grid.RowDefinitions>
 
-        <Grid x:Name="uxMenuGrid" Grid.Column="0" Grid.RowSpan="2" fd:PointerTracker.Enabled="True" Background="#1FE6E6E6">
-            <StackPanel>
-                <TextBlock Text="Phihong EVSE UI Tool" HorizontalAlignment="Left" Margin="16,8,0,12"/>
-                <!-- Background -->
-                <TextBlock Text="Background" FontWeight="SemiBold" FontSize="15" HorizontalAlignment="Left" Margin="16,28,0,18"/>
-                <ListView x:Name="uxMenuListView" FontSize="15" SelectionChanged="uxMenuListView_SelectionChanged">
-                    <ListViewItem x:Name="uxInitListViewItem" Padding="1">
-                        <StackPanel Orientation="Horizontal">
-                            <md:PackIcon Kind="Adjust" Margin="16,12,6,12" VerticalAlignment="Center"/>
-                            <TextBlock Text="Initial &amp; Idle" FontSize="15" HorizontalAlignment="Left" VerticalAlignment="Center" Margin="12"/>
-                        </StackPanel>
-                    </ListViewItem>
-                    <ListViewItem x:Name="uxAuthListViewItem" Padding="1">
-                        <StackPanel Orientation="Horizontal">
-                            <md:PackIcon Kind="CreditCardCheckOutline" Margin="16,12,6,12" VerticalAlignment="Center"/>
-                            <TextBlock Text="Authentication" FontSize="15" HorizontalAlignment="Left" VerticalAlignment="Center" Margin="12"/>
-                        </StackPanel>
-                    </ListViewItem>
-                    <ListViewItem x:Name="uxChargingListViewItem" Padding="1">
-                        <StackPanel Orientation="Horizontal">
-                            <md:PackIcon Kind="BatteryChargingMedium" Margin="16,12,6,12" VerticalAlignment="Center"/>
-                            <TextBlock Text="Plug &amp; Charging" FontSize="15" HorizontalAlignment="Left" VerticalAlignment="Center" Margin="12"/>
-                        </StackPanel>
-                    </ListViewItem>
-                    <ListViewItem x:Name="uxMaintainListViewItem" Padding="1">
-                        <StackPanel Orientation="Horizontal">
-                            <md:PackIcon Kind="WrenchOutline" Margin="16,12,6,12" VerticalAlignment="Center"/>
-                            <TextBlock Text="Maintenance" FontSize="15" HorizontalAlignment="Left" VerticalAlignment="Center" Margin="12"/>
-                        </StackPanel>
-                    </ListViewItem>
-                    <!-- Icon -->
-                    <ListViewItem Padding="1" IsEnabled="False">
-                        <TextBlock Text="Icon" FontWeight="SemiBold" FontSize="15" Foreground="Transparent" HorizontalAlignment="Left" Margin="16,30,0,18"/>
-                    </ListViewItem>
-                    <ListViewItem x:Name="uxBuildListViewItem" Padding="1">
-                        <StackPanel Orientation="Horizontal">
-                            <md:PackIcon Kind="FileImageOutline" Margin="16,12,6,12" VerticalAlignment="Center"/>
-                            <TextBlock Text="Build ICO" FontSize="15" HorizontalAlignment="Left" VerticalAlignment="Center" Margin="12"/>
-                        </StackPanel>
-                    </ListViewItem>
-                    <ListViewItem x:Name="uxModifyListViewItem" Padding="1">
-                        <StackPanel Orientation="Horizontal">
-                            <md:PackIcon Kind="FolderOpenOutline" Margin="16,12,6,12" VerticalAlignment="Center"/>
-                            <TextBlock Text="Modify ICO" FontSize="15" HorizontalAlignment="Left" VerticalAlignment="Center" Margin="12"/>
-                        </StackPanel>
-                    </ListViewItem>
-                    <!-- Save -->
-                    <ListViewItem Padding="1" IsEnabled="False">
-                        <TextBlock Text="Save" FontWeight="SemiBold" FontSize="15" Foreground="Transparent" HorizontalAlignment="Left" Margin="16,30,0,18"/>
-                    </ListViewItem>
-                    <ListViewItem x:Name="uxSaveListViewItem" Padding="1">
-                        <StackPanel Orientation="Horizontal">
-                            <md:PackIcon Kind="SdCard" Margin="16,12,6,12" VerticalAlignment="Center"/>
-                            <TextBlock Text="Save to SD Card" FontSize="15" HorizontalAlignment="Left" VerticalAlignment="Center" Margin="12"/>
-                        </StackPanel>
-                    </ListViewItem>
-                </ListView>
-            </StackPanel>
-            <TextBlock Text="Icon" FontWeight="SemiBold" FontSize="15" HorizontalAlignment="Left" Margin="17,318,0,460"/>
-            <TextBlock x:Name="uxSaveMenuTextBlock" Text="Save" FontWeight="SemiBold" FontSize="15" HorizontalAlignment="Left" Margin="17,479,0,280"/>
-        </Grid>
+            <Grid x:Name="uxMenuGrid" Grid.Column="0" Grid.RowSpan="2" fd:PointerTracker.Enabled="True" Background="#1FE6E6E6">
+                <StackPanel>
+                    <TextBlock Text="Phihong EVSE UI Tool" HorizontalAlignment="Left" Margin="16,8,0,12"/>
+                    <!-- Background -->
+                    <TextBlock Text="Background" FontWeight="SemiBold" FontSize="15" HorizontalAlignment="Left" Margin="16,28,0,18"/>
+                    <ListView x:Name="uxMenuListView" FontSize="15" SelectionChanged="uxMenuListView_SelectionChanged">
+                        <ListViewItem x:Name="uxInitListViewItem" Padding="1">
+                            <StackPanel Orientation="Horizontal">
+                                <md:PackIcon Kind="Adjust" Margin="16,12,6,12" VerticalAlignment="Center"/>
+                                <TextBlock Text="Initial &amp; Idle" FontSize="15" HorizontalAlignment="Left" VerticalAlignment="Center" Margin="12"/>
+                            </StackPanel>
+                        </ListViewItem>
+                        <ListViewItem x:Name="uxAuthListViewItem" Padding="1">
+                            <StackPanel Orientation="Horizontal">
+                                <md:PackIcon Kind="CreditCardCheckOutline" Margin="16,12,6,12" VerticalAlignment="Center"/>
+                                <TextBlock Text="Authentication" FontSize="15" HorizontalAlignment="Left" VerticalAlignment="Center" Margin="12"/>
+                            </StackPanel>
+                        </ListViewItem>
+                        <ListViewItem x:Name="uxChargingListViewItem" Padding="1">
+                            <StackPanel Orientation="Horizontal">
+                                <md:PackIcon Kind="BatteryChargingMedium" Margin="16,12,6,12" VerticalAlignment="Center"/>
+                                <TextBlock Text="Plug &amp; Charging" FontSize="15" HorizontalAlignment="Left" VerticalAlignment="Center" Margin="12"/>
+                            </StackPanel>
+                        </ListViewItem>
+                        <ListViewItem x:Name="uxMaintainListViewItem" Padding="1">
+                            <StackPanel Orientation="Horizontal">
+                                <md:PackIcon Kind="WrenchOutline" Margin="16,12,6,12" VerticalAlignment="Center"/>
+                                <TextBlock Text="Maintenance" FontSize="15" HorizontalAlignment="Left" VerticalAlignment="Center" Margin="12"/>
+                            </StackPanel>
+                        </ListViewItem>
+                        <!-- Icon -->
+                        <ListViewItem Padding="1" IsEnabled="False">
+                            <TextBlock Text="Icon" FontWeight="SemiBold" FontSize="15" Foreground="Transparent" HorizontalAlignment="Left" Margin="16,30,0,18"/>
+                        </ListViewItem>
+                        <ListViewItem x:Name="uxBuildListViewItem" Padding="1">
+                            <StackPanel Orientation="Horizontal">
+                                <md:PackIcon Kind="FileImageOutline" Margin="16,12,6,12" VerticalAlignment="Center"/>
+                                <TextBlock Text="Build ICO" FontSize="15" HorizontalAlignment="Left" VerticalAlignment="Center" Margin="12"/>
+                            </StackPanel>
+                        </ListViewItem>
+                        <ListViewItem x:Name="uxModifyListViewItem" Padding="1">
+                            <StackPanel Orientation="Horizontal">
+                                <md:PackIcon Kind="FolderOpenOutline" Margin="16,12,6,12" VerticalAlignment="Center"/>
+                                <TextBlock Text="Modify ICO" FontSize="15" HorizontalAlignment="Left" VerticalAlignment="Center" Margin="12"/>
+                            </StackPanel>
+                        </ListViewItem>
+                        <!-- Save -->
+                        <ListViewItem Padding="1" IsEnabled="False">
+                            <TextBlock Text="Save" FontWeight="SemiBold" FontSize="15" Foreground="Transparent" HorizontalAlignment="Left" Margin="16,30,0,18"/>
+                        </ListViewItem>
+                        <ListViewItem x:Name="uxSaveListViewItem" Padding="1">
+                            <StackPanel Orientation="Horizontal">
+                                <md:PackIcon Kind="SdCard" Margin="16,12,6,12" VerticalAlignment="Center"/>
+                                <TextBlock Text="Save to SD Card" FontSize="15" HorizontalAlignment="Left" VerticalAlignment="Center" Margin="12"/>
+                            </StackPanel>
+                        </ListViewItem>
+                    </ListView>
+                </StackPanel>
+                <TextBlock Text="Icon" FontWeight="SemiBold" FontSize="15" HorizontalAlignment="Left" Margin="17,318,0,0"/>
+                <TextBlock x:Name="uxSaveMenuTextBlock" Text="Save" FontWeight="SemiBold" FontSize="15" HorizontalAlignment="Left" Margin="17,479,0,0"/>
+            </Grid>
 
-        <Grid x:Name="uxTitleGrid" Grid.Column="1" Grid.Row="0" Background="White" fd:PointerTracker.Enabled="True">
-            <StackPanel>
-                <TextBlock x:Name="uxTitleTextBlock" Text="Initial &amp; Idle" FontSize="30" FontWeight="Bold" HorizontalAlignment="Left" Margin="22,50,0,18"/>
-            </StackPanel>
-            <Border BorderThickness="0,0,0,2" Margin="0,0,0,-1" BorderBrush="White"/>
-        </Grid>
+            <Grid x:Name="uxTitleGrid" Grid.Column="1" Grid.Row="0" Background="White" fd:PointerTracker.Enabled="True">
+                <StackPanel>
+                    <TextBlock x:Name="uxTitleTextBlock" Text="Initial &amp; Idle" FontSize="30" FontWeight="Bold" HorizontalAlignment="Left" Margin="22,50,0,18"/>
+                </StackPanel>
+                <Border BorderThickness="0,0,0,2" Margin="0,0,0,-1" BorderBrush="White"/>
+            </Grid>
 
-        <Grid x:Name="uxContentGrid" Grid.Column="1" Grid.Row="1" Background="White" ShowGridLines="False" fd:PointerTracker.Enabled="True">
-            <!--<local:InitialIdleUC></local:InitialIdleUC>-->
+            <Grid x:Name="uxContentGrid" Grid.Column="1" Grid.Row="1" Background="White" ShowGridLines="False" fd:PointerTracker.Enabled="True">
+                <!--<local:InitialIdleUC></local:InitialIdleUC>-->
+            </Grid>
         </Grid>
-    </Grid>
+    </local:DpiDecorator>
 </Window>

+ 19 - 4
MainWindow.xaml.cs

@@ -25,9 +25,9 @@ namespace Phihong_EVSE_UI_Tool
         public MainWindow()
         {
             InitializeComponent();
-            this.MaxHeight = SystemParameters.WorkArea.Height + 12.5;
-            this.MinWidth = 1200;
-            this.MinHeight = 800;
+            //this.MaxHeight = SystemParameters.WorkArea.Height + 12.5;
+            this.MinWidth = 900;
+            this.MinHeight = 600;
 
             uxInitListViewItem.IsSelected = true;
             uxInitListViewItem.Focus();
@@ -35,7 +35,7 @@ namespace Phihong_EVSE_UI_Tool
             if (!mySettings.Mode.Equals("54088"))
             {
                 uxBuildListViewItem.Visibility = Visibility.Collapsed;
-                uxSaveMenuTextBlock.Margin = new Thickness(17, 433, 0, 280);
+                uxSaveMenuTextBlock.Margin = new Thickness(17, 433, 0, 0);
             }
 
             Utility.ChangedFiles = Utility.ChangedFiles.ToDictionary(p => p.Key, p => false);
@@ -99,4 +99,19 @@ namespace Phihong_EVSE_UI_Tool
             }
         }
     }
+
+    public class DpiDecorator : Decorator
+    {
+        public DpiDecorator()
+        {
+            this.Loaded += (s, e) =>
+            {
+                Matrix m = PresentationSource.FromVisual(this).CompositionTarget.TransformToDevice;
+                ScaleTransform dpiTransform = new ScaleTransform(1.25 / m.M11, 1.25 / m.M22);
+                if (dpiTransform.CanFreeze)
+                    dpiTransform.Freeze();
+                this.LayoutTransform = dpiTransform;
+            };
+        }
+    }
 }

+ 2 - 2
Properties/AssemblyInfo.cs

@@ -49,5 +49,5 @@ using System.Windows;
 // 您可以指定所有的值,也可以使用 '*' 將組建和修訂編號
 // 設為預設,如下所示:
 // [assembly: AssemblyVersion("1.0.*")]
-[assembly: AssemblyVersion("1.0.0.0")]
-[assembly: AssemblyFileVersion("1.0.0.0")]
+[assembly: AssemblyVersion("1.0.2103.0")]
+[assembly: AssemblyFileVersion("1.0.2103.0")]

+ 2 - 2
SaveSdCard.xaml

@@ -17,7 +17,7 @@
                 <TextBlock Text="Temporary output folder (DO NOT delete)" HorizontalAlignment="Left" Margin="22,6,0,12"/>
                 <TextBlock Text="{x:Static local:Utility.OUTPUT_DIRECTORY}" HorizontalAlignment="Left" Margin="22,0,0,12" Foreground="{Binding Path=(fd:AccentColors.ImmersiveSystemAccentBrush)}"/>
                 <TextBlock Text="Locate SD card" FontSize="24" HorizontalAlignment="Left" Margin="22,12,0,12"/>
-                <StackPanel x:Name="uxLogoCustomStackPanel" Orientation="Horizontal" Margin="22,0,400,12">
+                <StackPanel x:Name="uxLogoCustomStackPanel" Orientation="Horizontal" Margin="22,0,100,12">
                     <Button Tag="Browse" Content="Browse" HorizontalAlignment="Left" Width="90" Height="35"
                             Style="{StaticResource ButtonRevealStyle}" Click="uxBrowseButton_Click" Foreground="Black"/>
                     <TextBox x:Name="uxSdBrowseTextBox" VerticalContentAlignment="Center" Margin="1,0,0,0" Width="270" Height="35" 
@@ -25,7 +25,7 @@
                 </StackPanel>
 
                 <TextBlock Text="Save to SD card" FontSize="24" HorizontalAlignment="Left" Margin="22,18,0,12"/>
-                <StackPanel Orientation="Horizontal" Margin="22,0,480,12">
+                <StackPanel Orientation="Horizontal" Margin="22,0,180,12">
                     <RadioButton x:Name="uxSaveAllRadioButton" Tag="Save" GroupName="saveSelect" Margin="0,0,36,0" Style="{StaticResource MaterialDesignRadioButton}" 
                                  Background="{Binding Path=(fd:AccentColors.ImmersiveSystemAccentBrush)}" IsChecked="True">Save all files</RadioButton>
                     <RadioButton x:Name="uxSaveChangedRadioButton" Tag="Save" GroupName="saveSelect" Style="{StaticResource MaterialDesignRadioButton}"