mirror of
https://github.com/Artemis-RGB/Artemis
synced 2025-12-13 05:48:35 +00:00
UI - Added --disable-forced-shutdown which does just that
UI - Don't kill new instances of Artemis launched within 8 seconds after shutdown UI - Updated About tab
This commit is contained in:
parent
a6602626a3
commit
87dce788d7
@ -67,9 +67,12 @@ namespace Artemis.Core.Services
|
||||
foreach (ProfileModule profileModule in profileModules)
|
||||
{
|
||||
// Avoid race condition, make the check here
|
||||
if (profileModule.ActiveProfile != null)
|
||||
if (profileModule.ActiveProfile == null)
|
||||
continue;
|
||||
|
||||
profileModule.ActiveProfile.PopulateLeds(_rgbService.EnabledDevices);
|
||||
if (profileModule.ActiveProfile.IsFreshImport)
|
||||
{
|
||||
profileModule.ActiveProfile.PopulateLeds(_rgbService.EnabledDevices);
|
||||
_logger.Debug("Profile is a fresh import, adapting to surface - {profile}", profileModule.ActiveProfile);
|
||||
AdaptProfile(profileModule.ActiveProfile);
|
||||
}
|
||||
|
||||
@ -50,7 +50,6 @@
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||
</PackageReference>
|
||||
<PackageReference Include="WriteableBitmapEx" Version="1.6.7" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Remove="obj\x64\Debug\ColorPicker.g.cs" />
|
||||
|
||||
@ -113,12 +113,6 @@
|
||||
"resolved": "0.4.0",
|
||||
"contentHash": "2Tzz6qoQNciyO4uT6wxByMiyvbve+u4eFIiDewDUbeHuxr/rKuba3/EhhXDsEH9WoKzYlpzqxDfQGPE/bIe5Rw=="
|
||||
},
|
||||
"WriteableBitmapEx": {
|
||||
"type": "Direct",
|
||||
"requested": "[1.6.7, )",
|
||||
"resolved": "1.6.7",
|
||||
"contentHash": "GoPhIdYzG/DWJq/MADb8gFzRN5PsxM+1DSJFS8Jzupg4DXqFSnlejYEjJw4ffPEUyELL07O4XIGUZydE4jQK0Q=="
|
||||
},
|
||||
"Castle.Core": {
|
||||
"type": "Transitive",
|
||||
"resolved": "4.2.0",
|
||||
|
||||
@ -119,14 +119,17 @@ namespace Artemis.UI
|
||||
private void UtilitiesOnShutdownRequested(object sender, EventArgs e)
|
||||
{
|
||||
// Use PowerShell to kill the process after 8 sec just in case
|
||||
ProcessStartInfo info = new()
|
||||
if (!StartupArguments.Contains("--disable-forced-shutdown"))
|
||||
{
|
||||
Arguments = "-Command \"& {Start-Sleep -s 8; (Get-Process 'Artemis.UI').kill()}",
|
||||
WindowStyle = ProcessWindowStyle.Hidden,
|
||||
CreateNoWindow = true,
|
||||
FileName = "PowerShell.exe"
|
||||
};
|
||||
Process.Start(info);
|
||||
ProcessStartInfo info = new()
|
||||
{
|
||||
Arguments = "-Command \"& {Start-Sleep -s 8; (Get-Process -Id " + Process.GetCurrentProcess().Id + ").kill()}",
|
||||
WindowStyle = ProcessWindowStyle.Hidden,
|
||||
CreateNoWindow = true,
|
||||
FileName = "PowerShell.exe"
|
||||
};
|
||||
Process.Start(info);
|
||||
}
|
||||
|
||||
Execute.OnUIThread(() => Application.Current.Shutdown());
|
||||
}
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
"profiles": {
|
||||
"Artemis.UI": {
|
||||
"commandName": "Project",
|
||||
"commandLineArgs": "--force-elevation --pcmr"
|
||||
"commandLineArgs": "--force-elevation --disable-forced-shutdown --pcmr"
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -4,44 +4,41 @@
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:s="https://github.com/canton7/Stylet"
|
||||
xmlns:materialDesign="http://materialdesigninxaml.net/winfx/xaml/themes"
|
||||
mc:Ignorable="d"
|
||||
d:DesignHeight="450" d:DesignWidth="800">
|
||||
<Grid Margin="16" Width="500">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition />
|
||||
<RowDefinition />
|
||||
<RowDefinition />
|
||||
<RowDefinition />
|
||||
</Grid.RowDefinitions>
|
||||
<TextBlock Style="{StaticResource MaterialDesignHeadline6TextBlock}" Grid.Row="0">
|
||||
Export current profile
|
||||
</TextBlock>
|
||||
<Grid Margin="16" Width="500">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="*" />
|
||||
</Grid.RowDefinitions>
|
||||
<TextBlock Style="{StaticResource MaterialDesignHeadline6TextBlock}" Grid.Row="0">
|
||||
Export current profile
|
||||
</TextBlock>
|
||||
|
||||
<TextBlock Grid.Row="1"
|
||||
Margin="0 10"
|
||||
TextWrapping="Wrap"
|
||||
Style="{StaticResource MaterialDesignSubtitle1TextBlock}"
|
||||
Foreground="{DynamicResource MaterialDesignBodyLight}">
|
||||
Please note that exporting profiles like this is placeholder functionality. The idea is that this will eventually happen via the workshop.
|
||||
</TextBlock>
|
||||
<TextBlock Grid.Row="1"
|
||||
Margin="0 10"
|
||||
TextWrapping="Wrap"
|
||||
Style="{StaticResource MaterialDesignSubtitle1TextBlock}"
|
||||
Foreground="{DynamicResource MaterialDesignBodyLight}">
|
||||
It looks like you have not set up any profile adaption hints. This means Artemis can't do much to make your profile look good on a different surface other than try finding the same LEDs as you have.
|
||||
<LineBreak/><LineBreak/>
|
||||
To configure adaption hints, right-click on a layer and choose <materialDesign:PackIcon Kind="AutoFix" /> <Run FontWeight="Bold">View Adaption Hints</Run>.
|
||||
<LineBreak/><LineBreak/>
|
||||
To learn more about profile adaption, check out
|
||||
<Hyperlink Style="{StaticResource ArtemisHyperlink}" RequestNavigate="{s:Action OpenHyperlink}" NavigateUri="https://wiki.artemis-rgb.com/guides/user/profiles/layers/adaption-hints">
|
||||
this wiki article
|
||||
</Hyperlink>.
|
||||
</TextBlock>
|
||||
|
||||
<TextBlock Grid.Row="2"
|
||||
Margin="0 10"
|
||||
TextWrapping="Wrap"
|
||||
Style="{StaticResource MaterialDesignSubtitle1TextBlock}"
|
||||
Foreground="{DynamicResource MaterialDesignBodyLight}">
|
||||
The workshop will include tools to make profiles convert easily and look good on different layouts.
|
||||
That means right now when someone imports this export unless they have the exact same setup as
|
||||
you, they'll have to select LEDs for each layer in the profile.
|
||||
</TextBlock>
|
||||
|
||||
<StackPanel Orientation="Horizontal" HorizontalAlignment="Right" Grid.Row="3">
|
||||
<Button Style="{StaticResource MaterialDesignFlatButton}" IsCancel="True" Margin="0 8 8 0" Command="{s:Action Cancel}">
|
||||
CANCEL
|
||||
</Button>
|
||||
<Button Style="{StaticResource MaterialDesignFlatButton}" IsDefault="True" Margin="0 8 0 0" Command="{s:Action Accept}">
|
||||
I UNDERSTAND, EXPORT
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
<StackPanel Orientation="Horizontal" HorizontalAlignment="Right" VerticalAlignment="Bottom" Grid.Row="2">
|
||||
<Button Style="{StaticResource MaterialDesignFlatButton}" IsCancel="True" Margin="0 8 8 0" Command="{s:Action Cancel}">
|
||||
CANCEL
|
||||
</Button>
|
||||
<Button Style="{StaticResource MaterialDesignFlatButton}" IsDefault="True" Margin="0 8 0 0" Command="{s:Action Accept}">
|
||||
EXPORT ANYWAY
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</UserControl>
|
||||
@ -1,8 +1,8 @@
|
||||
using System.Windows;
|
||||
using System.Windows.Navigation;
|
||||
using Artemis.Core;
|
||||
using Artemis.Core.Services;
|
||||
using Artemis.UI.Shared.Services;
|
||||
using MaterialDesignThemes.Wpf;
|
||||
|
||||
namespace Artemis.UI.Screens.ProfileEditor.Dialogs
|
||||
{
|
||||
@ -21,6 +21,22 @@ namespace Artemis.UI.Screens.ProfileEditor.Dialogs
|
||||
|
||||
public ProfileDescriptor ProfileDescriptor { get; }
|
||||
|
||||
#region Overrides of Screen
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override void OnActivate()
|
||||
{
|
||||
// TODO: If the profile has hints on all layers, call Accept
|
||||
base.OnActivate();
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
public void OpenHyperlink(object sender, RequestNavigateEventArgs e)
|
||||
{
|
||||
Core.Utilities.OpenUrl(e.Uri.AbsoluteUri);
|
||||
}
|
||||
|
||||
public void Accept()
|
||||
{
|
||||
string encoded = _profileService.ExportProfile(ProfileDescriptor);
|
||||
|
||||
@ -22,91 +22,104 @@
|
||||
d:DesignHeight="800" d:DesignWidth="800"
|
||||
d:DataContext="{d:DesignInstance dialogs:LayerHintsDialogViewModel}"
|
||||
Icon="/Resources/Images/Logo/bow.ico">
|
||||
<mde:MaterialWindow.Resources>
|
||||
<ResourceDictionary>
|
||||
<ResourceDictionary.MergedDictionaries>
|
||||
<ResourceDictionary Source="pack://application:,,,/MaterialDesignThemes.Wpf;component/Themes/MaterialDesignTheme.PopupBox.xaml" />
|
||||
</ResourceDictionary.MergedDictionaries>
|
||||
<mde:MaterialWindow.Resources>
|
||||
<ResourceDictionary>
|
||||
<ResourceDictionary.MergedDictionaries>
|
||||
<ResourceDictionary Source="pack://application:,,,/MaterialDesignThemes.Wpf;component/Themes/MaterialDesignTheme.PopupBox.xaml" />
|
||||
</ResourceDictionary.MergedDictionaries>
|
||||
|
||||
</ResourceDictionary>
|
||||
</mde:MaterialWindow.Resources>
|
||||
</ResourceDictionary>
|
||||
</mde:MaterialWindow.Resources>
|
||||
|
||||
<materialDesign:DialogHost IsTabStop="False"
|
||||
Focusable="False"
|
||||
Identifier="DeviceDialog"
|
||||
DialogTheme="Inherit"
|
||||
SnackbarMessageQueue="{Binding LayerHintsMessageQueue}">
|
||||
<DockPanel>
|
||||
<mde:AppBar Type="Dense"
|
||||
Title="{Binding Layer.Name}"
|
||||
ShowShadow="True"
|
||||
DockPanel.Dock="Top"
|
||||
Margin="-18 0 0 0">
|
||||
<mde:AppBar.AppIcon>
|
||||
<materialDesign:PackIcon Kind="AutoFix" Width="20" Height="28" />
|
||||
</mde:AppBar.AppIcon>
|
||||
</mde:AppBar>
|
||||
<materialDesign:DialogHost IsTabStop="False"
|
||||
Focusable="False"
|
||||
Identifier="DeviceDialog"
|
||||
DialogTheme="Inherit"
|
||||
SnackbarMessageQueue="{Binding LayerHintsMessageQueue}">
|
||||
<DockPanel>
|
||||
<mde:AppBar Type="Dense"
|
||||
Title="{Binding Layer.Name}"
|
||||
ShowShadow="True"
|
||||
DockPanel.Dock="Top"
|
||||
Margin="-18 0 0 0">
|
||||
<mde:AppBar.AppIcon>
|
||||
<materialDesign:PackIcon Kind="AutoFix" Width="20" Height="28" />
|
||||
</mde:AppBar.AppIcon>
|
||||
</mde:AppBar>
|
||||
|
||||
<Grid Margin="15">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="*" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<TextBlock Grid.Row="0" Style="{StaticResource MaterialDesignHeadline6TextBlock}">
|
||||
Introduction
|
||||
</TextBlock>
|
||||
<TextBlock Grid.Row="1" Style="{StaticResource MaterialDesignTextBlock}" TextWrapping="Wrap">
|
||||
In this window you can tell Artemis how this layer should be adapted when the profile is applied to a different set of devices by providing so-called adaption hints.
|
||||
<LineBreak />
|
||||
When sharing your profile with other people good hints help them import your profile without the need for manual adjustments.
|
||||
</TextBlock>
|
||||
<Grid Margin="15">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="Auto" />
|
||||
<RowDefinition Height="*" />
|
||||
<RowDefinition Height="Auto" />
|
||||
</Grid.RowDefinitions>
|
||||
<TextBlock Grid.Row="0" Style="{StaticResource MaterialDesignHeadline6TextBlock}">
|
||||
Introduction
|
||||
</TextBlock>
|
||||
<TextBlock Grid.Row="1" Style="{StaticResource MaterialDesignTextBlock}" TextWrapping="Wrap">
|
||||
In this window you can tell Artemis how this layer should be adapted when the profile is applied to a different set of devices by providing so-called adaption hints.
|
||||
This is useful when sharing your profile with others, avoiding the need for manual adjustments.
|
||||
<LineBreak />
|
||||
To learn more about profile adaption, check out
|
||||
<Hyperlink Style="{StaticResource ArtemisHyperlink}" RequestNavigate="{s:Action OpenHyperlink}" NavigateUri="https://wiki.artemis-rgb.com/guides/user/profiles/layers/adaption-hints">
|
||||
this wiki article
|
||||
</Hyperlink>
|
||||
.
|
||||
</TextBlock>
|
||||
|
||||
<TextBlock Grid.Row="2" Style="{StaticResource MaterialDesignHeadline6TextBlock}" Margin="0 25 0 0">
|
||||
Adaption hints
|
||||
</TextBlock>
|
||||
<ScrollViewer Grid.Row="3">
|
||||
<ItemsControl ItemsSource="{Binding Items}" Margin="0 0 10 0">
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<materialDesign:TransitioningContent OpeningEffect="{materialDesign:TransitionEffect SlideInFromLeft}"
|
||||
OpeningEffectsOffset="{materialDesign:IndexedItemOffsetMultiplier 0:0:0.05}">
|
||||
<ContentControl s:View.Model="{Binding}" VerticalContentAlignment="Stretch" HorizontalContentAlignment="Stretch" IsTabStop="False" />
|
||||
</materialDesign:TransitioningContent>
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
</ItemsControl>
|
||||
</ScrollViewer>
|
||||
<TextBlock Grid.Row="2" Style="{StaticResource MaterialDesignHeadline6TextBlock}" Margin="0 25 0 0">
|
||||
Adaption hints
|
||||
</TextBlock>
|
||||
<StackPanel Grid.Row="3"
|
||||
Margin="0 50 0 0"
|
||||
Visibility="{Binding HasAdaptionHints, Converter={x:Static s:BoolToVisibilityConverter.InverseInstance}, Mode=OneWay}">
|
||||
<materialDesign:PackIcon Kind="AlertCircleOutline" HorizontalAlignment="Center" Width="100" Height="100" />
|
||||
<TextBlock Style="{StaticResource MaterialDesignHeadline4TextBlock}" HorizontalAlignment="Center">You haven't set up any adaption hints</TextBlock>
|
||||
<TextBlock Style="{StaticResource MaterialDesignSubtitle1TextBlock}" HorizontalAlignment="Center">Artemis will attempt to directly map the LEDs of this layer to different surfaces but results may vary.</TextBlock>
|
||||
</StackPanel>
|
||||
<ScrollViewer Grid.Row="3"
|
||||
Visibility="{Binding HasAdaptionHints, Converter={x:Static s:BoolToVisibilityConverter.Instance}, Mode=OneWay}">
|
||||
<ItemsControl ItemsSource="{Binding Items}" Margin="0 0 10 0">
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<materialDesign:TransitioningContent OpeningEffect="{materialDesign:TransitionEffect SlideInFromLeft}"
|
||||
OpeningEffectsOffset="{materialDesign:IndexedItemOffsetMultiplier 0:0:0.05}">
|
||||
<ContentControl s:View.Model="{Binding}" VerticalContentAlignment="Stretch" HorizontalContentAlignment="Stretch" IsTabStop="False" />
|
||||
</materialDesign:TransitioningContent>
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
</ItemsControl>
|
||||
</ScrollViewer>
|
||||
|
||||
<!-- Buttons -->
|
||||
<Grid Grid.Row="4">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Button Grid.Column="0"
|
||||
Style="{StaticResource MaterialDesignOutlinedButton}"
|
||||
Margin="0 8 8 0"
|
||||
Command="{s:Action AutoDetermineHints}"
|
||||
ToolTip="Attempt to automatically determine relevant hint(s) for this layer">
|
||||
AUTO-DETERMINE HINTS
|
||||
</Button>
|
||||
<!-- Buttons -->
|
||||
<Grid Grid.Row="4">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Button Grid.Column="0"
|
||||
Style="{StaticResource MaterialDesignOutlinedButton}"
|
||||
Margin="0 8 8 0"
|
||||
Command="{s:Action AutoDetermineHints}"
|
||||
ToolTip="Attempt to automatically determine relevant hint(s) for this layer">
|
||||
AUTO-DETERMINE HINTS
|
||||
</Button>
|
||||
|
||||
<materialDesign:PopupBox Grid.Column="1"
|
||||
Style="{StaticResource MaterialDesignMultiFloatingActionAccentPopupBox}"
|
||||
ToolTip="Add a new hint"
|
||||
HorizontalAlignment="Right"
|
||||
Margin="0 5 0 0">
|
||||
<StackPanel>
|
||||
<Button ToolTip="Add a category hint" Content="{materialDesign:PackIcon Kind=Desk, Size=20}" Command="{s:Action AddCategoryHint}" />
|
||||
<Button ToolTip="Add a device type hint" Content="{materialDesign:PackIcon Kind=Devices, Size=20}" Command="{s:Action AddDeviceHint}" />
|
||||
<Button ToolTip="Add a keyboard-section hint" Content="{materialDesign:PackIcon Kind=Keyboard, Size=20}" Command="{s:Action AddKeyboardSectionHint}" />
|
||||
</StackPanel>
|
||||
</materialDesign:PopupBox>
|
||||
</Grid>
|
||||
</Grid>
|
||||
</DockPanel>
|
||||
</materialDesign:DialogHost>
|
||||
<materialDesign:PopupBox Grid.Column="1"
|
||||
Style="{StaticResource MaterialDesignMultiFloatingActionAccentPopupBox}"
|
||||
ToolTip="Add a new hint"
|
||||
HorizontalAlignment="Right"
|
||||
Margin="0 5 0 0">
|
||||
<StackPanel>
|
||||
<Button ToolTip="Add a category hint" Content="{materialDesign:PackIcon Kind=Desk, Size=20}" Command="{s:Action AddCategoryHint}" />
|
||||
<Button ToolTip="Add a device type hint" Content="{materialDesign:PackIcon Kind=Devices, Size=20}" Command="{s:Action AddDeviceHint}" />
|
||||
<Button ToolTip="Add a keyboard-section hint" Content="{materialDesign:PackIcon Kind=Keyboard, Size=20}" Command="{s:Action AddKeyboardSectionHint}" />
|
||||
</StackPanel>
|
||||
</materialDesign:PopupBox>
|
||||
</Grid>
|
||||
</Grid>
|
||||
</DockPanel>
|
||||
</materialDesign:DialogHost>
|
||||
</mde:MaterialWindow>
|
||||
@ -1,5 +1,7 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Windows.Navigation;
|
||||
using Artemis.Core;
|
||||
using Artemis.Core.Services;
|
||||
using Artemis.UI.Ninject.Factories;
|
||||
@ -28,6 +30,7 @@ namespace Artemis.UI.Screens.ProfileEditor.ProfileTree.Dialogs
|
||||
}
|
||||
|
||||
public Layer Layer { get; }
|
||||
public bool HasAdaptionHints => Items.Any();
|
||||
|
||||
public SnackbarMessageQueue LayerHintsMessageQueue
|
||||
{
|
||||
@ -46,6 +49,7 @@ namespace Artemis.UI.Screens.ProfileEditor.ProfileTree.Dialogs
|
||||
CategoryAdaptionHint hint = new();
|
||||
Layer.Adapter.AdaptionHints.Add(hint);
|
||||
Items.Add(_vmFactory.CategoryAdaptionHintViewModel(hint));
|
||||
NotifyOfPropertyChange(nameof(HasAdaptionHints));
|
||||
}
|
||||
|
||||
public void AddDeviceHint()
|
||||
@ -53,6 +57,7 @@ namespace Artemis.UI.Screens.ProfileEditor.ProfileTree.Dialogs
|
||||
DeviceAdaptionHint hint = new();
|
||||
Layer.Adapter.AdaptionHints.Add(hint);
|
||||
Items.Add(_vmFactory.DeviceAdaptionHintViewModel(hint));
|
||||
NotifyOfPropertyChange(nameof(HasAdaptionHints));
|
||||
}
|
||||
|
||||
public void AddKeyboardSectionHint()
|
||||
@ -60,12 +65,19 @@ namespace Artemis.UI.Screens.ProfileEditor.ProfileTree.Dialogs
|
||||
KeyboardSectionAdaptionHint hint = new();
|
||||
Layer.Adapter.AdaptionHints.Add(hint);
|
||||
Items.Add(_vmFactory.KeyboardSectionAdaptionHintViewModel(hint));
|
||||
NotifyOfPropertyChange(nameof(HasAdaptionHints));
|
||||
}
|
||||
|
||||
public void RemoveAdaptionHint(AdaptionHintViewModel adaptionHintViewModel)
|
||||
{
|
||||
Layer.Adapter.AdaptionHints.Remove(adaptionHintViewModel.AdaptionHint);
|
||||
Items.Remove(adaptionHintViewModel);
|
||||
NotifyOfPropertyChange(nameof(HasAdaptionHints));
|
||||
}
|
||||
|
||||
public void OpenHyperlink(object sender, RequestNavigateEventArgs e)
|
||||
{
|
||||
Core.Utilities.OpenUrl(e.Uri.AbsoluteUri);
|
||||
}
|
||||
|
||||
#region Overrides of Screen
|
||||
@ -109,6 +121,7 @@ namespace Artemis.UI.Screens.ProfileEditor.ProfileTree.Dialogs
|
||||
break;
|
||||
}
|
||||
}
|
||||
NotifyOfPropertyChange(nameof(HasAdaptionHints));
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -7,54 +7,410 @@
|
||||
xmlns:materialDesign="http://materialdesigninxaml.net/winfx/xaml/themes"
|
||||
xmlns:shared="clr-namespace:Artemis.UI.Shared;assembly=Artemis.UI.Shared"
|
||||
xmlns:svgc="http://sharpvectors.codeplex.com/svgc/"
|
||||
xmlns:s="https://github.com/canton7/Stylet"
|
||||
mc:Ignorable="d"
|
||||
d:DesignHeight="450" d:DesignWidth="800"
|
||||
d:DataContext="{d:DesignInstance local:AboutTabViewModel}">
|
||||
<ScrollViewer VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Disabled">
|
||||
<StackPanel Margin="15" MaxWidth="800">
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Image Source="{svgc:SvgImage Source=/Resources/Images/Logo/bow.svg}" Width="60" Height="80" Margin="0 0 20 0" />
|
||||
<TextBlock Style="{StaticResource MaterialDesignHeadline2TextBlock}">
|
||||
Artemis 2
|
||||
</TextBlock>
|
||||
</StackPanel>
|
||||
<TextBlock Style="{StaticResource MaterialDesignSubtitle1TextBlock}" Foreground="{DynamicResource MaterialDesignBodyLight}" Text="{Binding Version}" />
|
||||
<ScrollViewer VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Disabled">
|
||||
<StackPanel Margin="15" MaxWidth="800">
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition />
|
||||
<RowDefinition />
|
||||
</Grid.RowDefinitions>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="Auto" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Image Grid.Column="0" Source="{svgc:SvgImage Source=/Resources/Images/Logo/bow.svg}" Width="60" Height="80" Margin="0 0 20 0" />
|
||||
<TextBlock Grid.Row="0" Grid.Column="1" Style="{StaticResource MaterialDesignHeadline2TextBlock}">
|
||||
Artemis 2
|
||||
</TextBlock>
|
||||
|
||||
<materialDesign:Card Margin="0 25 0 0">
|
||||
<StackPanel Margin="15">
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<materialDesign:PackIcon Kind="Account" Width="60" Height="40" />
|
||||
<TextBlock Style="{StaticResource MaterialDesignHeadline4TextBlock}">
|
||||
Lead developer
|
||||
</TextBlock>
|
||||
</StackPanel>
|
||||
<TextBlock Style="{StaticResource MaterialDesignBody1TextBlock}" Margin="10 0 0 0">
|
||||
- Spoinky (Robert Beekman)
|
||||
</TextBlock>
|
||||
|
||||
<StackPanel Orientation="Horizontal" Margin="0 25 0 0">
|
||||
<materialDesign:PackIcon Kind="AccountGroup" Width="60" Height="40" />
|
||||
<TextBlock Style="{StaticResource MaterialDesignHeadline4TextBlock}">
|
||||
Main contributors
|
||||
</TextBlock>
|
||||
</StackPanel>
|
||||
<TextBlock Style="{StaticResource MaterialDesignBody1TextBlock}" LineHeight="25" Margin="10 0 0 0">
|
||||
- DarthAffe <LineBreak />
|
||||
- DrMeteor (Diogo Trindade)
|
||||
</TextBlock>
|
||||
<StackPanel Orientation="Horizontal" Margin="0 25 0 0">
|
||||
<materialDesign:PackIcon Kind="AccountHeart" Width="60" Height="40" />
|
||||
<TextBlock Style="{StaticResource MaterialDesignHeadline4TextBlock}">
|
||||
Special thanks
|
||||
</TextBlock>
|
||||
</StackPanel>
|
||||
<TextBlock Style="{StaticResource MaterialDesignBody1TextBlock}" LineHeight="25" Margin="10 0 0 0">
|
||||
- All the people on Discord providing feedback and testing<LineBreak />
|
||||
- Aureshion - Default device images<LineBreak />
|
||||
- kaisax - Logo design
|
||||
</TextBlock>
|
||||
</StackPanel>
|
||||
</materialDesign:Card>
|
||||
<StackPanel Grid.Row="0" Grid.Column="2" HorizontalAlignment="Right" Orientation="Horizontal">
|
||||
<Button
|
||||
Style="{StaticResource MaterialDesignIconForegroundButton}"
|
||||
ToolTip="View website"
|
||||
Command="{s:Action OpenUrl}"
|
||||
CommandParameter="https://artemis-rgb.com">
|
||||
<materialDesign:PackIcon Kind="Web" />
|
||||
</Button>
|
||||
<Button
|
||||
Style="{StaticResource MaterialDesignIconForegroundButton}"
|
||||
ToolTip="View GitHub repository"
|
||||
Command="{s:Action OpenUrl}"
|
||||
CommandParameter="https://github.com/Artemis-RGB/Artemis">
|
||||
<materialDesign:PackIcon Kind="Github" />
|
||||
</Button>
|
||||
<Button
|
||||
Style="{StaticResource MaterialDesignIconForegroundButton}"
|
||||
ToolTip="View Wiki"
|
||||
Command="{s:Action OpenUrl}"
|
||||
CommandParameter="https://wiki.artemis-rgb.com"
|
||||
Margin="0 0 -10 0">
|
||||
<materialDesign:PackIcon Kind="BookOpenOutline" />
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</ScrollViewer>
|
||||
|
||||
<TextBlock Grid.Row="1"
|
||||
Grid.Column="0"
|
||||
Grid.ColumnSpan="2"
|
||||
Style="{StaticResource MaterialDesignSubtitle1TextBlock}"
|
||||
Foreground="{DynamicResource MaterialDesignBodyLight}"
|
||||
Text="{Binding Version}" />
|
||||
<TextBlock Grid.Row="1"
|
||||
Grid.Column="2"
|
||||
Style="{StaticResource MaterialDesignSubtitle1TextBlock}">
|
||||
<Hyperlink Style="{StaticResource ArtemisHyperlink}" RequestNavigate="{s:Action OpenHyperlink}" NavigateUri="https://github.com/Artemis-RGB/Artemis/blob/master/LICENSE">
|
||||
PolyForm Noncommercial License 1.0.0
|
||||
</Hyperlink>
|
||||
</TextBlock>
|
||||
</Grid>
|
||||
|
||||
<materialDesign:Card Margin="0 25 0 0">
|
||||
<StackPanel Margin="15">
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition />
|
||||
<RowDefinition />
|
||||
<RowDefinition />
|
||||
</Grid.RowDefinitions>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Ellipse Grid.Row="0"
|
||||
Grid.Column="0"
|
||||
Grid.RowSpan="3"
|
||||
VerticalAlignment="Top"
|
||||
Height="75"
|
||||
Width="75"
|
||||
Margin="0 0 15 0"
|
||||
RenderOptions.BitmapScalingMode="HighQuality">
|
||||
<Ellipse.Fill>
|
||||
<ImageBrush ImageSource="https://avatars.githubusercontent.com/u/8858506" />
|
||||
</Ellipse.Fill>
|
||||
</Ellipse>
|
||||
<TextBlock Grid.Row="0"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource MaterialDesignBody1TextBlock}"
|
||||
Padding="0">
|
||||
Robert 'Spoinky' Beekman
|
||||
</TextBlock>
|
||||
<TextBlock Grid.Column="1"
|
||||
Grid.Row="1"
|
||||
Style="{StaticResource MaterialDesignBody1TextBlock}"
|
||||
Foreground="{DynamicResource MaterialDesignNavigationItemSubheader}"
|
||||
Padding="0">
|
||||
Project owner, main contributor
|
||||
</TextBlock>
|
||||
<StackPanel Grid.Column="1" Grid.Row="2" Orientation="Horizontal" Margin="-10">
|
||||
<Button Height="40"
|
||||
Width="40"
|
||||
Style="{StaticResource MaterialDesignIconForegroundButton}"
|
||||
ToolTip="View GitHub profile"
|
||||
Command="{s:Action OpenUrl}"
|
||||
CommandParameter="https://github.com/SpoinkyNL/">
|
||||
<materialDesign:PackIcon Kind="Github" Width="20" Height="20" />
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
|
||||
<Separator Style="{StaticResource MaterialDesignSeparator}" Margin="-15 5" />
|
||||
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition />
|
||||
<RowDefinition />
|
||||
<RowDefinition />
|
||||
</Grid.RowDefinitions>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Ellipse Grid.Row="0"
|
||||
Grid.Column="0"
|
||||
Grid.RowSpan="3"
|
||||
VerticalAlignment="Top"
|
||||
Height="75"
|
||||
Width="75"
|
||||
Margin="0 0 15 0"
|
||||
RenderOptions.BitmapScalingMode="HighQuality">
|
||||
<Ellipse.Fill>
|
||||
<ImageBrush ImageSource="https://avatars.githubusercontent.com/u/1094841" />
|
||||
</Ellipse.Fill>
|
||||
</Ellipse>
|
||||
<TextBlock Grid.Row="0"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource MaterialDesignBody1TextBlock}"
|
||||
Padding="0">
|
||||
Darth Affe
|
||||
</TextBlock>
|
||||
<TextBlock Grid.Column="1"
|
||||
Grid.Row="1"
|
||||
Style="{StaticResource MaterialDesignBody1TextBlock}"
|
||||
Foreground="{DynamicResource MaterialDesignNavigationItemSubheader}"
|
||||
Padding="0">
|
||||
<Hyperlink Style="{StaticResource ArtemisHyperlink}"
|
||||
RequestNavigate="{s:Action OpenHyperlink}"
|
||||
NavigateUri="https://github.com/DarthAffe/RGB.NET">
|
||||
RGB.NET
|
||||
</Hyperlink> developer, main contributor
|
||||
</TextBlock>
|
||||
<StackPanel Grid.Column="1" Grid.Row="2" Orientation="Horizontal" Margin="-10">
|
||||
<Button Height="40"
|
||||
Width="40"
|
||||
Style="{StaticResource MaterialDesignIconForegroundButton}"
|
||||
ToolTip="View GitHub profile"
|
||||
Command="{s:Action OpenUrl}"
|
||||
CommandParameter="https://github.com/DarthAffe/">
|
||||
<materialDesign:PackIcon Kind="Github" Width="20" Height="20" />
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
|
||||
<Separator Style="{StaticResource MaterialDesignSeparator}" Margin="-15 5" />
|
||||
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition />
|
||||
<RowDefinition />
|
||||
<RowDefinition />
|
||||
</Grid.RowDefinitions>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Ellipse Grid.Row="0"
|
||||
Grid.Column="0"
|
||||
Grid.RowSpan="3"
|
||||
VerticalAlignment="Top"
|
||||
Height="75"
|
||||
Width="75"
|
||||
Margin="0 0 15 0"
|
||||
RenderOptions.BitmapScalingMode="HighQuality">
|
||||
<Ellipse.Fill>
|
||||
<ImageBrush ImageSource="https://avatars.githubusercontent.com/u/29486064" />
|
||||
</Ellipse.Fill>
|
||||
</Ellipse>
|
||||
<TextBlock Grid.Row="0"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource MaterialDesignBody1TextBlock}"
|
||||
Padding="0">
|
||||
Diogo 'DrMeteor' Trindade
|
||||
</TextBlock>
|
||||
<TextBlock Grid.Column="1"
|
||||
Grid.Row="1"
|
||||
Style="{StaticResource MaterialDesignBody1TextBlock}"
|
||||
Foreground="{DynamicResource MaterialDesignNavigationItemSubheader}"
|
||||
Padding="0">
|
||||
Main contributor
|
||||
</TextBlock>
|
||||
<StackPanel Grid.Column="1" Grid.Row="2" Orientation="Horizontal" Margin="-10">
|
||||
<Button Height="40"
|
||||
Width="40"
|
||||
Style="{StaticResource MaterialDesignIconForegroundButton}"
|
||||
ToolTip="View GitHub profile"
|
||||
Command="{s:Action OpenUrl}"
|
||||
CommandParameter="https://github.com/diogotr7/">
|
||||
<materialDesign:PackIcon Kind="Github" Width="20" Height="20" />
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
|
||||
<Separator Style="{StaticResource MaterialDesignSeparator}" Margin="-15 5" />
|
||||
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition />
|
||||
<RowDefinition />
|
||||
<RowDefinition />
|
||||
</Grid.RowDefinitions>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Ellipse Grid.Row="0"
|
||||
Grid.Column="0"
|
||||
Grid.RowSpan="3"
|
||||
VerticalAlignment="Top"
|
||||
Height="75"
|
||||
Width="75"
|
||||
Margin="0 0 15 0"
|
||||
RenderOptions.BitmapScalingMode="HighQuality">
|
||||
<Ellipse.Fill>
|
||||
<ImageBrush ImageSource="https://i.imgur.com/8mPWY1j.png" />
|
||||
</Ellipse.Fill>
|
||||
</Ellipse>
|
||||
<TextBlock Grid.Row="0"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource MaterialDesignBody1TextBlock}"
|
||||
Padding="0">
|
||||
Kai Werling
|
||||
</TextBlock>
|
||||
<TextBlock Grid.Column="1"
|
||||
Grid.Row="1"
|
||||
Style="{StaticResource MaterialDesignBody1TextBlock}"
|
||||
Foreground="{DynamicResource MaterialDesignNavigationItemSubheader}"
|
||||
Padding="0">
|
||||
Graphics design
|
||||
</TextBlock>
|
||||
<StackPanel Grid.Column="1" Grid.Row="2" Orientation="Horizontal" Margin="-10">
|
||||
<Button Height="40"
|
||||
Width="40"
|
||||
Style="{StaticResource MaterialDesignIconForegroundButton}"
|
||||
ToolTip="View website"
|
||||
Command="{s:Action OpenUrl}"
|
||||
CommandParameter="https://kwer.online/">
|
||||
<materialDesign:PackIcon Kind="Web" Width="20" Height="20" />
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
|
||||
<Separator Style="{StaticResource MaterialDesignSeparator}" Margin="-15 5" />
|
||||
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<materialDesign:PackIcon Kind="AccountHeart" Width="30" Height="30" />
|
||||
<TextBlock Style="{StaticResource MaterialDesignHeadline6TextBlock}" Margin="5 3 0 0">
|
||||
Special thanks
|
||||
</TextBlock>
|
||||
</StackPanel>
|
||||
<TextBlock Style="{StaticResource MaterialDesignBody1TextBlock}" LineHeight="25" Margin="10 0 0 0">
|
||||
- The various people creating PRs to Artemis.Plugins and the main repository<LineBreak />
|
||||
- All the people on Discord providing feedback and testing
|
||||
</TextBlock>
|
||||
|
||||
<StackPanel Orientation="Horizontal" Margin="0 20 0 0">
|
||||
<materialDesign:PackIcon Kind="LibraryShelves" Width="30" Height="30" />
|
||||
<TextBlock Style="{StaticResource MaterialDesignHeadline6TextBlock}" Margin="5 3 0 0">
|
||||
External libraries
|
||||
</TextBlock>
|
||||
</StackPanel>
|
||||
<TextBlock Style="{StaticResource MaterialDesignBody1TextBlock}" LineHeight="25" Margin="10 0 0 0">
|
||||
- Ben.Demystifier
|
||||
<Hyperlink Style="{StaticResource ArtemisHyperlink}"
|
||||
RequestNavigate="{s:Action OpenHyperlink}"
|
||||
NavigateUri="https://github.com/benaadams/Ben.Demystifier">
|
||||
https://github.com/benaadams/Ben.Demystifier
|
||||
</Hyperlink><LineBreak />
|
||||
- EmbedIO
|
||||
<Hyperlink Style="{StaticResource ArtemisHyperlink}"
|
||||
RequestNavigate="{s:Action OpenHyperlink}"
|
||||
NavigateUri="https://unosquare.github.io/embedio/">
|
||||
https://unosquare.github.io/embedio/
|
||||
</Hyperlink><LineBreak />
|
||||
- FluentValidation
|
||||
<Hyperlink Style="{StaticResource ArtemisHyperlink}"
|
||||
RequestNavigate="{s:Action OpenHyperlink}"
|
||||
NavigateUri="https://fluentvalidation.net/">
|
||||
https://fluentvalidation.net/
|
||||
</Hyperlink><LineBreak />
|
||||
- Furl.Http
|
||||
<Hyperlink Style="{StaticResource ArtemisHyperlink}"
|
||||
RequestNavigate="{s:Action OpenHyperlink}"
|
||||
NavigateUri="https://flurl.dev//">
|
||||
https://flurl.dev/
|
||||
</Hyperlink><LineBreak />
|
||||
- gong-wpf-dragdrop
|
||||
<Hyperlink Style="{StaticResource ArtemisHyperlink}"
|
||||
RequestNavigate="{s:Action OpenHyperlink}"
|
||||
NavigateUri="https://github.com/punker76/gong-wpf-dragdrop">
|
||||
https://github.com/punker76/gong-wpf-dragdrop
|
||||
</Hyperlink><LineBreak />
|
||||
- Hardcodet.NotifyIcon.Wpf.NetCore
|
||||
<Hyperlink Style="{StaticResource ArtemisHyperlink}"
|
||||
RequestNavigate="{s:Action OpenHyperlink}"
|
||||
NavigateUri="https://github.com/HavenDV/H.NotifyIcon.WPF">
|
||||
https://github.com/HavenDV/H.NotifyIcon.WPF
|
||||
</Hyperlink><LineBreak />
|
||||
- Humanizer
|
||||
<Hyperlink Style="{StaticResource ArtemisHyperlink}"
|
||||
RequestNavigate="{s:Action OpenHyperlink}"
|
||||
NavigateUri="https://github.com/Humanizr/Humanizer">
|
||||
https://github.com/Humanizr/Humanizer
|
||||
</Hyperlink><LineBreak />
|
||||
- LiteDB
|
||||
<Hyperlink Style="{StaticResource ArtemisHyperlink}"
|
||||
RequestNavigate="{s:Action OpenHyperlink}"
|
||||
NavigateUri="https://www.litedb.org/">
|
||||
https://www.litedb.org/
|
||||
</Hyperlink><LineBreak />
|
||||
- MaterialDesignThemes
|
||||
<Hyperlink Style="{StaticResource ArtemisHyperlink}"
|
||||
RequestNavigate="{s:Action OpenHyperlink}"
|
||||
NavigateUri="https://github.com/MaterialDesignInXAML/MaterialDesignInXamlToolkit">
|
||||
https://github.com/MaterialDesignInXAML/MaterialDesignInXamlToolkit
|
||||
</Hyperlink><LineBreak />
|
||||
- MaterialDesignExtensions
|
||||
<Hyperlink Style="{StaticResource ArtemisHyperlink}"
|
||||
RequestNavigate="{s:Action OpenHyperlink}"
|
||||
NavigateUri="https://spiegelp.github.io/MaterialDesignExtensions/">
|
||||
https://spiegelp.github.io/MaterialDesignExtensions/
|
||||
</Hyperlink><LineBreak />
|
||||
- McMaster.NETCore.Plugins
|
||||
<Hyperlink Style="{StaticResource ArtemisHyperlink}"
|
||||
RequestNavigate="{s:Action OpenHyperlink}"
|
||||
NavigateUri="https://github.com/natemcmaster/DotNetCorePlugins">
|
||||
https://github.com/natemcmaster/DotNetCorePlugins
|
||||
</Hyperlink><LineBreak />
|
||||
- Newtonsoft.Json
|
||||
<Hyperlink Style="{StaticResource ArtemisHyperlink}"
|
||||
RequestNavigate="{s:Action OpenHyperlink}"
|
||||
NavigateUri="https://www.newtonsoft.com/json">
|
||||
https://www.newtonsoft.com/json
|
||||
</Hyperlink><LineBreak />
|
||||
- Ninject
|
||||
<Hyperlink Style="{StaticResource ArtemisHyperlink}"
|
||||
RequestNavigate="{s:Action OpenHyperlink}"
|
||||
NavigateUri="http://www.ninject.org/">
|
||||
http://www.ninject.org/
|
||||
</Hyperlink><LineBreak />
|
||||
- Ookii.Dialogs.Wpf
|
||||
<Hyperlink Style="{StaticResource ArtemisHyperlink}"
|
||||
RequestNavigate="{s:Action OpenHyperlink}"
|
||||
NavigateUri="https://github.com/ookii-dialogs/ookii-dialogs-wpf">
|
||||
https://github.com/ookii-dialogs/ookii-dialogs-wpf
|
||||
</Hyperlink><LineBreak />
|
||||
- RawInput.Sharp
|
||||
<Hyperlink Style="{StaticResource ArtemisHyperlink}"
|
||||
RequestNavigate="{s:Action OpenHyperlink}"
|
||||
NavigateUri="https://github.com/mfakane/rawinput-sharp">
|
||||
https://github.com/mfakane/rawinput-sharp
|
||||
</Hyperlink><LineBreak />
|
||||
- RGB.NET
|
||||
<Hyperlink Style="{StaticResource ArtemisHyperlink}"
|
||||
RequestNavigate="{s:Action OpenHyperlink}"
|
||||
NavigateUri="https://github.com/DarthAffe/RGB.NET">
|
||||
https://github.com/DarthAffe/RGB.NET
|
||||
</Hyperlink><LineBreak />
|
||||
- Serilog
|
||||
<Hyperlink Style="{StaticResource ArtemisHyperlink}"
|
||||
RequestNavigate="{s:Action OpenHyperlink}"
|
||||
NavigateUri="https://serilog.net/">
|
||||
https://serilog.net/
|
||||
</Hyperlink><LineBreak />
|
||||
- SkiaSharp
|
||||
<Hyperlink Style="{StaticResource ArtemisHyperlink}"
|
||||
RequestNavigate="{s:Action OpenHyperlink}"
|
||||
NavigateUri="https://github.com/mono/SkiaSharp/">
|
||||
https://github.com/mono/SkiaSharp
|
||||
</Hyperlink><LineBreak />
|
||||
- Stylet
|
||||
<Hyperlink Style="{StaticResource ArtemisHyperlink}"
|
||||
RequestNavigate="{s:Action OpenHyperlink}"
|
||||
NavigateUri="https://github.com/canton7/Stylet">
|
||||
https://github.com/canton7/Stylet
|
||||
</Hyperlink><LineBreak />
|
||||
- Unclassified.NetRevisionTask
|
||||
<Hyperlink Style="{StaticResource ArtemisHyperlink}"
|
||||
RequestNavigate="{s:Action OpenHyperlink}"
|
||||
NavigateUri="https://unclassified.software/en/apps/netrevisiontask">
|
||||
https://unclassified.software/en/apps/netrevisiontask
|
||||
</Hyperlink>
|
||||
</TextBlock>
|
||||
</StackPanel>
|
||||
</materialDesign:Card>
|
||||
</StackPanel>
|
||||
</ScrollViewer>
|
||||
</UserControl>
|
||||
@ -1,4 +1,5 @@
|
||||
using System.Reflection;
|
||||
using System.Windows.Navigation;
|
||||
using Artemis.Core;
|
||||
using Stylet;
|
||||
|
||||
@ -19,6 +20,16 @@ namespace Artemis.UI.Screens.Settings.Tabs.About
|
||||
set => SetAndNotify(ref _version, value);
|
||||
}
|
||||
|
||||
public void OpenHyperlink(object sender, RequestNavigateEventArgs e)
|
||||
{
|
||||
Core.Utilities.OpenUrl(e.Uri.AbsoluteUri);
|
||||
}
|
||||
|
||||
public void OpenUrl(string url)
|
||||
{
|
||||
Core.Utilities.OpenUrl(url);
|
||||
}
|
||||
|
||||
#region Overrides of Screen
|
||||
|
||||
/// <inheritdoc />
|
||||
|
||||
@ -1448,11 +1448,6 @@
|
||||
"resolved": "3.0.0",
|
||||
"contentHash": "noPwJJl1Q9uparXy1ogtkmyAPGNfSGb0BLT1292nFH1jdMKje6o2kvvrQUvF9Xklj+IoiAI0UzF6Aqxlvo10lw=="
|
||||
},
|
||||
"WriteableBitmapEx": {
|
||||
"type": "Transitive",
|
||||
"resolved": "1.6.7",
|
||||
"contentHash": "GoPhIdYzG/DWJq/MADb8gFzRN5PsxM+1DSJFS8Jzupg4DXqFSnlejYEjJw4ffPEUyELL07O4XIGUZydE4jQK0Q=="
|
||||
},
|
||||
"artemis.core": {
|
||||
"type": "Project",
|
||||
"dependencies": {
|
||||
@ -1503,8 +1498,7 @@
|
||||
"SkiaSharp.Views.WPF": "2.80.2",
|
||||
"Stylet": "1.3.6",
|
||||
"System.Buffers": "4.5.1",
|
||||
"System.Numerics.Vectors": "4.5.0",
|
||||
"WriteableBitmapEx": "1.6.7"
|
||||
"System.Numerics.Vectors": "4.5.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user