|
2 | 2 | xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" |
3 | 3 | x:Class="PlanViewer.App.Controls.PlanViewerControl" |
4 | 4 | Background="{DynamicResource BackgroundBrush}"> |
5 | | - <UserControl.Styles> |
6 | | - <Style Selector="Border.InsightCard"> |
7 | | - <Setter Property="Background" Value="{DynamicResource InsightCardBackgroundBrush}"/> |
8 | | - <Setter Property="BorderBrush" Value="{DynamicResource InsightCardBorderBrush}"/> |
9 | | - <Setter Property="BorderThickness" Value="1"/> |
10 | | - <Setter Property="CornerRadius" Value="8"/> |
11 | | - <Setter Property="BoxShadow" Value="0 4 12 0 #60000000"/> |
12 | | - <Setter Property="Padding" Value="12,8,12,10"/> |
13 | | - <Setter Property="Margin" Value="0,0,8,0"/> |
14 | | - </Style> |
15 | | - <Style Selector="TextBlock.InsightHeader"> |
16 | | - <Setter Property="FontSize" Value="14"/> |
17 | | - <Setter Property="FontWeight" Value="SemiBold"/> |
18 | | - <Setter Property="Margin" Value="0,0,0,8"/> |
19 | | - </Style> |
20 | | - </UserControl.Styles> |
21 | 5 | <Grid> |
22 | 6 | <Grid.RowDefinitions> |
23 | 7 | <RowDefinition Height="Auto"/> |
|
90 | 74 | FontWeight="SemiBold" |
91 | 75 | Foreground="{DynamicResource ForegroundBrush}"/> |
92 | 76 | </Expander.Header> |
93 | | - <Grid MaxHeight="240" Margin="8,4,8,8" HorizontalAlignment="Stretch"> |
| 77 | + <Grid MaxHeight="220" HorizontalAlignment="Stretch"> |
94 | 78 | <Grid.ColumnDefinitions> |
95 | 79 | <ColumnDefinition Width="Auto" MinWidth="0"/> |
96 | 80 | <ColumnDefinition Width="Auto" MinWidth="180"/> |
|
100 | 84 | </Grid.ColumnDefinitions> |
101 | 85 |
|
102 | 86 | <!-- Server Context (first, placeholder when no metadata) --> |
103 | | - <Border x:Name="ServerContextBorder" Grid.Column="0" Classes="InsightCard" |
| 87 | + <Border x:Name="ServerContextBorder" Grid.Column="0" Padding="10,4,10,8" |
| 88 | + Background="#1A1A2D" |
| 89 | + BorderBrush="#3A3A5A" BorderThickness="0,0,1,0" |
104 | 90 | IsVisible="False"> |
105 | 91 | <ScrollViewer VerticalScrollBarVisibility="Auto" |
106 | 92 | HorizontalScrollBarVisibility="Disabled"> |
107 | 93 | <StackPanel> |
108 | | - <TextBlock Classes="InsightHeader" |
109 | | - Text="Server Context" |
110 | | - Foreground="#9B9BFF"/> |
| 94 | + <TextBlock Text="Server Context" |
| 95 | + FontSize="13" |
| 96 | + FontWeight="SemiBold" |
| 97 | + Foreground="#9B9BFF" |
| 98 | + Margin="0,0,0,6"/> |
111 | 99 | <StackPanel x:Name="ServerContextContent"/> |
112 | 100 | <TextBlock x:Name="ServerContextEmpty" |
113 | 101 | Text="Run Repro Script to capture server context" |
|
118 | 106 | </Border> |
119 | 107 |
|
120 | 108 | <!-- Runtime Summary --> |
121 | | - <Border Grid.Column="1" Classes="InsightCard"> |
| 109 | + <Border Grid.Column="1" Padding="10,4,10,8" |
| 110 | + Background="{DynamicResource BackgroundDarkBrush}" |
| 111 | + BorderBrush="{DynamicResource BorderBrush}" BorderThickness="0,0,1,0"> |
122 | 112 | <StackPanel> |
123 | 113 | <TextBlock x:Name="RuntimeSummaryTitle" |
124 | | - Classes="InsightHeader" |
125 | 114 | Text="Runtime Summary" |
126 | | - Foreground="{DynamicResource ForegroundBrush}"/> |
| 115 | + FontSize="13" |
| 116 | + FontWeight="SemiBold" |
| 117 | + Foreground="{DynamicResource ForegroundBrush}" |
| 118 | + Margin="0,0,0,4"/> |
127 | 119 | <StackPanel x:Name="RuntimeSummaryContent"/> |
128 | 120 | <TextBlock x:Name="RuntimeSummaryEmpty" |
129 | 121 | Text="Estimated plan — no runtime stats" |
|
133 | 125 | </Border> |
134 | 126 |
|
135 | 127 | <!-- Missing Indexes (center) --> |
136 | | - <Border Grid.Column="2" Classes="InsightCard"> |
| 128 | + <Border Grid.Column="2" Padding="10,4,10,8" |
| 129 | + Background="#3D2A0E" |
| 130 | + BorderBrush="#7A5A1E" BorderThickness="0,0,1,0"> |
137 | 131 | <ScrollViewer VerticalScrollBarVisibility="Auto" |
138 | 132 | HorizontalScrollBarVisibility="Disabled"> |
139 | 133 | <StackPanel> |
140 | 134 | <TextBlock x:Name="MissingIndexHeader" |
141 | | - Classes="InsightHeader" |
142 | 135 | Text="Missing Index Suggestions" |
143 | | - Foreground="#FFB347"/> |
| 136 | + FontSize="13" |
| 137 | + FontWeight="SemiBold" Foreground="#FFB347" |
| 138 | + Margin="0,0,0,6"/> |
144 | 139 | <StackPanel x:Name="MissingIndexContent"/> |
145 | 140 | <TextBlock x:Name="MissingIndexEmpty" |
146 | 141 | Text="No missing index suggestions" |
|
151 | 146 | </Border> |
152 | 147 |
|
153 | 148 | <!-- Parameters --> |
154 | | - <Border Grid.Column="3" Classes="InsightCard"> |
| 149 | + <Border Grid.Column="3" Padding="10,4,10,8" |
| 150 | + Background="#1A2D1A" |
| 151 | + BorderBrush="#3A5A3A" BorderThickness="0,0,1,0"> |
155 | 152 | <ScrollViewer VerticalScrollBarVisibility="Auto" |
156 | 153 | HorizontalScrollBarVisibility="Disabled"> |
157 | 154 | <StackPanel> |
158 | 155 | <TextBlock x:Name="ParametersHeader" |
159 | | - Classes="InsightHeader" |
160 | 156 | Text="Parameters" |
161 | | - Foreground="#7BCF7B"/> |
| 157 | + FontSize="13" |
| 158 | + FontWeight="SemiBold" Foreground="#7BCF7B" |
| 159 | + Margin="0,0,0,6"/> |
162 | 160 | <StackPanel x:Name="ParametersContent"/> |
163 | 161 | <TextBlock x:Name="ParametersEmpty" |
164 | 162 | Text="No parameters" |
|
169 | 167 | </Border> |
170 | 168 |
|
171 | 169 | <!-- Wait Stats (right, fills remaining space) --> |
172 | | - <Border Grid.Column="4" Classes="InsightCard" Margin="0"> |
| 170 | + <Border Grid.Column="4" Padding="10,4,10,8" |
| 171 | + Background="#1A2A3D"> |
173 | 172 | <ScrollViewer VerticalScrollBarVisibility="Auto" |
174 | 173 | HorizontalScrollBarVisibility="Auto"> |
175 | 174 | <StackPanel> |
176 | 175 | <TextBlock x:Name="WaitStatsHeader" |
177 | | - Classes="InsightHeader" |
178 | 176 | Text="Wait Stats" |
179 | | - Foreground="#4FA3FF"/> |
| 177 | + FontSize="13" |
| 178 | + FontWeight="SemiBold" Foreground="#4FA3FF" |
| 179 | + Margin="0,0,0,6"/> |
180 | 180 | <StackPanel x:Name="WaitStatsContent"/> |
181 | 181 | <TextBlock x:Name="WaitStatsEmpty" |
182 | 182 | Text="No wait stats (estimated plan)" |
|
0 commit comments