AutoGrid and build.sh

This commit is contained in:
2026-01-11 05:39:35 +05:00
parent a08838bb8b
commit dd3cff0eaa
7 changed files with 102 additions and 68 deletions

View File

@@ -1,6 +1,7 @@
<Window
xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:ag="clr-namespace:AvaloniaAutoGrid;assembly=AvaloniaAutoGrid"
x:Class="SharpCalculator.Avalonia.MainWindow"
Title="SharpCalculator"
Icon="avares://SharpCalculator.Avalonia/assets/icon.ico"
@@ -8,10 +9,11 @@
MinWidth="460" MinHeight="570"
Width="460" Height="570">
<Grid Margin="10">
<Grid.RowDefinitions>1* 40 1* 330</Grid.RowDefinitions>
<TextBox Name="Input" Grid.Row="0"
<!-- ReSharper disable Xaml.MissingGridIndex -->
<ag:AutoGrid Margin="10"
ColumnDefinitions="*"
RowDefinitions="1* 40 1* 330">
<TextBox Name="Input"
TextChanged="Input_OnTextChanged"
BorderThickness="2"
BorderBrush="#AAAAAA"
@@ -19,21 +21,22 @@
ScrollViewer.HorizontalScrollBarVisibility="Disabled"
ScrollViewer.VerticalScrollBarVisibility="Auto"/>
<TextBlock Grid.Row="1"
VerticalAlignment="Center"
Foreground="#AAAAAA"
Text="="/>
<TextBox Name="Output" Grid.Row="1"
Margin="16 0 0 0"
VerticalAlignment="Center"
VerticalContentAlignment="Center"
IsReadOnly="True"
BorderThickness="0"
TextWrapping="NoWrap"
ScrollViewer.HorizontalScrollBarVisibility="Auto"
ScrollViewer.VerticalScrollBarVisibility="Disabled"/>
<StackPanel Orientation="Horizontal">
<TextBlock VerticalAlignment="Center"
Foreground="#AAAAAA"
Text="="/>
<TextBox Name="Output"
Margin="16 0 0 0"
VerticalAlignment="Center"
VerticalContentAlignment="Center"
IsReadOnly="True"
BorderThickness="0"
TextWrapping="NoWrap"
ScrollViewer.HorizontalScrollBarVisibility="Auto"
ScrollViewer.VerticalScrollBarVisibility="Disabled"/>
</StackPanel>
<TextBox Name="History" Grid.Row="2"
<TextBox Name="History"
Foreground="Gray"
BorderThickness="1"
BorderBrush="Gray"
@@ -43,127 +46,131 @@
ScrollViewer.HorizontalScrollBarVisibility="Auto"
ScrollViewer.VerticalScrollBarVisibility="Auto"/>
<Grid Grid.Row="3" VerticalAlignment="Bottom"
MinWidth="440" MaxWidth="440" MinHeight="320" MaxHeight="320">
<Grid.ColumnDefinitions>* * * * * * *</Grid.ColumnDefinitions>
<Grid.RowDefinitions>* * * * *</Grid.RowDefinitions>
<!-- ReSharper disable once Xaml.MissingGridIndex -->
<ag:AutoGrid
ColumnDefinitions="*"
RowDefinitions="*"
ColumnCount="7" RowCount="5"
VerticalAlignment="Bottom"
MinWidth="440" MaxWidth="440"
MinHeight="320" MaxHeight="320">
<!-- 1st row -->
<Button Classes="button gray" Grid.Column="0" Grid.Row="0"
<Button Classes="button gray"
Click="ClearButton_OnClick" Content="AC"/>
<Button Classes="button gray" Grid.Column="1" Grid.Row="0"
<Button Classes="button gray"
Click="MathButton_OnClick" Content="("/>
<Button Classes="button gray" Grid.Column="2" Grid.Row="0"
<Button Classes="button gray"
Click="MathButton_OnClick" Content=")" />
<Button Classes="button orange" Grid.Column="3" Grid.Row="0"
<Button Classes="button orange"
Click="MathButton_OnClick" Content="/"/>
<Button Classes="button gray" Grid.Column="4" Grid.Row="0"
<Button Classes="button gray"
Click="MathButton_OnClick" Content="1/x"/>
<Button Classes="button gray" Grid.Column="5" Grid.Row="0"
<Button Classes="button gray"
Click="MathButton_OnClick" Content="sin"/>
<Button Classes="button gray" Grid.Column="6" Grid.Row="0"
<Button Classes="button gray"
Click="MathButton_OnClick" Content="asin"/>
<!-- 2nd row -->
<Button Classes="button" Grid.Column="0" Grid.Row="1"
<Button Classes="button"
Click="MathButton_OnClick" Content="7"/>
<Button Classes="button" Grid.Column="1" Grid.Row="1"
<Button Classes="button"
Click="MathButton_OnClick" Content="8"/>
<Button Classes="button" Grid.Column="2" Grid.Row="1"
<Button Classes="button"
Click="MathButton_OnClick" Content="9"/>
<Button Classes="button orange" Grid.Column="3" Grid.Row="1"
<Button Classes="button orange"
Click="MathButton_OnClick" Content="*"/>
<Button Classes="button gray" Grid.Column="4" Grid.Row="1"
<Button Classes="button gray"
Click="MathButton_OnClick" Content="^"/>
<Button Classes="button gray" Grid.Column="5" Grid.Row="1"
<Button Classes="button gray"
Click="MathButton_OnClick" Content="cos"/>
<Button Classes="button gray" Grid.Column="6" Grid.Row="1"
<Button Classes="button gray"
Click="MathButton_OnClick" Content="acos"/>
<!-- 3th row -->
<Button Classes="button" Grid.Column="0" Grid.Row="2"
<Button Classes="button"
Click="MathButton_OnClick" Content="4"/>
<Button Classes="button" Grid.Column="1" Grid.Row="2"
<Button Classes="button"
Click="MathButton_OnClick" Content="5"/>
<Button Classes="button" Grid.Column="2" Grid.Row="2"
<Button Classes="button"
Click="MathButton_OnClick" Content="6"/>
<Button Classes="button orange" Grid.Column="3" Grid.Row="2"
<Button Classes="button orange"
Click="MathButton_OnClick" Content="-"/>
<Button Classes="button gray" Grid.Column="4" Grid.Row="2"
<Button Classes="button gray"
FontSize="22"
Click="MathButton_OnClick" Content="10^x"/>
<Button Classes="button gray" Grid.Column="5" Grid.Row="2"
<Button Classes="button gray"
Click="MathButton_OnClick" Content="tg"/>
<Button Classes="button gray" Grid.Column="6" Grid.Row="2"
<Button Classes="button gray"
Click="MathButton_OnClick" Content="atg"/>
<!-- 4th row -->
<Button Classes="button" Grid.Column="0" Grid.Row="3"
<Button Classes="button"
Click="MathButton_OnClick" Content="1"/>
<Button Classes="button" Grid.Column="1" Grid.Row="3"
<Button Classes="button"
Click="MathButton_OnClick" Content="2"/>
<Button Classes="button" Grid.Column="2" Grid.Row="3"
<Button Classes="button"
Click="MathButton_OnClick" Content="3"/>
<Button Classes="button orange" Grid.Column="3" Grid.Row="3"
<Button Classes="button orange"
Click="MathButton_OnClick" Content="+"/>
<Button Classes="button gray" Grid.Column="4" Grid.Row="3"
<Button Classes="button gray"
Click="MathButton_OnClick" Content="e"/>
<Button Classes="button gray" Grid.Column="5" Grid.Row="3"
<Button Classes="button gray"
Click="MathButton_OnClick" Content="ctg"/>
<Button Classes="button gray" Grid.Column="6" Grid.Row="3"
<Button Classes="button gray"
Click="MathButton_OnClick" Content="actg"/>
<!-- 5th row -->
<Button Classes="button" Grid.Column="0" Grid.Row="4"
<Button Classes="button"
Click="MathButton_OnClick" Content="0"/>
<Button Classes="button" Grid.Column="1" Grid.Row="4"
<Button Classes="button"
Click="MathButton_OnClick" Content="."/>
<Button Classes="button" Grid.Column="2" Grid.Row="4"
<Button Classes="button"
Click="MathButton_OnClick" Content="%"/>
<Button Classes="button orange" Grid.Column="3" Grid.Row="4"
<Button Classes="button orange"
Click="ResultButton_OnClick" Content="="/>
<Button Classes="button gray" Grid.Column="4" Grid.Row="4"
<Button Classes="button gray"
Click="MathButton_OnClick" Content="π"/>
<Button Classes="button gray" Grid.Column="5" Grid.Row="4"
<Button Classes="button gray"
FontSize="22"
Click="MathButton_OnClick" Content="rand"/>
<Button Classes="button gray" Grid.Column="6" Grid.Row="4"
<Button Classes="button gray"
Click="MathButton_OnClick" Content="ln"/>
</Grid>
</Grid>
</ag:AutoGrid>
</ag:AutoGrid>
</Window>