From 3d1f0e94401b52bde8ec3c5b5debfb52e1cf7279 Mon Sep 17 00:00:00 2001 From: Pepe Rivera Date: Mon, 13 Jan 2020 10:08:23 -0800 Subject: [PATCH] Make variable boxes collapsible on click (#916) * fix * PR comments * fix bug Co-authored-by: Eric Wong --- build/pipelines/azure-pipelines.release.yaml | 4 +- .../GraphingCalculator/EquationInputArea.xaml | 146 +++++++++--------- .../EquationInputArea.xaml.cpp | 20 +++ .../EquationInputArea.xaml.h | 3 + 4 files changed, 96 insertions(+), 77 deletions(-) diff --git a/build/pipelines/azure-pipelines.release.yaml b/build/pipelines/azure-pipelines.release.yaml index 33e10c63..c7a168d5 100644 --- a/build/pipelines/azure-pipelines.release.yaml +++ b/build/pipelines/azure-pipelines.release.yaml @@ -9,8 +9,8 @@ pr: none variables: versionMajor: 10 - versionMinor: 1910 - versionBuild: $[counter('10.1910.*', 0)] + versionMinor: 1912 + versionBuild: $[counter('10.1912.*', 0)] versionPatch: 0 name: '$(versionMajor).$(versionMinor).$(versionBuild).$(versionPatch)' diff --git a/src/Calculator/Views/GraphingCalculator/EquationInputArea.xaml b/src/Calculator/Views/GraphingCalculator/EquationInputArea.xaml index e47be775..8756f1fb 100644 --- a/src/Calculator/Views/GraphingCalculator/EquationInputArea.xaml +++ b/src/Calculator/Views/GraphingCalculator/EquationInputArea.xaml @@ -17,19 +17,18 @@ - + @@ -40,7 +39,7 @@ - + - + - + + + - - - - - - - - - - - - - - + Text="{x:Bind Value, Mode=OneWay}"> + 32 - - - - - - - - - - - - + + + + + @@ -168,30 +150,36 @@ + Margin="0,12,4,0" + VerticalAlignment="Center" + FontSize="11"/> - + + VerticalAlignment="Center" + FontSize="11"/> + Margin="0,12,4,0" + VerticalAlignment="Center" + FontSize="11"/> + @@ -806,11 +803,10 @@ - - - + + (static_cast(sender)->DataContext); + selectedVariableViewModel->SliderSettingsVisible = !selectedVariableViewModel->SliderSettingsVisible; + + // Collapse all other slider settings that are open + for (auto variableViewModel : Variables) + { + if (variableViewModel != selectedVariableViewModel) + { + variableViewModel->SliderSettingsVisible = false; + } + } +} + void EquationInputArea::EquationTextBox_EquationFormatRequested(Object ^ sender, MathRichEditBoxFormatRequest ^ e) { EquationFormatRequested(sender, e); diff --git a/src/Calculator/Views/GraphingCalculator/EquationInputArea.xaml.h b/src/Calculator/Views/GraphingCalculator/EquationInputArea.xaml.h index 1b5c3e40..1626c788 100644 --- a/src/Calculator/Views/GraphingCalculator/EquationInputArea.xaml.h +++ b/src/Calculator/Views/GraphingCalculator/EquationInputArea.xaml.h @@ -30,6 +30,8 @@ namespace CalculatorApp public: static Windows::UI::Xaml::Visibility ManageEditVariablesButtonVisibility(unsigned int numberOfVariables); + static Platform::String ^ GetChevronIcon(bool isCollapsed); + static Windows::UI::Xaml::Media::SolidColorBrush ^ ToSolidColorBrush(Windows::UI::Color color) { return ref new Windows::UI::Xaml::Media::SolidColorBrush(color); } @@ -64,6 +66,7 @@ namespace CalculatorApp int m_lastLineColorIndex; int m_lastFunctionLabelIndex; ViewModel::EquationViewModel ^ m_equationToFocus; + void VariableAreaTapped(Platform::Object ^ sender, Windows::UI::Xaml::Input::TappedRoutedEventArgs ^ e); void EquationTextBox_EquationFormatRequested(Platform::Object ^ sender, CalculatorApp::Controls::MathRichEditBoxFormatRequest ^ e); }; }