コード例 #1
0
        protected virtual rMindVerticalLine CreateVerticalLine()
        {
            var line = new rMindVerticalLine(this);

            bool first = m_horizontal_lines.Count == 0 && m_vertical_lines.Count == 0;

            if (!first)
            {
                Template.ColumnDefinitions.Add(new ColumnDefinition()
                {
                    Width    = GridLength.Auto,
                    MinWidth = 24,
                });

                foreach (var l in HLines)
                {
                    foreach (var node in l.RightNodes)
                    {
                        node.Column += 1;
                    }
                }
            }

            m_vertical_lines.Add(line);
            return(line);
        }
コード例 #2
0
        protected virtual void RemoveVerticalLine(rMindVerticalLine line)
        {
            var removeNodes = line.TopNodes.Union(line.BottomNodes).ToList();
            var colIdx      = GetLineIndex(line);

            RemoveNodes(removeNodes);
            // Собираем узлы ниже
            OffsetNodes(false, colIdx);
            if (Template.ColumnDefinitions.Count > 1)
            {
                Template.ColumnDefinitions.Remove(
                    Template.ColumnDefinitions.Last()
                    );
            }
            VLines.Remove(line);
        }