EHR CP: QM Questions & Button Icons
No files matched your search
@@ -17,6 +17,63 @@
|
||||
<Resource Include="bg.jpg">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</Resource>
|
||||
<None Remove="Resources\add.svg" />
|
||||
<Resource Include="Resources\add.svg">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</Resource>
|
||||
<None Remove="Resources\back.svg" />
|
||||
<Resource Include="Resources\back.svg">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</Resource>
|
||||
<None Remove="Resources\copy.svg" />
|
||||
<Resource Include="Resources\copy.svg">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</Resource>
|
||||
<None Remove="Resources\delete.svg" />
|
||||
<Resource Include="Resources\delete.svg">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</Resource>
|
||||
<None Remove="Resources\discard.svg" />
|
||||
<Resource Include="Resources\discard.svg">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</Resource>
|
||||
<None Remove="Resources\edit.svg" />
|
||||
<Resource Include="Resources\edit.svg">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</Resource>
|
||||
<None Remove="Resources\import.svg" />
|
||||
<Resource Include="Resources\import.svg">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</Resource>
|
||||
<None Remove="Resources\new-file.svg" />
|
||||
<Resource Include="Resources\new-file.svg">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</Resource>
|
||||
<None Remove="Resources\question.svg" />
|
||||
<Resource Include="Resources\question.svg">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</Resource>
|
||||
<None Remove="Resources\save.svg" />
|
||||
<Resource Include="Resources\save.svg">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</Resource>
|
||||
<None Remove="Resources\save-as.svg" />
|
||||
<Resource Include="Resources\save-as.svg">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</Resource>
|
||||
<None Remove="Resources\search.svg" />
|
||||
<Resource Include="Resources\search.svg">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</Resource>
|
||||
<None Remove="Resources\template.svg" />
|
||||
<Resource Include="Resources\template.svg">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</Resource>
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="SharpVectors" Version="1.8.4.2" />
|
||||
<PackageReference Include="SharpVectors.Wpf" Version="1.8.4.2" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
@@ -1,2 +1,4 @@
|
||||
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
|
||||
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/Abbreviations/=QM/@EntryIndexedValue">QM</s:String>
|
||||
<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/Abbreviations/=SV/@EntryIndexedValue">SV</s:String>
|
||||
<s:String x:Key="/Default/Monitoring/StartMode/@EntryValue">OnDebug</s:String></wpf:ResourceDictionary>
|
||||
@@ -54,6 +54,39 @@ README file in the root directory of this source tree.
|
||||
</Trigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
|
||||
<Style TargetType="Label">
|
||||
<Setter Property="Foreground" Value="LightGray"/>
|
||||
<Setter Property="Background" Value="Transparent"/>
|
||||
<Setter Property="FontFamily" Value="Segoe UI"/>
|
||||
<Setter Property="FontWeight" Value="Bold"/>
|
||||
<Setter Property="Margin" Value="10,0,10,0"/>
|
||||
<Setter Property="HorizontalAlignment" Value="Left"/>
|
||||
<Setter Property="VerticalAlignment" Value="Center"/>
|
||||
<Style.Triggers>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Setter Property="Foreground" Value="White"/>
|
||||
<Trigger.EnterActions>
|
||||
<BeginStoryboard>
|
||||
<Storyboard>
|
||||
<ColorAnimation Storyboard.TargetProperty="(Label.Foreground).(SolidColorBrush.Color)" To="White" Duration="0:0:0.2"/>
|
||||
</Storyboard>
|
||||
</BeginStoryboard>
|
||||
</Trigger.EnterActions>
|
||||
<Trigger.ExitActions>
|
||||
<BeginStoryboard>
|
||||
<Storyboard>
|
||||
<ColorAnimation Storyboard.TargetProperty="(Label.Foreground).(SolidColorBrush.Color)" To="LightGray" Duration="0:0:0.2"/>
|
||||
</Storyboard>
|
||||
</BeginStoryboard>
|
||||
</Trigger.ExitActions>
|
||||
</Trigger>
|
||||
<Trigger Property="IsEnabled" Value="False">
|
||||
<Setter Property="Foreground" Value="#707070"/>
|
||||
<Setter Property="Opacity" Value="0.5"/>
|
||||
</Trigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
</Window.Resources>
|
||||
|
||||
<Grid Name="MainGrid">
|
||||
@@ -85,35 +118,57 @@ README file in the root directory of this source tree.
|
||||
<Border Grid.Column="1" Grid.Row="3" Grid.RowSpan="4" Background="#2D2D2D" CornerRadius="20" Padding="20" HorizontalAlignment="Center" VerticalAlignment="Center" Name="ButtonGroup">
|
||||
<StackPanel>
|
||||
<Label Content="Custom Team Assignment" FontSize="15" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" Foreground="LightGray"></Label>
|
||||
<Button Content="Create New Play-Set" Click="CreateNewPlaySet" RenderTransformOrigin="0.5,0.5">
|
||||
<Button Click="CreateNewPlaySet" RenderTransformOrigin="0.5,0.5">
|
||||
<Button.RenderTransform>
|
||||
<ScaleTransform/>
|
||||
</Button.RenderTransform>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Image Source="Resources/add.svg" Name="AddButtonImage" Width="30" Height="30"/>
|
||||
<TextBlock Text="Create New Play-Set" VerticalAlignment="Center" Margin="10,0,0,0"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
<Button Content="Import Play-Set" Click="ImportPlaySet" RenderTransformOrigin="0.5,0.5">
|
||||
<Button Click="ImportPlaySet" RenderTransformOrigin="0.5,0.5">
|
||||
<Button.RenderTransform>
|
||||
<ScaleTransform/>
|
||||
</Button.RenderTransform>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Image Source="Resources/import.svg" Name="ImportButtonImage" Width="30" Height="30"/>
|
||||
<TextBlock Text="Import Play-Set" VerticalAlignment="Center" Margin="10,0,0,0"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
|
||||
<Button Content="Quiz Master Questions" Grid.Column="0" Grid.Row="7" Grid.RowSpan="2" Click="SettingsClick" RenderTransformOrigin="0.5,0.5" Foreground="LightGray">
|
||||
<Button Grid.Column="0" Grid.Row="7" Grid.RowSpan="2" Click="QMQuestionsClick" RenderTransformOrigin="0.5,0.5" Foreground="LightGray">
|
||||
<Button.RenderTransform>
|
||||
<ScaleTransform/>
|
||||
</Button.RenderTransform>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Image Source="Resources/question.svg" Name="QuestionButtonImage" Width="30" Height="30"/>
|
||||
<TextBlock Text="Settings" VerticalAlignment="Center" Margin="10,0,0,0"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
|
||||
<Button Content="Role Description Finder" Grid.Column="1" Grid.Row="7" Grid.RowSpan="2" Click="OpenRoleDescFinder" RenderTransformOrigin="0.5,0.5" Foreground="LightGray">
|
||||
<Button Grid.Column="1" Grid.Row="7" Grid.RowSpan="2" Click="OpenRoleDescFinder" RenderTransformOrigin="0.5,0.5" Foreground="LightGray">
|
||||
<Button.RenderTransform>
|
||||
<ScaleTransform/>
|
||||
</Button.RenderTransform>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Image Source="Resources/search.svg" Name="SearchButtonImage" Width="30" Height="30"/>
|
||||
<TextBlock Text="Role Description Finder" VerticalAlignment="Center" Margin="10,0,0,0"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
|
||||
<Button Content="Template Creator" Grid.Column="2" Grid.Row="7" Grid.RowSpan="2" Click="OpenTemplateCreator" RenderTransformOrigin="0.5,0.5" Foreground="LightGray">
|
||||
<Button Grid.Column="2" Grid.Row="7" Grid.RowSpan="2" Click="OpenTemplateCreator" RenderTransformOrigin="0.5,0.5" Foreground="LightGray">
|
||||
<Button.RenderTransform>
|
||||
<ScaleTransform/>
|
||||
</Button.RenderTransform>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Image Source="Resources/template.svg" Name="TemplateButtonImage" Width="30" Height="30"/>
|
||||
<TextBlock Text="Template Creator" VerticalAlignment="Center" Margin="10,0,0,0"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
|
||||
<Label Grid.Column="0" Grid.Row="9" Content="Loading SVG Images...." Name="LoadingLabel"></Label>
|
||||
</Grid>
|
||||
</Window>
|
||||
@@ -1,6 +1,11 @@
|
||||
using Microsoft.Win32;
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
using Microsoft.Win32;
|
||||
using System.IO;
|
||||
using System.Windows;
|
||||
using System.Windows.Controls;
|
||||
using System.Windows.Media;
|
||||
using SharpVectors.Converters;
|
||||
using SharpVectors.Renderers.Wpf;
|
||||
|
||||
/*
|
||||
* Copyright (c) 2024, Gurge44
|
||||
@@ -16,10 +21,100 @@ namespace CustomTeamAssigner
|
||||
{
|
||||
public static MainWindow Instance { get; private set; } = null!;
|
||||
|
||||
private static readonly List<(string FileName, DrawingImage Image)> SVGs = [];
|
||||
|
||||
public MainWindow()
|
||||
{
|
||||
InitializeComponent();
|
||||
Instance = this;
|
||||
LoadSvgImages();
|
||||
}
|
||||
|
||||
void LoadSvgImages()
|
||||
{
|
||||
int doneIndex = 0;
|
||||
var fileReader = new FileSvgReader(new());
|
||||
var files = Directory.GetFiles("Resources", "*.svg");
|
||||
files.Do(LoadImage);
|
||||
LoadingLabel.Visibility = Visibility.Collapsed;
|
||||
return;
|
||||
|
||||
void LoadImage(string file)
|
||||
{
|
||||
var drawing = fileReader.Read(file);
|
||||
var image = new DrawingImage(drawing);
|
||||
var fileName = Path.GetFileNameWithoutExtension(file);
|
||||
SVGs.Add((fileName, image));
|
||||
|
||||
ApplyImage(fileName, image);
|
||||
|
||||
doneIndex++;
|
||||
LoadingLabel.Content = $"Loading images.... ({doneIndex}/{files.Length})";
|
||||
}
|
||||
}
|
||||
|
||||
public static void ApplyAllImages()
|
||||
{
|
||||
foreach (var tuple in SVGs)
|
||||
{
|
||||
var fileName = tuple.FileName;
|
||||
var image = tuple.Image;
|
||||
|
||||
ApplyImage(fileName, image);
|
||||
}
|
||||
}
|
||||
|
||||
[SuppressMessage("ReSharper", "ConditionIsAlwaysTrueOrFalseAccordingToNullableAPIContract")]
|
||||
private static void ApplyImage(string fileName, DrawingImage image)
|
||||
{
|
||||
switch (fileName)
|
||||
{
|
||||
case "add":
|
||||
Instance.AddButtonImage.Source = image;
|
||||
if (PlaySetListerPage.Instance != null) PlaySetListerPage.Instance.AddButtonImage.Source = image;
|
||||
break;
|
||||
case "back":
|
||||
if (PlaySetListerPage.Instance != null) PlaySetListerPage.Instance.BackButtonImage.Source = image;
|
||||
if (QMQuestions.Instance != null) QMQuestions.Instance.BackButtonImage.Source = image;
|
||||
if (RichTextEditor.Instance != null) RichTextEditor.Instance.BackButtonImage.Source = image;
|
||||
if (RoleDescFinder.Instance != null) RoleDescFinder.Instance.BackButtonImage.Source = image;
|
||||
break;
|
||||
case "copy":
|
||||
if (QMQuestions.Instance != null) QMQuestions.Instance.CopyButtonImage.Source = image;
|
||||
break;
|
||||
case "delete":
|
||||
if (PlaySetListerPage.Instance != null) PlaySetListerPage.Instance.DeleteButtonImage.Source = image;
|
||||
if (TeamEditorPage.Instance != null) TeamEditorPage.Instance.DeleteButtonImage.Source = image;
|
||||
break;
|
||||
case "discard":
|
||||
if (TeamEditorPage.Instance != null) TeamEditorPage.Instance.DiscardButtonImage.Source = image;
|
||||
break;
|
||||
case "edit":
|
||||
if (PlaySetListerPage.Instance != null) PlaySetListerPage.Instance.EditButtonImage.Source = image;
|
||||
break;
|
||||
case "import":
|
||||
Instance.ImportButtonImage.Source = image;
|
||||
break;
|
||||
case "new-file":
|
||||
if (QMQuestions.Instance != null) QMQuestions.Instance.NewFileButtonImage.Source = image;
|
||||
break;
|
||||
case "question":
|
||||
Instance.QuestionButtonImage.Source = image;
|
||||
break;
|
||||
case "save":
|
||||
if (TeamEditorPage.Instance != null) TeamEditorPage.Instance.SaveButtonImage.Source = image;
|
||||
break;
|
||||
case "save-as":
|
||||
if (PlaySetListerPage.Instance != null) PlaySetListerPage.Instance.SaveAsButtonImage.Source = image;
|
||||
if (QMQuestions.Instance != null) QMQuestions.Instance.SaveAsButtonImage.Source = image;
|
||||
break;
|
||||
case "search":
|
||||
Instance.SearchButtonImage.Source = image;
|
||||
break;
|
||||
case "template":
|
||||
Instance.TemplateButtonImage.Source = image;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void ImportPlaySet(object sender, RoutedEventArgs e)
|
||||
@@ -37,6 +132,7 @@ namespace CustomTeamAssigner
|
||||
|
||||
Navigator.NavigationService.Navigate(new PlaySetListerPage());
|
||||
Utils.SetMainWindowContents(Visibility.Collapsed);
|
||||
ApplyAllImages();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -45,24 +141,28 @@ namespace CustomTeamAssigner
|
||||
Utils.Teams.Clear();
|
||||
Navigator.NavigationService.Navigate(new PlaySetListerPage());
|
||||
Utils.SetMainWindowContents(Visibility.Collapsed);
|
||||
ApplyAllImages();
|
||||
}
|
||||
|
||||
void Exit(object sender, RoutedEventArgs e) => Close();
|
||||
|
||||
private void SettingsClick(object sender, RoutedEventArgs e)
|
||||
private void QMQuestionsClick(object sender, RoutedEventArgs e)
|
||||
{
|
||||
Utils.SetMainWindowContents(Visibility.Collapsed);
|
||||
Navigator.NavigationService.Navigate(new QMQuestions());
|
||||
ApplyAllImages();
|
||||
}
|
||||
|
||||
private void OpenRoleDescFinder(object sender, RoutedEventArgs e)
|
||||
{
|
||||
Utils.SetMainWindowContents(Visibility.Collapsed);
|
||||
Navigator.NavigationService.Navigate(new RoleDescFinder());
|
||||
ApplyAllImages();
|
||||
}
|
||||
|
||||
private void OpenTemplateCreator(object sender, RoutedEventArgs e)
|
||||
{
|
||||
Utils.SetMainWindowContents(Visibility.Collapsed);
|
||||
Navigator.NavigationService.Navigate(new RichTextEditor());
|
||||
ApplyAllImages();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -11,6 +11,7 @@ README file in the root directory of this source tree.
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:svgc="http://sharpvectors.codeplex.com/svgc/"
|
||||
mc:Ignorable="d"
|
||||
d:DesignHeight="720" d:DesignWidth="1280"
|
||||
Title="Play-Set Lister">
|
||||
@@ -179,30 +180,50 @@ README file in the root directory of this source tree.
|
||||
<ScrollViewer Grid.RowSpan="7">
|
||||
<ListBox Name="TeamListBox" d:ItemsSource="{d:SampleData ItemCount=20}" SelectionChanged="ChangeSelection"/>
|
||||
</ScrollViewer>
|
||||
<Button Grid.Row="1" Grid.Column="1" Content="Add Team" Click="AddNewTeam">
|
||||
<Button Grid.Row="1" Grid.Column="1" Click="AddNewTeam">
|
||||
<Button.RenderTransform>
|
||||
<ScaleTransform/>
|
||||
</Button.RenderTransform>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Image Source="Resources/add.svg" Name="AddButtonImage" Width="30" Height="30" Margin="0,0,15,0"/>
|
||||
<TextBlock Text="Add"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
<Button Grid.Row="2" Grid.Column="1" Content="Edit Team" Click="EditTeam" IsEnabled="False" Name="EditTeamButton">
|
||||
<Button Grid.Row="2" Grid.Column="1" Click="EditTeam" IsEnabled="False" Name="EditTeamButton">
|
||||
<Button.RenderTransform>
|
||||
<ScaleTransform/>
|
||||
</Button.RenderTransform>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Image Source="Resources/edit.svg" Name="EditButtonImage" Width="30" Height="30" Margin="0,0,15,0"/>
|
||||
<TextBlock Text="Edit"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
<Button Grid.Row="3" Grid.Column="1" Content="Delete Team" Click="DeleteTeam" IsEnabled="False" Name="DeleteTeamButton">
|
||||
<Button Grid.Row="3" Grid.Column="1" Click="DeleteTeam" IsEnabled="False" Name="DeleteTeamButton">
|
||||
<Button.RenderTransform>
|
||||
<ScaleTransform/>
|
||||
</Button.RenderTransform>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Image Source="Resources/delete.svg" Name="DeleteButtonImage" Width="30" Height="30" Margin="0,0,15,0"/>
|
||||
<TextBlock Text="Delete"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
<Button Grid.Row="4" Grid.Column="1" Content="Save" Click="SavePlaySet">
|
||||
<Button Grid.Row="4" Grid.Column="1" Click="SavePlaySet">
|
||||
<Button.RenderTransform>
|
||||
<ScaleTransform/>
|
||||
</Button.RenderTransform>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Image Source="Resources/save-as.svg" Name="SaveAsButtonImage" Width="30" Height="30" Margin="0,0,15,0"/>
|
||||
<TextBlock Text="Save"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
<Button Grid.Row="6" Grid.Column="1" Content="Go Back" Click="Back">
|
||||
<Button Grid.Row="6" Grid.Column="1" Click="Back">
|
||||
<Button.RenderTransform>
|
||||
<ScaleTransform/>
|
||||
</Button.RenderTransform>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Image Source="Resources/back.svg" Name="BackButtonImage" Width="30" Height="30" Margin="0,0,15,0"/>
|
||||
<TextBlock Text="Go Back"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</Grid>
|
||||
</Page>
|
||||
@@ -14,9 +14,12 @@ namespace CustomTeamAssigner
|
||||
{
|
||||
public partial class PlaySetListerPage : Page
|
||||
{
|
||||
public static PlaySetListerPage Instance { get; private set; } = null!;
|
||||
|
||||
public PlaySetListerPage()
|
||||
{
|
||||
InitializeComponent();
|
||||
Instance = this;
|
||||
TeamListBox.ItemsSource = Utils.Teams.Select(x => x.TeamName);
|
||||
MainGrid.Visibility = Visibility.Visible;
|
||||
}
|
||||
@@ -31,6 +34,7 @@ namespace CustomTeamAssigner
|
||||
|
||||
MainWindow.Instance.Navigator.NavigationService.Navigate(new TeamEditorPage(Utils.Teams.ElementAt(TeamListBox.SelectedIndex)));
|
||||
Utils.SetMainWindowContents(Visibility.Collapsed);
|
||||
MainWindow.ApplyAllImages();
|
||||
}
|
||||
|
||||
void DeleteTeam(object sender, RoutedEventArgs e)
|
||||
@@ -52,6 +56,7 @@ namespace CustomTeamAssigner
|
||||
Utils.Teams.Add(team);
|
||||
MainWindow.Instance.Navigator.NavigationService.Navigate(new TeamEditorPage(team));
|
||||
Utils.SetMainWindowContents(Visibility.Collapsed);
|
||||
MainWindow.ApplyAllImages();
|
||||
}
|
||||
|
||||
void SavePlaySet(object sender, RoutedEventArgs e)
|
||||
|
||||
@@ -0,0 +1,342 @@
|
||||
<Page x:Class="CustomTeamAssigner.QMQuestions"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
mc:Ignorable="d"
|
||||
Title="QMQuestions" Height="450" Width="800">
|
||||
|
||||
<Page.Resources>
|
||||
<Style TargetType="Button">
|
||||
<Setter Property="Background" Value="#2D2D2D"/>
|
||||
<Setter Property="Foreground" Value="#FFFFFF"/>
|
||||
<Setter Property="FontSize" Value="20"/>
|
||||
<Setter Property="FontFamily" Value="Segoe UI"/>
|
||||
<Setter Property="FontWeight" Value="Bold"/>
|
||||
<Setter Property="BorderThickness" Value="0"/>
|
||||
<Setter Property="Padding" Value="10"/>
|
||||
<Setter Property="Margin" Value="10"/>
|
||||
<Setter Property="HorizontalAlignment" Value="Stretch"/>
|
||||
<Setter Property="VerticalAlignment" Value="Center"/>
|
||||
<Setter Property="VerticalContentAlignment" Value="Top"/>
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="Button">
|
||||
<Border Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="10">
|
||||
<ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
|
||||
</Border>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
<Style.Triggers>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Setter Property="Background" Value="#3E3E3E"/>
|
||||
</Trigger>
|
||||
<Trigger Property="IsPressed" Value="True">
|
||||
<Setter Property="Background" Value="#525252"/>
|
||||
<Trigger.EnterActions>
|
||||
<BeginStoryboard>
|
||||
<Storyboard>
|
||||
<DoubleAnimation Storyboard.TargetProperty="(UIElement.RenderTransform).(ScaleTransform.ScaleX)" From="1" To="0.95" Duration="0:0:0.1" AutoReverse="True"/>
|
||||
<DoubleAnimation Storyboard.TargetProperty="(UIElement.RenderTransform).(ScaleTransform.ScaleY)" From="1" To="0.95" Duration="0:0:0.1" AutoReverse="True"/>
|
||||
</Storyboard>
|
||||
</BeginStoryboard>
|
||||
</Trigger.EnterActions>
|
||||
</Trigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
|
||||
<Style TargetType="CheckBox">
|
||||
<Setter Property="Foreground" Value="LightGray"/>
|
||||
<Setter Property="Background" Value="Transparent"/>
|
||||
<Setter Property="FontFamily" Value="Segoe UI"/>
|
||||
<Setter Property="FontWeight" Value="Bold"/>
|
||||
<Setter Property="Margin" Value="10"/>
|
||||
<Setter Property="HorizontalAlignment" Value="Center"/>
|
||||
<Setter Property="VerticalAlignment" Value="Center"/>
|
||||
<Setter Property="VerticalContentAlignment" Value="Center"/>
|
||||
<Setter Property="FontSize" Value="15"/>
|
||||
<Setter Property="LayoutTransform">
|
||||
<Setter.Value>
|
||||
<ScaleTransform ScaleX="1.5" ScaleY="1.5"/>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
<Style.Triggers>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Setter Property="Foreground" Value="White"/>
|
||||
<Setter Property="Cursor" Value="Hand"/>
|
||||
<Trigger.EnterActions>
|
||||
<BeginStoryboard>
|
||||
<Storyboard>
|
||||
<ColorAnimation Storyboard.TargetProperty="(Control.Foreground).(SolidColorBrush.Color)" To="White" Duration="0:0:0.3"/>
|
||||
</Storyboard>
|
||||
</BeginStoryboard>
|
||||
</Trigger.EnterActions>
|
||||
</Trigger>
|
||||
|
||||
<Trigger Property="IsChecked" Value="True">
|
||||
<Setter Property="Foreground" Value="White"/>
|
||||
</Trigger>
|
||||
|
||||
<Trigger Property="IsEnabled" Value="False">
|
||||
<Setter Property="Foreground" Value="#707070"/>
|
||||
<Setter Property="Opacity" Value="0.5"/>
|
||||
</Trigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
|
||||
<Style TargetType="TextBlock">
|
||||
<Setter Property="FontFamily" Value="Segoe UI"/>
|
||||
<Setter Property="FontWeight" Value="Bold"/>
|
||||
<Setter Property="Foreground" Value="LightGray"/>
|
||||
<Setter Property="Margin" Value="0,0,10,0"></Setter>
|
||||
<Setter Property="HorizontalAlignment" Value="Center"/>
|
||||
<Setter Property="VerticalAlignment" Value="Center"/>
|
||||
<Style.Triggers>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Setter Property="Foreground" Value="White"/>
|
||||
<Trigger.EnterActions>
|
||||
<BeginStoryboard>
|
||||
<Storyboard>
|
||||
<ColorAnimation Storyboard.TargetProperty="(TextBlock.Foreground).(SolidColorBrush.Color)" To="White" Duration="0:0:0.2"/>
|
||||
</Storyboard>
|
||||
</BeginStoryboard>
|
||||
</Trigger.EnterActions>
|
||||
<Trigger.ExitActions>
|
||||
<BeginStoryboard>
|
||||
<Storyboard>
|
||||
<ColorAnimation Storyboard.TargetProperty="(TextBlock.Foreground).(SolidColorBrush.Color)" To="LightGray" Duration="0:0:0.2"/>
|
||||
</Storyboard>
|
||||
</BeginStoryboard>
|
||||
</Trigger.ExitActions>
|
||||
</Trigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
|
||||
<Style TargetType="TextBox">
|
||||
<Setter Property="FontFamily" Value="Segoe UI"/>
|
||||
<Setter Property="FontWeight" Value="Bold"/>
|
||||
<Setter Property="Foreground" Value="White"/>
|
||||
<Setter Property="Background" Value="#2D2D2D"/>
|
||||
<Setter Property="BorderBrush" Value="#1a3ba2"/>
|
||||
<Setter Property="Margin" Value="10,5,10,5"/>
|
||||
<Setter Property="FontSize" Value="20"/>
|
||||
<Setter Property="HorizontalAlignment" Value="Stretch"/>
|
||||
<Setter Property="VerticalAlignment" Value="Center"/>
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="TextBox">
|
||||
<Border Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="5">
|
||||
<ScrollViewer x:Name="PART_ContentHost"/>
|
||||
</Border>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
<Style.Triggers>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Setter Property="Background" Value="#3E3E3E"/>
|
||||
</Trigger>
|
||||
<Trigger Property="IsEnabled" Value="False">
|
||||
<Setter Property="Foreground" Value="#707070"/>
|
||||
<Setter Property="Background" Value="#1E1E1E"/>
|
||||
<Setter Property="Opacity" Value="0.6"/>
|
||||
</Trigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
|
||||
<Style TargetType="ComboBox">
|
||||
<Setter Property="FontFamily" Value="Segoe UI"/>
|
||||
<Setter Property="FontWeight" Value="Bold"/>
|
||||
<Setter Property="Foreground" Value="White"/>
|
||||
<Setter Property="Background" Value="#2D2D2D"/>
|
||||
<Setter Property="BorderBrush" Value="Gray"/>
|
||||
<Setter Property="Margin" Value="10,5,10,5"/>
|
||||
<Setter Property="HorizontalAlignment" Value="Left"/>
|
||||
<Setter Property="VerticalAlignment" Value="Center"/>
|
||||
<Setter Property="Width" Value="200"/>
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="ComboBox">
|
||||
<Grid>
|
||||
<ToggleButton Grid.Column="2" Focusable="false" IsChecked="{Binding Path=IsDropDownOpen,Mode=TwoWay,RelativeSource={RelativeSource TemplatedParent}}" >
|
||||
<ToggleButton.Template>
|
||||
<ControlTemplate>
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="5*" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<Border x:Name="Border" Grid.ColumnSpan="2" CornerRadius="5" Background="#2D2D2D" BorderBrush="Black" BorderThickness="1" />
|
||||
<Border Grid.Column="0" CornerRadius="5,0,0,5" Margin="1" Background="#2D2D2D" BorderBrush="Black" BorderThickness="0,0,1,0" />
|
||||
<Path x:Name="Arrow" Grid.Column="1" Fill="LightGray" HorizontalAlignment="Center" VerticalAlignment="Center" Data="M 0 0 L 4 4 L 8 0 Z"/>
|
||||
</Grid>
|
||||
<ControlTemplate.Triggers>
|
||||
<Trigger Property="ToggleButton.IsMouseOver" Value="true">
|
||||
<Setter TargetName="Border" Property="Background" Value="#071228" />
|
||||
</Trigger>
|
||||
<Trigger Property="ToggleButton.IsChecked" Value="true">
|
||||
<Setter TargetName="Border" Property="Background" Value="#071228" />
|
||||
</Trigger>
|
||||
</ControlTemplate.Triggers>
|
||||
</ControlTemplate>
|
||||
</ToggleButton.Template>
|
||||
</ToggleButton>
|
||||
<ContentPresenter Name="ContentSite" IsHitTestVisible="False" Content="{TemplateBinding SelectionBoxItem}" ContentTemplate="{TemplateBinding SelectionBoxItemTemplate}" ContentTemplateSelector="{TemplateBinding ItemTemplateSelector}" Margin="3" />
|
||||
<TextBox x:Name="PART_EditableTextBox" Visibility="Hidden" IsReadOnly="{TemplateBinding IsReadOnly}"/>
|
||||
<Popup Name="Popup" Placement="Bottom" IsOpen="{TemplateBinding IsDropDownOpen}" AllowsTransparency="True" Focusable="False" PopupAnimation="Slide">
|
||||
<Grid Name="DropDown" SnapsToDevicePixels="True" MinWidth="{TemplateBinding ActualWidth}" MaxHeight="{TemplateBinding MaxDropDownHeight}">
|
||||
<Border x:Name="DropDownBorder" Background="#071228" />
|
||||
<ScrollViewer SnapsToDevicePixels="True">
|
||||
<StackPanel IsItemsHost="True" />
|
||||
</ScrollViewer>
|
||||
</Grid>
|
||||
</Popup>
|
||||
</Grid>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
<Style.Triggers>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Setter Property="Background" Value="#3E3E3E"/>
|
||||
</Trigger>
|
||||
<Trigger Property="IsEnabled" Value="False">
|
||||
<Setter Property="Foreground" Value="#707070"/>
|
||||
<Setter Property="Background" Value="#1E1E1E"/>
|
||||
<Setter Property="Opacity" Value="0.6"/>
|
||||
</Trigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
|
||||
<Style TargetType="ComboBoxItem">
|
||||
<Setter Property="FontFamily" Value="Segoe UI"/>
|
||||
<Setter Property="FontWeight" Value="Bold"/>
|
||||
<Setter Property="Foreground" Value="White"/>
|
||||
<Setter Property="Background" Value="#2D2D2D"/>
|
||||
<Setter Property="BorderBrush" Value="Gray"/>
|
||||
<Setter Property="Width" Value="300"/>
|
||||
<Setter Property="HorizontalAlignment" Value="Left"/>
|
||||
<Setter Property="VerticalAlignment" Value="Center"/>
|
||||
<Style.Triggers>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Setter Property="Background" Value="#3E3E3E"/>
|
||||
</Trigger>
|
||||
<Trigger Property="IsEnabled" Value="False">
|
||||
<Setter Property="Foreground" Value="#707070"/>
|
||||
<Setter Property="Background" Value="#1E1E1E"/>
|
||||
<Setter Property="Opacity" Value="0.6"/>
|
||||
</Trigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
|
||||
<Style TargetType="Label">
|
||||
<Setter Property="Foreground" Value="LightGray"/>
|
||||
<Setter Property="Background" Value="Transparent"/>
|
||||
<Setter Property="FontFamily" Value="Segoe UI"/>
|
||||
<Setter Property="FontWeight" Value="Bold"/>
|
||||
<Setter Property="FontSize" Value="20"/>
|
||||
<Setter Property="Margin" Value="10,0,10,0"/>
|
||||
<Setter Property="HorizontalAlignment" Value="Left"/>
|
||||
<Setter Property="VerticalAlignment" Value="Center"/>
|
||||
<Style.Triggers>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Setter Property="Foreground" Value="White"/>
|
||||
<Trigger.EnterActions>
|
||||
<BeginStoryboard>
|
||||
<Storyboard>
|
||||
<ColorAnimation Storyboard.TargetProperty="(Label.Foreground).(SolidColorBrush.Color)" To="White" Duration="0:0:0.2"/>
|
||||
</Storyboard>
|
||||
</BeginStoryboard>
|
||||
</Trigger.EnterActions>
|
||||
<Trigger.ExitActions>
|
||||
<BeginStoryboard>
|
||||
<Storyboard>
|
||||
<ColorAnimation Storyboard.TargetProperty="(Label.Foreground).(SolidColorBrush.Color)" To="LightGray" Duration="0:0:0.2"/>
|
||||
</Storyboard>
|
||||
</BeginStoryboard>
|
||||
</Trigger.ExitActions>
|
||||
</Trigger>
|
||||
<Trigger Property="IsEnabled" Value="False">
|
||||
<Setter Property="Foreground" Value="#707070"/>
|
||||
<Setter Property="Opacity" Value="0.5"/>
|
||||
</Trigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
</Page.Resources>
|
||||
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition/>
|
||||
<ColumnDefinition Width="2*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition/>
|
||||
<RowDefinition/>
|
||||
<RowDefinition/>
|
||||
<RowDefinition/>
|
||||
<RowDefinition/>
|
||||
<RowDefinition/>
|
||||
<RowDefinition/>
|
||||
<RowDefinition/>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<Label Content="Question" Grid.Row="0" Grid.Column="0"/>
|
||||
<TextBox x:Name="QuestionTextBox" Grid.Row="0" Grid.Column="1" TextChanged="TextBoxTextChanged"/>
|
||||
|
||||
<Label Content="Answer 1" Grid.Row="1" Grid.Column="0"/>
|
||||
<TextBox x:Name="Answer1TextBox" Grid.Row="1" Grid.Column="1" TextChanged="TextBoxTextChanged"/>
|
||||
|
||||
<Label Content="Answer 2" Grid.Row="2" Grid.Column="0"/>
|
||||
<TextBox x:Name="Answer2TextBox" Grid.Row="2" Grid.Column="1" TextChanged="TextBoxTextChanged"/>
|
||||
|
||||
<Label Content="Answer 3" Grid.Row="3" Grid.Column="0"/>
|
||||
<TextBox x:Name="Answer3TextBox" Grid.Row="3" Grid.Column="1" TextChanged="TextBoxTextChanged"/>
|
||||
|
||||
<Label Content="Correct Answer" Grid.Row="4" Grid.Column="0"/>
|
||||
<ComboBox x:Name="CorrectAnswerComboBox" Grid.Row="4" Grid.Column="1" SelectionChanged="ComboBoxSelectionChanged">
|
||||
<ComboBoxItem Content="Answer 1"/>
|
||||
<ComboBoxItem Content="Answer 2"/>
|
||||
<ComboBoxItem Content="Answer 3"/>
|
||||
</ComboBox>
|
||||
|
||||
<TextBox Grid.Row="6" Grid.Column="0" Grid.ColumnSpan="2" Name="OutputTextBox" IsReadOnly="True"/>
|
||||
|
||||
<StackPanel Grid.Row="7" Grid.Column="0" Grid.ColumnSpan="2" Orientation="Horizontal" HorizontalAlignment="Center">
|
||||
<Button Click="SaveToNewFile">
|
||||
<Button.RenderTransform>
|
||||
<ScaleTransform/>
|
||||
</Button.RenderTransform>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Image Source="Resources/new-file.svg" Name="NewFileButtonImage" Width="30" Height="30" Margin="0,0,15,0"/>
|
||||
<TextBlock Text="Save to new file"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
<Button>
|
||||
<Button.RenderTransform>
|
||||
<ScaleTransform/>
|
||||
</Button.RenderTransform>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Image Source="Resources/save-as.svg" Name="SaveAsButtonImage" Width="30" Height="30" Margin="0,0,15,0"/>
|
||||
<TextBlock Text="Add to existing file"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
<Button>
|
||||
<Button.RenderTransform>
|
||||
<ScaleTransform/>
|
||||
</Button.RenderTransform>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Image Source="Resources/copy.svg" Name="CopyButtonImage" Width="30" Height="30" Margin="0,0,15,0"/>
|
||||
<TextBlock Text="Copy"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
<Button>
|
||||
<Button.RenderTransform>
|
||||
<ScaleTransform/>
|
||||
</Button.RenderTransform>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Image Source="Resources/back.svg" Name="BackButtonImage" Width="30" Height="30" Margin="0,0,15,0"/>
|
||||
<TextBlock Text="Back"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</Page>
|
||||
@@ -0,0 +1,39 @@
|
||||
using System.Windows;
|
||||
using System.Windows.Controls;
|
||||
|
||||
namespace CustomTeamAssigner
|
||||
{
|
||||
public partial class QMQuestions : Page
|
||||
{
|
||||
public static QMQuestions Instance { get; private set; } = null!;
|
||||
|
||||
public QMQuestions()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
private void SaveToNewFile(object sender, RoutedEventArgs e)
|
||||
{
|
||||
var sfd = new Microsoft.Win32.SaveFileDialog
|
||||
{
|
||||
Filter = "Text files (*.txt)|*.txt|All files (*.*)|*.*",
|
||||
FilterIndex = 1,
|
||||
RestoreDirectory = true
|
||||
};
|
||||
|
||||
if (sfd.ShowDialog() == true)
|
||||
{
|
||||
System.IO.File.WriteAllText(sfd.FileName, OutputTextBox.Text);
|
||||
}
|
||||
}
|
||||
|
||||
private void TextBoxTextChanged(object sender, TextChangedEventArgs e) => UpdateOutput();
|
||||
private void ComboBoxSelectionChanged(object sender, SelectionChangedEventArgs e) => UpdateOutput();
|
||||
|
||||
void UpdateOutput()
|
||||
{
|
||||
if (QuestionTextBox == null || Answer1TextBox == null || Answer2TextBox == null || Answer3TextBox == null || CorrectAnswerComboBox == null) return;
|
||||
OutputTextBox.Text = string.Join(';', QuestionTextBox.Text, Answer1TextBox.Text, Answer2TextBox.Text, Answer3TextBox.Text, CorrectAnswerComboBox.SelectedIndex.ToString());
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
<svg fill="#FFFFFF" stroke-width="0" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" height="1em" width="1em" style="overflow: visible; color: currentcolor; --darkreader-inline-fill: currentColor; --darkreader-inline-color: currentcolor;" data-darkreader-inline-fill="" data-darkreader-inline-color=""><path d="M14 7v1H8v6H7V8H1V7h6V1h1v6h6z"></path></svg>
|
||||
|
After Width: | Height: | Size: 363 B |
@@ -0,0 +1 @@
|
||||
<svg fill="#FFFFFF" stroke-width="0" xmlns="http://www.w3.org/2000/svg" baseProfile="tiny" version="1.2" viewBox="0 0 24 24" height="1em" width="1em" style="overflow: visible; color: currentcolor;"><path d="M19.164 19.547c-1.641-2.5-3.669-3.285-6.164-3.484V17.5c0 .534-.208 1.036-.586 1.414-.756.756-2.077.751-2.823.005l-6.293-6.207a1 1 0 0 1 0-1.425l6.288-6.203c.754-.755 2.073-.756 2.829.001.377.378.585.88.585 1.414v1.704c4.619.933 8 4.997 8 9.796v1a.999.999 0 0 1-1.836.548zm-7.141-5.536c2.207.056 4.638.394 6.758 2.121a7.985 7.985 0 0 0-6.893-6.08C11.384 9.996 11 10 11 10V6.503l-5.576 5.496 5.576 5.5V14l1.023.011z"></path></svg>
|
||||
|
After Width: | Height: | Size: 635 B |
@@ -0,0 +1 @@
|
||||
<svg fill="#FFFFFF" stroke-width="0" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" height="1em" width="1em" style="overflow: visible; color: #FFFFFF;"><path fill="currentColor" d="M7 6V3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1h-3v3c0 .552-.45 1-1.007 1H4.007A1.001 1.001 0 0 1 3 21l.003-14c0-.552.45-1 1.006-1H7ZM5.002 8 5 20h10V8H5.002ZM9 6h8v10h2V4H9v2Z"></path></svg>
|
||||
|
After Width: | Height: | Size: 387 B |
@@ -0,0 +1 @@
|
||||
<svg fill="#FFFFFF" stroke-width="0" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024" height="1em" width="1em" style="overflow: visible; color: currentcolor;"><path d="M360 184h-8c4.4 0 8-3.6 8-8v8h304v-8c0 4.4 3.6 8 8 8h-8v72h72v-80c0-35.3-28.7-64-64-64H352c-35.3 0-64 28.7-64 64v80h72v-72zm504 72H160c-17.7 0-32 14.3-32 32v32c0 4.4 3.6 8 8 8h60.4l24.7 523c1.6 34.1 29.8 61 63.9 61h454c34.2 0 62.3-26.8 63.9-61l24.7-523H888c4.4 0 8-3.6 8-8v-32c0-17.7-14.3-32-32-32zM731.3 840H292.7l-24.2-512h487l-24.2 512z"></path></svg>
|
||||
|
After Width: | Height: | Size: 532 B |
@@ -0,0 +1 @@
|
||||
<svg fill="#FFFFFF" stroke-width="0" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" height="1em" width="1em" style="overflow: visible; color: currentcolor;"><path fill-rule="evenodd" d="M3.5 2v3.5L4 6h3.5V5H4.979l.941-.941a3.552 3.552 0 1 1 5.023 5.023L5.746 14.28l.72.72 5.198-5.198A4.57 4.57 0 0 0 5.2 3.339l-.7.7V2h-1z" clip-rule="evenodd"></path></svg>
|
||||
|
After Width: | Height: | Size: 364 B |
@@ -0,0 +1 @@
|
||||
<svg fill="#FFFFFF" stroke-width="0" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" height="1em" width="1em" style="overflow: visible; color: currentcolor;"><path d="M13.23 1h-1.46L3.52 9.25l-.16.22L1 13.59 2.41 15l4.12-2.36.22-.16L15 4.23V2.77L13.23 1zM2.41 13.59l1.51-3 1.45 1.45-2.96 1.55zm3.83-2.06L4.47 9.76l8-8 1.77 1.77-8 8z"></path></svg>
|
||||
|
After Width: | Height: | Size: 354 B |
@@ -0,0 +1 @@
|
||||
<svg fill="none" stroke-width="2" xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-file-import" width="1em" height="1em" viewBox="0 0 24 24" stroke="#FFFFFF" stroke-linecap="round" stroke-linejoin="round" style="overflow: visible; color: currentcolor;"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M14 3v4a1 1 0 0 0 1 1h4"></path><path d="M5 13v-8a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2h-5.5m-9.5 -2h7m-3 -3l3 3l-3 3"></path></svg>
|
||||
|
After Width: | Height: | Size: 474 B |
@@ -0,0 +1 @@
|
||||
<svg fill="#FFFFFF" stroke-width="0" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024" height="1em" width="1em" style="overflow: visible; color: currentcolor; --darkreader-inline-fill: currentColor; --darkreader-inline-color: currentcolor;" data-darkreader-inline-fill="" data-darkreader-inline-color=""><path d="M854.6 288.6 639.4 73.4c-6-6-14.1-9.4-22.6-9.4H192c-17.7 0-32 14.3-32 32v832c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V311.3c0-8.5-3.4-16.7-9.4-22.7zM790.2 326H602V137.8L790.2 326zm1.8 562H232V136h302v216a42 42 0 0 0 42 42h216v494zM544 472c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v108H372c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h108v108c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V644h108c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8H544V472z"></path></svg>
|
||||
|
After Width: | Height: | Size: 757 B |
@@ -0,0 +1 @@
|
||||
<svg fill="#FFFFFF" stroke-width="0" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" height="1em" width="1em" style="overflow: visible; color: currentcolor;"><path d="M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h12zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z"></path><path d="M5.255 5.786a.237.237 0 0 0 .241.247h.825c.138 0 .248-.113.266-.25.09-.656.54-1.134 1.342-1.134.686 0 1.314.343 1.314 1.168 0 .635-.374.927-.965 1.371-.673.489-1.206 1.06-1.168 1.987l.003.217a.25.25 0 0 0 .25.246h.811a.25.25 0 0 0 .25-.25v-.105c0-.718.273-.927 1.01-1.486.609-.463 1.244-.977 1.244-2.056 0-1.511-1.276-2.241-2.673-2.241-1.267 0-2.655.59-2.75 2.286zm1.557 5.763c0 .533.425.927 1.01.927.609 0 1.028-.394 1.028-.927 0-.552-.42-.94-1.029-.94-.584 0-1.009.388-1.009.94z"></path></svg>
|
||||
|
After Width: | Height: | Size: 830 B |
@@ -0,0 +1 @@
|
||||
<svg fill="#FFFFFF" stroke-width="0" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" height="1em" width="1em" style="overflow: visible; color: currentcolor;"><path fill-rule="evenodd" d="M11.04 1.33 12.71 3l.29.71v.33h-.5l-.5.5v-.83l-1.67-1.67H10v4H4v-4H2v10h3l-.5 1H2l-1-1v-10l1-1h8.33l.71.29zM7 5h2V2H7v3zm6.5 0L15 6.5l-.02.69-5.5 5.5-.13.12-.37.37-.1.09-3 1.5-.67-.67 1.5-3 .09-.1.37-.37.12-.13 5.5-5.5h.71zm-6.22 7.24-.52 1 1.04-.48-.52-.52zm.69-1.03.79.79 5.15-5.15-.79-.79-5.15 5.15z" clip-rule="evenodd"></path></svg>
|
||||
|
After Width: | Height: | Size: 531 B |
@@ -0,0 +1 @@
|
||||
<svg fill="#FFFFFF" stroke-width="0" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" height="1em" width="1em" style="overflow: visible; color: currentcolor;"><path fill-rule="evenodd" d="m13.353 1.146 1.5 1.5L15 3v11.5l-.5.5h-13l-.5-.5v-13l.5-.5H13l.353.146zM2 2v12h12V3.208L12.793 2H11v4H4V2H2zm6 0v3h2V2H8z" clip-rule="evenodd"></path></svg>
|
||||
|
After Width: | Height: | Size: 350 B |
@@ -0,0 +1 @@
|
||||
<svg fill="#FFFFFF" stroke-width="0" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024" height="1em" width="1em" style="overflow: visible; color: currentcolor;"><path d="M909.6 854.5 649.9 594.8C690.2 542.7 712 479 712 412c0-80.2-31.3-155.4-87.9-212.1-56.6-56.7-132-87.9-212.1-87.9s-155.5 31.3-212.1 87.9C143.2 256.5 112 331.8 112 412c0 80.1 31.3 155.5 87.9 212.1C256.5 680.8 331.8 712 412 712c67 0 130.6-21.8 182.7-62l259.7 259.6a8.2 8.2 0 0 0 11.6 0l43.6-43.5a8.2 8.2 0 0 0 0-11.6zM570.4 570.4C528 612.7 471.8 636 412 636s-116-23.3-158.4-65.6C211.3 528 188 471.8 188 412s23.3-116.1 65.6-158.4C296 211.3 352.2 188 412 188s116.1 23.2 158.4 65.6S636 352.2 636 412s-23.3 116.1-65.6 158.4z"></path></svg>
|
||||
|
After Width: | Height: | Size: 709 B |
@@ -0,0 +1 @@
|
||||
<svg fill="none" stroke-width="2" xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-template" width="1em" height="1em" viewBox="0 0 24 24" stroke="#FFFFFF" stroke-linecap="round" stroke-linejoin="round" style="overflow: visible; color: currentcolor;"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M4 4m0 1a1 1 0 0 1 1 -1h14a1 1 0 0 1 1 1v2a1 1 0 0 1 -1 1h-14a1 1 0 0 1 -1 -1z"></path><path d="M4 12m0 1a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v6a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1z"></path><path d="M14 12l6 0"></path><path d="M14 16l6 0"></path><path d="M14 20l6 0"></path></svg>
|
||||
|
After Width: | Height: | Size: 610 B |
@@ -116,6 +116,14 @@
|
||||
<TextBox Name="htmlPreview" Grid.Row="6" Grid.RowSpan="3" IsReadOnly="True"
|
||||
VerticalAlignment="Bottom" Margin="10,10,10,0" TextWrapping="Wrap" />
|
||||
|
||||
<Button Name="BackButton" Grid.Row="9" Content="Back" VerticalAlignment="Bottom" HorizontalAlignment="Right" Click="BackButton_Click" />
|
||||
<Button Grid.Row="9" VerticalAlignment="Bottom" HorizontalAlignment="Right" Click="BackButton_Click">
|
||||
<Button.RenderTransform>
|
||||
<ScaleTransform/>
|
||||
</Button.RenderTransform>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Image Source="Resources/back.svg" Name="BackButtonImage" Width="30" Height="30" Margin="0,0,15,0"/>
|
||||
<TextBlock Text="Back"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</Grid>
|
||||
</Page>
|
||||
@@ -11,6 +11,8 @@ namespace CustomTeamAssigner
|
||||
{
|
||||
public partial class RichTextEditor : Page
|
||||
{
|
||||
public static RichTextEditor Instance { get; private set; } = null!;
|
||||
|
||||
public RichTextEditor()
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
@@ -116,11 +116,27 @@
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<TextBox x:Name="RoleNameTextBox" Grid.Row="0" Margin="10" ToolTip="Enter role name"/>
|
||||
<Button x:Name="FindDescriptionButton" Grid.Row="1" Margin="10" Content=" Find Description " Click="FindDescription"/>
|
||||
<Button x:Name="FindDescriptionButton" Grid.Row="1" Margin="10" Click="FindDescription">
|
||||
<Button.RenderTransform>
|
||||
<ScaleTransform/>
|
||||
</Button.RenderTransform>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Image Source="Resources/search.svg" Name="SearchButtonImage" Width="30" Height="30" Margin="0,0,15,0"/>
|
||||
<TextBlock Text="Find Description"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
<Border Grid.Row="2" Background="#2D2D2D" CornerRadius="20" Padding="20" HorizontalAlignment="Center" VerticalAlignment="Center">
|
||||
<TextBlock x:Name="RoleDescriptionTextBlock" Margin="10" TextWrapping="Wrap" FontSize="14"
|
||||
Text="Type in the name of a role in the input field in one word, then click on Find Description. If everything goes right, it will display the description of the role you typed here." />
|
||||
</Border>
|
||||
<Button x:Name="BackButton" Grid.Row="2" Margin="10" Content=" Back " VerticalAlignment="Bottom" HorizontalAlignment="Right" Click="BackToMain"/>
|
||||
<Button x:Name="BackButton" Grid.Row="2" Margin="10" VerticalAlignment="Bottom" HorizontalAlignment="Right" Click="BackToMain">
|
||||
<Button.RenderTransform>
|
||||
<ScaleTransform/>
|
||||
</Button.RenderTransform>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Image Source="Resources/back.svg" Name="BackButtonImage" Width="30" Height="30" Margin="0,0,15,0"/>
|
||||
<TextBlock Text="Back"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</Grid>
|
||||
</Page>
|
||||
@@ -8,6 +8,8 @@ namespace CustomTeamAssigner
|
||||
{
|
||||
public partial class RoleDescFinder : Page
|
||||
{
|
||||
public static RoleDescFinder Instance { get; private set; } = null!;
|
||||
|
||||
public RoleDescFinder()
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
@@ -299,8 +299,32 @@ README file in the root directory of this source tree.
|
||||
</StackPanel>
|
||||
<Label Grid.Row="8" Grid.Column="2" Content="Click on a member to remove it" FontWeight="Bold" HorizontalAlignment="Left" VerticalAlignment="Center"/>
|
||||
|
||||
<Button Grid.Row="10" Grid.Column="0" Content=" Cancel " FontWeight="Bold" HorizontalAlignment="Left" VerticalAlignment="Center" Click="Cancel"/>
|
||||
<Button Grid.Row="10" Grid.Column="1" Content=" Delete " FontWeight="Bold" HorizontalAlignment="Left" VerticalAlignment="Center" Click="Delete"/>
|
||||
<Button Grid.Row="10" Grid.Column="2" Content=" Save " FontWeight="Bold" HorizontalAlignment="Right" VerticalAlignment="Center" Click="Save"/>
|
||||
<Button Grid.Row="10" Grid.Column="0" FontWeight="Bold" HorizontalAlignment="Left" VerticalAlignment="Center" Click="Cancel">
|
||||
<Button.RenderTransform>
|
||||
<ScaleTransform/>
|
||||
</Button.RenderTransform>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Image Source="Resources/discard.svg" Name="DiscardButtonImage" Width="30" Height="30" Margin="0,0,15,0"/>
|
||||
<TextBlock Text="Cancel"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
<Button Grid.Row="10" Grid.Column="1" FontWeight="Bold" HorizontalAlignment="Left" VerticalAlignment="Center" Click="Delete">
|
||||
<Button.RenderTransform>
|
||||
<ScaleTransform/>
|
||||
</Button.RenderTransform>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Image Source="Resources/delete.svg" Name="DeleteButtonImage" Width="30" Height="30" Margin="0,0,15,0"/>
|
||||
<TextBlock Text="Delete"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
<Button Grid.Row="10" Grid.Column="2" FontWeight="Bold" HorizontalAlignment="Right" VerticalAlignment="Center" Click="Save">
|
||||
<Button.RenderTransform>
|
||||
<ScaleTransform/>
|
||||
</Button.RenderTransform>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Image Source="Resources/save.svg" Name="SaveButtonImage" Width="30" Height="30" Margin="0,0,15,0"/>
|
||||
<TextBlock Text="Go Back"/>
|
||||
</StackPanel>
|
||||
</Button>
|
||||
</Grid>
|
||||
</Page>
|
||||
@@ -15,6 +15,8 @@ namespace CustomTeamAssigner
|
||||
{
|
||||
public partial class TeamEditorPage : Page
|
||||
{
|
||||
public static TeamEditorPage Instance { get; private set; } = null!;
|
||||
|
||||
private readonly Team EditingTeam;
|
||||
private readonly List<CustomRoles> EditingTeamMembers;
|
||||
|
||||
@@ -26,6 +28,7 @@ namespace CustomTeamAssigner
|
||||
InitializeMembersGrid();
|
||||
InitializeComboBox();
|
||||
InitializeEditorFields();
|
||||
MainWindow.ApplyAllImages();
|
||||
}
|
||||
|
||||
void InitializeEditorFields()
|
||||
@@ -86,12 +89,14 @@ namespace CustomTeamAssigner
|
||||
|
||||
MainWindow.Instance.Navigator.NavigationService.Navigate(new PlaySetListerPage());
|
||||
Utils.SetMainWindowContents(Visibility.Collapsed);
|
||||
MainWindow.ApplyAllImages();
|
||||
}
|
||||
|
||||
void Cancel(object sender, RoutedEventArgs e)
|
||||
{
|
||||
MainWindow.Instance.Navigator.NavigationService.Navigate(new PlaySetListerPage());
|
||||
Utils.SetMainWindowContents(Visibility.Collapsed);
|
||||
MainWindow.ApplyAllImages();
|
||||
}
|
||||
|
||||
void Delete(object sender, RoutedEventArgs e)
|
||||
@@ -99,6 +104,7 @@ namespace CustomTeamAssigner
|
||||
Utils.Teams.Remove(EditingTeam);
|
||||
MainWindow.Instance.Navigator.NavigationService.Navigate(new PlaySetListerPage());
|
||||
Utils.SetMainWindowContents(Visibility.Collapsed);
|
||||
MainWindow.ApplyAllImages();
|
||||
}
|
||||
|
||||
void AddMember(object sender, RoutedEventArgs e)
|
||||
|
||||