summaryrefslogtreecommitdiff
path: root/winrt/mupdf_cpp
diff options
context:
space:
mode:
authorTor Andersson <tor.andersson@artifex.com>2013-06-19 15:29:44 +0200
committerTor Andersson <tor.andersson@artifex.com>2013-06-20 16:45:35 +0200
commit0a927854a10e1e6b9770a81e2e1d9f3093631757 (patch)
tree3d65d820d9fdba2d0d394d99c36290c851b78ca0 /winrt/mupdf_cpp
parent1ae8f19179c5f0f8c6352b3c7855465325d5449a (diff)
downloadmupdf-0a927854a10e1e6b9770a81e2e1d9f3093631757.tar.xz
Rearrange source files.
Diffstat (limited to 'winrt/mupdf_cpp')
-rw-r--r--winrt/mupdf_cpp/App.xaml20
-rw-r--r--winrt/mupdf_cpp/App.xaml.cpp125
-rw-r--r--winrt/mupdf_cpp/App.xaml.h24
-rw-r--r--winrt/mupdf_cpp/Assets/Logo.Scale-100.pngbin14183 -> 0 bytes
-rw-r--r--winrt/mupdf_cpp/Assets/Logo.Scale-140.pngbin19150 -> 0 bytes
-rw-r--r--winrt/mupdf_cpp/Assets/Logo.Scale-180.pngbin24211 -> 0 bytes
-rw-r--r--winrt/mupdf_cpp/Assets/Logo.Scale-80.pngbin11656 -> 0 bytes
-rw-r--r--winrt/mupdf_cpp/Assets/StoreLogo.scale-100.pngbin5816 -> 0 bytes
-rw-r--r--winrt/mupdf_cpp/Assets/StoreLogo.scale-140.pngbin7512 -> 0 bytes
-rw-r--r--winrt/mupdf_cpp/Assets/StoreLogo.scale-180.pngbin9262 -> 0 bytes
-rw-r--r--winrt/mupdf_cpp/Assets/mupdf_smallogo.pngbin4299 -> 0 bytes
-rw-r--r--winrt/mupdf_cpp/Assets/mupdf_splash.pngbin28390 -> 0 bytes
-rw-r--r--winrt/mupdf_cpp/Common/StandardStyles.xaml1889
-rw-r--r--winrt/mupdf_cpp/DocumentPage.cpp15
-rw-r--r--winrt/mupdf_cpp/DocumentPage.h195
-rw-r--r--winrt/mupdf_cpp/MainPage.xaml276
-rw-r--r--winrt/mupdf_cpp/MainPage.xaml.cpp1479
-rw-r--r--winrt/mupdf_cpp/MainPage.xaml.h177
-rw-r--r--winrt/mupdf_cpp/Package.appxmanifest37
-rw-r--r--winrt/mupdf_cpp/RectList.cpp9
-rw-r--r--winrt/mupdf_cpp/RectList.h153
-rw-r--r--winrt/mupdf_cpp/mupdf_cpp.rcbin2664 -> 0 bytes
-rw-r--r--winrt/mupdf_cpp/mupdf_cpp.vcxproj269
-rw-r--r--winrt/mupdf_cpp/mupdf_cpp.vcxproj.filters72
-rw-r--r--winrt/mupdf_cpp/pch.cpp6
-rw-r--r--winrt/mupdf_cpp/pch.h9
26 files changed, 0 insertions, 4755 deletions
diff --git a/winrt/mupdf_cpp/App.xaml b/winrt/mupdf_cpp/App.xaml
deleted file mode 100644
index dfb5d11c..00000000
--- a/winrt/mupdf_cpp/App.xaml
+++ /dev/null
@@ -1,20 +0,0 @@
-<Application
- x:Class="mupdf_cpp.App"
- xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
- xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
- xmlns:local="using:mupdf_cpp">
-
- <Application.Resources>
- <ResourceDictionary>
- <ResourceDictionary.MergedDictionaries>
-
- <!--
- Styles that define common aspects of the platform look and feel
- Required by Visual Studio project and item templates
- -->
- <ResourceDictionary Source="Common/StandardStyles.xaml"/>
- </ResourceDictionary.MergedDictionaries>
-
- </ResourceDictionary>
- </Application.Resources>
-</Application>
diff --git a/winrt/mupdf_cpp/App.xaml.cpp b/winrt/mupdf_cpp/App.xaml.cpp
deleted file mode 100644
index d0b9d8c7..00000000
--- a/winrt/mupdf_cpp/App.xaml.cpp
+++ /dev/null
@@ -1,125 +0,0 @@
-//
-// App.xaml.cpp
-// Implementation of the App class.
-//
-
-#include "pch.h"
-#include "MainPage.xaml.h"
-
-using namespace mupdf_cpp;
-
-using namespace Platform;
-using namespace Windows::ApplicationModel;
-using namespace Windows::ApplicationModel::Activation;
-using namespace Windows::Foundation;
-using namespace Windows::Foundation::Collections;
-using namespace Windows::UI::Xaml;
-using namespace Windows::UI::Xaml::Controls;
-using namespace Windows::UI::Xaml::Controls::Primitives;
-using namespace Windows::UI::Xaml::Data;
-using namespace Windows::UI::Xaml::Input;
-using namespace Windows::UI::Xaml::Interop;
-using namespace Windows::UI::Xaml::Media;
-using namespace Windows::UI::Xaml::Navigation;
-
-// The Blank Application template is documented at http://go.microsoft.com/fwlink/?LinkId=234227
-
-/// <summary>
-/// Initializes the singleton application object. This is the first line of authored code
-/// executed, and as such is the logical equivalent of main() or WinMain().
-/// </summary>
-App::App()
-{
- InitializeComponent();
- Suspending += ref new SuspendingEventHandler(this, &App::OnSuspending);
-}
-
-/// <summary>
-/// Invoked when the application is launched normally by the end user. Other entry points
-/// will be used when the application is launched to open a specific file, to display
-/// search results, and so forth.
-/// </summary>
-/// <param name="args">Details about the launch request and process.</param>
-void App::OnLaunched(Windows::ApplicationModel::Activation::LaunchActivatedEventArgs^ args)
-{
- auto rootFrame = dynamic_cast<Frame^>(Window::Current->Content);
-
- // Do not repeat app initialization when the Window already has content,
- // just ensure that the window is active
- if (rootFrame == nullptr)
- {
- // Create a Frame to act as the navigation context and associate it with
- // a SuspensionManager key
- rootFrame = ref new Frame();
-
- if (args->PreviousExecutionState == ApplicationExecutionState::Terminated)
- {
- // TODO: Restore the saved session state only when appropriate, scheduling the
- // final launch steps after the restore is complete
-
- }
-
- if (rootFrame->Content == nullptr)
- {
- // When the navigation stack isn't restored navigate to the first page,
- // configuring the new page by passing required information as a navigation
- // parameter
- if (!rootFrame->Navigate(TypeName(MainPage::typeid), args->Arguments))
- {
- throw ref new FailureException("Failed to create initial page");
- }
- }
- // Place the frame in the current Window
- Window::Current->Content = rootFrame;
- auto rootPage = safe_cast<MainPage^>(rootFrame->Content);
- rootPage->FileEvent = nullptr;
- rootPage->ProtocolEvent = nullptr;
-
- // Ensure the current window is active
- Window::Current->Activate();
- }
- else
- {
- if (rootFrame->Content == nullptr)
- {
- // When the navigation stack isn't restored navigate to the first page,
- // configuring the new page by passing required information as a navigation
- // parameter
- if (!rootFrame->Navigate(TypeName(MainPage::typeid), args->Arguments))
- {
- throw ref new FailureException("Failed to create initial page");
- }
- }
- // Ensure the current window is active
- Window::Current->Activate();
- }
-}
-
-// Handle file activations.
-void App::OnFileActivated(Windows::ApplicationModel::Activation::FileActivatedEventArgs^ args)
-{
- auto rootFrame = ref new Frame();
- TypeName pageType = { "mupdf_cpp.MainPage", TypeKind::Custom };
- rootFrame->Navigate(pageType, args);
- Window::Current->Content = rootFrame;
- auto rootPage = safe_cast<MainPage^>(rootFrame->Content);
- rootPage->FileEvent = args;
- rootPage->ProtocolEvent = nullptr;
-
- Window::Current->Activate();
-}
-
-/// <summary>
-/// Invoked when application execution is being suspended. Application state is saved
-/// without knowing whether the application will be terminated or resumed with the contents
-/// of memory still intact.
-/// </summary>
-/// <param name="sender">The source of the suspend request.</param>
-/// <param name="e">Details about the suspend request.</param>
-void App::OnSuspending(Object^ sender, SuspendingEventArgs^ e)
-{
- (void) sender; // Unused parameter
- (void) e; // Unused parameter
-
- //TODO: Save application state and stop any background activity
-}
diff --git a/winrt/mupdf_cpp/App.xaml.h b/winrt/mupdf_cpp/App.xaml.h
deleted file mode 100644
index b62c9979..00000000
--- a/winrt/mupdf_cpp/App.xaml.h
+++ /dev/null
@@ -1,24 +0,0 @@
-//
-// App.xaml.h
-// Declaration of the App class.
-//
-
-#pragma once
-
-#include "App.g.h"
-
-namespace mupdf_cpp
-{
- /// <summary>
- /// Provides application-specific behavior to supplement the default Application class.
- /// </summary>
- ref class App sealed
- {
- public:
- App();
- virtual void OnLaunched(Windows::ApplicationModel::Activation::LaunchActivatedEventArgs^ args) override;
- virtual void App::OnFileActivated(Windows::ApplicationModel::Activation::FileActivatedEventArgs^ args) override;
- private:
- void OnSuspending(Platform::Object^ sender, Windows::ApplicationModel::SuspendingEventArgs^ e);
- };
-}
diff --git a/winrt/mupdf_cpp/Assets/Logo.Scale-100.png b/winrt/mupdf_cpp/Assets/Logo.Scale-100.png
deleted file mode 100644
index 821cb7d9..00000000
--- a/winrt/mupdf_cpp/Assets/Logo.Scale-100.png
+++ /dev/null
Binary files differ
diff --git a/winrt/mupdf_cpp/Assets/Logo.Scale-140.png b/winrt/mupdf_cpp/Assets/Logo.Scale-140.png
deleted file mode 100644
index 94eb9b67..00000000
--- a/winrt/mupdf_cpp/Assets/Logo.Scale-140.png
+++ /dev/null
Binary files differ
diff --git a/winrt/mupdf_cpp/Assets/Logo.Scale-180.png b/winrt/mupdf_cpp/Assets/Logo.Scale-180.png
deleted file mode 100644
index 44354901..00000000
--- a/winrt/mupdf_cpp/Assets/Logo.Scale-180.png
+++ /dev/null
Binary files differ
diff --git a/winrt/mupdf_cpp/Assets/Logo.Scale-80.png b/winrt/mupdf_cpp/Assets/Logo.Scale-80.png
deleted file mode 100644
index 165bda7a..00000000
--- a/winrt/mupdf_cpp/Assets/Logo.Scale-80.png
+++ /dev/null
Binary files differ
diff --git a/winrt/mupdf_cpp/Assets/StoreLogo.scale-100.png b/winrt/mupdf_cpp/Assets/StoreLogo.scale-100.png
deleted file mode 100644
index 5b5635e9..00000000
--- a/winrt/mupdf_cpp/Assets/StoreLogo.scale-100.png
+++ /dev/null
Binary files differ
diff --git a/winrt/mupdf_cpp/Assets/StoreLogo.scale-140.png b/winrt/mupdf_cpp/Assets/StoreLogo.scale-140.png
deleted file mode 100644
index 2813a863..00000000
--- a/winrt/mupdf_cpp/Assets/StoreLogo.scale-140.png
+++ /dev/null
Binary files differ
diff --git a/winrt/mupdf_cpp/Assets/StoreLogo.scale-180.png b/winrt/mupdf_cpp/Assets/StoreLogo.scale-180.png
deleted file mode 100644
index 1908837d..00000000
--- a/winrt/mupdf_cpp/Assets/StoreLogo.scale-180.png
+++ /dev/null
Binary files differ
diff --git a/winrt/mupdf_cpp/Assets/mupdf_smallogo.png b/winrt/mupdf_cpp/Assets/mupdf_smallogo.png
deleted file mode 100644
index 48746c87..00000000
--- a/winrt/mupdf_cpp/Assets/mupdf_smallogo.png
+++ /dev/null
Binary files differ
diff --git a/winrt/mupdf_cpp/Assets/mupdf_splash.png b/winrt/mupdf_cpp/Assets/mupdf_splash.png
deleted file mode 100644
index 624f9ae9..00000000
--- a/winrt/mupdf_cpp/Assets/mupdf_splash.png
+++ /dev/null
Binary files differ
diff --git a/winrt/mupdf_cpp/Common/StandardStyles.xaml b/winrt/mupdf_cpp/Common/StandardStyles.xaml
deleted file mode 100644
index 771d773c..00000000
--- a/winrt/mupdf_cpp/Common/StandardStyles.xaml
+++ /dev/null
@@ -1,1889 +0,0 @@
-<!--
- This file contains XAML styles that simplify application development.
-
- These are not merely convenient, but are required by most Visual Studio project and item templates.
- Removing, renaming, or otherwise modifying the content of these files may result in a project that
- does not build, or that will not build once additional pages are added. If variations on these
- styles are desired it is recommended that you copy the content under a new name and modify your
- private copy.
--->
-
-<ResourceDictionary
- xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
- xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
-
- <!-- Non-brush values that vary across themes -->
-
- <ResourceDictionary.ThemeDictionaries>
- <ResourceDictionary x:Key="Default">
- <x:String x:Key="BackButtonGlyph">&#xE071;</x:String>
- <x:String x:Key="BackButtonSnappedGlyph">&#xE0BA;</x:String>
- </ResourceDictionary>
-
- <ResourceDictionary x:Key="HighContrast">
- <x:String x:Key="BackButtonGlyph">&#xE071;</x:String>
- <x:String x:Key="BackButtonSnappedGlyph">&#xE0C4;</x:String>
- </ResourceDictionary>
- </ResourceDictionary.ThemeDictionaries>
-
- <x:String x:Key="ChevronGlyph">&#xE26B;</x:String>
-
- <!-- RichTextBlock styles -->
-
- <Style x:Key="BasicRichTextStyle" TargetType="RichTextBlock">
- <Setter Property="Foreground" Value="{StaticResource ApplicationForegroundThemeBrush}"/>
- <Setter Property="FontSize" Value="{StaticResource ControlContentThemeFontSize}"/>
- <Setter Property="FontFamily" Value="{StaticResource ContentControlThemeFontFamily}"/>
- <Setter Property="TextTrimming" Value="WordEllipsis"/>
- <Setter Property="TextWrapping" Value="Wrap"/>
- <Setter Property="Typography.StylisticSet20" Value="True"/>
- <Setter Property="Typography.DiscretionaryLigatures" Value="True"/>
- <Setter Property="Typography.CaseSensitiveForms" Value="True"/>
- </Style>
-
- <Style x:Key="BaselineRichTextStyle" TargetType="RichTextBlock" BasedOn="{StaticResource BasicRichTextStyle}">
- <Setter Property="LineHeight" Value="20"/>
- <Setter Property="LineStackingStrategy" Value="BlockLineHeight"/>
- <!-- Properly align text along its baseline -->
- <Setter Property="RenderTransform">
- <Setter.Value>
- <TranslateTransform X="-1" Y="4"/>
- </Setter.Value>
- </Setter>
- </Style>
-
- <Style x:Key="ItemRichTextStyle" TargetType="RichTextBlock" BasedOn="{StaticResource BaselineRichTextStyle}"/>
-
- <Style x:Key="BodyRichTextStyle" TargetType="RichTextBlock" BasedOn="{StaticResource BaselineRichTextStyle}">
- <Setter Property="FontWeight" Value="SemiLight"/>
- </Style>
-
- <!-- TextBlock styles -->
-
- <Style x:Key="BasicTextStyle" TargetType="TextBlock">
- <Setter Property="Foreground" Value="{StaticResource ApplicationForegroundThemeBrush}"/>
- <Setter Property="FontSize" Value="{StaticResource ControlContentThemeFontSize}"/>
- <Setter Property="FontFamily" Value="{StaticResource ContentControlThemeFontFamily}"/>
- <Setter Property="TextTrimming" Value="WordEllipsis"/>
- <Setter Property="TextWrapping" Value="Wrap"/>
- <Setter Property="Typography.StylisticSet20" Value="True"/>
- <Setter Property="Typography.DiscretionaryLigatures" Value="True"/>
- <Setter Property="Typography.CaseSensitiveForms" Value="True"/>
- </Style>
-
- <Style x:Key="BaselineTextStyle" TargetType="TextBlock" BasedOn="{StaticResource BasicTextStyle}">
- <Setter Property="LineHeight" Value="20"/>
- <Setter Property="LineStackingStrategy" Value="BlockLineHeight"/>
- <!-- Properly align text along its baseline -->
- <Setter Property="RenderTransform">
- <Setter.Value>
- <TranslateTransform X="-1" Y="4"/>
- </Setter.Value>
- </Setter>
- </Style>
-
- <Style x:Key="HeaderTextStyle" TargetType="TextBlock" BasedOn="{StaticResource BaselineTextStyle}">
- <Setter Property="FontSize" Value="56"/>
- <Setter Property="FontWeight" Value="Light"/>
- <Setter Property="LineHeight" Value="40"/>
- <Setter Property="RenderTransform">
- <Setter.Value>
- <TranslateTransform X="-2" Y="8"/>
- </Setter.Value>
- </Setter>
- </Style>
-
- <Style x:Key="SubheaderTextStyle" TargetType="TextBlock" BasedOn="{StaticResource BaselineTextStyle}">
- <Setter Property="FontSize" Value="26.667"/>
- <Setter Property="FontWeight" Value="Light"/>
- <Setter Property="LineHeight" Value="30"/>
- <Setter Property="RenderTransform">
- <Setter.Value>
- <TranslateTransform X="-1" Y="6"/>
- </Setter.Value>
- </Setter>
- </Style>
-
- <Style x:Key="TitleTextStyle" TargetType="TextBlock" BasedOn="{StaticResource BaselineTextStyle}">
- <Setter Property="FontWeight" Value="SemiBold"/>
- </Style>
-
- <Style x:Key="SubtitleTextStyle" TargetType="TextBlock" BasedOn="{StaticResource BaselineTextStyle}">
- <Setter Property="FontWeight" Value="Normal"/>
- </Style>
-
- <Style x:Key="ItemTextStyle" TargetType="TextBlock" BasedOn="{StaticResource BaselineTextStyle}"/>
-
- <Style x:Key="BodyTextStyle" TargetType="TextBlock" BasedOn="{StaticResource BaselineTextStyle}">
- <Setter Property="FontWeight" Value="SemiLight"/>
- </Style>
-
- <Style x:Key="CaptionTextStyle" TargetType="TextBlock" BasedOn="{StaticResource BaselineTextStyle}">
- <Setter Property="FontSize" Value="12"/>
- <Setter Property="Foreground" Value="{StaticResource ApplicationSecondaryForegroundThemeBrush}"/>
- </Style>
-
- <Style x:Key="GroupHeaderTextStyle" TargetType="TextBlock">
- <Setter Property="FontFamily" Value="{StaticResource ContentControlThemeFontFamily}"/>
- <Setter Property="TextTrimming" Value="WordEllipsis"/>
- <Setter Property="TextWrapping" Value="NoWrap"/>
- <Setter Property="Typography.StylisticSet20" Value="True"/>
- <Setter Property="Typography.DiscretionaryLigatures" Value="True"/>
- <Setter Property="Typography.CaseSensitiveForms" Value="True"/>
- <Setter Property="FontSize" Value="26.667"/>
- <Setter Property="LineStackingStrategy" Value="BlockLineHeight"/>
- <Setter Property="FontWeight" Value="Light"/>
- <Setter Property="LineHeight" Value="30"/>
- <Setter Property="RenderTransform">
- <Setter.Value>
- <TranslateTransform X="-1" Y="6"/>
- </Setter.Value>
- </Setter>
- </Style>
-
- <!-- Button styles -->
-
- <!--
- TextButtonStyle is used to style a Button using subheader-styled text with no other adornment. There
- are two styles that are based on TextButtonStyle (TextPrimaryButtonStyle and TextSecondaryButtonStyle)
- which are used in the GroupedItemsPage as a group header and in the FileOpenPickerPage for triggering
- commands.
- -->
- <Style x:Key="TextButtonStyle" TargetType="ButtonBase">
- <Setter Property="MinWidth" Value="0"/>
- <Setter Property="MinHeight" Value="0"/>
- <Setter Property="Template">
- <Setter.Value>
- <ControlTemplate TargetType="ButtonBase">
- <Grid Background="Transparent">
- <ContentPresenter x:Name="Text" Content="{TemplateBinding Content}" />
- <Rectangle
- x:Name="FocusVisualWhite"
- IsHitTestVisible="False"
- Stroke="{StaticResource FocusVisualWhiteStrokeThemeBrush}"
- StrokeEndLineCap="Square"
- StrokeDashArray="1,1"
- Opacity="0"
- StrokeDashOffset="1.5"/>
- <Rectangle
- x:Name="FocusVisualBlack"
- IsHitTestVisible="False"
- Stroke="{StaticResource FocusVisualBlackStrokeThemeBrush}"
- StrokeEndLineCap="Square"
- StrokeDashArray="1,1"
- Opacity="0"
- StrokeDashOffset="0.5"/>
- <VisualStateManager.VisualStateGroups>
- <VisualStateGroup x:Name="CommonStates">
- <VisualState x:Name="Normal"/>
- <VisualState x:Name="PointerOver">
- <Storyboard>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="Text" Storyboard.TargetProperty="Foreground">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource ApplicationPointerOverForegroundThemeBrush}"/>
- </ObjectAnimationUsingKeyFrames>
- </Storyboard>
- </VisualState>
- <VisualState x:Name="Pressed">
- <Storyboard>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="Text" Storyboard.TargetProperty="Foreground">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource ApplicationPressedForegroundThemeBrush}"/>
- </ObjectAnimationUsingKeyFrames>
- </Storyboard>
- </VisualState>
- <VisualState x:Name="Disabled">
- <Storyboard>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="Text" Storyboard.TargetProperty="Foreground">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource ApplicationPressedForegroundThemeBrush}"/>
- </ObjectAnimationUsingKeyFrames>
- </Storyboard>
- </VisualState>
- </VisualStateGroup>
- <VisualStateGroup x:Name="FocusStates">
- <VisualState x:Name="Focused">
- <Storyboard>
- <DoubleAnimation Duration="0" To="1" Storyboard.TargetName="FocusVisualWhite" Storyboard.TargetProperty="Opacity"/>
- <DoubleAnimation Duration="0" To="1" Storyboard.TargetName="FocusVisualBlack" Storyboard.TargetProperty="Opacity"/>
- </Storyboard>
- </VisualState>
- <VisualState x:Name="Unfocused"/>
- </VisualStateGroup>
- <VisualStateGroup x:Name="CheckStates">
- <VisualState x:Name="Checked"/>
- <VisualState x:Name="Unchecked">
- <Storyboard>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="Text" Storyboard.TargetProperty="Foreground">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource ApplicationSecondaryForegroundThemeBrush}"/>
- </ObjectAnimationUsingKeyFrames>
- </Storyboard>
- </VisualState>
- <VisualState x:Name="Indeterminate"/>
- </VisualStateGroup>
- </VisualStateManager.VisualStateGroups>
- </Grid>
- </ControlTemplate>
- </Setter.Value>
- </Setter>
- </Style>
-
- <Style x:Key="TextPrimaryButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource TextButtonStyle}">
- <Setter Property="Foreground" Value="{StaticResource ApplicationHeaderForegroundThemeBrush}"/>
- </Style>
-
- <Style x:Key="TextSecondaryButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource TextButtonStyle}">
- <Setter Property="Foreground" Value="{StaticResource ApplicationSecondaryForegroundThemeBrush}"/>
- </Style>
-
- <!--
- TextRadioButtonStyle is used to style a RadioButton using subheader-styled text with no other adornment.
- This style is used in the SearchResultsPage to allow selection among filters.
- -->
- <Style x:Key="TextRadioButtonStyle" TargetType="RadioButton" BasedOn="{StaticResource TextButtonStyle}">
- <Setter Property="Margin" Value="0,0,30,0"/>
- </Style>
-
- <!--
- AppBarButtonStyle is used to style a Button (or ToggleButton) for use in an App Bar. Content will be centered
- and should fit within the 40 pixel radius glyph provided. 16-point Segoe UI Symbol is used for content text
- to simplify the use of glyphs from that font. AutomationProperties.Name is used for the text below the glyph.
- -->
- <Style x:Key="AppBarButtonStyle" TargetType="ButtonBase">
- <Setter Property="Foreground" Value="{StaticResource AppBarItemForegroundThemeBrush}"/>
- <Setter Property="VerticalAlignment" Value="Stretch"/>
- <Setter Property="FontFamily" Value="Segoe UI Symbol"/>
- <Setter Property="FontWeight" Value="Normal"/>
- <Setter Property="FontSize" Value="20"/>
- <Setter Property="AutomationProperties.ItemType" Value="App Bar Button"/>
- <Setter Property="Template">
- <Setter.Value>
- <ControlTemplate TargetType="ButtonBase">
- <Grid x:Name="RootGrid" Width="100" Background="Transparent">
- <StackPanel VerticalAlignment="Top" Margin="0,12,0,11">
- <Grid Width="40" Height="40" Margin="0,0,0,5" HorizontalAlignment="Center">
- <TextBlock x:Name="BackgroundGlyph" Text="&#xE0A8;" FontFamily="Segoe UI Symbol" FontSize="53.333" Margin="-4,-19,0,0" Foreground="{StaticResource AppBarItemBackgroundThemeBrush}"/>
- <TextBlock x:Name="OutlineGlyph" Text="&#xE0A7;" FontFamily="Segoe UI Symbol" FontSize="53.333" Margin="-4,-19,0,0"/>
- <ContentPresenter x:Name="Content" HorizontalAlignment="Center" Margin="-1,-1,0,0" VerticalAlignment="Center"/>
- </Grid>
- <TextBlock
- x:Name="TextLabel"
- Text="{TemplateBinding AutomationProperties.Name}"
- Foreground="{StaticResource AppBarItemForegroundThemeBrush}"
- Margin="0,0,2,0"
- FontSize="12"
- TextAlignment="Center"
- Width="88"
- MaxHeight="32"
- TextTrimming="WordEllipsis"
- Style="{StaticResource BasicTextStyle}"/>
- </StackPanel>
- <Rectangle
- x:Name="FocusVisualWhite"
- IsHitTestVisible="False"
- Stroke="{StaticResource FocusVisualWhiteStrokeThemeBrush}"
- StrokeEndLineCap="Square"
- StrokeDashArray="1,1"
- Opacity="0"
- StrokeDashOffset="1.5"/>
- <Rectangle
- x:Name="FocusVisualBlack"
- IsHitTestVisible="False"
- Stroke="{StaticResource FocusVisualBlackStrokeThemeBrush}"
- StrokeEndLineCap="Square"
- StrokeDashArray="1,1"
- Opacity="0"
- StrokeDashOffset="0.5"/>
-
- <VisualStateManager.VisualStateGroups>
- <VisualStateGroup x:Name="ApplicationViewStates">
- <VisualState x:Name="FullScreenLandscape"/>
- <VisualState x:Name="Filled"/>
- <VisualState x:Name="FullScreenPortrait">
- <Storyboard>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="TextLabel" Storyboard.TargetProperty="Visibility">
- <DiscreteObjectKeyFrame KeyTime="0" Value="Collapsed"/>
- </ObjectAnimationUsingKeyFrames>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="RootGrid" Storyboard.TargetProperty="Width">
- <DiscreteObjectKeyFrame KeyTime="0" Value="60"/>
- </ObjectAnimationUsingKeyFrames>
- </Storyboard>
- </VisualState>
- <VisualState x:Name="Snapped">
- <Storyboard>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="TextLabel" Storyboard.TargetProperty="Visibility">
- <DiscreteObjectKeyFrame KeyTime="0" Value="Collapsed"/>
- </ObjectAnimationUsingKeyFrames>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="RootGrid" Storyboard.TargetProperty="Width">
- <DiscreteObjectKeyFrame KeyTime="0" Value="60"/>
- </ObjectAnimationUsingKeyFrames>
- </Storyboard>
- </VisualState>
- </VisualStateGroup>
- <VisualStateGroup x:Name="CommonStates">
- <VisualState x:Name="Normal"/>
- <VisualState x:Name="PointerOver">
- <Storyboard>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="BackgroundGlyph" Storyboard.TargetProperty="Foreground">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource AppBarItemPointerOverBackgroundThemeBrush}"/>
- </ObjectAnimationUsingKeyFrames>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="Content" Storyboard.TargetProperty="Foreground">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource AppBarItemPointerOverForegroundThemeBrush}"/>
- </ObjectAnimationUsingKeyFrames>
- </Storyboard>
- </VisualState>
- <VisualState x:Name="Pressed">
- <Storyboard>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="OutlineGlyph" Storyboard.TargetProperty="Foreground">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource AppBarItemForegroundThemeBrush}"/>
- </ObjectAnimationUsingKeyFrames>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="BackgroundGlyph" Storyboard.TargetProperty="Foreground">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource AppBarItemForegroundThemeBrush}"/>
- </ObjectAnimationUsingKeyFrames>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="Content" Storyboard.TargetProperty="Foreground">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource AppBarItemPressedForegroundThemeBrush}"/>
- </ObjectAnimationUsingKeyFrames>
- </Storyboard>
- </VisualState>
- <VisualState x:Name="Disabled">
- <Storyboard>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="OutlineGlyph" Storyboard.TargetProperty="Foreground">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource AppBarItemDisabledForegroundThemeBrush}"/>
- </ObjectAnimationUsingKeyFrames>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="Content" Storyboard.TargetProperty="Foreground">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource AppBarItemDisabledForegroundThemeBrush}"/>
- </ObjectAnimationUsingKeyFrames>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="TextLabel" Storyboard.TargetProperty="Foreground">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource AppBarItemDisabledForegroundThemeBrush}"/>
- </ObjectAnimationUsingKeyFrames>
- </Storyboard>
- </VisualState>
- </VisualStateGroup>
- <VisualStateGroup x:Name="FocusStates">
- <VisualState x:Name="Focused">
- <Storyboard>
- <DoubleAnimation
- Storyboard.TargetName="FocusVisualWhite"
- Storyboard.TargetProperty="Opacity"
- To="1"
- Duration="0"/>
- <DoubleAnimation
- Storyboard.TargetName="FocusVisualBlack"
- Storyboard.TargetProperty="Opacity"
- To="1"
- Duration="0"/>
- </Storyboard>
- </VisualState>
- <VisualState x:Name="Unfocused" />
- <VisualState x:Name="PointerFocused" />
- </VisualStateGroup>
- <VisualStateGroup x:Name="CheckStates">
- <VisualState x:Name="Checked">
- <Storyboard>
- <DoubleAnimation Duration="0" To="0" Storyboard.TargetName="OutlineGlyph" Storyboard.TargetProperty="Opacity"/>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="BackgroundGlyph" Storyboard.TargetProperty="Foreground">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource AppBarItemForegroundThemeBrush}"/>
- </ObjectAnimationUsingKeyFrames>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="BackgroundCheckedGlyph" Storyboard.TargetProperty="Visibility">
- <DiscreteObjectKeyFrame KeyTime="0" Value="Visible"/>
- </ObjectAnimationUsingKeyFrames>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="Content" Storyboard.TargetProperty="Foreground">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource AppBarItemPressedForegroundThemeBrush}"/>
- </ObjectAnimationUsingKeyFrames>
- </Storyboard>
- </VisualState>
- <VisualState x:Name="Unchecked"/>
- <VisualState x:Name="Indeterminate"/>
- </VisualStateGroup>
- </VisualStateManager.VisualStateGroups>
- </Grid>
- </ControlTemplate>
- </Setter.Value>
- </Setter>
- </Style>
-
- <!--
- Standard AppBarButton Styles for use with Button and ToggleButton
-
- An AppBarButton Style is provided for each of the glyphs in the Segoe UI Symbol font.
- Uncomment any style you reference (as not all may be required).
- -->
- <Style x:Key="HelpAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="HelpAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Help"/>
- <Setter Property="Content" Value="&#xE11B;"/>
- </Style>
- <Style x:Key="SearchAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="SearchAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Search"/>
- <Setter Property="Content" Value="&#xE11A;"/>
- </Style>
- <Style x:Key="OpenFileAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="OpenFileAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Open File"/>
- <Setter Property="Content" Value="&#xE1A5;"/>
- </Style>
- <Style x:Key="NextAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="NextAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Next"/>
- <Setter Property="Content" Value="&#xE111;"/>
- </Style>
- <Style x:Key="PreviousAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="PreviousAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Previous"/>
- <Setter Property="Content" Value="&#xE112;"/>
- </Style>
- <Style x:Key="NoAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="NoAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="No"/>
- <Setter Property="Content" Value="&#xE10A;"/>
- </Style>
- <Style x:Key="SettingsAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="SettingsAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Settings"/>
- <Setter Property="Content" Value="&#xE115;"/>
- </Style>
- <Style x:Key="LinksAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="LinksAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Links"/>
- <Setter Property="Content" Value="&#xE167;"/>
- </Style>
- <Style x:Key="ContentsBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="AllAppsAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Contents"/>
- <Setter Property="Content" Value="&#xE179;"/>
- </Style>
- <Style x:Key="ReflowAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="ReflowAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Reflow"/>
- <Setter Property="Content" Value="&#xE18B;"/>
- </Style>
- <Style x:Key="ZoomInAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="ZoomInAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Zoom In"/>
- <Setter Property="Content" Value="&#xE12E;"/>
- </Style>
- <Style x:Key="ZoomOutAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="ZoomOutAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Zoom Out"/>
- <Setter Property="Content" Value="&#xE1A4;"/>
- </Style>
-
- <!--
-
- <Style x:Key="SkipBackAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="SkipBackAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Skip Back"/>
- <Setter Property="Content" Value="&#xE100;"/>
- </Style>
- <Style x:Key="SkipAheadAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="SkipAheadAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Skip Ahead"/>
- <Setter Property="Content" Value="&#xE101;"/>
- </Style>
- <Style x:Key="PlayAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="PlayAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Play"/>
- <Setter Property="Content" Value="&#xE102;"/>
- </Style>
- <Style x:Key="PauseAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="PauseAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Pause"/>
- <Setter Property="Content" Value="&#xE103;"/>
- </Style>
- <Style x:Key="EditAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="EditAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Edit"/>
- <Setter Property="Content" Value="&#xE104;"/>
- </Style>
- <Style x:Key="SaveAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="SaveAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Save"/>
- <Setter Property="Content" Value="&#xE105;"/>
- </Style>
- <Style x:Key="DeleteAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="DeleteAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Delete"/>
- <Setter Property="Content" Value="&#xE106;"/>
- </Style>
- <Style x:Key="DiscardAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="DiscardAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Discard"/>
- <Setter Property="Content" Value="&#xE107;"/>
- </Style>
- <Style x:Key="RemoveAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="RemoveAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Remove"/>
- <Setter Property="Content" Value="&#xE108;"/>
- </Style>
- <Style x:Key="AddAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="AddAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Add"/>
- <Setter Property="Content" Value="&#xE109;"/>
- </Style>
- <Style x:Key="NoAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="NoAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="No"/>
- <Setter Property="Content" Value="&#xE10A;"/>
- </Style>
- <Style x:Key="YesAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="YesAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Yes"/>
- <Setter Property="Content" Value="&#xE10B;"/>
- </Style>
- <Style x:Key="MoreAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="MoreAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="More"/>
- <Setter Property="Content" Value="&#xE10C;"/>
- </Style>
- <Style x:Key="RedoAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="RedoAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Redo"/>
- <Setter Property="Content" Value="&#xE10D;"/>
- </Style>
- <Style x:Key="UndoAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="UndoAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Undo"/>
- <Setter Property="Content" Value="&#xE10E;"/>
- </Style>
- <Style x:Key="HomeAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="HomeAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Home"/>
- <Setter Property="Content" Value="&#xE10F;"/>
- </Style>
- <Style x:Key="OutAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="OutAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Out"/>
- <Setter Property="Content" Value="&#xE110;"/>
- </Style>
- <Style x:Key="NextAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="NextAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Next"/>
- <Setter Property="Content" Value="&#xE111;"/>
- </Style>
- <Style x:Key="PreviousAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="PreviousAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Previous"/>
- <Setter Property="Content" Value="&#xE112;"/>
- </Style>
- <Style x:Key="FavoriteAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="FavoriteAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Favorite"/>
- <Setter Property="Content" Value="&#xE113;"/>
- </Style>
- <Style x:Key="PhotoAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="PhotoAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Photo"/>
- <Setter Property="Content" Value="&#xE114;"/>
- </Style>
- <Style x:Key="SettingsAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="SettingsAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Settings"/>
- <Setter Property="Content" Value="&#xE115;"/>
- </Style>
- -->
-
- <!--
- <Style x:Key="VideoAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="VideoAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Video"/>
- <Setter Property="Content" Value="&#xE116;"/>
- </Style>
- <Style x:Key="RefreshAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="RefreshAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Refresh"/>
- <Setter Property="Content" Value="&#xE117;"/>
- </Style>
- <Style x:Key="DownloadAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="DownloadAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Download"/>
- <Setter Property="Content" Value="&#xE118;"/>
- </Style>
- <Style x:Key="MailAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="MailAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Mail"/>
- <Setter Property="Content" Value="&#xE119;"/>
- </Style>
- <Style x:Key="SearchAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="SearchAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Search"/>
- <Setter Property="Content" Value="&#xE11A;"/>
- </Style>
- <Style x:Key="HelpAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="HelpAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Help"/>
- <Setter Property="Content" Value="&#xE11B;"/>
- </Style>
- <Style x:Key="UploadAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="UploadAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Upload"/>
- <Setter Property="Content" Value="&#xE11C;"/>
- </Style>
- <Style x:Key="EmojiAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="EmojiAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Emoji"/>
- <Setter Property="Content" Value="&#xE11D;"/>
- </Style>
- <Style x:Key="TwoPageAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="TwoPageAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Two Page"/>
- <Setter Property="Content" Value="&#xE11E;"/>
- </Style>
- <Style x:Key="LeaveChatAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="LeaveChatAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Upload"/>
- <Setter Property="Content" Value="&#xE11F;"/>
- </Style>
- <Style x:Key="MailForwardAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="MailForwardAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Forward Mail"/>
- <Setter Property="Content" Value="&#xE120;"/>
- </Style>
- <Style x:Key="ClockAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="ClockAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Clock"/>
- <Setter Property="Content" Value="&#xE121;"/>
- </Style>
- <Style x:Key="SendAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="SendAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Send"/>
- <Setter Property="Content" Value="&#xE122;"/>
- </Style>
- <Style x:Key="CropAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="CropAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Crop"/>
- <Setter Property="Content" Value="&#xE123;"/>
- </Style>
- <Style x:Key="RotateCameraAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="RotateCameraAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Rotate Camera"/>
- <Setter Property="Content" Value="&#xE124;"/>
- </Style>
- <Style x:Key="PeopleAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="PeopleAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="People"/>
- <Setter Property="Content" Value="&#xE125;"/>
- </Style>
- <Style x:Key="ClosePaneAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="ClosePaneAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Close Pane"/>
- <Setter Property="Content" Value="&#xE126;"/>
- </Style>
- <Style x:Key="OpenPaneAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="OpenPaneAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Open Pane"/>
- <Setter Property="Content" Value="&#xE127;"/>
- </Style>
- -->
-
- <!--
- <Style x:Key="WorldAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="WorldAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="World"/>
- <Setter Property="Content" Value="&#xE128;"/>
- </Style>
- <Style x:Key="FlagAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="FlagAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Flag"/>
- <Setter Property="Content" Value="&#xE129;"/>
- </Style>
- <Style x:Key="PreviewLinkAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="PreviewLinkAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Preview Link"/>
- <Setter Property="Content" Value="&#xE12A;"/>
- </Style>
- <Style x:Key="GlobeAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="GlobeAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Globe"/>
- <Setter Property="Content" Value="&#xE12B;"/>
- </Style>
- <Style x:Key="TrimAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="TrimAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Trim"/>
- <Setter Property="Content" Value="&#xE12C;"/>
- </Style>
- <Style x:Key="AttachCameraAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="AttachCameraAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Attach Camera"/>
- <Setter Property="Content" Value="&#xE12D;"/>
- </Style>
- <Style x:Key="ZoomInAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="ZoomInAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Zoom In"/>
- <Setter Property="Content" Value="&#xE12E;"/>
- </Style>
- <Style x:Key="BookmarksAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="BookmarksAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Bookmarks"/>
- <Setter Property="Content" Value="&#xE12F;"/>
- </Style>
- <Style x:Key="DocumentAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="DocumentAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Document"/>
- <Setter Property="Content" Value="&#xE130;"/>
- </Style>
- <Style x:Key="ProtectedDocumentAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="ProtectedDocumentAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Protected Document"/>
- <Setter Property="Content" Value="&#xE131;"/>
- </Style>
- <Style x:Key="PageAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="PageAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Page"/>
- <Setter Property="Content" Value="&#xE132;"/>
- </Style>
- <Style x:Key="BulletsAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="BulletsAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Bullets"/>
- <Setter Property="Content" Value="&#xE133;"/>
- </Style>
- <Style x:Key="CommentAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="CommentAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Comment"/>
- <Setter Property="Content" Value="&#xE134;"/>
- </Style>
- <Style x:Key="Mail2AppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="Mail2AppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Mail2"/>
- <Setter Property="Content" Value="&#xE135;"/>
- </Style>
- <Style x:Key="ContactInfoAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="ContactInfoAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Contact Info"/>
- <Setter Property="Content" Value="&#xE136;"/>
- </Style>
- <Style x:Key="HangUpAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="HangUpAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Hang Up"/>
- <Setter Property="Content" Value="&#xE137;"/>
- </Style>
- <Style x:Key="ViewAllAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="ViewAllAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="View All"/>
- <Setter Property="Content" Value="&#xE138;"/>
- </Style>
- <Style x:Key="MapPinAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="MapPinAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Map Pin"/>
- <Setter Property="Content" Value="&#xE139;"/>
- </Style>
- <Style x:Key="PhoneAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="PhoneAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Phone"/>
- <Setter Property="Content" Value="&#xE13A;"/>
- </Style>
- <Style x:Key="VideoChatAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="VideoChatAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Video Chat"/>
- <Setter Property="Content" Value="&#xE13B;"/>
- </Style>
- <Style x:Key="SwitchAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="SwitchAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Switch"/>
- <Setter Property="Content" Value="&#xE13C;"/>
- </Style>
- <Style x:Key="ContactAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="ContactAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Contact"/>
- <Setter Property="Content" Value="&#xE13D;"/>
- </Style>
-
- -->
-
- <!--
-
- <Style x:Key="RenameAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="RenameAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Rename"/>
- <Setter Property="Content" Value="&#xE13E;"/>
- </Style>
- <Style x:Key="PinAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="PinAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Pin"/>
- <Setter Property="Content" Value="&#xE141;"/>
- </Style>
- <Style x:Key="MusicInfoAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="MusicInfoAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Music Info"/>
- <Setter Property="Content" Value="&#xE142;"/>
- </Style>
- <Style x:Key="GoAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="GoAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Go"/>
- <Setter Property="Content" Value="&#xE143;"/>
- </Style>
- <Style x:Key="KeyboardAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="KeyboardAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Keyboard"/>
- <Setter Property="Content" Value="&#xE144;"/>
- </Style>
- <Style x:Key="DockLeftAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="DockLeftAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Dock Left"/>
- <Setter Property="Content" Value="&#xE145;"/>
- </Style>
- <Style x:Key="DockRightAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="DockRightAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Dock Right"/>
- <Setter Property="Content" Value="&#xE146;"/>
- </Style>
- <Style x:Key="DockBottomAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="DockBottomAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Dock Bottom"/>
- <Setter Property="Content" Value="&#xE147;"/>
- </Style>
- <Style x:Key="RemoteAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="RemoteAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Remote"/>
- <Setter Property="Content" Value="&#xE148;"/>
- </Style>
- <Style x:Key="SyncAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="SyncAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Sync"/>
- <Setter Property="Content" Value="&#xE149;"/>
- </Style>
- <Style x:Key="RotateAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="RotateAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Rotate"/>
- <Setter Property="Content" Value="&#xE14A;"/>
- </Style>
- <Style x:Key="ShuffleAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="ShuffleAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Shuffle"/>
- <Setter Property="Content" Value="&#xE14B;"/>
- </Style>
- <Style x:Key="ListAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="ListAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="List"/>
- <Setter Property="Content" Value="&#xE14C;"/>
- </Style>
- <Style x:Key="ShopAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="ShopAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Shop"/>
- <Setter Property="Content" Value="&#xE14D;"/>
- </Style>
- <Style x:Key="SelectAllAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="SelectAllAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Select All"/>
- <Setter Property="Content" Value="&#xE14E;"/>
- </Style>
- <Style x:Key="OrientationAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="OrientationAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Orientation"/>
- <Setter Property="Content" Value="&#xE14F;"/>
- </Style>
- <Style x:Key="ImportAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="ImportAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Import"/>
- <Setter Property="Content" Value="&#xE150;"/>
- </Style>
- <Style x:Key="ImportAllAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="ImportAllAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Import All"/>
- <Setter Property="Content" Value="&#xE151;"/>
- </Style>
- <Style x:Key="BrowsePhotosAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="BrowsePhotosAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Browse Photos"/>
- <Setter Property="Content" Value="&#xE155;"/>
- </Style>
- <Style x:Key="WebcamAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="WebcamAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Webcam"/>
- <Setter Property="Content" Value="&#xE156;"/>
- </Style>
- -->
-
- <!--
- <Style x:Key="PicturesAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="PicturesAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Pictures"/>
- <Setter Property="Content" Value="&#xE158;"/>
- </Style>
- <Style x:Key="SaveLocalAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="SaveLocalAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Save Local"/>
- <Setter Property="Content" Value="&#xE159;"/>
- </Style>
- <Style x:Key="CaptionAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="CaptionAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Caption"/>
- <Setter Property="Content" Value="&#xE15A;"/>
- </Style>
- <Style x:Key="StopAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="StopAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Stop"/>
- <Setter Property="Content" Value="&#xE15B;"/>
- </Style>
- <Style x:Key="ShowResultsAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="ShowResultsAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Show Results"/>
- <Setter Property="Content" Value="&#xE15C;"/>
- </Style>
- <Style x:Key="VolumeAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="VolumeAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Volume"/>
- <Setter Property="Content" Value="&#xE15D;"/>
- </Style>
- <Style x:Key="RepairAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="RepairAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Repair"/>
- <Setter Property="Content" Value="&#xE15E;"/>
- </Style>
- <Style x:Key="MessageAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="MessageAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Message"/>
- <Setter Property="Content" Value="&#xE15F;"/>
- </Style>
- <Style x:Key="Page2AppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="Page2AppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Page2"/>
- <Setter Property="Content" Value="&#xE160;"/>
- </Style>
- <Style x:Key="CalendarDayAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="CalendarDayAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Day"/>
- <Setter Property="Content" Value="&#xE161;"/>
- </Style>
- <Style x:Key="CalendarWeekAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="CalendarWeekAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Week"/>
- <Setter Property="Content" Value="&#xE162;"/>
- </Style>
- <Style x:Key="CalendarAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="CalendarAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Calendar"/>
- <Setter Property="Content" Value="&#xE163;"/>
- </Style>
- <Style x:Key="CharactersAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="CharactersAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Characters"/>
- <Setter Property="Content" Value="&#xE164;"/>
- </Style>
- <Style x:Key="MailReplyAllAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="MailReplyAllAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Reply All"/>
- <Setter Property="Content" Value="&#xE165;"/>
- </Style>
- <Style x:Key="ReadAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="ReadAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Read"/>
- <Setter Property="Content" Value="&#xE166;"/>
- </Style>
- <Style x:Key="LinkAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="LinkAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Link"/>
- <Setter Property="Content" Value="&#xE167;"/>
- </Style>
- <Style x:Key="AccountsAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="AccountsAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Accounts"/>
- <Setter Property="Content" Value="&#xE168;"/>
- </Style>
- <Style x:Key="ShowBccAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="ShowBccAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Show Bcc"/>
- <Setter Property="Content" Value="&#xE169;"/>
- </Style>
- <Style x:Key="HideBccAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="HideBccAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Hide Bcc"/>
- <Setter Property="Content" Value="&#xE16A;"/>
- </Style>
- -->
-
- <!--
- <Style x:Key="CutAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="CutAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Cut"/>
- <Setter Property="Content" Value="&#xE16B;"/>
- </Style>
- <Style x:Key="AttachAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="AttachAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Attach"/>
- <Setter Property="Content" Value="&#xE16C;"/>
- </Style>
- <Style x:Key="PasteAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="PasteAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Paste"/>
- <Setter Property="Content" Value="&#xE16D;"/>
- </Style>
- <Style x:Key="FilterAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="FilterAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Filter"/>
- <Setter Property="Content" Value="&#xE16E;"/>
- </Style>
- <Style x:Key="CopyAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="CopyAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Copy"/>
- <Setter Property="Content" Value="&#xE16F;"/>
- </Style>
- <Style x:Key="Emoji2AppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="Emoji2AppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Emoji2"/>
- <Setter Property="Content" Value="&#xE170;"/>
- </Style>
- <Style x:Key="ImportantAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="ImportantAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Important"/>
- <Setter Property="Content" Value="&#xE171;"/>
- </Style>
- <Style x:Key="MailReplyAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="MailReplyAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Reply"/>
- <Setter Property="Content" Value="&#xE172;"/>
- </Style>
- <Style x:Key="SlideShowAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="SlideShowAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Slideshow"/>
- <Setter Property="Content" Value="&#xE173;"/>
- </Style>
- <Style x:Key="SortAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="SortAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Sort"/>
- <Setter Property="Content" Value="&#xE174;"/>
- </Style>
- <Style x:Key="ManageAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="ManageAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Manage"/>
- <Setter Property="Content" Value="&#xE178;"/>
- </Style>
- <Style x:Key="AllAppsAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="AllAppsAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="All Apps"/>
- <Setter Property="Content" Value="&#xE179;"/>
- </Style>
- <Style x:Key="DisconnectDriveAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="DisconnectDriveAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Disconnect Drive"/>
- <Setter Property="Content" Value="&#xE17A;"/>
- </Style>
- <Style x:Key="MapDriveAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="MapDriveAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Map Drive"/>
- <Setter Property="Content" Value="&#xE17B;"/>
- </Style>
- <Style x:Key="NewWindowAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="NewWindowAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="New Window"/>
- <Setter Property="Content" Value="&#xE17C;"/>
- </Style>
- <Style x:Key="OpenWithAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="OpenWithAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Open With"/>
- <Setter Property="Content" Value="&#xE17D;"/>
- </Style>
- <Style x:Key="ContactPresenceAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="ContactPresenceAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Presence"/>
- <Setter Property="Content" Value="&#xE181;"/>
- </Style>
- <Style x:Key="PriorityAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="PriorityAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Priority"/>
- <Setter Property="Content" Value="&#xE182;"/>
- </Style>
- <Style x:Key="UploadSkyDriveAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="UploadSkyDriveAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Skydrive"/>
- <Setter Property="Content" Value="&#xE183;"/>
- </Style>
- <Style x:Key="GoToTodayAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="GoToTodayAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Today"/>
- <Setter Property="Content" Value="&#xE184;"/>
- </Style>
- <Style x:Key="FontAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="FontAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Font"/>
- <Setter Property="Content" Value="&#xE185;"/>
- </Style>
-
- -->
-
- <!--
-
- <Style x:Key="FontColorAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="FontColorAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Font Color"/>
- <Setter Property="Content" Value="&#xE186;"/>
- </Style>
- <Style x:Key="Contact2AppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="Contact2AppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Contact"/>
- <Setter Property="Content" Value="&#xE187;"/>
- </Style>
- <Style x:Key="FolderppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="FolderAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Folder"/>
- <Setter Property="Content" Value="&#xE188;"/>
- </Style>
- <Style x:Key="AudioAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="AudioAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Audio"/>
- <Setter Property="Content" Value="&#xE189;"/>
- </Style>
- <Style x:Key="PlaceholderAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="PlaceholderAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Placeholder"/>
- <Setter Property="Content" Value="&#xE18A;"/>
- </Style>
- <Style x:Key="ViewAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="ViewAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="View"/>
- <Setter Property="Content" Value="&#xE18B;"/>
- </Style>
- <Style x:Key="SetLockScreenAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="SetLockscreenAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Set Lockscreen"/>
- <Setter Property="Content" Value="&#xE18C;"/>
- </Style>
- <Style x:Key="SetTitleAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="SetTitleAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Set Title"/>
- <Setter Property="Content" Value="&#xE18D;"/>
- </Style>
- <Style x:Key="CcAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="CcAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Cc"/>
- <Setter Property="Content" Value="&#xE190;"/>
- </Style>
- <Style x:Key="StopSlideShowAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="StopSlideshowAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Stop Slideshow"/>
- <Setter Property="Content" Value="&#xE191;"/>
- </Style>
- <Style x:Key="PermissionsAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="PermissionsAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Permisions"/>
- <Setter Property="Content" Value="&#xE192;"/>
- </Style>
- <Style x:Key="HighlightAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="HighlightAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Highlight"/>
- <Setter Property="Content" Value="&#xE193;"/>
- </Style>
- <Style x:Key="DisableUpdatesAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="DisableUpdatesAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Disable Updates"/>
- <Setter Property="Content" Value="&#xE194;"/>
- </Style>
- <Style x:Key="UnfavoriteAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="UnfavoriteAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Unfavorite"/>
- <Setter Property="Content" Value="&#xE195;"/>
- </Style>
- <Style x:Key="UnPinAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="UnPinAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Unpin"/>
- <Setter Property="Content" Value="&#xE196;"/>
- </Style>
- <Style x:Key="OpenLocalAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="OpenLocalAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Open Loal"/>
- <Setter Property="Content" Value="&#xE197;"/>
- </Style>
- <Style x:Key="MuteAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="MuteAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Mute"/>
- <Setter Property="Content" Value="&#xE198;"/>
- </Style>
- <Style x:Key="ItalicAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="ItalicAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Italic"/>
- <Setter Property="Content" Value="&#xE199;"/>
- </Style>
- -->
-
- <!--
- <Style x:Key="UnderlineAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="UnderlineAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Underline"/>
- <Setter Property="Content" Value="&#xE19A;"/>
- </Style>
- <Style x:Key="BoldAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="BoldAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Bold"/>
- <Setter Property="Content" Value="&#xE19B;"/>
- </Style>
- <Style x:Key="MoveToFolderAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="MoveToFolderAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Move to Folder"/>
- <Setter Property="Content" Value="&#xE19C;"/>
- </Style>
- <Style x:Key="LikeDislikeAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="LikeDislikeAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Like/Dislike"/>
- <Setter Property="Content" Value="&#xE19D;"/>
- </Style>
- <Style x:Key="DislikeAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="DislikeAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Dislike"/>
- <Setter Property="Content" Value="&#xE19E;"/>
- </Style>
- <Style x:Key="LikeAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="LikeAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Like"/>
- <Setter Property="Content" Value="&#xE19F;"/>
- </Style>
- <Style x:Key="AlignRightAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="AlignRightAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Align Right"/>
- <Setter Property="Content" Value="&#xE1A0;"/>
- </Style>
- <Style x:Key="AlignCenterAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="AlignCenterAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Align Center"/>
- <Setter Property="Content" Value="&#xE1A1;"/>
- </Style>
- <Style x:Key="AlignLeftAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="AlignLeftAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Align Left"/>
- <Setter Property="Content" Value="&#xE1A2;"/>
- </Style>
- <Style x:Key="ZoomAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="ZoomAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Zoom"/>
- <Setter Property="Content" Value="&#xE1A3;"/>
- </Style>
- <Style x:Key="ZoomOutAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="ZoomOutAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Zoom Out"/>
- <Setter Property="Content" Value="&#xE1A4;"/>
- </Style>
- <Style x:Key="OpenFileAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="OpenFileAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Open File"/>
- <Setter Property="Content" Value="&#xE1A5;"/>
- </Style>
- <Style x:Key="OtherUserAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="OtherUserAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Other User"/>
- <Setter Property="Content" Value="&#xE1A6;"/>
- </Style>
- <Style x:Key="AdminAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="AdminAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Admin"/>
- <Setter Property="Content" Value="&#xE1A7;"/>
- </Style>
- <Style x:Key="StreetAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="StreetAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Street"/>
- <Setter Property="Content" Value="&#xE1C3;"/>
- </Style>
- <Style x:Key="MapAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="MapAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Map"/>
- <Setter Property="Content" Value="&#xE1C4;"/>
- </Style>
- <Style x:Key="ClearSelectionAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="ClearSelectionAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Clear Selection"/>
- <Setter Property="Content" Value="&#xE1C5;"/>
- </Style>
- <Style x:Key="FontDecreaseAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="FontDecreaseAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Decrease Font"/>
- <Setter Property="Content" Value="&#xE1C6;"/>
- </Style>
- <Style x:Key="FontIncreaseAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="FontIncreaseAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Increase Font"/>
- <Setter Property="Content" Value="&#xE1C7;"/>
- </Style>
- <Style x:Key="FontSizeAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="FontSizeAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Font Size"/>
- <Setter Property="Content" Value="&#xE1C8;"/>
- </Style>
- -->
-
- <!--
- <Style x:Key="CellphoneAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="CellphoneAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Cellphone"/>
- <Setter Property="Content" Value="&#xE1C9;"/>
- </Style>
- <Style x:Key="ReshareAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="ReshareAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Reshare"/>
- <Setter Property="Content" Value="&#xE1CA;"/>
- </Style>
- <Style x:Key="TagAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="TagAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Tag"/>
- <Setter Property="Content" Value="&#xE1CB;"/>
- </Style>
- <Style x:Key="RepeatOneAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="RepeatOneAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Repeat Once"/>
- <Setter Property="Content" Value="&#xE1CC;"/>
- </Style>
- <Style x:Key="RepeatAllAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="RepeatAllAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Repeat All"/>
- <Setter Property="Content" Value="&#xE1CD;"/>
- </Style>
- <Style x:Key="OutlineStarAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="OutlineStarAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Outline Star"/>
- <Setter Property="Content" Value="&#xE1CE;"/>
- </Style>
- <Style x:Key="SolidStarAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="SolidStarAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Solid Star"/>
- <Setter Property="Content" Value="&#xE1CF;"/>
- </Style>
- <Style x:Key="CalculatorAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="CalculatorAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Calculator"/>
- <Setter Property="Content" Value="&#xE1D0;"/>
- </Style>
- <Style x:Key="DirectionsAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="DirectionsAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Directions"/>
- <Setter Property="Content" Value="&#xE1D1;"/>
- </Style>
- <Style x:Key="TargetAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="TargetAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Target"/>
- <Setter Property="Content" Value="&#xE1D2;"/>
- </Style>
- <Style x:Key="LibraryAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="LibraryAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Library"/>
- <Setter Property="Content" Value="&#xE1D3;"/>
- </Style>
- <Style x:Key="PhonebookAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="PhonebookAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Phonebook"/>
- <Setter Property="Content" Value="&#xE1D4;"/>
- </Style>
- <Style x:Key="MemoAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="MemoAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Memo"/>
- <Setter Property="Content" Value="&#xE1D5;"/>
- </Style>
- <Style x:Key="MicrophoneAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="MicrophoneAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Microphone"/>
- <Setter Property="Content" Value="&#xE1D6;"/>
- </Style>
- <Style x:Key="PostUpdateAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="PostUpdateAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Post Update"/>
- <Setter Property="Content" Value="&#xE1D7;"/>
- </Style>
- <Style x:Key="BackToWindowAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="BackToWindowAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Back to Window"/>
- <Setter Property="Content" Value="&#xE1D8;"/>
- </Style>
- -->
-
- <!--
- <Style x:Key="FullScreenAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="FullScreenAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Full Screen"/>
- <Setter Property="Content" Value="&#xE1D9;"/>
- </Style>
- <Style x:Key="NewFolderAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="NewFolderAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="New Folder"/>
- <Setter Property="Content" Value="&#xE1DA;"/>
- </Style>
- <Style x:Key="CalendarReplyAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="CalendarReplyAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Calendar Reply"/>
- <Setter Property="Content" Value="&#xE1DB;"/>
- </Style>
- <Style x:Key="UnsyncFolderAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="UnsyncFolderAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Unsync Folder"/>
- <Setter Property="Content" Value="&#xE1DD;"/>
- </Style>
- <Style x:Key="ReportHackedAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="ReportHackedAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Report Hacked"/>
- <Setter Property="Content" Value="&#xE1DE;"/>
- </Style>
- <Style x:Key="SyncFolderAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="SyncFolderAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Sync Folder"/>
- <Setter Property="Content" Value="&#xE1DF;"/>
- </Style>
- <Style x:Key="BlockContactAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="Block ContactAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="BlockContact"/>
- <Setter Property="Content" Value="&#xE1E0;"/>
- </Style>
- <Style x:Key="SwitchAppsAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="SwitchAppsAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Switch Apps"/>
- <Setter Property="Content" Value="&#xE1E1;"/>
- </Style>
- <Style x:Key="AddFriendAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="AddFriendAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Add Friend"/>
- <Setter Property="Content" Value="&#xE1E2;"/>
- </Style>
- <Style x:Key="TouchPointerAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="TouchPointerAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Touch Pointer"/>
- <Setter Property="Content" Value="&#xE1E3;"/>
- </Style>
- <Style x:Key="GoToStartAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="GoToStartAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Go to Start"/>
- <Setter Property="Content" Value="&#xE1E4;"/>
- </Style>
- <Style x:Key="ZeroBarsAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="ZeroBarsAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Zero Bars"/>
- <Setter Property="Content" Value="&#xE1E5;"/>
- </Style>
- <Style x:Key="OneBarAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="OneBarAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="One Bar"/>
- <Setter Property="Content" Value="&#xE1E6;"/>
- </Style>
- <Style x:Key="TwoBarsAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="TwoBarsAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Two Bars"/>
- <Setter Property="Content" Value="&#xE1E7;"/>
- </Style>
- <Style x:Key="ThreeBarsAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="ThreeBarsAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Three Bars"/>
- <Setter Property="Content" Value="&#xE1E8;"/>
- </Style>
- <Style x:Key="FourBarsAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
- <Setter Property="AutomationProperties.AutomationId" Value="FourBarsAppBarButton"/>
- <Setter Property="AutomationProperties.Name" Value="Four Bars"/>
- <Setter Property="Content" Value="&#xE1E9;"/>
- </Style>
-
- -->
-
- <!-- Title area styles -->
-
- <Style x:Key="PageHeaderTextStyle" TargetType="TextBlock" BasedOn="{StaticResource HeaderTextStyle}">
- <Setter Property="TextWrapping" Value="NoWrap"/>
- <Setter Property="VerticalAlignment" Value="Bottom"/>
- <Setter Property="Margin" Value="0,0,30,40"/>
- </Style>
-
- <Style x:Key="PageSubheaderTextStyle" TargetType="TextBlock" BasedOn="{StaticResource SubheaderTextStyle}">
- <Setter Property="TextWrapping" Value="NoWrap"/>
- <Setter Property="VerticalAlignment" Value="Bottom"/>
- <Setter Property="Margin" Value="0,0,0,40"/>
- </Style>
-
- <Style x:Key="SnappedPageHeaderTextStyle" TargetType="TextBlock" BasedOn="{StaticResource PageSubheaderTextStyle}">
- <Setter Property="Margin" Value="0,0,18,40"/>
- </Style>
-
- <!--
- BackButtonStyle is used to style a Button for use in the title area of a page. Margins appropriate for
- the conventional page layout are included as part of the style.
- -->
- <Style x:Key="BackButtonStyle" TargetType="Button">
- <Setter Property="MinWidth" Value="0"/>
- <Setter Property="Width" Value="48"/>
- <Setter Property="Height" Value="48"/>
- <Setter Property="Margin" Value="36,0,36,36"/>
- <Setter Property="VerticalAlignment" Value="Bottom"/>
- <Setter Property="FontFamily" Value="Segoe UI Symbol"/>
- <Setter Property="FontWeight" Value="Normal"/>
- <Setter Property="FontSize" Value="56"/>
- <Setter Property="AutomationProperties.AutomationId" Value="BackButton"/>
- <Setter Property="AutomationProperties.Name" Value="Back"/>
- <Setter Property="AutomationProperties.ItemType" Value="Navigation Button"/>
- <Setter Property="Template">
- <Setter.Value>
- <ControlTemplate TargetType="Button">
- <Grid x:Name="RootGrid">
- <Grid Margin="-1,-16,0,0">
- <TextBlock x:Name="BackgroundGlyph" Text="&#xE0A8;" Foreground="{StaticResource BackButtonBackgroundThemeBrush}"/>
- <TextBlock x:Name="NormalGlyph" Text="{StaticResource BackButtonGlyph}" Foreground="{StaticResource BackButtonForegroundThemeBrush}"/>
- <TextBlock x:Name="ArrowGlyph" Text="&#xE0A6;" Foreground="{StaticResource BackButtonPressedForegroundThemeBrush}" Opacity="0"/>
- </Grid>
- <Rectangle
- x:Name="FocusVisualWhite"
- IsHitTestVisible="False"
- Stroke="{StaticResource FocusVisualWhiteStrokeThemeBrush}"
- StrokeEndLineCap="Square"
- StrokeDashArray="1,1"
- Opacity="0"
- StrokeDashOffset="1.5"/>
- <Rectangle
- x:Name="FocusVisualBlack"
- IsHitTestVisible="False"
- Stroke="{StaticResource FocusVisualBlackStrokeThemeBrush}"
- StrokeEndLineCap="Square"
- StrokeDashArray="1,1"
- Opacity="0"
- StrokeDashOffset="0.5"/>
-
- <VisualStateManager.VisualStateGroups>
- <VisualStateGroup x:Name="CommonStates">
- <VisualState x:Name="Normal" />
- <VisualState x:Name="PointerOver">
- <Storyboard>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="BackgroundGlyph" Storyboard.TargetProperty="Foreground">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource BackButtonPointerOverBackgroundThemeBrush}"/>
- </ObjectAnimationUsingKeyFrames>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="NormalGlyph" Storyboard.TargetProperty="Foreground">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource BackButtonPointerOverForegroundThemeBrush}"/>
- </ObjectAnimationUsingKeyFrames>
- </Storyboard>
- </VisualState>
- <VisualState x:Name="Pressed">
- <Storyboard>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="BackgroundGlyph" Storyboard.TargetProperty="Foreground">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource BackButtonForegroundThemeBrush}"/>
- </ObjectAnimationUsingKeyFrames>
- <DoubleAnimation
- Storyboard.TargetName="ArrowGlyph"
- Storyboard.TargetProperty="Opacity"
- To="1"
- Duration="0"/>
- <DoubleAnimation
- Storyboard.TargetName="NormalGlyph"
- Storyboard.TargetProperty="Opacity"
- To="0"
- Duration="0"/>
- </Storyboard>
- </VisualState>
- <VisualState x:Name="Disabled">
- <Storyboard>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="RootGrid" Storyboard.TargetProperty="Visibility">
- <DiscreteObjectKeyFrame KeyTime="0" Value="Collapsed"/>
- </ObjectAnimationUsingKeyFrames>
- </Storyboard>
- </VisualState>
- </VisualStateGroup>
- <VisualStateGroup x:Name="FocusStates">
- <VisualState x:Name="Focused">
- <Storyboard>
- <DoubleAnimation
- Storyboard.TargetName="FocusVisualWhite"
- Storyboard.TargetProperty="Opacity"
- To="1"
- Duration="0"/>
- <DoubleAnimation
- Storyboard.TargetName="FocusVisualBlack"
- Storyboard.TargetProperty="Opacity"
- To="1"
- Duration="0"/>
- </Storyboard>
- </VisualState>
- <VisualState x:Name="Unfocused" />
- <VisualState x:Name="PointerFocused" />
- </VisualStateGroup>
- </VisualStateManager.VisualStateGroups>
- </Grid>
- </ControlTemplate>
- </Setter.Value>
- </Setter>
- </Style>
-
- <!--
- PortraitBackButtonStyle is used to style a Button for use in the title area of a portrait page. Margins appropriate
- for the conventional page layout are included as part of the style.
- -->
- <Style x:Key="PortraitBackButtonStyle" TargetType="Button" BasedOn="{StaticResource BackButtonStyle}">
- <Setter Property="Margin" Value="26,0,26,36"/>
- </Style>
-
- <!--
- SnappedBackButtonStyle is used to style a Button for use in the title area of a snapped page. Margins appropriate
- for the conventional page layout are included as part of the style.
-
- The obvious duplication here is necessary as the glyphs used in snapped are not merely smaller versions of the same
- glyph but are actually distinct.
- -->
- <Style x:Key="SnappedBackButtonStyle" TargetType="Button">
- <Setter Property="MinWidth" Value="0"/>
- <Setter Property="Margin" Value="20,0,0,0"/>
- <Setter Property="VerticalAlignment" Value="Bottom"/>
- <Setter Property="FontFamily" Value="Segoe UI Symbol"/>
- <Setter Property="FontWeight" Value="Normal"/>
- <Setter Property="FontSize" Value="26.66667"/>
- <Setter Property="AutomationProperties.AutomationId" Value="BackButton"/>
- <Setter Property="AutomationProperties.Name" Value="Back"/>
- <Setter Property="AutomationProperties.ItemType" Value="Navigation Button"/>
- <Setter Property="Template">
- <Setter.Value>
- <ControlTemplate TargetType="Button">
- <Grid x:Name="RootGrid" Width="36" Height="36" Margin="-3,0,7,33">
- <Grid Margin="-1,-1,0,0">
- <TextBlock x:Name="BackgroundGlyph" Text="&#xE0D4;" Foreground="{StaticResource BackButtonBackgroundThemeBrush}"/>
- <TextBlock x:Name="NormalGlyph" Text="{StaticResource BackButtonSnappedGlyph}" Foreground="{StaticResource BackButtonForegroundThemeBrush}"/>
- <TextBlock x:Name="ArrowGlyph" Text="&#xE0C4;" Foreground="{StaticResource BackButtonPressedForegroundThemeBrush}" Opacity="0"/>
- </Grid>
- <Rectangle
- x:Name="FocusVisualWhite"
- IsHitTestVisible="False"
- Stroke="{StaticResource FocusVisualWhiteStrokeThemeBrush}"
- StrokeEndLineCap="Square"
- StrokeDashArray="1,1"
- Opacity="0"
- StrokeDashOffset="1.5"/>
- <Rectangle
- x:Name="FocusVisualBlack"
- IsHitTestVisible="False"
- Stroke="{StaticResource FocusVisualBlackStrokeThemeBrush}"
- StrokeEndLineCap="Square"
- StrokeDashArray="1,1"
- Opacity="0"
- StrokeDashOffset="0.5"/>
-
- <VisualStateManager.VisualStateGroups>
- <VisualStateGroup x:Name="CommonStates">
- <VisualState x:Name="Normal" />
- <VisualState x:Name="PointerOver">
- <Storyboard>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="BackgroundGlyph" Storyboard.TargetProperty="Foreground">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource BackButtonPointerOverBackgroundThemeBrush}"/>
- </ObjectAnimationUsingKeyFrames>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="NormalGlyph" Storyboard.TargetProperty="Foreground">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource BackButtonPointerOverForegroundThemeBrush}"/>
- </ObjectAnimationUsingKeyFrames>
- </Storyboard>
- </VisualState>
- <VisualState x:Name="Pressed">
- <Storyboard>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="BackgroundGlyph" Storyboard.TargetProperty="Foreground">
- <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource BackButtonForegroundThemeBrush}"/>
- </ObjectAnimationUsingKeyFrames>
- <DoubleAnimation
- Storyboard.TargetName="ArrowGlyph"
- Storyboard.TargetProperty="Opacity"
- To="1"
- Duration="0"/>
- <DoubleAnimation
- Storyboard.TargetName="NormalGlyph"
- Storyboard.TargetProperty="Opacity"
- To="0"
- Duration="0"/>
- </Storyboard>
- </VisualState>
- <VisualState x:Name="Disabled">
- <Storyboard>
- <ObjectAnimationUsingKeyFrames Storyboard.TargetName="RootGrid" Storyboard.TargetProperty="Visibility">
- <DiscreteObjectKeyFrame KeyTime="0" Value="Collapsed"/>
- </ObjectAnimationUsingKeyFrames>
- </Storyboard>
- </VisualState>
- </VisualStateGroup>
- <VisualStateGroup x:Name="FocusStates">
- <VisualState x:Name="Focused">
- <Storyboard>
- <DoubleAnimation
- Storyboard.TargetName="FocusVisualWhite"
- Storyboard.TargetProperty="Opacity"
- To="1"
- Duration="0"/>
- <DoubleAnimation
- Storyboard.TargetName="FocusVisualBlack"
- Storyboard.TargetProperty="Opacity"
- To="1"
- Duration="0"/>
- </Storyboard>
- </VisualState>
- <VisualState x:Name="Unfocused" />
- <VisualState x:Name="PointerFocused" />
- </VisualStateGroup>
- </VisualStateManager.VisualStateGroups>
- </Grid>
- </ControlTemplate>
- </Setter.Value>
- </Setter>
- </Style>
-
- <!-- Item templates -->
-
- <!-- Grid-appropriate 250 pixel square item template as seen in the GroupedItemsPage and ItemsPage -->
- <DataTemplate x:Key="Standard250x250ItemTemplate">
- <Grid HorizontalAlignment="Left" Width="250" Height="250">
- <Border Background="{StaticResource ListViewItemPlaceholderBackgroundThemeBrush}">
- <Image Source="{Binding Image}" Stretch="UniformToFill" AutomationProperties.Name="{Binding Title}"/>
- </Border>
- <StackPanel VerticalAlignment="Bottom" Background="{StaticResource ListViewItemOverlayBackgroundThemeBrush}">
- <TextBlock Text="{Binding Title}" Foreground="{StaticResource ListViewItemOverlayForegroundThemeBrush}" Style="{StaticResource TitleTextStyle}" Height="60" Margin="15,0,15,0"/>
- <TextBlock Text="{Binding Subtitle}" Foreground="{StaticResource ListViewItemOverlaySecondaryForegroundThemeBrush}" Style="{StaticResource CaptionTextStyle}" TextWrapping="NoWrap" Margin="15,0,15,10"/>
- </StackPanel>
- </Grid>
- </DataTemplate>
-
- <!-- Grid-appropriate 500 by 130 pixel item template as seen in the GroupDetailPage -->
- <DataTemplate x:Key="Standard500x130ItemTemplate">
- <Grid Height="110" Width="480" Margin="10">
- <Grid.ColumnDefinitions>
- <ColumnDefinition Width="Auto"/>
- <ColumnDefinition Width="*"/>
- </Grid.ColumnDefinitions>
- <Border Background="{StaticResource ListViewItemPlaceholderBackgroundThemeBrush}" Width="110" Height="110">
- <Image Source="{Binding Image}" Stretch="UniformToFill" AutomationProperties.Name="{Binding Title}"/>
- </Border>
- <StackPanel Grid.Column="1" VerticalAlignment="Top" Margin="10,0,0,0">
- <TextBlock Text="{Binding Title}" Style="{StaticResource TitleTextStyle}" TextWrapping="NoWrap"/>
- <TextBlock Text="{Binding Subtitle}" Style="{StaticResource CaptionTextStyle}" TextWrapping="NoWrap"/>
- <TextBlock Text="{Binding Description}" Style="{StaticResource BodyTextStyle}" MaxHeight="60"/>
- </StackPanel>
- </Grid>
- </DataTemplate>
-
- <!-- List-appropriate 130 pixel high item template as seen in the SplitPage -->
- <DataTemplate x:Key="Standard130ItemTemplate">
- <Grid Height="110" Margin="6">
- <Grid.ColumnDefinitions>
- <ColumnDefinition Width="Auto"/>
- <ColumnDefinition Width="*"/>
- </Grid.ColumnDefinitions>
- <Border Background="{StaticResource ListViewItemPlaceholderBackgroundThemeBrush}" Width="110" Height="110">
- <Image Source="{Binding Image}" Stretch="UniformToFill" AutomationProperties.Name="{Binding Title}"/>
- </Border>
- <StackPanel Grid.Column="1" VerticalAlignment="Top" Margin="10,0,0,0">
- <TextBlock Text="{Binding Title}" Style="{StaticResource TitleTextStyle}" TextWrapping="NoWrap"/>
- <TextBlock Text="{Binding Subtitle}" Style="{StaticResource CaptionTextStyle}" TextWrapping="NoWrap"/>
- <TextBlock Text="{Binding Description}" Style="{StaticResource BodyTextStyle}" MaxHeight="60"/>
- </StackPanel>
- </Grid>
- </DataTemplate>
-
- <!--
- List-appropriate 80 pixel high item template as seen in the SplitPage when Filled, and
- the following pages when snapped: GroupedItemsPage, GroupDetailPage, and ItemsPage
- -->
- <DataTemplate x:Key="Standard80ItemTemplate">
- <Grid Margin="6">
- <Grid.ColumnDefinitions>
- <ColumnDefinition Width="Auto"/>
- <ColumnDefinition Width="*"/>
- </Grid.ColumnDefinitions>
- <Border Background="{StaticResource ListViewItemPlaceholderBackgroundThemeBrush}" Width="60" Height="60">
- <Image Source="{Binding Image}" Stretch="UniformToFill"/>
- </Border>
- <StackPanel Grid.Column="1" Margin="10,0,0,0">
- <TextBlock Text="{Binding Title}" Style="{StaticResource ItemTextStyle}" MaxHeight="40"/>
- <TextBlock Text="{Binding Subtitle}" Style="{StaticResource CaptionTextStyle}" TextWrapping="NoWrap"/>
- </StackPanel>
- </Grid>
- </DataTemplate>
-
- <!-- Grid-appropriate 300 by 70 pixel item template as seen in the SearchResultsPage -->
- <DataTemplate x:Key="StandardSmallIcon300x70ItemTemplate">
- <Grid Width="294" Margin="6">
- <Grid.ColumnDefinitions>
- <ColumnDefinition Width="Auto"/>
- <ColumnDefinition Width="*"/>
- </Grid.ColumnDefinitions>
- <Border Background="{StaticResource ListViewItemPlaceholderBackgroundThemeBrush}" Margin="0,0,0,10" Width="40" Height="40">
- <Image Source="{Binding Image}" Stretch="UniformToFill"/>
- </Border>
- <StackPanel Grid.Column="1" Margin="10,-10,0,0">
- <TextBlock Text="{Binding Title}" Style="{StaticResource BodyTextStyle}" TextWrapping="NoWrap"/>
- <TextBlock Text="{Binding Subtitle}" Style="{StaticResource BodyTextStyle}" Foreground="{StaticResource ApplicationSecondaryForegroundThemeBrush}" TextWrapping="NoWrap"/>
- <TextBlock Text="{Binding Description}" Style="{StaticResource BodyTextStyle}" Foreground="{StaticResource ApplicationSecondaryForegroundThemeBrush}" TextWrapping="NoWrap"/>
- </StackPanel>
- </Grid>
- </DataTemplate>
-
- <!-- List-appropriate 70 pixel high item template as seen in the SearchResultsPage when Snapped -->
- <DataTemplate x:Key="StandardSmallIcon70ItemTemplate">
- <Grid Margin="6">
- <Grid.ColumnDefinitions>
- <ColumnDefinition Width="Auto"/>
- <ColumnDefinition Width="*"/>
- </Grid.ColumnDefinitions>
- <Border Background="{StaticResource ListViewItemPlaceholderBackgroundThemeBrush}" Margin="0,0,0,10" Width="40" Height="40">
- <Image Source="{Binding Image}" Stretch="UniformToFill"/>
- </Border>
- <StackPanel Grid.Column="1" Margin="10,-10,0,0">
- <TextBlock Text="{Binding Title}" Style="{StaticResource BodyTextStyle}" TextWrapping="NoWrap"/>
- <TextBlock Text="{Binding Subtitle}" Style="{StaticResource BodyTextStyle}" Foreground="{StaticResource ApplicationSecondaryForegroundThemeBrush}" TextWrapping="NoWrap"/>
- <TextBlock Text="{Binding Description}" Style="{StaticResource BodyTextStyle}" Foreground="{StaticResource ApplicationSecondaryForegroundThemeBrush}" TextWrapping="NoWrap"/>
- </StackPanel>
- </Grid>
- </DataTemplate>
-
- <!--
- 190x130 pixel item template for displaying file previews as seen in the FileOpenPickerPage
- Includes an elaborate tooltip to display title and description text
- -->
- <DataTemplate x:Key="StandardFileWithTooltip190x130ItemTemplate">
- <Grid>
- <Grid Background="{StaticResource ListViewItemPlaceholderBackgroundThemeBrush}">
- <Image
- Source="{Binding Image}"
- Width="190"
- Height="130"
- HorizontalAlignment="Center"
- VerticalAlignment="Center"
- Stretch="Uniform"/>
- </Grid>
- <ToolTipService.Placement>Mouse</ToolTipService.Placement>
- <ToolTipService.ToolTip>
- <ToolTip>
- <ToolTip.Style>
- <Style TargetType="ToolTip">
- <Setter Property="BorderBrush" Value="{StaticResource ToolTipBackgroundThemeBrush}" />
- <Setter Property="Padding" Value="0" />
- </Style>
- </ToolTip.Style>
-
- <Grid Background="{StaticResource ApplicationPageBackgroundThemeBrush}">
- <Grid.ColumnDefinitions>
- <ColumnDefinition Width="Auto"/>
- <ColumnDefinition Width="*"/>
- </Grid.ColumnDefinitions>
-
- <Grid Background="{StaticResource ListViewItemPlaceholderBackgroundThemeBrush}" Margin="20">
- <Image
- Source="{Binding Image}"
- Width="160"
- Height="160"
- HorizontalAlignment="Center"
- VerticalAlignment="Center"
- Stretch="Uniform"/>
- </Grid>
- <StackPanel Width="200" Grid.Column="1" Margin="0,20,20,20">
- <TextBlock Text="{Binding Title}" TextWrapping="NoWrap" Style="{StaticResource BodyTextStyle}"/>
- <TextBlock Text="{Binding Description}" MaxHeight="140" Foreground="{StaticResource ApplicationSecondaryForegroundThemeBrush}" Style="{StaticResource BodyTextStyle}"/>
- </StackPanel>
- </Grid>
- </ToolTip>
- </ToolTipService.ToolTip>
- </Grid>
- </DataTemplate>
-
- <!-- ScrollViewer styles -->
-
- <Style x:Key="HorizontalScrollViewerStyle" TargetType="ScrollViewer">
- <Setter Property="HorizontalScrollBarVisibility" Value="Auto"/>
- <Setter Property="VerticalScrollBarVisibility" Value="Disabled"/>
- <Setter Property="ScrollViewer.HorizontalScrollMode" Value="Enabled" />
- <Setter Property="ScrollViewer.VerticalScrollMode" Value="Disabled" />
- <Setter Property="ScrollViewer.ZoomMode" Value="Disabled" />
- </Style>
-
- <Style x:Key="VerticalScrollViewerStyle" TargetType="ScrollViewer">
- <Setter Property="HorizontalScrollBarVisibility" Value="Disabled"/>
- <Setter Property="VerticalScrollBarVisibility" Value="Auto"/>
- <Setter Property="ScrollViewer.HorizontalScrollMode" Value="Disabled" />
- <Setter Property="ScrollViewer.VerticalScrollMode" Value="Enabled" />
- <Setter Property="ScrollViewer.ZoomMode" Value="Disabled" />
- </Style>
-
- <!-- Page layout roots typically use entrance animations and a theme-appropriate background color -->
-
- <Style x:Key="LayoutRootStyle" TargetType="Panel">
- <Setter Property="Background" Value="{StaticResource ApplicationPageBackgroundThemeBrush}"/>
- <Setter Property="ChildrenTransitions">
- <Setter.Value>
- <TransitionCollection>
- <EntranceThemeTransition/>
- </TransitionCollection>
- </Setter.Value>
- </Setter>
- </Style>
-</ResourceDictionary>
diff --git a/winrt/mupdf_cpp/DocumentPage.cpp b/winrt/mupdf_cpp/DocumentPage.cpp
deleted file mode 100644
index 3ee99dcd..00000000
--- a/winrt/mupdf_cpp/DocumentPage.cpp
+++ /dev/null
@@ -1,15 +0,0 @@
-#include "pch.h"
-#include "DocumentPage.h"
-
-namespace mupdf_cpp
-{
- DocumentPage::DocumentPage(void)
- {
- this->Image = nullptr;
- this->Height = 0;
- this->Width = 0;
- this->Zoom = 1.0;
- this->Content = NOTSET;
- _isPropertyChangedObserved = false;
- }
-}
diff --git a/winrt/mupdf_cpp/DocumentPage.h b/winrt/mupdf_cpp/DocumentPage.h
deleted file mode 100644
index 41c83bc3..00000000
--- a/winrt/mupdf_cpp/DocumentPage.h
+++ /dev/null
@@ -1,195 +0,0 @@
-#pragma once
-
-#include "RectList.h"
-#include <collection.h>
-
-/* Used for binding to the xaml in the scroll view. */
-using namespace Windows::UI::Xaml::Media::Imaging;
-using namespace Windows::UI::Xaml::Controls;
-using namespace Windows::Foundation::Collections;
-using namespace Windows::UI::Xaml::Data;
-
-typedef enum {
- FULL_RESOLUTION = 0,
- THUMBNAIL,
- DUMMY,
- OLD_RESOLUTION,
- NOTSET
-} Page_Content_t;
-
-namespace mupdf_cpp
-{
- // enables data binding with this class
- [Windows::UI::Xaml::Data::Bindable]
- public ref class DocumentPage sealed : Windows::UI::Xaml::Data::INotifyPropertyChanged
- {
- private:
- int height;
- int width;
- double zoom;
- WriteableBitmap^ image;
- Page_Content_t content;
- IVector<RectList^>^ textbox;
- IVector<RectList^>^ linkbox;
- public:
- DocumentPage(void);
-
- /* Note IVector needed for WinRT interface */
- property IVector<RectList^>^ TextBox
- {
- IVector<RectList^>^ get()
- {
- return (textbox);
- }
-
- void set(IVector<RectList^>^ value)
- {
- textbox = value;
- DocumentPage::OnPropertyChanged("TextBox");
- }
- }
-
- property IVector<RectList^>^ LinkBox
- {
- IVector<RectList^>^ get()
- {
- return (linkbox);
- }
-
- void set(IVector<RectList^>^ value)
- {
- linkbox = value;
- DocumentPage::OnPropertyChanged("LinkBox");
- }
- }
-
- property int Content
- {
- int get()
- {
- return ((int) content);
- }
-
- void set(int value)
- {
- if (value > NOTSET)
- {
- throw ref new Platform::InvalidArgumentException();
- }
- content = (Page_Content_t) value;
- }
- }
-
- property int Height
- {
- int get()
- {
- return height;
- }
-
- void set(int value)
- {
- if (value < 0)
- {
- throw ref new Platform::InvalidArgumentException();
- }
- height = value;
- }
- }
-
- property int Width
- {
- int get()
- {
- return width;
- }
-
- void set(int value)
- {
- if (value < 0)
- {
- throw ref new Platform::InvalidArgumentException();
- }
- width = value;
- }
- }
-
- property double Zoom
- {
- double get()
- {
- return zoom;
- }
-
- void set(double value)
- {
- if (value < 0)
- {
- throw ref new Platform::InvalidArgumentException();
- }
- zoom = value;
- }
- }
-
- property WriteableBitmap^ Image
- {
- WriteableBitmap^ get()
- {
- return image;
- }
-
- void set(WriteableBitmap^ value)
- {
- image = value;
- DocumentPage::OnPropertyChanged("Image");
- }
- }
-
- private:
- bool _isPropertyChangedObserved;
- event Windows::UI::Xaml::Data::PropertyChangedEventHandler^ _privatePropertyChanged;
-
- protected:
- /// <summary>
- /// Notifies listeners that a property value has changed.
- /// </summary>
- /// <param name="propertyName">Name of the property used to notify listeners.</param>
- void OnPropertyChanged(String^ propertyName)
- {
- if (_isPropertyChangedObserved)
- {
- PropertyChanged(this, ref new PropertyChangedEventArgs(propertyName));
- }
- }
-
- public:
-
- // in c++, it is not neccessary to include definitions
- // of add, remove, and raise. These definitions have
- // been made explicitly here so that we can check if
- // the event has listeners before firing the event.
- virtual event Windows::UI::Xaml::Data::PropertyChangedEventHandler^ PropertyChanged
- {
- virtual Windows::Foundation::EventRegistrationToken add(Windows::UI::Xaml::Data::PropertyChangedEventHandler^ e)
- {
- _isPropertyChangedObserved = true;
- return _privatePropertyChanged += e;
- }
-
- virtual void remove(Windows::Foundation::EventRegistrationToken t)
- {
- _privatePropertyChanged -= t;
- }
-
- protected:
- virtual void raise(Object^ sender, Windows::UI::Xaml::Data::PropertyChangedEventArgs^ e)
- {
- if (_isPropertyChangedObserved)
- {
- _privatePropertyChanged(sender, e);
- }
- }
- }
-#pragma endregion
- };
-}
diff --git a/winrt/mupdf_cpp/MainPage.xaml b/winrt/mupdf_cpp/MainPage.xaml
deleted file mode 100644
index 22fbe5da..00000000
--- a/winrt/mupdf_cpp/MainPage.xaml
+++ /dev/null
@@ -1,276 +0,0 @@
-<Page
- x:Class="mupdf_cpp.MainPage"
- xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
- xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
- xmlns:local="using:winapp"
- xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
- xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
- mc:Ignorable="d">
-
- <Page.BottomAppBar>
- <AppBar>
- <Grid Margin="38,0,0,0">
- <Grid.ColumnDefinitions>
- <ColumnDefinition Width="*"/>
- <ColumnDefinition Width="Auto"/>
- </Grid.ColumnDefinitions>
- <Slider x:Name="xaml_PageSlider" Minimum="0" Maximum="10" ValueChanged="Slider_ValueChanged" Grid.Column="0" Margin="10,0" VerticalAlignment="Center" />
- <Button x:Name="Find_File" Style="{StaticResource OpenFileAppBarButtonStyle}" Tag="OpenFile" HorizontalAlignment="Right" Grid.Column="1" Click="Picker"/>
- </Grid>
- </AppBar>
- </Page.BottomAppBar>
- <Page.TopAppBar>
- <AppBar x:Name="TopAppBar1" AutomationProperties.Name="Top App Bar" Loaded="topAppBar_Loaded">
- <Grid>
- <Grid.RowDefinitions>
- <RowDefinition Height="Auto"/>
- <RowDefinition Height="Auto"/>
- </Grid.RowDefinitions>
- <StackPanel x:Name="LeftPanel" Orientation="Horizontal" HorizontalAlignment="Left" >
- <TextBox x:Name="FindBox" Width="200" Height="20" Visibility="Collapsed"/>
- <Button x:Name="PrevSearch" Style="{StaticResource PreviousAppBarButtonStyle}" Visibility="Collapsed" Click="SearchPrev"/>
- <Button x:Name="NextSearch" Style="{StaticResource NextAppBarButtonStyle}" Visibility="Collapsed" Click="SearchNext"/>
-
- </StackPanel>
- <StackPanel x:Name="RightPanel" Orientation="Horizontal" HorizontalAlignment="Right">
- <Button x:Name="Search" Style="{StaticResource SearchAppBarButtonStyle}" Tag="Search" Click="Searcher"/>
- <Button x:Name="ZoomIn" Style="{StaticResource ZoomInAppBarButtonStyle}" Tag="ZoomIn" Click="ZoomInPress"/>
- <Button x:Name="ZoomOut" Style="{StaticResource ZoomOutAppBarButtonStyle}" Tag="ZoomOut" Click="ZoomOutPress"/>
- <Button x:Name="Contents" Style="{StaticResource ContentsBarButtonStyle}" Tag="Contents" Click="ContentDisplay"/>
- <Button x:Name="Links" Style="{StaticResource LinksAppBarButtonStyle}" Tag="Links" Click="Linker"/>
- <Button x:Name="Reflow" Style="{StaticResource ReflowAppBarButtonStyle}" Tag="Reflow" Click="Reflower"/>
- </StackPanel>
- </Grid>
- </AppBar>
- </Page.TopAppBar>
-
- <Grid x:Name="xaml_OutsideGrid">
- <Grid.Background>
- <LinearGradientBrush EndPoint="-0.074,-0.068" StartPoint="1.027,1.024">
- <GradientStop Color="Black"/>
- <GradientStop Color="White"/>
- <GradientStop Color="White" Offset="0.919"/>
- <GradientStop Color="#FFCDCDCD" Offset="0.741"/>
- <GradientStop Color="#FF909090" Offset="0.524"/>
- <GradientStop Color="#FF737373" Offset="0.421"/>
- <GradientStop Color="#FF2A2A2A" Offset="0.155"/>
- <GradientStop Color="#FF1A1A1A" Offset="0.097"/>
- <GradientStop Color="#FF040404" Offset="0.018"/>
- <GradientStop Color="#FFB3B3B3" Offset="0.651"/>
- <GradientStop Color="#FF989898" Offset="0.556"/>
- <GradientStop Color="#FF666666" Offset="0.375"/>
- <GradientStop Color="#FF4B4B4B" Offset="0.278"/>
- <GradientStop Color="#FF3A3A3A" Offset="0.215"/>
- </LinearGradientBrush>
- </Grid.Background>
-
- <Grid x:Name="xaml_MainGrid" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" SizeChanged="GridSizeChanged">
- <Canvas x:Name="xaml_zoomCanvas" HorizontalAlignment="Center" VerticalAlignment="Center" ManipulationMode="All" >
- <!-- Horizontal flip view -->
- <FlipView x:Name="xaml_horiz_flipView" SelectionChanged="FlipView_SelectionChanged" VerticalAlignment="Center"
- HorizontalAlignment="Center">
- <FlipView.ItemsPanel>
- <ItemsPanelTemplate>
- <VirtualizingStackPanel Orientation="Horizontal"/>
- </ItemsPanelTemplate>
- </FlipView.ItemsPanel>
- <FlipView.ItemTemplate>
- <DataTemplate>
- <ScrollViewer
- Name="xaml_ScrollView_h"
- ZoomMode="Enabled"
- ViewChanged="ScrollChanged"
- HorizontalScrollMode="Auto"
- VerticalScrollMode="Auto"
- VerticalSnapPointsType="None"
- HorizontalSnapPointsType="None"
- HorizontalScrollBarVisibility="Auto"
- VerticalScrollBarVisibility="Auto"
- MinZoomFactor="0.25"
- MaxZoomFactor="4">
- <Canvas HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Height="{Binding Height}" Width="{Binding Width}">
- <Image Source="{Binding Image}" Width="{Binding Width}" Height="{Binding Height}"
- Stretch="Uniform" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="0"/>
- <!-- After much work, figured out how to have a binding for the rectangles. TextBox and LinkBox are
- a collection that is in the other main collection used for the scroll viewer. It works
- nicely and cleanly once you figure out how to set up all the templates and the bindings -->
- <ItemsControl ItemsSource="{Binding Path=TextBox}">
- <ItemsControl.ItemsPanel>
- <ItemsPanelTemplate>
- <Canvas/>
- </ItemsPanelTemplate>
- </ItemsControl.ItemsPanel>
- <ItemsControl.ItemContainerStyle>
- <Style TargetType="ContentPresenter">
- <Setter Property="Canvas.Left" Value="{Binding Left}"/>
- <Setter Property="Canvas.Top" Value="{Binding Top}"/>
- </Style>
- </ItemsControl.ItemContainerStyle>
- <ItemsControl.ItemTemplate>
- <DataTemplate>
- <Rectangle Tag="{Binding Path=Index}" Width="{Binding Path=Width}" Height="{Binding Path=Height}" Fill="{Binding Path=Color}">
- <Rectangle.RenderTransform>
- <TranslateTransform X="{Binding Path=X}" Y="{Binding Path=Y}"/>
- </Rectangle.RenderTransform>
- </Rectangle>
- </DataTemplate>
- </ItemsControl.ItemTemplate>
- </ItemsControl>
-
- <ItemsControl ItemsSource="{Binding Path=LinkBox}">
- <ItemsControl.ItemsPanel>
- <ItemsPanelTemplate>
- <Canvas/>
- </ItemsPanelTemplate>
- </ItemsControl.ItemsPanel>
- <ItemsControl.ItemContainerStyle>
- <Style TargetType="ContentPresenter">
- <Setter Property="Canvas.Left" Value="{Binding Left}"/>
- <Setter Property="Canvas.Top" Value="{Binding Top}"/>
- </Style>
- </ItemsControl.ItemContainerStyle>
- <ItemsControl.ItemTemplate>
- <DataTemplate>
- <Rectangle Tag="{Binding Path=Index}" Width="{Binding Path=Width}" Height="{Binding Path=Height}" Fill="{Binding Path=Color}" IsTapEnabled="True" Tapped="LinkTapped">
- <Rectangle.RenderTransform>
- <TranslateTransform X="{Binding Path=X}" Y="{Binding Path=Y}"/>
- </Rectangle.RenderTransform>
- </Rectangle>
- </DataTemplate>
- </ItemsControl.ItemTemplate>
- </ItemsControl>
-
- </Canvas>
- </ScrollViewer>
- </DataTemplate>
- </FlipView.ItemTemplate>
- </FlipView>
- <!-- Vertical flip view -->
- <FlipView x:Name="xaml_vert_flipView" SelectionChanged="FlipView_SelectionChanged" VerticalAlignment="Center"
- HorizontalAlignment="Center" IsEnabled="False" Opacity="0">
- <FlipView.ItemsPanel>
- <ItemsPanelTemplate>
- <VirtualizingStackPanel Orientation="Vertical"/>
- </ItemsPanelTemplate>
- </FlipView.ItemsPanel>
- <FlipView.ItemTemplate>
- <DataTemplate>
- <ScrollViewer
- Name="xaml_ScrollView_v"
- ZoomMode="Enabled"
- ViewChanged="ScrollChanged"
- HorizontalScrollMode="Auto"
- VerticalScrollMode="Auto"
- VerticalSnapPointsType="None"
- HorizontalSnapPointsType="None"
- HorizontalScrollBarVisibility="Auto"
- VerticalScrollBarVisibility="Auto"
- MinZoomFactor="0.25"
- MaxZoomFactor="4">
- <Canvas HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Height="{Binding Height}" Width="{Binding Width}">
- <Image Source="{Binding Image}" Width="{Binding Width}" Height="{Binding Height}"
- Stretch="Uniform" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="0"/>
- <ItemsControl ItemsSource="{Binding Path=TextBox}">
- <ItemsControl.ItemsPanel>
- <ItemsPanelTemplate>
- <Canvas/>
- </ItemsPanelTemplate>
- </ItemsControl.ItemsPanel>
- <ItemsControl.ItemContainerStyle>
- <Style TargetType="ContentPresenter">
- <Setter Property="Canvas.Left" Value="{Binding Left}"/>
- <Setter Property="Canvas.Top" Value="{Binding Top}"/>
- </Style>
- </ItemsControl.ItemContainerStyle>
- <ItemsControl.ItemTemplate>
- <DataTemplate>
- <Rectangle Width="{Binding Path=Width}" Height="{Binding Path=Height}" Fill="{Binding Path=Color}" IsTapEnabled="True" Tapped="LinkTapped">
- <Rectangle.RenderTransform>
- <TranslateTransform X="{Binding Path=X}" Y="{Binding Path=Y}"/>
- </Rectangle.RenderTransform>
- </Rectangle>
- </DataTemplate>
- </ItemsControl.ItemTemplate>
- </ItemsControl>
-
- <ItemsControl ItemsSource="{Binding Path=LinkBox}">
- <ItemsControl.ItemsPanel>
- <ItemsPanelTemplate>
- <Canvas/>
- </ItemsPanelTemplate>
- </ItemsControl.ItemsPanel>
- <ItemsControl.ItemContainerStyle>
- <Style TargetType="ContentPresenter">
- <Setter Property="Canvas.Left" Value="{Binding Left}"/>
- <Setter Property="Canvas.Top" Value="{Binding Top}"/>
- </Style>
- </ItemsControl.ItemContainerStyle>
- <ItemsControl.ItemTemplate>
- <DataTemplate>
- <Rectangle Width="{Binding Path=Width}" Height="{Binding Path=Height}" Fill="{Binding Path=Color}">
- <Rectangle.RenderTransform>
- <TranslateTransform X="{Binding Path=X}" Y="{Binding Path=Y}"/>
- </Rectangle.RenderTransform>
- </Rectangle>
- </DataTemplate>
- </ItemsControl.ItemTemplate>
- </ItemsControl>
- </Canvas>
- </ScrollViewer>
- </DataTemplate>
- </FlipView.ItemTemplate>
- </FlipView>
- </Canvas>
- <ListView x:Name="xaml_ListView" Foreground="Black" HorizontalAlignment="Stretch"
- VerticalAlignment="Stretch" Opacity="0" IsItemClickEnabled="True"
- ItemClick="ContentSelected" SelectionMode="Single" IsEnabled="False">
-
- <ListView.ItemTemplate>
- <DataTemplate>
- <StackPanel Margin="5,5,0,0" HorizontalAlignment="Left">
- <TextBlock TextWrapping="Wrap" Text="{Binding StringMargin}" FontFamily="Segoe UI" FontSize="20" />
- </StackPanel>
- </DataTemplate>
- </ListView.ItemTemplate>
-
- <ListView.Background>
- <SolidColorBrush Color="LightGray"></SolidColorBrush>
- </ListView.Background>
- </ListView>
- </Grid>
- <WebView x:Name="xaml_WebView" HorizontalAlignment="Stretch" Width="Auto" Height="Auto"
- VerticalAlignment="Stretch" Visibility="Collapsed"
- ScrollViewer.HorizontalScrollBarVisibility="Visible"
- ScrollViewer.VerticalScrollBarVisibility="Visible"
- ScrollViewer.VerticalScrollMode="Enabled"
- ScrollViewer.HorizontalScrollMode="Enabled"
- ScrollViewer.ZoomMode="Enabled"/>
-
- <StackPanel x:Name="xaml_ProgressStack" Opacity="1" VerticalAlignment="Center" Margin="0,15" HorizontalAlignment="Center" Visibility="Collapsed">
- <Border BorderThickness="5" BorderBrush="Black" >
- <StackPanel Background="LightGray" HorizontalAlignment="Left" Width="756" >
- <TextBlock HorizontalAlignment="Center" Margin="10"
- Text="Text Search Progress" FontSize="20"/>
- <ProgressBar x:Name="xaml_Progress" Margin="5" Height="15"
- IsIndeterminate="False" Maximum="100" VerticalAlignment="Stretch" />
- <Button HorizontalAlignment="Center" VerticalAlignment="Center" Margin="0,10" Click="CancelSearch" Height="39">
- <TextBlock HorizontalAlignment="Center" Text="Cancel"/>
- </Button>
- </StackPanel>
- </Border>
- </StackPanel>
-
- <StackPanel x:Name="xaml_PasswordStack" Opacity="1" VerticalAlignment="Center" HorizontalAlignment="Center" Visibility="Collapsed">
- <Border BorderThickness="5" BorderBrush="Black" >
- <StackPanel Background="LightGray" >
- <TextBlock HorizontalAlignment="Center" Margin="10"
- Text="Password Required" FontSize="20"/>
- <PasswordBox x:Name="xaml_password" Height="35" Width="400" Margin="20"/>
- <Button HorizontalAlignment="Center" VerticalAlignment="Center" Margin="0,10" Click="PasswordOK" Height="39">
- <TextBlock HorizontalAlignment="Center" Text="OK"/>
- </Button>
- </StackPanel>
- </Border>
- </StackPanel>
- </Grid>
-</Page>
diff --git a/winrt/mupdf_cpp/MainPage.xaml.cpp b/winrt/mupdf_cpp/MainPage.xaml.cpp
deleted file mode 100644
index d31c2b94..00000000
--- a/winrt/mupdf_cpp/MainPage.xaml.cpp
+++ /dev/null
@@ -1,1479 +0,0 @@
-//
-// MainPage.xaml.cpp
-// Implementation of the MainPage class.
-//
-
-#include "pch.h"
-#include "MainPage.xaml.h"
-
-#define LOOK_AHEAD 0 /* A +/- count on the pages to pre-render */
-#define THUMB_PREADD 10
-#define MIN_SCALE 0.5
-
-#define SCALE_THUMB 0.1
-
-#define BLANK_WIDTH 17
-#define BLANK_HEIGHT 22
-
-#define KEYBOARD_ZOOM_STEP 0.25
-#define ZOOM_MAX 4
-#define ZOOM_MIN 0.25
-
-#define KEY_PLUS 0xbb
-#define KEY_MINUS 0xbd
-#define ZOOM_IN 0
-#define ZOOM_OUT 1
-
-static float screenScale = 1;
-
-using namespace mupdf_cpp;
-using namespace Windows::Foundation;
-using namespace Windows::UI::Xaml;
-using namespace Windows::UI::Xaml::Controls;
-using namespace Windows::UI::Xaml::Controls::Primitives;
-using namespace Windows::UI::Xaml::Data;
-using namespace Windows::UI::Xaml::Media;
-using namespace Windows::UI::Xaml::Navigation;
-using namespace Windows::Graphics::Display;
-
-//****************** Added *****************
-using namespace Windows::Storage::Pickers;
-using namespace Windows::Devices::Enumeration;
-using namespace concurrency;
-using namespace Windows::Graphics::Imaging;
-//****************** End Add ****************
-
-#ifndef NDEBUG
-unsigned int _mainThreadId = 0U;
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
- // The IsMainThread function returns true if the current thread is the app's main thread and false otherwise.
- bool IsMainThread()
- {
- return (_mainThreadId == GetCurrentThreadId());
- }
-
- // The IsBackgroundThread function returns false if the current thread is the app's main thread and true otherwise.
- bool IsBackgroundThread()
- {
- return (_mainThreadId != GetCurrentThreadId());
- }
-
- // The RecordMainThread function registers the main thread ID for use by the IsMainThread and IsBackgroundThread functions.
- void RecordMainThread()
- {
- _mainThreadId = GetCurrentThreadId();
- }
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* not NDEBUG */
-
-mupdf_cpp::MainPage::MainPage()
-{
- InitializeComponent();
- Application::Current->Suspending +=
- ref new SuspendingEventHandler(this, &MainPage::App_Suspending);
- m_textcolor="#402572AC";
- m_linkcolor="#40AC7225";
- mu_doc = nullptr;
- m_docPages = ref new Platform::Collections::Vector<DocumentPage^>();
- m_thumbnails = ref new Platform::Collections::Vector<DocumentPage^>();
- m_page_link_list = ref new Platform::Collections::Vector<IVector<RectList^>^>();
- m_text_list = ref new Platform::Collections::Vector<RectList^>();
- m_linkset = ref new Platform::Collections::Vector<int>();
- CleanUp();
- RecordMainThread();
- /* So that we can catch special loading events (e.g. open with) */
- _pageLoadedHandlerToken = Loaded += ref new RoutedEventHandler(this, &MainPage::Page_Loaded);
-}
-
-/* Used during launch of application from file */
-void MainPage::Page_Loaded(Object^ sender, RoutedEventArgs^ e)
-{
- MainPage^ rootPage = dynamic_cast<MainPage^>(sender);
- if (rootPage->FileEvent != nullptr)
- {
- /* Launched with an "open with", or as default app */
- if (rootPage->FileEvent->Files->Size > 0)
- {
- IStorageItem ^file = rootPage->FileEvent->Files->GetAt(0);
- StorageFile ^sfile = safe_cast<StorageFile^>(file);
-
- OpenDocumentPrep(sfile);
- }
- }
-}
-
-/// <summary>
-/// Invoked when this page is about to be displayed in a Frame.
-/// </summary>
-/// <param name="e">Event data that describes how this page was reached. The Parameter
-/// property is typically used to configure the page.</param>
-void MainPage::OnNavigatedTo(NavigationEventArgs^ e)
-{
-
-}
-
-void mupdf_cpp::MainPage::App_Suspending(Object^ sender, SuspendingEventArgs^ e)
-{
-
-}
-
-void mupdf_cpp::MainPage::ExitInvokedHandler(Windows::UI::Popups::IUICommand^ command)
-{
-
-}
-
-void mupdf_cpp::MainPage::OKInvokedHandler(Windows::UI::Popups::IUICommand^ command)
-{
-
-}
-
-void mupdf_cpp::MainPage::NotifyUser(String^ strMessage, NotifyType_t type)
-{
- MessageDialog^ msg = ref new MessageDialog(strMessage);
- UICommand^ ExitCommand = nullptr;
- UICommand^ OKCommand = nullptr;
-
- switch (type)
- {
- case StatusMessage:
- OKCommand = ref new UICommand("OK",
- ref new UICommandInvokedHandler(this, &mupdf_cpp::MainPage::OKInvokedHandler));
- msg->Commands->Append(OKCommand);
- /// Set the command that will be invoked by default
- msg->DefaultCommandIndex = 0;
- // Set the command to be invoked when escape is pressed
- msg->CancelCommandIndex = 1;
- break;
- case ErrorMessage:
- ExitCommand = ref new UICommand("Exit",
- ref new UICommandInvokedHandler(this, &mupdf_cpp::MainPage::ExitInvokedHandler));
- msg->Commands->Append(ExitCommand);
- /// Set the command that will be invoked by default
- msg->DefaultCommandIndex = 0;
- // Set the command to be invoked when escape is pressed
- msg->CancelCommandIndex = 1;
- break;
- default:
- break;
- }
- // Show the message dialog
- msg->ShowAsync();
-}
-
-bool mupdf_cpp::MainPage::EnsureUnsnapped()
-{
- // FilePicker APIs will not work if the application is in a snapped state.
- // If an app wants to show a FilePicker while snapped, it must attempt to unsnap first
-
- bool unsnapped = (ApplicationView::Value != ApplicationViewState::Snapped ||
- ApplicationView::TryUnsnap());
- if (!unsnapped)
- {
- NotifyUser("Cannot unsnap the application", StatusMessage);
- }
- return unsnapped;
-}
-
-void mupdf_cpp::MainPage::Picker(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)
-{
- if (!EnsureUnsnapped())
- return;
-
- FileOpenPicker^ openPicker = ref new FileOpenPicker();
- openPicker->ViewMode = PickerViewMode::List;
- openPicker->SuggestedStartLocation = PickerLocationId::DocumentsLibrary;
- openPicker->FileTypeFilter->Append(".pdf");
- openPicker->FileTypeFilter->Append(".xps");
- openPicker->FileTypeFilter->Append(".cbz");
- openPicker->FileTypeFilter->Append(".oxps");
-
- create_task(openPicker->PickSingleFileAsync()).then([this](StorageFile^ file)
- {
- if (file)
- {
- this->OpenDocumentPrep(file);
- }
- else
- {
- /* Nothing selected */
- }
- });
-}
-
-/* Set the page with the new raster information */
-void MainPage::UpdatePage(int page_num, InMemoryRandomAccessStream^ ras,
- Point ras_size, Page_Content_t content_type)
-{
- assert(IsMainThread());
-
- WriteableBitmap ^bmp = ref new WriteableBitmap(ras_size.X, ras_size.Y);
- bmp->SetSource(ras);
-
- DocumentPage^ doc_page = ref new DocumentPage();
- doc_page->Image = bmp;
-
- if (content_type == THUMBNAIL)
- {
- doc_page->Height = ras_size.Y / SCALE_THUMB;
- doc_page->Width = ras_size.X / SCALE_THUMB;
- }
- else
- {
- doc_page->Height = ras_size.Y;
- doc_page->Width = ras_size.X;
- }
- doc_page->Content = content_type;
-
- /* We do not want flipview change notification to occur for ourselves */
- m_page_update = true;
- this->m_docPages->SetAt(page_num, doc_page);
- m_page_update = false;
-}
-
-/* Set the page with the new raster information but only the image data */
-void MainPage::ReplaceImage(int page_num, InMemoryRandomAccessStream^ ras,
- Point ras_size)
-{
- assert(IsMainThread());
-
- WriteableBitmap ^bmp = ref new WriteableBitmap(ras_size.X, ras_size.Y);
- bmp->SetSource(ras);
-
- DocumentPage^ doc_page = this->m_docPages->GetAt(page_num);
- doc_page->Image = bmp;
-
- doc_page->Height = ras_size.Y;
- doc_page->Width = ras_size.X;
-}
-
-Point MainPage::ComputePageSize(spatial_info_t spatial_info, int page_num)
-{
- Point screenSize;
- Point pageSize;
- Point size = mu_doc->GetPageSize(page_num);
-
- screenSize = spatial_info.size;
- screenSize.Y *= screenScale;
- screenSize.X *= screenScale;
-
- float hscale = screenSize.X / size.X;
- float vscale = screenSize.Y / size.Y;
- float scale = min(hscale, vscale);
- pageSize.X = size.X * scale * spatial_info.scale_factor;
- pageSize.Y = size.Y * scale * spatial_info.scale_factor;
-
- return pageSize;
-}
-
-static Point fitPageToScreen(Point page, Point screen)
-{
- Point pageSize;
-
- float hscale = screen.X / page.X;
- float vscale = screen.Y / page.Y;
- float scale = min(hscale, vscale);
- pageSize.X = floorf(page.X * scale) / page.X;
- pageSize.Y = floorf(page.Y * scale) / page.Y;
-
- return pageSize;
-}
-
-spatial_info_t MainPage::InitSpatial(double scale)
-{
- spatial_info_t value;
-
- value.size.Y = this->ActualHeight;
- value.size.X = this->ActualWidth;
- value.scale_factor = scale;
-
- return value;
-}
-
-void Prepare_bmp(int width, int height, DataWriter ^dw)
-{
- int row_size = width * 4;
- int bmp_size = row_size * height + 54;
-
- dw->WriteString("BM");
- dw->ByteOrder = ByteOrder::LittleEndian;
- dw->WriteInt32(bmp_size);
- dw->WriteInt16(0);
- dw->WriteInt16(0);
- dw->WriteInt32(54);
- dw->WriteInt32(40);
- dw->WriteInt32(width);
- dw->WriteInt32(height);
- dw->WriteInt16(1);
- dw->WriteInt16(32);
- dw->WriteInt32(0);
- dw->WriteInt32(row_size * height);
- dw->WriteInt32(2835);
- dw->WriteInt32(2835);
- dw->WriteInt32(0);
- dw->WriteInt32(0);
-}
-
-void MainPage::ReleasePages(int old_page, int new_page)
-{
- if (old_page == new_page) return;
- /* To keep from having memory issue reset the page back to
- the thumb if we are done rendering the thumbnails */
- for (int k = old_page - LOOK_AHEAD; k <= old_page + LOOK_AHEAD; k++)
- {
- if (k < new_page - LOOK_AHEAD || k > new_page + LOOK_AHEAD)
- {
- if (k >= 0 && k < this->m_num_pages)
- {
- SetThumb(k, true);
- }
- }
- }
-}
-
-/* Return this page from a full res image to the thumb image or only set
- to thumb if it has not already been set */
-void MainPage::SetThumb(int page_num, bool replace)
-{
- /* See what is there now */
- auto doc = this->m_docPages->GetAt(page_num);
- if (doc->Content == THUMBNAIL) return;
- if (doc->Content == FULL_RESOLUTION && replace == false) return;
-
- if (this->m_thumbnails->Size > page_num)
- {
- m_page_update = true;
- this->m_docPages->SetAt(page_num, this->m_thumbnails->GetAt(page_num));
- m_page_update = false;
- }
-}
-
-/* Create white image for us to use as place holder in large document for flip
- view filling instead of the thumbnail image */
-void MainPage::CreateBlank(int width, int height)
-{
- Array<unsigned char>^ bmp_data = ref new Array<unsigned char>(height * 4 * width);
- /* Set up the memory stream */
- WriteableBitmap ^bmp = ref new WriteableBitmap(width, height);
- InMemoryRandomAccessStream ^ras = ref new InMemoryRandomAccessStream();
- DataWriter ^dw = ref new DataWriter(ras->GetOutputStreamAt(0));
- /* Go ahead and write our header data into the memory stream */
- Prepare_bmp(width, height, dw);
-
- /* Set the data to all white */
- memset(bmp_data->Data, 255, height * 4 * width);
-
- /* Write the data */
- dw->WriteBytes(bmp_data);
-
- DataWriterStoreOperation^ result = dw->StoreAsync();
- /* Block on the Async call */
- while(result->Status != AsyncStatus::Completed) {
- }
- /* And store in a the image brush */
- bmp->SetSource(ras);
- m_BlankBmp = bmp;
-}
-
-void mupdf_cpp::MainPage::SetFlipView()
-{
- int height = this->ActualHeight;
- int width = this->ActualWidth;
-
- CreateBlank(BLANK_WIDTH, BLANK_HEIGHT);
- /* Set the current flip view mode */
- if (height > width)
- this->m_curr_flipView = xaml_vert_flipView;
- else
- this->m_curr_flipView = xaml_horiz_flipView;
-}
-
-/* Clean up everything as we are opening a new document after having another
- one open */
-void mupdf_cpp::MainPage::CleanUp()
-{
- m_init_done = false;
- /* Remove current pages in the flipviews */
- if (m_docPages != nullptr && m_docPages->Size > 0)
- m_docPages->Clear();
- if (m_thumbnails != nullptr && m_thumbnails->Size > 0)
- m_thumbnails->Clear();
- /* With the ref counting this should not leak */
- if (m_page_link_list != nullptr && m_page_link_list->Size > 0)
- m_page_link_list->Clear();
- if (m_text_list->Size > 0)
- m_text_list->Clear();
- if (m_linkset != nullptr && m_linkset->Size > 0)
- m_linkset->Clear();
-
- if (this->mu_doc != nullptr)
- mu_doc->CleanUp();
-
- mu_doc = ref new mudocument();
- if (mu_doc == nullptr)
- throw ref new FailureException("Document allocation failed!");
-
- this->m_curr_flipView = nullptr;
- m_currpage = -1;
- m_file_open = false;
- m_slider_min = 0;
- m_slider_max = 0;
- m_memory_use = 0;
- m_insearch = false;
- m_search_active = false;
- m_sliderchange = false;
- m_flip_from_searchlink = false;
- m_num_pages = -1;
- m_search_rect_count = 0;
- m_ren_status = REN_AVAILABLE;
- m_links_on = false;
- m_rectlist_page = -1;
- m_Progress = 0.0;
-
- this->xaml_PageSlider->Minimum = m_slider_min;
- this->xaml_PageSlider->Maximum = m_slider_max;
- this->xaml_PageSlider->IsEnabled = false;
-}
-
-/* Create the thumbnail images */
-void mupdf_cpp::MainPage::RenderThumbs()
-{
- spatial_info_t spatial_info = this->InitSpatial(1);
- int num_pages = this->m_num_pages;
- cancellation_token_source cts;
- auto token = cts.get_token();
- m_ThumbCancel = cts;
- auto ui = task_continuation_context::use_current();
-
- this->m_ren_status = REN_THUMBS;
- Vector<DocumentPage^>^ thumbnails = m_thumbnails;
- auto task_thumb = create_task([spatial_info, num_pages, thumbnails, this, ui, token]()-> int
- {
- spatial_info_t spatial_info_local = spatial_info;
- spatial_info_local.scale_factor = SCALE_THUMB;
-
- for (int k = 0; k < num_pages; k++)
- {
- Point ras_size = ComputePageSize(spatial_info_local, k);
- auto task2 = create_task(mu_doc->RenderPageAsync(k, ras_size.X, ras_size.Y, false));
-
- task2.then([this, k, thumbnails, ras_size](InMemoryRandomAccessStream^ ras)
- {
- assert(IsMainThread());
- WriteableBitmap ^bmp = ref new WriteableBitmap(ras_size.X, ras_size.Y);
- bmp->SetSource(ras);
- DocumentPage^ doc_page = ref new DocumentPage();
- doc_page->Image = bmp;
- doc_page->Height = ras_size.Y / SCALE_THUMB;
- doc_page->Width = ras_size.X / SCALE_THUMB;
- doc_page->Content = THUMBNAIL;
- doc_page->TextBox = nullptr;
- doc_page->LinkBox = nullptr;
- if (m_init_done)
- {
- m_thumbnails->SetAt(k, doc_page); /* This avoids out of order returns from task */
- if (k < THUMB_PREADD) /* Flip view gets overwhelmed if I don't do this */
- SetThumb(k, false);
- }
- }, ui).then([this] (task<void> t)
- {
- try
- {
- t.get();
- }
- catch(Platform::InvalidArgumentException^ e)
- {
- //TODO handle error.
- }
- }, token); //end task chain */
-
- /* If cancelled then save the last one as the continuation will not
- have occured. */
- if (is_task_cancellation_requested())
- {
- cancel_current_task();
- }
- }
- return num_pages; /* all done with thumbnails! */
- }, token).then([this](task<int> the_task)
- {
- /* Finish adding them, but not if we were cancelled. */
- bool is_cancelled = false;
- try
- {
- the_task.get();
- }
- catch (const task_canceled& e)
- {
- (void) e; // Unused parameter
- is_cancelled = true;
- }
- if (!is_cancelled)
- {
- for (int k = THUMB_PREADD; k < m_num_pages; k++)
- SetThumb(k, false);
- }
- this->m_ren_status = REN_AVAILABLE;
- }, task_continuation_context::use_current());
-
-}
-
-void mupdf_cpp::MainPage::OpenDocumentPrep(StorageFile^ file)
-{
- if (this->m_num_pages != -1)
- {
- m_init_done = false;
-
- /* Set the index to the start of the document */
- this->xaml_vert_flipView->SelectedIndex = 0;
- this->xaml_horiz_flipView->SelectedIndex = 0;
-
- /* If the thumbnail thread is running then we need to end that first */
- RenderingStatus_t *ren_status = &m_ren_status;
- cancellation_token_source *ThumbCancel = &m_ThumbCancel;
-
- /* Create a task to wait until the renderer is available, then clean up then open */
- auto t = create_task([ren_status, ThumbCancel]()->int
- {
- if (*ren_status == REN_THUMBS)
- ThumbCancel->cancel();
- while (*ren_status != REN_AVAILABLE) {
- }
- return 0;
- }).then([this](task<int> the_task)
- {
- CleanUp();
- return 0;
- }, task_continuation_context::use_current()).then([this, file](task<int> the_task)
- {
- OpenDocument(file);
- }, task_continuation_context::use_current());
- }
- else
- {
- OpenDocument(file);
- }
-}
-
-void mupdf_cpp::MainPage::OpenDocument(StorageFile^ file)
-{
- this->SetFlipView();
-
- /* Open document and when open, push on */
- auto open_task = create_task(mu_doc->OpenFileAsync(file));
- open_task.then([this](int code) -> int
- {
- assert(IsMainThread());
- if (code != S_ISOK)
- {
- return code;
- }
- /* We need to check if password is required */
- if (mu_doc->RequiresPassword())
- {
- xaml_PasswordStack->Visibility = Windows::UI::Xaml::Visibility::Visible;
- return E_NEEDPASSWORD;
- }
- else
- {
- xaml_PasswordStack->Visibility = Windows::UI::Xaml::Visibility::Collapsed;
- return S_ISOK;
- }
- }).then([this](int code)->int
- {
- assert(IsMainThread());
- if (code == S_ISOK)
- InitialRender();
- return code;
- }, task_continuation_context::use_current()).then([this](int code)
- {
- if (code == S_ISOK)
- RenderThumbs();
- else
- {
- if (code != E_NEEDPASSWORD)
- {
- NotifyUser("Sorry, an issue was encountered in opening file",
- StatusMessage);
- }
- }
- }, task_continuation_context::use_current());
-}
-
-void mupdf_cpp::MainPage::InitialRender()
-{
- assert(IsMainThread());
- m_num_pages = mu_doc->GetNumPages();
-
- if ((m_currpage) >= m_num_pages)
- {
- m_currpage = m_num_pages - 1;
- }
- else if (m_currpage < 0)
- {
- m_currpage = 0;
- }
-
- /* Initialize all the flipvew items with blanks and the thumbnails. */
- for (int k = 0; k < m_num_pages; k++)
- {
- /* Blank pages */
- DocumentPage^ doc_page = ref new DocumentPage();
- doc_page->Image = m_BlankBmp;
- doc_page->Height = BLANK_HEIGHT;
- doc_page->Width = BLANK_WIDTH;
- doc_page->Content = DUMMY;
- doc_page->TextBox = nullptr;
- doc_page->LinkBox = nullptr;
- m_docPages->Append(doc_page);
- m_thumbnails->Append(doc_page);
- /* Create empty lists for our links and specify that they have
- not been computed for these pages */
- Vector<RectList^>^ temp_link = ref new Vector<RectList^>();
- m_page_link_list->Append(temp_link);
- m_linkset->Append(false);
- }
-
- this->xaml_horiz_flipView->ItemsSource = m_docPages;
- this->xaml_vert_flipView->ItemsSource = m_docPages;
-
- /* Do the first few pages, then start the thumbs */
- spatial_info_t spatial_info = InitSpatial(1);
- for (int k = 0; k < LOOK_AHEAD + 2; k++)
- {
- if (m_num_pages > k )
- {
- Point ras_size = ComputePageSize(spatial_info, k);
-
- auto render_task =
- create_task(mu_doc->RenderPageAsync(k, ras_size.X, ras_size.Y, true));
-
- render_task.then([this, k, ras_size] (InMemoryRandomAccessStream^ ras)
- {
- UpdatePage(k, ras, ras_size, FULL_RESOLUTION);
- }, task_continuation_context::use_current());
- }
- }
-
- /* Update the slider settings, if more than one page */
- if (m_num_pages > 1)
- {
- this->xaml_PageSlider->Maximum = m_num_pages;
- this->xaml_PageSlider->Minimum = 1;
- this->xaml_PageSlider->IsEnabled = true;
- }
- else
- {
- this->xaml_PageSlider->Maximum = 0;
- this->xaml_PageSlider->Minimum = 0;
- this->xaml_PageSlider->IsEnabled = false;
- }
-
- /* All done with initial pages */
- this->m_init_done = true;
-}
-
-void mupdf_cpp::MainPage::RenderRange(int curr_page)
-{
- /* Render +/- the look ahead from where we are if blank page is present */
- spatial_info_t spatial_info = InitSpatial(1);
- bool curr_page_rendered = true;
- int range = LOOK_AHEAD;
-
- assert(IsMainThread());
- if (m_flip_from_searchlink)
- range = 0;
- for (int k = curr_page - LOOK_AHEAD; k <= curr_page + LOOK_AHEAD; k++)
- {
- if (k >= 0 && k < m_num_pages)
- {
- /* Check if page is already rendered */
- auto doc = this->m_docPages->GetAt(k);
- if (doc->Content != FULL_RESOLUTION)
- {
- Point ras_size = ComputePageSize(spatial_info, k);
- auto render_task =
- create_task(mu_doc->RenderPageAsync(k, ras_size.X, ras_size.Y, true));
-
- render_task.then([this, k, ras_size] (InMemoryRandomAccessStream^ ras)
- {
- UpdatePage(k, ras, ras_size, FULL_RESOLUTION);
- }, task_continuation_context::use_current()).then([this, k, curr_page]()
- {
- if (k == curr_page && this->m_links_on)
- AddLinkCanvas();
- if (k == curr_page && this->m_text_list->Size > 0 &&
- m_flip_from_searchlink)
- {
- AddTextCanvas();
- m_flip_from_searchlink = false;
- }
- },task_continuation_context::use_current());
- }
- else
- {
- /* We did not need to render the curr_page, so add links below if
- needed. Otherwise, we need to wait for the task above to
- complete before we add the links. */
- if (k == curr_page)
- curr_page_rendered = false;
- }
- }
- }
- m_currpage = curr_page;
- if (this->m_links_on && !curr_page_rendered)
- AddLinkCanvas();
- if (this->m_text_list->Size > 0 && !curr_page_rendered && m_flip_from_searchlink)
- {
- AddTextCanvas();
- m_flip_from_searchlink = false;
- }
-}
-
-void mupdf_cpp::MainPage::Slider_ValueChanged(Platform::Object^ sender, Windows::UI::Xaml::Controls::Primitives::RangeBaseValueChangedEventArgs^ e)
-{
- int newValue = (int) this->xaml_PageSlider->Value - 1; /* zero based */
-
- if (IsNotStandardView())
- return;
-
- if (m_update_flip)
- {
- m_update_flip = false;
- return;
- }
- if (m_init_done && this->xaml_PageSlider->IsEnabled)
- {
- /* Make sure to clear any text search */
- auto doc_old = this->m_docPages->GetAt(m_currpage);
- doc_old->TextBox = nullptr;
-
- auto doc = this->m_docPages->GetAt(newValue);
- if (doc->Content != FULL_RESOLUTION)
- {
- spatial_info_t spatial_info = InitSpatial(1);
- Point ras_size = ComputePageSize(spatial_info, newValue);
- auto render_task =
- create_task(mu_doc->RenderPageAsync(newValue, ras_size.X, ras_size.Y, true));
-
- render_task.then([this, newValue, ras_size] (InMemoryRandomAccessStream^ ras)
- {
- UpdatePage(newValue, ras, ras_size, FULL_RESOLUTION);
- this->m_currpage = newValue;
- m_sliderchange = true;
- this->m_curr_flipView->SelectedIndex = newValue;
- }, task_continuation_context::use_current());
- }
- else
- {
- this->m_curr_flipView->SelectedIndex = newValue;
- }
- }
-}
-
-void mupdf_cpp::MainPage::FlipView_SelectionChanged(Object^ sender, SelectionChangedEventArgs^ e)
-{
- if (m_init_done && !m_page_update)
- {
- int pos = this->m_curr_flipView->SelectedIndex;
-
- if (pos >= 0)
- {
- m_update_flip = true;
- if (xaml_PageSlider->IsEnabled)
- {
- xaml_PageSlider->Value = pos;
- }
- if (m_sliderchange)
- {
- m_sliderchange = false;
- return;
- }
- else
- {
- /* Make sure to clear any text search */
- auto doc_old = this->m_docPages->GetAt(m_currpage);
- doc_old->TextBox = nullptr;
- }
- /* Get the current page */
- int curr_page = this->m_currpage;
- this->RenderRange(pos);
- this->ReleasePages(curr_page, pos);
- }
- }
-}
-
-/* Search Related Code */
-void mupdf_cpp::MainPage::Searcher(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)
-{
- ShowSearchBox();
- UpdateAppBarButtonViewState();
-}
-
-void mupdf_cpp::MainPage::ShowSearchBox()
-{
- /* Update the app bar so that we can do the search */
- StackPanel^ leftPanel = (StackPanel^) this->TopAppBar->FindName("LeftPanel");
-
- if (leftPanel != nullptr && m_insearch)
- {
- m_insearch = false;
- FindBox->Visibility = Windows::UI::Xaml::Visibility::Collapsed;
- PrevSearch->Visibility = Windows::UI::Xaml::Visibility::Collapsed;
- NextSearch->Visibility = Windows::UI::Xaml::Visibility::Collapsed;
- }
- else if (leftPanel != nullptr && !m_insearch)
- {
- /* Search is not going to work in snapped view for now to simplify UI
- in this cramped case. So see if we can get out of snapped mode. */
- if (!EnsureUnsnapped())
- return;
-
- m_insearch = true;
- FindBox->Visibility = Windows::UI::Xaml::Visibility::Visible;
- PrevSearch->Visibility = Windows::UI::Xaml::Visibility::Visible;
- NextSearch->Visibility = Windows::UI::Xaml::Visibility::Visible;
- }
-}
-
-void mupdf_cpp::MainPage::ClearTextSearch()
-{
- /* Clear out any old search result */
- if (m_text_list->Size > 0)
- m_text_list->Clear();
-}
-
-void mupdf_cpp::MainPage::ShowSearchResults(int page_num, int box_count)
-{
- int old_page = this->m_currpage;
- int new_page = page_num;
-
- ClearTextSearch();
-
- /* Compute any scalings */
- Point screenSize;
- Point pageSize;
- Point scale;
-
- screenSize.Y = this->ActualHeight;
- screenSize.X = this->ActualWidth;
- screenSize.X *= screenScale;
- screenSize.Y *= screenScale;
- pageSize = mu_doc->GetPageSize(m_currpage);
- scale = fitPageToScreen(pageSize, screenSize);
- auto doc_page = this->m_docPages->GetAt(old_page);
-
- /* Construct our list of rectangles */
- for (int k = 0; k < box_count; k++)
- {
- RectList^ rect_item = ref new RectList();
- auto curr_box = mu_doc->GetTextSearch(k);
-
- rect_item->Color = m_textcolor;
- rect_item->Height = curr_box->LowerRight.Y - curr_box->UpperLeft.Y;
- rect_item->Width = curr_box->LowerRight.X - curr_box->UpperLeft.X;
- rect_item->X = curr_box->UpperLeft.X * scale.X;
- rect_item->Y = curr_box->UpperLeft.Y * scale.Y;
- rect_item->Width *= (scale.X * doc_page->Zoom);
- rect_item->Height *= (scale.Y * doc_page->Zoom);
- rect_item->Index = k.ToString();
- m_text_list->Append(rect_item);
- }
- /* Make sure the current page has its text results cleared */
- doc_page->TextBox = nullptr;
-
- /* Go ahead and set our doc item to this in the vertical and horizontal view */
- m_searchpage = new_page;
- m_flip_from_searchlink = true;
-
- if (old_page == new_page)
- {
- FlipView_SelectionChanged(nullptr, nullptr);
- }
- else
- {
- this->m_curr_flipView->SelectedIndex = new_page;
- }
- return;
-}
-
-void mupdf_cpp::MainPage::SearchNext(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)
-{
- if (IsNotStandardView())
- return;
-
- StackPanel^ leftPanel = (StackPanel^) this->TopAppBar->FindName("LeftPanel");
- TextBox^ findBox = (TextBox^) leftPanel->FindName("FindBox");
- String^ textToFind = findBox->Text;
-
- if (this->m_search_active == false && textToFind != nullptr)
- SearchInDirection(1, textToFind);
-}
-
-void mupdf_cpp::MainPage::SearchPrev(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)
-{
- if (IsNotStandardView())
- return;
-
- StackPanel^ leftPanel = (StackPanel^) this->TopAppBar->FindName("LeftPanel");
- TextBox^ findBox = (TextBox^) leftPanel->FindName("FindBox");
- String^ textToFind = findBox->Text;
-
- if (this->m_search_active == false && textToFind != nullptr)
- SearchInDirection(-1, textToFind);
-}
-
-void mupdf_cpp::MainPage::CancelSearch(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)
-{
- m_searchcts.cancel();
- xaml_ProgressStack->Visibility = Windows::UI::Xaml::Visibility::Collapsed;
- this->m_search_active = false;
-}
-
-void mupdf_cpp::MainPage::AddTextCanvas()
-{
- /* Go ahead and set our doc item to this in the vertical and horizontal view */
- auto doc_page = this->m_docPages->GetAt(m_currpage);
- assert(doc_page->Content == FULL_RESOLUTION);
- if (doc_page->Content == FULL_RESOLUTION) // We should not be doing links for thumbnails
- {
- doc_page->TextBox = m_text_list;
- }
- this->m_search_active = false;
-}
-
-void mupdf_cpp::MainPage::SearchProgress(IAsyncOperationWithProgress<int, double>^ operation, double status)
-{
- xaml_Progress->Value = status;
-}
-
-void mupdf_cpp::MainPage::SearchInDirection(int dir, String^ textToFind)
-{
- cancellation_token_source cts;
- auto token = cts.get_token();
- m_searchcts = cts;
- int pos = m_currpage;
- int start;
-
- if (m_searchpage == pos)
- start = pos + dir;
- else
- start = pos;
-
- if (start < 0)
- return;
- if (start > this->m_num_pages - 1)
- return;
- this->m_search_active = true;
-
- ProgressBar^ my_xaml_Progress = (ProgressBar^) (this->FindName("xaml_Progress"));
- xaml_ProgressStack->Visibility = Windows::UI::Xaml::Visibility::Visible;
- auto temp = mu_doc->SearchDocumentWithProgressAsync(textToFind, dir, start);
- temp->Progress = ref new AsyncOperationProgressHandler<int, double>(this, &MainPage::SearchProgress);
-
- auto search_task = create_task(temp, token);
-
- /* Do the continuation on the ui thread */
- auto con_task = search_task.then([this, textToFind](int page_num)
- {
- xaml_ProgressStack->Visibility = Windows::UI::Xaml::Visibility::Collapsed;
- if (page_num == TEXT_NOT_FOUND)
- {
- auto str1 = "\"" + textToFind + "\" Was Not Found In The Search";
- NotifyUser(str1, StatusMessage);
- this->m_search_active = false;
- }
- else
- {
- int box_count = mu_doc->TextSearchCount();
-
- if (box_count > 0)
- {
- this->ShowSearchResults(page_num, box_count);
- }
- }
- }, task_continuation_context::use_current());
-}
-
-/* This is here to handle when we rotate or go into the snapview mode */
-void mupdf_cpp::MainPage::GridSizeChanged()
-{
- int height = this->ActualHeight;
- int width = this->ActualWidth;
- FlipView^ old_flip = m_curr_flipView;
-
- if (TopAppBar1->IsOpen)
- {
- UpdateAppBarButtonViewState();
- }
-
- if (height > width)
- {
- m_curr_flipView = this->xaml_vert_flipView;
- this->xaml_zoomCanvas->Height = height;
- this->xaml_zoomCanvas->Width = width;
- this->m_curr_flipView->Height = height;
- this->m_curr_flipView->Width = width;
-
- xaml_vert_flipView->IsEnabled = true;
- xaml_vert_flipView->Opacity = 1;
- xaml_horiz_flipView->IsEnabled = false;
- xaml_horiz_flipView->Opacity = 0;
- }
- else
- {
- m_curr_flipView = this->xaml_horiz_flipView;
- this->xaml_zoomCanvas->Height = height;
- this->xaml_zoomCanvas->Width = width;
- this->m_curr_flipView->Height = height;
- this->m_curr_flipView->Width = width;
-
- xaml_horiz_flipView->IsEnabled = true;
- xaml_horiz_flipView->Opacity = 1;
- xaml_vert_flipView->IsEnabled = false;
- xaml_vert_flipView->Opacity = 0;
- }
-
- if (xaml_WebView->Visibility == Windows::UI::Xaml::Visibility::Visible)
- {
- int height = xaml_OutsideGrid->ActualHeight;
- int height_app = TopAppBar1->ActualHeight;
-
- xaml_WebView->Height = height - height_app;
- }
-
- UpDatePageSizes();
-
- if (m_num_pages > 0 && old_flip != m_curr_flipView && old_flip != nullptr)
- {
- /* If links are on or off, we need to invalidate */
- ClearLinks();
- InvalidateLinks();
- auto doc = this->m_docPages->GetAt(m_currpage);
- doc->Content = OLD_RESOLUTION; /* To force a rerender */
- this->m_curr_flipView->SelectedIndex = this->m_currpage;
- FlipView_SelectionChanged(nullptr, nullptr);
- }
-}
-
-void mupdf_cpp::MainPage::UpDatePageSizes()
-{
- /* Reset the thumb view scaling value */
- if (m_num_pages > 0)
- {
- int num_items = m_thumbnails->Size;
- for (int i = 0; i < num_items; i++)
- {
- DocumentPage ^thumb_page = m_thumbnails->GetAt(i);
- if (thumb_page != nullptr && thumb_page->Image != nullptr)
- {
- int curr_height = thumb_page->Height;
- int curr_width = thumb_page->Width;
-
- double scale_x = (double) curr_height / (double) this->xaml_zoomCanvas->Height;
- double scale_y = (double) curr_width / (double) this->xaml_zoomCanvas->Width;
-
- double min_scale = max(scale_x, scale_y);
- thumb_page->Height = curr_height / min_scale;
- thumb_page->Width = curr_width / min_scale;
- }
- }
- }
-};
-
-/* Link related code */
-void mupdf_cpp::MainPage::Linker(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)
-{
- m_links_on = !m_links_on;
-
- if (!m_init_done || IsNotStandardView())
- return;
- if (m_links_on)
- AddLinkCanvas();
- else
- ClearLinks();
-}
-
-void mupdf_cpp::MainPage::ClearLinks()
-{
- /* Make sure surrounding render pages lose their links */
- for (int k = m_currpage - LOOK_AHEAD; k <= m_currpage + LOOK_AHEAD; k++)
- {
- if (k >= 0 && k < m_num_pages)
- {
- auto doc_page = this->m_docPages->GetAt(k);
- if (doc_page->Content == FULL_RESOLUTION)
- {
- doc_page->LinkBox = nullptr;
- }
- }
- }
-}
-
-void mupdf_cpp::MainPage::InvalidateLinks()
-{
- for (int k = 0; k < m_num_pages; k++)
- m_linkset->SetAt(k, false);
-}
-
-/* Add in the link rects. If we have not already computed them then do that now */
-void mupdf_cpp::MainPage::AddLinkCanvas()
-{
- /* See if the link object for this page has already been computed */
- int link_page = m_linkset->GetAt(m_currpage);
- auto doc_page = this->m_docPages->GetAt(m_currpage);
-
- if (!link_page)
- {
- m_linkset->SetAt(m_currpage, true);
- int num_links = mu_doc->ComputeLinks(m_currpage);
- if (num_links == 0) return;
-
- Point screenSize;
- Point pageSize;
- Point scale;
-
- screenSize.Y = this->ActualHeight;
- screenSize.X = this->ActualWidth;
- screenSize.X *= screenScale;
- screenSize.Y *= screenScale;
- pageSize = mu_doc->GetPageSize(m_currpage);
- scale = fitPageToScreen(pageSize, screenSize);
-
- /* Create a new RectList collection */
- auto link_list = ref new Platform::Collections::Vector<RectList^>();
-
- /* Now add the rects */
- for (int k = 0; k < num_links; k++)
- {
- auto curr_link = mu_doc->GetLink(k);
- if (curr_link->Type != NOT_SET)
- {
- RectList^ rect_item = ref new RectList();
- rect_item->Color = m_linkcolor;
- rect_item->Height = curr_link->LowerRight.Y - curr_link->UpperLeft.Y;
- rect_item->Width = curr_link->LowerRight.X - curr_link->UpperLeft.X;
- rect_item->X = curr_link->UpperLeft.X * scale.X;
- rect_item->Y = curr_link->UpperLeft.Y * scale.Y;
- rect_item->Width *= (scale.X * doc_page->Zoom);
- rect_item->Height *= (scale.Y * doc_page->Zoom);
- rect_item->Type = curr_link->Type;
- rect_item->Urilink = curr_link->Uri;
- rect_item->PageNum = curr_link->PageNum;
- rect_item->Index = k.ToString();
- link_list->Append(rect_item);
- }
- }
- /* Now set it in our list of links */
- m_page_link_list->SetAt(m_currpage, link_list);
- }
- /* Go ahead and set our doc item to this in the vertical and horizontal view */
- if (doc_page->LinkBox == nullptr)
- {
- if (doc_page->Content == FULL_RESOLUTION) // We should not be doing links for thumbnails
- {
- doc_page->LinkBox = m_page_link_list->GetAt(m_currpage);
- }
- }
-}
-
-/* A link was tapped */
-void mupdf_cpp::MainPage::LinkTapped(Platform::Object^ sender, Windows::UI::Xaml::Input::TappedRoutedEventArgs^ e)
-{
- Rectangle^ rect = safe_cast<Rectangle^>(e->OriginalSource);
- String^ str_index = safe_cast<String^>(rect->Tag);
- int index = _wtof(str_index->Data());
-
- if (index >= 0 && index < m_num_pages)
- {
- auto link_list = m_page_link_list->GetAt(m_currpage);
- auto link = link_list->GetAt(index);
-
- if (link->Type == LINK_GOTO)
- {
- this->m_curr_flipView->SelectedIndex = link->PageNum;
- }
- else if (link->Type == LINK_URI)
- {
- // Set the option to show a warning
- auto launchOptions = ref new Windows::System::LauncherOptions();
- launchOptions->TreatAsUntrusted = true;
-
- // Launch the URI with a warning prompt
- concurrency::task<bool> launchUriOperation(Windows::System::Launcher::LaunchUriAsync(link->Urilink, launchOptions));
- launchUriOperation.then([](bool success)
- {
- if (success)
- {
- // URI launched
- }
- else
- {
- // URI launch failed
- }
- });
- }
- }
-}
-
-/* Bring up the contents */
-void mupdf_cpp::MainPage::ContentDisplay(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)
-{
- if (this->m_num_pages < 0)
- return;
-
- if (IsNotStandardView() && !this->xaml_ListView->IsEnabled)
- return;
-
- if (this->xaml_ListView->IsEnabled)
- {
- this->xaml_ListView->Opacity = 0.0;
- this->xaml_ListView->IsEnabled = false;
- this->m_curr_flipView->Opacity = 1.0;
- this->m_curr_flipView->IsEnabled = true;
- this->xaml_PageSlider->IsEnabled = true;
- }
- else
- {
- if (xaml_ListView->Items->Size == 0)
- {
- int size_content = mu_doc->ComputeContents();
- /* Bring up the content now */
- for (int k = 0; k < size_content; k++)
- {
- ContentItem^ item = mu_doc->GetContent(k);
- this->xaml_ListView->Items->Append(item);
- }
- if (size_content > 0)
- {
- this->xaml_ListView->Opacity = 1.0;
- this->xaml_ListView->IsEnabled = true;
- this->m_curr_flipView->Opacity = 0.0;
- this->m_curr_flipView->IsEnabled = false;
- this->xaml_PageSlider->IsEnabled = false;
- }
- }
- else
- {
- this->xaml_ListView->Opacity = 1.0;
- this->xaml_ListView->IsEnabled = true;
- this->m_curr_flipView->Opacity = 0.0;
- this->m_curr_flipView->IsEnabled = false;
- this->xaml_PageSlider->IsEnabled = false;
- }
- }
-}
-
-void mupdf_cpp::MainPage::ContentSelected(Platform::Object^ sender, Windows::UI::Xaml::Controls::ItemClickEventArgs^ e)
-{
- ContentItem^ b = safe_cast<ContentItem^>(e->ClickedItem);
- int newpage = b->Page;
-
- if (newpage > -1 && newpage < this->m_num_pages)
- {
- this->xaml_ListView->Opacity = 0.0;
- this->xaml_ListView->IsEnabled = false;
- this->m_curr_flipView->Opacity = 1.0;
- this->m_curr_flipView->IsEnabled = true;
- this->xaml_PageSlider->IsEnabled = true;
-
- int old_page = this->m_currpage;
- this->m_curr_flipView->SelectedIndex = newpage;
- this->m_currpage = newpage;
- }
-}
-
-void mupdf_cpp::MainPage::Reflower(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)
-{
- if (this->m_num_pages < 0) return;
-
- if (xaml_WebView->Visibility == Windows::UI::Xaml::Visibility::Visible)
- {
- /* Go back to flip view */
- xaml_WebView->Visibility = Windows::UI::Xaml::Visibility::Collapsed;
- this->xaml_MainGrid->Opacity = 1.0;
- this->m_curr_flipView->IsEnabled = true;
- this->xaml_PageSlider->IsEnabled = true;
- xaml_WebView->Visibility = Windows::UI::Xaml::Visibility::Collapsed;
- xaml_WebView->Opacity = 0.0;
-
- }
- else if (this->m_curr_flipView->IsEnabled)
- {
- String^ html_string = mu_doc->ComputeHTML(this->m_currpage);
- xaml_WebView->Visibility = Windows::UI::Xaml::Visibility::Visible;
- this->xaml_MainGrid->Opacity = 0.0;
- this->m_curr_flipView->IsEnabled = false;
- this->xaml_PageSlider->IsEnabled = false;
- this->xaml_WebView->NavigateToString(html_string);
- this->xaml_WebView->Height = this->ActualHeight - 2 * this->BottomAppBar->ActualHeight;
- /* Check if thumb rendering is done. If not then restart */
- }
-}
-
-/* Need to handle resizing of app bar to make sure everything fits */
-void mupdf_cpp::MainPage::topAppBar_Loaded(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)
-{
- /* Remove search box in snapped view as we don't have the room for it */
- if (ApplicationView::Value == ApplicationViewState::Snapped && m_insearch)
- ShowSearchBox();
- UpdateAppBarButtonViewState();
-}
-
-void mupdf_cpp::MainPage::UpdateAppBarButtonViewState()
-{
- String ^viewState = Windows::UI::ViewManagement::ApplicationView::Value.ToString();
- VisualStateManager::GoToState(Search, viewState, true);
- VisualStateManager::GoToState(Contents, viewState, true);
- VisualStateManager::GoToState(Links, viewState, true);
- VisualStateManager::GoToState(Reflow, viewState, true);
- VisualStateManager::GoToState(ZoomIn, viewState, true);
- VisualStateManager::GoToState(ZoomOut, viewState, true);
- VisualStateManager::GoToState(PrevSearch, viewState, true);
- VisualStateManager::GoToState(NextSearch, viewState, true);
-}
-
-/* Manipulation zooming with touch input */
-void mupdf_cpp::MainPage::ScrollChanged(Platform::Object^ sender,
- Windows::UI::Xaml::Controls::ScrollViewerViewChangedEventArgs^ e)
-{
- ScrollViewer^ scrollviewer = safe_cast<ScrollViewer^> (sender);
- auto doc_page = this->m_docPages->GetAt(m_currpage);
-
- if (scrollviewer->ZoomFactor == doc_page->Zoom)
- return;
-
- if (!e->IsIntermediate)
- {
- doc_page->Zoom = scrollviewer->ZoomFactor;
- int page = m_currpage;
-
- /* Render at new resolution */
- spatial_info_t spatial_info = InitSpatial(doc_page->Zoom);
- Point ras_size = ComputePageSize(spatial_info, page);
-
- /* Go ahead and create display list if we dont have one for this page */
- auto render_task =
- create_task(mu_doc->RenderPageAsync(page, ras_size.X, ras_size.Y, true));
- render_task.then([this, page, ras_size] (InMemoryRandomAccessStream^ ras)
- {
- ReplaceImage(page, ras, ras_size);
- }, task_continuation_context::use_current());
- }
-}
-
-/* Needed to find scrollviewer child from template of flipview item */
-Windows::UI::Xaml::FrameworkElement^ FindVisualChildByName(DependencyObject^ obj, String^ name)
-{
- FrameworkElement^ ret;
- if (obj == nullptr) return nullptr;
-
- int numChildren = VisualTreeHelper::GetChildrenCount(obj);
-
- for (int i = 0; i < numChildren; i++)
- {
- auto objChild = VisualTreeHelper::GetChild(obj, i);
- auto child = safe_cast<FrameworkElement^>(objChild);
- if (child != nullptr && child->Name == name)
- {
- return child;
- }
- ret = FindVisualChildByName(objChild, name);
- if (ret != nullptr)
- break;
- }
- return ret;
-}
-
-void mupdf_cpp::MainPage::ZoomInPress(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)
-{
- if (!m_init_done || IsNotStandardView()) return;
- NonTouchZoom(ZOOM_IN);
-}
-
-void mupdf_cpp::MainPage::ZoomOutPress(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)
-{
- if (!m_init_done || IsNotStandardView()) return;
- NonTouchZoom(ZOOM_OUT);
-}
-
-void MainPage::NonTouchZoom(int zoom)
-{
- ScrollViewer^ scrollviewer;
- FlipViewItem^ item = safe_cast<FlipViewItem^>
- (m_curr_flipView->ItemContainerGenerator->ContainerFromIndex(m_currpage));
- auto item2 = m_curr_flipView->ItemContainerGenerator->ContainerFromIndex(m_currpage);
-
- /* We don't know which one so check for both */
- ScrollViewer^ t1 =
- safe_cast<ScrollViewer^> (FindVisualChildByName(item2, "xaml_ScrollView_v"));
- ScrollViewer^ t2 =
- safe_cast<ScrollViewer^> (FindVisualChildByName(item2, "xaml_ScrollView_h"));
-
- if (t1 != nullptr)
- scrollviewer = t1;
- else
- scrollviewer = t2;
-
- if (scrollviewer == nullptr)
- return;
-
- double curr_zoom = scrollviewer->ZoomFactor;
- if (zoom == ZOOM_IN)
- {
- curr_zoom = curr_zoom + KEYBOARD_ZOOM_STEP;
- if (curr_zoom > ZOOM_MAX) curr_zoom = ZOOM_MAX;
- }
- else if (zoom == ZOOM_OUT)
- {
- curr_zoom = curr_zoom - KEYBOARD_ZOOM_STEP;
- if (curr_zoom < ZOOM_MIN) curr_zoom = ZOOM_MIN;
- } else
- return;
-
- scrollviewer->ZoomToFactor(curr_zoom);
-}
-
-/* Zoom in and out for keyboard only case. */
-void MainPage::OnKeyDown(KeyRoutedEventArgs^ e)
-{
- if (!m_init_done || IsNotStandardView()) return;
-
- long val = (long) (e->Key);
-
- if (val == KEY_PLUS)
- NonTouchZoom(ZOOM_IN);
- else if (val == KEY_MINUS)
- NonTouchZoom(ZOOM_OUT);
- else
- return;
-}
-
-void mupdf_cpp::MainPage::PasswordOK(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)
-{
- /* If password checks out then go ahead and start rendering */
- if (mu_doc->ApplyPassword(xaml_password->Password))
- {
- xaml_password->Password = nullptr;
- xaml_PasswordStack->Visibility = Windows::UI::Xaml::Visibility::Collapsed;
- InitialRender();
- RenderThumbs();
- }
- else
- NotifyUser("Incorrect Password", StatusMessage);
-}
-
-/* So that we know if we are in a standard view case and not in reflow, or
- * content type */
-bool mupdf_cpp::MainPage::IsNotStandardView()
-{
- return (this->xaml_ListView->Opacity == 1.0 ||
- xaml_WebView->Visibility == Windows::UI::Xaml::Visibility::Visible);
-}
diff --git a/winrt/mupdf_cpp/MainPage.xaml.h b/winrt/mupdf_cpp/MainPage.xaml.h
deleted file mode 100644
index 80978bc8..00000000
--- a/winrt/mupdf_cpp/MainPage.xaml.h
+++ /dev/null
@@ -1,177 +0,0 @@
-//
-// MainPage.xaml.h
-// Declaration of the MainPage class.
-//
-
-#pragma once
-
-#include "MainPage.g.h"
-#include "ppl.h"
-#include "ppltasks.h"
-#include <collection.h>
-#include <algorithm>
-#include <assert.h>
-#include "DocumentPage.h"
-#include "status.h"
-
-using namespace Platform;
-using namespace Concurrency;
-using namespace Windows::Storage;
-using namespace Windows::UI::Xaml;
-using namespace Windows::UI::Xaml::Media::Imaging;
-using namespace Windows::Storage::Streams;
-using namespace Windows::Foundation;
-using namespace Windows::UI::Xaml::Controls;
-using namespace Windows::UI::Xaml::Media;
-using namespace Windows::UI::Xaml::Input;
-using namespace Windows::UI::Xaml::Shapes;
-using namespace Windows::Foundation::Collections;
-using namespace Platform::Collections;
-using namespace Windows::UI::ViewManagement;
-using namespace Windows::UI::Popups;
-using namespace Windows::UI::Xaml::Navigation;
-using namespace Windows::ApplicationModel;
-using namespace mupdfwinrt;
-
-typedef enum
-{
- StatusMessage,
- ErrorMessage
-} NotifyType_t;
-
-typedef enum {
- REN_AVAILABLE = 0,
- REN_THUMBS,
- REN_UPDATE_THUMB_CANVAS,
- REN_PAGE /* Used to ignore value when source based setting */
-} RenderingStatus_t;
-
-typedef struct spatial_info_s
-{
- Point size;
- double scale_factor;
-} spatial_info_t;
-
-namespace mupdf_cpp
-{
- /// <summary>
- /// An empty page that can be used on its own or navigated to within a Frame.
- /// </summary>
- public ref class MainPage sealed
- {
- public:
- MainPage();
-
- property Windows::ApplicationModel::Activation::ProtocolActivatedEventArgs^ ProtocolEvent
- {
- Windows::ApplicationModel::Activation::ProtocolActivatedEventArgs^ get() { return _protocolEventArgs; }
- void set(Windows::ApplicationModel::Activation::ProtocolActivatedEventArgs^ value) { _protocolEventArgs = value; }
- }
-
- property Windows::ApplicationModel::Activation::FileActivatedEventArgs^ FileEvent
- {
- Windows::ApplicationModel::Activation::FileActivatedEventArgs^ get() { return _fileEventArgs; }
- void set(Windows::ApplicationModel::Activation::FileActivatedEventArgs^ value) { _fileEventArgs = value; }
- }
-
- protected:
- virtual void OnNavigatedTo(Windows::UI::Xaml::Navigation::NavigationEventArgs^ e) override;
- virtual void OnKeyDown(Windows::UI::Xaml::Input::KeyRoutedEventArgs^ e) override;
-
- private:
- Windows::Foundation::EventRegistrationToken _pageLoadedHandlerToken;
- Vector<DocumentPage^>^ m_docPages;
- Vector<DocumentPage^>^ m_thumbnails;
- Vector<IVector<RectList^>^>^ m_page_link_list;
- Vector<int>^ m_linkset;
- Vector<RectList^>^ m_text_list;
- int m_rectlist_page;
- mudocument^ mu_doc;
- bool m_file_open;
- int m_currpage;
- int m_searchpage;
- int m_num_pages;
- int m_slider_min;
- int m_slider_max;
- bool m_init_done;
- bool m_flip_from_searchlink;
- bool m_links_on;
- int m_search_rect_count;
- cancellation_token_source m_searchcts;
- bool m_page_update;
- long long m_memory_use;
- WriteableBitmap ^m_BlankBmp;
- String^ m_textcolor;
- String^ m_linkcolor;
- FlipView^ m_curr_flipView;
- RenderingStatus_t m_ren_status;
- cancellation_token_source m_ThumbCancel;
- bool m_insearch; /* Used for UI display */
- bool m_search_active; /* Used to avoid multiple UI clicks */
- bool m_sliderchange;
- bool m_update_flip;
- double m_Progress;
-
- void ReplaceImage(int page_num, InMemoryRandomAccessStream^ ras, Point ras_size);
- void Picker(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e);
- void Searcher(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e);
- void OpenDocumentPrep(StorageFile^ file);
- void OpenDocument(StorageFile^ file);
- void InitialRender();
- void RenderRange(int curr_page);
- void CleanUp();
- void UpdatePage(int page_num, InMemoryRandomAccessStream^ ras, Point ras_size, Page_Content_t content_type);
- void CreateBlank(int width, int height);
- void HandleFileNotFoundException(Platform::COMException^ e);
- void NotifyUserFileNotExist();
- void SetFlipView();
- void Slider_ValueChanged(Platform::Object^ sender, Windows::UI::Xaml::Controls::Primitives::RangeBaseValueChangedEventArgs^ e);
- void Slider_Released(Platform::Object^ sender, Windows::UI::Xaml::Controls::Primitives::RangeBaseValueChangedEventArgs^ e);
- void FlipView_SelectionChanged(Object^ sender, SelectionChangedEventArgs^ e);
- void SearchNext(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e);
- void SearchPrev(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e);
- void CancelSearch(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e);
- void SearchInDirection(int dir, String^ textToFind);
- void ShowSearchResults(int page_num, int box_count);
- void ClearTextSearch();
- void AddTextCanvas();
- void GridSizeChanged();
- void UpDatePageSizes();
- void ShowThumbnail();
- void Canvas_ManipulationCompleted(Platform::Object^ sender, Windows::UI::Xaml::Input::ManipulationCompletedRoutedEventArgs^ e);
- void AddThumbNail(int page_num, FlipView^ flip_view);
- spatial_info_t InitSpatial(double scale);
- void RenderThumbs();
- void SetThumb(int page_num, bool replace);
- void ReleasePages(int old_page, int new_page);
- void Linker(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e);
- void AddLinkCanvas();
- void ClearLinks();
- void InvalidateLinks();
- void ContentDisplay(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e);
- void ListView_Single_Tap(Platform::Object^ sender, Windows::UI::Xaml::Input::TappedRoutedEventArgs^ e);
- void ContentSelected(Platform::Object^ sender, Windows::UI::Xaml::Controls::ItemClickEventArgs^ e);
- void ContentChanged(Platform::Object^ sender, Windows::UI::Xaml::Controls::SelectionChangedEventArgs^ e);
- void Reflower(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e);
- void topAppBar_Loaded(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e);
- void UpdateAppBarButtonViewState();
- bool EnsureUnsnapped();
- void NotifyUser(String^ strMessage, NotifyType_t type);
- void ExitInvokedHandler(Windows::UI::Popups::IUICommand^ command);
- void OKInvokedHandler(Windows::UI::Popups::IUICommand^ command);
- Point ComputePageSize(spatial_info_t spatial_info, int page_num);
- void ScrollChanged(Platform::Object^ sender, Windows::UI::Xaml::Controls::ScrollViewerViewChangedEventArgs^ e);
- void LinkTapped(Platform::Object^ sender, Windows::UI::Xaml::Input::TappedRoutedEventArgs^ e);
- void SearchProgress(IAsyncOperationWithProgress<int, double>^ operation, double status);
- void PasswordOK(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e);
- void App_Suspending(Object^ sender, SuspendingEventArgs^ e);
- void ZoomInPress(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e);
- void ZoomOutPress(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e);
- void NonTouchZoom(int zoom);
- void ShowSearchBox();
- bool IsNotStandardView();
- void Page_Loaded(Object^ sender, RoutedEventArgs^ e);
- Windows::ApplicationModel::Activation::ProtocolActivatedEventArgs^ _protocolEventArgs;
- Windows::ApplicationModel::Activation::FileActivatedEventArgs^ _fileEventArgs;
- };
-}
diff --git a/winrt/mupdf_cpp/Package.appxmanifest b/winrt/mupdf_cpp/Package.appxmanifest
deleted file mode 100644
index 862154f8..00000000
--- a/winrt/mupdf_cpp/Package.appxmanifest
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Package xmlns="http://schemas.microsoft.com/appx/2010/manifest">
- <Identity Name="ArtifexSoftware.MuPDF" Publisher="CN=B93265AA-82AD-458A-A08E-7069B8ED88B5" Version="1.0.0.0" />
- <Properties>
- <DisplayName>MuPDF</DisplayName>
- <PublisherDisplayName>Artifex Software</PublisherDisplayName>
- <Logo>Assets\StoreLogo.png</Logo>
- </Properties>
- <Prerequisites>
- <OSMinVersion>6.2.1</OSMinVersion>
- <OSMaxVersionTested>6.2.1</OSMaxVersionTested>
- </Prerequisites>
- <Resources>
- <Resource Language="x-generate" />
- </Resources>
- <Applications>
- <Application Id="App" Executable="$targetnametoken$.exe" EntryPoint="mupdf_cpp.App">
- <VisualElements DisplayName="MuPDF" Logo="Assets\Logo.png" SmallLogo="assets/mupdf_smallogo.png" Description="A lightweight, high quality PDF/XPS/CBZ viewer for Windows 8 devices." ForegroundText="light" BackgroundColor="#464646">
- <DefaultTile ShowName="allLogos" />
- <SplashScreen Image="Assets\mupdf_splash.png" />
- </VisualElements>
- <Extensions>
- <Extension Category="windows.fileTypeAssociation">
- <FileTypeAssociation Name=".pdf">
- <EditFlags OpenIsSafe="true" />
- <SupportedFileTypes>
- <FileType>.pdf</FileType>
- <FileType>.xps</FileType>
- <FileType>.cbz</FileType>
- <FileType>.oxps</FileType>
- </SupportedFileTypes>
- </FileTypeAssociation>
- </Extension>
- </Extensions>
- </Application>
- </Applications>
-</Package> \ No newline at end of file
diff --git a/winrt/mupdf_cpp/RectList.cpp b/winrt/mupdf_cpp/RectList.cpp
deleted file mode 100644
index b9c1560d..00000000
--- a/winrt/mupdf_cpp/RectList.cpp
+++ /dev/null
@@ -1,9 +0,0 @@
-#include "pch.h"
-#include "RectList.h"
-
-namespace mupdf_cpp
-{
- RectList::RectList(void)
- {
- }
-}
diff --git a/winrt/mupdf_cpp/RectList.h b/winrt/mupdf_cpp/RectList.h
deleted file mode 100644
index 999fe3d2..00000000
--- a/winrt/mupdf_cpp/RectList.h
+++ /dev/null
@@ -1,153 +0,0 @@
-#pragma once
-
-/* WinRT RectList class for binding a collection of rects to the xaml ui */
-using namespace Windows::UI::Xaml::Media::Imaging;
-using namespace Windows::UI::Xaml::Controls;
-using namespace Platform; /* For String */
-
-namespace mupdf_cpp
-{
- [Windows::UI::Xaml::Data::Bindable] // in c++, adding this attribute to ref classes enables data binding for more info search for 'Bindable' on the page http://go.microsoft.com/fwlink/?LinkId=254639
-
- public ref class RectList sealed
- {
- private:
- int height;
- int width;
- int x;
- int y;
- String^ color;
- /* These are used to store the link infomation */
- int type;
- int pagenum;
- Windows::Foundation::Uri ^uri;
- String^ index; // For identify which rectangle was tapped
- public:
- RectList(void);
-
- property String^ Index
- {
- String^ get()
- {
- return ((String^) index);
- }
-
- void set(String^ value)
- {
- index = value;
- }
- }
-
- property String^ Color
- {
- String^ get()
- {
- return (color);
- }
-
- void set(String^ value)
- {
- color = value;
- }
- }
-
- property int Height
- {
- int get()
- {
- return ((int) height);
- }
-
- void set(int value)
- {
- if (value < 0)
- {
- throw ref new Platform::InvalidArgumentException();
- }
- height = value;
- }
- }
-
- property int Width
- {
- int get()
- {
- return width;
- }
-
- void set(int value)
- {
- if (value < 0)
- {
- throw ref new Platform::InvalidArgumentException();
- }
- width = value;
- }
- }
-
- property int X
- {
- int get()
- {
- return x;
- }
-
- void set(int value)
- {
- x = value;
- }
- }
-
- property int Y
- {
- int get()
- {
- return y;
- }
-
- void set(int value)
- {
- y = value;
- }
- }
-
- property int Type
- {
- int get()
- {
- return type;
- }
-
- void set(int value)
- {
- type = value;
- }
- }
-
- property int PageNum
- {
- int get()
- {
- return pagenum;
- }
-
- void set(int value)
- {
- pagenum = value;
- }
- }
-
- property Windows::Foundation::Uri^ Urilink
- {
- Windows::Foundation::Uri^ get()
- {
- return uri;
- }
-
- void set(Windows::Foundation::Uri^ value)
- {
- uri = value;
- }
- }
- };
-}
diff --git a/winrt/mupdf_cpp/mupdf_cpp.rc b/winrt/mupdf_cpp/mupdf_cpp.rc
deleted file mode 100644
index 0d7c7a75..00000000
--- a/winrt/mupdf_cpp/mupdf_cpp.rc
+++ /dev/null
Binary files differ
diff --git a/winrt/mupdf_cpp/mupdf_cpp.vcxproj b/winrt/mupdf_cpp/mupdf_cpp.vcxproj
deleted file mode 100644
index b5da02da..00000000
--- a/winrt/mupdf_cpp/mupdf_cpp.vcxproj
+++ /dev/null
@@ -1,269 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="Debug|ARM">
- <Configuration>Debug</Configuration>
- <Platform>ARM</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Debug|Win32">
- <Configuration>Debug</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Debug|x64">
- <Configuration>Debug</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|ARM">
- <Configuration>Release</Configuration>
- <Platform>ARM</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|Win32">
- <Configuration>Release</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|x64">
- <Configuration>Release</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- </ItemGroup>
- <PropertyGroup Label="Globals">
- <ProjectGuid>{0204a4e7-f1b8-4268-a67c-a2c674b4742d}</ProjectGuid>
- <RootNamespace>mupdf_cpp</RootNamespace>
- <DefaultLanguage>en-US</DefaultLanguage>
- <MinimumVisualStudioVersion>11.0</MinimumVisualStudioVersion>
- <AppContainerApplication>true</AppContainerApplication>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseDebugLibraries>true</UseDebugLibraries>
- <PlatformToolset>v110</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseDebugLibraries>true</UseDebugLibraries>
- <PlatformToolset>v110</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseDebugLibraries>true</UseDebugLibraries>
- <PlatformToolset>v110</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseDebugLibraries>false</UseDebugLibraries>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- <PlatformToolset>v110</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseDebugLibraries>false</UseDebugLibraries>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- <PlatformToolset>v110</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseDebugLibraries>false</UseDebugLibraries>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- <PlatformToolset>v110</PlatformToolset>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
- <ImportGroup Label="ExtensionSettings">
- </ImportGroup>
- <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <PropertyGroup Label="UserMacros" />
- <PropertyGroup>
- <PackageCertificateKeyFile>mupdf_cpp_StoreKey.pfx</PackageCertificateKeyFile>
- <PackageCertificateThumbprint>CD9F039F746ECFA4533010958399D3B0FFB6B3B5</PackageCertificateThumbprint>
- <AppxAutoIncrementPackageRevision>True</AppxAutoIncrementPackageRevision>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
- <IntDir>$(Platform)\$(Configuration)\$(ProjectName)\</IntDir>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
- <IntDir>$(Platform)\$(Configuration)\$(ProjectName)\</IntDir>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">
- <OutDir>$(SolutionDir)$(Configuration)\$(MSBuildProjectName)\</OutDir>
- <IntDir>$(Platform)\$(Configuration)\$(ProjectName)\</IntDir>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
- <IntDir>$(Platform)\$(Configuration)\$(ProjectName)\</IntDir>
- <OutDir>$(SolutionDir)$(Configuration)\$(MSBuildProjectName)\</OutDir>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">
- <OutDir>$(SolutionDir)$(Configuration)\$(MSBuildProjectName)\</OutDir>
- <IntDir>$(Platform)\$(Configuration)\$(ProjectName)\</IntDir>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
- <OutDir>$(SolutionDir)$(Configuration)\$(MSBuildProjectName)\</OutDir>
- <IntDir>$(Platform)\$(Configuration)\$(ProjectName)\</IntDir>
- </PropertyGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">
- <ClCompile>
- <AdditionalOptions>/bigobj %(AdditionalOptions)</AdditionalOptions>
- <DisableSpecificWarnings>4453</DisableSpecificWarnings>
- <AdditionalIncludeDirectories>../../include/;../mupdfwinrt/;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ClCompile>
- <Link>
- <AdditionalDependencies>kernel32.lib;%(AdditionalDependencies);../$(Platform)/$(Configuration)/libmupdf_winRT.lib;../$(Platform)/$(Configuration)/libthirdparty_winRT.lib;../$(Platform)/$(Configuration)/libmupdf-nov8_winRT.lib;../$(Platform)/$(Configuration)/mupdfwinrt.lib</AdditionalDependencies>
- <AdditionalOptions>/APPCONTAINER /SAFESEH %(AdditionalOptions)</AdditionalOptions>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">
- <ClCompile>
- <AdditionalOptions>/bigobj %(AdditionalOptions)</AdditionalOptions>
- <DisableSpecificWarnings>4453</DisableSpecificWarnings>
- <AdditionalIncludeDirectories>../../include/;../mupdfwinrt/;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ClCompile>
- <Link>
- <AdditionalDependencies>kernel32.lib;%(AdditionalDependencies);../$(Platform)/$(Configuration)/libmupdf_winRT.lib;../$(Platform)/$(Configuration)/libthirdparty_winRT.lib;../$(Platform)/$(Configuration)/libmupdf-nov8_winRT.lib;../$(Platform)/$(Configuration)/mupdfwinrt.lib</AdditionalDependencies>
- <SectionAlignment>
- </SectionAlignment>
- <AdditionalOptions>/APPCONTAINER %(AdditionalOptions)</AdditionalOptions>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
- <ClCompile>
- <AdditionalOptions>/bigobj %(AdditionalOptions)</AdditionalOptions>
- <DisableSpecificWarnings>4453</DisableSpecificWarnings>
- <AdditionalIncludeDirectories>../../include/;../mupdfwinrt/;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ClCompile>
- <Link>
- <AdditionalDependencies>kernel32.lib;%(AdditionalDependencies);../$(Platform)/$(Configuration)/libmupdf_winRT.lib;../$(Platform)/$(Configuration)/libthirdparty_winRT.lib;../$(Platform)/$(Configuration)/libmupdf-nov8_winRT.lib;../$(Platform)/$(Configuration)/mupdfwinrt.lib</AdditionalDependencies>
- <AdditionalOptions>/APPCONTAINER /SAFESEH %(AdditionalOptions)</AdditionalOptions>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
- <ClCompile>
- <AdditionalOptions>/bigobj %(AdditionalOptions)</AdditionalOptions>
- <DisableSpecificWarnings>4453</DisableSpecificWarnings>
- <AdditionalIncludeDirectories>../../include/;../mupdfwinrt/;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ClCompile>
- <Link>
- <AdditionalDependencies>kernel32.lib;%(AdditionalDependencies);../$(Platform)/$(Configuration)/libmupdf_winRT.lib;../$(Platform)/$(Configuration)/libthirdparty_winRT.lib;../$(Platform)/$(Configuration)/libmupdf-nov8_winRT.lib;../$(Platform)/$(Configuration)/mupdfwinrt.lib</AdditionalDependencies>
- <SectionAlignment>
- </SectionAlignment>
- <AdditionalOptions>/APPCONTAINER /SAFESEH %(AdditionalOptions)</AdditionalOptions>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
- <ClCompile>
- <AdditionalOptions>/bigobj %(AdditionalOptions)</AdditionalOptions>
- <DisableSpecificWarnings>4453</DisableSpecificWarnings>
- <AdditionalIncludeDirectories>../../include/;../mupdfwinrt/;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ClCompile>
- <Link>
- <AdditionalDependencies>kernel32.lib;%(AdditionalDependencies);../$(Platform)/$(Configuration)/libmupdf_winRT.lib;../$(Platform)/$(Configuration)/libthirdparty_winRT.lib;../$(Platform)/$(Configuration)/libmupdf-nov8_winRT.lib;../$(Platform)/$(Configuration)/mupdfwinrt.lib</AdditionalDependencies>
- <AdditionalOptions>/APPCONTAINER /SAFESEH %(AdditionalOptions)</AdditionalOptions>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
- <ClCompile>
- <AdditionalOptions>/bigobj %(AdditionalOptions)</AdditionalOptions>
- <DisableSpecificWarnings>4453</DisableSpecificWarnings>
- <AdditionalIncludeDirectories>../../include/;../mupdfwinrt/;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ClCompile>
- <Link>
- <AdditionalDependencies>kernel32.lib;%(AdditionalDependencies);../$(Platform)/$(Configuration)/libmupdf_winRT.lib;../$(Platform)/$(Configuration)/libthirdparty_winRT.lib;../$(Platform)/$(Configuration)/libmupdf-nov8_winRT.lib;../$(Platform)/$(Configuration)/mupdfwinrt.lib</AdditionalDependencies>
- <SectionAlignment>
- </SectionAlignment>
- <AdditionalOptions>/APPCONTAINER %(AdditionalOptions)</AdditionalOptions>
- </Link>
- </ItemDefinitionGroup>
- <ItemGroup>
- <ClInclude Include="..\mupdfwinrt\status.h" />
- <ClInclude Include="DocumentPage.h" />
- <ClInclude Include="pch.h" />
- <ClInclude Include="App.xaml.h">
- <DependentUpon>App.xaml</DependentUpon>
- </ClInclude>
- <ClInclude Include="MainPage.xaml.h">
- <DependentUpon>MainPage.xaml</DependentUpon>
- </ClInclude>
- <ClInclude Include="RectList.h" />
- </ItemGroup>
- <ItemGroup>
- <ApplicationDefinition Include="App.xaml">
- <SubType>Designer</SubType>
- </ApplicationDefinition>
- <Page Include="Common\StandardStyles.xaml">
- <SubType>Designer</SubType>
- </Page>
- <Page Include="MainPage.xaml">
- <SubType>Designer</SubType>
- </Page>
- </ItemGroup>
- <ItemGroup>
- <AppxManifest Include="Package.appxmanifest">
- <SubType>Designer</SubType>
- </AppxManifest>
- <None Include="mupdf_cpp_StoreKey.pfx" />
- <None Include="mupdf_cpp_TemporaryKey.pfx" />
- </ItemGroup>
- <ItemGroup>
- <ClCompile Include="App.xaml.cpp">
- <DependentUpon>App.xaml</DependentUpon>
- </ClCompile>
- <ClCompile Include="DocumentPage.cpp" />
- <ClCompile Include="MainPage.xaml.cpp">
- <DependentUpon>MainPage.xaml</DependentUpon>
- </ClCompile>
- <ClCompile Include="pch.cpp">
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Create</PrecompiledHeader>
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">Create</PrecompiledHeader>
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">Create</PrecompiledHeader>
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Create</PrecompiledHeader>
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Create</PrecompiledHeader>
- </ClCompile>
- <ClCompile Include="RectList.cpp" />
- </ItemGroup>
- <ItemGroup>
- <Image Include="Assets\Logo.Scale-100.png" />
- <Image Include="Assets\Logo.Scale-140.png" />
- <Image Include="Assets\Logo.Scale-180.png" />
- <Image Include="Assets\Logo.Scale-80.png">
- <DeploymentContent>true</DeploymentContent>
- </Image>
- <Image Include="Assets\mupdf_smallogo.png" />
- <Image Include="Assets\mupdf_splash.png" />
- <Image Include="Assets\StoreLogo.scale-100.png">
- <DeploymentContent>true</DeploymentContent>
- </Image>
- <Image Include="Assets\StoreLogo.scale-140.png">
- <DeploymentContent>true</DeploymentContent>
- </Image>
- <Image Include="Assets\StoreLogo.scale-180.png">
- <DeploymentContent>true</DeploymentContent>
- </Image>
- </ItemGroup>
- <ItemGroup>
- <ProjectReference Include="..\mupdfwinrt\mupdfwinrt.vcxproj">
- <Project>{9e6ab41d-09a7-45a6-a53b-1e4bf3ac5b33}</Project>
- </ProjectReference>
- </ItemGroup>
- <ItemGroup>
- <None Include="Package.StoreAssociation.xml" />
- </ItemGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
- <ImportGroup Label="ExtensionTargets">
- </ImportGroup>
-</Project> \ No newline at end of file
diff --git a/winrt/mupdf_cpp/mupdf_cpp.vcxproj.filters b/winrt/mupdf_cpp/mupdf_cpp.vcxproj.filters
deleted file mode 100644
index c1791b26..00000000
--- a/winrt/mupdf_cpp/mupdf_cpp.vcxproj.filters
+++ /dev/null
@@ -1,72 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <ItemGroup>
- <Filter Include="Common">
- <UniqueIdentifier>0204a4e7-f1b8-4268-a67c-a2c674b4742d</UniqueIdentifier>
- </Filter>
- <Filter Include="Assets">
- <UniqueIdentifier>a297f943-f0d7-4847-867e-a7aa1ef7f484</UniqueIdentifier>
- </Filter>
- <Page Include="Common\StandardStyles.xaml">
- <Filter>Common</Filter>
- </Page>
- </ItemGroup>
- <ItemGroup>
- <ApplicationDefinition Include="App.xaml" />
- </ItemGroup>
- <ItemGroup>
- <ClCompile Include="App.xaml.cpp" />
- <ClCompile Include="MainPage.xaml.cpp" />
- <ClCompile Include="pch.cpp" />
- <ClCompile Include="DocumentPage.cpp" />
- <ClCompile Include="RectList.cpp" />
- </ItemGroup>
- <ItemGroup>
- <ClInclude Include="pch.h" />
- <ClInclude Include="App.xaml.h" />
- <ClInclude Include="MainPage.xaml.h" />
- <ClInclude Include="DocumentPage.h" />
- <ClInclude Include="RectList.h" />
- <ClInclude Include="..\mupdfwinrt\status.h" />
- </ItemGroup>
- <ItemGroup>
- <AppxManifest Include="Package.appxmanifest" />
- </ItemGroup>
- <ItemGroup>
- <None Include="mupdf_cpp_TemporaryKey.pfx" />
- <None Include="Package.StoreAssociation.xml" />
- <None Include="mupdf_cpp_StoreKey.pfx" />
- </ItemGroup>
- <ItemGroup>
- <Page Include="MainPage.xaml" />
- </ItemGroup>
- <ItemGroup>
- <Image Include="Assets\mupdf_smallogo.png">
- <Filter>Assets</Filter>
- </Image>
- <Image Include="Assets\Logo.Scale-80.png">
- <Filter>Assets</Filter>
- </Image>
- <Image Include="Assets\Logo.Scale-100.png">
- <Filter>Assets</Filter>
- </Image>
- <Image Include="Assets\Logo.Scale-140.png">
- <Filter>Assets</Filter>
- </Image>
- <Image Include="Assets\Logo.Scale-180.png">
- <Filter>Assets</Filter>
- </Image>
- <Image Include="Assets\mupdf_splash.png">
- <Filter>Assets</Filter>
- </Image>
- <Image Include="Assets\StoreLogo.scale-100.png">
- <Filter>Assets</Filter>
- </Image>
- <Image Include="Assets\StoreLogo.scale-140.png">
- <Filter>Assets</Filter>
- </Image>
- <Image Include="Assets\StoreLogo.scale-180.png">
- <Filter>Assets</Filter>
- </Image>
- </ItemGroup>
-</Project> \ No newline at end of file
diff --git a/winrt/mupdf_cpp/pch.cpp b/winrt/mupdf_cpp/pch.cpp
deleted file mode 100644
index 01484ff5..00000000
--- a/winrt/mupdf_cpp/pch.cpp
+++ /dev/null
@@ -1,6 +0,0 @@
-//
-// pch.cpp
-// Include the standard header and generate the precompiled header.
-//
-
-#include "pch.h"
diff --git a/winrt/mupdf_cpp/pch.h b/winrt/mupdf_cpp/pch.h
deleted file mode 100644
index fadf910d..00000000
--- a/winrt/mupdf_cpp/pch.h
+++ /dev/null
@@ -1,9 +0,0 @@
-//
-// pch.h
-// Header for standard system include files.
-//
-
-#pragma once
-
-#include <collection.h>
-#include "App.xaml.h"