Added possibility to change groups and entries icons

Add new entry link now hides text depending on width
TimePicker uses main color
This commit is contained in:
BONNEVILLE Geoffroy
2018-06-26 18:14:01 +02:00
parent 6f277e7b33
commit df6914d1e0
14 changed files with 327 additions and 116 deletions

View File

@@ -77,10 +77,53 @@ namespace ModernKeePass.Converters
var symbol = (Symbol) value; var symbol = (Symbol) value;
switch (symbol) switch (symbol)
{ {
case Symbol.Delete: case Symbol.Delete: return (int)PwIcon.TrashBin;
return PwIcon.TrashBin; case Symbol.Edit: return (int) PwIcon.Pen;
default: case Symbol.Save: return (int) PwIcon.Disk;
return PwIcon.Folder; case Symbol.Cancel: return (int) PwIcon.Expired;
case Symbol.Accept: return (int) PwIcon.Checked;
case Symbol.Home: return (int) PwIcon.Home;
case Symbol.Camera: return (int) PwIcon.Digicam;
case Symbol.Setting: return (int) PwIcon.Configuration;
case Symbol.Mail: return (int) PwIcon.EMail;
case Symbol.Find: return (int) PwIcon.EMailSearch;
case Symbol.Help: return (int) PwIcon.Info;
case Symbol.Clock: return (int) PwIcon.Clock;
case Symbol.Crop: return (int) PwIcon.Archive;
case Symbol.World: return (int) PwIcon.World;
case Symbol.Flag: return (int) PwIcon.PaperFlag;
case Symbol.PreviewLink: return (int) PwIcon.Certificate;
case Symbol.Document: return (int) PwIcon.Notepad;
case Symbol.ProtectedDocument: return (int) PwIcon.PaperLocked;
case Symbol.ContactInfo: return (int) PwIcon.UserCommunication;
case Symbol.ViewAll: return (int) PwIcon.Parts;
case Symbol.Rotate: return (int) PwIcon.CDRom;
case Symbol.List: return (int) PwIcon.List;
case Symbol.Shop: return (int) PwIcon.Money;
case Symbol.BrowsePhotos: return (int) PwIcon.Thumbnail;
case Symbol.Caption: return (int) PwIcon.Monitor;
case Symbol.Repair: return (int) PwIcon.Tool;
case Symbol.Page2: return (int) PwIcon.PaperNew;
case Symbol.Paste: return (int) PwIcon.ClipboardReady;
case Symbol.Important: return (int) PwIcon.Warning;
case Symbol.SlideShow: return (int) PwIcon.Console;
case Symbol.MapDrive: return (int) PwIcon.NetworkServer;
case Symbol.ContactPresence: return (int) PwIcon.UserKey;
case Symbol.Contact2: return (int) PwIcon.Identity;
case Symbol.Folder: return (int) PwIcon.Folder;
case Symbol.View: return (int) PwIcon.IRCommunication;
case Symbol.Permissions: return (int) PwIcon.Key;
case Symbol.Map: return (int) PwIcon.MarkedDirectory;
case Symbol.CellPhone: return (int) PwIcon.BlackBerry;
case Symbol.OutlineStar: return (int) PwIcon.Star;
case Symbol.Calculator: return (int) PwIcon.Count;
case Symbol.Library: return (int) PwIcon.Book;
case Symbol.SyncFolder: return (int) PwIcon.PaperReady;
case Symbol.GoToStart: return (int) PwIcon.Screen;
case Symbol.ZeroBars: return (int) PwIcon.Energy;
case Symbol.FourBars: return (int) PwIcon.EnergyCareful;
case Symbol.Scan: return (int) PwIcon.Scanner;
default: return (int) PwIcon.Key;
} }
} }
} }

View File

