private void YamlToExcel(string[] fileNames) { if (fileNames == null) { return; } var fileBaseNames = fileNames.Select(fileName => Path.GetFileName(fileName)); var fileDirNames = fileNames.Select(fileName => Path.GetDirectoryName(fileName)); var fileDirName = fileDirNames.First(); if (!fileDirNames.All(_fileDirName => fileDirName == _fileDirName)) { ShowMessageBox("同じフォルダにあるxlsxファイルのみにして下さい", "エラー"); return; } var setting = LoadSetting(); if (setting == null) { return; } var d = new FileSelectionDialog(); d.FileTypeMask = FileTypeMask.Directory; d.DialogStyle = DialogStyle.FullApplicationModal; d.PathMode = PathMode.Relative; d.Directory = YamlToExcelTargetFolder; d.CancelEvent += (x, y) => { d.Destroy(); }; d.OkEvent += (x, y) => { YamlToExcelTargetFolder = System.IO.Path.Combine(d.Directory, d.TextString); SaveFormValues(); var options = new ToOptions(); options.files = fileBaseNames; options.seedInput = SeedPath; options.xlsxInput = fileDirName; options.output = YamlToExcelTargetFolder; options.columnNamesRow = setting.columnNamesRow; options.dataStartRow = setting.dataStartRow; options.engine = setting.engine; options.ignoreColumns = setting.ignoreColumns; options.ignore = setting.ignore; options.only = setting.only; options.subdivide = setting.subdivide; options.mapping = setting.mapping; options.versionColumn = setting.versionColumn; options.requireVersion = setting.requireVersion; options.delete = setting.delete; options.seedExtension = setting.seedExtension; options.calcFormulas = setting.calcFormulas; d.Destroy(); var dialog = new YamlToExcelDialogX11(options); this.Layout.Children.Add(dialog); dialog.Popup(GrabOption.Exclusive); }; this.Layout.Children.Add(d); }
private void YamlToExcel(string[] fileNames) { if (fileNames == null) { return; } var fileBaseNames = fileNames.Select(fileName => Path.GetFileName(fileName)); var fileDirNames = fileNames.Select(fileName => Path.GetDirectoryName(fileName)); var fileDirName = fileDirNames.First(); if (!fileDirNames.All(_fileDirName => fileDirName == _fileDirName)) { ShowMessageBox("同じフォルダにあるxlsxファイルのみにして下さい", "エラー"); return; } var setting = LoadSetting(); if (setting == null) { return; } var d = new FileSelectionDialog(); d.FileTypeMask = FileTypeMask.Directory; d.DialogStyle = DialogStyle.FullApplicationModal; d.PathMode = PathMode.Relative; d.Directory = YamlToExcelTargetFolder; d.CancelEvent += (x, y) => { d.Destroy(); }; d.OkEvent += (x, y) => { YamlToExcelTargetFolder = System.IO.Path.Combine(d.Directory, d.TextString); SaveFormValues(); var options = setting.ToOptions( files: fileBaseNames, seedInput: SeedPath, xlsxInput: fileDirName, output: YamlToExcelTargetFolder ); d.Destroy(); var dialog = new YamlToExcelDialogX11(options); this.Layout.Children.Add(dialog); dialog.Popup(GrabOption.Exclusive); }; this.Layout.Children.Add(d); }