Key graph features (#704)
* Added IGraphAnalyzer * Key Graph Features called and getting returned to the client. To do put all strings into the Equation object * Updated UpdateKeyGraphFeatures to add function analysis data to all properties in Equation object * Update KGF when variables are updated * Key graph features ui started * Added MathRichEditBox and started hooking up key graph features to the UI * Updated EquationViewModel to include parity and periodicity * Updated key graph features to update the EquationViewModel * updated key graph features to display more values * Key graph features populating uing MathRichEdit mode * moved KeyGraphFeatures control to GraphingCalculator.xaml * Use MathML formatting instead of MathRichEdit for strings passed back from the engine * cleaned up project targeting and equation.h comments * Updated equation edit box to populate for KeyGraphFeatures * Fixed vcxproj files to have the correct targeting and certificates. KGF Title strings moved to x:Uid instead of the code behind * Updated per PR feedback * Update MathRichEditBox to detect if the string is a mathml string and use the appropriate set method to set the text * fixed the issue where parity, periodicity and monotonicity could be set with an old value if the next one is empty * KGF control UI adjustments and error handling * Error control updates * Error handling added when analysis fails * fixed alignment on rich edit boxes * Add monotonicity direction into the mathml string and only have 1 richeditbox * Set hover state on KGF EquationEditBox to change button opacity and fixed spacing in Monotonicity RichEditBox * remove sideload package certificate info VS added * updated logic for setting error strings to be in the viewmodel * Updated KeyGraphFeatures to populate dynamically using a ListView and TemplateSelector * Update periodicity to not show if it isn't supported * Fixed issue where y-intercept was using the x-intercept value * Remove ItemsControl ItemsContainerStyle * Updated per pr feedback. Fixed bug where analysis error would not reset * Update MathRichEdit box to remove selection when focus is lost * Updated mathrichedit to get LAF access for Dev, Release and Graphing projects * Remove OnLostFocus in MathRichEdit, Change KGF ItemsControl back to ListView * Clean up styles for KGF and ensure the match the comps * Moved formatoptions logic to the Grapher constructor and reverted LineColor.Text resource that was mistakenly taken out * Add copyright header to KGF Files * fixed issue where asymptote values were not populating * Disable KGF button when there is no equation. Fixed issue where equation populated in a new equationtextbox after the previous one was deleted * Removed formatoptions testing lines used for debugging
This commit is contained in:
@@ -42,8 +42,8 @@
|
||||
<MinimumVisualStudioVersion>14.0</MinimumVisualStudioVersion>
|
||||
<AppContainerApplication>true</AppContainerApplication>
|
||||
<ApplicationType>Windows Store</ApplicationType>
|
||||
<WindowsTargetPlatformVersion>10.0.18970.0</WindowsTargetPlatformVersion>
|
||||
<WindowsTargetPlatformMinVersion>10.0.18362.0</WindowsTargetPlatformMinVersion>
|
||||
<WindowsTargetPlatformVersion>10.0.19019.0</WindowsTargetPlatformVersion>
|
||||
<WindowsTargetPlatformMinVersion>10.0.17134.0</WindowsTargetPlatformMinVersion>
|
||||
<ApplicationTypeRevision>10.0</ApplicationTypeRevision>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
@@ -270,6 +270,7 @@
|
||||
<ClInclude Include="..\GraphingInterfaces\Common.h" />
|
||||
<ClInclude Include="..\GraphingInterfaces\GraphingEnums.h" />
|
||||
<ClInclude Include="..\GraphingInterfaces\IGraph.h" />
|
||||
<ClInclude Include="..\GraphingInterfaces\IGraphAnalyzer.h" />
|
||||
<ClInclude Include="..\GraphingInterfaces\IGraphingOptions.h" />
|
||||
<ClInclude Include="..\GraphingInterfaces\IGraphRenderer.h" />
|
||||
<ClInclude Include="..\GraphingInterfaces\IMathSolver.h" />
|
||||
|
@@ -43,5 +43,10 @@
|
||||
<ClInclude Include="..\GraphingInterfaces\IGraphRenderer.h">
|
||||
<Filter>GraphingInterfaces</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\GraphingInterfaces\IEquation.h" />
|
||||
<ClInclude Include="..\GraphingInterfaces\IEquationOptions.h" />
|
||||
<ClInclude Include="..\GraphingInterfaces\IGraphAnalyzer.h">
|
||||
<Filter>GraphingInterfaces</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
</Project>
|
@@ -11,7 +11,8 @@ namespace MockGraphingImpl
|
||||
{
|
||||
public:
|
||||
void SetFormatType(Graphing::FormatType type) override
|
||||
{ }
|
||||
{
|
||||
}
|
||||
};
|
||||
|
||||
class EvalOptions : public Graphing::IEvalOptions
|
||||
@@ -22,7 +23,12 @@ namespace MockGraphingImpl
|
||||
{
|
||||
public:
|
||||
void SetFormatType(Graphing::FormatType type) override
|
||||
{ }
|
||||
{
|
||||
}
|
||||
|
||||
void SetMathMLPrefix(const std::wstring& value) override
|
||||
{
|
||||
}
|
||||
};
|
||||
|
||||
class MathSolver : public Graphing::IMathSolver
|
||||
@@ -63,6 +69,11 @@ namespace MockGraphingImpl
|
||||
return std::wstring{};
|
||||
}
|
||||
|
||||
Graphing::IGraphFunctionAnalysisData IMathSolver::Analyze(const Graphing::Analyzer::IGraphAnalyzer* analyzer)
|
||||
{
|
||||
return Graphing::IGraphFunctionAnalysisData{};
|
||||
}
|
||||
|
||||
private:
|
||||
MockGraphingImpl::ParsingOptions m_parsingOptions;
|
||||
MockGraphingImpl::EvalOptions m_evalOptions;
|
||||
|
Reference in New Issue
Block a user