Browse Source

PDFBookmark(windows) - 按高保真调整书签相关界面

liyuxuan 1 year ago
parent
commit
58812a18f3

+ 2 - 2
compdfkit_demo_windows/compdfkit/compdfkit-tools/PDFView/PDFBookmark/PDFBookmarkControl/CPDFBookmarkControl.xaml

@@ -8,12 +8,12 @@
              xmlns:convert="clr-namespace:compdfkit_tools.Common"
              mc:Ignorable="d" 
              d:DesignHeight="450" d:DesignWidth="800">
-    <Grid Margin="5">
+    <Grid>
         <Grid.RowDefinitions>
             <RowDefinition Height="auto"></RowDefinition>
             <RowDefinition Height="*"></RowDefinition>
         </Grid.RowDefinitions>
-        <ui:CPDFBookmarkAddUI x:Name="BookmarkAddUI" Padding="5"></ui:CPDFBookmarkAddUI>
+        <ui:CPDFBookmarkAddUI x:Name="BookmarkAddUI"></ui:CPDFBookmarkAddUI>
         <ui:CPDFBookmarkResultUI Grid.Row="1" x:Name="BookmarkResultUI"></ui:CPDFBookmarkResultUI>
     </Grid>
 </UserControl>

+ 54 - 30
compdfkit_demo_windows/compdfkit/compdfkit-tools/PDFView/PDFBookmark/PDFBookmarkUI/CPDFBookmarkAddUI.xaml

@@ -4,11 +4,18 @@
              xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
              xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
              xmlns:local="clr-namespace:compdfkit_tools.PDFControlUI"
+             xmlns:common="clr-namespace:compdfkit_tools.Common"
              mc:Ignorable="d" 
-             d:DesignHeight="450" d:DesignWidth="800">
+             d:DesignHeight="450" d:DesignWidth="800" Background="#FAFCFF">
     <UserControl.Resources>
         <ResourceDictionary>
             <local:BoolEnableConvert x:Key="BoolEnableCovert"/>
+            <common:TextLengthToVisibilityConvert x:Key="TextLengthToVisibilityConvert"/>
+            <common:InvertTextLengthToVisibilityConvert x:Key="InvertTextLengthToVisibilityConvert"/>
+            <common:TextLengthToBoolConvert x:Key="TextLengthToBoolConvert"/>
+            <ResourceDictionary.MergedDictionaries>
+                <ResourceDictionary Source="pack://application:,,,/compdfkit-assets;component/Styles/ButtonStyle.xaml"></ResourceDictionary>
+            </ResourceDictionary.MergedDictionaries>
         </ResourceDictionary>
     </UserControl.Resources>
     <Grid>
@@ -16,44 +23,61 @@
             <RowDefinition Height="auto"></RowDefinition>
             <RowDefinition Height="auto"></RowDefinition>
         </Grid.RowDefinitions>
-        
-        <Grid>
-            <Border CornerRadius="20" BorderThickness="0" Width="140" Height="35" Background="#E6E6E6" ClipToBounds="True" 
-                    HorizontalAlignment="Right" Margin="0,0,10,0" MouseLeftButtonDown="Border_MouseLeftButtonDown">
-                <Grid>
-                    <Grid.ColumnDefinitions>
-                        <ColumnDefinition Width="*"></ColumnDefinition>
-                        <ColumnDefinition Width="auto"></ColumnDefinition>
-                    </Grid.ColumnDefinitions>
-                    <Viewbox Width="25" HorizontalAlignment="Right" Margin="0,0,10,0">
-                        <Path Fill="#8A8A8A" >
-                            <Path.Data>
-                                M13.5 7.99997C13.5 11.0375 11.0376 13.5 8 13.5C4.96243 13.5 2.5 11.0375 2.5 7.99997C2.5 4.9624 4.96243 
-                            2.49997 8 2.49997C11.0376 2.49997 13.5 4.9624 13.5 7.99997ZM15 7.99997C15 11.866 11.866 15 8 15C4.13401 
-                            15 1 11.866 1 7.99997C1 4.13398 4.13401 0.999969 8 0.999969C11.866 0.999969 15 4.13398 15 7.99997ZM7.25005 
-                            4.8V7.25H4.80005V8.75H7.25005V11.2H8.75005V8.75H11.2V7.25H8.75005V4.8H7.25005Z
-                            </Path.Data>
-                        </Path>
-                    </Viewbox>
 
