Compare commits

...

11 Commits

Author SHA1 Message Date
Demetrio Cassarino 52461712a8 -modificato webbrouse da navigate a source 2024-12-09 15:31:38 +01:00
Demetrio Cassarino a814b83e87 -migliorata gestion customer 2024-12-09 11:32:29 +01:00
Nicola Pievani 316374761d Gestione Swing e miglioramenti avvio in cieco 2024-12-02 12:00:26 +01:00
Nicola Pievani a53f9ff352 Correzione stringa costanti 2024-11-25 17:58:35 +01:00
Nicola Pievani 5d32bb9ddf Migliorata gestione evidenziazione compo 2024-11-25 15:39:26 +01:00
Nicola Pievani 8006b66a01 Merge commit 'a97f84f49b32e3e9e2153ad583bfe2bd2814bb31' 2024-11-20 13:05:31 +01:00
Nicola Pievani faa6bd2b8c Migliorata gestione seleziona da scena 2024-11-19 16:37:46 +01:00
Nicola Pievani dd8be77fb5 Merge commit '301ec52bf3225311f9098b0083c7f24e3f3330e7' 2024-11-19 11:53:44 +01:00
Nicola Pievani dbc2b88e51 Merge branch 'master' of https://gitlab.steamware.net/egaltech/EgtDOORCreator 2024-11-18 18:11:20 +01:00
Nicola Pievani 11a270febf Merge commit '03f8312a3ddf9dd052fedcf091590d304af2b180' 2024-11-18 18:10:59 +01:00
Dario Sassi 61310b1579 Merge commit 'ac9f8354cc14656222fc701c1f1b91f80761ca46' 2024-10-10 19:17:58 +02:00
12 changed files with 139 additions and 117 deletions
+2 -1
View File
@@ -90,7 +90,8 @@ Module ConstIni
Public Const K_DDFFUNCTION As String = "DdfFun" Public Const K_DDFFUNCTION As String = "DdfFun"
Public Const K_MYPROJECTDIR As String = "ProjectDirectory" Public Const K_MYPROJECTDIR As String = "ProjectDirectory"
Public Const K_TEMPLATEDIR As String = "TemplateDirectory" Public Const K_TEMPLATEDIR As String = "TemplateDirectory"
Public Const K_MACHINDIR As String = "MachinDirectory" ' Correzione nome Chiave valore ver 2.6k2 "MachineDirectory"
Public Const K_MACHINDIR As String = "MachineDirectory"
Public Const K_MTABLE As String = "MTable" Public Const K_MTABLE As String = "MTable"
Public Const S_REPORT As String = "Report" Public Const S_REPORT As String = "Report"
+1 -5
View File
@@ -10,11 +10,7 @@ Module Modified
Map.refAssemblyManagerVM.CurrProject.SelAssemblyName.IsModified = True Map.refAssemblyManagerVM.CurrProject.SelAssemblyName.IsModified = True
If Not IsNothing(Map.refPartPageVM) AndAlso Not IsNothing(Map.refPartPageVM.CurrPart) Then If Not IsNothing(Map.refPartPageVM) AndAlso Not IsNothing(Map.refPartPageVM.CurrPart) Then
For Each Compo In Map.refPartPageVM.CurrPart.CompoList For Each Compo In Map.refPartPageVM.CurrPart.CompoList
Compo.BorderColor = DirectCast(New BrushConverter().ConvertFrom("#DCDCDC"), SolidColorBrush) Compo.ResetMark()
Compo.BackGroundColor = DirectCast(New BrushConverter().ConvertFrom("#FFFFFF"), SolidColorBrush)
Compo.Foreground = DirectCast(New BrushConverter().ConvertFrom("#000000"), SolidColorBrush)
Compo.BorderThickness = 1
Compo.FontBold = FontWeights.Normal
Next Next
End If End If
Else Else
+8 -4
View File
@@ -1535,7 +1535,7 @@ Public Class Part
' ontengo la posizione prevista nella grafica ' ontengo la posizione prevista nella grafica
Dim IndexInList As Integer = DdfFile.GetIndexInList(TempList, m_SelCompo) Dim IndexInList As Integer = DdfFile.GetIndexInList(TempList, m_SelCompo)
' recupero la lista ordinata ' recupero la lista ordinata
Dim sCompoName As String = m_SelCompo.SelFile Dim sCompoName As String = m_SelCompo.TemplateSelItem
' recupero il primo part disponibile ' recupero il primo part disponibile
Dim nIdFirstPart As Integer = EgtGetFirstPart() Dim nIdFirstPart As Integer = EgtGetFirstPart()
Dim nIdLay As Integer = EgtGetFirstLayer(nIdFirstPart) Dim nIdLay As Integer = EgtGetFirstLayer(nIdFirstPart)
@@ -1543,12 +1543,12 @@ Public Class Part
While nIdLay <> GDB_ID.NULL While nIdLay <> GDB_ID.NULL
Dim sInfoPath As String = String.Empty Dim sInfoPath As String = String.Empty
If EgtGetInfo(nIdLay, "Path", sInfoPath) Then If EgtGetInfo(nIdLay, "Path", sInfoPath) Then
Dim sNamePath As String = Path.GetFileNameWithoutExtension(sInfoPath) Dim sNamePath As String = sInfoPath
If sNamePath = sCompoName And IndexLay = IndexInList Then If sNamePath.Contains(sCompoName) And IndexLay = IndexInList Then
EgtSetMark(nIdLay) EgtSetMark(nIdLay)
m_SelCompo.SetMark() m_SelCompo.SetMark()
Exit While Exit While
ElseIf sNamePath = sCompoName And IndexLay < IndexInList Then ElseIf sNamePath.Contains(sCompoName) And IndexLay < IndexInList Then
IndexLay = IndexLay + 1 IndexLay = IndexLay + 1
End If End If
End If End If
@@ -2172,6 +2172,10 @@ Public Class Part
MessageBox.Show(String.Format(EgtMsg(50141), ConstIni.K_SWING_INI) & EgtMsg(50159), EgtMsg(50101), MessageBoxButton.OK, MessageBoxImage.Error) MessageBox.Show(String.Format(EgtMsg(50141), ConstIni.K_SWING_INI) & EgtMsg(50159), EgtMsg(50101), MessageBoxButton.OK, MessageBoxImage.Error)
Else Else
' carico il valore nella porta corrente ' carico il valore nella porta corrente
If m_refPartDoor.IsTemplate And OptionModule.AdjustDDT AndAlso Not String.IsNullOrEmpty(OptionModule.ForcesSideSwing) Then
Swing = Swing.Remove(0, 1)
Swing = OptionModule.ForcesSideSwing & Swing
End If
m_Swing = Swing m_Swing = Swing
OptionModule.SetCurrSwing(m_SwingAlias, m_Swing) OptionModule.SetCurrSwing(m_SwingAlias, m_Swing)
If IsNothing(m_SwingAlias) Then Return -1 If IsNothing(m_SwingAlias) Then Return -1
+10 -12
View File
@@ -1,19 +1,17 @@
<EgtWPFLib5:EgtCustomWindow x:Class="GuideV" <EgtWPFLib5:EgtCustomWindow x:Class="GuideV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5" xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"
Title="{Binding Title}" Icon="/Resources/EgtDOOR.ico" Title="{Binding Title}" Icon="/Resources/EgtDOOR.ico"
TitleBarBrush="{StaticResource EgaltechBlue1}" TitleBarBrush="{StaticResource EgaltechBlue1}"
BorderBrush="{StaticResource EgaltechBlue1}" BorderBrush="{StaticResource EgaltechBlue1}"
WindowStyle="None" ResizeMode="NoResize" TitleBarHeight="30" IsResizable="True" WindowStyle="None" ResizeMode="NoResize" TitleBarHeight="30" IsResizable="True"
IsMinimizable="True" WindowStartupLocation="CenterScreen" ShowInTaskbar="False" IsMinimizable="True" WindowStartupLocation="CenterScreen" ShowInTaskbar="False"
CloseCommand="{Binding CloseOptionsCommand,Mode=OneWay,UpdateSourceTrigger=PropertyChanged}" CloseCommand="{Binding CloseOptionsCommand,Mode=OneWay,UpdateSourceTrigger=PropertyChanged}"
Height="800" Width="1500"> Height="800" Width="1500">
<DockPanel Margin="5"> <DockPanel Margin="5">
<WebBrowser x:Name="DoorBrowser"/> <WebBrowser x:Name="DoorBrowser"/>
</DockPanel> </DockPanel>
</EgtWPFLib5:EgtCustomWindow> </EgtWPFLib5:EgtCustomWindow>
+2 -2
View File
@@ -20,10 +20,10 @@ Public Class GuideV
Dim sHelpDir As String = String.Empty Dim sHelpDir As String = String.Empty
If OptionModule.m_SmartHelp = HelpPage.LocalHost Then If OptionModule.m_SmartHelp = HelpPage.LocalHost Then
sHelpDir = IniFile.m_sHelpDir.Replace("C:", "file://127.0.0.1/c$") sHelpDir = IniFile.m_sHelpDir.Replace("C:", "file://127.0.0.1/c$")
DoorBrowser.Navigate(New Uri(sHelpDir & "\" & m_Language & "\" & GuideVM.m_AddressGuide & ".html")) DoorBrowser.Source = New Uri(sHelpDir & "\" & m_Language & "\" & GuideVM.m_AddressGuide & ".html")
ElseIf OptionModule.m_SmartHelp = HelpPage.WebBrowserVB Then ElseIf OptionModule.m_SmartHelp = HelpPage.WebBrowserVB Then
sHelpDir = IniFile.m_sHelpDir sHelpDir = IniFile.m_sHelpDir
DoorBrowser.Navigate(New Uri(sHelpDir & "\" & m_Language & "\" & GuideVM.m_AddressGuide & ".html")) DoorBrowser.Source = New Uri(sHelpDir & "\" & m_Language & "\" & GuideVM.m_AddressGuide & ".html")
Else Else
sHelpDir = IniFile.m_sHelpDir sHelpDir = IniFile.m_sHelpDir
Try Try
+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, 2611, 1, IniFile.m_nKeyLevel) And Dim bKey As Boolean = EgtGetKeyLevel(3279, 2612, 1, IniFile.m_nKeyLevel) And
EgtGetKeyOptions(3279, 2611, 1, IniFile.m_nKeyOptions) EgtGetKeyOptions(3279, 2612, 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())
+40 -56
View File
@@ -27,33 +27,7 @@ Class MainWindowV
Private Sub MainWindowV_ContentRendered(sender As Object, e As EventArgs) Handles Me.ContentRendered Private Sub MainWindowV_ContentRendered(sender As Object, e As EventArgs) Handles Me.ContentRendered
' se è assente la chiave di protezione non mostro la finestra Launcher ' se è assente la chiave di protezione non mostro la finestra Launcher
If Map.refSceneManagerVM.bProtectKey Then RunBlindCode()
If Not IsNothing(m_args) Then
' leggo gli argomenti: Il programma si chiude appena termina la scrittura del file DDF
Dim Items() As String = m_args(0).Split(";"c)
If Items.Length = 5 Then
' Avvio progetto - LauncherOpt.Open_last_project (1)
OptionModule.m_bLauncherOpenOnce = True
' Indico il percorso del file
OptionModule.FileNameFromArgs = Items(0)
' Assegno i valore Width, Height, Thickness
OptionModule.m_Width = Items(1)
OptionModule.m_Height = Items(2)
OptionModule.m_Thickness = Items(3)
' Indico il percoso di salvataggio file DDF
OptionModule.SaveFileNameFromArgs = Items(4)
' abilito lettura dati
OptionModule.AdjustDDT = True
Else
' blocco lettura dati
OptionModule.AdjustDDT = False
' TERMINO TUTTO SUBITO!
End
End If
End If
Map.refMainWindowVM.SetLauncher()
Map.refMainWindowVM.ShowErrorCompoLoad()
End If
End Sub End Sub
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
@@ -67,38 +41,48 @@ Class MainWindowV
Private Sub RunBlindCode() Private Sub RunBlindCode()
If Map.refSceneManagerVM.bProtectKey Then If Map.refSceneManagerVM.bProtectKey Then
If Not IsNothing(m_args) Then ReadArgs()
StartBlinProgdLog(IniFile.m_sTempDir & "\BlindProgLog.txt")
' leggo gli argomenti: Il programma si chiude appena termina la scrittura del file DDF
Dim Items() As String = m_args(0).Split(";"c)
If Items.Length = 5 Then
' Avvio progetto - LauncherOpt.Open_last_project (1)
OptionModule.m_bLauncherOpenOnce = True
' Indico il percorso del file
OptionModule.FileNameFromArgs = Items(0)
BlindProgLog(" File '.ddt' input : " & OptionModule.FileNameFromArgs)
' Assegno i valore Width, Height, Thickness
OptionModule.m_Width = Items(1)
BlindProgLog(" width : " & OptionModule.m_Width)
OptionModule.m_Height = Items(2)
BlindProgLog(" height : " & OptionModule.m_Height)
OptionModule.m_Thickness = Items(3)
BlindProgLog(" thickness : " & OptionModule.m_Thickness)
' Indico il percoso di salvataggio file DDF
OptionModule.SaveFileNameFromArgs = Items(4)
BlindProgLog(" File '.ddf' output : " & OptionModule.SaveFileNameFromArgs)
' abilito lettura dati
OptionModule.AdjustDDT = True
Else
' blocco lettura dati
OptionModule.AdjustDDT = False
' TERMINO TUTTO SUBITO!
End
End If
End If
Map.refMainWindowVM.SetLauncher() Map.refMainWindowVM.SetLauncher()
Map.refMainWindowVM.ShowErrorCompoLoad() Map.refMainWindowVM.ShowErrorCompoLoad()
End If End If
End Sub End Sub
' Lettura degli argomenti e scrittura di un file di Log con i parametri caricati
Private Sub ReadArgs()
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
Dim Items() As String = m_args(0).Split(";"c)
If Items.Length >= 5 Then
' Avvio progetto - LauncherOpt.Open_last_project (1)
OptionModule.m_bLauncherOpenOnce = True
' Indico il percorso del file
OptionModule.FileNameFromArgs = Items(0)
BlindProgLog(" File '.ddt' input : " & OptionModule.FileNameFromArgs)
' Assegno i valore Width, Height, Thickness
OptionModule.m_Width = Items(1)
BlindProgLog(" width : " & OptionModule.m_Width)
OptionModule.m_Height = Items(2)
BlindProgLog(" height : " & OptionModule.m_Height)
OptionModule.m_Thickness = Items(3)
BlindProgLog(" thickness : " & OptionModule.m_Thickness)
' Indico il percoso di salvataggio file DDF
OptionModule.SaveFileNameFromArgs = Items(4)
BlindProgLog(" File '.ddf' output : " & OptionModule.SaveFileNameFromArgs)
' Nuovo parametro da laggere per gestione Swing
If Items.Length = 6 Then
OptionModule.ForcesSideSwing = Items(5)
BlindProgLog(" swing : " & OptionModule.ForcesSideSwing)
End If
' abilito lettura dati
OptionModule.AdjustDDT = True
Else
' blocco lettura dati
OptionModule.AdjustDDT = False
' TERMINO TUTTO SUBITO!
End
End If
End If
End Sub
End Class End Class
+2 -2
View File
@@ -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.11.2")> <Assembly: AssemblyVersion("2.6.12.1")>
<Assembly: AssemblyFileVersion("2.6.11.2")> <Assembly: AssemblyFileVersion("2.6.12.1")>
+2
View File
@@ -11,6 +11,8 @@ Friend Module OptionModule
Friend AdjustDDT As Boolean = False Friend AdjustDDT As Boolean = False
Friend FileNameFromArgs As String = String.Empty Friend FileNameFromArgs As String = String.Empty
Friend SaveFileNameFromArgs As String = String.Empty Friend SaveFileNameFromArgs As String = String.Empty
' Forza la scrittura dello swing Left(L..) oppure Right(R..)
Friend ForcesSideSwing As String = String.Empty
' Parametri che contengono lista delle lingue disponibili e lingua selezionata ' Parametri che contengono lista delle lingue disponibili e lingua selezionata
Friend m_LanguageList As New ObservableCollection(Of Language) Friend m_LanguageList As New ObservableCollection(Of Language)
+14 -10
View File
@@ -66,10 +66,18 @@ Public Class OrderVM
End Get End Get
End Property End Property
Private Function VerifyNotIsNothing() As Boolean
If IsNothing(Map.refAssemblyManagerVM.CurrProject.SelAssemblyName) OrElse
IsNothing(Map.refAssemblyManagerVM.CurrProject.SelAssemblyName.SelAssembly) OrElse
Map.refAssemblyManagerVM.CurrProject.SelAssemblyName.SelAssembly.ListPartDoor.Count > 0 Then
Return False
End If
Return True
End Function
Public Property Customer As String Public Property Customer As String
Get Get
If IsNothing(Map.refAssemblyManagerVM.CurrProject.SelAssemblyName) AndAlso If Not VerifyNotIsNothing() Then Return Nothing
Map.refAssemblyManagerVM.CurrProject.SelAssemblyName.SelAssembly.ListPartDoor.Count > 0 Then Return Nothing
Return Map.refAssemblyManagerVM.CurrProject.SelAssemblyName.SelAssembly.ListPartDoor(0).Door.Customer Return Map.refAssemblyManagerVM.CurrProject.SelAssemblyName.SelAssembly.ListPartDoor(0).Door.Customer
End Get End Get
Set(value As String) Set(value As String)
@@ -83,8 +91,7 @@ Public Class OrderVM
Public Property Elevation As String Public Property Elevation As String
Get Get
If IsNothing(Map.refAssemblyManagerVM.CurrProject.SelAssemblyName) AndAlso If Not VerifyNotIsNothing() Then Return Nothing
Map.refAssemblyManagerVM.CurrProject.SelAssemblyName.SelAssembly.ListPartDoor.Count > 0 Then Return Nothing
Return Map.refAssemblyManagerVM.CurrProject.SelAssemblyName.SelAssembly.ListPartDoor(0).Door.Elevation Return Map.refAssemblyManagerVM.CurrProject.SelAssemblyName.SelAssembly.ListPartDoor(0).Door.Elevation
End Get End Get
Set(value As String) Set(value As String)
@@ -98,8 +105,7 @@ Public Class OrderVM
Public Property Project As String Public Property Project As String
Get Get
If IsNothing(Map.refAssemblyManagerVM.CurrProject.SelAssemblyName) AndAlso If Not VerifyNotIsNothing() Then Return Nothing
Map.refAssemblyManagerVM.CurrProject.SelAssemblyName.SelAssembly.ListPartDoor.Count > 0 Then Return Nothing
Return Map.refAssemblyManagerVM.CurrProject.SelAssemblyName.SelAssembly.ListPartDoor(0).Door.Project Return Map.refAssemblyManagerVM.CurrProject.SelAssemblyName.SelAssembly.ListPartDoor(0).Door.Project
End Get End Get
Set(value As String) Set(value As String)
@@ -113,8 +119,7 @@ Public Class OrderVM
Public Property PO As String Public Property PO As String
Get Get
If IsNothing(Map.refAssemblyManagerVM.CurrProject.SelAssemblyName) AndAlso If Not VerifyNotIsNothing() Then Return Nothing
Map.refAssemblyManagerVM.CurrProject.SelAssemblyName.SelAssembly.ListPartDoor.Count > 0 Then Return Nothing
Return Map.refAssemblyManagerVM.CurrProject.SelAssemblyName.SelAssembly.ListPartDoor(0).Door.PO Return Map.refAssemblyManagerVM.CurrProject.SelAssemblyName.SelAssembly.ListPartDoor(0).Door.PO
End Get End Get
Set(value As String) Set(value As String)
@@ -128,8 +133,7 @@ Public Class OrderVM
Public Property Line As String Public Property Line As String
Get Get
If IsNothing(Map.refAssemblyManagerVM.CurrProject.SelAssemblyName) AndAlso If Not VerifyNotIsNothing() Then Return Nothing
Map.refAssemblyManagerVM.CurrProject.SelAssemblyName.SelAssembly.ListPartDoor.Count > 0 Then Return Nothing
Return Map.refAssemblyManagerVM.CurrProject.SelAssemblyName.SelAssembly.ListPartDoor(0).Door.Line Return Map.refAssemblyManagerVM.CurrProject.SelAssemblyName.SelAssembly.ListPartDoor(0).Door.Line
End Get End Get
Set(value As String) Set(value As String)
+50 -23
View File
@@ -172,7 +172,7 @@ Public Class SceneManagerVM
' Chiudo il programma ' Chiudo il programma
End End
End If End If
Return m_ProjectSceneHost Return m_ProjectSceneHost
End Get End Get
End Property End Property
@@ -346,7 +346,7 @@ Public Class SceneManagerVM
ElseIf Map.refMainWindowVM.SelectedPage = MainWindowVM.ListPageEnum.nAssemblyPage Then ElseIf Map.refMainWindowVM.SelectedPage = MainWindowVM.ListPageEnum.nAssemblyPage Then
If Not EnableRefresh Then Return If Not EnableRefresh Then Return
' Verifico esista elemento selezionato ' Verifico esista elemento selezionato
If IsNothing(Map.refAssemblyManagerVM.CurrProject.SelAssemblyName) orelse IsNothing(Map.refAssemblyPageVM.CurrAssembly) Then Return If IsNothing(Map.refAssemblyManagerVM.CurrProject.SelAssemblyName) OrElse IsNothing(Map.refAssemblyPageVM.CurrAssembly) Then Return
DdfFile.WriteDDFAssembly(Map.refAssemblyPageVM.CurrAssembly, sTempFile, True) DdfFile.WriteDDFAssembly(Map.refAssemblyPageVM.CurrAssembly, sTempFile, True)
ExecDoors(m_ProjectScene, sTempFile, False) ExecDoors(m_ProjectScene, sTempFile, False)
' mantengo i layer accesi ' mantengo i layer accesi
@@ -445,6 +445,7 @@ Public Class SceneManagerVM
Return Return
End If End If
Dim LocalCompoList As ObservableCollection(Of Compo) = Map.refPartPageVM.CurrPart.CompoList Dim LocalCompoList As ObservableCollection(Of Compo) = Map.refPartPageVM.CurrPart.CompoList
' Ripulisco la scena da i Mark
Map.refPartPageVM.CurrPart.ResetAllMark() Map.refPartPageVM.CurrPart.ResetAllMark()
' Se la lista dei componenti è vuota allora esco ' Se la lista dei componenti è vuota allora esco
If Map.refPartPageVM.CurrPart.CompoList.Count < 1 Then Return If Map.refPartPageVM.CurrPart.CompoList.Count < 1 Then Return
@@ -464,7 +465,7 @@ Public Class SceneManagerVM
If Not sNameLayer.StartsWith("AUX") Or Not sNameLayer.StartsWith("SOLID") Or Not sNameLayer.StartsWith("DIM") Then If Not sNameLayer.StartsWith("AUX") Or Not sNameLayer.StartsWith("SOLID") Or Not sNameLayer.StartsWith("DIM") Then
' scorro l'elenco dei componenti fino a trovare un riscontro tra i nomi e i parametri ' scorro l'elenco dei componenti fino a trovare un riscontro tra i nomi e i parametri
For Each ItemCompo As Compo In LocalCompoList For Each ItemCompo As Compo In LocalCompoList
MatchCompoFromScena(nIdParent, ItemCompo, LocalCompoList) If MatchCompoFromScena(nIdParent, ItemCompo, LocalCompoList) Then Exit While
Next Next
End If End If
End If End If
@@ -473,36 +474,62 @@ Public Class SceneManagerVM
End While End While
End Sub End Sub
Private Sub MatchCompoFromScena(nIdLay As Integer, CurrCompo As Compo, CompoList As ObservableCollection(Of Compo)) Private Function MatchCompoFromScena(nIdLay As Integer, CurrCompo As Compo, CompoList As ObservableCollection(Of Compo)) As Boolean
If IsNothing(CurrCompo) Then Return If IsNothing(CurrCompo) Then Return True
'ResetAllMark()
' recupero la lista dei compo dello stesso tipo ' recupero la lista dei compo dello stesso tipo
Dim TempList As ObservableCollection(Of Compo) = DdfFile.GetCurrentListSameCompoType(CompoList, CurrCompo.CompoType.DDFName) Dim TempList As ObservableCollection(Of Compo) = DdfFile.GetCurrentListSameCompoType(CompoList, CurrCompo.CompoType.DDFName)
' recupero la lista dei compo con lo stesso nome ' recupero la lista dei compo con lo stesso nome
TempList = DdfFile.GetCurrentListSameCompoDDFName(TempList, CurrCompo.SelFile, CurrCompo.SelBrandPart) TempList = DdfFile.GetCurrentListSameCompoDDFName(TempList, CurrCompo.SelFile, CurrCompo.SelBrandPart)
' riordino la lista appena trovata secondo le regole di stampa DDF ' riordino la lista appena trovata secondo le regole di stampa DDF
DdfFile.GetOrderedListSameCompo(TempList) DdfFile.GetOrderedListSameCompo(TempList)
' ontengo la posizione prevista nella grafica ' ottengo la posizione prevista nella grafica
Dim IndexInList As Integer = DdfFile.GetIndexInList(TempList, CurrCompo) Dim IndexInList As Integer = DdfFile.GetIndexInList(TempList, CurrCompo)
' recupero la lista ordinata ' recupero la lista ordinata
Dim sCompoName As String = CurrCompo.SelFile Dim sCompoName As String = CurrCompo.TemplateSelItem
' recupero il primo part disponibile ' oridnamento del layer
Dim IndexLay As Integer = 0 Dim IndexLay As Integer = -1
If nIdLay <> GDB_ID.NULL Then ' recupero il nome della comaponente selezionata con MouseOver
Dim sInfoPath As String = String.Empty Dim sInfoPath As String = String.Empty
If EgtGetInfo(nIdLay, "Path", sInfoPath) Then If Not EgtGetInfo(nIdLay, "Path", sInfoPath) Then Return True
Dim sNamePath As String = Path.GetFileNameWithoutExtension(sInfoPath) ' Dim sNamePath As String = Path.GetFileNameWithoutExtension(sInfoPath)
If sNamePath = sCompoName And IndexLay = IndexInList Then Dim sNamePath As String = sInfoPath
EgtSetMark(nIdLay) 'If sNamePath = sCompoName Then
' evidenzio la compo corrente If sNamePath.Contains(sCompoName) Then
CurrCompo.SetMark() Dim nCurrLayId As Integer = nIdLay
ElseIf sNamePath = sCompoName And IndexLay < IndexInList Then Dim nCounter As Integer = 1
IndexLay = IndexLay + 1 While nCurrLayId <> GDB_ID.NULL
nCurrLayId = EgtGetNext(nCurrLayId)
Dim LocalsPath As String = String.Empty
If EgtGetInfo(nCurrLayId, "Path", LocalsPath) Then
If sNamePath.Trim = LocalsPath.Trim Then
nCounter += 1
End If
End If End If
End If End While
IndexLay = TempList.Count - nCounter
End If End If
EgtDraw() ' la compo passata non ha lo stesso nome, quindi mi aspetto un'altra compo
End Sub If IndexLay = -1 Then Return False
While IndexInList < TempList.Count And nIdLay <> GDB_ID.NULL
' recupero l'ordinamento del layer
If sNamePath.Contains(sCompoName) And IndexLay = IndexInList Then
EgtSetMark(nIdLay)
' evidenzio la compo corrente
TempList(IndexInList).SetMark()
EgtDraw()
' ricerca terminata correttamente
Return True
Exit While
ElseIf sNamePath.Contains(sCompoName) And IndexInList < IndexLay Then
IndexInList += 1
Else
Return False
End If
End While
' prova con un'altra compo
Return False
End Function
#End Region ' Event scene #End Region ' Event scene
+6
View File
@@ -22,6 +22,10 @@ Public Module Utility
' CurrFile deve arrivare già senza estensione! ' CurrFile deve arrivare già senza estensione!
Private Function GenerateLockFileName(ByVal CurrDirectory As String, Optional ByVal CurrFile As String = "") As String Private Function GenerateLockFileName(ByVal CurrDirectory As String, Optional ByVal CurrFile As String = "") As String
' Se in modalità Modifica file DDT allora non bloccare il file
If OptionModule.AdjustDDT Then
Return String.Empty
End If
If OptionModule.ReadOnlyDDF Then If OptionModule.ReadOnlyDDF Then
Return String.Empty Return String.Empty
End If End If
@@ -711,6 +715,8 @@ Public Module Utility
sFilePath = sPath sFilePath = sPath
sFileBlindProgLog = New System.IO.StreamWriter(sPath, True) sFileBlindProgLog = New System.IO.StreamWriter(sPath, True)
Dim sInfoStart As String = Date.Now.ToString & " Avvio programma in cieco" 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.WriteLine(sInfoStart)
sFileBlindProgLog.Close() sFileBlindProgLog.Close()
End Sub End Sub