// add a page to the document
        private void pageToolStripMenuItem_Click(object sender, EventArgs e)
        {
            string pageName = EnterTextDialog.EnterText("Enter a name for the new page.", "New Page", CreateResourceName("Page"), Properties.Resources.Page32);

            if (pageName != null)
            {
                Page page = new Page()
                {
                    Name = pageName
                };
                AddResource(page);
                OpenResourceEditor(page);
            }
        }
        // add an equation to the document
        private void equationToolStripMenuItem_Click(object sender, EventArgs e)
        {
            string equationName = EnterTextDialog.EnterText("Enter a name for the new equation.", "New Equation", CreateResourceName("Equation"), Properties.Resources.Equation32);

            if (equationName != null)
            {
                Equation equation = new Equation()
                {
                    Name = equationName
                };

                AddResource(equation);
                OpenResourceEditor(equation);
            }
        }
        private void duplicateToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Resource resource = SelectedResource;

            if (resource != null)
            {
                string newResourceName = EnterTextDialog.EnterText(
                    String.Format("Enter a name for the duplicate of {0}.", resource.Name),
                    "Duplicate",
                    String.Format("Copy of {0}", resource.Name),
                    resource.GetResourceIcon(true));
                if (newResourceName != null)
                {
                    OpenResourceEditor(DuplicateResource(resource, newResourceName));
                }
            }
        }
        private void renameToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Resource resource = SelectedResource;

            if (resource != null)
            {
                Image captionImage = resource.GetResourceIcon(true);

                string newName = EnterTextDialog.EnterText("Enter a new name for this resource.", "Rename", resource.Name, captionImage);
                if (newName != null)
                {
                    resource.Name    = newName;
                    DocumentModified = true;
                    RefreshResourceListView();
                    NotifyResourceModified(resource);
                }
            }
        }
        // add a data set to the document
        private void dataSetToolStripMenuItem_Click(object sender, EventArgs e)
        {
            string dataSetName = EnterTextDialog.EnterText("Enter a name for the new data set.", "New Data Set", CreateResourceName("Data Set"), Properties.Resources.DataSet32);

            if (dataSetName != null)
            {
                DataSet dataSet = new DataSet(Properties.Settings.Default.DefaultDataSetVariables)
                {
                    Name = dataSetName
                };
                DataSetCreator creator = new DataSetCreator(dataSet);
                if (creator.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                {
                    DialogResult = System.Windows.Forms.DialogResult.None;
                    AddResource(dataSet);
                    OpenResourceEditor(dataSet);
                }
            }
        }