@@ -236,6 +236,9 @@
<Compile Include="Views\UserControls\HamburgerMenuUserControl.xaml.cs"> <Compile Include="Views\UserControls\HamburgerMenuUserControl.xaml.cs">
<DependentUpon>HamburgerMenuUserControl.xaml</DependentUpon> <DependentUpon>HamburgerMenuUserControl.xaml</DependentUpon>
</Compile> </Compile>
<Compile Include="Views\UserControls\SymbolPickerUserControl.xaml.cs">
<DependentUpon>SymbolPickerUserControl.xaml</DependentUpon>
</Compile>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<AppxManifest Include="Package.appxmanifest"> <AppxManifest Include="Package.appxmanifest">
@@ -367,6 +370,10 @@
<SubType>Designer</SubType> <SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator> <Generator>MSBuild:Compile</Generator>
</Page> </Page>
<Page Include="Views\UserControls\SymbolPickerUserControl.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Reference Include="BouncyCastle.Crypto, Version=1.8.2.0, Culture=neutral, PublicKeyToken=0e99375e54769942, processorArchitecture=MSIL"> <Reference Include="BouncyCastle.Crypto, Version=1.8.2.0, Culture=neutral, PublicKeyToken=0e99375e54769942, processorArchitecture=MSIL">

View File

@@ -1168,4 +1168,67 @@
</Setter.Value> </Setter.Value>
</Setter> </Setter>
</Style> </Style>
<!-- Custom style for Windows.UI.Xaml.Controls.TimePicker -->
<Style TargetType="TimePicker" x:Name="MainColorTimePicker">
<Setter Property="IsTabStop" Value="False" />
<Setter Property="FontFamily" Value="{ThemeResource ContentControlThemeFontFamily}" />
<Setter Property="FontSize" Value="{ThemeResource ControlContentThemeFontSize}" />
<Setter Property="Foreground" Value="{ThemeResource TimePickerForegroundThemeBrush}"/>
<Setter Property="HorizontalAlignment" Value="Left" />
<Setter Property="VerticalAlignment" Value="Center"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="TimePicker">
<Border x:Name="LayoutRoot"
Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}">
<Grid Margin="{TemplateBinding Padding}">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<ContentPresenter x:Name="HeaderContentPresenter"
Foreground="{ThemeResource TimePickerHeaderForegroundThemeBrush}"
Margin="{ThemeResource TimePickerHeaderThemeMargin}"
FlowDirection="{TemplateBinding FlowDirection}"
Content="{TemplateBinding Header}"
ContentTemplate="{TemplateBinding HeaderTemplate}"
FontWeight="{ThemeResource TimePickerHeaderThemeFontWeight}" />
<StackPanel Grid.Row="1" Orientation="Horizontal">
<Border x:Name="FirstPickerHost" Margin="{ThemeResource TimePickerFirstHostThemeMargin}">
<ComboBox x:Name="HourPicker"
MinWidth="{ThemeResource TimePickerSelectorThemeMinWidth}"
FontWeight="{TemplateBinding FontWeight}"
FontSize="{TemplateBinding FontSize}"
FontFamily="{TemplateBinding FontFamily}"
Foreground="{TemplateBinding Foreground}"
ItemContainerStyle="{StaticResource MainColorComboBoxItem}" />
</Border>
<Border x:Name="SecondPickerHost">
<ComboBox x:Name="MinutePicker"
MinWidth="{ThemeResource TimePickerSelectorThemeMinWidth}"
FontWeight="{TemplateBinding FontWeight}"
FontSize="{TemplateBinding FontSize}"
FontFamily="{TemplateBinding FontFamily}"
Foreground="{TemplateBinding Foreground}"
ItemContainerStyle="{StaticResource MainColorComboBoxItem}" />
</Border>
<Border x:Name="ThirdPickerHost" Margin="{ThemeResource TimePickerThirdHostThemeMargin}">
<ComboBox x:Name="PeriodPicker"
MinWidth="{ThemeResource TimePickerSelectorThemeMinWidth}"
FontWeight="{TemplateBinding FontWeight}"
FontSize="{TemplateBinding FontSize}"
FontFamily="{TemplateBinding FontFamily}"
Foreground="{TemplateBinding Foreground}"
ItemContainerStyle="{StaticResource MainColorComboBoxItem}" />
</Border>
</StackPanel>
</Grid>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</ResourceDictionary> </ResourceDictionary>

View File