-                    <TextBlock Grid.Column="1" VerticalAlignment="Center" HorizontalAlignment="Right" Margin="0,0,10,0">Add Bookmark</TextBlock>
-                </Grid>
-            </Border>
-        </Grid>
+        <Border Height="36">
+            <Grid>
+                <Grid.ColumnDefinitions>
+                    <ColumnDefinition Width="*"></ColumnDefinition>
+                    <ColumnDefinition Width="*"></ColumnDefinition>
+                </Grid.ColumnDefinitions>
+                <TextBlock Foreground="#43474D" FontSize="14" Margin="16,0,0,0" VerticalAlignment="Center" FontWeight="SemiBold">Bookmark</TextBlock>
 
-        <Border Name="BookmarkInputPanel" Grid.Row="1" CornerRadius="5" Background="#E2E3E6" Padding="5" Margin="0,5,0,0" Visibility="Collapsed">
+                <Border  Grid.Column="1" Width="16" Height="16" Background="#01000000" HorizontalAlignment="Right" Margin="0,0,16,0" VerticalAlignment="Center"
+                         MouseLeftButtonDown="Border_MouseLeftButtonDown">
+                    <Path Fill="#43474D">
+                        <Path.Data>
+                            M8.5 7.5V3H7.5V7.5H3V8.5H7.5V13H8.5V8.5H13V7.5H8.5Z
+                        </Path.Data>
+                    </Path>
+                </Border>
+            </Grid>
+        </Border>
+
+        <Border Name="BookmarkInputPanel" Grid.Row="1" Background="#DDE9FF" Height="108" Margin="0,5,0,0" Padding="16,0,16,0" Visibility="Collapsed">
             <Grid >
                 <Grid.RowDefinitions>
                     <RowDefinition Height="auto"></RowDefinition>
                     <RowDefinition Height="auto"></RowDefinition>
                     <RowDefinition Height="auto"></RowDefinition>
                 </Grid.RowDefinitions>
-                <TextBlock Name="PageNumText"></TextBlock>
-                <TextBox Name="BookmarkText" Grid.Row="1" Height="30" VerticalContentAlignment="Center"></TextBox>
+
+                <Border Height="28">
+                    <TextBlock Name="PageNumText" VerticalAlignment="Center"></TextBlock>
+                </Border>
+
+                <Grid  Grid.Row="1">
+                    <TextBox Name="BookmarkText" VerticalContentAlignment="Center" Height="30" Padding="5,0,30,0"></TextBox>
+                    <TextBlock VerticalAlignment="Center" IsHitTestVisible="False" Margin="10,0,0,0" Foreground="#999999"
+                       Visibility="{Binding ElementName=BookmarkText,Path=Text,Converter={StaticResource TextLengthToVisibilityConvert}}">Bookmark Title</TextBlock>
+
+                    <Border Visibility="{Binding ElementName=BookmarkText,Path=Text,Converter={StaticResource InvertTextLengthToVisibilityConvert}}"
+                    HorizontalAlignment="Right" VerticalAlignment="Center" Margin="0,0,10,0"
+                    Background="#01000000">
+                        <Path Fill="Black" IsHitTestVisible="False">
+                            <Path.Data>
+                                M12.5762 3.95117L8.5332 8L12.5762 12.0488L12.0488 12.5762L8 8.5332L3.95117 12.5762L3.42383 
+                                12.0488L7.4668 8L3.42383 3.95117L3.95117 3.42383L8 7.4668L12.0488 3.42383L12.5762 3.95117Z
+                            </Path.Data>
+                        </Path>
+                    </Border>
+                </Grid>
+                
                 <StackPanel Orientation="Horizontal" Grid.Row="2" HorizontalAlignment="Right" Margin="0,10,0,0">
-                    <Button Padding="5" Width="60" Click="ButtonCancel_Click">Cancel</Button>
-                    <Button Margin="10,0,0,0" Padding="5" Width="60" Click="ButtonAdd_Click"
-                            IsEnabled="{Binding ElementName=BookmarkText,Path=Text,Converter={StaticResource BoolEnableCovert}}">Add</Button>
+                    <Border Width="56" Height="30" Background="#01000000" MouseLeftButtonDown="ButtonCancel_Click">
+                        <TextBlock VerticalAlignment="Center" HorizontalAlignment="Center" FontSize="14" Foreground="#1460F3">Cancel</TextBlock>
+                    </Border>
+
+                    <Button Style="{StaticResource ButtonStyle}" Margin="10,0,0,0" Width="56" Height="30" Click="ButtonAdd_Click">Save</Button>
                 </StackPanel>
             </Grid>
         </Border>

+ 1 - 1
compdfkit_demo_windows/compdfkit/compdfkit-tools/PDFView/PDFBookmark/PDFBookmarkUI/CPDFBookmarkAddUI.xaml.cs

