コード例 #1
0
        public static ToDoItemRoot open(string filePath)
        {
            string       json           = File.ReadAllText(filePath);
            ToDoItemRoot serializedItem = JsonConvert.DeserializeObject <ToDoItemRoot>(json, jsonSettings);

            return(serializedItem);
        }
コード例 #2
0
 public void openFile(string filePath)
 {
     root = ToDoItemRoot.open(filePath);
     settings.contentFilePath = filePath;
     settings.Save();
     syncViewFromModel();
 }
コード例 #3
0
 public bool newFile()
 {
     if (!isUserHappyWithTheSavedChanges)
     {
         return(false);
     }
     targetTreeNodeUserInteraction = null;
     nodeToBeCut = null;
     root        = new ToDoItemRoot();
     syncViewFromModel();
     return(true);
 }
コード例 #4
0
        private void contextMenuStrip1_Opening(object sender, CancelEventArgs e)
        {
            createItemToolStripMenuItem.Enabled = hasTarget;
            createItemToolStripMenuItem.Text    = hasTarget ? String.Format("Create item next to '{0}'", targetTreeNodeUserInteraction.Text) : "Create item next to...";

            createItemInsideToolStripMenuItem.Text = hasTarget ? String.Format("Create item inside '{0}'", targetTreeNodeUserInteraction.Text) : "Create Top Level Item";

            renameToolStripMenuItem.Enabled = hasTarget;

            deleteItemToolStripMenuItem.Enabled = hasTarget;
            deleteItemToolStripMenuItem.Text    = hasTarget ? String.Format("Delete '{0}'...", targetTreeNodeUserInteraction.Text) : "Delete Item";

            moveUpToolStripMenuItem.Enabled   = hasTarget && parentOfTargetToDoItem.getChildIndex(getItemFromNode(targetTreeNodeUserInteraction)) > 0;
            moveDownToolStripMenuItem.Enabled = hasTarget && parentOfTargetToDoItem.getChildIndex(getItemFromNode(targetTreeNodeUserInteraction)) < parentOfTargetToDoItem.children.Count - 1;

            cutToolStripMenuItem.Enabled = hasTarget;
            cutToolStripMenuItem.Text    = hasTarget ? String.Format("Cut '{0}'", targetTreeNodeUserInteraction.Text) : "Cut";

            pasteHereToolStripMenuItem.Enabled = nodeToBeCut != null && ToDoItemRoot.canBeCutPastedHere(itemToBeCut, targetOrRootToDoItem);
            if (itemToBeCut != null)
            {
                pasteHereToolStripMenuItem.Text = hasTarget ? String.Format("Paste '{0}' in '{1}'", itemToBeCut.text, targetOrRootToDoItem.text) : "Paste as top level item";
            }
            else
            {
                pasteHereToolStripMenuItem.Text = hasTarget ? String.Format("Paste in '{0}'", targetTreeNodeUserInteraction.Text) : "Paste as top level item";
            }

            newToolStripMenuItem.Enabled = !root.isEmpty;

            saveToolStripMenuItem.Text    = "Save " + settings.fileName;
            saveToolStripMenuItem.Enabled = root.needsToBeSaved;

            saveAsToolStripMenuItem.Enabled = !root.isEmpty;

            alwaysOnTopToolStripMenuItem.Checked = settings.isAlwaysOnTop;

            autoSaveOnFocusOutToolStripMenuItem.Checked = settings.autoSaveOnFocusOut;

            invertedColorThemeToolStripMenuItem.Checked = settings.colorTheme == InvertedThemeName;
        }
コード例 #5
0
 private void pasteHereToolStripMenuItem_Click(object sender, EventArgs e)
 {
     ToDoItemRoot.cutPaste(itemToBeCut, getParentItemFromNode(nodeToBeCut), targetOrRootToDoItem);
     nodeToBeCut = null;
     syncViewFromModel();
 }