protected override void OnExecute(object param)
{
BSkyMouseBusyHandler.ShowMouseBusy();//ShowProgressbar_old();
IUnityContainer container = LifetimeService.Instance.Container;
IDataService service = container.Resolve <IDataService>();
IUIController controller = container.Resolve <IUIController>();
//Get current filetype from loaded dataset. This is file extension and Filter
DataSource actds = controller.GetActiveDocument();//06Nov2012
if (actds == null)
{
return;
}
string datasetName = "" + actds.Name;//uadatasets$lst$
//string datasetName = "uadatasets$lst$" + controller.GetActiveDocument().Name;
//Also try to get the filename of currently loaded file. This is FileName.
string extension = controller.GetActiveDocument().Extension;
string filename = controller.GetActiveDocument().FileName;
SaveFileDialog saveasFileDialog = new SaveFileDialog();
saveasFileDialog.Filter = FileNameFilter;
//CheckBox cbox = new CheckBox();
//saveasFileDialog.FileName = filename;//////
Window1 appwin = LifetimeService.Instance.Container.Resolve <Window1>();
bool? output = saveasFileDialog.ShowDialog(appwin);//Application.Current.MainWindow);
if (output.HasValue && output.Value)
{
service.SaveAs(saveasFileDialog.FileName, controller.GetActiveDocument()); // #0
controller.GetActiveDocument().Changed = false; //21Mar2014 during close it should not prompt again for saving
if (saveasFileDialog.FileName.ToLower().EndsWith("sav")) //12Feb2018 we dont want to open SaveAs-ed SAV files.
{
MessageBox.Show(BSky.GlobalResources.Properties.Resources.SaveAsSucces + saveasFileDialog.FileName, BSky.GlobalResources.Properties.Resources.Saved, MessageBoxButton.OK, MessageBoxImage.Asterisk);
}
else if (System.IO.File.Exists(saveasFileDialog.FileName))
{
//Close current Dataset on whic Save As was run
FileCloseCommand fcc = new FileCloseCommand();
fcc.CloseDataset(false);
//Open Dataset that was SaveAs-ed.
FileOpenCommand fo = new FileOpenCommand();
fo.FileOpen(saveasFileDialog.FileName, true);
}
else
{
BSkyMouseBusyHandler.HideMouseBusy();//HideProgressbar_old();
MessageBox.Show(BSky.GlobalResources.Properties.Resources.SaveAsFailed + saveasFileDialog.FileName, BSky.GlobalResources.Properties.Resources.InternalError, MessageBoxButton.OK, MessageBoxImage.Asterisk);
}
}
BSkyMouseBusyHandler.HideMouseBusy();//HideProgressbar_old();
}