calculator/src/Calculator/Views/CalculatorScientificOperators.xaml.h
Howard Wolosky c13b8a099e Hello GitHub
2019-01-28 16:24:37 -08:00

46 lines
1.8 KiB
C++

// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
//
// CalculatorScientificOperators.xaml.h
// Declaration of the CalculatorScientificOperators class
//
#pragma once
#include "Views\CalculatorScientificOperators.g.h"
#include "Views\NumberPad.xaml.h"
#include "Converters\BooleanNegationConverter.h"
#include "Converters\VisibilityNegationConverter.h"
#include "CalcViewModel\StandardCalculatorViewModel.h"
namespace CalculatorApp
{
[Windows::Foundation::Metadata::WebHostHidden]
public ref class CalculatorScientificOperators sealed
{
public:
CalculatorScientificOperators();
property CalculatorApp::ViewModel::StandardCalculatorViewModel^ Model
{
CalculatorApp::ViewModel::StandardCalculatorViewModel^ get() {
return static_cast<CalculatorApp::ViewModel::StandardCalculatorViewModel^>(this->DataContext);
}
}
DEPENDENCY_PROPERTY_OWNER(CalculatorScientificOperators);
DEPENDENCY_PROPERTY_WITH_DEFAULT_AND_CALLBACK(bool, IsErrorVisualState, false);
DEPENDENCY_PROPERTY_WITH_DEFAULT(bool, IsWideLayout, false);
bool IsShiftEnabled(bool isWideLayout, bool isErrorState) { return !(isWideLayout || isErrorState); }
private:
void ShortLayout_Completed(_In_ Platform::Object^ sender, _In_ Platform::Object^ e);
void WideLayout_Completed(_In_ Platform::Object^ sender, _In_ Platform::Object^ e);
void OnIsErrorVisualStatePropertyChanged(bool oldValue, bool newValue);
void shiftButton_Check(_In_ Platform::Object^ sender, _In_ Windows::UI::Xaml::RoutedEventArgs^ e);
void shiftButton_IsEnabledChanged(_In_ Platform::Object^ sender, _In_ Windows::UI::Xaml::DependencyPropertyChangedEventArgs^ e);
void SetOperatorRowVisibility();
};
}