Skip to content

Commit de0f05b

Browse files
committed
Added Save as image button.
1 parent fcbda6f commit de0f05b

File tree

6 files changed

+160
-242
lines changed

6 files changed

+160
-242
lines changed

ChartGeneratorAISample/ChartGenerator/Models/SeriesConfig.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ public bool Tooltip
2929
get;
3030
set;
3131
}
32+
public string? XPath { get; internal set; }
3233
}
3334

3435
public class AxisConfig

ChartGeneratorAISample/ChartGenerator/View/ChartView.xaml

Lines changed: 15 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -133,51 +133,7 @@
133133
Spacing="12">
134134
<Label Text="How can I assist with generated chart?" Padding="0,20,0,0" LineBreakMode="WordWrap"
135135
FontSize="Subtitle"
136-
HorizontalOptions="Center" />
137-
<HorizontalStackLayout x:Name="listView"
138-
HeightRequest="{OnPlatform WinUI=140, Android=160, MacCatalyst=180, iOS=150}"
139-
WidthRequest="{OnPlatform MacCatalyst= 430,Android=335, iOS=310}"
140-
HorizontalOptions="Center" Padding="{OnPlatform MacCatalyst=20}"
141-
BindableLayout.ItemsSource="{Binding Path=ModelPrompts}">
142-
<BindableLayout.ItemTemplate>
143-
<DataTemplate>
144-
<Grid Padding="4">
145-
<Border
146-
WidthRequest="{OnPlatform WinUI=120,Android=150,MacCatalyst= 150 , iOS=140}"
147-
HeightRequest="{OnPlatform WinUI=120,Android=130, MacCatalyst= 100, iOS=120}"
148-
Stroke="Gray"
149-
Padding="4">
150-
<Border.GestureRecognizers>
151-
<TapGestureRecognizer Tapped="TapGestureRecognizer_Tapped"/>
152-
</Border.GestureRecognizers>
153-
<VisualStateManager.VisualStateGroups>
154-
<VisualStateGroup x:Name="CommonStates">
155-
<VisualState x:Name="Normal">
156-
<VisualState.Setters>
157-
<Setter Property="Background" Value="Transparent" />
158-
</VisualState.Setters>
159-
</VisualState>
160-
<VisualState x:Name="PointerOver">
161-
<VisualState.Setters>
162-
<Setter Property="Background" Value="#14000000" />
163-
</VisualState.Setters>
164-
</VisualState>
165-
</VisualStateGroup>
166-
</VisualStateManager.VisualStateGroups>
167-
<Border.StrokeShape>
168-
<RoundRectangle CornerRadius="10" />
169-
</Border.StrokeShape>
170-
<Grid RowDefinitions="*">
171-
<Label Text="{Binding .}"
172-
LineBreakMode="WordWrap"
173-
VerticalTextAlignment="Center"
174-
HorizontalTextAlignment="Center" />
175-
</Grid>
176-
</Border>
177-
</Grid>
178-
</DataTemplate>
179-
</BindableLayout.ItemTemplate>
180-
</HorizontalStackLayout>
136+
HorizontalOptions="Center" />
181137
</VerticalStackLayout>
182138
</DataTemplate>
183139
</aiassistview:SfAIAssistView.HeaderTemplate>
@@ -192,6 +148,20 @@
192148
Grid.Column="{OnPlatform Android='0',iOS='0', Default='1'}"
193149
VerticalOptions="Center"
194150
HorizontalOptions="Center"/>
151+
<buttons:SfButton Grid.Row="0" Margin="0,0,100,0"
152+
Grid.Column="{OnPlatform Android='0',iOS='0', Default='1'}"
153+
x:Name="saveasimage"
154+
Text="&#xE76c;"
155+
Clicked="Saveasimage_Clicked"
156+
FontFamily="{OnPlatform Default ='MauiMaterialAssets', WinUI ='MauiMaterialAssets.ttf#MauiMaterialAssets'}"
157+
CornerRadius="5"
158+
TextColor="White"
159+
BackgroundColor="#6750a4"
160+
FontSize="{OnPlatform WinUI=20, Android=15, MacCatalyst=20, iOS=20}"
161+
WidthRequest="30" HeightRequest="30"
162+
ToolTipProperties.Text="Save as Image"
163+
VerticalOptions="Start"
164+
HorizontalOptions="End"/>
195165
<buttons:SfButton Grid.Row="0" Margin="0,0,60,0"
196166
Grid.Column="{OnPlatform Android='0',iOS='0', Default='1'}"
197167
x:Name="exportchartbutton"

ChartGeneratorAISample/ChartGenerator/View/ChartView.xaml.cs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -183,6 +183,11 @@ private async void SavePDF(string fileName, Stream stream)
183183
System.Diagnostics.Debug.WriteLine($"PDF Export Error: {ex.ToString()}");
184184
}
185185
}
186+
187+
private void Saveasimage_Clicked(object sender, EventArgs e)
188+
{
189+
templatedItemView.SaveAsImage("AiBlog");
190+
}
186191
}
187192

188193
public class ChartTemplateSelector : DataTemplateSelector

ChartGeneratorAISample/ChartGenerator/View/DesktopUI.xaml

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -75,8 +75,8 @@
7575
HeightRequest="50"
7676
Aspect="Fill"/>
7777
</Border>
78-
<Button Text=""
79-
FontSize="12"
78+
<buttons:SfButton Text=""
79+
FontSize="11"
8080
WidthRequest="20"
8181
HeightRequest="20"
8282
Padding="0"
@@ -108,14 +108,14 @@
108108
</Border>
109109

110110
<!-- Editor Options Toolbar -->
111-
<core:SfChipGroup ItemHeight="40"
111+
<core:SfChipGroup ItemHeight="40"
112112
Margin="5,10,5,5"
113113
ChipCornerRadius="20"
114114
ChipBackground="Transparent"
115115
ChipStrokeThickness="0"
116116
Grid.Row="0"
117117
VerticalOptions="End"
118-
HorizontalOptions="Start"
118+
HorizontalOptions="End"
119119
ChipPadding="0"
120120
ChipClicked="OnChipClicked"
121121
ItemsSource="{Binding Path=EditorOptions}">
@@ -148,18 +148,19 @@
148148
AnimationType="SingleCircle"/>
149149
</Grid>
150150

151-
<buttons:SfButton Text="&#xe76f;"
151+
<buttons:SfButton Text="&#xe76f;" Margin="0,0,0,5"
152152
FontFamily="MauiSampleFontIcon"
153153
Background="{StaticResource strokeGradient}"
154154
TextColor="White"
155155
IsEnabled="{Binding IsDisable}"
156156
CornerRadius="10"
157+
CommandParameter="{Binding .}"
157158
Command="{Binding CreateButtonClicked}"
158159
HorizontalOptions="End"
159160
VerticalOptions="End"
160161
HeightRequest="40"
161-
WidthRequest="40"
162-
FontSize="18"
162+
WidthRequest="40"
163+
FontSize="18"
163164
Grid.Column="1">
164165
</buttons:SfButton>
165166
</Grid>

0 commit comments

Comments
 (0)