@@ -22,6 +22,7 @@ public enum TableHandlerMode
22
22
None = - 1 ,
23
23
GeneralInformation ,
24
24
NameMap ,
25
+ SoftObjectPathList ,
25
26
Imports ,
26
27
ExportInformation ,
27
28
SoftPackageReferences ,
@@ -213,6 +214,7 @@ public void FillOutTree(bool fillAllSubNodes)
213
214
treeView1 . Nodes . Clear ( ) ;
214
215
treeView1 . BackColor = UAGPalette . BackColor ;
215
216
treeView1 . Nodes . Add ( new PointingTreeNode ( "General Information" , null ) ) ;
217
+ if ( asset . SoftObjectPathList != null && ( asset . SoftObjectPathList . Count > 0 || ! asset . IsFilterEditorOnly ) ) treeView1 . Nodes . Add ( new PointingTreeNode ( "Soft Object Paths" , null ) ) ;
216
218
treeView1 . Nodes . Add ( new PointingTreeNode ( "Name Map" , null ) ) ;
217
219
treeView1 . Nodes . Add ( new PointingTreeNode ( "Import Data" , null ) ) ;
218
220
treeView1 . Nodes . Add ( new PointingTreeNode ( "Export Information" , null ) ) ;
@@ -1265,6 +1267,18 @@ public void Load() // Updates the table with selected asset data
1265
1267
}
1266
1268
//((Form1)dataGridView1.Parent).CurrentDataGridViewStrip = ((Form1)dataGridView1.Parent).nameMapContext;
1267
1269
break ;
1270
+ case TableHandlerMode . SoftObjectPathList :
1271
+ AddColumns ( new string [ ] { "PackageName" , "AssetName" , "SubPathString" , "" } ) ;
1272
+
1273
+ for ( int num = 0 ; num < asset . SoftObjectPathList . Count ; num ++ )
1274
+ {
1275
+ string a = asset . SoftObjectPathList [ num ] . AssetPath . PackageName == null ? FString . NullCase : asset . SoftObjectPathList [ num ] . AssetPath . PackageName . ToString ( ) ;
1276
+ string b = asset . SoftObjectPathList [ num ] . AssetPath . AssetName == null ? FString . NullCase : asset . SoftObjectPathList [ num ] . AssetPath . AssetName . ToString ( ) ;
1277
+ string c = asset . SoftObjectPathList [ num ] . SubPathString == null ? FString . NullCase : asset . SoftObjectPathList [ num ] . SubPathString . ToString ( ) ;
1278
+ dataGridView1 . Rows . Add ( a , b , c ) ;
1279
+ dataGridView1 . Rows [ num ] . HeaderCell . Value = Convert . ToString ( num ) ;
1280
+ }
1281
+ break ;
1268
1282
case TableHandlerMode . Imports :
1269
1283
AddColumns ( new string [ ] { "ClassPackage" , "ClassName" , "OuterIndex" , "ObjectName" , "bImportOptional" , "" } ) ;
1270
1284
@@ -2066,6 +2080,27 @@ public void Save(bool forceNewLoad) // Reads from the table and updates the asse
2066
2080
}
2067
2081
}
2068
2082
break ;
2083
+ case TableHandlerMode . SoftObjectPathList :
2084
+ if ( asset . SoftObjectPathList == null ) asset . SoftObjectPathList = new List < FSoftObjectPath > ( ) ;
2085
+
2086
+ asset . SoftObjectPathList . Clear ( ) ;
2087
+ foreach ( DataGridViewRow row in dataGridView1 . Rows )
2088
+ {
2089
+ string a = row . Cells [ 0 ] . Value as string ;
2090
+ string b = row . Cells [ 1 ] . Value as string ;
2091
+ string c = row . Cells [ 2 ] . Value as string ;
2092
+
2093
+ if ( a == FString . NullCase ) a = null ;
2094
+ if ( b == FString . NullCase ) b = null ;
2095
+ if ( c == FString . NullCase ) c = null ;
2096
+
2097
+ // if all empty, then remove (invalid, probably just the last row)
2098
+ if ( a == null && b == null && c == null ) continue ;
2099
+
2100
+ FSoftObjectPath nuevo = new FSoftObjectPath ( FName . FromString ( asset , a ) , FName . FromString ( asset , b ) , FString . FromString ( c ) ) ;
2101
+ asset . SoftObjectPathList . Add ( nuevo ) ;
2102
+ }
2103
+ break ;
2069
2104
case TableHandlerMode . Imports :
2070
2105
asset . Imports = new List < Import > ( ) ;
2071
2106
foreach ( DataGridViewRow row in dataGridView1 . Rows )
0 commit comments