private void AddScriptNodes()
        {
            XmlScriptTreeNode tndRoot = (XmlScriptTreeNode)Nodes[0];

            tndRoot.AddNode(Script.HeaderInfo, NodeAdapter.GetHeaderEditor, FormatHeader);
            tndRoot.AddNode(Script, NodeAdapter.GetPrerequisitesEditor, FormatPrerequisites);
            tndRoot.AddNode(Script.RequiredInstallFiles, NodeAdapter.GetRequiredInstallFilesEditor, FormatRequiredInstallFiles);
            XmlScriptTreeNode <XmlScript> tndInstallSteps = tndRoot.AddNode(Script, NodeAdapter.GetInstallStepOrderEditor, FormatInstallSteps, HandleInstallStepsPropertyChange);

            AddInstallSteps(tndInstallSteps);
            if (Script.Version > new Version(1, 0, 0, 0))
            {
                XmlScriptTreeNode <ThreadSafeObservableList <ConditionallyInstalledFileSet> > tndConditionallyInstalledFileSets = tndRoot.AddNode(Script.ConditionallyInstalledFileSets, NodeAdapter.GetConditionallyInstalledFileSetOrderEditor, FormatConditionallyInstalledFileSets, HandleConditionallyInstalledFileSetsChange);
                AddConditionFileInstalls(tndConditionallyInstalledFileSets);
            }
        }
 private void AddConditionFileInstalls(XmlScriptTreeNode <ThreadSafeObservableList <ConditionallyInstalledFileSet> > p_tndConditionallyInstalledFileSets)
 {
     p_tndConditionallyInstalledFileSets.Nodes.Clear();
     foreach (ConditionallyInstalledFileSet cipPattern in Script.ConditionallyInstalledFileSets)
     {
         p_tndConditionallyInstalledFileSets.AddNode(cipPattern, NodeAdapter.GetConditionallyInstalledFileSetEditor, FormatConditionallyInstalledFileSet);
     }
 }
 private void AddOptions(XmlScriptTreeNode <OptionGroup> p_tndGroup)
 {
     p_tndGroup.Nodes.Clear();
     foreach (Option optOption in p_tndGroup.Object.Options)
     {
         p_tndGroup.AddNode(optOption, NodeAdapter.GetOptionEditor, FormatOption);
     }
 }
 private void AddOptionGroups(XmlScriptTreeNode <InstallStep> p_tndStep)
 {
     p_tndStep.Nodes.Clear();
     foreach (OptionGroup opgGroup in p_tndStep.Object.OptionGroups)
     {
         XmlScriptTreeNode <OptionGroup> tndGroup = p_tndStep.AddNode(opgGroup, NodeAdapter.GetOptionGroupEditor, FormatOptionGroup, HandleOptionGroupPropertyChange);
         AddOptions(tndGroup);
     }
 }
        private void AddInstallSteps(XmlScriptTreeNode <XmlScript> p_tndScript)
        {
            p_tndScript.Nodes.Clear();
            XmlScriptTreeNode <InstallStep> tndStep = null;
            Int32       intMaxStepIndex             = (Script.Version > new Version(3, 0, 0, 0)) ? p_tndScript.Object.InstallSteps.Count : 1;
            InstallStep ispStep = null;

            for (Int32 i = 0; i < intMaxStepIndex; i++)
            {
                ispStep = p_tndScript.Object.InstallSteps[i];
                tndStep = p_tndScript.AddNode(ispStep, NodeAdapter.GetInstallStepEditor, FormatInstallStep, HandleInstallStepPropertyChange);
                AddOptionGroups(tndStep);
            }
        }