@@ -402,4 +402,10 @@
<data name="EntryForegroundColor.Text" xml:space="preserve"> <data name="EntryForegroundColor.Text" xml:space="preserve">
<value>Foreground color</value> <value>Foreground color</value>
</data> </data>
<data name="EntrySymbol.Text" xml:space="preserve">
<value>Icon</value>
</data>
<data name="AddEntryTooltip.Content" xml:space="preserve">
<value>Create a new entry</value>
</data>
</root> </root>

View File

@@ -402,4 +402,10 @@
<data name="EntryForegroundColor.Text" xml:space="preserve"> <data name="EntryForegroundColor.Text" xml:space="preserve">
<value>Couleur du texte</value> <value>Couleur du texte</value>
</data> </data>
<data name="EntrySymbol.Text" xml:space="preserve">
<value>Icône</value>
</data>
<data name="AddEntryTooltip.Content" xml:space="preserve">
<value>Créer une nouvelle entrée</value>
</data>
</root> </root>

View File

@@ -88,9 +88,11 @@ namespace ModernKeePass.ViewModels
{ {
get get
{ {
if (HasExpired) return (int) PwIcon.Expired;
if (_pwEntry?.IconId != null) return (int) _pwEntry?.IconId; if (_pwEntry?.IconId != null) return (int) _pwEntry?.IconId;
return -1; return -1;
} }
set { _pwEntry.IconId = (PwIcon)value; }
} }
public DateTimeOffset ExpiryDate public DateTimeOffset ExpiryDate

View File

@@ -21,6 +21,7 @@
<converters:DoubleToSolidColorBrushConverter x:Key="DoubleToForegroungBrushComplexityConverter" /> <converters:DoubleToSolidColorBrushConverter x:Key="DoubleToForegroungBrushComplexityConverter" />
<converters:NullToBooleanConverter x:Key="NullToBooleanConverter" /> <converters:NullToBooleanConverter x:Key="NullToBooleanConverter" />
<converters:ColorToBrushConverter x:Key="ColorToBrushConverter" /> <converters:ColorToBrushConverter x:Key="ColorToBrushConverter" />
<converters:IntToSymbolConverter x:Key="IntToSymbolConverter" />
<Style TargetType="PasswordBox" x:Name="PasswordBoxWithButtonStyle"> <Style TargetType="PasswordBox" x:Name="PasswordBoxWithButtonStyle">
<Setter Property="MinWidth" Value="{ThemeResource TextControlThemeMinWidth}" /> <Setter Property="MinWidth" Value="{ThemeResource TextControlThemeMinWidth}" />
<Setter Property="MinHeight" Value="{ThemeResource TextControlThemeMinHeight}" /> <Setter Property="MinHeight" Value="{ThemeResource TextControlThemeMinHeight}" />
@@ -490,7 +491,7 @@
</SymbolIcon> </SymbolIcon>
<StackPanel Grid.Column="1" x:Name="ExpirationDatePanel" Orientation="Horizontal" Visibility="{Binding HasExpirationDate, Converter={StaticResource BooleanToVisibilityConverter}}"> <StackPanel Grid.Column="1" x:Name="ExpirationDatePanel" Orientation="Horizontal" Visibility="{Binding HasExpirationDate, Converter={StaticResource BooleanToVisibilityConverter}}">
<DatePicker Margin="0,0,20,0" Date="{Binding ExpiryDate, Mode=TwoWay}" Style="{StaticResource MainColorDatePicker}" /> <DatePicker Margin="0,0,20,0" Date="{Binding ExpiryDate, Mode=TwoWay}" Style="{StaticResource MainColorDatePicker}" />
<TimePicker Time="{Binding ExpiryTime, Mode=TwoWay}"/> <TimePicker Time="{Binding ExpiryTime, Mode=TwoWay}" Style="{StaticResource MainColorTimePicker}" />
</StackPanel> </StackPanel>
</Grid> </Grid>
<Grid Visibility="{Binding IsEditMode, Converter={StaticResource BooleanToVisibilityConverter}}"> <Grid Visibility="{Binding IsEditMode, Converter={StaticResource BooleanToVisibilityConverter}}">
@@ -507,6 +508,8 @@
<userControls:ColorPickerUserControl Grid.Column="0" Grid.Row="1" SelectedColor="{Binding BackgroundColor, Converter={StaticResource ColorToBrushConverter}, Mode=TwoWay}" /> <userControls:ColorPickerUserControl Grid.Column="0" Grid.Row="1" SelectedColor="{Binding BackgroundColor, Converter={StaticResource ColorToBrushConverter}, Mode=TwoWay}" />
<TextBlock x:Uid="EntryForegroundColor" Grid.Column="1" Grid.Row="0" /> <TextBlock x:Uid="EntryForegroundColor" Grid.Column="1" Grid.Row="0" />
<userControls:ColorPickerUserControl Grid.Column="1" Grid.Row="1" SelectedColor="{Binding ForegroundColor, Converter={StaticResource ColorToBrushConverter}, Mode=TwoWay}" /> <userControls:ColorPickerUserControl Grid.Column="1" Grid.Row="1" SelectedColor="{Binding ForegroundColor, Converter={StaticResource ColorToBrushConverter}, Mode=TwoWay}" />
<TextBlock x:Uid="EntrySymbol" Grid.Column="2" Grid.Row="0" />
<userControls:SymbolPickerUserControl Grid.Column="2" Grid.Row="1" SelectedSymbol="{Binding IconId, Converter={StaticResource IntToSymbolConverter}, Mode=TwoWay}" />
</Grid> </Grid>
</StackPanel> </StackPanel>
</Grid> </Grid>