@@ -41,7 +41,7 @@ namespace compdfkit_tools.PDFControlUI
         /// <summary>
         /// 取消添加 隐藏 添加界面
         /// </summary>
-        private void ButtonCancel_Click(object sender, RoutedEventArgs e)
+        private void ButtonCancel_Click(object sender, MouseButtonEventArgs e)
         {
             toggleState = false;
             BookmarkInputPanel.Visibility = Visibility.Collapsed;

+ 27 - 19
compdfkit_demo_windows/compdfkit/compdfkit-tools/PDFView/PDFBookmark/PDFBookmarkUI/CPDFBookmarkResultUI.xaml

@@ -6,25 +6,27 @@
              xmlns:local="clr-namespace:compdfkit_tools.PDFControlUI"
              xmlns:convert="clr-namespace:compdfkit_tools.Common"
              mc:Ignorable="d" 
-             d:DesignHeight="450" d:DesignWidth="800">
+             d:DesignHeight="450" d:DesignWidth="800"  Background="#FAFCFF">
     <UserControl.Resources>
         <ResourceDictionary>
             <convert:ListViewWidthConvert x:Key="ListViewWidthConvert"/>
         </ResourceDictionary>
     </UserControl.Resources>
     <Grid>
-        <ListView Name="ResultListControl" VirtualizingPanel.IsVirtualizingWhenGrouping="True" SelectionChanged="ResultListControl_SelectionChanged"
-                  ScrollViewer.HorizontalScrollBarVisibility="Hidden" BorderThickness="0" SelectionMode="Single" MouseLeftButtonDown="ResultListControl_MouseLeftButtonDown">
+        <ListView Name="ResultListControl" VirtualizingPanel.IsVirtualizingWhenGrouping="True" 
+                  SelectionChanged="ResultListControl_SelectionChanged"
+                  ScrollViewer.HorizontalScrollBarVisibility="Hidden" BorderThickness="0" SelectionMode="Single" 
+                  MouseLeftButtonDown="ResultListControl_MouseLeftButtonDown" Background="#01000000">
             <ListView.GroupStyle>
                 <GroupStyle>
                     <GroupStyle.HeaderTemplate>
                         <DataTemplate>
-                            <StackPanel Background="#E2E3E6" Height="30" Orientation="Horizontal">
+                            <StackPanel Background="#EFF4FF" Height="30" Orientation="Horizontal">
                                 
-                                <TextBlock Padding="12,4,0,4" FontWeight="SemiBold" FontSize="12"  
-                                           FontFamily="Segoe UI" Foreground="#666666 ">Page</TextBlock>
+                                <TextBlock Padding="16,4,0,4" FontWeight="SemiBold" FontSize="12"  
+                                           FontFamily="Segoe UI" Foreground="#43474D ">Page</TextBlock>
                                 <TextBlock  HorizontalAlignment="Left" Padding="10,4,0,4"
-                                           FontWeight="SemiBold" FontSize="12"  FontFamily="Segoe UI" Foreground="#666666 " Text="{Binding Name}">
+                                           FontWeight="SemiBold" FontSize="12"  FontFamily="Segoe UI" Foreground="#43474D" Text="{Binding Name}">
                                 </TextBlock>
                                 
                             </StackPanel>
@@ -40,7 +42,7 @@
 
             <ListView.ItemsPanel>
                 <ItemsPanelTemplate>
-                    <VirtualizingStackPanel Background="White" Margin="-5,0,0,0"></VirtualizingStackPanel>
+                    <VirtualizingStackPanel Background="#EFF4FF" Margin="-5,0,0,0"></VirtualizingStackPanel>
                 </ItemsPanelTemplate>
             </ListView.ItemsPanel>
 
@@ -54,28 +56,32 @@
                             <ColumnDefinition Width="auto"></ColumnDefinition>
                         </Grid.ColumnDefinitions>
                         
-                        <TextBox MinHeight="20" VerticalAlignment="Center" Margin="2,0,5,0" IsReadOnly="True" BorderThickness="0" IsHitTestVisible="False"
-                                 AcceptsReturn="True" Background="Transparent" Text="{Binding BindProperty.BookmarkTitle}"></TextBox>
+                        <TextBox MinHeight="20" VerticalAlignment="Center" Margin="20,0,5,0" IsReadOnly="True" BorderThickness="0" IsHitTestVisible="False"
+                                 AcceptsReturn="True" Background="Transparent" Foreground="#43474D" Text="{Binding BindProperty.BookmarkTitle}"></TextBox>
 
-                        <Border CornerRadius="5" VerticalAlignment="Center" Background="#E6E6E6" Grid.Column="1" Padding="10,5,10,5" Visibility="Collapsed">
+                        <Border VerticalAlignment="Center" Grid.Column="1" Padding="10,5,10,5" Visibility="Collapsed">
                             <StackPanel Orientation="Horizontal">
                                 <Border MouseLeftButtonDown="EditBorder_Click" Background="#01FFFFFF">
-                                    <Viewbox Width="20" Height="20">
-                                        <Path Fill="#252629">
+                                    <Viewbox Width="16" Height="16">
+                                        <Path Fill="#43474D">
                                             <Path.Data>
-                                                M3 2.5H7V1H3C1.89543 1 1 1.89543 1 3V13C1 14.1046 1.89543 15 3 15H13C14.1046 15 15 14.1046 15 13V9H13.5V13C13.5 13.2761 
-                                        13.2761 13.5 13 13.5H3C2.72386 13.5 2.5 13.2761 2.5 13V3C2.5 2.72386 2.72386 2.5 3 2.5ZM14.8987 2.29362L13.838 
-                                        1.23296L5.9999 9.07108L7.06056 10.1317L14.8987 2.29362Z
+                                                M7.71094 15L15.2031 7.5L9.5 1.79688L0.890625 10.4062C0.765625 10.5312 0.670573 10.6784 0.605469 10.8477C0.540365 11.0169 0.507812 11.1927
+                                                0.507812 11.375C0.507812 11.5573 0.540365 11.7331 0.605469 11.9023C0.670573 12.0716 0.768229 12.2214 0.898438 12.3516L3.53906 
+                                                15H7.71094ZM8.5 12.7969L4.20312 8.5L9.5 3.20312L13.7969 7.5L8.5 12.7969ZM3.95312 14H7.28906L7.79688 13.5L3.5 9.20312L1.60156 
+                                                11.1016C1.53385 11.1693 1.5 11.2604 1.5 11.375C1.5 11.4896 1.53646 11.5833 1.60938 11.6562L3.95312 14ZM16 15V14H10.0182L9 
+                                                15H16ZM1.06227 14L2 15H0V14H1.06227Z
                                             </Path.Data>
                                         </Path>
                                     </Viewbox>
                                 </Border>
 
                                 <Border MouseLeftButtonDown="DelBorder_Click"  Background="#01FFFFFF">
-                                    <Viewbox Margin="10,0,0,0" Width="20" Height="20">
-                                        <Path Fill="#252629">
+                                    <Viewbox Margin="10,0,0,0" Width="16" Height="16">
+                                        <Path Fill="#43474D">
                                             <Path.Data>
-                                                M8 2H12V0H8V2ZM17 5H19V3H15H5H1V5H3V18C3 19.1046 3.89543 20 5 20H15C16.1046 20 17 19.1046 17 18V5ZM15 5H5V18H15V5ZM9 15L9 8H11V15H9Z
+                                                M11.1998 1.19995V3.59995H15.1998V4.39995H13.1998V14.8H2.7998V4.39995H0.799805V3.59995H4.7998V1.19995H11.1998ZM3.5998 
+                                                4.39995V14H12.3998V4.39995H3.5998ZM10.3998 1.99995V3.59995H5.5998V1.99995H10.3998ZM6.7998 6.39995V12H5.9998V6.39995H6.7998ZM9.9998 
+                                                12V6.39995H9.1998V12H9.9998Z
                                             </Path.Data>
                                         </Path>
                                     </Viewbox>
@@ -86,5 +92,7 @@
                 </ItemContainerTemplate>
             </ListView.ItemTemplate>
         </ListView>
+
+        <TextBlock Name="NoResultText" Foreground="#43474D" FontSize="14" LineHeight="16" VerticalAlignment="Center" HorizontalAlignment="Center">No Results</TextBlock>
     </Grid>
 </UserControl>

+ 2 - 0
compdfkit_demo_windows/compdfkit/compdfkit-tools/PDFView/PDFBookmark/PDFBookmarkUI/CPDFBookmarkResultUI.xaml.cs

@@ -211,6 +211,7 @@ namespace compdfkit_tools.PDFControlUI
             if (results == null || results.Count == 0)
             {
                 ResultListControl.ItemsSource = null;
+                NoResultText.Visibility= Visibility.Visible;
                 return;
             }
 
@@ -222,6 +223,7 @@ namespace compdfkit_tools.PDFControlUI
                 });
             }
             ResultListControl.ItemsSource = bookmarkResults;
+            NoResultText.Visibility = Visibility.Collapsed;
         }
 
         /// <summary>