Example #1
0
        //
        // LEFT FLOW LAYOUT PANEL
        //
        /// <summary>
        /// Adds a NodeEditPanel to the root node FlowLayoutPanel.
        /// </summary>
        public void AddNodeEditPanelAsRoot(Choice targetingChoice)
        {
            NodeEditPanel newNodeEditPanel = new NodeEditPanel(Data.Instance.AddNode());

            targetingChoice.Target      = newNodeEditPanel.DisplayedNode.ID;
            NodeEditPanel.RootNodePanel = newNodeEditPanel;
            UpdateNodeEditPanels();
        }
 private void InnitiliseForNewChoice()
 {
     if (displayedChoice.Target != "")
     {
         hasTarget = true;
     }
     else
     {
         hasTarget = false;
     }
     parentNodePanel    = (NodeEditPanel)this.Parent.Parent;
     containingForm     = (mainEditor)this.TopLevelControl;
     playerTextBox.Text = displayedChoice.Player;
     if (hasTarget)
     {
         targetNodeIDValueTextBox.Text = displayedChoice.Target;
     }
     UpdateTargetPanel();
 }
Example #3
0
        private void UpdateControlsDisplay()
        {
            // Clear existing nodes and controls
            flowPanel.SuspendLayout();
            DrawingControl.SuspendDrawing(flowPanel);
            for (int i = currentPageControls.Count - 1; i > 0; i--)
            {
                currentPageControls[i].Dispose();
            }
            currentPageControls.Clear();
            flowPanel.Controls.Clear();

            // Show loading message
            flowPanel.ResumeLayout();
            DrawingControl.ResumeDrawing(flowPanel);
            flowPanel.Controls.Add(widthGuide);
            flowPanel.Controls.Add(GenerateHeading("Loading..."));
            flowPanel.SuspendLayout();
            DrawingControl.SuspendDrawing(flowPanel);
            if (nodes.Count > 0)
            {
                Node startingNode   = nodes[(pageNumber - 1) * (int)nodesPerPageNumUpDown.Value];
                bool lookingForNode = true;
                int  objectIndex    = 0;
                int  index          = 0;
                while ((lookingForNode) && (index < allObjects.Count))
                {
                    if (allObjects[index] == startingNode)
                    {
                        objectIndex    = index;
                        lookingForNode = false;
                    }
                    index++;
                }
                if (objectIndex == 1)
                {
                    currentPageControls.Add(GenerateHeading((string)allObjects[0]));
                }
                int nodeCounter = 0;
                while ((nodeCounter < (int)nodesPerPageNumUpDown.Value) &&
                       (objectIndex < allObjects.Count))
                {
                    if (allObjects[objectIndex] is Node)
                    {
                        if (((Node)allObjects[objectIndex] == NodeEditPanel.RootNodePanel.DisplayedNode) &&
                            (!displayingPageControlPanel))
                        {
                            currentPageControls.Add(NodeEditPanel.RootNodePanel);
                        }
                        else
                        {
                            NodeEditPanel nodeEditPanel = new NodeEditPanel((Node)allObjects[objectIndex]);
                            currentPageControls.Add(nodeEditPanel);
                        }
                        nodeCounter++;
                    }
                    else if (allObjects[objectIndex] is string)
                    {
                        currentPageControls.Add(GenerateHeading((string)allObjects[objectIndex]));
                    }
                    objectIndex++;
                }
            }
            // Add new nodes/controls
            flowPanel.Controls.Clear();
            flowPanel.Controls.Add(widthGuide);
            flowPanel.Controls.AddRange(currentPageControls.ToArray());
            flowPanel.ResumeLayout();
            DrawingControl.ResumeDrawing(flowPanel);
        }
 private void makeNodeRootButton_Click(object sender, EventArgs e)
 {
     RootNodePanel = new NodeEditPanel(this.displayedNode);
     containingForm.UpdateNodeEditPanels();
     Dispose();
 }