View File

@@ -106,14 +106,31 @@
<ColumnDefinition Width="*" /> <ColumnDefinition Width="*" />
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<userControls:HamburgerMenuUserControl x:Uid="GroupsLeftListView" ItemsSource="{Binding Groups}" SelectionChanged="groups_SelectionChanged" ButtonClicked="CreateGroup_ButtonClick" ResizeTarget="{Binding ElementName=LeftListViewColumn}" IsButtonVisible="{Binding IsSelected, Converter={StaticResource InverseBooleanToVisibilityConverter}}" /> <userControls:HamburgerMenuUserControl x:Uid="GroupsLeftListView" ItemsSource="{Binding Groups}" SelectionChanged="groups_SelectionChanged" ButtonClicked="CreateGroup_ButtonClick" ResizeTarget="{Binding ElementName=LeftListViewColumn}" IsButtonVisible="{Binding IsSelected, Converter={StaticResource InverseBooleanToVisibilityConverter}}" />
<TextBlock Grid.Column="1" x:Uid="ReorderEntriesLabel" Margin="20,20,0,0" Visibility="{Binding IsEditMode, Converter={StaticResource BooleanToVisibilityConverter}}" Style="{StaticResource BodyTextBlockStyle}" /> <Grid Grid.Column="1">
<HyperlinkButton Grid.Column="1" VerticalAlignment="Top" Margin="40,10,0,0" Click="CreateEntry_ButtonClick" Visibility="{Binding IsSelected, Converter={StaticResource InverseBooleanToVisibilityConverter}}" HorizontalAlignment="Right" Foreground="{StaticResource MainColor}" Style="{StaticResource MainColorHyperlinkButton}"> <Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="50" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<TextBlock Grid.Column="0" Grid.Row="0" x:Uid="ReorderEntriesLabel" Margin="10,10,0,0" Visibility="{Binding IsEditMode, Converter={StaticResource BooleanToVisibilityConverter}}" Style="{StaticResource BodyTextBlockStyle}" />
<!--<TextBlock Grid.Column="1" Grid.Row="0" x:Uid="EntrySymbol" Margin="40,20,0,0" Visibility="{Binding IsEditMode, Converter={StaticResource BooleanToVisibilityConverter}}" Style="{StaticResource BodyTextBlockStyle}" />-->
<userControls:SymbolPickerUserControl Grid.Column="1" Grid.Row="0" Width="80" Height="40" SelectedSymbol="{Binding IconId, Converter={StaticResource IntToSymbolConverter}, Mode=TwoWay}" Visibility="{Binding IsEditMode, Converter={StaticResource BooleanToVisibilityConverter}}"></userControls:SymbolPickerUserControl>
<HyperlinkButton Grid.Column="2" Grid.Row="0" VerticalAlignment="Top" Click="CreateEntry_ButtonClick" Visibility="{Binding IsSelected, Converter={StaticResource InverseBooleanToVisibilityConverter}}" HorizontalAlignment="Right" Foreground="{StaticResource MainColor}" Style="{StaticResource MainColorHyperlinkButton}">
<StackPanel Orientation="Horizontal"> <StackPanel Orientation="Horizontal">
<SymbolIcon Symbol="Add"></SymbolIcon> <SymbolIcon Symbol="Add">
<TextBlock x:Uid="GroupCreateEntry" VerticalAlignment="Center" Margin="10,0,0,0" /> <ToolTipService.ToolTip>
<ToolTip x:Uid="AddEntryTooltip" />
</ToolTipService.ToolTip>
</SymbolIcon>
<TextBlock x:Name="AddEntryTextBlock" x:Uid="GroupCreateEntry" VerticalAlignment="Center" Margin="10,0,0,0" />
</StackPanel> </StackPanel>
</HyperlinkButton> </HyperlinkButton>
<SemanticZoom Grid.Column="1" ViewChangeStarted="SemanticZoom_ViewChangeStarted" Margin="20,60,0,0" ScrollViewer.HorizontalScrollBarVisibility="Visible">
<SemanticZoom Grid.Column="0" Grid.ColumnSpan="3" Grid.Row="1" ViewChangeStarted="SemanticZoom_ViewChangeStarted" ScrollViewer.HorizontalScrollBarVisibility="Visible">
<SemanticZoom.ZoomedInView> <SemanticZoom.ZoomedInView>
<!-- Horizontal scrolling grid --> <!-- Horizontal scrolling grid -->
<GridView <GridView
@@ -216,6 +233,8 @@
</GridView> </GridView>
</SemanticZoom.ZoomedOutView> </SemanticZoom.ZoomedOutView>
</SemanticZoom> </SemanticZoom>
</Grid>
</Grid> </Grid>
<!-- Back button and page title --> <!-- Back button and page title -->
<Grid Grid.Row="0" Background="{ThemeResource AppBarBackgroundThemeBrush}"> <Grid Grid.Row="0" Background="{ThemeResource AppBarBackgroundThemeBrush}">
@@ -299,6 +318,9 @@
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="SearchBox" Storyboard.TargetProperty="Visibility"> <ObjectAnimationUsingKeyFrames Storyboard.TargetName="SearchBox" Storyboard.TargetProperty="Visibility">
<DiscreteObjectKeyFrame KeyTime="0" Value="Collapsed"/> <DiscreteObjectKeyFrame KeyTime="0" Value="Collapsed"/>
</ObjectAnimationUsingKeyFrames> </ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="AddEntryTextBlock" Storyboard.TargetProperty="Visibility">
<DiscreteObjectKeyFrame KeyTime="0" Value="Collapsed"/>
</ObjectAnimationUsingKeyFrames>
</Storyboard> </Storyboard>
</VisualState> </VisualState>
<VisualState x:Name="Large"> <VisualState x:Name="Large">
@@ -309,6 +331,9 @@
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="SearchBox" Storyboard.TargetProperty="Visibility"> <ObjectAnimationUsingKeyFrames Storyboard.TargetName="SearchBox" Storyboard.TargetProperty="Visibility">
<DiscreteObjectKeyFrame KeyTime="0" Value="Visible"/> <DiscreteObjectKeyFrame KeyTime="0" Value="Visible"/>
</ObjectAnimationUsingKeyFrames> </ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="AddEntryTextBlock" Storyboard.TargetProperty="Visibility">
<DiscreteObjectKeyFrame KeyTime="0" Value="Visible"/>
</ObjectAnimationUsingKeyFrames>
</Storyboard> </Storyboard>
</VisualState> </VisualState>
</VisualStateGroup> </VisualStateGroup>

