Files
OmagCUT/Keyboard.xaml.vb
T
Dario Sassi 9c2729d278 OmagCUT 1.6l2 :
- migliorie a taglio diretto singolo
- aggiunta gestione lavoro in corso
- migliorie varie.
2015-12-11 16:02:05 +00:00

428 lines
14 KiB
VB.net

Imports System.Windows.Interop
Public Class Keyboard
' '' Codice che permette di mantenere le proporzioni(Aspect Ratio) della finestra dopo l'ingrondimento o rimpicciolimento della stessa
''Public Const ASPECTRATIO As Double = 12 / 5
''Protected Overrides Sub OnSourceInitialized(e As EventArgs)
'' MyBase.OnSourceInitialized(e)
'' Dim source As HwndSource = TryCast(HwndSource.FromVisual(Me), HwndSource)
'' If source IsNot Nothing Then
'' source.AddHook(New HwndSourceHook(AddressOf WinProc))
'' End If
''End Sub
''Public Const WM_EXITSIZEMOVE As Integer = &H232
''Private Function WinProc(hwnd As IntPtr, msg As Int32, wParam As IntPtr, lParam As IntPtr, ByRef handled As [Boolean]) As IntPtr
'' Dim result As IntPtr = IntPtr.Zero
'' Select Case msg
'' Case WM_EXITSIZEMOVE
'' If True Then
'' Me.Width = Me.Height * ASPECTRATIO
'' Exit Select
'' End If
'' End Select
'' Return result
''End Function
Private m_MainWindow As MainWindow = Application.Current.MainWindow
Friend m_StringResult As String = String.Empty
Friend m_CurrTxBx As TextBox
Friend m_CurrentLbl As String = String.Empty
' Variabili che contengono lo stato dei tasti Shift, Alt, Caps Lock
Private m_bShift As Boolean = False
Private m_bAlt As Boolean = False
Private m_CapsLock As Boolean = False
Sub New()
' This call is required by the designer.
InitializeComponent()
' Altre inizializzazioni
Owner = m_MainWindow
' Imposto Dimensioni e posizione della tastiera
Top = m_MainWindow.Top + (m_MainWindow.Height / 2 - Height / 2)
Left = m_MainWindow.Left + (m_MainWindow.Width / 2 - Width / 2)
End Sub
Sub New(ByVal sTitle As String, ByVal sValue As String, Optional ByVal CurrentTxBx As TextBox = Nothing)
' This call is required by the designer.
InitializeComponent()
' Altre inizializzazioni
Owner = m_MainWindow
CurrNameTxBl.Text = sTitle
CurrTextTxBx.Text = sValue
' Text box per valore di ritorno
m_CurrTxBx = CurrentTxBx
' Imposto Dimensioni e posizione della tastiera
Top = m_MainWindow.Top + (m_MainWindow.Height / 2 - Height / 2)
Left = m_MainWindow.Left + (m_MainWindow.Width / 2 - Width / 2)
End Sub
'Evita che venga selezionato il testo all'interno della textbox
Private Sub CurrTextTxBx_PreviewMouseDown(sender As Object, e As MouseButtonEventArgs) Handles CurrTextTxBx.PreviewMouseDown
e.Handled = True
CurrTextTxBx.SelectedText = String.Empty
End Sub
Private Sub OkBtn_Click(sender As Object, e As RoutedEventArgs) Handles OkBtn.Click
m_StringResult = CurrTextTxBx.Text
If Not IsNothing(m_CurrTxBx) Then
m_CurrTxBx.Text = CurrTextTxBx.Text
End If
Me.DialogResult = True
Me.Close()
End Sub
Private Sub ExitBtn_Click(sender As Object, e As RoutedEventArgs) Handles ExitBtn.Click
m_StringResult = String.Empty
Me.DialogResult = False
Me.Close()
End Sub
Private Sub UpperLowerCase(Value As Boolean)
If Value Then
qBtn.Content = "Q"
wBtn.Content = "W"
eBtn.Content = "E"
rBtn.Content = "R"
tBtn.Content = "T"
yBtn.Content = "Y"
uBtn.Content = "U"
iBtn.Content = "I"
oBtn.Content = "O"
pBtn.Content = "P"
aBtn.Content = "A"
sBtn.Content = "S"
dBtn.Content = "D"
fBtn.Content = "F"
gBtn.Content = "G"
hBtn.Content = "H"
jBtn.Content = "J"
kBtn.Content = "K"
lBtn.Content = "L"
zBtn.Content = "Z"
xBtn.Content = "X"
cBtn.Content = "C"
vBtn.Content = "V"
bBtn.Content = "B"
nBtn.Content = "N"
mBtn.Content = "M"
Else
qBtn.Content = "q"
wBtn.Content = "w"
eBtn.Content = "e"
rBtn.Content = "r"
tBtn.Content = "t"
yBtn.Content = "y"
uBtn.Content = "u"
iBtn.Content = "i"
oBtn.Content = "o"
pBtn.Content = "p"
aBtn.Content = "a"
sBtn.Content = "s"
dBtn.Content = "d"
fBtn.Content = "f"
gBtn.Content = "g"
hBtn.Content = "h"
jBtn.Content = "j"
kBtn.Content = "k"
lBtn.Content = "l"
zBtn.Content = "z"
xBtn.Content = "x"
cBtn.Content = "c"
vBtn.Content = "v"
bBtn.Content = "b"
nBtn.Content = "n"
mBtn.Content = "m"
End If
End Sub
' Tasti azione
Private Sub ShiftBtn_Click(sender As Object, e As RoutedEventArgs) Handles Shift1Btn.Click, Shift2Btn.Click
If m_bShift Then
m_bShift = False
UpperLowerCase(False)
Shift1Btn.IsChecked = False
Shift2Btn.IsChecked = False
Else
m_bShift = True
If m_CapsLock Then
UpperLowerCase(False)
Else
UpperLowerCase(True)
End If
Shift1Btn.IsChecked = True
Shift2Btn.IsChecked = True
End If
End Sub
Private Sub CapsLockBtn_Click(sender As Object, e As RoutedEventArgs) Handles CapsLockBtn.Click
If m_CapsLock Then
If m_bShift Then
UpperLowerCase(True)
Else
UpperLowerCase(False)
End If
m_CapsLock = False
CapsLockBtn.IsChecked = False
Else
If m_bShift Then
m_bShift = False
Shift1Btn.IsChecked = False
Shift2Btn.IsChecked = False
End If
m_CapsLock = True
UpperLowerCase(True)
CapsLockBtn.IsChecked = True
End If
End Sub
Private Sub AltBtn_Click(sender As Object, e As RoutedEventArgs) Handles AltBtn.Click, AltGrBtn.Click
'Per il momento non fa' nulla
End Sub
' Funzione che gestisce il click di una lettera
Private Sub LetterClick(Uppercase As Char, Lowercase As Char)
If m_CapsLock Then
If m_bShift Then
CurrTextTxBx.Text &= Lowercase
m_bShift = False
UpperLowerCase(True)
Shift1Btn.IsChecked = False
Shift2Btn.IsChecked = False
Else
CurrTextTxBx.Text &= Uppercase
End If
Else
If m_bShift Then
CurrTextTxBx.Text &= Uppercase
m_bShift = False
UpperLowerCase(False)
Shift1Btn.IsChecked = False
Shift2Btn.IsChecked = False
Else
CurrTextTxBx.Text &= Lowercase
End If
End If
End Sub
' Funzione che gestisce il click di numeri e simboli
Private Sub NumberClick(Uppercase As Char, Lowercase As Char)
If m_bShift Then
If m_CapsLock Then
UpperLowerCase(True)
Else
UpperLowerCase(False)
End If
CurrTextTxBx.Text &= Uppercase
m_bShift = False
Shift1Btn.IsChecked = False
Shift2Btn.IsChecked = False
Else
CurrTextTxBx.Text &= Lowercase
End If
End Sub
Private Sub BackslashBtn_Click(sender As Object, e As RoutedEventArgs) Handles BackslashBtn.Click
NumberClick("|", "\")
End Sub
Private Sub OneBtn_Click(sender As Object, e As RoutedEventArgs) Handles OneBtn.Click
NumberClick("!", "1")
End Sub
Private Sub TwoBtn_Click(sender As Object, e As RoutedEventArgs) Handles TwoBtn.Click
NumberClick("""", "2")
End Sub
Private Sub ThreeBtn_Click(sender As Object, e As RoutedEventArgs) Handles ThreeBtn.Click
NumberClick("£", "3")
End Sub
Private Sub FourBtn_Click(sender As Object, e As RoutedEventArgs) Handles FourBtn.Click
NumberClick("$", "4")
End Sub
Private Sub FiveBtn_Click(sender As Object, e As RoutedEventArgs) Handles FiveBtn.Click
NumberClick("%", "5")
End Sub
Private Sub SixBtn_Click(sender As Object, e As RoutedEventArgs) Handles SixBtn.Click
NumberClick("&", "6")
End Sub
Private Sub SevenBtn_Click(sender As Object, e As RoutedEventArgs) Handles SevenBtn.Click
NumberClick("/", "7")
End Sub
Private Sub EightBtn_Click(sender As Object, e As RoutedEventArgs) Handles EightBtn.Click
NumberClick("(", "8")
End Sub
Private Sub NineBtn_Click(sender As Object, e As RoutedEventArgs) Handles NineBtn.Click
NumberClick(")", "9")
End Sub
Private Sub ZeroBtn_Click(sender As Object, e As RoutedEventArgs) Handles ZeroBtn.Click
NumberClick("=", "0")
End Sub
Private Sub BackspaceBtn_Click(sender As Object, e As RoutedEventArgs) Handles BackspaceBtn.Click
If CurrTextTxBx.Text = String.Empty Then
Return
Else
CurrTextTxBx.Text = CurrTextTxBx.Text.Substring(0, CurrTextTxBx.Text.Length - 1)
End If
End Sub
Private Sub TabBtn_Click(sender As Object, e As RoutedEventArgs) Handles TabBtn.Click
End Sub
Private Sub qBtn_Click(sender As Object, e As RoutedEventArgs) Handles qBtn.Click
LetterClick("Q", "q")
End Sub
Private Sub wBtn_Click(sender As Object, e As RoutedEventArgs) Handles wBtn.Click
LetterClick("W", "w")
End Sub
Private Sub eBtn_Click(sender As Object, e As RoutedEventArgs) Handles eBtn.Click
LetterClick("E", "e")
End Sub
Private Sub rBtn_Click(sender As Object, e As RoutedEventArgs) Handles rBtn.Click
LetterClick("R", "r")
End Sub
Private Sub tBtn_Click(sender As Object, e As RoutedEventArgs) Handles tBtn.Click
LetterClick("T", "t")
End Sub
Private Sub yBtn_Click(sender As Object, e As RoutedEventArgs) Handles yBtn.Click
LetterClick("Y", "y")
End Sub
Private Sub uBtn_Click(sender As Object, e As RoutedEventArgs) Handles uBtn.Click
LetterClick("U", "u")
End Sub
Private Sub iBtn_Click(sender As Object, e As RoutedEventArgs) Handles iBtn.Click
LetterClick("I", "i")
End Sub
Private Sub oBtn_Click(sender As Object, e As RoutedEventArgs) Handles oBtn.Click
LetterClick("O", "o")
End Sub
Private Sub pBtn_Click(sender As Object, e As RoutedEventArgs) Handles pBtn.Click
LetterClick("P", "p")
End Sub
Private Sub Enter1Btn_Click(sender As Object, e As RoutedEventArgs) Handles Enter1Btn.Click
End Sub
Private Sub aBtn_Click(sender As Object, e As RoutedEventArgs)
LetterClick("A", "a")
End Sub
Private Sub sBtn_Click(sender As Object, e As RoutedEventArgs) Handles sBtn.Click
LetterClick("S", "s")
End Sub
Private Sub dBtn_Click(sender As Object, e As RoutedEventArgs) Handles dBtn.Click
LetterClick("D", "d")
End Sub
Private Sub fBtn_Click(sender As Object, e As RoutedEventArgs) Handles fBtn.Click
LetterClick("F", "f")
End Sub
Private Sub gBtn_Click(sender As Object, e As RoutedEventArgs) Handles gBtn.Click
LetterClick("G", "g")
End Sub
Private Sub hBtn_Click(sender As Object, e As RoutedEventArgs) Handles hBtn.Click
LetterClick("H", "h")
End Sub
Private Sub jBtn_Click(sender As Object, e As RoutedEventArgs) Handles jBtn.Click
LetterClick("J", "j")
End Sub
Private Sub kBtn_Click(sender As Object, e As RoutedEventArgs) Handles kBtn.Click
LetterClick("K", "k")
End Sub
Private Sub lBtn_Click(sender As Object, e As RoutedEventArgs) Handles lBtn.Click
LetterClick("L", "l")
End Sub
Private Sub PlusBtn_Click(sender As Object, e As RoutedEventArgs) Handles PlusBtn.Click
NumberClick("*", "+")
End Sub
Private Sub Enter2Btn_Click(sender As Object, e As RoutedEventArgs) Handles Enter2Btn.Click
End Sub
Private Sub MinorBtn_Click(sender As Object, e As RoutedEventArgs) Handles MinorBtn.Click
NumberClick(">", "<")
End Sub
Private Sub zBtn_Click(sender As Object, e As RoutedEventArgs) Handles zBtn.Click
LetterClick("Z", "z")
End Sub
Private Sub xBtn_Click(sender As Object, e As RoutedEventArgs) Handles xBtn.Click
LetterClick("X", "x")
End Sub
Private Sub cBtn_Click(sender As Object, e As RoutedEventArgs) Handles cBtn.Click
LetterClick("C", "c")
End Sub
Private Sub vBtn_Click(sender As Object, e As RoutedEventArgs) Handles vBtn.Click
LetterClick("V", "v")
End Sub
Private Sub bBtn_Click(sender As Object, e As RoutedEventArgs) Handles bBtn.Click
LetterClick("B", "b")
End Sub
Private Sub nBtn_Click(sender As Object, e As RoutedEventArgs) Handles nBtn.Click
LetterClick("N", "n")
End Sub
Private Sub mBtn_Click(sender As Object, e As RoutedEventArgs) Handles mBtn.Click
LetterClick("M", "m")
End Sub
Private Sub MinusBtn_Click(sender As Object, e As RoutedEventArgs) Handles MinusBtn.Click
NumberClick("_", "-")
End Sub
Private Sub DotBtn_Click(sender As Object, e As RoutedEventArgs) Handles DotBtn.Click
NumberClick(":", ".")
End Sub
Private Sub CommaBtn_Click(sender As Object, e As RoutedEventArgs) Handles CommaBtn.Click
NumberClick(";", ",")
End Sub
Private Sub SpaceBtn_Click(sender As Object, e As RoutedEventArgs) Handles SpaceBtn.Click
CurrTextTxBx.Text &= " "
End Sub
Private Sub ClearBtn_Click(sender As Object, e As RoutedEventArgs) Handles ClearBtn.Click
CurrTextTxBx.Text = String.Empty
End Sub
End Class