Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update equation colors #885

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
88 changes: 53 additions & 35 deletions src/Calculator/App.xaml
Expand Up @@ -69,22 +69,20 @@
<ApplicationTheme x:Key="CalcApplicationTheme">Dark</ApplicationTheme>
<SolidColorBrush x:Key="AppChromeAcrylicOperatorFlyoutBackgroundBrush" Color="#FF2F2F2F"/>
<SolidColorBrush x:Key="AppControlTransparentButtonBackgroundBrush" Color="Transparent"/>
<SolidColorBrush x:Key="EquationBrush1" Color="#FF0078D7"/>
<SolidColorBrush x:Key="EquationBrush2" Color="#FFFFB900"/>
<SolidColorBrush x:Key="EquationBrush3" Color="#FFFF8C00"/>
<SolidColorBrush x:Key="EquationBrush4" Color="#FFF7630C"/>
<SolidColorBrush x:Key="EquationBrush5" Color="#FFCA5010"/>
<SolidColorBrush x:Key="EquationBrush6" Color="#FFE3008C"/>
<SolidColorBrush x:Key="EquationBrush7" Color="#FFBF0077"/>
<SolidColorBrush x:Key="EquationBrush8" Color="#FFC239B3"/>
<SolidColorBrush x:Key="EquationBrush9" Color="#FF0063B1"/>
<SolidColorBrush x:Key="EquationBrush10" Color="#FF2D7D9A"/>
<SolidColorBrush x:Key="EquationBrush11" Color="#FF00B7C3"/>
<SolidColorBrush x:Key="EquationBrush12" Color="#FF00CC6A"/>
<SolidColorBrush x:Key="EquationBrush13" Color="#FF00B294"/>
<SolidColorBrush x:Key="EquationBrush14" Color="#FF018574"/>
<SolidColorBrush x:Key="EquationBrush15" Color="#FF10893E"/>
<SolidColorBrush x:Key="EquationBrush16" Color="#FF000000"/>
<SolidColorBrush x:Key="EquationBrush1" Color="#FFE81123"/>
<SolidColorBrush x:Key="EquationBrush2" Color="#FFE3008C"/>
<SolidColorBrush x:Key="EquationBrush3" Color="#FFB31564"/>
<SolidColorBrush x:Key="EquationBrush4" Color="#FF107C10"/>
<SolidColorBrush x:Key="EquationBrush5" Color="#FF00CC6A"/>
<SolidColorBrush x:Key="EquationBrush6" Color="#FF008055"/>
<SolidColorBrush x:Key="EquationBrush7" Color="#FF58595B"/>
<SolidColorBrush x:Key="EquationBrush8" Color="#FF0063B1"/>
<SolidColorBrush x:Key="EquationBrush9" Color="#FF00B7C3"/>
<SolidColorBrush x:Key="EquationBrush10" Color="#FF6600CC"/>
<SolidColorBrush x:Key="EquationBrush11" Color="#FFFFB900"/>
<SolidColorBrush x:Key="EquationBrush12" Color="#FFF7630C"/>
<SolidColorBrush x:Key="EquationBrush13" Color="#FF8E562E"/>
<SolidColorBrush x:Key="EquationBrush14" Color="#FF000000"/>

