private void OnOpen(object sender, EventArgs e) { if (!ConfirmSaveChanges(this)) { return; } openDialog.FileName = string.Empty; int selectedIndex; if (openDialog.ShowDialog(this, new[] { Resources.OpenAsLibrary }, out selectedIndex) == DialogResult.OK) { var asLibrary = selectedIndex == 0; if (!asLibrary) { string reportName = TryLoadReport(openDialog.FileName); _isDirty = false; _exportReportType = DetermineReportType(); SetReportName(reportName); } else { var host = ((IComponent)arDesigner.Report).Site.GetService(typeof(IDesignerHost)) as IDesignerHost; var reportsLibraryService = host != null?host.GetService(typeof(IReportsLibraryService)) as IReportsLibraryService : null; if (reportsLibraryService != null) { reportsLibraryService.LoadReport(openDialog.FileName); } } } }
void DesignerForm_Load(object sender, EventArgs e) { _exportReportType = DefaultReportType; string[] commandLineArgs = Environment.GetCommandLineArgs(); if (commandLineArgs.Length > 1) { string reportName = TryLoadReport(commandLineArgs[1]); _isDirty = false; _exportReportType = DetermineReportType(); SetReportName(reportName); } }
private void OnDesignerLayoutChanged(object sender, LayoutChangedArgs e) { // load or new report events if (e.Type == LayoutChangeType.ReportLoad || e.Type == LayoutChangeType.ReportClear) { arToolbox.Reorder(arDesigner); // reorder toolbox arToolbox.EnsureCategories(); //check Data tools availability arToolbox.Refresh(); RefreshLayersTab(); RefreshGroupEditor(); } //only new report event if (e.Type == LayoutChangeType.ReportClear) { _isDirty = false; _exportReportType = DetermineReportType(); // set report name to "untitled" SetReportName(null); } // only load report event if (e.Type == LayoutChangeType.ReportLoad) { if (!string.IsNullOrEmpty(_reportName)) { // FPL/CPL conversion trigger this event // so we should notify user, that report was updated _isDirty = _exportReportType != DetermineReportType(); // if page report was converted to master - update its extension if (GetIsMaster()) { var extansion = Path.GetExtension(_reportName); if (!string.IsNullOrEmpty(extansion) && (extansion.ToLowerInvariant() == ".rdl" || extansion.ToLowerInvariant() == ".rdlx")) { _reportName = $"{Path.GetFileNameWithoutExtension(_reportName)}.rdlx-master"; // if file with this name already exists - set dirty flag _isDirty = File.Exists(_reportName); } } } _exportReportType = DetermineReportType(); } BeginInvoke(new MethodInvoker(UpdateReportName)); }
void DesignerForm_DragDrop(object sender, DragEventArgs e) { var files = (string[])e.Data.GetData(DataFormats.FileDrop); if (files.Length <= 0) { return; } if (!ConfirmSaveChanges(this)) { return; } string reportName = TryLoadReport(files[0]); _isDirty = false; _exportReportType = DetermineReportType(); SetReportName(reportName); }