BottomToolContent.xaml 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304
  1. <UserControl
  2. x:Class="PDF_Office.Views.BottomToolContent"
  3. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  4. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  5. xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  6. xmlns:i="http://schemas.microsoft.com/xaml/behaviors"
  7. xmlns:local="clr-namespace:PDF_Office.Views"
  8. xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  9. xmlns:prism="http://prismlibrary.com/"
  10. xmlns:sys="clr-namespace:System;assembly=System"
  11. xmlns:viewmodels="clr-namespace:PDF_Office.ViewModels"
  12. d:DataContext="{d:DesignInstance Type=viewmodels:BottomToolContentViewModel}"
  13. d:DesignHeight="450"
  14. d:DesignWidth="1280"
  15. prism:ViewModelLocator.AutoWireViewModel="True"
  16. BorderBrush="{StaticResource color.sys.layout.divider}"
  17. BorderThickness="0,1,0,0"
  18. mc:Ignorable="d">
  19. <UserControl.Resources />
  20. <Grid Height="32" Background="{StaticResource color.sys.layout.mg}">
  21. <Grid.ColumnDefinitions>
  22. <ColumnDefinition Width="*" />
  23. <ColumnDefinition Width="auto" MinWidth="{Binding ElementName=StkPnlCenter, Path=ActualWidth}" />
  24. <ColumnDefinition MinWidth="{Binding ElementName=StkPnlRight, Path=ActualWidth}" />
  25. </Grid.ColumnDefinitions>
  26. <StackPanel
  27. Name="StkPnlCenter"
  28. Grid.Column="1"
  29. HorizontalAlignment="Center"
  30. Orientation="Horizontal">
  31. <Button
  32. Width="24"
  33. Height="24"
  34. Margin="4"
  35. Command="{Binding FirstPageCommand}">
  36. <Path
  37. HorizontalAlignment="Center"
  38. Data="M5.01864718,2 L5.01864718,14 L4,14 L4,2 L5.01864718,2 Z M11.2797077,2.64644661 L12,3.35355339 L7.2668015,8 L12,12.6464466 L11.2797077,13.3535534 L5.82632562,8 L11.2797077,2.64644661 Z"
  39. Fill="Black">
  40. <Path.RenderTransform>
  41. <TransformGroup>
  42. <TranslateTransform X="-2" />
  43. </TransformGroup>
  44. </Path.RenderTransform>
  45. </Path>
  46. </Button>
  47. <Button
  48. Width="24"
  49. Height="24"
  50. Margin="4"
  51. Command="{Binding PrePageCommand}">
  52. <Polygon Fill="Black" Points="14.25 5.45223214 13.5232733 4.75 8.25 9.84553571 2.97672673 4.75 2.25 5.45223214 8.25 11.25">
  53. <Polygon.RenderTransform>
  54. <TransformGroup>
  55. <TranslateTransform X="8.250000" Y="8.000000" />
  56. <ScaleTransform ScaleX="-1" ScaleY="1" />
  57. <RotateTransform Angle="90" />
  58. <TranslateTransform X="22.250000" Y="23.000000" />
  59. </TransformGroup>
  60. </Polygon.RenderTransform>
  61. </Polygon>
  62. </Button>
  63. <TextBox
  64. Width="48"
  65. Height="24"
  66. Padding="10,0,0,0"
  67. VerticalAlignment="Center"
  68. VerticalContentAlignment="Center"
  69. FontSize="12"
  70. InputMethod.IsInputMethodEnabled="False"
  71. Text="{Binding CurrentPage}">
  72. <i:Interaction.Triggers>
  73. <i:EventTrigger EventName="KeyDown">
  74. <i:InvokeCommandAction Command="{Binding PageTextKeyDownCommand}" PassEventArgsToCommand="True" />
  75. </i:EventTrigger>
  76. <i:EventTrigger EventName="PreviewKeyDown">
  77. <i:InvokeCommandAction Command="{Binding PageTextPreviewKeyDownCommand}" PassEventArgsToCommand="True" />
  78. </i:EventTrigger>
  79. </i:Interaction.Triggers>
  80. </TextBox>
  81. <TextBlock
  82. MinWidth="50"
  83. VerticalAlignment="Center"
  84. Text="{Binding PageCount, StringFormat=/{0}}" />
  85. <Button
  86. Width="24"
  87. Height="24"
  88. Margin="4"
  89. Command="{Binding NextPageCommand}">
  90. <Polygon Fill="Black" Points="14.25 5.45223214 13.5232733 4.75 8.25 9.84553571 2.97672673 4.75 2.25 5.45223214 8.25 11.25">
  91. <Polygon.RenderTransform>
  92. <TransformGroup>
  93. <TranslateTransform X="8.000000" Y="8.000000" />
  94. <ScaleTransform ScaleX="-1" ScaleY="1" />
  95. <RotateTransform Angle="-90" />
  96. <TranslateTransform X="-8.000000" Y="-10.000000" />
  97. </TransformGroup>
  98. </Polygon.RenderTransform>
  99. </Polygon>
  100. </Button>
  101. <Button
  102. Width="24"
  103. Height="24"
  104. Margin="4"
  105. Command="{Binding LastPageCommand}">
  106. <Path Data="M12.0252351,2 L12.0252351,14 L11.0252351,14 L11.0252351,2 L12.0252351,2 Z M4.6892629,2.64644661 L9.90771909,8 L4.6892629,13.3535534 L4,12.6464466 L8.52929737,8 L4,3.35355339 L4.6892629,2.64644661 Z" Fill="Black">
  107. <Path.RenderTransform>
  108. <TransformGroup>
  109. <TranslateTransform X="-3" />
  110. </TransformGroup>
  111. </Path.RenderTransform>
  112. </Path>
  113. </Button>
  114. </StackPanel>
  115. <StackPanel
  116. x:Name="StkPnlRight"
  117. Grid.Column="2"
  118. HorizontalAlignment="Right"
  119. Orientation="Horizontal">
  120. <ToggleButton
  121. Width="24"
  122. Height="24"
  123. Margin="4"
  124. Command="{Binding SetViewModeCommand}"
  125. IsChecked="{Binding IsContinue}"
  126. Style="{StaticResource SubToolbarTgb}">
  127. <Grid>
  128. <Polygon Fill="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=ToggleButton}, Path=Foreground}" Points="2 0 2 6 14 6 14 0 15 0 15 7 1 7 1 0" />
  129. <Path Data="M10.807106,9 L15,13.3928931 L15,16 L14,16 L14,14 L9.999999,14 L9.999,10 L2,10 L2,16 L1,16 L1,9 L10.807106,9 Z M13.237,13 L10.999,10.64 L10.999,13 L13.237,13 Z" Fill="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=ToggleButton}, Path=Foreground}" />
  130. </Grid>
  131. </ToggleButton>
  132. <Separator
  133. Width="1"
  134. Height="10"
  135. Style="{StaticResource {x:Static ToolBar.SeparatorStyleKey}}" />
  136. <RadioButton
  137. Width="24"
  138. Height="24"
  139. Margin="4"
  140. Command="{Binding SetViewModeCommand}"
  141. IsChecked="{Binding IsSingleView}"
  142. Style="{StaticResource StateBarRbt}">
  143. <Path Data="M9.80710597,0 L14,4.39289312 L14,16 L2,16 L2,0 L9.80710597,0 Z M8.999,1 L3,1 L3,15 L13,15 L13,4.999 L8.999999,5 L8.999,1 Z M12.236,3.999 L9.999,1.64 L9.999,4 L12.236,3.999 Z" Fill="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=RadioButton}, Path=Foreground}" />
  144. </RadioButton>
  145. <RadioButton
  146. Width="24"
  147. Height="24"
  148. Margin="4"
  149. Command="{Binding SetViewModeCommand}"
  150. Cursor="Hand"
  151. IsChecked="{Binding IsDoubleView}"
  152. Style="{StaticResource StateBarRbt}">
  153. <Path Data="M0,15 L0,1 L11.807106,1 L16,5.39289312 L16,15 L0,15 Z M7.5,2 L1,2 L1,14 L7.5,14 L7.5,2 Z M10.999,2 L8.5,2 L8.5,14 L15,14 L15,5.999 L10.999999,6 L10.999,2 Z M11.999,2.64 L11.999,5 L14.236,4.999 L11.999,2.64 Z" Fill="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=RadioButton}, Path=Foreground}" />
  154. </RadioButton>
  155. <RadioButton
  156. Width="24"
  157. Height="24"
  158. Margin="4"
  159. Command="{Binding SetViewModeCommand}"
  160. IsChecked="{Binding IsBookMode}"
  161. Style="{StaticResource StateBarRbt}">
  162. <Path Data="M7,11 L7,16 L6,16 L6,12 L1,12 L1,16 L0,16 L0,11 L7,11 Z M16,11 L16,16 L15,16 L15,12 L10,12 L10,16 L9,16 L9,11 L16,11 Z M3.80710597,0 L7,3.39289312 L7,9 L0,9 L0,0 L3.80710597,0 Z M2.999,1 L1,1 L1,8 L6,8 L6,3.999 L2.999999,4 L2.999,1 Z M3.999,1.652 L3.999,3 L5.251,2.999 L3.999,1.652 Z" Fill="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=RadioButton}, Path=Foreground}" />
  163. </RadioButton>
  164. <Separator
  165. Width="1"
  166. Height="10"
  167. Style="{StaticResource {x:Static ToolBar.SeparatorStyleKey}}" />
  168. <ToggleButton
  169. Name="TbtnIsViewPanelOpen"
  170. Width="24"
  171. Height="24"
  172. Margin="4"
  173. Command="{Binding ShowViewModularCommand}"
  174. IsChecked="{Binding IsShowViewModular}"
  175. Style="{StaticResource SubToolbarTgb}">
  176. <Path Data="M1.5 13V3H7.25V13H1.5ZM8.75 13H14.5V3H8.75V13ZM0 2.5C0 1.94772 0.447715 1.5 1 1.5H15C15.5523 1.5 16 1.94772 16 2.5V13.5C16 14.0523 15.5523 14.5 15 14.5H1C0.447715 14.5 0 14.0523 0 13.5V2.5ZM3 6.25H6V7.75H3V6.25ZM6 9.25H3V10.75H6V9.25Z" Fill="{StaticResource color.icon.base.neutral.norm.lv1}" />
  177. </ToggleButton>
  178. <StackPanel
  179. Height="16"
  180. FocusVisualStyle="{x:Null}"
  181. Orientation="Horizontal">
  182. <Grid>
  183. <ComboBox
  184. Width="72"
  185. Background="White"
  186. FocusVisualStyle="{x:Null}"
  187. MaxDropDownHeight="510"
  188. SelectedIndex="{Binding SelectedIndex, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}">
  189. <i:Interaction.Triggers>
  190. <i:EventTrigger EventName="SelectionChanged">
  191. <i:InvokeCommandAction Command="{Binding SelectionChangedCommand}" PassEventArgsToCommand="True" />
  192. </i:EventTrigger>
  193. </i:Interaction.Triggers>
  194. <ComboBoxItem x:Name="ActualSize" Style="{StaticResource ZoomComboxItemStyle}">
  195. <StackPanel Orientation="Horizontal">
  196. <Border x:Name="ActualSizeBorder" Margin="10,0,12,0">
  197. <!--<Path Fill="Black" VerticalAlignment="Center" HorizontalAlignment="Center" Data="M10.807106,0.0999999046 L15.0999992,5.39289312 L15.0999992,15.8999991 L0.899999857,15.8999991 L0.899999857,0.0999999046 L10.807106,0.0999999046 Z M10.3929999,1.0999999 L1.89999986,1.0999999 L1.89999986,14.8989999 L14.0989999,14.8989999 L14.0989999,5.8059999 L10.3929999,1.0999999 Z M8,10.53125 C8.15885417,10.53125 8.29361979,10.5833333 8.40429688,10.6875 C8.51497396,10.7916667 8.5703125,10.9166667 8.5703125,11.0625 C8.5703125,11.2057292 8.51497396,11.328776 8.40429688,11.4316406 C8.29361979,11.5345052 8.15885417,11.5859375 8,11.5859375 C7.84375,11.5859375 7.7109375,11.5345052 7.6015625,11.4316406 C7.4921875,11.328776 7.4375,11.2057292 7.4375,11.0625 C7.4375,10.9166667 7.4921875,10.7916667 7.6015625,10.6875 C7.7109375,10.5833333 7.84375,10.53125 8,10.53125 Z M6.21875,5.7734375 L6.21875,11.5 L5.3125,11.5 L5.3125,6.8828125 C5.1484375,7 4.97200521,7.09960938 4.78320312,7.18164062 C4.59440104,7.26367188 4.37890625,7.3359375 4.13671875,7.3984375 L4.13671875,7.3984375 L4.13671875,6.625 C4.28776042,6.57552083 4.43359375,6.5234375 4.57421875,6.46875 C4.71484375,6.4140625 4.85351562,6.35286458 4.99023438,6.28515625 C5.12695312,6.21744792 5.26497396,6.14192708 5.40429688,6.05859375 C5.54361979,5.97526042 5.6875,5.88020833 5.8359375,5.7734375 L5.8359375,5.7734375 L6.21875,5.7734375 Z M11.3671875,5.7734375 L11.3671875,11.5 L10.4609375,11.5 L10.4609375,6.8828125 C10.296875,7 10.1204427,7.09960938 9.93164062,7.18164062 C9.74283854,7.26367188 9.52734375,7.3359375 9.28515625,7.3984375 L9.28515625,7.3984375 L9.28515625,6.625 C9.43619792,6.57552083 9.58203125,6.5234375 9.72265625,6.46875 C9.86328125,6.4140625 10.0019531,6.35286458 10.1386719,6.28515625 C10.2753906,6.21744792 10.4134115,6.14192708 10.5527344,6.05859375 C10.6920573,5.97526042 10.8359375,5.88020833 10.984375,5.7734375 L10.984375,5.7734375 L11.3671875,5.7734375 Z M8,7.44140625 C8.15885417,7.44140625 8.29361979,7.49348958 8.40429688,7.59765625 C8.51497396,7.70182292 8.5703125,7.82682292 8.5703125,7.97265625 C8.5703125,8.11588542 8.51497396,8.23893229 8.40429688,8.34179688 C8.29361979,8.44466146 8.15885417,8.49609375 8,8.49609375 C7.84375,8.49609375 7.7109375,8.44466146 7.6015625,8.34179688 C7.4921875,8.23893229 7.4375,8.11588542 7.4375,7.97265625 C7.4375,7.82682292 7.4921875,7.70182292 7.6015625,7.59765625 C7.7109375,7.49348958 7.84375,7.44140625 8,7.44140625 Z" />-->
  198. </Border>
  199. <TextBlock
  200. x:Name="ActualSizeText"
  201. VerticalAlignment="Center"
  202. Text="Actual Size" />
  203. </StackPanel>
  204. </ComboBoxItem>
  205. <ComboBoxItem x:Name="FitWidth" Style="{StaticResource ZoomComboxItemStyle}">
  206. <StackPanel Orientation="Horizontal ">
  207. <Border Name="FitWidthBorder" Margin="10,0,12,0">
  208. <!--<Image Width="16" Height="16" Source="../Resources/Image/bottombar/fitwidth.png" />-->
  209. </Border>
  210. <TextBlock x:Name="FitWidthText" Text="Fit Width" />
  211. </StackPanel>
  212. </ComboBoxItem>
  213. <ComboBoxItem x:Name="FitHeight" Style="{StaticResource ZoomComboxItemStyle}">
  214. <StackPanel Orientation="Horizontal">
  215. <Border Name="FitHeightBorder" Margin="10,0,12,0">
  216. <!--<Image Width="16" Height="16" Source="../Resources/Image/bottombar/adaptationHeight.png" />-->
  217. </Border>
  218. <TextBlock x:Name="FitHeightText" Text="Fit Height" />
  219. </StackPanel>
  220. </ComboBoxItem>
  221. <Separator
  222. Height="1"
  223. BorderBrush="#33000000"
  224. BorderThickness="1"
  225. Style="{StaticResource {x:Static ToolBar.SeparatorStyleKey}}" />
  226. <ComboBoxItem
  227. Padding="40,0,0,0"
  228. Content="10%"
  229. Style="{StaticResource ZoomComboxItemStyle}"
  230. Tag="10" />
  231. <ComboBoxItem
  232. Padding="40,0,0,0"
  233. Content="25%"
  234. Style="{StaticResource ZoomComboxItemStyle}"
  235. Tag="25" />
  236. <ComboBoxItem
  237. Padding="40,0,0,0"
  238. Content="50%"
  239. Style="{StaticResource ZoomComboxItemStyle}"
  240. Tag="50" />
  241. <ComboBoxItem
  242. Padding="40,0,0,0"
  243. Content="100%"
  244. Style="{StaticResource ZoomComboxItemStyle}"
  245. Tag="100" />
  246. <ComboBoxItem
  247. Padding="40,0,0,0"
  248. Content="150%"
  249. Style="{StaticResource ZoomComboxItemStyle}"
  250. Tag="150" />
  251. <ComboBoxItem
  252. Padding="40,0,0,0"
  253. Content="200%"
  254. Style="{StaticResource ZoomComboxItemStyle}"
  255. Tag="200" />
  256. <ComboBoxItem
  257. Padding="40,0,0,0"
  258. Content="300%"
  259. Style="{StaticResource ZoomComboxItemStyle}"
  260. Tag="300" />
  261. <ComboBoxItem
  262. Padding="40,0,0,0"
  263. Content="400%"
  264. Style="{StaticResource ZoomComboxItemStyle}"
  265. Tag="400" />
  266. <ComboBoxItem
  267. Padding="40,0,0,0"
  268. Content="500%"
  269. Style="{StaticResource ZoomComboxItemStyle}"
  270. Tag="500" />
  271. <ComboBoxItem
  272. Padding="40,0,0,0"
  273. Content="1000%"
  274. Style="{StaticResource ZoomComboxItemStyle}"
  275. Tag="1000" />
  276. </ComboBox>
  277. <TextBlock
  278. Width="45"
  279. Height="14"
  280. Margin="4,0,0,0"
  281. HorizontalAlignment="Left"
  282. Background="White"
  283. Text="{Binding CurrentZoom, StringFormat={}{0}%}" />
  284. </Grid>
  285. <StackPanel Orientation="Horizontal">
  286. <Button
  287. Width="14"
  288. Height="16"
  289. VerticalContentAlignment="Center"
  290. Command="{Binding ZoomInCommand}"
  291. Content="+" />
  292. <Button
  293. Width="14"
  294. Height="16"
  295. VerticalContentAlignment="Center"
  296. Command="{Binding ZoomOutCommand}"
  297. Content="-" />
  298. </StackPanel>
  299. </StackPanel>
  300. </StackPanel>
  301. </Grid>
  302. </UserControl>