</ResourceDictionary>
<ResourceDictionary x:Key="Light">
Expand Down Expand Up @@ -149,22 +147,20 @@
TintOpacity="0.8"/>
<ApplicationTheme x:Key="CalcApplicationTheme">Light</ApplicationTheme>
<SolidColorBrush x:Key="AppControlTransparentButtonBackgroundBrush" Color="Transparent"/>
<SolidColorBrush x:Key="EquationBrush1" Color="#FF0078D7"/>
<SolidColorBrush x:Key="EquationBrush2" Color="#FFFFB900"/>
<SolidColorBrush x:Key="EquationBrush3" Color="#FFFF8C00"/>
<SolidColorBrush x:Key="EquationBrush4" Color="#FFF7630C"/>
<SolidColorBrush x:Key="EquationBrush5" Color="#FFCA5010"/>
<SolidColorBrush x:Key="EquationBrush6" Color="#FFE3008C"/>
<SolidColorBrush x:Key="EquationBrush7" Color="#FFBF0077"/>
<SolidColorBrush x:Key="EquationBrush8" Color="#FFC239B3"/>
<SolidColorBrush x:Key="EquationBrush9" Color="#FF0063B1"/>
<SolidColorBrush x:Key="EquationBrush10" Color="#FF2D7D9A"/>
<SolidColorBrush x:Key="EquationBrush11" Color="#FF00B7C3"/>
<SolidColorBrush x:Key="EquationBrush12" Color="#FF00CC6A"/>
<SolidColorBrush x:Key="EquationBrush13" Color="#FF00B294"/>
<SolidColorBrush x:Key="EquationBrush14" Color="#FF018574"/>
<SolidColorBrush x:Key="EquationBrush15" Color="#FF10893E"/>
<SolidColorBrush x:Key="EquationBrush16" Color="#FF000000"/>
<SolidColorBrush x:Key="EquationBrush1" Color="#FFE81123"/>
<SolidColorBrush x:Key="EquationBrush2" Color="#FFE3008C"/>
<SolidColorBrush x:Key="EquationBrush3" Color="#FFB31564"/>
<SolidColorBrush x:Key="EquationBrush4" Color="#FF107C10"/>
<SolidColorBrush x:Key="EquationBrush5" Color="#FF00CC6A"/>
<SolidColorBrush x:Key="EquationBrush6" Color="#FF008055"/>
<SolidColorBrush x:Key="EquationBrush7" Color="#FF58595B"/>
<SolidColorBrush x:Key="EquationBrush8" Color="#FF0063B1"/>
<SolidColorBrush x:Key="EquationBrush9" Color="#FF00B7C3"/>
<SolidColorBrush x:Key="EquationBrush10" Color="#FF6600CC"/>
<SolidColorBrush x:Key="EquationBrush11" Color="#FFFFB900"/>
<SolidColorBrush x:Key="EquationBrush12" Color="#FFF7630C"/>
<SolidColorBrush x:Key="EquationBrush13" Color="#FF8E562E"/>
<SolidColorBrush x:Key="EquationBrush14" Color="#FF000000"/>
</ResourceDictionary>
<ResourceDictionary x:Key="HighContrast">
<Thickness x:Key="HighContrastThicknessTop">0,1,0,0</Thickness>
Expand Down Expand Up @@ -613,6 +609,30 @@
</Setter>
</Style>

<Style x:Key="OperatorPanelButtonSmallStyle"
BasedOn="{StaticResource OperatorPanelButtonStyle}"
TargetType="Controls:OperatorPanelButton">
<Setter Property="FontSize" Value="{StaticResource OperatorPanelFontSizeSmall}"/>
<Setter Property="GlyphFontSize" Value="{StaticResource OperatorPanelGlyphFontSizeSmall}"/>
<Setter Property="ChevronFontSize" Value="{StaticResource OperatorPanelChevronFontSizeSmall}"/>
</Style>

<Style x:Key="OperatorPanelButtonMediumStyle"
BasedOn="{StaticResource OperatorPanelButtonStyle}"
TargetType="Controls:OperatorPanelButton">
<Setter Property="FontSize" Value="{StaticResource OperatorPanelFontSizeMedium}"/>
<Setter Property="GlyphFontSize" Value="{StaticResource OperatorPanelGlyphFontSizeMedium}"/>
<Setter Property="ChevronFontSize" Value="{StaticResource OperatorPanelChevronFontSizeMedium}"/>
</Style>

<Style x:Key="OperatorPanelButtonLargeStyle"
BasedOn="{StaticResource OperatorPanelButtonStyle}"
TargetType="Controls:OperatorPanelButton">
<Setter Property="FontSize" Value="{StaticResource OperatorPanelFontSizeLarge}"/>
<Setter Property="GlyphFontSize" Value="{StaticResource OperatorPanelGlyphFontSizeLarge}"/>
<Setter Property="ChevronFontSize" Value="{StaticResource OperatorPanelChevronFontSizeLarge}"/>
</Style>

