Ejemplo n.º 1
0
                    /// <summary>
                    /// Creates and returns a new control root with the name given.
                    /// </summary>
                    public ModControlRoot AddModRoot(string clientName)
                    {
                        ModControlRoot modSettings = new ModControlRoot()
                        {
                            Name = clientName
                        };

                        scrollBox.Add(modSettings);

                        return(modSettings);
                    }
Ejemplo n.º 2
0
            private RichHudTerminal() : base(ApiModuleTypes.SettingsMenu, false, true)
            {
                var data = GetApiData();

                GetOrSetMembersFunc = data.Item1;
                GetNewControlFunc   = data.Item3;
                GetNewContainerFunc = data.Item4;
                GetNewPageFunc      = data.Item5;

                GetNewPageCategoryFunc =
                    GetOrSetMembersFunc(null, (int)TerminalAccessors.GetNewPageCategoryFunc) as Func <ControlContainerMembers>;

                menuRoot = new ModControlRoot(data.Item2);
            }
                public static MyTuple <object, HudElementBase> GetClientData(string clientName)
                {
                    ModControlRoot newRoot = Instance.settingsMenu.AddModRoot(clientName);

                    var data = new SettingsMenuMembers()
                    {
                        Item1 = GetOrSetMembers,
                        Item2 = newRoot.GetApiData(),
                        Item3 = GetNewTerminalControl,
                        Item4 = GetNewControlContainer,
                        Item5 = GetNewModPage,
                    };

                    return(new MyTuple <object, HudElementBase>(data, newRoot.Element));
                }
Ejemplo n.º 4
0
                    /// <summary>
                    /// Opens to the given terminal page
                    /// </summary>
                    public void SetSelection(ModControlRoot modRoot, TerminalPageBase newPage)
                    {
                        listInput.SetSelection(modRoot);

                        if (SelectedPage != newPage)
                        {
                            TerminalPageCategoryBase subcategory = null;
                            bool contains = false;

                            foreach (TerminalPageBase page in modRoot.Pages)
                            {
                                if (page == newPage)
                                {
                                    contains = true;
                                    break;
                                }
                            }

                            if (!contains)
                            {
                                foreach (TerminalPageCategoryBase cat in modRoot.Subcategories)
                                {
                                    foreach (TerminalPageBase page in cat.Pages)
                                    {
                                        if (page == newPage)
                                        {
                                            subcategory = cat;
                                            contains    = true;
                                            break;
                                        }
                                    }
                                }
                            }

                            if (subcategory != null)
                            {
                                modRoot.SetSelection(subcategory);
                                subcategory.SetSelection(newPage);
                            }
                            else
                            {
                                modRoot.SetSelection(newPage);
                            }
                        }
                    }
 private RichHudTerminal() : base(false, true)
 {
     settingsMenu = new TerminalWindow(HudMain.HighDpiRoot);
     root         = settingsMenu.AddModRoot("Rich HUD Master");
     MyAPIGateway.Utilities.MessageEntered += MessageHandler;
 }
Ejemplo n.º 6
0
 /// <summary>
 /// Opens the given terminal page
 /// </summary>
 public void SetSelection(ModControlRoot modRoot, TerminalPageBase newPage) =>
 modList.SetSelection(modRoot, newPage);