/// <summary> /// Shows the menu and uses entry as the parent menu entry /// </summary> /// <param name="entry">The menu entry which will be used to display the menu</param> public void ShowMenu(TextParentEntry entry) { currentEntry = entry; if (currentEntry.Parent == null) { backButtonMenu.gameObject.SetActive(false); } else { backButtonMenu.gameObject.SetActive(true); } CreateMenu(); }
/// <summary> /// Generates the menu hierarchy and load the texts /// </summary> private void GenerateEntries() { TextParentEntry root = new TextParentEntry("Root", null); TextParentEntry macbeth = new TextParentEntry("Macbeth", root); root.Subentries.Add(macbeth); macbeth.Subentries.Add(new TextDisplayEntry("Act 1, Scene 1", macbeth, LoadText("Macbeth 1-1"))); macbeth.Subentries.Add(new TextDisplayEntry("Act 1, Scene 2", macbeth, LoadText("Macbeth 1-2"))); TextParentEntry hamlet = new TextParentEntry("Hamlet", root); root.Subentries.Add(hamlet); hamlet.Subentries.Add(new TextDisplayEntry("Act 1, Scene 1", hamlet, LoadText("Hamlet 1-1"))); currentEntry = root; }
/// <summary> /// Creates a new menu entry with children /// </summary> /// <param name="name">The label of the menu entry</param> /// <param name="parent">The parent of this menu entry</param> public TextParentEntry(string name, TextParentEntry parent) : base(name, parent) { Subentries = new List <TextEntry>(); }
/// <summary> /// Creates a new menu entry which leads to text /// </summary> /// <param name="name">The menu entry's label</param> /// <param name="parent">The parent menu entry</param> /// <param name="text">The text which will be displayed in the text view if the user clicks on this menu entry</param> public TextDisplayEntry(string name, TextParentEntry parent, string text) : base(name, parent) { Text = text; }
/// <summary> /// Creates a new menu entry /// </summary> /// <param name="name">The label of the menu entry</param> /// <param name="parent">The parent of the menu entry</param> public TextEntry(string name, TextParentEntry parent) : this(name) { Parent = parent; }