summaryrefslogtreecommitdiff
path: root/Gestor.Application/Views/Generic/BaseUserControl.cs
blob: a389f173e9fdec89a635a93a5c81272005ee9006 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
using Gestor.Application.Helpers;
using Gestor.Common.Validation;
using Gestor.Model.Common;
using System;
using System.Runtime.CompilerServices;
using System.Text.RegularExpressions;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Input;

namespace Gestor.Application.Views.Generic
{
	public class BaseUserControl : UserControl
	{
		public virtual TipoTela Tela
		{
			get;
			set;
		}

		public BaseUserControl()
		{
		}

		public void DataAtual_OnDoubleClick(object sender, RoutedEventArgs e)
		{
			((DatePicker)sender).SelectedDate = new DateTime?(Funcoes.GetNetworkTime().Date);
		}

		public void DatePicker_OnLostKeyboardFocus(object sender, KeyboardFocusChangedEventArgs e)
		{
			DatePicker today = (DatePicker)sender;
			today.Text = ValidationHelper.FormatDate(today.Text);
			if (string.IsNullOrEmpty(today.Text))
			{
				today.DisplayDate = DateTime.Today;
			}
		}

		public void DatePicker_PreviewKeyDown(object sender, KeyEventArgs e)
		{
			if (e.Key != Key.Return)
			{
				return;
			}
			DatePicker str = (DatePicker)sender;
			DateTime date = Funcoes.GetNetworkTime().Date;
			str.Text = date.ToString("dd/MM/yyyy");
		}

		public virtual void FormatarDocumento(object sender, RoutedEventArgs e)
		{
			TextBox textBox = (TextBox)sender;
			textBox.Text = ValidationHelper.FormatDocument(textBox.Text);
		}

		public virtual void FormatarTelefone(object sender, RoutedEventArgs e)
		{
			TextBox textBox = (TextBox)sender;
			if (string.IsNullOrWhiteSpace(textBox.Text))
			{
				return;
			}
			textBox.Text = ValidationHelper.FormatarTelefone(textBox.Text);
		}

		public virtual void LetrasHabilitacao(object sender, TextCompositionEventArgs e)
		{
			Regex regex = new Regex("[^a-eA-E]+");
			e.Handled = regex.IsMatch(e.Text);
		}

		public virtual void Placa(object sender, TextCompositionEventArgs e)
		{
			Regex regex = new Regex("[^a-zA-Z0-9]+");
			e.Handled = regex.IsMatch(e.Text);
		}

		public void ScrollViewer_PreviewMouseWheel(object sender, MouseWheelEventArgs e)
		{
			ScrollViewer scrollViewer = (ScrollViewer)sender;
			scrollViewer.ScrollToVerticalOffset(scrollViewer.VerticalOffset - (double)e.Delta);
			e.Handled = true;
		}

		public void SomenteCaracteres(object sender, TextCompositionEventArgs e)
		{
			Regex regex = new Regex("[^a-zA-Z]+$");
			e.Handled = regex.IsMatch(e.Text);
		}

		public void SomenteData(object sender, TextCompositionEventArgs e)
		{
			Regex regex = new Regex("[^0-9/-]+");
			e.Handled = regex.IsMatch(e.Text);
		}

		public virtual void SomenteNumeros(object sender, TextCompositionEventArgs e)
		{
			Regex regex = new Regex("[^0-9]+");
			e.Handled = regex.IsMatch(e.Text);
		}
	}
}