View File

@@ -5,7 +5,7 @@
xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"> mc:Ignorable="d">
<ComboBox x:Name="ComboBox" ItemsSource="{Binding Colors, ElementName=UserControl}" SelectionChanged="Selector_OnSelectionChanged"> <ComboBox x:Name="ComboBox" ItemsSource="{Binding Colors, ElementName=UserControl}" SelectionChanged="Selector_OnSelectionChanged" Loaded="ComboBox_Loaded" ItemContainerStyle="{StaticResource MainColorComboBoxItem}">
<ComboBox.ItemTemplate> <ComboBox.ItemTemplate>
<DataTemplate> <DataTemplate>
<StackPanel Orientation="Horizontal" Margin="0,0,10,0"> <StackPanel Orientation="Horizontal" Margin="0,0,10,0">

View File

@@ -45,7 +45,6 @@ namespace ModernKeePass.Views.UserControls
ColorBrush = new SolidColorBrush((Windows.UI.Color)propertyInfo.GetValue(null, null)) ColorBrush = new SolidColorBrush((Windows.UI.Color)propertyInfo.GetValue(null, null))
}); });
} }
ComboBox.Loaded += ComboBox_Loaded;
} }
private void ComboBox_Loaded(object sender, RoutedEventArgs e) private void ComboBox_Loaded(object sender, RoutedEventArgs e)

