Remove ProgModeRadixChange unload (#641)

This commit is contained in:
Pepe Rivera 2019-09-04 14:20:58 -07:00 committed by GitHub
parent ae30322ab9
commit 6b8a83a2f9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 11 additions and 33 deletions

View File

@ -1218,7 +1218,6 @@ void StandardCalculatorViewModel::ResetDisplay()
AreHEXButtonsEnabled = false;
CurrentRadixType = (int)RADIX_TYPE::DEC_RADIX;
m_standardCalculatorManager.SetRadix(DEC_RADIX);
ProgModeRadixChange();
}
void StandardCalculatorViewModel::SetPrecision(int32_t precision)
@ -1236,7 +1235,6 @@ void StandardCalculatorViewModel::SwitchProgrammerModeBase(RADIX_TYPE radixType)
AreHEXButtonsEnabled = (radixType == RADIX_TYPE::HEX_RADIX);
CurrentRadixType = (int)radixType;
m_standardCalculatorManager.SetRadix(radixType);
ProgModeRadixChange();
}
void StandardCalculatorViewModel::SetMemorizedNumbersString()

View File

@ -32,8 +32,6 @@ namespace CalculatorApp
#define ASCII_0 48
public
delegate void HideMemoryClickedHandler();
public
delegate void ProgModeRadixChangeHandler();
[Windows::UI::Xaml::Data::Bindable] public ref class StandardCalculatorViewModel sealed : public Windows::UI::Xaml::Data::INotifyPropertyChanged
{
@ -90,7 +88,6 @@ namespace CalculatorApp
COMMAND_FOR_METHOD(MemorySubtract, StandardCalculatorViewModel::OnMemorySubtract);
event HideMemoryClickedHandler ^ HideMemoryClicked;
event ProgModeRadixChangeHandler ^ ProgModeRadixChange;
property bool IsShiftChecked
{

View File

@ -9,8 +9,6 @@
x:Name="ControlRoot"
d:DesignHeight="395"
d:DesignWidth="315"
Loaded="OnLoaded"
Unloaded="OnUnloaded"
mc:Ignorable="d">
<Grid x:Name="ProgRadixOps">
@ -344,7 +342,8 @@
Grid.RowSpan="4"
Grid.Column="2"
Grid.ColumnSpan="3"
ButtonStyle="{StaticResource NumericButtonStyle18}"/>
ButtonStyle="{StaticResource NumericButtonStyle18}"
CurrentRadixType="{x:Bind Model.CurrentRadixType, Mode=OneWay}"/>
<controls:CalculatorButton x:Name="AButton"
x:Uid="aButton"

View File

@ -29,16 +29,6 @@ CalculatorProgrammerRadixOperators::CalculatorProgrammerRadixOperators()
InitializeComponent();
}
void CalculatorProgrammerRadixOperators::OnLoaded(Object ^, RoutedEventArgs ^)
{
m_progModeRadixChangeToken = Model->ProgModeRadixChange +=
ref new ProgModeRadixChangeHandler(this, &CalculatorProgrammerRadixOperators::ProgModeRadixChange);
}
void CalculatorProgrammerRadixOperators::OnUnloaded(Object ^, RoutedEventArgs ^)
{
Model->ProgModeRadixChange -= m_progModeRadixChangeToken;
}
void CalculatorProgrammerRadixOperators::Shift_Clicked(Platform::Object ^ sender, Windows::UI::Xaml::RoutedEventArgs ^ e)
{
bool isShiftChecked = static_cast<ToggleButton ^>(sender)->IsChecked->Value;
@ -67,11 +57,6 @@ void CalculatorProgrammerRadixOperators::Shift_Clicked(Platform::Object ^ sender
}
}
void CalculatorProgrammerRadixOperators::ProgModeRadixChange()
{
NumberPad->ProgModeRadixChange();
}
bool CalculatorProgrammerRadixOperators::IsErrorVisualState::get()
{
return m_isErrorVisualState;

View File

@ -32,12 +32,8 @@ namespace CalculatorApp
private:
void Shift_Clicked(Platform::Object ^ sender, Windows::UI::Xaml::RoutedEventArgs ^ e);
void OnLoaded(Platform::Object ^ sender, Windows::UI::Xaml::RoutedEventArgs ^ e);
void OnUnloaded(Platform::Object ^ sender, Windows::UI::Xaml::RoutedEventArgs ^ e);
void ProgModeRadixChange();
bool m_isErrorVisualState;
Windows::Foundation::EventRegistrationToken m_progModeRadixChangeToken;
void OpenParenthesisButton_GotFocus(Platform::Object ^ sender, Windows::UI::Xaml::RoutedEventArgs ^ e);
};
}

View File

@ -30,6 +30,7 @@ using namespace CalculatorApp::Common;
// The User Control item template is documented at https://go.microsoft.com/fwlink/?LinkId=234236
DEPENDENCY_PROPERTY_INITIALIZATION(NumberPad, ButtonStyle);
DEPENDENCY_PROPERTY_INITIALIZATION(NumberPad, CurrentRadixType);
NumberPad::NumberPad()
: m_isErrorVisualState(false)
@ -51,7 +52,7 @@ NumberPad::NumberPad()
this->Num9Button->Content = localizationSettings.GetDigitSymbolFromEnUsDigit('9');
}
void NumberPad::ProgModeRadixChange()
void NumberPad::OnCurrentRadixTypePropertyChanged(int /* oldValue */, int newValue)
{
Num0Button->IsEnabled = true;
Num1Button->IsEnabled = true;
@ -64,8 +65,7 @@ void NumberPad::ProgModeRadixChange()
Num8Button->IsEnabled = true;
Num9Button->IsEnabled = true;
auto vm = safe_cast<StandardCalculatorViewModel ^>(this->DataContext);
RADIX_TYPE radixType = vm->GetCurrentRadixType();
auto radixType = safe_cast<RADIX_TYPE>(newValue);
if (radixType == RADIX_TYPE::BIN_RADIX)
{

View File

@ -1,4 +1,4 @@
// Copyright (c) Microsoft Corporation. All rights reserved.
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
//
@ -10,6 +10,7 @@
#include "Views/NumberPad.g.h"
#include "CalcViewModel/Common/KeyboardShortcutManager.h"
#include "CalcManager/Header Files/RadixType.h"
namespace CalculatorApp
{
@ -20,6 +21,7 @@ namespace CalculatorApp
DEPENDENCY_PROPERTY_OWNER(NumberPad);
DEPENDENCY_PROPERTY(Windows::UI::Xaml::Style ^, ButtonStyle);
DEPENDENCY_PROPERTY_WITH_DEFAULT_AND_CALLBACK(int, CurrentRadixType, safe_cast<int>(::RADIX_TYPE::DEC_RADIX));
property bool IsErrorVisualState
{
@ -27,9 +29,10 @@ namespace CalculatorApp
void set(bool value);
}
void ProgModeRadixChange();
private:
void OnCurrentRadixTypePropertyChanged(int oldValue, int newValue);
bool m_isErrorVisualState;
};
}