using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Navigation; using System.Windows.Shapes; using static Tango.SharedUI.Controls.MultiTransitionControl; using SimpleValidator.Extensions; using Tango.Settings; using Tango.Core.Cryptography; namespace Tango.MachineStudio.UI.Views { /// /// Interaction logic for LoginView.xaml /// public partial class LoginView : UserControl, ITransitionView { private Rfc2898Cryptographer cryptographer; public LoginView() { InitializeComponent(); cryptographer = new Rfc2898Cryptographer(); } public String Password { get { return (String)GetValue(PasswordProperty); } set { SetValue(PasswordProperty, value); } } public static readonly DependencyProperty PasswordProperty = DependencyProperty.Register("Password", typeof(String), typeof(LoginView), new PropertyMetadata(null)); public void OnTransitionCompleted() { txtEmail.Focus(); if (txtEmail.Text.IsNotNullOrWhiteSpace()) { txtPass.Focus(); } txtPass.Password = cryptographer.Decrypt(SettingsManager.Default.MachineStudio.LastLoginPassword); } private void txtPass_PasswordChanged(object sender, RoutedEventArgs e) { Password = txtPass.Password; } } }