- gestione apertura progetto senza lavorazione in Db
This commit is contained in:
@@ -6,12 +6,12 @@ Imports EgtWPFLib5
|
||||
Public Class CurrMachining
|
||||
Inherits Machining
|
||||
|
||||
Private m_sCurrGUID As String = ""
|
||||
Public Property sCurrGUID As String
|
||||
Private m_sCurrGUID As Guid = Guid.Empty
|
||||
Public Property sCurrGUID As Guid
|
||||
Get
|
||||
Return m_sCurrGUID
|
||||
End Get
|
||||
Set(value As String)
|
||||
Set(value As Guid)
|
||||
m_sCurrGUID = value
|
||||
End Set
|
||||
End Property
|
||||
@@ -84,11 +84,12 @@ Public Class CurrMachining
|
||||
Sub New(nPartId As Integer)
|
||||
' ricavo lavorazione da lista
|
||||
Dim sMacIniFilePath As String = Map.refMainWindowVM.MainWindowM.sMachiningsDir & "/Machinings.ini"
|
||||
EgtGetInfo(nPartId, MAC_GUID, m_sCurrGUID)
|
||||
If Not String.IsNullOrWhiteSpace(m_sCurrGUID) Then
|
||||
Dim sCurrGuid As String = ""
|
||||
EgtGetInfo(nPartId, MAC_GUID, sCurrGuid)
|
||||
If Guid.TryParse(sCurrGuid, m_sCurrGUID) Then
|
||||
Dim CurrMachiningInDb As MachiningIndex = Map.refTopPanelVM.MachiningList.FirstOrDefault(Function(x) x.sGUID = m_sCurrGUID)
|
||||
If IsNothing(CurrMachiningInDb) Then
|
||||
MessageBox.Show("Machining not found in Db!", "Error", MessageBoxButton.OK, MessageBoxImage.Error)
|
||||
MessageBox.Show("Machining not found in Db!", "Warning", MessageBoxButton.OK, MessageBoxImage.Warning)
|
||||
m_nIndex = 0
|
||||
Else
|
||||
m_nIndex = CurrMachiningInDb.nIndex
|
||||
@@ -163,7 +164,7 @@ Public Class CurrMachining
|
||||
End Sub
|
||||
|
||||
Friend Sub WriteCurrParamInPart(nPartId As Integer)
|
||||
EgtSetInfo(nPartId, MAC_GUID, m_sCurrGUID)
|
||||
EgtSetInfo(nPartId, MAC_GUID, m_sCurrGUID.ToString())
|
||||
For Each Cathegory As CurrMachiningCathegory In m_CathegoryList
|
||||
Cathegory.WriteCurrParamInPart(nPartId)
|
||||
Next
|
||||
@@ -301,7 +302,7 @@ Public Class CurrNumericMachiningParam
|
||||
|
||||
Public ReadOnly Property bIsModifiedFromDb As Boolean
|
||||
Get
|
||||
Return m_dValue <> m_DbParam.dOrigValue
|
||||
Return If(Map.refTopPanelVM.SelMachining.sGUID <> Guid.Empty, m_dValue <> m_DbParam.dOrigValue, False)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
@@ -681,7 +682,7 @@ Public Class CurrComboMachiningParam
|
||||
|
||||
Public ReadOnly Property bIsModifiedFromDb As Boolean
|
||||
Get
|
||||
Return m_SelValue.Id <> m_DbParam.OrigSelValue.Id
|
||||
Return If(Map.refTopPanelVM.SelMachining.sGUID <> Guid.Empty, m_SelValue.Id <> m_DbParam.OrigSelValue.Id, False)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
@@ -845,7 +846,7 @@ Public Class CurrCheckMachiningParam
|
||||
|
||||
Public ReadOnly Property bIsModifiedFromDb As Boolean
|
||||
Get
|
||||
Return m_bValue <> m_DbParam.bOrigValue
|
||||
Return If(Map.refTopPanelVM.SelMachining.sGUID <> Guid.Empty, m_bValue <> m_DbParam.bOrigValue, False)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
|
||||
@@ -110,8 +110,8 @@ Public Class CurrMachiningPanelVM
|
||||
nIndex += 1
|
||||
End While
|
||||
Dim sMacIniFilePath As String = Map.refMainWindowVM.MainWindowM.sMachiningsDir & "/Machinings.ini"
|
||||
Dim sNewMachGUID As String = Guid.NewGuid.ToString()
|
||||
WritePrivateProfileString(nIndex, MAC_GUID, sNewMachGUID, sMacIniFilePath)
|
||||
Dim sNewMachGUID As Guid = Guid.NewGuid()
|
||||
WritePrivateProfileString(nIndex, MAC_GUID, sNewMachGUID.ToString(), sMacIniFilePath)
|
||||
WritePrivateProfileString(nIndex, MAC_NAME, SaveInDbWndVM.sName, sMacIniFilePath)
|
||||
' creo categoria materiali con attivo materiale corrente
|
||||
Dim MaterialCathegory As New MachiningCathegory(MachiningCathegory.Cathegories.MATERIALS, 0)
|
||||
|
||||
@@ -229,6 +229,8 @@ End Class
|
||||
Public Class MachiningIndex
|
||||
Inherits VMBase
|
||||
|
||||
Private Shared m_Empty As New MachiningIndex(-1, Guid.Empty, "None")
|
||||
|
||||
Private m_nIndex As Integer
|
||||
Public ReadOnly Property nIndex As Integer
|
||||
Get
|
||||
@@ -236,8 +238,8 @@ Public Class MachiningIndex
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Private m_sGUID As String
|
||||
Public ReadOnly Property sGUID As String
|
||||
Private m_sGUID As Guid
|
||||
Public ReadOnly Property sGUID As Guid
|
||||
Get
|
||||
Return m_sGUID
|
||||
End Get
|
||||
@@ -250,12 +252,16 @@ Public Class MachiningIndex
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Sub New(nIndex As Integer, sGUID As String, sName As String)
|
||||
Sub New(nIndex As Integer, GUID As Guid, sName As String)
|
||||
m_nIndex = nIndex
|
||||
m_sGUID = sGUID
|
||||
m_sGUID = GUID
|
||||
m_sName = sName
|
||||
End Sub
|
||||
|
||||
Friend Shared Function Empty() As MachiningIndex
|
||||
Return m_Empty
|
||||
End Function
|
||||
|
||||
End Class
|
||||
|
||||
Public Class MachiningCathegory
|
||||
|
||||
@@ -314,6 +314,9 @@ Public Class SliderManagerVM
|
||||
End If
|
||||
Next
|
||||
End Select
|
||||
' mostro/nascondo slider orizzontale
|
||||
m_LayerAdvancement_Visibility = If(m_nSelViewSlider = ViewSliderType.ONLY_SELECTED, Visibility.Visible, Visibility.Collapsed)
|
||||
NotifyPropertyChanged(NameOf(LayerAdvancement_Visibility))
|
||||
EgtDraw()
|
||||
End Set
|
||||
End Property
|
||||
@@ -341,9 +344,7 @@ Public Class SliderManagerVM
|
||||
Friend Sub SetSliderVisibility(bValue As Boolean)
|
||||
Dim Visibility As Visibility = If(bValue, Visibility.Visible, Visibility.Collapsed)
|
||||
m_LayerIndex_Visibility = Visibility
|
||||
m_LayerAdvancement_Visibility = Visibility
|
||||
NotifyPropertyChanged(NameOf(LayerIndex_Visibility))
|
||||
NotifyPropertyChanged(NameOf(LayerAdvancement_Visibility))
|
||||
End Sub
|
||||
|
||||
Friend Sub RefreshSlider(nMin As Integer, nMax As Integer)
|
||||
|
||||
@@ -172,7 +172,9 @@ Public Class TopPanelVM
|
||||
EgtDraw()
|
||||
' imposto lavorazione e materiale del pezzo selezionato
|
||||
Map.refCurrMachiningPanelVM.ReadMachParamFromSelPart()
|
||||
SetSelMachining(MachiningList.FirstOrDefault(Function(x) x.sGUID = Map.refCurrMachiningPanelVM.CurrMachining.sCurrGUID))
|
||||
Dim DbMachining As MachiningIndex = MachiningList.FirstOrDefault(Function(x) x.sGUID = Map.refCurrMachiningPanelVM.CurrMachining.sCurrGUID)
|
||||
If IsNothing(DbMachining) Then DbMachining = MachiningIndex.Empty()
|
||||
SetSelMachining(DbMachining)
|
||||
' notifico posizione pezzo
|
||||
Map.refDispositionPanelVM.RefreshPos()
|
||||
End If
|
||||
@@ -222,7 +224,7 @@ Public Class TopPanelVM
|
||||
Set(value As MachiningIndex)
|
||||
' verifico se vecchia modificata e chiedo se salvare?
|
||||
If Not IsNothing(value) Then
|
||||
WriteMainPrivateProfileString(S_PRINTING3D, K_CURRMACHINING, value.sGUID)
|
||||
WriteMainPrivateProfileString(S_PRINTING3D, K_CURRMACHINING, value.sGUID.ToString())
|
||||
' imposto selezionata come corrente
|
||||
If Not IsNothing(m_SelPart) AndAlso (IsNothing(m_SelMachining) OrElse value.sGUID <> m_SelMachining.sGUID) Then
|
||||
Map.refCurrMachiningPanelVM.SetCurrMachining(New CurrMachining(m_SelPart.nPartId, value.nIndex))
|
||||
@@ -314,23 +316,30 @@ Public Class TopPanelVM
|
||||
Friend Sub InitMachiningsList()
|
||||
If IsNothing(m_SelMaterial) Then Return
|
||||
MachiningList.Clear()
|
||||
' aggiungo lavorazione vuota
|
||||
MachiningList.Add(MachiningIndex.Empty())
|
||||
' leggo ed aggiungo le altre
|
||||
Dim nIndex As Integer = 1
|
||||
Dim sGUID As String = ""
|
||||
Dim sName As String = ""
|
||||
Dim sMaterials As String = ""
|
||||
While GetPrivateProfileString(nIndex, MAC_GUID, "", sGUID, Map.refMainWindowVM.MainWindowM.sMachiningsDir & "/Machinings.ini") > 0
|
||||
Dim Guid As Guid = Guid.Empty
|
||||
Guid.TryParse(sGUID, Guid)
|
||||
GetPrivateProfileString(nIndex, MAC_NAME, "", sName, Map.refMainWindowVM.MainWindowM.sMachiningsDir & "/Machinings.ini")
|
||||
' leggo materiali che usa
|
||||
GetPrivateProfileString(nIndex, MAC_MATERIALS, "", sMaterials, Map.refMainWindowVM.MainWindowM.sMachiningsDir & "/Machinings.ini")
|
||||
Dim MacMaterials() As String = sMaterials.Split(";"c)
|
||||
If MacMaterials.Contains(SelMaterial.sGUID) Then
|
||||
MachiningList.Add(New MachiningIndex(nIndex, sGUID, sName))
|
||||
MachiningList.Add(New MachiningIndex(nIndex, Guid, sName))
|
||||
End If
|
||||
nIndex += 1
|
||||
End While
|
||||
Dim sCurrMachining As String = ""
|
||||
GetMainPrivateProfileString(S_PRINTING3D, K_CURRMACHINING, "", sCurrMachining)
|
||||
SelMachining = MachiningList.FirstOrDefault(Function(x) x.sGUID = sCurrMachining)
|
||||
Dim CurrMachining As Guid
|
||||
Guid.TryParse(sCurrMachining, CurrMachining)
|
||||
SelMachining = MachiningList.FirstOrDefault(Function(x) x.sGUID = CurrMachining)
|
||||
End Sub
|
||||
|
||||
Friend Function GetSelMachining() As Machining
|
||||
|
||||
Reference in New Issue
Block a user