Exemple #1
0
        public static Scene LoadScene(BinaryReader br, Chapter parent)
        {
            // Title and UID read in constructor
            Scene sc = new Scene(br, parent);
            sc.Summary = br.ReadString();
            sc.Notes = Note.LoadListOfNotes();

            int povUID = br.ReadInt32();
            if (povUID == 0)
            {
                sc.POV = null;
            }
            else
            {
                foreach (Character ch in parent.ParentBook.ParentSeries.Characters)
                {
                    if (povUID == ch.UID)
                    {
                        sc.POV = ch;
                        break;
                    }
                }
            }

            return sc;
        }
Exemple #2
0
        /// <summary>
        /// Context menu: Add scene
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void copAddScene_Click(object sender, EventArgs e)
        {
            if (InputStrDialog.Show("Add Scene", "Enter title for scene: ")
                == DialogResult.OK)
            {
                Scene sc = new Scene(InputStrDialog.Result, (Chapter)rightnode.Tag);

                // Add to tree
                TreeNode node = new TreeNode(sc.Title);
                rightnode.Nodes.Add(node);
                node.Tag = sc;
                SetTreeNodeIcons(node);

                // Add to SortView
                ListViewItem lvi = new ListViewItem(sc.Title);
                lvi.SubItems.Add("");
                sortScenes.AddItem(lvi);

                // Check if file already exists
                if (File.Exists(sc.Filename))
                {
                    string backup_fn = sc.Filename + DateTime.UtcNow.Ticks;
                    File.Move(sc.Filename, backup_fn);

                    MessageBox.Show("File " + sc.Filename + " already exists\n" +
                        "Original been moved to " + backup_fn,
                        "Scene file already exists!",
                        MessageBoxButtons.OK, MessageBoxIcon.Warning);
                }

                File.Create(sc.Filename).Close();
            }

            treeSeries.SelectedNode = selnode;
        }
Exemple #3
0
        /// <summary>
        /// Search recursively through series until series is found. Delete series and its UID.
        /// </summary>
        /// <param name="scene"></param>
        public void DeleteScene(Scene scene, Chapter chapter)
        {
            chapter.Scenes.Remove(scene);

            Scene.deletedUIDS.Add(scene.UID);
        }