mirror of
https://github.com/Microsoft/calculator.git
synced 2025-08-23 06:25:19 -07:00
Merge remote-tracking branch 'upstream/master' into settings
This commit is contained in:
commit
9f2d3e7949
28 changed files with 227 additions and 114 deletions
|
@ -6,11 +6,11 @@
|
||||||
|
|
||||||
trigger:
|
trigger:
|
||||||
- master
|
- master
|
||||||
- servicing/*
|
- release/*
|
||||||
- feature/*
|
- feature/*
|
||||||
pr:
|
pr:
|
||||||
- master
|
- master
|
||||||
- servicing/*
|
- release/*
|
||||||
- feature/*
|
- feature/*
|
||||||
|
|
||||||
name: 0.$(Date:yyMM).$(DayOfMonth)$(Rev:rr).0
|
name: 0.$(Date:yyMM).$(DayOfMonth)$(Rev:rr).0
|
||||||
|
|
|
@ -27,7 +27,7 @@ jobs:
|
||||||
inputs:
|
inputs:
|
||||||
command: download
|
command: download
|
||||||
downloadDirectory: $(Build.SourcesDirectory)
|
downloadDirectory: $(Build.SourcesDirectory)
|
||||||
vstsFeed: WindowsApps
|
vstsFeed: WindowsInboxApps
|
||||||
vstsFeedPackage: calculator-internals
|
vstsFeedPackage: calculator-internals
|
||||||
vstsPackageVersion: 0.0.45
|
vstsPackageVersion: 0.0.45
|
||||||
|
|
||||||
|
|
|
@ -78,7 +78,7 @@ jobs:
|
||||||
inputs:
|
inputs:
|
||||||
command: download
|
command: download
|
||||||
downloadDirectory: $(Build.SourcesDirectory)
|
downloadDirectory: $(Build.SourcesDirectory)
|
||||||
vstsFeed: WindowsApps
|
vstsFeed: WindowsInboxApps
|
||||||
vstsFeedPackage: calculator-internals
|
vstsFeedPackage: calculator-internals
|
||||||
vstsPackageVersion: 0.0.45
|
vstsPackageVersion: 0.0.45
|
||||||
|
|
||||||
|
|
|
@ -75,7 +75,7 @@ void ApplicationViewModel::Categories::set(IObservableVector<NavCategoryGroup ^>
|
||||||
|
|
||||||
void ApplicationViewModel::Initialize(ViewMode mode)
|
void ApplicationViewModel::Initialize(ViewMode mode)
|
||||||
{
|
{
|
||||||
if (!NavCategory::IsValidViewMode(mode))
|
if (!NavCategory::IsValidViewMode(mode) || !NavCategory::IsViewModeEnabled(mode))
|
||||||
{
|
{
|
||||||
mode = ViewMode::Standard;
|
mode = ViewMode::Standard;
|
||||||
}
|
}
|
||||||
|
|
|
@ -361,6 +361,14 @@ bool NavCategory::IsValidViewMode(ViewMode mode)
|
||||||
return iter != s_categoryManifest.end();
|
return iter != s_categoryManifest.end();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool NavCategory::IsViewModeEnabled(ViewMode mode)
|
||||||
|
{
|
||||||
|
auto iter =
|
||||||
|
find_if(begin(s_categoryManifest), end(s_categoryManifest), [mode](const NavCategoryInitializer& initializer) { return initializer.viewMode == mode && initializer.isEnabled; });
|
||||||
|
|
||||||
|
return iter != s_categoryManifest.end();
|
||||||
|
}
|
||||||
|
|
||||||
bool NavCategory::IsCalculatorViewMode(ViewMode mode)
|
bool NavCategory::IsCalculatorViewMode(ViewMode mode)
|
||||||
{
|
{
|
||||||
// Historically, Calculator modes are Standard, Scientific, and Programmer.
|
// Historically, Calculator modes are Standard, Scientific, and Programmer.
|
||||||
|
|
|
@ -135,6 +135,7 @@ namespace CalculatorApp
|
||||||
static ViewMode GetViewModeForFriendlyName(Platform::String ^ name);
|
static ViewMode GetViewModeForFriendlyName(Platform::String ^ name);
|
||||||
|
|
||||||
static bool IsValidViewMode(ViewMode mode);
|
static bool IsValidViewMode(ViewMode mode);
|
||||||
|
static bool IsViewModeEnabled(ViewMode mode);
|
||||||
static bool IsCalculatorViewMode(ViewMode mode);
|
static bool IsCalculatorViewMode(ViewMode mode);
|
||||||
static bool IsGraphingCalculatorViewMode(ViewMode mode);
|
static bool IsGraphingCalculatorViewMode(ViewMode mode);
|
||||||
static bool IsDateCalculatorViewMode(ViewMode mode);
|
static bool IsDateCalculatorViewMode(ViewMode mode);
|
||||||
|
|
|
@ -9,7 +9,7 @@ namespace CalculatorApp
|
||||||
{
|
{
|
||||||
namespace ViewModel
|
namespace ViewModel
|
||||||
{
|
{
|
||||||
[Windows::UI::Xaml::Data::Bindable] public ref class HistoryItemViewModel sealed : Windows::UI::Xaml::Data::ICustomPropertyProvider
|
[Windows::UI::Xaml::Data::Bindable] public ref class HistoryItemViewModel sealed
|
||||||
{
|
{
|
||||||
internal :
|
internal :
|
||||||
|
|
||||||
|
@ -42,23 +42,6 @@ namespace CalculatorApp
|
||||||
property Platform::String
|
property Platform::String
|
||||||
^ AccResult { Platform::String ^ get() { return m_accResult; } }
|
^ AccResult { Platform::String ^ get() { return m_accResult; } }
|
||||||
|
|
||||||
virtual Windows::UI::Xaml::Data::ICustomProperty
|
|
||||||
^ GetCustomProperty(Platform::String ^ name) { return nullptr; }
|
|
||||||
|
|
||||||
virtual Windows::UI::Xaml::Data::ICustomProperty
|
|
||||||
^ GetIndexedProperty(Platform::String ^ name, Windows::UI::Xaml::Interop::TypeName type) { return nullptr; }
|
|
||||||
|
|
||||||
virtual property Windows::UI::Xaml::Interop::TypeName Type
|
|
||||||
{
|
|
||||||
Windows::UI::Xaml::Interop::TypeName get()
|
|
||||||
{
|
|
||||||
return this->GetType();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
virtual Platform::String
|
|
||||||
^ GetStringRepresentation() { return m_accExpression + " " + m_accResult; }
|
|
||||||
|
|
||||||
private : static Platform::String
|
private : static Platform::String
|
||||||
^ GetAccessibleExpressionFromTokens(
|
^ GetAccessibleExpressionFromTokens(
|
||||||
_In_ std::shared_ptr<std::vector<std::pair<std::wstring, int>>> const& spTokens,
|
_In_ std::shared_ptr<std::vector<std::pair<std::wstring, int>>> const& spTokens,
|
||||||
|
|
|
@ -14,8 +14,7 @@ namespace CalculatorApp
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Model representation of a single item in the Memory list
|
/// Model representation of a single item in the Memory list
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[Windows::UI::Xaml::Data::Bindable] public ref class MemoryItemViewModel sealed : public Windows::UI::Xaml::Data::INotifyPropertyChanged,
|
[Windows::UI::Xaml::Data::Bindable] public ref class MemoryItemViewModel sealed : public Windows::UI::Xaml::Data::INotifyPropertyChanged
|
||||||
Windows::UI::Xaml::Data::ICustomPropertyProvider
|
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
MemoryItemViewModel(StandardCalculatorViewModel ^ calcVM)
|
MemoryItemViewModel(StandardCalculatorViewModel ^ calcVM)
|
||||||
|
@ -27,23 +26,6 @@ namespace CalculatorApp
|
||||||
OBSERVABLE_PROPERTY_RW(int, Position);
|
OBSERVABLE_PROPERTY_RW(int, Position);
|
||||||
OBSERVABLE_PROPERTY_RW(Platform::String ^, Value);
|
OBSERVABLE_PROPERTY_RW(Platform::String ^, Value);
|
||||||
|
|
||||||
virtual Windows::UI::Xaml::Data::ICustomProperty
|
|
||||||
^ GetCustomProperty(Platform::String ^ name) { return nullptr; }
|
|
||||||
|
|
||||||
virtual Windows::UI::Xaml::Data::ICustomProperty
|
|
||||||
^ GetIndexedProperty(Platform::String ^ name, Windows::UI::Xaml::Interop::TypeName type) { return nullptr; }
|
|
||||||
|
|
||||||
virtual property Windows::UI::Xaml::Interop::TypeName Type
|
|
||||||
{
|
|
||||||
Windows::UI::Xaml::Interop::TypeName get()
|
|
||||||
{
|
|
||||||
return this->GetType();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
virtual Platform::String
|
|
||||||
^ GetStringRepresentation() { return Value; }
|
|
||||||
|
|
||||||
void Clear();
|
void Clear();
|
||||||
void MemoryAdd();
|
void MemoryAdd();
|
||||||
void MemorySubtract();
|
void MemorySubtract();
|
||||||
|
|
|
@ -132,7 +132,7 @@ StandardCalculatorViewModel::StandardCalculatorViewModel()
|
||||||
IsOperandEnabled = true;
|
IsOperandEnabled = true;
|
||||||
IsNegateEnabled = true;
|
IsNegateEnabled = true;
|
||||||
IsDecimalEnabled = true;
|
IsDecimalEnabled = true;
|
||||||
AreProgrammerRadixOperatorsEnabled = false;
|
AreProgrammerRadixOperatorsVisible = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
String ^ StandardCalculatorViewModel::LocalizeDisplayValue(_In_ wstring const& displayValue)
|
String ^ StandardCalculatorViewModel::LocalizeDisplayValue(_In_ wstring const& displayValue)
|
||||||
|
|
|
@ -76,7 +76,7 @@ namespace CalculatorApp
|
||||||
OBSERVABLE_PROPERTY_R(CalculatorApp::Common::NumberBase, CurrentRadixType);
|
OBSERVABLE_PROPERTY_R(CalculatorApp::Common::NumberBase, CurrentRadixType);
|
||||||
OBSERVABLE_PROPERTY_R(bool, AreTokensUpdated);
|
OBSERVABLE_PROPERTY_R(bool, AreTokensUpdated);
|
||||||
OBSERVABLE_PROPERTY_R(bool, AreAlwaysOnTopResultsUpdated);
|
OBSERVABLE_PROPERTY_R(bool, AreAlwaysOnTopResultsUpdated);
|
||||||
OBSERVABLE_PROPERTY_R(bool, AreProgrammerRadixOperatorsEnabled);
|
OBSERVABLE_PROPERTY_R(bool, AreProgrammerRadixOperatorsVisible);
|
||||||
OBSERVABLE_PROPERTY_R(bool, IsInputEmpty);
|
OBSERVABLE_PROPERTY_R(bool, IsInputEmpty);
|
||||||
OBSERVABLE_PROPERTY_R(CalculatorApp::Common::Automation::NarratorAnnouncement ^, Announcement);
|
OBSERVABLE_PROPERTY_R(CalculatorApp::Common::Automation::NarratorAnnouncement ^, Announcement);
|
||||||
OBSERVABLE_PROPERTY_R(unsigned int, OpenParenthesisCount);
|
OBSERVABLE_PROPERTY_R(unsigned int, OpenParenthesisCount);
|
||||||
|
@ -103,7 +103,7 @@ namespace CalculatorApp
|
||||||
{
|
{
|
||||||
m_isBitFlipChecked = value;
|
m_isBitFlipChecked = value;
|
||||||
IsBinaryBitFlippingEnabled = IsProgrammer && m_isBitFlipChecked;
|
IsBinaryBitFlippingEnabled = IsProgrammer && m_isBitFlipChecked;
|
||||||
AreProgrammerRadixOperatorsEnabled = IsProgrammer && !m_isBitFlipChecked;
|
AreProgrammerRadixOperatorsVisible = IsProgrammer && !m_isBitFlipChecked;
|
||||||
RaisePropertyChanged(L"IsBitFlipChecked");
|
RaisePropertyChanged(L"IsBitFlipChecked");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -178,7 +178,7 @@ namespace CalculatorApp
|
||||||
IsBitFlipChecked = false;
|
IsBitFlipChecked = false;
|
||||||
}
|
}
|
||||||
IsBinaryBitFlippingEnabled = m_isProgrammer && IsBitFlipChecked;
|
IsBinaryBitFlippingEnabled = m_isProgrammer && IsBitFlipChecked;
|
||||||
AreProgrammerRadixOperatorsEnabled = m_isProgrammer && !IsBitFlipChecked;
|
AreProgrammerRadixOperatorsVisible = m_isProgrammer && !IsBitFlipChecked;
|
||||||
if (value)
|
if (value)
|
||||||
{
|
{
|
||||||
IsStandard = false;
|
IsStandard = false;
|
||||||
|
|
|
@ -162,6 +162,10 @@ task<void> App::SetupJumpList()
|
||||||
|
|
||||||
for (NavCategory ^ option : calculatorOptions->Categories)
|
for (NavCategory ^ option : calculatorOptions->Categories)
|
||||||
{
|
{
|
||||||
|
if (!option->IsEnabled)
|
||||||
|
{
|
||||||
|
continue;
|
||||||
|
}
|
||||||
ViewMode mode = option->Mode;
|
ViewMode mode = option->Mode;
|
||||||
auto item = JumpListItem::CreateWithArguments(((int)mode).ToString(), L"ms-resource:///Resources/" + NavCategory::GetNameResourceKey(mode));
|
auto item = JumpListItem::CreateWithArguments(((int)mode).ToString(), L"ms-resource:///Resources/" + NavCategory::GetNameResourceKey(mode));
|
||||||
item->Description = L"ms-resource:///Resources/" + NavCategory::GetNameResourceKey(mode);
|
item->Description = L"ms-resource:///Resources/" + NavCategory::GetNameResourceKey(mode);
|
||||||
|
|
|
@ -135,7 +135,7 @@
|
||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
<AdditionalOptions>/bigobj /await /std:c++17 /utf-8</AdditionalOptions>
|
<AdditionalOptions>/bigobj /await /std:c++17 /utf-8 %(AdditionalOptions)</AdditionalOptions>
|
||||||
<DisableSpecificWarnings>4453;28204</DisableSpecificWarnings>
|
<DisableSpecificWarnings>4453;28204</DisableSpecificWarnings>
|
||||||
<AdditionalIncludeDirectories>$(SolutionDir)..\src\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories>$(SolutionDir)..\src\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<WarningLevel>Level4</WarningLevel>
|
<WarningLevel>Level4</WarningLevel>
|
||||||
|
@ -144,7 +144,7 @@
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
<AdditionalOptions>/bigobj /await /std:c++17 /utf-8</AdditionalOptions>
|
<AdditionalOptions>/bigobj /await /std:c++17 /utf-8 %(AdditionalOptions)</AdditionalOptions>
|
||||||
<DisableSpecificWarnings>4453;28204</DisableSpecificWarnings>
|
<DisableSpecificWarnings>4453;28204</DisableSpecificWarnings>
|
||||||
<AdditionalIncludeDirectories>$(SolutionDir)..\src\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories>$(SolutionDir)..\src\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<WarningLevel>Level4</WarningLevel>
|
<WarningLevel>Level4</WarningLevel>
|
||||||
|
@ -177,7 +177,7 @@
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
<AdditionalOptions>/bigobj /await /std:c++17 /utf-8</AdditionalOptions>
|
<AdditionalOptions>/bigobj /await /std:c++17 /utf-8 %(AdditionalOptions)</AdditionalOptions>
|
||||||
<DisableSpecificWarnings>4453;28204</DisableSpecificWarnings>
|
<DisableSpecificWarnings>4453;28204</DisableSpecificWarnings>
|
||||||
<AdditionalIncludeDirectories>$(SolutionDir)..\src\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories>$(SolutionDir)..\src\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<WarningLevel>Level4</WarningLevel>
|
<WarningLevel>Level4</WarningLevel>
|
||||||
|
@ -198,7 +198,7 @@
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
<AdditionalOptions>/bigobj /await /std:c++17 /utf-8</AdditionalOptions>
|
<AdditionalOptions>/bigobj /await /std:c++17 /utf-8 %(AdditionalOptions)</AdditionalOptions>
|
||||||
<DisableSpecificWarnings>4453;28204</DisableSpecificWarnings>
|
<DisableSpecificWarnings>4453;28204</DisableSpecificWarnings>
|
||||||
<AdditionalIncludeDirectories>$(SolutionDir)..\src\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories>$(SolutionDir)..\src\;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
<WarningLevel>Level4</WarningLevel>
|
<WarningLevel>Level4</WarningLevel>
|
||||||
|
|
|
@ -346,13 +346,13 @@
|
||||||
<Flyout x:Name="BitShiftFlyout"
|
<Flyout x:Name="BitShiftFlyout"
|
||||||
Windows10version1809:AreOpenCloseAnimationsEnabled="False"
|
Windows10version1809:AreOpenCloseAnimationsEnabled="False"
|
||||||
FlyoutPresenterStyle="{ThemeResource OperatorPanelFlyoutStyle}"
|
FlyoutPresenterStyle="{ThemeResource OperatorPanelFlyoutStyle}"
|
||||||
Placement="Bottom">
|
Placement="Bottom"
|
||||||
|
Opened="BitShiftFlyout_Opened">
|
||||||
<StackPanel MaxWidth="192" Padding="12">
|
<StackPanel MaxWidth="192" Padding="12">
|
||||||
<RadioButton x:Name="ArithmeticShiftButton"
|
<RadioButton x:Name="ArithmeticShiftButton"
|
||||||
x:Uid="arithmeticShiftButton"
|
x:Uid="arithmeticShiftButton"
|
||||||
AutomationProperties.AutomationId="arithmeticShiftButton"
|
AutomationProperties.AutomationId="arithmeticShiftButton"
|
||||||
Checked="BitshiftFlyout_Checked"
|
Checked="BitshiftFlyout_Checked"/>
|
||||||
IsChecked="True"/>
|
|
||||||
<RadioButton x:Name="LogicalShiftButton"
|
<RadioButton x:Name="LogicalShiftButton"
|
||||||
x:Uid="logicalShiftButton"
|
x:Uid="logicalShiftButton"
|
||||||
AutomationProperties.AutomationId="logicalShiftButton"
|
AutomationProperties.AutomationId="logicalShiftButton"
|
||||||
|
|
|
@ -47,10 +47,31 @@ void CalculatorProgrammerRadixOperators::FlyoutButton_Clicked(_In_ Platform::Obj
|
||||||
|
|
||||||
void CalculatorProgrammerRadixOperators::checkDefaultBitShift()
|
void CalculatorProgrammerRadixOperators::checkDefaultBitShift()
|
||||||
{
|
{
|
||||||
this->ArithmeticShiftButton->IsChecked = true;
|
LoadDeferredLoadButtons();
|
||||||
|
|
||||||
|
if (IsButtonLoaded())
|
||||||
|
{
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
void CalculatorProgrammerRadixOperators::BitshiftFlyout_Checked(Platform::Object ^ sender, Windows::UI::Xaml::RoutedEventArgs ^ e)
|
CollapseBitshiftButtons();
|
||||||
|
|
||||||
|
m_selectedShiftButtonMode = BitShiftMode::Arithmetic;
|
||||||
|
LshButton->Visibility = ::Visibility::Visible;
|
||||||
|
RshButton->Visibility = ::Visibility::Visible;
|
||||||
|
LshButton->IsEnabled = true;
|
||||||
|
RshButton->IsEnabled = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool CalculatorApp::CalculatorProgrammerRadixOperators::IsButtonLoaded()
|
||||||
|
{
|
||||||
|
// Since arithmeticShiftButton defaults to IsChecked = true, this event an fire before we can load the deferred loaded controls. If that is the case, just
|
||||||
|
// return and do nothing.
|
||||||
|
return RolButton == nullptr || RorButton == nullptr || RolCarryButton == nullptr || RorCarryButton == nullptr || LshLogicalButton == nullptr
|
||||||
|
|| RshLogicalButton == nullptr;
|
||||||
|
}
|
||||||
|
|
||||||
|
void CalculatorApp::CalculatorProgrammerRadixOperators::LoadDeferredLoadButtons()
|
||||||
{
|
{
|
||||||
// Load deferred load buttons
|
// Load deferred load buttons
|
||||||
if (RolButton == nullptr)
|
if (RolButton == nullptr)
|
||||||
|
@ -62,11 +83,14 @@ void CalculatorProgrammerRadixOperators::BitshiftFlyout_Checked(Platform::Object
|
||||||
FindName("LshLogicalButton");
|
FindName("LshLogicalButton");
|
||||||
FindName("RshLogicalButton");
|
FindName("RshLogicalButton");
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Since arithmeticShiftButton defaults to IsChecked = true, this event an fire before we can load the deferred loaded controls. If that is the case, just
|
void CalculatorProgrammerRadixOperators::BitshiftFlyout_Checked(Platform::Object ^ sender, Windows::UI::Xaml::RoutedEventArgs ^ e)
|
||||||
// return and do nothing.
|
{
|
||||||
if (RolButton == nullptr || RorButton == nullptr || RolCarryButton == nullptr || RorCarryButton == nullptr || LshLogicalButton == nullptr
|
// Load deferred load buttons
|
||||||
|| RshLogicalButton == nullptr)
|
LoadDeferredLoadButtons();
|
||||||
|
|
||||||
|
if (IsButtonLoaded())
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -75,6 +99,7 @@ void CalculatorProgrammerRadixOperators::BitshiftFlyout_Checked(Platform::Object
|
||||||
|
|
||||||
auto radioButton = static_cast<RadioButton ^>(sender);
|
auto radioButton = static_cast<RadioButton ^>(sender);
|
||||||
Platform::String ^ announcementString = L"";
|
Platform::String ^ announcementString = L"";
|
||||||
|
BitShiftMode selectedButtonMode = m_selectedShiftButtonMode;
|
||||||
|
|
||||||
if (radioButton == ArithmeticShiftButton)
|
if (radioButton == ArithmeticShiftButton)
|
||||||
{
|
{
|
||||||
|
@ -83,6 +108,7 @@ void CalculatorProgrammerRadixOperators::BitshiftFlyout_Checked(Platform::Object
|
||||||
LshButton->IsEnabled = true;
|
LshButton->IsEnabled = true;
|
||||||
RshButton->IsEnabled = true;
|
RshButton->IsEnabled = true;
|
||||||
announcementString = m_arithmeticShiftButtonContent;
|
announcementString = m_arithmeticShiftButtonContent;
|
||||||
|
selectedButtonMode = BitShiftMode::Arithmetic;
|
||||||
}
|
}
|
||||||
else if (radioButton == LogicalShiftButton)
|
else if (radioButton == LogicalShiftButton)
|
||||||
{
|
{
|
||||||
|
@ -91,6 +117,7 @@ void CalculatorProgrammerRadixOperators::BitshiftFlyout_Checked(Platform::Object
|
||||||
LshLogicalButton->IsEnabled = true;
|
LshLogicalButton->IsEnabled = true;
|
||||||
RshLogicalButton->IsEnabled = true;
|
RshLogicalButton->IsEnabled = true;
|
||||||
announcementString = m_logicalShiftButtonContent;
|
announcementString = m_logicalShiftButtonContent;
|
||||||
|
selectedButtonMode = BitShiftMode::LogicalShift;
|
||||||
}
|
}
|
||||||
else if (radioButton == RotateCircularButton)
|
else if (radioButton == RotateCircularButton)
|
||||||
{
|
{
|
||||||
|
@ -99,6 +126,7 @@ void CalculatorProgrammerRadixOperators::BitshiftFlyout_Checked(Platform::Object
|
||||||
RolButton->IsEnabled = true;
|
RolButton->IsEnabled = true;
|
||||||
RorButton->IsEnabled = true;
|
RorButton->IsEnabled = true;
|
||||||
announcementString = m_rotateCircularButtonContent;
|
announcementString = m_rotateCircularButtonContent;
|
||||||
|
selectedButtonMode = BitShiftMode::RotateCircular;
|
||||||
}
|
}
|
||||||
else if (radioButton == RotateCarryShiftButton)
|
else if (radioButton == RotateCarryShiftButton)
|
||||||
{
|
{
|
||||||
|
@ -107,9 +135,15 @@ void CalculatorProgrammerRadixOperators::BitshiftFlyout_Checked(Platform::Object
|
||||||
RolCarryButton->IsEnabled = true;
|
RolCarryButton->IsEnabled = true;
|
||||||
RorCarryButton->IsEnabled = true;
|
RorCarryButton->IsEnabled = true;
|
||||||
announcementString = m_rotateCarryShiftButtonContent;
|
announcementString = m_rotateCarryShiftButtonContent;
|
||||||
|
selectedButtonMode = BitShiftMode::RotateCarry;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (selectedButtonMode != m_selectedShiftButtonMode)
|
||||||
|
{
|
||||||
this->BitShiftFlyout->Hide();
|
this->BitShiftFlyout->Hide();
|
||||||
|
m_selectedShiftButtonMode = selectedButtonMode;
|
||||||
|
}
|
||||||
|
|
||||||
Model->SetBitshiftRadioButtonCheckedAnnouncement(announcementString);
|
Model->SetBitshiftRadioButtonCheckedAnnouncement(announcementString);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -176,3 +210,23 @@ void CalculatorProgrammerRadixOperators::ClearButton_LostFocus(Object ^ sender,
|
||||||
ClearEntryButton->Focus(::FocusState::Programmatic);
|
ClearEntryButton->Focus(::FocusState::Programmatic);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void CalculatorApp::CalculatorProgrammerRadixOperators::BitShiftFlyout_Opened(Platform::Object ^ sender, Platform::Object ^ e)
|
||||||
|
{
|
||||||
|
if (m_selectedShiftButtonMode == BitShiftMode::Arithmetic)
|
||||||
|
{
|
||||||
|
ArithmeticShiftButton->IsChecked = true;
|
||||||
|
}
|
||||||
|
else if (m_selectedShiftButtonMode == BitShiftMode::LogicalShift)
|
||||||
|
{
|
||||||
|
LogicalShiftButton->IsChecked = true;
|
||||||
|
}
|
||||||
|
else if (m_selectedShiftButtonMode == BitShiftMode::RotateCircular)
|
||||||
|
{
|
||||||
|
RotateCircularButton->IsChecked = true;
|
||||||
|
}
|
||||||
|
else if (m_selectedShiftButtonMode == BitShiftMode::RotateCarry)
|
||||||
|
{
|
||||||
|
RotateCarryShiftButton->IsChecked = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -29,19 +29,30 @@ namespace CalculatorApp
|
||||||
Platform::String ^ ParenthesisCountToString(unsigned int count);
|
Platform::String ^ ParenthesisCountToString(unsigned int count);
|
||||||
|
|
||||||
DEPENDENCY_PROPERTY_OWNER(CalculatorProgrammerRadixOperators);
|
DEPENDENCY_PROPERTY_OWNER(CalculatorProgrammerRadixOperators);
|
||||||
|
|
||||||
void checkDefaultBitShift();
|
void checkDefaultBitShift();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
enum class BitShiftMode
|
||||||
|
{
|
||||||
|
Arithmetic,
|
||||||
|
LogicalShift,
|
||||||
|
RotateCircular,
|
||||||
|
RotateCarry
|
||||||
|
};
|
||||||
|
|
||||||
void BitshiftFlyout_Checked(Platform::Object ^ sender, Windows::UI::Xaml::RoutedEventArgs ^ e);
|
void BitshiftFlyout_Checked(Platform::Object ^ sender, Windows::UI::Xaml::RoutedEventArgs ^ e);
|
||||||
void FlyoutButton_Clicked(_In_ Platform::Object ^ sender, _In_ Windows::UI::Xaml::RoutedEventArgs ^ e);
|
void FlyoutButton_Clicked(_In_ Platform::Object ^ sender, _In_ Windows::UI::Xaml::RoutedEventArgs ^ e);
|
||||||
void CollapseBitshiftButtons();
|
void CollapseBitshiftButtons();
|
||||||
void LoadResourceStrings();
|
void LoadResourceStrings();
|
||||||
|
void LoadDeferredLoadButtons();
|
||||||
|
bool IsButtonLoaded();
|
||||||
|
|
||||||
bool m_isErrorVisualState;
|
bool m_isErrorVisualState;
|
||||||
void OpenParenthesisButton_GotFocus(Platform::Object ^ sender, Windows::UI::Xaml::RoutedEventArgs ^ e);
|
void OpenParenthesisButton_GotFocus(Platform::Object ^ sender, Windows::UI::Xaml::RoutedEventArgs ^ e);
|
||||||
void ClearEntryButton_LostFocus(Platform::Object ^ sender, Windows::UI::Xaml::RoutedEventArgs ^ e);
|
void ClearEntryButton_LostFocus(Platform::Object ^ sender, Windows::UI::Xaml::RoutedEventArgs ^ e);
|
||||||
void ClearButton_LostFocus(Platform::Object ^ sender, Windows::UI::Xaml::RoutedEventArgs ^ e);
|
void ClearButton_LostFocus(Platform::Object ^ sender, Windows::UI::Xaml::RoutedEventArgs ^ e);
|
||||||
|
void BitShiftFlyout_Opened(Platform::Object ^ sender, Platform::Object ^ e);
|
||||||
|
BitShiftMode m_selectedShiftButtonMode;
|
||||||
Platform::String ^ m_arithmeticShiftButtonContent;
|
Platform::String ^ m_arithmeticShiftButtonContent;
|
||||||
Platform::String ^ m_logicalShiftButtonContent;
|
Platform::String ^ m_logicalShiftButtonContent;
|
||||||
Platform::String ^ m_rotateCircularButtonContent;
|
Platform::String ^ m_rotateCircularButtonContent;
|
||||||
|
|
|
@ -63,6 +63,7 @@
|
||||||
Margin="0,0,0,4"
|
Margin="0,0,0,4"
|
||||||
HorizontalAlignment="Right"
|
HorizontalAlignment="Right"
|
||||||
Style="{ThemeResource BodyTextBlockMediumStyle}"
|
Style="{ThemeResource BodyTextBlockMediumStyle}"
|
||||||
|
AutomationProperties.AutomationId="HistoryItemExpression"
|
||||||
AutomationProperties.Name="{x:Bind AccExpression}"
|
AutomationProperties.Name="{x:Bind AccExpression}"
|
||||||
IsTextSelectionEnabled="True"
|
IsTextSelectionEnabled="True"
|
||||||
Text="{x:Bind Expression}"
|
Text="{x:Bind Expression}"
|
||||||
|
@ -72,6 +73,7 @@
|
||||||
HorizontalAlignment="Right"
|
HorizontalAlignment="Right"
|
||||||
Style="{ThemeResource TitleTextBlockStyle}"
|
Style="{ThemeResource TitleTextBlockStyle}"
|
||||||
FontWeight="SemiBold"
|
FontWeight="SemiBold"
|
||||||
|
AutomationProperties.AutomationId="HistoryItemValue"
|
||||||
AutomationProperties.Name="{x:Bind AccResult}"
|
AutomationProperties.Name="{x:Bind AccResult}"
|
||||||
IsTextSelectionEnabled="True"
|
IsTextSelectionEnabled="True"
|
||||||
Text="{x:Bind Result}"
|
Text="{x:Bind Result}"
|
||||||
|
|
|
@ -145,6 +145,7 @@
|
||||||
AutomationProperties.AutomationId="NormalAlwaysOnTopButton"
|
AutomationProperties.AutomationId="NormalAlwaysOnTopButton"
|
||||||
Click="AlwaysOnTopButtonClick"
|
Click="AlwaysOnTopButtonClick"
|
||||||
Content=""
|
Content=""
|
||||||
|
TabIndex="3"
|
||||||
Visibility="{x:Bind Model.DisplayNormalAlwaysOnTopOption, Mode=OneWay}">
|
Visibility="{x:Bind Model.DisplayNormalAlwaysOnTopOption, Mode=OneWay}">
|
||||||
<Button.KeyboardAccelerators>
|
<Button.KeyboardAccelerators>
|
||||||
<KeyboardAccelerator Key="Up" Modifiers="Menu"/>
|
<KeyboardAccelerator Key="Up" Modifiers="Menu"/>
|
||||||
|
|
|
@ -54,6 +54,7 @@
|
||||||
HorizontalAlignment="Right"
|
HorizontalAlignment="Right"
|
||||||
Style="{ThemeResource TitleTextBlockStyle}"
|
Style="{ThemeResource TitleTextBlockStyle}"
|
||||||
FontWeight="SemiBold"
|
FontWeight="SemiBold"
|
||||||
|
AutomationProperties.AutomationId="MemoryItemValue"
|
||||||
FlowDirection="LeftToRight"
|
FlowDirection="LeftToRight"
|
||||||
IsTextSelectionEnabled="True"
|
IsTextSelectionEnabled="True"
|
||||||
Text="{x:Bind Model.Value, Mode=OneWay}"
|
Text="{x:Bind Model.Value, Mode=OneWay}"
|
||||||
|
|
|
@ -27,8 +27,8 @@
|
||||||
|
|
||||||
<local:CalculatorProgrammerRadixOperators x:Name="ProgrammerRadixOperators"
|
<local:CalculatorProgrammerRadixOperators x:Name="ProgrammerRadixOperators"
|
||||||
TabIndex="16"
|
TabIndex="16"
|
||||||
Visibility="{x:Bind Model.AreProgrammerRadixOperatorsEnabled, Mode=OneWay}"
|
Visibility="{x:Bind Model.AreProgrammerRadixOperatorsVisible, Mode=OneWay}"
|
||||||
IsEnabled="{x:Bind Model.AreProgrammerRadixOperatorsEnabled, Mode=OneWay}"
|
IsEnabled="{x:Bind Model.IsProgrammer, Mode=OneWay}"
|
||||||
x:Load="False"/>
|
x:Load="False"/>
|
||||||
|
|
||||||
</Grid>
|
</Grid>
|
||||||
|
|
|
@ -72,11 +72,8 @@ void OperatorsPanel::EnsureProgrammerRadixOps()
|
||||||
this->FindName(L"ProgrammerRadixOperators");
|
this->FindName(L"ProgrammerRadixOperators");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (ProgrammerRadixOperators)
|
|
||||||
{
|
|
||||||
ProgrammerRadixOperators->checkDefaultBitShift();
|
ProgrammerRadixOperators->checkDefaultBitShift();
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
void OperatorsPanel::EnsureProgrammerBitFlipPanel()
|
void OperatorsPanel::EnsureProgrammerBitFlipPanel()
|
||||||
{
|
{
|
||||||
|
|
29
src/CalculatorUITestFramework/HistoryItem.cs
Normal file
29
src/CalculatorUITestFramework/HistoryItem.cs
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
// Licensed under the MIT License.
|
||||||
|
|
||||||
|
using OpenQA.Selenium.Appium;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Text;
|
||||||
|
|
||||||
|
namespace CalculatorUITestFramework
|
||||||
|
{
|
||||||
|
public class HistoryItem
|
||||||
|
{
|
||||||
|
public AppiumWebElement Item { get; }
|
||||||
|
|
||||||
|
public HistoryItem(AppiumWebElement item)
|
||||||
|
{
|
||||||
|
Item = item;
|
||||||
|
}
|
||||||
|
|
||||||
|
public string GetValue()
|
||||||
|
{
|
||||||
|
return Item.FindElementByAccessibilityId("HistoryItemValue")?.Text;
|
||||||
|
}
|
||||||
|
public string GetExpression()
|
||||||
|
{
|
||||||
|
return Item.FindElementByAccessibilityId("HistoryItemExpression")?.Text;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -5,8 +5,10 @@ using OpenQA.Selenium;
|
||||||
using OpenQA.Selenium.Appium;
|
using OpenQA.Selenium.Appium;
|
||||||
using OpenQA.Selenium.Appium.Windows;
|
using OpenQA.Selenium.Appium.Windows;
|
||||||
using OpenQA.Selenium.Interactions;
|
using OpenQA.Selenium.Interactions;
|
||||||
|
using System.Collections.Generic;
|
||||||
using System.Collections.ObjectModel;
|
using System.Collections.ObjectModel;
|
||||||
using System.Drawing;
|
using System.Drawing;
|
||||||
|
using System.Linq;
|
||||||
|
|
||||||
namespace CalculatorUITestFramework
|
namespace CalculatorUITestFramework
|
||||||
{
|
{
|
||||||
|
@ -34,10 +36,10 @@ namespace CalculatorUITestFramework
|
||||||
/// Gets all of the history items listed in the History Pane.
|
/// Gets all of the history items listed in the History Pane.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns>A readonly collection of history items.</returns>
|
/// <returns>A readonly collection of history items.</returns>
|
||||||
public ReadOnlyCollection<AppiumWebElement> GetAllHistoryListViewItems()
|
public List<HistoryItem> GetAllHistoryListViewItems()
|
||||||
{
|
{
|
||||||
OpenHistoryPanel();
|
OpenHistoryPanel();
|
||||||
return this.HistoryListView.FindElementsByClassName("ListViewItem");
|
return (from item in this.HistoryListView.FindElementsByClassName("ListViewItem") select new HistoryItem(item)).ToList();
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -92,10 +94,10 @@ namespace CalculatorUITestFramework
|
||||||
/// Gets all of the History items listed in the History Flyout.
|
/// Gets all of the History items listed in the History Flyout.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns> A read only collection of History items.</returns>
|
/// <returns> A read only collection of History items.</returns>
|
||||||
public ReadOnlyCollection<AppiumWebElement> GetAllHistoryFlyoutListViewItems()
|
public List<HistoryItem> GetAllHistoryFlyoutListViewItems()
|
||||||
{
|
{
|
||||||
OpenHistoryFlyout();
|
OpenHistoryFlyout();
|
||||||
return this.HistoryListView.FindElementsByClassName("ListViewItem");
|
return (from item in this.HistoryListView.FindElementsByClassName("ListViewItem") select new HistoryItem(item)).ToList();
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
25
src/CalculatorUITestFramework/MemoryItem.cs
Normal file
25
src/CalculatorUITestFramework/MemoryItem.cs
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
// Licensed under the MIT License.
|
||||||
|
|
||||||
|
using OpenQA.Selenium.Appium;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Text;
|
||||||
|
|
||||||
|
namespace CalculatorUITestFramework
|
||||||
|
{
|
||||||
|
public class MemoryItem
|
||||||
|
{
|
||||||
|
public AppiumWebElement Item { get; }
|
||||||
|
|
||||||
|
public MemoryItem(AppiumWebElement item)
|
||||||
|
{
|
||||||
|
Item = item;
|
||||||
|
}
|
||||||
|
|
||||||
|
public string GetValue()
|
||||||
|
{
|
||||||
|
return Item.FindElementByAccessibilityId("MemoryItemValue")?.Text;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -6,8 +6,10 @@ using OpenQA.Selenium;
|
||||||
using OpenQA.Selenium.Appium;
|
using OpenQA.Selenium.Appium;
|
||||||
using OpenQA.Selenium.Appium.Windows;
|
using OpenQA.Selenium.Appium.Windows;
|
||||||
using OpenQA.Selenium.Interactions;
|
using OpenQA.Selenium.Interactions;
|
||||||
|
using System.Collections.Generic;
|
||||||
using System.Collections.ObjectModel;
|
using System.Collections.ObjectModel;
|
||||||
using System.Drawing;
|
using System.Drawing;
|
||||||
|
using System.Linq;
|
||||||
|
|
||||||
namespace CalculatorUITestFramework
|
namespace CalculatorUITestFramework
|
||||||
{
|
{
|
||||||
|
@ -43,10 +45,10 @@ namespace CalculatorUITestFramework
|
||||||
/// Gets all of the memory items listed in the Memory Pane.
|
/// Gets all of the memory items listed in the Memory Pane.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns>A read-only collection of memory items.</returns>
|
/// <returns>A read-only collection of memory items.</returns>
|
||||||
public ReadOnlyCollection<AppiumWebElement> GetAllMemoryListViewItems()
|
public List<MemoryItem> GetAllMemoryListViewItems()
|
||||||
{
|
{
|
||||||
OpenMemoryPanel();
|
OpenMemoryPanel();
|
||||||
return this.MemoryListView.FindElementsByClassName("ListViewItem");
|
return (from item in this.MemoryListView.FindElementsByClassName("ListViewItem") select new MemoryItem(item)).ToList();
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -119,10 +121,10 @@ namespace CalculatorUITestFramework
|
||||||
/// Gets all of the memory items listed in the Memory Flyout.
|
/// Gets all of the memory items listed in the Memory Flyout.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns> A read only collection of memory items.</returns>
|
/// <returns> A read only collection of memory items.</returns>
|
||||||
public ReadOnlyCollection<AppiumWebElement> GetAllMemoryFlyoutListViewItems()
|
public List<MemoryItem> GetAllMemoryFlyoutListViewItems()
|
||||||
{
|
{
|
||||||
OpenMemoryFlyout();
|
OpenMemoryFlyout();
|
||||||
return this.MemoryListView.FindElementsByClassName("ListViewItem");
|
return (from item in this.MemoryListView.FindElementsByClassName("ListViewItem") select new MemoryItem(item)).ToList();
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
|
@ -88,20 +88,22 @@ namespace CalculatorUITests
|
||||||
page.StandardOperators.EqualButton.Click();
|
page.StandardOperators.EqualButton.Click();
|
||||||
|
|
||||||
var historyItems = page.HistoryPanel.GetAllHistoryListViewItems();
|
var historyItems = page.HistoryPanel.GetAllHistoryListViewItems();
|
||||||
Assert.IsTrue(historyItems[0].Text.Equals("2 Minus ( 3= Minus (1", StringComparison.InvariantCultureIgnoreCase));
|
Assert.IsTrue(historyItems[0].GetValue().Equals("-1", StringComparison.InvariantCultureIgnoreCase));
|
||||||
Assert.IsTrue(historyItems[1].Text.Equals("-3 + -2.6= Minus (5.6", StringComparison.InvariantCultureIgnoreCase));
|
Assert.IsTrue(historyItems[0].GetExpression().Equals("2 - 3 =", StringComparison.InvariantCultureIgnoreCase));
|
||||||
|
Assert.IsTrue(historyItems[1].GetValue().Equals("-5.6", StringComparison.InvariantCultureIgnoreCase));
|
||||||
|
Assert.IsTrue(historyItems[1].GetExpression().Equals("-3 + -2.6 =", StringComparison.InvariantCultureIgnoreCase));
|
||||||
|
|
||||||
Assert.AreEqual("-1", page.CalculatorResults.GetCalculatorResultText());
|
Assert.AreEqual("-1", page.CalculatorResults.GetCalculatorResultText());
|
||||||
|
|
||||||
Actions clickHistoryItemsw1 = new Actions(WinAppDriver.Instance.CalculatorSession);
|
Actions clickHistoryItemsw1 = new Actions(WinAppDriver.Instance.CalculatorSession);
|
||||||
clickHistoryItemsw1.Click(historyItems[1]);
|
clickHistoryItemsw1.Click(historyItems[1].Item);
|
||||||
clickHistoryItemsw1.Perform();
|
clickHistoryItemsw1.Perform();
|
||||||
|
|
||||||
Assert.AreEqual("-5.6", page.CalculatorResults.GetCalculatorResultText());
|
Assert.AreEqual("-5.6", page.CalculatorResults.GetCalculatorResultText());
|
||||||
Assert.AreEqual("-3 + -2.6=", page.CalculatorResults.GetCalculatorExpressionText());
|
Assert.AreEqual("-3 + -2.6=", page.CalculatorResults.GetCalculatorExpressionText());
|
||||||
|
|
||||||
Actions clickHistoryItemsw0 = new Actions(WinAppDriver.Instance.CalculatorSession);
|
Actions clickHistoryItemsw0 = new Actions(WinAppDriver.Instance.CalculatorSession);
|
||||||
clickHistoryItemsw0.Click(historyItems[0]);
|
clickHistoryItemsw0.Click(historyItems[0].Item);
|
||||||
clickHistoryItemsw0.Perform();
|
clickHistoryItemsw0.Perform();
|
||||||
|
|
||||||
Assert.AreEqual("-1", page.CalculatorResults.GetCalculatorResultText());
|
Assert.AreEqual("-1", page.CalculatorResults.GetCalculatorResultText());
|
||||||
|
@ -131,14 +133,18 @@ namespace CalculatorUITests
|
||||||
page.StandardOperators.EqualButton.Click();
|
page.StandardOperators.EqualButton.Click();
|
||||||
|
|
||||||
var historyPanelItems = page.HistoryPanel.GetAllHistoryListViewItems();
|
var historyPanelItems = page.HistoryPanel.GetAllHistoryListViewItems();
|
||||||
Assert.IsTrue(historyPanelItems[0].Text.Equals("2 Minus ( 3= Minus (1", StringComparison.InvariantCultureIgnoreCase));
|
Assert.IsTrue(historyPanelItems[0].GetValue().Equals("-1", StringComparison.InvariantCultureIgnoreCase));
|
||||||
Assert.IsTrue(historyPanelItems[1].Text.Equals("-3 + -2.6= Minus (5.6", StringComparison.InvariantCultureIgnoreCase));
|
Assert.IsTrue(historyPanelItems[0].GetExpression().Equals("2 - 3 =", StringComparison.InvariantCultureIgnoreCase));
|
||||||
|
Assert.IsTrue(historyPanelItems[1].GetValue().Equals("-5.6", StringComparison.InvariantCultureIgnoreCase));
|
||||||
|
Assert.IsTrue(historyPanelItems[1].GetExpression().Equals("-3 + -2.6 =", StringComparison.InvariantCultureIgnoreCase));
|
||||||
|
|
||||||
Assert.AreEqual("-1", page.CalculatorResults.GetCalculatorResultText());
|
Assert.AreEqual("-1", page.CalculatorResults.GetCalculatorResultText());
|
||||||
|
|
||||||
var historyItems = page.HistoryPanel.GetAllHistoryFlyoutListViewItems();
|
var historyItems = page.HistoryPanel.GetAllHistoryFlyoutListViewItems();
|
||||||
Assert.IsTrue(historyItems[0].Text.Equals("2 Minus ( 3= Minus (1", StringComparison.InvariantCultureIgnoreCase));
|
Assert.IsTrue(historyItems[0].GetValue().Equals("-1", StringComparison.InvariantCultureIgnoreCase));
|
||||||
Assert.IsTrue(historyItems[1].Text.Equals("-3 + -2.6= Minus (5.6", StringComparison.InvariantCultureIgnoreCase));
|
Assert.IsTrue(historyItems[0].GetExpression().Equals("2 - 3 =", StringComparison.InvariantCultureIgnoreCase));
|
||||||
|
Assert.IsTrue(historyItems[1].GetValue().Equals("-5.6", StringComparison.InvariantCultureIgnoreCase));
|
||||||
|
Assert.IsTrue(historyItems[1].GetExpression().Equals("-3 + -2.6 =", StringComparison.InvariantCultureIgnoreCase));
|
||||||
|
|
||||||
Assert.AreEqual("-1", page.CalculatorResults.GetCalculatorResultText());
|
Assert.AreEqual("-1", page.CalculatorResults.GetCalculatorResultText());
|
||||||
|
|
||||||
|
|
|
@ -77,20 +77,20 @@ namespace CalculatorUITests
|
||||||
|
|
||||||
Actions moveToListView = new Actions(WinAppDriver.Instance.CalculatorSession);
|
Actions moveToListView = new Actions(WinAppDriver.Instance.CalculatorSession);
|
||||||
var memoryItems = page.MemoryPanel.GetAllMemoryListViewItems();
|
var memoryItems = page.MemoryPanel.GetAllMemoryListViewItems();
|
||||||
moveToListView.MoveToElement(memoryItems[0]);
|
moveToListView.MoveToElement(memoryItems[0].Item);
|
||||||
moveToListView.ContextClick(memoryItems[0]);
|
moveToListView.ContextClick(memoryItems[0].Item);
|
||||||
moveToListView.Perform();
|
moveToListView.Perform();
|
||||||
CalculatorApp.Window.SendKeys(Keys.ArrowDown + Keys.ArrowDown + Keys.Enter);
|
CalculatorApp.Window.SendKeys(Keys.ArrowDown + Keys.ArrowDown + Keys.Enter);
|
||||||
Assert.IsTrue(memoryItems[0].Text.Equals("0", StringComparison.InvariantCultureIgnoreCase));
|
Assert.IsTrue(memoryItems[0].GetValue().Equals("0", StringComparison.InvariantCultureIgnoreCase));
|
||||||
|
|
||||||
moveToListView.Perform();
|
moveToListView.Perform();
|
||||||
CalculatorApp.Window.SendKeys(Keys.ArrowUp + Keys.ArrowUp + Keys.Enter);
|
CalculatorApp.Window.SendKeys(Keys.ArrowUp + Keys.ArrowUp + Keys.Enter);
|
||||||
Assert.IsTrue(memoryItems[0].Text.Equals("3", StringComparison.InvariantCultureIgnoreCase));
|
Assert.IsTrue(memoryItems[0].GetValue().Equals("3", StringComparison.InvariantCultureIgnoreCase));
|
||||||
|
|
||||||
moveToListView.Perform();
|
moveToListView.Perform();
|
||||||
CalculatorApp.Window.SendKeys(Keys.ArrowDown + Keys.ArrowUp + Keys.Enter);
|
CalculatorApp.Window.SendKeys(Keys.ArrowDown + Keys.ArrowUp + Keys.Enter);
|
||||||
var memoryItems2 = page.MemoryPanel.GetAllMemoryListViewItems();
|
var memoryItems2 = page.MemoryPanel.GetAllMemoryListViewItems();
|
||||||
Assert.IsTrue(memoryItems2[0].Text.Equals("3", StringComparison.InvariantCultureIgnoreCase));
|
Assert.IsTrue(memoryItems2[0].GetValue().Equals("3", StringComparison.InvariantCultureIgnoreCase));
|
||||||
|
|
||||||
page.MemoryPanel.PanelClearMemoryButton.Click();
|
page.MemoryPanel.PanelClearMemoryButton.Click();
|
||||||
Assert.IsNotNull(WinAppDriver.Instance.CalculatorSession.FindElementByAccessibilityId("MemoryPaneEmpty"));
|
Assert.IsNotNull(WinAppDriver.Instance.CalculatorSession.FindElementByAccessibilityId("MemoryPaneEmpty"));
|
||||||
|
@ -108,22 +108,22 @@ namespace CalculatorUITests
|
||||||
page.MemoryPanel.OpenMemoryFlyout();
|
page.MemoryPanel.OpenMemoryFlyout();
|
||||||
var memoryItems = page.MemoryPanel.GetAllMemoryFlyoutListViewItems();
|
var memoryItems = page.MemoryPanel.GetAllMemoryFlyoutListViewItems();
|
||||||
Actions moveToListView = new Actions(WinAppDriver.Instance.CalculatorSession);
|
Actions moveToListView = new Actions(WinAppDriver.Instance.CalculatorSession);
|
||||||
moveToListView.MoveToElement(memoryItems[0]);
|
moveToListView.MoveToElement(memoryItems[0].Item);
|
||||||
moveToListView.ContextClick(memoryItems[0]);
|
moveToListView.ContextClick(memoryItems[0].Item);
|
||||||
moveToListView.Perform();
|
moveToListView.Perform();
|
||||||
CalculatorApp.Window.SendKeys(Keys.ArrowDown + Keys.ArrowDown + Keys.Enter);
|
CalculatorApp.Window.SendKeys(Keys.ArrowDown + Keys.ArrowDown + Keys.Enter);
|
||||||
Assert.IsTrue(memoryItems[0].Text.Equals("0", StringComparison.InvariantCultureIgnoreCase));
|
Assert.IsTrue(memoryItems[0].GetValue().Equals("0", StringComparison.InvariantCultureIgnoreCase));
|
||||||
|
|
||||||
page.MemoryPanel.OpenMemoryFlyout();
|
page.MemoryPanel.OpenMemoryFlyout();
|
||||||
moveToListView.Perform();
|
moveToListView.Perform();
|
||||||
CalculatorApp.Window.SendKeys(Keys.ArrowUp + Keys.ArrowUp + Keys.Enter);
|
CalculatorApp.Window.SendKeys(Keys.ArrowUp + Keys.ArrowUp + Keys.Enter);
|
||||||
Assert.IsTrue(memoryItems[0].Text.Equals("3", StringComparison.InvariantCultureIgnoreCase));
|
Assert.IsTrue(memoryItems[0].GetValue().Equals("3", StringComparison.InvariantCultureIgnoreCase));
|
||||||
|
|
||||||
page.MemoryPanel.OpenMemoryFlyout();
|
page.MemoryPanel.OpenMemoryFlyout();
|
||||||
moveToListView.Perform();
|
moveToListView.Perform();
|
||||||
CalculatorApp.Window.SendKeys(Keys.ArrowDown + Keys.ArrowUp + Keys.Enter);
|
CalculatorApp.Window.SendKeys(Keys.ArrowDown + Keys.ArrowUp + Keys.Enter);
|
||||||
var memoryItems2 = page.MemoryPanel.GetAllMemoryListViewItems();
|
var memoryItems2 = page.MemoryPanel.GetAllMemoryListViewItems();
|
||||||
Assert.IsTrue(memoryItems2[0].Text.Equals("3", StringComparison.InvariantCultureIgnoreCase));
|
Assert.IsTrue(memoryItems2[0].GetValue().Equals("3", StringComparison.InvariantCultureIgnoreCase));
|
||||||
|
|
||||||
page.MemoryPanel.OpenMemoryFlyout();
|
page.MemoryPanel.OpenMemoryFlyout();
|
||||||
page.MemoryPanel.PanelClearMemoryButton.Click();
|
page.MemoryPanel.PanelClearMemoryButton.Click();
|
||||||
|
|
|
@ -171,10 +171,12 @@ namespace CalculatorUITests
|
||||||
page.HistoryPanel.ResizeWindowToDisplayHistoryButton();
|
page.HistoryPanel.ResizeWindowToDisplayHistoryButton();
|
||||||
page.HistoryPanel.HistoryButton.Click();
|
page.HistoryPanel.HistoryButton.Click();
|
||||||
var historyFlyoutItems = page.HistoryPanel.GetAllHistoryFlyoutListViewItems();
|
var historyFlyoutItems = page.HistoryPanel.GetAllHistoryFlyoutListViewItems();
|
||||||
Assert.IsTrue(historyFlyoutItems[0].Text.Equals("4 × 5 ÷ 6= 3.333333333333333", StringComparison.InvariantCultureIgnoreCase)); //verifies History button
|
Assert.IsTrue(historyFlyoutItems[0].GetValue().Equals("3.333333333333333", StringComparison.InvariantCultureIgnoreCase)); //verifies History button
|
||||||
|
Assert.IsTrue(historyFlyoutItems[0].GetExpression().Equals("4 × 5 ÷ 6 =", StringComparison.InvariantCultureIgnoreCase)); //verifies History button
|
||||||
page.HistoryPanel.ResizeWindowToDisplayHistoryLabel();
|
page.HistoryPanel.ResizeWindowToDisplayHistoryLabel();
|
||||||
var historyItems = page.HistoryPanel.GetAllHistoryListViewItems();
|
var historyItems = page.HistoryPanel.GetAllHistoryListViewItems();
|
||||||
Assert.IsTrue(historyItems[0].Text.Equals("4 × 5 ÷ 6= 3.333333333333333", StringComparison.InvariantCultureIgnoreCase));
|
Assert.IsTrue(historyItems[0].GetValue().Equals("3.333333333333333", StringComparison.InvariantCultureIgnoreCase));
|
||||||
|
Assert.IsTrue(historyItems[0].GetExpression().Equals("4 × 5 ÷ 6 =", StringComparison.InvariantCultureIgnoreCase));
|
||||||
page.HistoryPanel.ClearHistoryButton.Click();
|
page.HistoryPanel.ClearHistoryButton.Click();
|
||||||
Assert.IsNotNull(WinAppDriver.Instance.CalculatorSession.FindElementByAccessibilityId("HistoryEmpty")); //verifies the History panel's clear history button
|
Assert.IsNotNull(WinAppDriver.Instance.CalculatorSession.FindElementByAccessibilityId("HistoryEmpty")); //verifies the History panel's clear history button
|
||||||
}
|
}
|
||||||
|
@ -187,16 +189,16 @@ namespace CalculatorUITests
|
||||||
page.StandardOperators.NumberPad.Num1Button.Click();
|
page.StandardOperators.NumberPad.Num1Button.Click();
|
||||||
page.MemoryPanel.NumberpadMSButton.Click();
|
page.MemoryPanel.NumberpadMSButton.Click();
|
||||||
var memoryItems = page.MemoryPanel.GetAllMemoryListViewItems();
|
var memoryItems = page.MemoryPanel.GetAllMemoryListViewItems();
|
||||||
Assert.IsTrue(memoryItems[0].Text.Equals("1", StringComparison.InvariantCultureIgnoreCase)); //verifies memory button
|
Assert.IsTrue(memoryItems[0].GetValue().Equals("1", StringComparison.InvariantCultureIgnoreCase)); //verifies memory button
|
||||||
page.MemoryPanel.NumberpadMPlusButton.Click();
|
page.MemoryPanel.NumberpadMPlusButton.Click();
|
||||||
Assert.IsTrue(memoryItems[0].Text.Equals("2", StringComparison.InvariantCultureIgnoreCase)); //verifies memory plus button
|
Assert.IsTrue(memoryItems[0].GetValue().Equals("2", StringComparison.InvariantCultureIgnoreCase)); //verifies memory plus button
|
||||||
page.MemoryPanel.NumberpadMRButton.Click();
|
page.MemoryPanel.NumberpadMRButton.Click();
|
||||||
Assert.AreEqual("2", page.CalculatorResults.GetCalculatorResultText()); //verifies memory recall button
|
Assert.AreEqual("2", page.CalculatorResults.GetCalculatorResultText()); //verifies memory recall button
|
||||||
page.StandardOperators.MinusButton.Click();
|
page.StandardOperators.MinusButton.Click();
|
||||||
page.StandardOperators.NumberPad.Num1Button.Click();
|
page.StandardOperators.NumberPad.Num1Button.Click();
|
||||||
page.StandardOperators.EqualButton.Click();
|
page.StandardOperators.EqualButton.Click();
|
||||||
page.MemoryPanel.NumberpadMMinusButton.Click();
|
page.MemoryPanel.NumberpadMMinusButton.Click();
|
||||||
Assert.IsTrue(memoryItems[0].Text.Equals("1", StringComparison.InvariantCultureIgnoreCase));
|
Assert.IsTrue(memoryItems[0].GetValue().Equals("1", StringComparison.InvariantCultureIgnoreCase));
|
||||||
Assert.AreEqual("1", page.CalculatorResults.GetCalculatorResultText()); //verifies MemMinus button
|
Assert.AreEqual("1", page.CalculatorResults.GetCalculatorResultText()); //verifies MemMinus button
|
||||||
page.MemoryPanel.NumberpadMCButton.Click();
|
page.MemoryPanel.NumberpadMCButton.Click();
|
||||||
Assert.IsNotNull(WinAppDriver.Instance.CalculatorSession.FindElementByAccessibilityId("MemoryPaneEmpty")); //verifies the Memory panel's memory clear button
|
Assert.IsNotNull(WinAppDriver.Instance.CalculatorSession.FindElementByAccessibilityId("MemoryPaneEmpty")); //verifies the Memory panel's memory clear button
|
||||||
|
@ -344,9 +346,9 @@ namespace CalculatorUITests
|
||||||
CalculatorApp.Window.SendKeys("1");
|
CalculatorApp.Window.SendKeys("1");
|
||||||
CalculatorApp.Window.SendKeys(Keys.Control + "m" + Keys.Control);
|
CalculatorApp.Window.SendKeys(Keys.Control + "m" + Keys.Control);
|
||||||
var memoryItems = page.MemoryPanel.GetAllMemoryListViewItems();
|
var memoryItems = page.MemoryPanel.GetAllMemoryListViewItems();
|
||||||
Assert.IsTrue(memoryItems[0].Text.Equals("1", StringComparison.InvariantCultureIgnoreCase)); //verifies memory hotkey
|
Assert.IsTrue(memoryItems[0].GetValue().Equals("1", StringComparison.InvariantCultureIgnoreCase)); //verifies memory hotkey
|
||||||
CalculatorApp.Window.SendKeys(Keys.Control + "p" + Keys.Control);
|
CalculatorApp.Window.SendKeys(Keys.Control + "p" + Keys.Control);
|
||||||
Assert.IsTrue(memoryItems[0].Text.Equals("2", StringComparison.InvariantCultureIgnoreCase)); //verifies memory plus hotkey
|
Assert.IsTrue(memoryItems[0].GetValue().Equals("2", StringComparison.InvariantCultureIgnoreCase)); //verifies memory plus hotkey
|
||||||
CalculatorApp.Window.SendKeys(Keys.Control + "r" + Keys.Control);
|
CalculatorApp.Window.SendKeys(Keys.Control + "r" + Keys.Control);
|
||||||
Assert.AreEqual("2", page.CalculatorResults.GetCalculatorResultText()); //verifies memory recall hotkey
|
Assert.AreEqual("2", page.CalculatorResults.GetCalculatorResultText()); //verifies memory recall hotkey
|
||||||
CalculatorApp.Window.SendKeys(Keys.Subtract);
|
CalculatorApp.Window.SendKeys(Keys.Subtract);
|
||||||
|
@ -354,7 +356,7 @@ namespace CalculatorUITests
|
||||||
CalculatorApp.Window.SendKeys(Keys.Equal);
|
CalculatorApp.Window.SendKeys(Keys.Equal);
|
||||||
CalculatorApp.Window.SendKeys(Keys.Subtract);
|
CalculatorApp.Window.SendKeys(Keys.Subtract);
|
||||||
CalculatorApp.Window.SendKeys(Keys.Control + "q" + Keys.Control);
|
CalculatorApp.Window.SendKeys(Keys.Control + "q" + Keys.Control);
|
||||||
Assert.IsTrue(memoryItems[0].Text.Equals("1", StringComparison.InvariantCultureIgnoreCase));
|
Assert.IsTrue(memoryItems[0].GetValue().Equals("1", StringComparison.InvariantCultureIgnoreCase));
|
||||||
Assert.AreEqual("1", page.CalculatorResults.GetCalculatorResultText()); //verifies MemMinus hotkey
|
Assert.AreEqual("1", page.CalculatorResults.GetCalculatorResultText()); //verifies MemMinus hotkey
|
||||||
CalculatorApp.Window.SendKeys(Keys.Control + "l" + Keys.Control);
|
CalculatorApp.Window.SendKeys(Keys.Control + "l" + Keys.Control);
|
||||||
Assert.IsNotNull(WinAppDriver.Instance.CalculatorSession.FindElementByAccessibilityId("MemoryPaneEmpty")); //verifies the Memory panel's memory clear button hotkey
|
Assert.IsNotNull(WinAppDriver.Instance.CalculatorSession.FindElementByAccessibilityId("MemoryPaneEmpty")); //verifies the Memory panel's memory clear button hotkey
|
||||||
|
@ -536,8 +538,10 @@ namespace CalculatorUITests
|
||||||
CalculatorApp.Window.SendKeys(Keys.Equal);
|
CalculatorApp.Window.SendKeys(Keys.Equal);
|
||||||
Assert.AreEqual("0", page.CalculatorResults.GetCalculatorResultText());
|
Assert.AreEqual("0", page.CalculatorResults.GetCalculatorResultText());
|
||||||
var historyItems = page.HistoryPanel.GetAllHistoryListViewItems();
|
var historyItems = page.HistoryPanel.GetAllHistoryListViewItems();
|
||||||
Assert.IsTrue(historyItems[0].Text.Equals("0= 0", StringComparison.InvariantCultureIgnoreCase));
|
Assert.IsTrue(historyItems[0].GetValue().Equals("0", StringComparison.InvariantCultureIgnoreCase));
|
||||||
Assert.IsTrue(historyItems[1].Text.Equals("0= 0", StringComparison.InvariantCultureIgnoreCase));
|
Assert.IsTrue(historyItems[0].GetExpression().Equals("0 =", StringComparison.InvariantCultureIgnoreCase));
|
||||||
|
Assert.IsTrue(historyItems[1].GetValue().Equals("0", StringComparison.InvariantCultureIgnoreCase));
|
||||||
|
Assert.IsTrue(historyItems[1].GetExpression().Equals("0 =", StringComparison.InvariantCultureIgnoreCase));
|
||||||
CalculatorApp.Window.SendKeys(Keys.Escape);
|
CalculatorApp.Window.SendKeys(Keys.Escape);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -670,7 +674,8 @@ namespace CalculatorUITests
|
||||||
{
|
{
|
||||||
page.StandardAoTCalculatorPage.NavigateToStandardMode();
|
page.StandardAoTCalculatorPage.NavigateToStandardMode();
|
||||||
var historyItems = page.HistoryPanel.GetAllHistoryListViewItems();
|
var historyItems = page.HistoryPanel.GetAllHistoryListViewItems();
|
||||||
Assert.IsTrue(historyItems[0].Text.Equals("3 + 3= 6", StringComparison.InvariantCultureIgnoreCase));
|
Assert.IsTrue(historyItems[0].GetValue().Equals("6", StringComparison.InvariantCultureIgnoreCase));
|
||||||
|
Assert.IsTrue(historyItems[0].GetExpression().Equals("3 + 3 =", StringComparison.InvariantCultureIgnoreCase));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -168,7 +168,7 @@
|
||||||
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
|
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
|
||||||
<PrecompiledHeaderOutputFile>$(IntDir)pch.pch</PrecompiledHeaderOutputFile>
|
<PrecompiledHeaderOutputFile>$(IntDir)pch.pch</PrecompiledHeaderOutputFile>
|
||||||
<AdditionalUsingDirectories>$(WindowsSDK_WindowsMetadata);$(AdditionalUsingDirectories)</AdditionalUsingDirectories>
|
<AdditionalUsingDirectories>$(WindowsSDK_WindowsMetadata);$(AdditionalUsingDirectories)</AdditionalUsingDirectories>
|
||||||
<AdditionalOptions>/bigobj %(AdditionalOptions)</AdditionalOptions>
|
<AdditionalOptions>/bigobj /await /std:c++17 /utf-8 %(AdditionalOptions)</AdditionalOptions>
|
||||||
<DisableSpecificWarnings>28204</DisableSpecificWarnings>
|
<DisableSpecificWarnings>28204</DisableSpecificWarnings>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<Link>
|
<Link>
|
||||||
|
@ -183,7 +183,7 @@
|
||||||
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
|
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
|
||||||
<PrecompiledHeaderOutputFile>$(IntDir)pch.pch</PrecompiledHeaderOutputFile>
|
<PrecompiledHeaderOutputFile>$(IntDir)pch.pch</PrecompiledHeaderOutputFile>
|
||||||
<AdditionalUsingDirectories>$(WindowsSDK_WindowsMetadata);$(AdditionalUsingDirectories)</AdditionalUsingDirectories>
|
<AdditionalUsingDirectories>$(WindowsSDK_WindowsMetadata);$(AdditionalUsingDirectories)</AdditionalUsingDirectories>
|
||||||
<AdditionalOptions>/bigobj %(AdditionalOptions)</AdditionalOptions>
|
<AdditionalOptions>/bigobj /await /std:c++17 /utf-8 %(AdditionalOptions)</AdditionalOptions>
|
||||||
<DisableSpecificWarnings>28204</DisableSpecificWarnings>
|
<DisableSpecificWarnings>28204</DisableSpecificWarnings>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<Link>
|
<Link>
|
||||||
|
@ -198,7 +198,7 @@
|
||||||
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
|
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
|
||||||
<PrecompiledHeaderOutputFile>$(IntDir)pch.pch</PrecompiledHeaderOutputFile>
|
<PrecompiledHeaderOutputFile>$(IntDir)pch.pch</PrecompiledHeaderOutputFile>
|
||||||
<AdditionalUsingDirectories>$(WindowsSDK_WindowsMetadata);$(AdditionalUsingDirectories)</AdditionalUsingDirectories>
|
<AdditionalUsingDirectories>$(WindowsSDK_WindowsMetadata);$(AdditionalUsingDirectories)</AdditionalUsingDirectories>
|
||||||
<AdditionalOptions>/bigobj %(AdditionalOptions)</AdditionalOptions>
|
<AdditionalOptions>/bigobj /await /std:c++17 /utf-8 %(AdditionalOptions)</AdditionalOptions>
|
||||||
<DisableSpecificWarnings>28204</DisableSpecificWarnings>
|
<DisableSpecificWarnings>28204</DisableSpecificWarnings>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<Link>
|
<Link>
|
||||||
|
@ -213,7 +213,7 @@
|
||||||
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
|
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
|
||||||
<PrecompiledHeaderOutputFile>$(IntDir)pch.pch</PrecompiledHeaderOutputFile>
|
<PrecompiledHeaderOutputFile>$(IntDir)pch.pch</PrecompiledHeaderOutputFile>
|
||||||
<AdditionalUsingDirectories>$(WindowsSDK_WindowsMetadata);$(AdditionalUsingDirectories)</AdditionalUsingDirectories>
|
<AdditionalUsingDirectories>$(WindowsSDK_WindowsMetadata);$(AdditionalUsingDirectories)</AdditionalUsingDirectories>
|
||||||
<AdditionalOptions>/bigobj %(AdditionalOptions)</AdditionalOptions>
|
<AdditionalOptions>/bigobj /await /std:c++17 /utf-8 %(AdditionalOptions)</AdditionalOptions>
|
||||||
<DisableSpecificWarnings>28204</DisableSpecificWarnings>
|
<DisableSpecificWarnings>28204</DisableSpecificWarnings>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<Link>
|
<Link>
|
||||||
|
@ -228,7 +228,7 @@
|
||||||
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
|
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
|
||||||
<PrecompiledHeaderOutputFile>$(IntDir)pch.pch</PrecompiledHeaderOutputFile>
|
<PrecompiledHeaderOutputFile>$(IntDir)pch.pch</PrecompiledHeaderOutputFile>
|
||||||
<AdditionalUsingDirectories>$(WindowsSDK_WindowsMetadata);$(AdditionalUsingDirectories)</AdditionalUsingDirectories>
|
<AdditionalUsingDirectories>$(WindowsSDK_WindowsMetadata);$(AdditionalUsingDirectories)</AdditionalUsingDirectories>
|
||||||
<AdditionalOptions>/bigobj %(AdditionalOptions)</AdditionalOptions>
|
<AdditionalOptions>/bigobj /await /std:c++17 /utf-8 %(AdditionalOptions)</AdditionalOptions>
|
||||||
<DisableSpecificWarnings>28204</DisableSpecificWarnings>
|
<DisableSpecificWarnings>28204</DisableSpecificWarnings>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<Link>
|
<Link>
|
||||||
|
@ -243,7 +243,7 @@
|
||||||
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
|
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
|
||||||
<PrecompiledHeaderOutputFile>$(IntDir)pch.pch</PrecompiledHeaderOutputFile>
|
<PrecompiledHeaderOutputFile>$(IntDir)pch.pch</PrecompiledHeaderOutputFile>
|
||||||
<AdditionalUsingDirectories>$(WindowsSDK_WindowsMetadata);$(AdditionalUsingDirectories)</AdditionalUsingDirectories>
|
<AdditionalUsingDirectories>$(WindowsSDK_WindowsMetadata);$(AdditionalUsingDirectories)</AdditionalUsingDirectories>
|
||||||
<AdditionalOptions>/bigobj %(AdditionalOptions)</AdditionalOptions>
|
<AdditionalOptions>/bigobj /await /std:c++17 /utf-8 %(AdditionalOptions)</AdditionalOptions>
|
||||||
<DisableSpecificWarnings>28204</DisableSpecificWarnings>
|
<DisableSpecificWarnings>28204</DisableSpecificWarnings>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<Link>
|
<Link>
|
||||||
|
@ -258,7 +258,7 @@
|
||||||
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
|
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
|
||||||
<PrecompiledHeaderOutputFile>$(IntDir)pch.pch</PrecompiledHeaderOutputFile>
|
<PrecompiledHeaderOutputFile>$(IntDir)pch.pch</PrecompiledHeaderOutputFile>
|
||||||
<AdditionalUsingDirectories>$(WindowsSDK_WindowsMetadata);$(AdditionalUsingDirectories)</AdditionalUsingDirectories>
|
<AdditionalUsingDirectories>$(WindowsSDK_WindowsMetadata);$(AdditionalUsingDirectories)</AdditionalUsingDirectories>
|
||||||
<AdditionalOptions>/bigobj %(AdditionalOptions)</AdditionalOptions>
|
<AdditionalOptions>/bigobj /await /std:c++17 /utf-8 %(AdditionalOptions)</AdditionalOptions>
|
||||||
<DisableSpecificWarnings>28204</DisableSpecificWarnings>
|
<DisableSpecificWarnings>28204</DisableSpecificWarnings>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<Link>
|
<Link>
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue