Files
EgtWPFLib5/NameDialog/NameDialogVM.vb
T
Dario Sassi 00a338c202 Revert "Merge commit 'f1aae48a2b80f96ae94b59a69addd6cc6e48ee14'"
This reverts commit 1f49d0936e, reversing
changes made to 236eeac038.
2025-03-21 19:21:02 +01:00

77 lines
2.0 KiB
VB.net

Imports System.IO
Imports EgtUILib
Public Class NameDialogVM
Inherits VMBase
Private m_NameVerifyer As Func(Of String, Boolean)
Public WriteOnly Property NameVerifyer As Func(Of String, Boolean)
Set(value As Func(Of String, Boolean))
m_NameVerifyer = value
End Set
End Property
Private m_Title As String
Public Property Title As String
Get
Return m_Title
End Get
Set(value As String)
m_Title = value
End Set
End Property
Private m_VerifyChars As Boolean = True
Public WriteOnly Property VerifyChars As boolean
Set(value As Boolean)
m_VerifyChars = value
End Set
End Property
Private m_Name As String
Public Property Name As String
Get
Return m_Name
End Get
Set(value As String)
If m_VerifyChars Then
Dim TempName As String = value
For Each cInvalid In Path.GetInvalidFileNameChars()
TempName = TempName.Replace(cInvalid, "")
Next
If TempName.Length = value.Length Then
m_Name = value
Else
MessageBox.Show(EgtMsg(MSG_MACHININGDBERRORS + 4),
EgtMsg(MSG_EGTSAVEFILEDIALOG + 7),
MessageBoxButton.OK, MessageBoxImage.Error)
m_Name = TempName
End If
Else
m_Name = value
End If
NotifyPropertyChanged("Name")
End Set
End Property
#Region "Messages"
Public ReadOnly Property SaveMsg As String
Get
Return EgtMsg(MSG_EGTSAVEFILEDIALOG + 1)
End Get
End Property
Public ReadOnly Property CancelMsg As String
Get
Return EgtMsg(MSG_EGTSAVEFILEDIALOG + 2)
End Get
End Property
#End Region
Friend Function Save() As Boolean
Return m_NameVerifyer(m_Name)
End Function
End Class