Skip to content

Commit 1c06238

Browse files
committed
[Recent Files] Recent files button does not call InitializeDataProvider(IAnalogyLogger logger) method fix #1571
1 parent 58219ad commit 1c06238

File tree

3 files changed

+23
-18
lines changed

3 files changed

+23
-18
lines changed

Analogy/CommonChangeLog.cs

+1
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ public static IEnumerable<AnalogyChangeLog> GetChangeLog()
1111
{
1212
return new List<AnalogyChangeLog>
1313
{
14+
new AnalogyChangeLog("V4.10.3 - [Recent Files] Recent files button does not call InitializeDataProvider(IAnalogyLogger logger) method #1571",AnalogChangeLogType.Bug, "Lior Banai", new DateTime(2022, 12, 24)),
1415
new AnalogyChangeLog("V4.10.3 - [Recent files] duplicated entries are added #1570",AnalogChangeLogType.Bug, "Lior Banai", new DateTime(2022, 12, 24)),
1516
new AnalogyChangeLog("V4.10.3 - [Grid Table] Additional dynamics columns are editable and should be read only #1572",AnalogChangeLogType.Bug, "Lior Banai", new DateTime(2022, 12, 24)),
1617
new AnalogyChangeLog("V4.10.2 - [Ribbon Form] Enable toggle to combine all providers in the UI #1559",AnalogChangeLogType.Improvement, "Lior Banai", new DateTime(2022, 12, 10)),

Analogy/Forms/FluentDesignMainForm.cs

+11-9
Original file line numberDiff line numberDiff line change
@@ -274,7 +274,7 @@ private async Task OpenOfflineFileWithSpecificDataProvider(string[] files)
274274
{
275275
var parser = supported.First();
276276
LoadFactoryInAccordion(parser.FactoryID);
277-
OpenOfflineLogs(files, parser.DataProvider);
277+
await OpenOfflineLogs(files, parser.DataProvider);
278278
}
279279
else
280280
{
@@ -299,7 +299,7 @@ private async Task OpenOfflineFileWithSpecificDataProvider(string[] files)
299299
{
300300
var parser = supported.First();
301301
LoadFactoryInAccordion(parser.FactoryID);
302-
OpenOfflineLogs(files, parser.DataProvider);
302+
await OpenOfflineLogs(files, parser.DataProvider);
303303
}
304304
else
305305
{
@@ -313,7 +313,7 @@ private async Task OpenOfflineFileWithSpecificDataProvider(string[] files)
313313
if (parser.Count == 1)
314314
{
315315
LoadFactoryInAccordion(factory.FactoryId);
316-
OpenOfflineLogs(files, parser.First());
316+
await OpenOfflineLogs(files, parser.First());
317317
}
318318
else
319319
{
@@ -338,10 +338,11 @@ private async Task OpenOfflineFileWithSpecificDataProvider(string[] files)
338338
}
339339
}
340340

341-
private void OpenOfflineLogs(string[] fileNames, IAnalogyOfflineDataProvider dataProvider,
341+
private async Task OpenOfflineLogs(string[] fileNames, IAnalogyOfflineDataProvider dataProvider,
342342
string? title = null)
343343
{
344344
openedWindows++;
345+
await FactoriesManager.Instance.InitializeIfNeeded(dataProvider);
345346
UserControl offlineUC = new LocalLogFilesUC(dataProvider, fileNames);
346347
var page = dockManager1.AddPanel(DockingStyle.Float);
347348
page.DockedAsTabbedDocument = true;
@@ -847,9 +848,10 @@ void OpenExternalDataSource(string titleOfDataSource, IAnalogyOfflineDataProvide
847848
dockManager1.ActivePanel = page;
848849
}
849850

850-
void OpenFilePooling(string titleOfDataSource, string initialFolder, string file)
851+
async Task OpenFilePooling(string titleOfDataSource, string initialFolder, string file)
851852
{
852853
openedWindows++;
854+
await FactoriesManager.Instance.InitializeIfNeeded(offlineAnalogy);
853855
UserControl filepoolingUC = new FilePoolingUCLogs(offlineAnalogy, file, initialFolder);
854856
var page = dockManager1.AddPanel(DockingStyle.Float);
855857
page.DockedAsTabbedDocument = true;
@@ -994,7 +996,7 @@ void OnXtcLogsOnControlRemoved(object sender, DockPanelEventArgs arg)
994996
filePoolingBtn.SuperTip = Utils.GetSuperTip(caption, "Monitor file for changes in real time and reload the file automatically");
995997
filePoolingBtn.ImageOptions.Image =
996998
images?.GetLargeFilePoolingImage(factoryId) ?? Resources.FilePooling_32x32;
997-
filePoolingBtn.Click += (sender, e) =>
999+
filePoolingBtn.Click += async (sender, e) =>
9981000
{
9991001
OpenFileDialog openFileDialog1 = new OpenFileDialog
10001002
{
@@ -1004,7 +1006,7 @@ void OnXtcLogsOnControlRemoved(object sender, DockPanelEventArgs arg)
10041006
};
10051007
if (openFileDialog1.ShowDialog() == DialogResult.OK)
10061008
{
1007-
OpenFilePooling(title, offlineAnalogy.InitialFolderFullPath, openFileDialog1.FileName);
1009+
await OpenFilePooling(title, offlineAnalogy.InitialFolderFullPath, openFileDialog1.FileName);
10081010
AddRecentFiles(recentfiles, offlineAnalogy, title,
10091011
new List<string> { openFileDialog1.FileName });
10101012
}
@@ -1137,9 +1139,9 @@ private void AddRecentFiles(AccordionControlElement recentElement, IAnalogyOffli
11371139
// args.Contents.Image = realTime.ToolTip.Image;
11381140
toolTip.Setup(args);
11391141
btn.SuperTip = toolTip;
1140-
btn.Click += (s, be) =>
1142+
btn.Click += async (s, be) =>
11411143
{
1142-
OpenOfflineLogs(new[] { file }, offlineAnalogy, title);
1144+
await OpenOfflineLogs(new[] { file }, offlineAnalogy, title);
11431145
};
11441146
}
11451147
}

Analogy/Forms/MainForm.cs

+11-9
Original file line numberDiff line numberDiff line change
@@ -575,11 +575,12 @@ private void SetupEventHandlers()
575575

576576
}
577577

578-
private void OpenOfflineLogs(RibbonPage ribbonPage, string[] filenames,
578+
private async Task OpenOfflineLogs(RibbonPage ribbonPage, string[] filenames,
579579
IAnalogyOfflineDataProvider dataProvider,
580580
string? title = null)
581581
{
582582
OpenedWindows++;
583+
await FactoriesManager.Instance.InitializeIfNeeded(dataProvider);
583584
UserControl offlineUC = new LocalLogFilesUC(dataProvider, filenames);
584585
var page = dockManager1.AddPanel(DockingStyle.Float);
585586
page.DockedAsTabbedDocument = true;
@@ -614,7 +615,7 @@ private async Task OpenOfflineFileWithSpecificDataProvider(string[] files)
614615
{
615616
var parser = supported.First();
616617
RibbonPage page = Mapping.ContainsKey(parser.FactoryID) ? Mapping[parser.FactoryID] : null;
617-
OpenOfflineLogs(page, files, parser.DataProvider);
618+
await OpenOfflineLogs(page, files, parser.DataProvider);
618619
}
619620
else
620621
{
@@ -639,7 +640,7 @@ private async Task OpenOfflineFileWithSpecificDataProvider(string[] files)
639640
{
640641
var parser = supported.First();
641642
RibbonPage page = Mapping.ContainsKey(parser.FactoryID) ? Mapping[parser.FactoryID] : null;
642-
OpenOfflineLogs(page, files, parser.DataProvider);
643+
await OpenOfflineLogs(page, files, parser.DataProvider);
643644
}
644645
else
645646
{
@@ -655,7 +656,7 @@ private async Task OpenOfflineFileWithSpecificDataProvider(string[] files)
655656
: null;
656657
if (parser.Count == 1)
657658
{
658-
OpenOfflineLogs(page, files, parser.First());
659+
await OpenOfflineLogs(page, files, parser.First());
659660
}
660661
else
661662
{
@@ -724,9 +725,9 @@ private void AddRecentFiles(RibbonPage ribbonPage, BarSubItem bar, IAnalogyOffli
724725

725726
BarButtonItem btn = new BarButtonItem();
726727
btn.Caption = file;
727-
btn.ItemClick += (s, be) =>
728+
btn.ItemClick += async (s, be) =>
728729
{
729-
OpenOfflineLogs(ribbonPage, new[] { be.Item.Caption }, offlineAnalogy, title);
730+
await OpenOfflineLogs(ribbonPage, new[] { be.Item.Caption }, offlineAnalogy, title);
730731
};
731732
bar.AddItem(btn);
732733

@@ -1486,11 +1487,12 @@ async Task OpenExternalDataSource(string titleOfDataSource, IAnalogyOfflineDataP
14861487
dockManager1.ActivePanel = page;
14871488
}
14881489

1489-
void OpenFilePooling(string titleOfDataSource, IAnalogyOfflineDataProvider dataProvider,
1490+
async Task OpenFilePooling(string titleOfDataSource, IAnalogyOfflineDataProvider dataProvider,
14901491
string initialFolder, string file)
14911492
{
14921493

14931494
OpenedWindows++;
1495+
await FactoriesManager.Instance.InitializeIfNeeded(dataProvider);
14941496
UserControl filepoolingUC = new FilePoolingUCLogs(dataProvider, file, initialFolder);
14951497
var page = dockManager1.AddPanel(DockingStyle.Float);
14961498
page.DockedAsTabbedDocument = true;
@@ -1694,7 +1696,7 @@ await OpenOffline(dataProvider.OptionalTitle, dataProvider,
16941696

16951697

16961698
BarButtonItem btnOpenFile = new BarButtonItem { Caption = $"{factoryTitle} ({dataProvider.OptionalTitle})" };
1697-
btnOpenFile.ItemClick += (sender, e) =>
1699+
btnOpenFile.ItemClick += async (sender, e) =>
16981700
{
16991701
OpenFileDialog openFileDialog1 = new OpenFileDialog
17001702
{
@@ -1704,7 +1706,7 @@ await OpenOffline(dataProvider.OptionalTitle, dataProvider,
17041706
};
17051707
if (openFileDialog1.ShowDialog() == DialogResult.OK)
17061708
{
1707-
OpenFilePooling(dataProvider.OptionalTitle, dataProvider,
1709+
await OpenFilePooling(dataProvider.OptionalTitle, dataProvider,
17081710
dataProvider.InitialFolderFullPath, openFileDialog1.FileName);
17091711
AddRecentFiles(ribbonPage, recentBar, dataProvider, dataProvider.OptionalTitle,
17101712
new List<string> { openFileDialog1.FileName });

0 commit comments

Comments
 (0)