@@ -80,18 +80,20 @@ private void ReadDataCore(object zRefData)
8080
8181 // these lists are accumulated across references
8282 var listAllReferenceLines = new List < ReferenceLine > ( ) ;
83- var listAllReferenceDefineLines = new List < ReferenceLine > ( ) ;
83+ // global defines
84+ var listAllGlobalDefineLines = new List < ReferenceLine > ( ) ;
85+ // legacy project specific defines
8486 var listAllProjectDefineLines = new List < ReferenceLine > ( ) ;
8587
8688 if ( null == zReferenceData || zReferenceData . Length == 0 )
8789 {
8890 // (special case) if no data is loaded for a reference try loading up the project definitions
8991 listAllProjectDefineLines = ReadDefaultProjectDefinitions ( ) ;
90- listAllReferenceDefineLines . AddRange ( ReadDefineReferences ( ) ) ;
92+ listAllGlobalDefineLines . AddRange ( ReadGlobalDefines ( ) ) ;
9193 }
9294 else
9395 {
94- listAllReferenceDefineLines . AddRange ( ReadDefineReferences ( ) ) ;
96+ listAllGlobalDefineLines . AddRange ( ReadGlobalDefines ( ) ) ;
9597
9698 // 2 per reference + 1 for the project wide defines
9799 m_zReporterProxy . ProgressReset ( 0 , zReferenceData . Length * 2 + 1 , 0 ) ;
@@ -142,7 +144,7 @@ private void ReadDataCore(object zRefData)
142144 listReferenceActions . Add ( Task . Factory . StartNew (
143145 ( ) =>
144146 {
145- listRefLines = zRefReader . GetReferenceData ( ) ;
147+ listRefLines = zRefReader . GetReferenceData ( null ) ;
146148 m_zReporterProxy . ProgressStep ( ) ;
147149 } ) ) ;
148150
@@ -162,7 +164,7 @@ private void ReadDataCore(object zRefData)
162164 listRefLines . RemoveAt ( 0 ) ;
163165 }
164166 listAllReferenceLines . AddRange ( listRefLines ) ;
165- listAllReferenceDefineLines . AddRange ( listRefDefineLines ) ;
167+ listAllGlobalDefineLines . AddRange ( listRefDefineLines ) ;
166168
167169 m_zReporterProxy . ProgressStep ( ) ;
168170 }
@@ -174,7 +176,7 @@ private void ReadDataCore(object zRefData)
174176 }
175177
176178 // concat all the defines into one list (project + each reference define)
177- listAllProjectDefineLines . AddRange ( listAllReferenceDefineLines ) ;
179+ listAllProjectDefineLines . AddRange ( listAllGlobalDefineLines ) ;
178180
179181 ProcessLines (
180182 listAllReferenceLines ,
@@ -280,29 +282,29 @@ public void ProcessLines(List<ReferenceLine> listLines,
280282 {
281283 var dictionaryCurrentDefineColumns = new Dictionary < int , string > ( ) ;
282284 var sCurrentReferenceSource = string . Empty ;
283- // first row is critical as it is an indicator of a new define reference (as there may be multiple with unique column names)
284- foreach ( var zReferenceDefineLine in listDefineLines )
285+ // first row is critical as it is an indicator of a new define file (as there may be multiple with unique column names)
286+ foreach ( var zDefineLine in listDefineLines )
285287 {
286- if ( zReferenceDefineLine . LineNumber == 0 && sCurrentReferenceSource != zReferenceDefineLine . ReferenceInfo . Source )
288+ if ( zDefineLine . LineNumber == 0 && sCurrentReferenceSource != zDefineLine . ReferenceInfo . Source )
287289 {
288- sCurrentReferenceSource = zReferenceDefineLine . ReferenceInfo . Source ;
289- dictionaryCurrentDefineColumns = zReferenceDefineLine . Entries
290+ sCurrentReferenceSource = zDefineLine . ReferenceInfo . Source ;
291+ dictionaryCurrentDefineColumns = zDefineLine . Entries
290292 . Skip ( 1 ) // skip the first column as it is the define name column itself (note the idx+1 below!)
291293 . Where ( x => x != null && ! x . StartsWith ( IGNORED_DEFINE_COLUMN_PREFIX ) )
292294 . Select ( ( x , idx ) => new KeyValuePair < int , string > ( idx + 1 , x ) )
293295 . ToDictionary ( x => x . Key , x => x . Value ) ;
294296 continue ;
295297 }
296298
297- var listRowEntries = zReferenceDefineLine . Entries ;
299+ var listRowEntries = zDefineLine . Entries ;
298300 if ( listRowEntries . Count == 0 )
299301 {
300302 continue ;
301303 }
302304
303- var sKeyPrefix = string . IsNullOrWhiteSpace ( zReferenceDefineLine . ReferenceInfo . ReferencePrefix )
305+ var sKeyPrefix = string . IsNullOrWhiteSpace ( zDefineLine . ReferenceInfo . ReferencePrefix )
304306 ? string . Empty
305- : $ "{ zReferenceDefineLine . ReferenceInfo . ReferencePrefix } { sDefineSeparator } ";
307+ : $ "{ zDefineLine . ReferenceInfo . ReferencePrefix } { sDefineSeparator } ";
306308 var sKey = $ "{ sKeyPrefix } { listRowEntries [ 0 ] } ";
307309 int nIdx ;
308310 if ( string . IsNullOrWhiteSpace ( sKey ) )
@@ -318,7 +320,7 @@ public void ProcessLines(List<ReferenceLine> listLines,
318320 }
319321 else if ( dictionaryColumnNames . TryGetValue ( sKey . ToLower ( ) , out nIdx ) )
320322 {
321- var sMsg = "Overlapping column name and define found in: " + zReferenceDefineLine . ReferenceInfo . Source + "::" + "Column [" + nIdx + "]: " + sKey ;
323+ var sMsg = "Overlapping column name and define found in: " + zDefineLine . ReferenceInfo . Source + "::" + "Column [" + nIdx + "]: " + sKey ;
322324 IssueManager . Instance . FireAddIssueEvent ( sMsg ) ;
323325 m_zReporterProxy . AddIssue ( sMsg ) ;
324326 }
@@ -335,7 +337,7 @@ public void ProcessLines(List<ReferenceLine> listLines,
335337 if ( dictionaryColumnNames . TryGetValue ( sCompositeKey , out nIdx ) )
336338 {
337339 var sMsg = $ "Overlapping composite column name { sCompositeKey } and define found in: " +
338- zReferenceDefineLine . ReferenceInfo . Source + "::" + "Column [" + nIdx + "]: " +
340+ zDefineLine . ReferenceInfo . Source + "::" + "Column [" + nIdx + "]: " +
339341 sKey ;
340342 IssueManager . Instance . FireAddIssueEvent ( sMsg ) ;
341343 m_zReporterProxy . AddIssue ( sMsg ) ;
@@ -448,35 +450,34 @@ private List<ReferenceLine> ReadDefaultProjectDefinitions()
448450 return listDefineLines ;
449451 }
450452
451- private List < ReferenceLine > ReadDefineReferences ( )
453+ private List < ReferenceLine > ReadGlobalDefines ( )
452454 {
453- var listAllReferenceDefineLines = new List < ReferenceLine > ( ) ;
454- // load the define references (if project saved)
455- if ( ( ProjectManager . Instance . LoadedProject . DefineReferences ? . Length ?? 0 ) > 0 )
455+ var listAllGlobalDefinesLines = new List < ReferenceLine > ( ) ;
456+ if ( ( ProjectManager . Instance . LoadedProject . GlobalDefines ? . Length ?? 0 ) > 0 )
456457 {
457- m_zReporterProxy . ProgressReset ( 0 , ProjectManager . Instance . LoadedProject . DefineReferences . Length , 0 ) ;
458- var listDefineReferenceActions = new List < Task > ( ) ;
459- foreach ( var zReference in ProjectManager . Instance . LoadedProject . DefineReferences )
458+ m_zReporterProxy . ProgressReset ( 0 , ProjectManager . Instance . LoadedProject . GlobalDefines . Length , 0 ) ;
459+ var listGlobalDefinesActions = new List < Task > ( ) ;
460+ foreach ( var zReference in ProjectManager . Instance . LoadedProject . GlobalDefines )
460461 {
461- listDefineReferenceActions . Add ( Task . Factory . StartNew (
462+ listGlobalDefinesActions . Add ( Task . Factory . StartNew (
462463 ( ) =>
463464 {
464465 var zRefReader = GetReferenceReader ( zReference ) ;
465466 if ( zRefReader != null )
466467 {
467- var listReferenceLines = zRefReader . GetReferenceData ( zReference . DefineReferencePrefix ) ;
468+ var listReferenceLines = zRefReader . GetReferenceData ( zReference . DefinePrefix ) ;
468469 lock ( s_zLoadLock )
469470 {
470- listAllReferenceDefineLines . AddRange ( listReferenceLines ) ;
471+ listAllGlobalDefinesLines . AddRange ( listReferenceLines ) ;
471472 }
472473 }
473474 m_zReporterProxy . ProgressStep ( ) ;
474475 } ) ) ;
475476 }
476- Task . WaitAll ( listDefineReferenceActions . ToArray ( ) ) ;
477+ Task . WaitAll ( listGlobalDefinesActions . ToArray ( ) ) ;
477478 }
478479
479- return listAllReferenceDefineLines ;
480+ return listAllGlobalDefinesLines ;
480481 }
481482
482483 public void InitiateReferenceRead ( ProjectLayoutReference [ ] arrayProjectLayoutReferences , bool bExporting )
0 commit comments