View File

@@ -0,0 +1,17 @@
<UserControl x:Name="UserControl"
x:Class="ModernKeePass.Views.UserControls.SymbolPickerUserControl"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d">
<ComboBox x:Name="ComboBox" ItemsSource="{Binding Symbols, ElementName=UserControl}" SelectedItem="{Binding SelectedSymbol, ElementName=UserControl, Mode=TwoWay}" Loaded="ComboBox_OnLoaded" ItemContainerStyle="{StaticResource MainColorComboBoxItem}">
<ComboBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal" Margin="0,0,10,0">
<SymbolIcon Symbol="{Binding}" />
</StackPanel>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
</UserControl>

View File

@@ -0,0 +1,38 @@
using System;
using System.Linq;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls;
// The User Control item template is documented at http://go.microsoft.com/fwlink/?LinkId=234236
namespace ModernKeePass.Views.UserControls
{
public sealed partial class SymbolPickerUserControl
{
public Symbol[] Symbols { get; }
public Symbol SelectedSymbol
{
get { return (Symbol)GetValue(SelectedSymbolProperty); }
set { SetValue(SelectedSymbolProperty, value); }
}
public static readonly DependencyProperty SelectedSymbolProperty =
DependencyProperty.Register(
"SelectedSymbol",
typeof(Symbol),
typeof(SymbolPickerUserControl),
new PropertyMetadata(Symbol.Stop, (o, args) => { }));
public SymbolPickerUserControl()
{
InitializeComponent();
Symbols = (Symbol[])Enum.GetValues(typeof(Symbol));
}
private void ComboBox_OnLoaded(object sender, RoutedEventArgs e)
{
ComboBox.SelectedItem = Symbols.FirstOrDefault(s => s == SelectedSymbol);
}
}
}

View File

@@ -1,6 +1,7 @@
Entry history feature added Entry history feature added
App now uses Windows theme color as its base color App now uses Windows theme color as its base color
You can now change entries background and foreground colors You can now change entries background and foreground colors
You can now change groups and entries icons
Design improvements Design improvements
Bug corrections Bug corrections
KeePassLib version bump to 2.39.1 KeePassLib version bump to 2.39.1

View File

@@ -1,6 +1,7 @@
Ajout de la fonctionnalite d'historique des entrees Ajout de la fonctionnalite d'historique des entrees
L'application utilise la couleur de theme de Windows en tant que couleur principale L'application utilise la couleur de theme de Windows en tant que couleur principale
Il est desormais possible de changer la couleur de fond et de texte des entrees Il est desormais possible de changer la couleur de fond et de texte des entrees
Il est desormais possible de changer l'icone des groupes et des entrees
Ameliorations de design Ameliorations de design
Corrections de bugs Corrections de bugs
Version de la KeePassLib passe a 2.39.1 Version de la KeePassLib passe a 2.39.1