Add reset button to settings flyout (#1073)

This commit is contained in:
Pepe Rivera 2020-03-09 16:51:39 -07:00 committed by GitHub
parent e8d03eafc1
commit 4f8db42855
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 44 additions and 5 deletions

View File

@ -71,6 +71,26 @@ void GraphingSettingsViewModel::InitRanges()
m_dontUpdateDisplayRange = false;
}
void GraphingSettingsViewModel::ResetView()
{
if (m_Graph != nullptr)
{
m_Graph->ResetGrid();
InitRanges();
m_XMinError = false;
m_XMaxError = false;
m_YMinError = false;
m_YMaxError = false;
RaisePropertyChanged("XError");
RaisePropertyChanged("XMin");
RaisePropertyChanged("XMax");
RaisePropertyChanged("YError");
RaisePropertyChanged("YMin");
RaisePropertyChanged("YMax");
}
}
void GraphingSettingsViewModel::UpdateDisplayRange()
{
if (m_Graph == nullptr || m_dontUpdateDisplayRange || HasError())

View File

@ -275,6 +275,7 @@ namespace CalculatorApp::ViewModel
public:
void SetGrapher(GraphControl::Grapher ^ grapher);
void InitRanges();
void ResetView();
bool HasError();
private:

View File

@ -4226,6 +4226,10 @@
<value>Units</value>
<comment>Heading for Unit's on the settings</comment>
</data>
<data name="ResetViewButton.Content" xml:space="preserve">
<value>Reset view</value>
<comment>Hyperlink button to reset the view of the graph</comment>
</data>
<data name="GraphSettingsXMax.Header" xml:space="preserve">
<value>X-Max</value>
<comment>X maximum value header</comment>

View File

@ -102,11 +102,19 @@
FontSize="20"
FontWeight="Medium"
AutomationProperties.HeadingLevel="Level1"/>
<Grid Margin="0,12,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<TextBlock x:Name="GridHeading"
x:Uid="GridHeading"
Margin="0,12,0,6"
Style="{StaticResource SubTitleTextBoxStyle}"
AutomationProperties.HeadingLevel="Level2"/>
<HyperlinkButton x:Uid="ResetViewButton"
Grid.Column="1"
Click="ResetViewButton_Clicked"/>
</Grid>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="auto"/>

View File

@ -61,3 +61,8 @@ void GraphingSettings::RefreshRanges()
{
ViewModel->InitRanges();
}
void GraphingSettings::ResetViewButton_Clicked(Object ^ sender, RoutedEventArgs ^ e)
{
ViewModel->ResetView();
}

View File

@ -23,5 +23,6 @@ namespace CalculatorApp
void RefreshRanges();
private:
void GridSettingsTextBox_PreviewKeyDown(Platform::Object ^ sender, Windows::UI::Xaml::Input::KeyRoutedEventArgs ^ e);
void ResetViewButton_Clicked(Platform::Object ^ sender, Windows::UI::Xaml::RoutedEventArgs ^ e);
};
}