<Style x:Key="OperatorPanelButtonStyle" TargetType="Controls:OperatorPanelButton">
<Setter Property="FontSize" Value="{StaticResource CaptionFontSize}"/>
<Setter Property="GlyphFontSize" Value="{StaticResource CaptionFontSize}"/>
Expand Down Expand Up @@ -713,8 +733,7 @@
FontFamily="{StaticResource CalculatorFontFamily}"
FontSize="{TemplateBinding GlyphFontSize}"
Glyph="{TemplateBinding Glyph}"/>
<TextBlock x:Name="trigTextBlock"
VerticalAlignment="Center"
<TextBlock VerticalAlignment="Center"
FontSize="{TemplateBinding FontSize}"
Text="{TemplateBinding Text}"/>
<FontIcon Margin="8,4,0,0"
Expand Down Expand Up @@ -1743,7 +1762,6 @@
</Setter.Value>
</Setter>
</Style>

</ResourceDictionary>
</Application.Resources>
</Application>
27 changes: 6 additions & 21 deletions src/Calculator/Views/CalculatorProgrammerRadixOperators.xaml
Expand Up @@ -115,13 +115,8 @@

<Setter Target="OperatorPanelRow.MinHeight" Value="{StaticResource OperatorPanelButtonRowSizeLarge}"/>

<Setter Target="BitwiseButton.ChevronFontSize" Value="{ThemeResource OperatorPanelChevronFontSizeLarge}"/>
<Setter Target="BitwiseButton.GlyphFontSize" Value="{ThemeResource OperatorPanelGlyphFontSizeLarge}"/>
<Setter Target="BitwiseButton.FontSize" Value="{ThemeResource OperatorPanelFontSizeLarge}"/>

<Setter Target="BitShiftButton.ChevronFontSize" Value="{ThemeResource OperatorPanelChevronFontSizeLarge}"/>
<Setter Target="BitShiftButton.GlyphFontSize" Value="{ThemeResource OperatorPanelGlyphFontSizeLarge}"/>
<Setter Target="BitShiftButton.FontSize" Value="{ThemeResource OperatorPanelFontSizeLarge}"/>
<Setter Target="BitwiseButton.Style" Value="{StaticResource OperatorPanelButtonLargeStyle}"/>
<Setter Target="BitShiftButton.Style" Value="{StaticResource OperatorPanelButtonLargeStyle}"/>

<Setter Target="BitwiseGrid.MinWidth" Value="387"/>
<Setter Target="BitwiseGrid.MinHeight" Value="192"/>
Expand Down Expand Up @@ -172,13 +167,8 @@

<Setter Target="OperatorPanelRow.MinHeight" Value="{StaticResource OperatorPanelButtonRowSizeMedium}"/>

<Setter Target="BitwiseButton.ChevronFontSize" Value="{ThemeResource OperatorPanelChevronFontSizeMedium}"/>
<Setter Target="BitwiseButton.GlyphFontSize" Value="{ThemeResource OperatorPanelGlyphFontSizeMedium}"/>
<Setter Target="BitwiseButton.FontSize" Value="{ThemeResource OperatorPanelFontSizeMedium}"/>

<Setter Target="BitShiftButton.ChevronFontSize" Value="{ThemeResource OperatorPanelChevronFontSizeMedium}"/>
<Setter Target="BitShiftButton.GlyphFontSize" Value="{ThemeResource OperatorPanelGlyphFontSizeMedium}"/>
<Setter Target="BitShiftButton.FontSize" Value="{ThemeResource OperatorPanelFontSizeMedium}"/>
<Setter Target="BitwiseButton.Style" Value="{StaticResource OperatorPanelButtonMediumStyle}"/>
<Setter Target="BitShiftButton.Style" Value="{StaticResource OperatorPanelButtonMediumStyle}"/>

<Setter Target="BitwiseGrid.MinWidth" Value="416"/>
<Setter Target="BitwiseGrid.MinHeight" Value="144"/>
Expand Down Expand Up @@ -227,13 +217,8 @@

<Setter Target="OperatorPanelRow.MinHeight" Value="{StaticResource OperatorPanelButtonRowSizeSmall}"/>

