private void btnExchangeFile_Clicked(object sender, EventArgs e) { IDataExchanger exchanger = Exchanger; FileChooserFilter ff = new FileChooserFilter { Name = string.Format("{0} ({1})", exchanger.ExchangeType, string.Join("; ", exchanger.FileMasks)), FileMasks = exchanger.FileMasks }; string fileName; if (IsExport) { string title = Translator.GetString("Select Export File"); string initialFolder = this.GetInitialFolder(); string initialFile = string.Format("{0}{1}", this.defaultFileName, exchanger.DefaultFileExtension); if (PresentationDomain.OSIntegration.ChooseFileForSave(title, initialFolder, initialFile, out fileName, ff)) { SetExchangeFileName(fileName); } } else { if (PresentationDomain.OSIntegration.ChooseFileForOpen(Translator.GetString("Select Import File"), GetInitialFolder(), out fileName, ff)) { SetExchangeFileName(fileName); } } }
private void grid_SelectionChanged(object sender, EventArgs args) { IDataExchanger exchanger = (IDataExchanger)grid.Model [grid.Selection [0]]; bool usesFile = exchanger.UsesFile; algExchangeFile.Visible = usesFile; if (usesFile) { if (string.IsNullOrWhiteSpace(txtExchangeFile.Text) && !string.IsNullOrEmpty(defaultFileName)) { SetExchangeFileName(Path.Combine(GetInitialFolder(), defaultFileName + exchanger.DefaultFileExtension)); } else if (!string.IsNullOrWhiteSpace(txtExchangeFile.Text) && !string.IsNullOrEmpty(defaultFileName)) { string folder = Path.GetDirectoryName(txtExchangeFile.Text); string file = Path.GetFileNameWithoutExtension(txtExchangeFile.Text); SetExchangeFileName(Path.Combine(folder ?? string.Empty, file + exchanger.DefaultFileExtension)); } if (chkExchangeFile.Active) { chkOpenFile.Sensitive = true; } chkOpenFile.Active = BusinessDomain.AppConfiguration.OpenExportedFile; } else { chkOpenFile.Active = chkOpenFile.Sensitive = false; } algCustomWidget.DestroyChild(); Widget customWidget = exchanger.GetCustomWidget(data) as Widget; if (customWidget != null) { algCustomWidget.Add(customWidget); } }