a46d38bc35
-> passando da HardwareManager a DoorCreator ripristino l'ultimo Part visualizzato.
624 lines
23 KiB
VB.net
624 lines
23 KiB
VB.net
Imports System.Collections.ObjectModel
|
|
Imports System.ComponentModel
|
|
Imports System.IO
|
|
Imports EgtUILib
|
|
Imports EgtWPFLib5
|
|
Imports Ionic.zip
|
|
|
|
Public Class ProjectManagerHardwareVM
|
|
Implements INotifyPropertyChanged
|
|
|
|
#Region "FIELDS & PROPERTIES"
|
|
|
|
Friend Shared StopRefresh As Boolean = True
|
|
|
|
Private m_IsModified As Boolean = False
|
|
Public Property IsModified As Boolean
|
|
Get
|
|
Return m_IsModified
|
|
End Get
|
|
Set(value As Boolean)
|
|
m_IsModified = value
|
|
If m_IsModified Then
|
|
Map.refMainWindowVM.ProjectNameMsg = "HardwareManager*"
|
|
IsModifiedImage = "/Resources/TopCommandBar/IsModify.png"
|
|
Else
|
|
Map.refMainWindowVM.ProjectNameMsg = "HardwareManager"
|
|
IsModifiedImage = "/Resources/TopCommandBar/Save.png"
|
|
End If
|
|
Return
|
|
End Set
|
|
End Property
|
|
|
|
Private m_IsModifiedImage As String = "/Resources/TopCommandBar/Save.png"
|
|
Public Property IsModifiedImage As String
|
|
Get
|
|
Return m_IsModifiedImage
|
|
End Get
|
|
Set(value As String)
|
|
m_IsModifiedImage = value
|
|
NotifyPropertyChanged("IsModifiedImage")
|
|
End Set
|
|
End Property
|
|
|
|
Public ReadOnly Property DisableDeleteCommandHM As Visibility
|
|
Get
|
|
If OptionModule.m_DisableDeleteCommandHM Then
|
|
Return Visibility.Visible
|
|
Else
|
|
Return Visibility.Collapsed
|
|
End If
|
|
End Get
|
|
End Property
|
|
|
|
Public ReadOnly Property EnableProjectManagerHardware As Boolean
|
|
Get
|
|
If Not IsNothing(Map.refInstrumentPanelVM) Then
|
|
Return Map.refInstrumentPanelVM.EnablePage
|
|
Else
|
|
Return True
|
|
End If
|
|
End Get
|
|
End Property
|
|
|
|
' Definizione comandi
|
|
Private m_cmdNewDir As ICommand
|
|
Private m_cmdRefreshDir As ICommand
|
|
Private m_cmdNew As ICommand
|
|
Private m_cmdSave As ICommand
|
|
Private m_cmdDelete As ICommand
|
|
Private m_cmdOptions As ICommand
|
|
Private m_cmdSendFeedback As ICommand
|
|
Private m_cmdGuide As ICommand
|
|
Private m_cmdDuplica As ICommand
|
|
Private m_cmdDoor As ICommand
|
|
Private m_cmdDimensionPart As ICommand
|
|
|
|
#Region "ToolTip"
|
|
|
|
'Proprietà ToolTip
|
|
Public ReadOnly Property NewToolTip As String
|
|
Get
|
|
Return EgtMsg(MSG_TOPCOMMANDBAR + 1)
|
|
End Get
|
|
End Property
|
|
Public ReadOnly Property SaveToolTip As String
|
|
Get
|
|
Return EgtMsg(MSG_TOPCOMMANDBAR + 3)
|
|
End Get
|
|
End Property
|
|
Public ReadOnly Property SendFeedbackToolTip As String
|
|
Get
|
|
Return EgtMsg(50046)
|
|
End Get
|
|
End Property
|
|
Public ReadOnly Property OptionsToolTip As String
|
|
Get
|
|
Return EgtMsg(MSG_MAINWINDOW + 209)
|
|
End Get
|
|
End Property
|
|
Public ReadOnly Property GuideToolTip As String
|
|
Get
|
|
Return EgtMsg(50305)
|
|
End Get
|
|
End Property
|
|
Public ReadOnly Property Help As String
|
|
Get
|
|
Return EgtMsg(50305)
|
|
End Get
|
|
End Property
|
|
Public ReadOnly Property DuplicaToolTip As String
|
|
Get
|
|
' Duplicate
|
|
Return EgtMsg(50415)
|
|
End Get
|
|
End Property
|
|
Public ReadOnly Property DeleteToolTip As String
|
|
Get
|
|
' Delete
|
|
Return EgtMsg(50126)
|
|
End Get
|
|
End Property
|
|
Public ReadOnly Property DoorToolTip As String
|
|
Get
|
|
' Door
|
|
Return EgtMsg(50308).ToUpper
|
|
End Get
|
|
End Property
|
|
Public ReadOnly Property HardwareToolTip As String
|
|
Get
|
|
' Hardware
|
|
Return EgtMsg(50413).ToUpper
|
|
End Get
|
|
End Property
|
|
Public ReadOnly Property NewDirToolTip As String
|
|
Get
|
|
' New Directory
|
|
Return EgtMsg(50419)
|
|
End Get
|
|
End Property
|
|
Public ReadOnly Property DimensionToolTip As String
|
|
Get
|
|
Return EgtMsg(50418)
|
|
End Get
|
|
End Property
|
|
|
|
Public ReadOnly Property RefreshDirToolTip As String
|
|
Get
|
|
' 50728=Refresh Directory
|
|
Return EgtMsg(50728)
|
|
End Get
|
|
End Property
|
|
|
|
#End Region ' ToolTip
|
|
|
|
#End Region ' Fields & Properties
|
|
|
|
#Region "CONSTRUCTOR"
|
|
|
|
Sub New()
|
|
Map.SetRefProjectManagerHardwareVM(Me)
|
|
End Sub
|
|
|
|
#End Region ' Constructor
|
|
|
|
#Region "COMMANDS"
|
|
|
|
#Region "NewDirCommand"
|
|
|
|
Public ReadOnly Property NewDirCommand As ICommand
|
|
Get
|
|
If m_cmdNewDir Is Nothing Then
|
|
m_cmdNewDir = New Command(AddressOf NewDirCmd)
|
|
End If
|
|
Return m_cmdNewDir
|
|
End Get
|
|
End Property
|
|
|
|
Public Sub NewDirCmd()
|
|
If Not IsNothing(Map.refHardwarePageVM) And Not IsNothing(Map.refHardwarePageVM.CurrHardware) Then
|
|
If Map.refHardwarePageVM.CurrHardware.SaveControl() = Hardware.SaveResult.nCancel Then
|
|
Return
|
|
ElseIf Map.refHardwarePageVM.CurrHardware.SaveControl() = Hardware.SaveResult.nYes Then
|
|
Map.refHardwarePageVM.CurrHardware.Save()
|
|
End If
|
|
' Richiedo il nome del progetto (cioè la directory da creare)
|
|
Dim ref_SaveFileDialogVM As New MySaveFileDialogVM
|
|
Dim SaveFileDialogWnd As New MySaveFileDialogV(Application.Current.MainWindow, ref_SaveFileDialogVM)
|
|
' New Directory
|
|
ref_SaveFileDialogVM.Title = EgtMsg(50419)
|
|
ref_SaveFileDialogVM.Directory = Map.refHardwarePageVM.CurrHardware.HardwareGeneral.Path
|
|
ref_SaveFileDialogVM.IsFolder = True
|
|
If Not SaveFileDialogWnd.ShowDialog Then
|
|
Return
|
|
End If
|
|
If Directory.Exists(ref_SaveFileDialogVM.FileName) Then
|
|
' 50561=Directory already exists
|
|
MessageBox.Show(EgtMsg(50561), EgtMsg(50144), MessageBoxButton.OK, MessageBoxImage.Warning)
|
|
Return
|
|
End If
|
|
Directory.CreateDirectory(ref_SaveFileDialogVM.FileName)
|
|
Map.refHardwarePageVM.CurrHardware.BrandList.Add(New CompoBrandDir(ref_SaveFileDialogVM.FileName, Path.GetFileName(Map.refHardwarePageVM.CurrHardware.HardwareGeneral.Path)))
|
|
Map.refHardwarePageVM.CurrHardware.SelBrand = Map.refHardwarePageVM.CurrHardware.BrandList(Map.refHardwarePageVM.CurrHardware.BrandList.Count - 1)
|
|
Map.refHardwarePageVM.CurrHardware.VisibilityType = Visibility.Collapsed
|
|
Map.refHardwarePageVM.CurrHardware.RefreshTemplateListEgtDOORCreator()
|
|
ref_SaveFileDialogVM = Nothing
|
|
End If
|
|
End Sub
|
|
|
|
#End Region ' NewDirCommand
|
|
|
|
#Region "RefreshDirCommand"
|
|
|
|
Public ReadOnly Property RefreshDirCommand As ICommand
|
|
Get
|
|
If m_cmdRefreshDir Is Nothing Then
|
|
m_cmdRefreshDir = New Command(AddressOf RefreshDirCmd)
|
|
End If
|
|
Return m_cmdRefreshDir
|
|
End Get
|
|
End Property
|
|
|
|
Public Sub RefreshDirCmd()
|
|
If Not IsNothing(Map.refHardwarePageVM) AndAlso
|
|
Not IsNothing(Map.refHardwarePageVM.CurrHardware) Then
|
|
If Map.refHardwarePageVM.CurrHardware.SaveControl <> Hardware.SaveResult.nCancel Then
|
|
Map.refHardwarePageVM.CurrHardware.RefreshTemplateListEgtDOORCreator()
|
|
End If
|
|
End If
|
|
End Sub
|
|
|
|
#End Region ' NewDirCommand
|
|
|
|
#Region "NewCommand"
|
|
|
|
Public ReadOnly Property NewCommand As ICommand
|
|
Get
|
|
If m_cmdNew Is Nothing Then
|
|
m_cmdNew = New Command(AddressOf NewCmd)
|
|
End If
|
|
Return m_cmdNew
|
|
End Get
|
|
End Property
|
|
|
|
Public Sub NewCmd()
|
|
If Not IsNothing(Map.refHardwarePageVM) And Not IsNothing(Map.refHardwarePageVM.CurrHardware) Then
|
|
If Map.refHardwarePageVM.CurrHardware.SaveControl() = Hardware.SaveResult.nCancel Then
|
|
Return
|
|
ElseIf Map.refHardwarePageVM.CurrHardware.SaveControl() = Hardware.SaveResult.nYes Then
|
|
Map.refHardwarePageVM.CurrHardware.Save()
|
|
End If
|
|
If Not IsNothing(Map.refHardwarePageVM.CurrHardware) Then
|
|
Dim refNewHardwareV As New NewHardwareV
|
|
Dim refNewhardwareVM As New NewHardwareVM(Map.refHardwarePageVM.CurrHardware.HardwareGeneral, NewHardwareVM.CommandList.nNew)
|
|
' refNewhardwareVM.TypeVisibility = Map.refHardwarePageVM.CurrHardware.VisibilityType
|
|
refNewHardwareV.DataContext = refNewhardwareVM
|
|
refNewHardwareV.Owner = Application.Current.MainWindow
|
|
refNewHardwareV.ShowDialog()
|
|
End If
|
|
|
|
End If
|
|
End Sub
|
|
|
|
#End Region ' NewCommand
|
|
|
|
#Region "SaveCommand"
|
|
|
|
Public ReadOnly Property SaveCommand As ICommand
|
|
Get
|
|
If m_cmdSave Is Nothing Then
|
|
m_cmdSave = New Command(AddressOf Save)
|
|
End If
|
|
Return m_cmdSave
|
|
End Get
|
|
End Property
|
|
|
|
Public Sub Save()
|
|
If Not IsNothing(Map.refHardwarePageVM.CurrHardware) Then Map.refHardwarePageVM.CurrHardware.Save()
|
|
End Sub
|
|
|
|
#End Region ' SaveCommand
|
|
|
|
#Region "OptionsCommand"
|
|
|
|
Public ReadOnly Property OptionsCommand As ICommand
|
|
Get
|
|
If m_cmdOptions Is Nothing Then
|
|
m_cmdOptions = New Command(AddressOf Options)
|
|
End If
|
|
Return m_cmdOptions
|
|
End Get
|
|
End Property
|
|
|
|
Public Sub Options(ByVal param As Object)
|
|
Dim OptionsWindow As New OptionsV
|
|
OptionsWindow.Height = 750
|
|
OptionsWindow.Width = 650
|
|
OptionsWindow.DataContext = New OptionsVM()
|
|
OptionsWindow.Owner = Application.Current.MainWindow
|
|
OptionsWindow.ShowDialog()
|
|
End Sub
|
|
|
|
#End Region ' OptionsCommand
|
|
|
|
#Region "SendFeedbackCommand"
|
|
|
|
''' <summary>
|
|
''' Returns a command that do SendFeedback.
|
|
''' </summary>
|
|
Public ReadOnly Property SendFeedbackCommand As ICommand
|
|
Get
|
|
If m_cmdSendFeedback Is Nothing Then
|
|
m_cmdSendFeedback = New Command(AddressOf SendFeedback)
|
|
End If
|
|
Return m_cmdSendFeedback
|
|
End Get
|
|
End Property
|
|
|
|
''' <summary>
|
|
''' Execute the SendFeedback. This method is invoked by the SendFeedbackCommand.
|
|
''' </summary>
|
|
Public Sub SendFeedback()
|
|
' Recupero indirizzo a cui spedire la mail
|
|
Dim sSupportAddress As String = String.Empty
|
|
GetMainPrivateProfileString(S_GENERAL, K_SUPPORT, "support@egaltech.com", sSupportAddress)
|
|
' se vuoto do messaggio di errore ed esco
|
|
If String.IsNullOrWhiteSpace(sSupportAddress) Then
|
|
MessageBox.Show(EgtMsg(MSG_TOPCOMMANDBAR + 10), EgtMsg(50101), MessageBoxButton.OK, MessageBoxImage.Error)
|
|
Return
|
|
End If
|
|
' Recupero numero chiave
|
|
Dim sKey As String = String.Empty
|
|
EgtGetKeyInfo(sKey)
|
|
' Recupero file del progetto corrente (tipo file .nge)
|
|
Dim sCurrProject As String = String.Empty
|
|
EgtGetCurrFilePath(sCurrProject)
|
|
' se nome file vuoto, chiedo se si vuole salvare (file .nge)
|
|
If String.IsNullOrWhiteSpace(sCurrProject) Then
|
|
If MessageBox.Show(EgtMsg(MSG_TOPCOMMANDBAR + 11), "", MessageBoxButton.YesNo, MessageBoxImage.Question) = MessageBoxResult.Yes Then
|
|
Save()
|
|
End If
|
|
EgtGetCurrFilePath(sCurrProject)
|
|
' se modificato, chiedo se si vuole salvare
|
|
Else
|
|
If EgtGetModified() Then
|
|
If MessageBox.Show(EgtMsg(MSG_TOPCOMMANDBAR + 11), "", MessageBoxButton.YesNo, MessageBoxImage.Question) = MessageBoxResult.Yes Then
|
|
Save()
|
|
End If
|
|
End If
|
|
End If
|
|
' recuro il file DDF associato al file .nge
|
|
Dim sCurrProjectDDF As String = String.Empty
|
|
sCurrProjectDDF = IniFile.m_sTempDir & "\CurrPart.ddf"
|
|
' recupero il file di log
|
|
Dim sFileLog As String = String.Empty
|
|
sFileLog = IniFile.m_sTempDir & "\EgtDOORCreatorLog1.txt"
|
|
|
|
' Creo zip file da allegare
|
|
Dim sZipToCreate As String = IniFile.m_sTempDir & "\Feedback.zip"
|
|
If File.Exists(sZipToCreate) Then
|
|
File.Delete(sZipToCreate)
|
|
End If
|
|
Try
|
|
Using zip As New Ionic.Zip.ZipFile(sZipToCreate, Console.Out)
|
|
' aggiungo progetto corrente .nge
|
|
If File.Exists(sCurrProject) Then
|
|
zip.AddItem(sCurrProject, "")
|
|
End If
|
|
' aggiungo progetto corrente .ddf
|
|
If File.Exists(sCurrProjectDDF) Then
|
|
zip.AddItem(sCurrProjectDDF, "")
|
|
End If
|
|
' aggiungo file log
|
|
If File.Exists(sFileLog) Then
|
|
zip.AddItem(sFileLog, "")
|
|
End If
|
|
' aggiungo la cartella Doors
|
|
If Directory.Exists(IniFile.m_sDoorsDirPath) Then
|
|
zip.AddItem(IniFile.m_sDoorsDirPath, "Doors")
|
|
End If
|
|
zip.Save()
|
|
End Using
|
|
Catch ex1 As Exception
|
|
EgtOutLog("Exception in zip: " & ex1.ToString())
|
|
End Try
|
|
|
|
' preparo la mail per il supporto
|
|
Dim bEx As Boolean = False
|
|
Try
|
|
Dim SendFeedbackWindow As New EgtWPFLib5.MapiMailMessage("EgtDOORCreator Feedback - " & sKey)
|
|
SendFeedbackWindow.Recipients.Add(sSupportAddress)
|
|
If Not String.IsNullOrWhiteSpace(sZipToCreate) AndAlso File.Exists(sZipToCreate) Then
|
|
SendFeedbackWindow.Files.Add(IniFile.m_sTempDir & "\Feedback.zip")
|
|
End If
|
|
SendFeedbackWindow.ShowDialog()
|
|
Catch ex As Exception
|
|
EgtOutLog("Feedback exception: " & ex.ToString)
|
|
bEx = True
|
|
End Try
|
|
If bEx OrElse EgtWPFLib5.MapiMailMessage.m_ErrorCode <> 0 Then
|
|
MessageBox.Show(String.Format(EgtMsg(MSG_TOPCOMMANDBAR + 12), sSupportAddress, sZipToCreate), EgtMsg(MSG_EGTDOORCREATOR + 118), MessageBoxButton.OK, MessageBoxImage.Information)
|
|
' stampo il messaggio nella StatusBar
|
|
Map.refStatusBarVM.StatusOutput = EgtMsg(MSG_TOPCOMMANDBAR + 14)
|
|
Else
|
|
' stampo il messaggio nella StatusBar
|
|
Map.refStatusBarVM.StatusOutput = EgtMsg(MSG_TOPCOMMANDBAR + 14)
|
|
End If
|
|
End Sub
|
|
|
|
#End Region ' SendFeedbackCommand
|
|
|
|
#Region "Guide"
|
|
Public ReadOnly Property GuideCommand As ICommand
|
|
Get
|
|
If m_cmdGuide Is Nothing Then
|
|
m_cmdGuide = New Command(AddressOf Guide)
|
|
End If
|
|
Return m_cmdGuide
|
|
End Get
|
|
End Property
|
|
|
|
Public Sub Guide()
|
|
Dim GuideWindow As New GuideV(Application.Current.MainWindow, New GuideVM)
|
|
GuideWindow.Show()
|
|
End Sub
|
|
|
|
#End Region ' Guide
|
|
|
|
#Region "Duplica"
|
|
|
|
Public ReadOnly Property DuplicaCommand As ICommand
|
|
Get
|
|
If m_cmdDuplica Is Nothing Then
|
|
m_cmdDuplica = New Command(AddressOf Duplica)
|
|
End If
|
|
Return m_cmdDuplica
|
|
End Get
|
|
End Property
|
|
|
|
Public Sub Duplica()
|
|
If Not IsNothing(Map.refHardwarePageVM) And Not IsNothing(Map.refHardwarePageVM.CurrHardware) Then
|
|
If String.IsNullOrEmpty(Map.refHardwarePageVM.CurrHardware.SelTemplate) Then
|
|
' Impossible to duplicate Hardware if there is no Hardware selected!
|
|
MessageBox.Show(EgtMsg(50185), EgtMsg(50101), MessageBoxButton.OK, MessageBoxImage.Exclamation)
|
|
Return
|
|
End If
|
|
If Map.refHardwarePageVM.CurrHardware.SaveControl() = Hardware.SaveResult.nCancel Then
|
|
Return
|
|
ElseIf Map.refHardwarePageVM.CurrHardware.SaveControl() = Hardware.SaveResult.nYes Then
|
|
Map.refHardwarePageVM.CurrHardware.Save()
|
|
End If
|
|
End If
|
|
If Not IsNothing(Map.refHardwarePageVM.CurrHardware) Then
|
|
Dim refNewHardwareV As New NewHardwareV
|
|
Dim OldHardwareName As String = Map.refHardwarePageVM.CurrHardware.CurrPath
|
|
Dim refNewhardwareVM As New NewHardwareVM(Map.refHardwarePageVM.CurrHardware.HardwareGeneral, NewHardwareVM.CommandList.nDuplicate)
|
|
refNewHardwareV.DataContext = refNewhardwareVM
|
|
refNewhardwareVM.TypeVisibility = Visibility.Collapsed
|
|
refNewHardwareV.Owner = Application.Current.MainWindow
|
|
refNewHardwareV.ShowDialog()
|
|
refNewHardwareV.Close()
|
|
' aggiorno la grafica sull'ultimo elemnto inserito
|
|
For Each ItemFile In Map.refHardwarePageVM.CurrHardware.TemplateList
|
|
If ItemFile = refNewhardwareVM.Template Then
|
|
Map.refHardwarePageVM.CurrHardware.ClearGroupChapters()
|
|
Map.refHardwarePageVM.CurrHardware.SelTemplate = ItemFile
|
|
Map.refHardwarePageVM.CurrHardware.ReadChapterTemplate()
|
|
Map.refHardwarePageVM.CurrHardware.ReadTemplate()
|
|
Map.refHardwarePageVM.CurrHardware.SetLayerName(refNewhardwareVM.Template)
|
|
Map.refHardwarePageVM.CurrHardware.NotifyPropertyChanged("SelTemplate")
|
|
Map.refHardwarePageVM.NotifyPropertyChanged("CurrHardware")
|
|
Map.refHardwarePageVM.CurrHardware.DuplicateGeometryName(OldHardwareName)
|
|
Map.refHardwarePageVM.CurrHardware.DuplicateFileLuaInAggreagate(OldHardwareName)
|
|
Map.refHardwarePageVM.CurrHardware.Save()
|
|
Exit For
|
|
End If
|
|
Next
|
|
End If
|
|
|
|
End Sub
|
|
|
|
|
|
#End Region ' Duplica
|
|
|
|
#Region "Delete"
|
|
|
|
Public ReadOnly Property DeleteCommand As ICommand
|
|
Get
|
|
If m_cmdDelete Is Nothing Then
|
|
m_cmdDelete = New Command(AddressOf Delete)
|
|
End If
|
|
Return m_cmdDelete
|
|
End Get
|
|
End Property
|
|
|
|
Public Sub Delete()
|
|
If Not IsNothing(Map.refHardwarePageVM) And Not IsNothing(Map.refHardwarePageVM.CurrHardware) Then
|
|
If String.IsNullOrEmpty(Map.refHardwarePageVM.CurrHardware.SelTemplate) Then
|
|
' Impossible to delete Hardware if there is no Hardware selected!
|
|
MessageBox.Show(EgtMsg(50184), EgtMsg(50101), MessageBoxButton.OK, MessageBoxImage.Exclamation)
|
|
Return
|
|
End If
|
|
'Some Doors could use this hardware, do you want to proceed deleting?
|
|
Select Case MessageBox.Show(EgtMsg(50183), EgtMsg(50101), MessageBoxButton.YesNo, MessageBoxImage.Exclamation)
|
|
Case MessageBoxResult.Yes
|
|
Map.refProjectManagerHardwareVM.IsModified = False
|
|
Dim LastCompoType As CompoType = Map.refHardwarePageVM.CurrHardware.HardwareGeneral
|
|
Dim TypeVisibility As Visibility = Map.refHardwarePageVM.CurrHardware.VisibilityType
|
|
Map.refHardwarePageVM.CurrHardware.DeleteHardware()
|
|
Map.refSceneManagerVM.RefreshBtn()
|
|
Case Else
|
|
End Select
|
|
End If
|
|
End Sub
|
|
|
|
#End Region ' Delete
|
|
|
|
#Region "Door"
|
|
|
|
Public ReadOnly Property DoorCommand As ICommand
|
|
Get
|
|
If m_cmdDoor Is Nothing Then
|
|
m_cmdDoor = New Command(AddressOf GoToPartPage)
|
|
End If
|
|
Return m_cmdDoor
|
|
End Get
|
|
End Property
|
|
|
|
Public Sub GoToPartPage()
|
|
' controllo che sia stato salvato
|
|
If Not IsNothing(Map.refHardwarePageVM) And Not IsNothing(Map.refHardwarePageVM.CurrHardware) Then
|
|
If Map.refHardwarePageVM.CurrHardware.SaveControl() = Hardware.SaveResult.nCancel Then
|
|
Return
|
|
ElseIf Map.refHardwarePageVM.CurrHardware.SaveControl() = Hardware.SaveResult.nYes Then
|
|
Map.refHardwarePageVM.CurrHardware.Save()
|
|
End If
|
|
' elimino il file temporaneo
|
|
Map.refHardwarePageVM.CurrHardware.DeleteTempFile()
|
|
End If
|
|
' abilito DimensioningPanel
|
|
Map.refDimensioningPanelVM.SetDimensioningPanel_Visibility(True)
|
|
'riporto la vista a top
|
|
'Map.refSceneManagerVM.ProjectScene.SetStatusNull()
|
|
EgtSetView(VT.TOP, False)
|
|
EgtZoom(ZM.ALL, False)
|
|
' torna all'EgtDOORCreator
|
|
Map.refMainWindowVM.StartReload = False
|
|
If OptionModule.m_ConfigurationSoftware = ConfigType.Assembly Then
|
|
Map.refMainWindowVM.SelectedPage = MainWindowVM.ListPageEnum.nAssemblyPage
|
|
Map.refRefreshPanelVM.ButtonVisibility = Visibility.Visible
|
|
Else
|
|
Map.refMainWindowVM.SelectedPage = MainWindowVM.ListPageEnum.nDDFPage
|
|
Map.refCompoPanelVM.GoBackVisibility = Visibility.Collapsed
|
|
Map.refMainWindowVM.ProjectNameMsg = ""
|
|
End If
|
|
'Map.refRefreshPanelVM.DimensionVisibility = Visibility.Collapsed
|
|
' elimino i riferimenti all'hardware corrente
|
|
Map.refHardwarePageVM.CurrHardware = Nothing
|
|
' spengo il focus su tutti i bottoni
|
|
For IndexCompoType As Integer = 0 To Map.refCompoPanelHardwareVM.CompoTypeList.Count - 1
|
|
Map.refCompoPanelHardwareVM.CompoTypeList(IndexCompoType).IsSelectedBtn = False
|
|
Next
|
|
Map.refHardwarePageVM.CompoPanelControl.DataContext = Map.refCompoPanelHardwareVM
|
|
'ShowDimensionCommand = Visibility.Collapsed
|
|
' apro l'ultimo progetto
|
|
LauncherModule.InitLauncherModule()
|
|
Map.refProjectManagerVM.DoorIsChecked = True
|
|
Assembly.Refreshing = False
|
|
Map.refProjectManagerVM.OpenLastProject()
|
|
Assembly.Refreshing = True
|
|
' controllo quale pagina deve essere avviata
|
|
If OptionModule.m_ConfigurationSoftware = ConfigType.Assembly AndAlso Map.refMainWindowVM.SelectedPage <> MainWindowVM.ListPageEnum.nNothingSelected Then
|
|
Map.refAssemblyPageVM.JambBtn(Map.refAssemblyPageVM.SlectedPart)
|
|
Else
|
|
Map.refSceneManagerVM.RefreshBtn()
|
|
End If
|
|
Map.refInstrumentPanelVM.DimensionVisibility = OptionModule.m_DimensionDoor
|
|
Map.refInstrumentPanelVM.SaveImgHardware = OptionModule.m_DimensionDoor
|
|
Map.refProjectManagerVM.NotifyPropertyChanged("VisibilityCreateAssembly")
|
|
Map.refRefreshPanelVM.DimensionVisibility = Visibility.Collapsed
|
|
CompoMatch.ResetSTU()
|
|
End Sub
|
|
|
|
Private m_HardwareIsChecked As Boolean =True
|
|
Public Property HardwareIsChecked As Boolean
|
|
Get
|
|
Return m_HardwareIsChecked
|
|
End Get
|
|
Set(value As Boolean)
|
|
m_HardwareIsChecked = value
|
|
NotifyPropertyChanged("HardwareIsChecked")
|
|
End Set
|
|
End Property
|
|
|
|
#End Region ' LastProject
|
|
|
|
'#Region "Dimension Part"
|
|
|
|
' Public ReadOnly Property DimensionCommand As ICommand
|
|
' Get
|
|
' If m_cmdDimensionPart Is Nothing Then
|
|
' m_cmdDimensionPart = New Command(AddressOf Dimension)
|
|
' End If
|
|
' Return m_cmdDimensionPart
|
|
' End Get
|
|
' End Property
|
|
|
|
' Public Sub Dimension()
|
|
' Dim ref_HardwarePartVM As New HardwarePartVM()
|
|
' Dim HardwarePartWnd As New HardwarePartV(Application.Current.MainWindow, ref_HardwarePartVM)
|
|
' HardwarePartWnd.ShowDialog()
|
|
' ref_GeometryListConfigVM = Nothing
|
|
' End Sub
|
|
|
|
'#End Region ' Dimension Part
|
|
|
|
#End Region ' Commands
|
|
|
|
Public Event PropertyChanged As PropertyChangedEventHandler Implements INotifyPropertyChanged.PropertyChanged
|
|
|
|
Public Sub NotifyPropertyChanged(propName As String)
|
|
RaiseEvent PropertyChanged(Me, New PropertyChangedEventArgs(propName))
|
|
End Sub
|
|
|
|
End Class |