<Setter Target="BitwiseButton.ChevronFontSize" Value="{ThemeResource OperatorPanelChevronFontSizeSmall}"/>
<Setter Target="BitwiseButton.GlyphFontSize" Value="{ThemeResource OperatorPanelGlyphFontSizeSmall}"/>
<Setter Target="BitwiseButton.FontSize" Value="{ThemeResource OperatorPanelFontSizeSmall}"/>

<Setter Target="BitShiftButton.ChevronFontSize" Value="{ThemeResource OperatorPanelChevronFontSizeSmall}"/>
<Setter Target="BitShiftButton.GlyphFontSize" Value="{ThemeResource OperatorPanelGlyphFontSizeSmall}"/>
<Setter Target="BitShiftButton.FontSize" Value="{ThemeResource OperatorPanelFontSizeSmall}"/>
<Setter Target="BitwiseButton.Style" Value="{StaticResource OperatorPanelButtonSmallStyle}"/>
<Setter Target="BitShiftButton.Style" Value="{StaticResource OperatorPanelButtonSmallStyle}"/>

<Setter Target="BitwiseGrid.MinWidth" Value="194"/>
<Setter Target="BitwiseGrid.MinHeight" Value="96"/>
Expand Down
28 changes: 6 additions & 22 deletions src/Calculator/Views/CalculatorScientificOperators.xaml
Expand Up @@ -177,14 +177,8 @@

<Setter Target="OperatorPanelRow.MinHeight" Value="{StaticResource OperatorPanelButtonRowSizeLarge}"/>

<Setter Target="TrigButton.ChevronFontSize" Value="{ThemeResource OperatorPanelChevronFontSizeLarge}"/>
<Setter Target="TrigButton.GlyphFontSize" Value="{ThemeResource OperatorPanelGlyphFontSizeLarge}"/>
<Setter Target="TrigButton.FontSize" Value="{ThemeResource OperatorPanelFontSizeLarge}"/>


<Setter Target="FuncButton.ChevronFontSize" Value="{ThemeResource OperatorPanelChevronFontSizeLarge}"/>
<Setter Target="FuncButton.GlyphFontSize" Value="{ThemeResource OperatorPanelGlyphFontSizeLarge}"/>
<Setter Target="FuncButton.FontSize" Value="{ThemeResource OperatorPanelFontSizeLarge}"/>
<Setter Target="TrigButton.Style" Value="{StaticResource OperatorPanelButtonLargeStyle}"/>
<Setter Target="FuncButton.Style" Value="{StaticResource OperatorPanelButtonLargeStyle}"/>

<Setter Target="TrigGrid.MinWidth" Value="516"/>
<Setter Target="TrigGrid.MinHeight" Value="192"/>
Expand Down Expand Up @@ -273,13 +267,8 @@

<Setter Target="OperatorPanelRow.MinHeight" Value="{StaticResource OperatorPanelButtonRowSizeMedium}"/>

<Setter Target="TrigButton.ChevronFontSize" Value="{ThemeResource OperatorPanelChevronFontSizeMedium}"/>
<Setter Target="TrigButton.GlyphFontSize" Value="{ThemeResource OperatorPanelGlyphFontSizeMedium}"/>
<Setter Target="TrigButton.FontSize" Value="{ThemeResource OperatorPanelFontSizeMedium}"/>

<Setter Target="FuncButton.ChevronFontSize" Value="{ThemeResource OperatorPanelChevronFontSizeMedium}"/>
<Setter Target="FuncButton.GlyphFontSize" Value="{ThemeResource OperatorPanelGlyphFontSizeMedium}"/>
<Setter Target="FuncButton.FontSize" Value="{ThemeResource OperatorPanelFontSizeMedium}"/>
<Setter Target="TrigButton.Style" Value="{StaticResource OperatorPanelButtonMediumStyle}"/>
<Setter Target="FuncButton.Style" Value="{StaticResource OperatorPanelButtonMediumStyle}"/>

<Setter Target="TrigGrid.MinWidth" Value="480"/>
<Setter Target="TrigGrid.MinHeight" Value="144"/>
Expand Down Expand Up @@ -366,13 +355,8 @@

<Setter Target="OperatorPanelRow.MinHeight" Value="{ThemeResource OperatorPanelButtonRowSizeSmall}"/>

