EgtDoorCreator 2.7e2 :
- migliorie per visualizzazione decori da file nge (rimane da sistemare caso con più layer).
This commit is contained in:
+12
-3
@@ -1547,13 +1547,22 @@ Public Class Part
|
||||
Dim IndexLay As Integer = 0
|
||||
While nIdLay <> GDB_ID.NULL
|
||||
Dim sInfoPath As String = String.Empty
|
||||
If EgtGetInfo(nIdLay, "Path", sInfoPath) Then
|
||||
If Not EgtGetInfo(nIdLay, "Path", sInfoPath) Then
|
||||
Dim sFileName As String = String.Empty
|
||||
Dim sFileDir As String = String.Empty
|
||||
If EgtGetInfo(nIdLay, "CustGeomFile", sFileName) AndAlso
|
||||
EgtGetInfo(nIdLay, "CustGeomPath", sFileDir) Then
|
||||
sInfoPath = sFileDir & sFileName
|
||||
End If
|
||||
End If
|
||||
If Not String.IsNullOrWhiteSpace( sInfoPath) Then
|
||||
Dim sNamePath As String = sInfoPath
|
||||
If sNamePath.Contains(sCompoName) And sNamePath.Contains(sDirCompo) And IndexLay = IndexInList Then
|
||||
If sInfoPath.IndexOf( sCompoName, StringComparison.InvariantCultureIgnoreCase) >= 0 AndAlso
|
||||
sInfoPath.IndexOf( sDirCompo, StringComparison.InvariantCultureIgnoreCase) >= 0 And IndexLay = IndexInList Then
|
||||
EgtSetMark(nIdLay)
|
||||
m_SelCompo.SetMark()
|
||||
Exit While
|
||||
ElseIf sNamePath.Contains(sCompoName) And IndexLay < IndexInList Then
|
||||
ElseIf sInfoPath.IndexOf( sCompoName, StringComparison.InvariantCultureIgnoreCase) >= 0 And IndexLay < IndexInList Then
|
||||
IndexLay = IndexLay + 1
|
||||
End If
|
||||
End If
|
||||
|
||||
@@ -71,8 +71,8 @@ Friend Class MainWindowModel
|
||||
EgtSetLockId(sLockId)
|
||||
End If
|
||||
' Recupero livello e opzioni della chiave
|
||||
Dim bKey As Boolean = EgtGetKeyLevel(3279, 2704, 1, IniFile.m_nKeyLevel) And
|
||||
EgtGetKeyOptions(3279, 2704, 1, IniFile.m_nKeyOptions)
|
||||
Dim bKey As Boolean = EgtGetKeyLevel(3279, 2705, 1, IniFile.m_nKeyLevel) And
|
||||
EgtGetKeyOptions(3279, 2705, 1, IniFile.m_nKeyOptions)
|
||||
' Leggo e imposto livello utilizzatore
|
||||
IniFile.m_nUserLevel = Math.Min(IniFile.m_nKeyLevel, GetMainPrivateProfileInt(S_GENERAL, K_USERLEVEL, 1))
|
||||
'Inizializzazione generale di EgtInterface
|
||||
|
||||
@@ -72,5 +72,5 @@ Imports System.Windows
|
||||
' by using the '*' as shown below:
|
||||
' <Assembly: AssemblyVersion("1.0.*")>
|
||||
|
||||
<Assembly: AssemblyVersion("2.7.4.1")>
|
||||
<Assembly: AssemblyFileVersion("2.7.4.1")>
|
||||
<Assembly: AssemblyVersion("2.7.5.2")>
|
||||
<Assembly: AssemblyFileVersion("2.7.5.2")>
|
||||
|
||||
@@ -490,10 +490,21 @@ Public Class SceneManagerVM
|
||||
Dim sCompoName As String = CurrCompo.TemplateSelItem
|
||||
' recupero il nome della componente selezionata con MouseOver
|
||||
Dim sInfoPath As String = String.Empty
|
||||
If Not EgtGetInfo(nIdLay, "Path", sInfoPath) Then Return False
|
||||
If Not EgtGetInfo(nIdLay, "Path", sInfoPath) Then
|
||||
Dim sFileName As String = String.Empty
|
||||
Dim sFileDir As String = String.Empty
|
||||
If EgtGetInfo(nIdLay, "CustGeomFile", sFileName) AndAlso
|
||||
EgtGetInfo(nIdLay, "CustGeomPath", sFileDir) Then
|
||||
sInfoPath = sFileDir & sFileName
|
||||
Else
|
||||
Return False
|
||||
End If
|
||||
End If
|
||||
' verifico validità
|
||||
If Not ( sInfoPath.Contains(sCompoName) AndAlso sInfoPath.Contains(sDirCompo)) Then Return False
|
||||
|
||||
If Not ( sInfoPath.IndexOf( sCompoName, StringComparison.InvariantCultureIgnoreCase) >= 0 AndAlso
|
||||
sInfoPath.IndexOf( sDirCompo, StringComparison.InvariantCultureIgnoreCase) >= 0) Then
|
||||
Return False
|
||||
End If
|
||||
' recupero la lista dei compo dello stesso tipo
|
||||
Dim TempList As ObservableCollection(Of Compo) = DdfFile.GetCurrentListSameCompoType(CompoList, CurrCompo.CompoType.DDFName)
|
||||
' recupero la lista dei compo con lo stesso nome
|
||||
@@ -507,24 +518,29 @@ Public Class SceneManagerVM
|
||||
While nCurrLayId <> GDB_ID.NULL
|
||||
nCurrLayId = EgtGetNext(nCurrLayId)
|
||||
Dim LocalsPath As String = String.Empty
|
||||
If EgtGetInfo(nCurrLayId, "Path", LocalsPath) AndAlso
|
||||
sInfoPath.Trim = LocalsPath.Trim Then
|
||||
Dim LocalsName As String = String.Empty
|
||||
Dim LocalsDir As String = String.Empty
|
||||
If ( EgtGetInfo(nCurrLayId, "Path", LocalsPath) AndAlso
|
||||
sInfoPath.Trim = LocalsPath.Trim) OrElse
|
||||
( EgtGetInfo(nCurrLayId, "CustGeomFile", LocalsName) AndAlso
|
||||
EgtGetInfo(nCurrLayId, "CustGeomPath", LocalsDir) AndAlso
|
||||
sInfoPath.Trim = LocalsDir.Trim & LocalsName.Trim) Then
|
||||
nCounter += 1
|
||||
End If
|
||||
End While
|
||||
Dim IndexLay As Integer = TempList.Count - nCounter
|
||||
Dim IndexLay As Integer = Math.Max( TempList.Count - nCounter, 0)
|
||||
|
||||
' ottengo la posizione prevista nella grafica
|
||||
Dim IndexInList As Integer = DdfFile.GetIndexInList(TempList, CurrCompo)
|
||||
While IndexInList < TempList.Count And nIdLay <> GDB_ID.NULL
|
||||
' recupero l'ordinamento del layer
|
||||
If sInfoPath.Contains(sCompoName) And IndexLay = IndexInList Then
|
||||
If sInfoPath.IndexOf( sCompoName, StringComparison.InvariantCultureIgnoreCase) >= 0 And IndexLay = IndexInList Then
|
||||
EgtSetMark(nIdLay)
|
||||
' evidenzio la compo corrente
|
||||
TempList(IndexInList).SetMark()
|
||||
' ricerca terminata correttamente
|
||||
Return True
|
||||
ElseIf sInfoPath.Contains(sCompoName) And IndexInList < IndexLay Then
|
||||
ElseIf sInfoPath.IndexOf( sCompoName, StringComparison.InvariantCultureIgnoreCase) >= 0 And IndexInList < IndexLay Then
|
||||
IndexInList += 1
|
||||
Else
|
||||
Return False
|
||||
|
||||
Reference in New Issue
Block a user