public static bool NewFileDialog(out RibbonTemplate template, out string fileName) { NewFileForm dialog; bool result; template = RibbonTemplate.None; fileName = string.Empty; dialog = new NewFileForm(); try { result = (dialog.ShowDialog() == DialogResult.OK); if (result) { int itemIndex = 0; if (dialog.wordPadRadioButton.Checked) { itemIndex = 1; } template = (RibbonTemplate)(itemIndex); fileName = Path.Combine(dialog.EditDirectory.Text, dialog.EditFilename.Text); } } finally { dialog.Close(); } return(result); }
private void NewFile(bool emptyFile) { RibbonTemplate template; string fileName, filePath; Stream zipStream; if (!CheckSave()) { return; } if (emptyFile) { template = RibbonTemplate.None; fileName = string.Empty; } else if (!NewFileForm.NewFileDialog(out template, out fileName)) { return; } ClearDocument(); if (template == RibbonTemplate.None) { if (!string.IsNullOrEmpty(fileName)) { _document.SaveToFile(fileName); } } else { this.Cursor = Cursors.WaitCursor; try { filePath = Path.GetDirectoryName(fileName); zipStream = Assembly.GetExecutingAssembly().GetManifestResourceStream("UIRibbonTools.Wordpad.zip"); string tmpFile = Path.Combine(Path.GetTempPath(), Path.GetTempFileName()); FileStream fs = File.Create(tmpFile); zipStream.CopyTo(fs); fs.Close(); try { string resFolder = Path.Combine(filePath, "Res"); if (Directory.Exists(resFolder)) { Directory.Delete(resFolder, true); File.Delete(Path.Combine(filePath, "RibbonMarkup.xml")); } ZipFile.ExtractToDirectory(tmpFile, filePath); } finally { zipStream.Close(); File.Delete(tmpFile); } File.Move(Path.Combine(filePath, "RibbonMarkup.xml"), fileName); _document.LoadFromFile(fileName); } finally { this.Cursor = Cursors.Default; } } tabControl.SelectedTab = tabPageCommands; ActiveControl = _commandsFrame.ListViewCommands; ShowDocument(); UpdateCaption(); UpdateControls(); ClearModified(); ShowFilename(fileName); _buildPreviewHelper.SetRibbonXmlFile(fileName); }