|
7 | 7 | xmlns:panels="clr-namespace:Avalonia.Labs.Panels;assembly=Avalonia.Labs.Panels"
|
8 | 8 | xmlns:icons="clr-namespace:NexusMods.Icons;assembly=NexusMods.Icons"
|
9 | 9 | xmlns:loadoutBadge="clr-namespace:NexusMods.App.UI.Controls.LoadoutBadge"
|
| 10 | + xmlns:spinner="clr-namespace:NexusMods.App.UI.Controls.Spinner" |
10 | 11 | mc:Ignorable="d" d:DesignWidth="250" d:DesignHeight="400"
|
11 | 12 | x:Class="NexusMods.App.UI.Controls.LoadoutCard.LoadoutCardView">
|
12 |
| - <Button x:Name="CardOuterButton"> |
| 13 | + <Design.DataContext> |
| 14 | + <loadoutCard:LoadoutCardDesignViewModel /> |
| 15 | + </Design.DataContext> |
| 16 | + |
| 17 | + <Border x:Name="ContainerBorder"> |
| 18 | + <Grid> |
| 19 | + <Button x:Name="CardOuterButton"> |
13 | 20 |
|
14 |
| - <panels:FlexPanel x:Name="CardOuterFlexPanel"> |
| 21 | + <panels:FlexPanel x:Name="CardOuterFlexPanel"> |
15 | 22 |
|
16 |
| - <Border x:Name="ImageSectionBorder"> |
17 |
| - <Grid> |
18 |
| - <Image x:Name="GameImage" |
19 |
| - Source="avares://NexusMods.App.UI/Assets/DesignTime/cyberpunk_game.png" /> |
20 |
| - <Rectangle x:Name="GradientLayerRectangle" /> |
21 |
| - <loadoutBadge:LoadoutBadge x:Name="LoadoutBadge" /> |
22 |
| - </Grid> |
23 |
| - </Border> |
| 23 | + <Border x:Name="ImageSectionBorder"> |
| 24 | + <Grid> |
| 25 | + <Image x:Name="GameImage" /> |
| 26 | + <Rectangle x:Name="GradientLayerRectangle" /> |
| 27 | + <loadoutBadge:LoadoutBadge x:Name="LoadoutBadge" Classes="CardSize" /> |
| 28 | + </Grid> |
| 29 | + </Border> |
24 | 30 |
|
25 |
| - <Border x:Name="DetailsSectionBorder"> |
| 31 | + <Border x:Name="DetailsSectionBorder"> |
26 | 32 |
|
27 |
| - <panels:FlexPanel x:Name="DetailsSectionFlexPanel"> |
| 33 | + <panels:FlexPanel x:Name="DetailsSectionFlexPanel"> |
28 | 34 |
|
29 |
| - <TextBlock x:Name="LoadoutNameTextBlock" |
30 |
| - Classes="BodyLGBold" |
31 |
| - Text="Loadout A" /> |
| 35 | + <TextBlock x:Name="LoadoutNameTextBlock" |
| 36 | + Classes="BodyLGBold" /> |
32 | 37 |
|
33 |
| - <panels:FlexPanel x:Name="BodyAndActionsGroupFlexPanel"> |
| 38 | + <panels:FlexPanel x:Name="BodyAndActionsGroupFlexPanel"> |
34 | 39 |
|
35 |
| - <panels:FlexPanel x:Name="DetailsBodyFlexPanel"> |
| 40 | + <panels:FlexPanel x:Name="DetailsBodyFlexPanel"> |
36 | 41 |
|
37 |
| - <panels:FlexPanel x:Name="CurrentlyAppliedFlexPanel"> |
| 42 | + <panels:FlexPanel x:Name="CurrentlyAppliedFlexPanel"> |
38 | 43 |
|
39 |
| - <TextBlock x:Name="CurrentlyAppliedTextBlock" |
40 |
| - Classes="BodySMBold" |
41 |
| - Text="Currently Applied" /> |
42 |
| - <icons:UnifiedIcon x:Name="AppliedCheckBoxIcon" |
43 |
| - Classes="CheckBox" /> |
| 44 | + <TextBlock x:Name="CurrentlyAppliedTextBlock" |
| 45 | + Classes="BodySMBold" |
| 46 | + Text="Currently Applied" /> |
| 47 | + <icons:UnifiedIcon x:Name="AppliedCheckBoxIcon" |
| 48 | + Classes="CheckBox" /> |
44 | 49 |
|
45 |
| - </panels:FlexPanel> |
| 50 | + </panels:FlexPanel> |
46 | 51 |
|
47 |
| - <TextBlock x:Name="LastAppliedTimeTextBlock" |
48 |
| - Classes="BodySMNormal ForegroundSubdued" |
49 |
| - Text="Last applied 2 months ago" |
50 |
| - IsVisible="False" /> |
| 52 | + <TextBlock x:Name="LastAppliedTimeTextBlock" |
| 53 | + Classes="BodySMNormal ForegroundSubdued" |
| 54 | + IsVisible="False" /> |
51 | 55 |
|
52 |
| - <TextBlock x:Name="CreatedTimeTextBlock" |
53 |
| - Classes="BodySMNormal ForegroundSubdued" |
54 |
| - Text="Created 10 months ago" /> |
| 56 | + <TextBlock x:Name="CreatedTimeTextBlock" |
| 57 | + Classes="BodySMNormal ForegroundSubdued"/> |
55 | 58 |
|
56 |
| - <TextBlock x:Name="NumberOfModsTextBlock" |
57 |
| - Classes="BodySMNormal ForegroundSubdued" |
58 |
| - Text="Mods 276" /> |
| 59 | + <TextBlock x:Name="NumberOfModsTextBlock" |
| 60 | + Classes="BodySMNormal ForegroundSubdued"/> |
59 | 61 |
|
60 |
| - </panels:FlexPanel> |
| 62 | + </panels:FlexPanel> |
61 | 63 |
|
62 |
| - <panels:FlexPanel x:Name="ActionsFlexPanel"> |
| 64 | + <panels:FlexPanel x:Name="ActionsFlexPanel"> |
63 | 65 |
|
64 |
| - <Button x:Name="CreateCopyButton" |
65 |
| - Classes="Rounded Primary"> |
66 |
| - <StackPanel HorizontalAlignment="Center"> |
67 |
| - <TextBlock Classes="BodySMBold" Text="Create Copy" /> |
68 |
| - </StackPanel> |
69 |
| - </Button> |
| 66 | + <Button x:Name="CreateCopyButton" |
| 67 | + Classes="Rounded Primary"> |
| 68 | + <StackPanel HorizontalAlignment="Center"> |
| 69 | + <TextBlock Classes="BodySMBold" Text="Create Copy" /> |
| 70 | + </StackPanel> |
| 71 | + </Button> |
70 | 72 |
|
71 | 73 |
|
72 |
| - <Button x:Name="DeleteButton" |
73 |
| - Classes="Rounded Primary"> |
74 |
| - <icons:UnifiedIcon Classes="TrashCanOutline" /> |
75 |
| - </Button> |
76 |
| - </panels:FlexPanel> |
| 74 | + <Button x:Name="DeleteButton" |
| 75 | + Classes="Rounded Primary"> |
| 76 | + <icons:UnifiedIcon Classes="TrashCanOutline" /> |
| 77 | + </Button> |
| 78 | + </panels:FlexPanel> |
| 79 | + |
| 80 | + </panels:FlexPanel> |
77 | 81 |
|
78 |
| - </panels:FlexPanel> |
| 82 | + </panels:FlexPanel> |
| 83 | + </Border> |
79 | 84 |
|
80 | 85 | </panels:FlexPanel>
|
81 |
| - </Border> |
| 86 | + </Button> |
| 87 | + |
| 88 | + <!-- Needs to be on top of the card button to avoid the disabled opacity --> |
| 89 | + <panels:FlexPanel x:Name="OverlayFlexPanel" IsVisible="False"> |
| 90 | + <panels:FlexPanel x:Name="DeletingSpinnerFlexPanel"> |
| 91 | + <spinner:Spinner x:Name="DeletingSpinner" /> |
| 92 | + <TextBlock x:Name="DeletingTextBlock" |
| 93 | + Classes="BodyXLNormal ForegroundSubdued" |
| 94 | + Text="Deleting..." /> |
| 95 | + </panels:FlexPanel> |
| 96 | + <Border /> |
| 97 | + </panels:FlexPanel> |
| 98 | + </Grid> |
| 99 | + </Border> |
| 100 | + |
82 | 101 |
|
83 |
| - </panels:FlexPanel> |
84 |
| - </Button> |
85 | 102 | </reactiveUi:ReactiveUserControl>
|
0 commit comments