public void Add(GumpList list) { Gump[] gumpArray = list.ToArray(); for (int i = 0; i < gumpArray.Length; i++) { gumpArray[i].Parent = this.m_Owner; this.m_List.Add(gumpArray[i]); } this.m_Array = null; this.m_Count = this.m_List.Count; Gumps.Invalidate(); }
public void Set(GumpList g) { this.m_List = new ArrayList(g.m_List); Gump[] gumpArray = this.ToArray(); for (int i = 0; i < gumpArray.Length; i++) { gumpArray[i].Parent = this.m_Owner; } this.m_Array = null; this.m_Count = this.m_List.Count; Gumps.Invalidate(); }
private static void RecurseProcessItemGumps(Gump g, int x, int y, bool isItemGump) { if (isItemGump) { IItemGump gump = (IItemGump)g; Item item = gump.Item; item.MessageX = x + gump.xOffset; item.MessageY = y + gump.yOffset; item.BottomY = y + gump.yBottom; item.MessageFrame = Renderer.m_ActFrames; Gump desktop = Gumps.Desktop; GumpList children = desktop.Children; Gump child = g; while (child.Parent != desktop) { child = child.Parent; } int index = children.IndexOf(child); for (int i = 0; i < m_Messages.Count; i++) { if ((m_Messages[i] is GDynamicMessage) && (((GDynamicMessage)m_Messages[i]).Owner == item)) { int num3 = children.IndexOf((Gump)m_Messages[i]); if ((num3 < index) && (num3 >= 0)) { children.RemoveAt(num3); index = children.IndexOf(child); children.Insert(index + 1, (Gump)m_Messages[i]); } } } } else { foreach (Gump gump4 in g.Children.ToArray()) { if (gump4 is IItemGump) { RecurseProcessItemGumps(gump4, x + gump4.X, y + gump4.Y, true); } else if (gump4.Children.Count > 0) { RecurseProcessItemGumps(gump4, x + gump4.X, y + gump4.Y, false); } } } }
public Gump(int X, int Y) { this.m_Children = new GumpList(this); this.m_X = X; this.m_Y = Y; }