Compare commits

...

9 Commits

Author SHA1 Message Date
Nicola Pievani 70737f3ad1 Aggiornamento versione 2025-02-06 09:20:42 +01:00
Nicola Pievani 28ac231cba Correzione caricamento istanze classi all'avvio 2025-01-30 12:04:23 +01:00
Nicola Pievani 201792b9cc Migliorata gestione avvio programma in cieco 2025-01-27 12:02:39 +01:00
Nicola Pievani f7ccde68f4 Correzione salvataggio Porta singola 2024-12-20 17:12:58 +01:00
Nicola Pievani d9f56bccf3 Lettura modalità di salvataggio da INI 2024-12-18 16:17:50 +01:00
Nicola Pievani 328d333e16 Migliorata gestione Assemblato e porta singola 2024-12-18 15:15:32 +01:00
Nicola Pievani 306798a7d5 Merge commit '52461712a85184583d4fdaa5caf68a73d2fd5664' 2024-12-09 15:32:49 +01:00
Nicola Pievani d4d4e3a9d7 Merge branch 'master' of https://gitlab.steamware.net/egaltech/EgtDOORCreator 2024-12-09 15:30:38 +01:00
Nicola Pievani 4525c6d780 Selezione anta in HardwareManager 2024-12-09 15:30:30 +01:00
12 changed files with 163 additions and 74 deletions
+24 -5
View File
@@ -1045,7 +1045,15 @@ Public Class Assembly
End Enum End Enum
' carico il valore finale restituito dalla lettura dell'assembalto (di default errore) ' carico il valore finale restituito dalla lettura dell'assembalto (di default errore)
Public bOk As ResultReadingAssembInfo = ResultReadingAssembInfo.ErrorInAssembInfo Private m_bOk As ResultReadingAssembInfo = ResultReadingAssembInfo.ErrorInAssembInfo
Public Property bOk As ResultReadingAssembInfo
Get
Return m_bOk
End Get
Set(value As ResultReadingAssembInfo)
m_bOk = value
End Set
End Property
' vettore di righe del file ddf in lettura ' vettore di righe del file ddf in lettura
Private FileContent() As String Private FileContent() As String
@@ -1497,7 +1505,13 @@ Public Class Assembly
sDoorPiece = sDoorPiece.Remove(sDoorPiece.LastIndexOf("_"c) + 1) sDoorPiece = sDoorPiece.Remove(sDoorPiece.LastIndexOf("_"c) + 1)
End If End If
Map.refCompoPanelVM.GoBackVisibility = Visibility.Visible Map.refCompoPanelVM.GoBackVisibility = Visibility.Visible
Map.refMainWindowVM.SelectedPage = MainWindowVM.ListPageEnum.nAssemblyPage ' verifico che la lettura dell'assemblato sia andato a buon fine
If Map.refAssemblyManagerVM.CurrProject.SelAssemblyName.SelAssembly.bOk = Assembly.ResultReadingAssembInfo.MissingAssembInfo Then
' forzo l'apertura della pagina DOOR
Map.refMainWindowVM.SelectedPage = MainWindowVM.ListPageEnum.nDDFPage
Else
Map.refMainWindowVM.SelectedPage = MainWindowVM.ListPageEnum.nAssemblyPage
End If
Else Else
' significa che stiamo per leggere una porta singola, cerco una porta ' significa che stiamo per leggere una porta singola, cerco una porta
If Not Local_Door.TypePart.Contains("DO_") Then If Not Local_Door.TypePart.Contains("DO_") Then
@@ -1726,7 +1740,7 @@ Public Class Assembly
' controllo degli oggetti caricati nell'assemblato ' controllo degli oggetti caricati nell'assemblato
Private Function ControlAssemblyInformation() As Boolean Private Function ControlAssemblyInformation() As Boolean
Dim ErrorMessages As String = String.Empty Dim ErrorMessages As String = String.Empty
Select Case bOk Select Case m_bOk
Case ResultReadingAssembInfo.CorrectAssembInfo Case ResultReadingAssembInfo.CorrectAssembInfo
If OptionModule.m_ConfigurationSoftware = ConfigType.Door Then If OptionModule.m_ConfigurationSoftware = ConfigType.Door Then
' 50520=The current ddf is an assembly ' 50520=The current ddf is an assembly
@@ -1780,9 +1794,9 @@ Public Class Assembly
Public Function ControlAssembly(Optional ByVal bSaving As Boolean = False) As String Public Function ControlAssembly(Optional ByVal bSaving As Boolean = False) As String
' se è una porta singola oppure le info generali non sono state caricate correttamente non controllo l'assemblato ' se è una porta singola oppure le info generali non sono state caricate correttamente non controllo l'assemblato
If bSaving Then If bSaving Then
If bOk <> ResultReadingAssembInfo.MissingAssembInfo Then Return String.Empty If m_bOk <> ResultReadingAssembInfo.MissingAssembInfo Then Return String.Empty
Else Else
If bOk = ResultReadingAssembInfo.ErrorInAssembInfo OrElse bOk = ResultReadingAssembInfo.MissingAssembInfo Then Return String.Empty If m_bOk = ResultReadingAssembInfo.ErrorInAssembInfo OrElse m_bOk = ResultReadingAssembInfo.MissingAssembInfo Then Return String.Empty
End If End If
Dim WritingError As String = String.Empty Dim WritingError As String = String.Empty
Dim DoorTypeList As String = String.Empty Dim DoorTypeList As String = String.Empty
@@ -2498,6 +2512,7 @@ Public Class Assembly
Map.refSceneManagerVM.RefreshBtn() Map.refSceneManagerVM.RefreshBtn()
Case "Height" Case "Height"
If m_bOk <> ResultReadingAssembInfo.CorrectAssembInfo Then Return
HeightJamb() HeightJamb()
HeightDoor() HeightDoor()
TopRabbetJamb() TopRabbetJamb()
@@ -2507,6 +2522,7 @@ Public Class Assembly
UpDateAllCompo() UpDateAllCompo()
Case "Width" Case "Width"
If m_bOk <> ResultReadingAssembInfo.CorrectAssembInfo Then Return
TopBottomWidth() TopBottomWidth()
TopRabbetJamb() TopRabbetJamb()
BottomRabbetJamb() BottomRabbetJamb()
@@ -2515,10 +2531,12 @@ Public Class Assembly
UpDateAllCompo() UpDateAllCompo()
Case "Thickness" Case "Thickness"
If m_bOk <> ResultReadingAssembInfo.CorrectAssembInfo Then Return
TopRabbetJamb() TopRabbetJamb()
UpDateAllCompo() UpDateAllCompo()
Case "Swing" Case "Swing"
If m_bOk <> ResultReadingAssembInfo.CorrectAssembInfo Then Return
UpDateCompolistOnJamb() UpDateCompolistOnJamb()
SwingJamb() SwingJamb()
SetPartDoorCurrAssembly() SetPartDoorCurrAssembly()
@@ -2526,6 +2544,7 @@ Public Class Assembly
'UpDateAllCompo() 'UpDateAllCompo()
Case "DoorNumber" Case "DoorNumber"
If m_bOk <> ResultReadingAssembInfo.CorrectAssembInfo Then Return
ClearRefOnAssembly() ClearRefOnAssembly()
SetPartDoorCurrAssembly() SetPartDoorCurrAssembly()
ReverseDoor() ReverseDoor()
+56 -12
View File
@@ -131,32 +131,65 @@ Public Class AssemblyManagerVM
' 50540 = The current ddf is a part of a frame, do you want to save? ' 50540 = The current ddf is a part of a frame, do you want to save?
If MessageBox.Show(EgtMsg(50540), EgtMsg(50144), MessageBoxButton.YesNo, MessageBoxImage.Warning, MessageBoxResult.No) = MessageBoxResult.Yes Then If MessageBox.Show(EgtMsg(50540), EgtMsg(50144), MessageBoxButton.YesNo, MessageBoxImage.Warning, MessageBoxResult.No) = MessageBoxResult.Yes Then
DdfFile.SaveErrorCompo = True DdfFile.SaveErrorCompo = True
DdfFile.WriteDDFPart(SavedAssName.SelAssembly.ListPartDoor(0).Door, SavedAssName.Name, True, False) Dim _IsDDF As Boolean = IsCurrentFileDDF(SavedAssName.Name)
DdfFile.WriteDDFPart(SavedAssName.SelAssembly.ListPartDoor(0).Door, SavedAssName.Name, _IsDDF, False)
DdfFile.SaveErrorCompo = False DdfFile.SaveErrorCompo = False
Else Else
Return False Return False
End If End If
Else Else
DdfFile.SaveErrorCompo = True DdfFile.SaveErrorCompo = True
DdfFile.WriteDDFPart(SavedAssName.SelAssembly.ListPartDoor(0).Door, SavedAssName.Name, True, False) Dim _IsDDF As Boolean = IsCurrentFileDDF(SavedAssName.Name)
DdfFile.WriteDDFPart(SavedAssName.SelAssembly.ListPartDoor(0).Door, SavedAssName.Name, _IsDDF, False)
DdfFile.SaveErrorCompo = False DdfFile.SaveErrorCompo = False
End If End If
Else Else
' se il ddf che sto leggendo è composto dal al massimo due parti significa che c'è un errore ' Se il ddf che sto leggendo è composto dal al massimo due parti significa che c'è un errore
If SavedAssName.SelAssembly.bOk = Assembly.ResultReadingAssembInfo.CorrectAssembInfo AndAlso If SavedAssName.SelAssembly.bOk = Assembly.ResultReadingAssembInfo.CorrectAssembInfo AndAlso
SavedAssName.SelAssembly.ListPartDoor.Count < 3 Then SavedAssName.SelAssembly.ListPartDoor.Count < 3 Then
' se sto salvando meno di tre componenti significa che mancano qualche pezzo per essere un assemblato ' Se sto salvando meno di tre componenti significa che mancano qualche pezzo per essere un assemblato
SavedAssName.SelAssembly.bOk = Assembly.ResultReadingAssembInfo.MissingAssembInfo SavedAssName.SelAssembly.bOk = Assembly.ResultReadingAssembInfo.MissingAssembInfo
End If End If
Dim ErrorMessage As String = SavedAssName.SelAssembly.ControlAssembly(True) Dim ErrorMessage As String = SavedAssName.SelAssembly.ControlAssembly(True)
Dim m_MessageBoxResult As MessageBoxResult = MessageBoxResult.Cancel
If Not String.IsNullOrEmpty(ErrorMessage) Then If Not String.IsNullOrEmpty(ErrorMessage) Then
If Not MessageBox.Show(ErrorMessage, EgtMsg(50144), MessageBoxButton.YesNo, MessageBoxImage.Warning, MessageBoxResult.No) = MessageBoxResult.Yes Then ' Richiedo di scegliere se salvare come porta singola oppure come assemblato (altrimenti annullo il salvataggio)
Return False If GetMainPrivateProfileInt(S_GENERAL, K_SAVEASSINGLEDOOR, 0) <> 0 Then
' 50732=Save as Assembly (YES), Single door (NO).
m_MessageBoxResult = MessageBox.Show(EgtMsg(50732), EgtMsg(50144), MessageBoxButton.YesNoCancel, MessageBoxImage.Warning, MessageBoxResult.No)
If m_MessageBoxResult = MessageBoxResult.Cancel Then
' interrompo il salvataggio
Return False
End If
If m_MessageBoxResult = MessageBoxResult.Yes Then
' Procedo a sovrascrivere il file come ASSEMBALTO
DdfFile.SaveErrorCompo = True
DdfFile.WriteDDFAssembly(SavedAssName.SelAssembly, SavedAssName.Name, True)
DdfFile.SaveErrorCompo = False
ElseIf m_MessageBoxResult = MessageBoxResult.No Then
' Procedo a sovrascrivere il file come SINGLE DOOR
DdfFile.SaveErrorCompo = True
Dim _IsDDF As Boolean = IsCurrentFileDDF(SavedAssName.Name)
DdfFile.WriteDDFPart(SavedAssName.SelAssembly.ListPartDoor(0).Door, SavedAssName.Name, _IsDDF, False)
DdfFile.SaveErrorCompo = False
End If
Else
' Avviso che sto per salvare una porta singola come assemblato (altrimenti annullo il salvataggio)
If Not MessageBox.Show(ErrorMessage, EgtMsg(50144), MessageBoxButton.YesNo, MessageBoxImage.Warning, MessageBoxResult.No) = MessageBoxResult.Yes Then
Return False
End If
' Procedo a sovrascrivere il file
DdfFile.SaveErrorCompo = True
DdfFile.WriteDDFAssembly(SavedAssName.SelAssembly, SavedAssName.Name, True)
DdfFile.SaveErrorCompo = False
End If End If
Else
' Non ci sono errori: procedo a sovrascrivere il file
DdfFile.SaveErrorCompo = True
DdfFile.WriteDDFAssembly(SavedAssName.SelAssembly, SavedAssName.Name, True)
DdfFile.SaveErrorCompo = False
End If End If
DdfFile.SaveErrorCompo = True
DdfFile.WriteDDFAssembly(SavedAssName.SelAssembly, SavedAssName.Name, True)
DdfFile.SaveErrorCompo = False
End If End If
' controllo che il salvataggio sia andato a buon fine ' controllo che il salvataggio sia andato a buon fine
@@ -984,8 +1017,10 @@ Public Class AssemblyManagerVM
If OptionModule.AdjustDDT Then If OptionModule.AdjustDDT Then
DdfFile.WriteDDFPart(OpenedAssName.SelAssembly.ListPartDoor(0).Door, OptionModule.SaveFileNameFromArgs, True, False) DdfFile.WriteDDFPart(OpenedAssName.SelAssembly.ListPartDoor(0).Door, OptionModule.SaveFileNameFromArgs, True, False)
' TERMINO TUTTO SUBITO ' TERMINO TUTTO SUBITO
BlindProgLog("Scrittura file '.ddf' terminata") EgtOutLog("Scrittura file '.ddf' terminata")
End EgtExit()
Application.Current.Shutdown(0)
Return True
End If End If
' aggiorno elenco quotature ' aggiorno elenco quotature
Map.refDimensioningPanelVM.LoadHardwareDimList() Map.refDimensioningPanelVM.LoadHardwareDimList()
@@ -1012,7 +1047,16 @@ Public Class AssemblyManagerVM
If Assembly.Refreshing Then EgtZoom(ZM.ALL) If Assembly.Refreshing Then EgtZoom(ZM.ALL)
m_CurrProject.SelAssemblyName.SelAssembly.MatchCompo() m_CurrProject.SelAssemblyName.SelAssembly.MatchCompo()
m_CurrProject.SelAssemblyName.SelAssembly.UpDateAllOrigValue() m_CurrProject.SelAssemblyName.SelAssembly.UpDateAllOrigValue()
Map.refMainWindowVM.SelectedPage = MainWindowVM.ListPageEnum.nAssemblyPage ' Se mancano le info per generare l'assemblato accedo direttamente alla prima porta
If m_CurrProject.SelAssemblyName.SelAssembly.bOk = Assembly.ResultReadingAssembInfo.MissingAssembInfo Then
If m_CurrProject.SelAssemblyName.SelAssembly.ListPartDoorOfDoor.Count > 0 Then
Map.refAssemblyPageVM.JambBtn(m_CurrProject.SelAssemblyName.SelAssembly.ListPartDoorOfDoor(0).Type)
Else
Map.refMainWindowVM.SelectedPage = MainWindowVM.ListPageEnum.nAssemblyPage
End If
Else
Map.refMainWindowVM.SelectedPage = MainWindowVM.ListPageEnum.nAssemblyPage
End If
End If End If
' ogni progetto salvato è l'ultimo da aprire, anche se il programma è chiuso dall'HardwareManager ' ogni progetto salvato è l'ultimo da aprire, anche se il programma è chiuso dall'HardwareManager
' controllo che esiste almeno un file aperto ' controllo che esiste almeno un file aperto
+1
View File
@@ -42,6 +42,7 @@ Module ConstIni
Public Const K_EGTCAMEXE As String = "EgtCam5Exe" Public Const K_EGTCAMEXE As String = "EgtCam5Exe"
Public Const K_REFRESHTIME As String = "RefreshTime" Public Const K_REFRESHTIME As String = "RefreshTime"
Public Const K_DDFVERSION As String = "DDFVersion" Public Const K_DDFVERSION As String = "DDFVersion"
Public Const K_SAVEASSINGLEDOOR As String = "SaveAsSingleDoor"
Public Const S_LANGUAGES As String = "Languages" Public Const S_LANGUAGES As String = "Languages"
Public Const K_LANGUAGE As String = "Language" Public Const K_LANGUAGE As String = "Language"
+4 -2
View File
@@ -1873,6 +1873,7 @@ Public Class Part
' Messaggi di errore generici, se la stringa dei messaggi contiene delle informazioni allora visualizzo ' Messaggi di errore generici, se la stringa dei messaggi contiene delle informazioni allora visualizzo
If Not String.IsNullOrWhiteSpace(sErrorInfo) Then If Not String.IsNullOrWhiteSpace(sErrorInfo) Then
Dim sTitle As String = EgtMsg(50101) Dim sTitle As String = EgtMsg(50101)
If Not IsNothing(ReadDoor) AndAlso Not IsNothing(ReadDoor.TypePart) Then sTitle &= ReadDoor.TypePart.ToString
' 50541 = {0} in reading {1}. ' 50541 = {0} in reading {1}.
If Not IsNothing(ReadDoor) Then String.Format(EgtMsg(50541), sTitle, ReadDoor.TypePart) If Not IsNothing(ReadDoor) Then String.Format(EgtMsg(50541), sTitle, ReadDoor.TypePart)
MessageBox.Show(sErrorInfo, sTitle, MessageBoxButton.OK, MessageBoxImage.Error) MessageBox.Show(sErrorInfo, sTitle, MessageBoxButton.OK, MessageBoxImage.Error)
@@ -3497,10 +3498,11 @@ Public Class Part
ElseIf nPartDoor > 1 Then ElseIf nPartDoor > 1 Then
' Assemblati ' Assemblati
Dim WdSelPartV As New SelectPartV() Dim WdSelPartV As New SelectPartV()
Dim WdSelPartVM As New SelectPartVM("Selezione della porta", "Selezione anta", nPartDoor, 1) ' 50233=Selezione della porta, 50234=Selezione anta
Dim WdSelPartVM As New SelectPartVM(EgtMsg(50233), EgtMsg(50234), nPartDoor, 1)
WdSelPartV.DataContext = WdSelPartVM WdSelPartV.DataContext = WdSelPartVM
WdSelPartV.ShowDialog() WdSelPartV.ShowDialog()
Dim nSelection As Integer = CInt(WdSelPartVM.Selection.Split(" "c)(1)) - 1 Dim nSelection As Integer = WdSelPartVM.nSelectedIndex
' Apro una finestra per chiedere quale anta usare come riferimento ' Apro una finestra per chiedere quale anta usare come riferimento
Dim LocalPartDoor As PartDoor = Map.refAssemblyManagerVM.CurrProject.SelAssemblyName.SelAssembly.ListPartDoor(nSelection) Dim LocalPartDoor As PartDoor = Map.refAssemblyManagerVM.CurrProject.SelAssemblyName.SelAssembly.ListPartDoor(nSelection)
Me.m_Width = LocalPartDoor.Door.m_Width Me.m_Width = LocalPartDoor.Door.m_Width
+2 -2
View File
@@ -76,8 +76,8 @@ Friend Class MainWindowModel
m_bAutoNest = Not String.IsNullOrWhiteSpace(sNestKey) m_bAutoNest = Not String.IsNullOrWhiteSpace(sNestKey)
' Recupero livello e opzioni della chiave ' Recupero livello e opzioni della chiave
Dim bKey As Boolean = EgtGetKeyLevel(3279, 2612, 1, IniFile.m_nKeyLevel) And Dim bKey As Boolean = EgtGetKeyLevel(3279, 2701, 1, IniFile.m_nKeyLevel) And
EgtGetKeyOptions(3279, 2612, 1, IniFile.m_nKeyOptions) EgtGetKeyOptions(3279, 2701, 1, IniFile.m_nKeyOptions)
'Inizializzazione generale di EgtInterface 'Inizializzazione generale di EgtInterface
m_nDebug = GetMainPrivateProfileInt(S_GENERAL, K_DEBUG, 0) m_nDebug = GetMainPrivateProfileInt(S_GENERAL, K_DEBUG, 0)
Dim sLogFile As String = IniFile.m_sTempDir & "\" & GENLOG_FILE_NAME.Replace("#", m_nInstance.ToString()) Dim sLogFile As String = IniFile.m_sTempDir & "\" & GENLOG_FILE_NAME.Replace("#", m_nInstance.ToString())
+11 -8
View File
@@ -1,4 +1,5 @@
Imports EgtWPFLib5 Imports EgtWPFLib5
Imports EgtUILib
Class MainWindowV Class MainWindowV
@@ -12,6 +13,7 @@ Class MainWindowV
InitializeComponent() InitializeComponent()
' Per leggere più argomenti devono essere scritti ognuno tra doppi apici e separati da spazio ' Per leggere più argomenti devono essere scritti ognuno tra doppi apici e separati da spazio
' Esempio:"Argomento 1 di prova" "Argomento 2 di prova" ' Esempio:"Argomento 1 di prova" "Argomento 2 di prova"
EgtOutLog(" 1 Numero argomenti: " & args.Length.ToString)
If args.Length > 0 Then If args.Length > 0 Then
m_args = args m_args = args
RunBlindCode() RunBlindCode()
@@ -32,7 +34,7 @@ Class MainWindowV
Private Sub MainWindowV_Unloaded(sender As Object, e As System.ComponentModel.CancelEventArgs) Handles Me.Closing Private Sub MainWindowV_Unloaded(sender As Object, e As System.ComponentModel.CancelEventArgs) Handles Me.Closing
' Salvo posizione finestra (se non minimizzata) ' Salvo posizione finestra (se non minimizzata)
If WindowState <> WindowState.Minimized Then If WindowState <> WindowState.Minimized And Not OptionModule.AdjustDDT Then
WinPosFromWindowToIni(Me, S_GENERAL, K_WINPLACE) WinPosFromWindowToIni(Me, S_GENERAL, K_WINPLACE)
End If End If
End Sub End Sub
@@ -50,33 +52,34 @@ Class MainWindowV
' Lettura degli argomenti e scrittura di un file di Log con i parametri caricati ' Lettura degli argomenti e scrittura di un file di Log con i parametri caricati
Private Sub ReadArgs() Private Sub ReadArgs()
If Not IsNothing(m_args) Then If Not IsNothing(m_args) Then
StartBlinProgdLog(IniFile.m_sTempDir & "\BlindProgLog.txt")
' leggo gli argomenti: Il programma si chiude appena termina la scrittura del file DDF ' leggo gli argomenti: Il programma si chiude appena termina la scrittura del file DDF
Dim Items() As String = m_args(0).Split(";"c) Dim Items() As String = m_args(0).Split(";"c)
EgtOutLog(" Argomenti: " & m_args.ToString)
If Items.Length >= 5 Then If Items.Length >= 5 Then
' Avvio progetto - LauncherOpt.Open_last_project (1) ' Avvio progetto - LauncherOpt.Open_last_project (1)
OptionModule.m_bLauncherOpenOnce = True OptionModule.m_bLauncherOpenOnce = True
' Indico il percorso del file ' Indico il percorso del file
OptionModule.FileNameFromArgs = Items(0) OptionModule.FileNameFromArgs = Items(0)
BlindProgLog(" File '.ddt' input : " & OptionModule.FileNameFromArgs) EgtOutLog(" File '.ddt' input : " & OptionModule.FileNameFromArgs)
' Assegno i valore Width, Height, Thickness ' Assegno i valore Width, Height, Thickness
OptionModule.m_Width = Items(1) OptionModule.m_Width = Items(1)
BlindProgLog(" width : " & OptionModule.m_Width) EgtOutLog(" width : " & OptionModule.m_Width)
OptionModule.m_Height = Items(2) OptionModule.m_Height = Items(2)
BlindProgLog(" height : " & OptionModule.m_Height) EgtOutLog(" height : " & OptionModule.m_Height)
OptionModule.m_Thickness = Items(3) OptionModule.m_Thickness = Items(3)
BlindProgLog(" thickness : " & OptionModule.m_Thickness) EgtOutLog(" thickness : " & OptionModule.m_Thickness)
' Indico il percoso di salvataggio file DDF ' Indico il percoso di salvataggio file DDF
OptionModule.SaveFileNameFromArgs = Items(4) OptionModule.SaveFileNameFromArgs = Items(4)
BlindProgLog(" File '.ddf' output : " & OptionModule.SaveFileNameFromArgs) EgtOutLog(" File '.ddf' output : " & OptionModule.SaveFileNameFromArgs)
' Nuovo parametro da laggere per gestione Swing ' Nuovo parametro da laggere per gestione Swing
If Items.Length = 6 Then If Items.Length = 6 Then
OptionModule.ForcesSideSwing = Items(5) OptionModule.ForcesSideSwing = Items(5)
BlindProgLog(" swing : " & OptionModule.ForcesSideSwing) EgtOutLog(" swing : " & OptionModule.ForcesSideSwing)
End If End If
' abilito lettura dati ' abilito lettura dati
OptionModule.AdjustDDT = True OptionModule.AdjustDDT = True
Else Else
EgtOutLog(" Argomenti non conformi")
' blocco lettura dati ' blocco lettura dati
OptionModule.AdjustDDT = False OptionModule.AdjustDDT = False
' TERMINO TUTTO SUBITO! ' TERMINO TUTTO SUBITO!
+18 -15
View File
@@ -65,10 +65,13 @@ Public Class MainWindowVM
Return m_SelectedPage Return m_SelectedPage
End Get End Get
Set(value As ListPageEnum) Set(value As ListPageEnum)
m_SelectedPage = value ' Verifico che sia una vera modifica
NotifyPropertyChanged("PageControl") If m_SelectedPage <> value Then
If Not IsNothing(Map.refInstrumentPanelVM) Then m_SelectedPage = value
Map.refInstrumentPanelVM.NotifyPropertyChanged("DimensionVisibility") NotifyPropertyChanged("PageControl")
If Not IsNothing(Map.refInstrumentPanelVM) Then
Map.refInstrumentPanelVM.NotifyPropertyChanged("DimensionVisibility")
End If
End If End If
End Set End Set
End Property End Property
@@ -86,20 +89,20 @@ Public Class MainWindowVM
Public ReadOnly Property PageControl As ContentControl Public ReadOnly Property PageControl As ContentControl
Get Get
If m_SelectedPage = ListPageEnum.nDDFPage Then If m_SelectedPage = ListPageEnum.nDDFPage Then
If OptionModule.m_SingleDoor then If OptionModule.m_SingleDoor Then
VisibilityAssemblyManager = Visibility.Hidden VisibilityAssemblyManager = Visibility.Hidden
Else Else
VisibilityAssemblyManager = Visibility.Visible VisibilityAssemblyManager = Visibility.Visible
End If End If
NotifyPropertyChanged("AssemblyManagerControl") NotifyPropertyChanged("AssemblyManagerControl")
NotifyPropertyChanged("ProjectManagerControl") NotifyPropertyChanged("ProjectManagerControl")
Return m_PartPage Return m_PartPage
ElseIf m_SelectedPage = ListPageEnum.nAssemblyPage Then ElseIf m_SelectedPage = ListPageEnum.nAssemblyPage Then
If OptionModule.m_SingleDoor then If OptionModule.m_SingleDoor Then
VisibilityAssemblyManager = Visibility.Hidden VisibilityAssemblyManager = Visibility.Hidden
Else Else
VisibilityAssemblyManager = Visibility.Visible VisibilityAssemblyManager = Visibility.Visible
End If End If
NotifyPropertyChanged("AssemblyManagerControl") NotifyPropertyChanged("AssemblyManagerControl")
NotifyPropertyChanged("ProjectManagerControl") NotifyPropertyChanged("ProjectManagerControl")
Return m_AssemblyPage Return m_AssemblyPage
@@ -109,11 +112,11 @@ Public Class MainWindowVM
NotifyPropertyChanged("ProjectManagerControl") NotifyPropertyChanged("ProjectManagerControl")
Return m_HardwarePage Return m_HardwarePage
Else Else
If OptionModule.m_SingleDoor then If OptionModule.m_SingleDoor Then
VisibilityAssemblyManager = Visibility.Hidden VisibilityAssemblyManager = Visibility.Hidden
Else Else
VisibilityAssemblyManager = Visibility.Visible VisibilityAssemblyManager = Visibility.Visible
End If End If
NotifyPropertyChanged("AssemblyManagerControl") NotifyPropertyChanged("AssemblyManagerControl")
NotifyPropertyChanged("ProjectManagerControl") NotifyPropertyChanged("ProjectManagerControl")
Return Nothing Return Nothing
@@ -139,7 +142,7 @@ Public Class MainWindowVM
Public ReadOnly Property ProjectManagerControl As ContentControl Public ReadOnly Property ProjectManagerControl As ContentControl
Get Get
If m_SelectedPage <> ListPageEnum.nHardwarePage then If m_SelectedPage <> ListPageEnum.nHardwarePage Then
Return m_ProjectManager Return m_ProjectManager
Else Else
ProjectNameMsg = "HardwareManager" ProjectNameMsg = "HardwareManager"
@@ -155,6 +158,7 @@ Public Class MainWindowVM
End Property End Property
Sub New() Sub New()
EgtOutLog(" Creazione e inizializzazone MainWondowVM ")
Map.SetRefMainWindowVM(Me) Map.SetRefMainWindowVM(Me)
m_AssemblyPage = New AssemblyPageV m_AssemblyPage = New AssemblyPageV
m_AssemblyPage.DataContext = New AssemblyPageVM m_AssemblyPage.DataContext = New AssemblyPageVM
@@ -168,7 +172,6 @@ Public Class MainWindowVM
m_HardwarePage.DataContext = New HardwarePageVM m_HardwarePage.DataContext = New HardwarePageVM
m_AssemblyManager = New AssemblyManagerV m_AssemblyManager = New AssemblyManagerV
m_AssemblyManager.DataContext = New AssemblyManagerVM m_AssemblyManager.DataContext = New AssemblyManagerVM
' inserisco la scena
m_SceneManager = New SceneManagerV m_SceneManager = New SceneManagerV
m_SceneManager.DataContext = New SceneManagerVM m_SceneManager.DataContext = New SceneManagerVM
Dim OptionsPage As OptionsVM = OptionPage Dim OptionsPage As OptionsVM = OptionPage
@@ -313,7 +316,7 @@ Public Class MainWindowVM
If m_SelectedPage = ListPageEnum.nHardwarePage Then Return If m_SelectedPage = ListPageEnum.nHardwarePage Then Return
If StartReload Then Return If StartReload Then Return
' 50545 = It has been deleted file: {0}, {1}. ' 50545 = It has been deleted file: {0}, {1}.
Dim Message As String = String.Format(EgtMsg(50545), e.FullPath, e.ChangeType) Dim Message As String = String.Format(EgtMsg(50545), e.FullPath, e.ChangeType)
selectedWatcher = WatcherCalling.OnDeleted selectedWatcher = WatcherCalling.OnDeleted
Application.Current.Dispatcher.BeginInvoke(New Action(Sub() Application.Current.Dispatcher.BeginInvoke(New Action(Sub()
RaiseEvent Er(Message, e.FullPath) RaiseEvent Er(Message, e.FullPath)
@@ -326,7 +329,7 @@ Public Class MainWindowVM
If m_SelectedPage = ListPageEnum.nHardwarePage Then Return If m_SelectedPage = ListPageEnum.nHardwarePage Then Return
If StartReload Then Return If StartReload Then Return
' 50543 = It has been renamed file: {0}, {1}. ' 50543 = It has been renamed file: {0}, {1}.
Dim Message As String = String.Format(EgtMsg(50543), e.FullPath, e.ChangeType) Dim Message As String = String.Format(EgtMsg(50543), e.FullPath, e.ChangeType)
selectedWatcher = WatcherCalling.OnRenamed selectedWatcher = WatcherCalling.OnRenamed
Application.Current.Dispatcher.BeginInvoke(New Action(Sub() Application.Current.Dispatcher.BeginInvoke(New Action(Sub()
RaiseEvent Er(Message, e.FullPath) RaiseEvent Er(Message, e.FullPath)
@@ -339,7 +342,7 @@ Public Class MainWindowVM
If m_SelectedPage = ListPageEnum.nHardwarePage Then Return If m_SelectedPage = ListPageEnum.nHardwarePage Then Return
If StartReload Then Return If StartReload Then Return
' 50544 = It has been created new file: {0}, {1}. ' 50544 = It has been created new file: {0}, {1}.
Dim Message As String =String.Format(EgtMsg(50544), e.FullPath, e.ChangeType) Dim Message As String = String.Format(EgtMsg(50544), e.FullPath, e.ChangeType)
selectedWatcher = WatcherCalling.OnCreated selectedWatcher = WatcherCalling.OnCreated
Application.Current.Dispatcher.BeginInvoke(New Action(Sub() Application.Current.Dispatcher.BeginInvoke(New Action(Sub()
RaiseEvent Er(Message, e.FullPath) RaiseEvent Er(Message, e.FullPath)
+3 -3
View File
@@ -32,7 +32,7 @@ Imports System.Windows
<Assembly: AssemblyCompany("Egalware s.r.l.")> <Assembly: AssemblyCompany("Egalware s.r.l.")>
<Assembly: AssemblyProduct("EgtDOORCreator")> <Assembly: AssemblyProduct("EgtDOORCreator")>
<Assembly: AssemblyCopyright("Copyright © 2016-2024 by Egalware s.r.l.")> <Assembly: AssemblyCopyright("Copyright © 2016-2025 by Egalware s.r.l.")>
<Assembly: AssemblyTrademark("")> <Assembly: AssemblyTrademark("")>
<Assembly: ComVisible(false)> <Assembly: ComVisible(false)>
@@ -72,5 +72,5 @@ Imports System.Windows
' by using the '*' as shown below: ' by using the '*' as shown below:
' <Assembly: AssemblyVersion("1.0.*")> ' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("2.6.12.1")> <Assembly: AssemblyVersion("2.7.1.1")>
<Assembly: AssemblyFileVersion("2.6.12.1")> <Assembly: AssemblyFileVersion("2.7.1.1")>
+4
View File
@@ -1006,6 +1006,10 @@ Public Class ProjectManagerVM
Else Else
EgtOutLog("LastProject '" & OptionModule.m_sLastProject & "' is not a file or does not exist!") EgtOutLog("LastProject '" & OptionModule.m_sLastProject & "' is not a file or does not exist!")
Map.refMainWindowVM.SelectedPage = MainWindowVM.ListPageEnum.nNothingSelected Map.refMainWindowVM.SelectedPage = MainWindowVM.ListPageEnum.nNothingSelected
If OptionModule.AdjustDDT Then
EgtExit()
Application.Current.Shutdown(3)
End If
Return Return
End If End If
Else Else
+3 -2
View File
@@ -6,7 +6,7 @@
Style="{DynamicResource {x:Type EgtWPFLib5:EgtCustomWindow}}" Style="{DynamicResource {x:Type EgtWPFLib5:EgtCustomWindow}}"
WindowStyle="None" ResizeMode="NoResize" TitleBarHeight="30" IsResizable="False" WindowStyle="None" ResizeMode="NoResize" TitleBarHeight="30" IsResizable="False"
IsMinimizable="False" WindowStartupLocation="CenterScreen" ShowInTaskbar="False" IsMinimizable="False" WindowStartupLocation="CenterScreen" ShowInTaskbar="False"
Height="100" Width="300" Topmost="True" Height="110" Width="300" Topmost="True"
DataContext="{Binding RelativeSource={RelativeSource Self}}"> DataContext="{Binding RelativeSource={RelativeSource Self}}">
<!--<EgtWPFLib5:EgtCustomWindow.Resources> <!--<EgtWPFLib5:EgtCustomWindow.Resources>
@@ -30,7 +30,8 @@
</UniformGrid> </UniformGrid>
<Button IsDefault="True" Name="OkBtn" Grid.Row="2" Grid.ColumnSpan="2" <Button IsDefault="True" Name="OkBtn" Grid.Row="2" Grid.ColumnSpan="2" HorizontalAlignment="Right"
Margin="0,0,5,0"
Content="{Binding SaveMsg}" Style="{DynamicResource EgtWPFLib5_InputButton}"/> Content="{Binding SaveMsg}" Style="{DynamicResource EgtWPFLib5_InputButton}"/>
</Grid> </Grid>
+25 -3
View File
@@ -7,6 +7,13 @@
End Get End Get
End Property End Property
Private m_SaveMsg As String = "Ok"
Public ReadOnly Property SaveMsg As String
Get
Return m_SaveMsg
End Get
End Property
Private m_PartDoorMsg As String = "Select part" Private m_PartDoorMsg As String = "Select part"
Public ReadOnly Property PartDoorMsg As String Public ReadOnly Property PartDoorMsg As String
Get Get
@@ -31,16 +38,31 @@
End Get End Get
Set(value As String) Set(value As String)
m_Selection = value m_Selection = value
m_nSelectedIndex = m_PartDoorList.IndexOf(m_Selection)
End Set End Set
End Property End Property
Private m_nSelectedIndex As Integer = 0
Public ReadOnly Property nSelectedIndex As Integer
Get
Return m_nSelectedIndex
End Get
End Property
Sub New(TitleWd As String, MsgWd As String, nParts As Integer, nIndex As Integer) Sub New(TitleWd As String, MsgWd As String, nParts As Integer, nIndex As Integer)
m_Title = TitleWd m_Title = TitleWd
m_PartDoorMsg = MsgWd m_PartDoorMsg = MsgWd
For Index As Integer = 0 To nParts - 1 For Each ItemDoor As PartDoor In Map.refAssemblyManagerVM.CurrProject.SelAssemblyName.SelAssembly.ListPartDoor
m_PartDoorList.Add("Door " & nParts.ToString) m_PartDoorList.Add(ItemDoor.Type)
Next Next
m_Selection = "Door " & nIndex.ToString If Not IsNothing(Map.refPartPageVM) AndAlso Not IsNothing(Map.refPartPageVM.CurrPart) AndAlso
Not IsNothing(Map.refPartPageVM.CurrPart.TypePart) Then
m_nSelectedIndex = m_PartDoorList.IndexOf(Map.refPartPageVM.CurrPart.TypePart)
Else
m_nSelectedIndex = 0
End If
m_Selection = m_PartDoorList(m_nSelectedIndex)
End Sub End Sub
End Class End Class
+12 -22
View File
@@ -270,6 +270,18 @@ Public Module Utility
Return Index Return Index
End Function End Function
' Verifica se il file/path indicato è ddf (true)
Friend Function IsCurrentFileDDF(sFileName As String) As Boolean
Dim IsDDF As Boolean = True
If Not String.IsNullOrEmpty(sFileName) AndAlso Path.HasExtension(sFileName) Then
Dim sExtension As String = Path.GetExtension(sFileName)
If sExtension.ToLower = DDT_EXTENSION Then
IsDDF = False
End If
End If
Return IsDDF
End Function
#Region "PARAM LUA" #Region "PARAM LUA"
' elimina i commenti nel file lua ' elimina i commenti nel file lua
@@ -707,28 +719,6 @@ Public Module Utility
Next Next
End Sub End Sub
#Region "Create Log"
Private sFileBlindProgLog As System.IO.StreamWriter
Private sFilePath As String = String.Empty
Public Sub StartBlinProgdLog(sPath As String)
sFilePath = sPath
sFileBlindProgLog = New System.IO.StreamWriter(sPath, True)
Dim sInfoStart As String = Date.Now.ToString & " Avvio programma in cieco"
sInfoStart &= vbCrLf & My.Application.Info.Version.Major.ToString() & "." & My.Application.Info.Version.Minor.ToString() &
(ChrW(97 - 1 + My.Application.Info.Version.Build)).ToString() & My.Application.Info.Version.Revision.ToString()
sFileBlindProgLog.WriteLine(sInfoStart)
sFileBlindProgLog.Close()
End Sub
Public Sub BlindProgLog(sMsg As String)
sFileBlindProgLog = File.AppendText(sFilePath)
sFileBlindProgLog.WriteLine(sMsg)
sFileBlindProgLog.Close()
End Sub
#End Region
End Module End Module
Public Class CompoBrandDir Public Class CompoBrandDir