<Setter Target="TrigButton.ChevronFontSize" Value="{ThemeResource OperatorPanelChevronFontSizeSmall}"/>
<Setter Target="TrigButton.GlyphFontSize" Value="{ThemeResource OperatorPanelGlyphFontSizeSmall}"/>
<Setter Target="TrigButton.FontSize" Value="{ThemeResource OperatorPanelFontSizeSmall}"/>

<Setter Target="FuncButton.ChevronFontSize" Value="{ThemeResource OperatorPanelChevronFontSizeSmall}"/>
<Setter Target="FuncButton.GlyphFontSize" Value="{ThemeResource OperatorPanelGlyphFontSizeSmall}"/>
<Setter Target="FuncButton.FontSize" Value="{ThemeResource OperatorPanelFontSizeSmall}"/>
<Setter Target="TrigButton.Style" Value="{StaticResource OperatorPanelButtonSmallStyle}"/>
<Setter Target="FuncButton.Style" Value="{StaticResource OperatorPanelButtonSmallStyle}"/>

<Setter Target="TrigGrid.MinWidth" Value="258"/>
<Setter Target="TrigGrid.MinHeight" Value="96"/>
Expand Down
Expand Up @@ -746,10 +746,11 @@
Grid.Column="3"
MinWidth="28"
VerticalAlignment="Stretch"
Foreground="{ThemeResource ButtonForeground}"
FontFamily="{ThemeResource SymbolThemeFontFamily}"
FontSize="16"
AutomationProperties.AccessibilityView="Raw"
Glyph="&#xE783;"
Glyph="&#xE7BA;"
Visibility="Collapsed"/>
</Grid>
</Border>
Expand Down
26 changes: 23 additions & 3 deletions src/Calculator/Views/GraphingCalculator/EquationInputArea.xaml.cpp
Expand Up @@ -27,6 +27,9 @@ using namespace Calculator::Utils;

namespace
{
inline constexpr auto maxEquationSize = 14;
inline constexpr std::array<int, 14> colorAssignmentMapping = { 0, 3, 7, 10, 1, 4, 8, 11, 2, 5, 9, 12, 6, 13 };

StringReference EquationsPropertyName(L"Equations");
}

Expand Down Expand Up @@ -67,8 +70,27 @@ void EquationInputArea::AddNewEquation()
Equations->GetAt(Equations->Size - 1)->IsLastItemInList = false;
}

// Cap equations at 14
if (Equations->Size >= maxEquationSize)
{
return;
}


m_lastLineColorIndex = (m_lastLineColorIndex + 1) % AvailableColors->Size;
auto eq = ref new EquationViewModel(ref new Equation(), ++m_lastFunctionLabelIndex, AvailableColors->GetAt(m_lastLineColorIndex)->Color);

int colorIndex;

if (m_accessibilitySettings->HighContrast)
{
colorIndex = m_lastLineColorIndex;
}
else
{
colorIndex = colorAssignmentMapping[m_lastLineColorIndex];
}

auto eq = ref new EquationViewModel(ref new Equation(), ++m_lastFunctionLabelIndex, AvailableColors->GetAt(colorIndex)->Color);
eq->IsLastItemInList = true;
m_equationToFocus = eq;
Equations->Append(eq);
Expand Down Expand Up @@ -269,8 +291,6 @@ void EquationInputArea::ReloadAvailableColors(bool isHighContrast)
m_AvailableColors->Append(safe_cast<SolidColorBrush ^>(Application::Current->Resources->Lookup(L"EquationBrush12")));
m_AvailableColors->Append(safe_cast<SolidColorBrush ^>(Application::Current->Resources->Lookup(L"EquationBrush13")));
m_AvailableColors->Append(safe_cast<SolidColorBrush ^>(Application::Current->Resources->Lookup(L"EquationBrush14")));
m_AvailableColors->Append(safe_cast<SolidColorBrush ^>(Application::Current->Resources->Lookup(L"EquationBrush15")));
m_AvailableColors->Append(safe_cast<SolidColorBrush ^>(Application::Current->Resources->Lookup(L"EquationBrush16")));
}

// If there are no equations to reload, quit early
Expand Down