Exemple #1
0
        private List <Node> addNodeToBoard(BOARD board)
        {
            mindmap.createBoard(board);
            List <Node> listNode  = new List <Node>();
            List <int>  idParents = new List <int>();

            foreach (TOPIC topic in TOPICcontroller.getListTopic(board.ID))
            {
                Color bcolor = ColorTranslator.FromHtml(topic.BACKCOLOR);
                Color fcolor = ColorTranslator.FromHtml(topic.FORECOLOR);
                Color pcolor = ColorTranslator.FromHtml(topic.COLOR_PATH);
                mPath path   = new mPath(topic.SIZE_PATH, pcolor, topic.STYLE_PATH);

                bool flag = false;
                foreach (Node n in listNode)
                {
                    if (topic.ID_PARENT == n.id)
                    {
                        Node node = mindmap.createNode(topic.ID, topic.LABEL_TP, new Point(topic.POS_X, topic.POS_Y), new Size(topic.WIDTH, topic.HEIGHT), bcolor, fcolor, path, (float)topic.SIZE, n, topic.TEXT_SIZE, topic.SHAPE, topic.FONT);
                        mindmap.board.picbox.Controls.Add(node);
                        listNode.Add(node);
                        flag = true;
                        break;
                    }
                }
                if (!flag)
                {
                    Node node = mindmap.createNode(topic.ID, topic.LABEL_TP, new Point(topic.POS_X, topic.POS_Y), new Size(topic.WIDTH, topic.HEIGHT), bcolor, fcolor, path, (float)topic.SIZE, null, topic.TEXT_SIZE, topic.SHAPE, topic.FONT);
                    mindmap.board.picbox.Controls.Add(node);
                    listNode.Add(node);
                }
            }
            return(listNode);
        }
Exemple #2
0
        public void update()
        {
            //storage
            STORAGE storage = new STORAGE();

            storage.ID_BOARD      = mindmap.board.id;
            storage.NAME_S        = STORAGEcontroller.getNameStorage(storage.ID_BOARD);
            storage.DATE_MODIFIED = DateTime.Now;

            //board
            BOARD board = new BOARD();

            board.ID     = storage.ID_BOARD;
            board.WIDTH  = mindmap.board.picbox.Width;
            board.HEIGHT = mindmap.board.picbox.Height;
            board.COLOR  = HexConverter(mindmap.board.picbox.BackColor);

            //node
            TOPICcontroller.removeNode(convertNodeToTopic(board, mindmap.listDelete));
            mindmap.listDelete.Clear();
            List <TOPIC> existTopics = new List <TOPIC>()
            {
            };

            existTopics = TOPICcontroller.getListTopic(board.ID);
            List <TOPIC> updateTopics = new List <TOPIC>();
            List <TOPIC> newTopics    = new List <TOPIC>();

            newTopics = convertNodeToTopic(board, this.listNode);
            foreach (TOPIC topic in newTopics.ToList())
            {
                foreach (TOPIC etopic in existTopics.ToList())
                {
                    if (topic.ID == etopic.ID)
                    {
                        updateTopics.Add(topic);
                        newTopics.Remove(topic);
                    }
                }
            }
            TOPICcontroller.updateListTopic(updateTopics);
            TOPICcontroller.addListTopic(newTopics, board.ID);

            BOARDcontroller.updateBoard(board);

            if (STORAGEcontroller.updateStorage(storage))
            {
                MessageBox.Show("saved successfully",
                                "Information",
                                MessageBoxButtons.OK,
                                MessageBoxIcon.Information);
            }
        }