/// <summary> /// プロジェクト保存 /// </summary> /// <returns>セーブ結果(true=した、false=してない)</returns> private bool SaveProject() { saveFileDialog.DefaultExt = "epmd"; saveFileDialog.Filter = "EPubMakerプロジェクトデータ|*.epmd"; saveFileDialog.FileName = Path.GetFileName(folderBrowserDialog.SelectedPath); saveFileDialog.InitialDirectory = folderBrowserDialog.SelectedPath; if (saveFileDialog.ShowDialog() != DialogResult.OK) { return(false); } // 保存 EPubMakerData data = new EPubMakerData(); data.Version = DATA_FORMAT_VERSION; data.Path = folderBrowserDialog.SelectedPath; data.Title = editTitle.Text; data.Author = editAuthor.Text; data.Width = (int)editWidth.Value; data.Height = (int)editHeight.Value; data.RtoL = rdbRtl.Checked; data.Pages = pages; XmlSerializer serializer = new XmlSerializer(typeof(EPubMakerData)); StreamWriter writer = new StreamWriter(saveFileDialog.FileName, false, new UTF8Encoding()); serializer.Serialize(writer, data); writer.Close(); saved = true; return(true); }
/// <summary> /// プロジェクト保存 /// </summary> /// <returns>セーブ結果(true=した、false=してない)</returns> private bool SaveProject() { saveFileDialog.DefaultExt = "epmd"; saveFileDialog.Filter = "EPubMakerプロジェクトデータ|*.epmd"; saveFileDialog.FileName = Path.GetFileName(folderBrowserDialog.SelectedPath); saveFileDialog.InitialDirectory = folderBrowserDialog.SelectedPath; if (saveFileDialog.ShowDialog() != DialogResult.OK) { return false; } // 保存 EPubMakerData data = new EPubMakerData(); data.Version = DATA_FORMAT_VERSION; data.Path = folderBrowserDialog.SelectedPath; data.Title = editTitle.Text; data.Author = editAuthor.Text; data.Width = (int)editWidth.Value; data.Height = (int)editHeight.Value; data.RtoL = rdbRtl.Checked; data.Pages = pages; XmlSerializer serializer = new XmlSerializer(typeof(EPubMakerData)); StreamWriter writer = new StreamWriter(saveFileDialog.FileName, false, new UTF8Encoding()); serializer.Serialize(writer, data); writer.Close(); saved = true; return true; }
/// <summary> /// プロジェクトオープン /// </summary> /// <returns>オープン結果(true=した、false=してない)</returns> private bool OpenProject() { if (!CheckSaved()) { return(false); } openFileDialog.DefaultExt = "epmd"; openFileDialog.Filter = "EPubMakerプロジェクトデータ|*.epmd"; if (!string.IsNullOrEmpty(folderBrowserDialog.SelectedPath) && Directory.Exists(folderBrowserDialog.SelectedPath)) { openFileDialog.InitialDirectory = folderBrowserDialog.SelectedPath; } else if (!String.IsNullOrEmpty(setting.PrevSrc) && Directory.Exists(setting.PrevSrc)) { openFileDialog.InitialDirectory = setting.PrevSrc; } else { openFileDialog.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments); } if (openFileDialog.ShowDialog() != DialogResult.OK) { return(false); } // 読み込み XmlSerializer serializer = new XmlSerializer(typeof(EPubMakerData)); StreamReader reader = new StreamReader(openFileDialog.FileName, new UTF8Encoding()); EPubMakerData data = (EPubMakerData)serializer.Deserialize(reader); reader.Close(); folderBrowserDialog.SelectedPath = data.Path; editTitle.Text = data.Title; editAuthor.Text = data.Author; editWidth.Value = data.Width; editHeight.Value = data.Height; if (data.Version > 0) { rdbRtl.Checked = data.RtoL; rdbLtr.Checked = !data.RtoL; } else { rdbRtl.Checked = true; rdbLtr.Checked = false; } pages = data.Pages; saved = true; SetupPagesGrid(); EnabledButtonsAndMenuItems(true, pages.Count > 0); selectedIndex = pages.Count > 0 ? 0 : -1; if (selectedIndex >= 0) { DrawImages(selectedIndex); } return(true); }