internal void OnMouseEnter(int selectedIndex) { for (int i = 0; i < this.Items.Count; ++i) { var content = m_generator.ContainerFromIndex(i) as CoolMenuItem; // No items selected. if (selectedIndex == -1) { this.Behavior.ApplyMouseEnterBehavior(-1, content); continue; } this.Behavior.ApplyMouseEnterBehavior(Math.Abs(i - selectedIndex), content); } if (MenuIndexChanged != null && selectedIndex != -1) { var content = m_generator.ContainerFromIndex(selectedIndex) as CoolMenuItem; SelectedMenuItemArgs menuArgs = new SelectedMenuItemArgs(content, selectedIndex); MenuIndexChanged(this, menuArgs); } }
internal void OnItemMouseUp(int selectedIndex) { var content = m_generator.ContainerFromIndex(selectedIndex) as CoolMenuItem; this.Behavior.ApplyMouseUpBehavior(selectedIndex, content); if (MenuItemClicked != null) { SelectedMenuItemArgs menuArgs = new SelectedMenuItemArgs(content, selectedIndex); MenuItemClicked(this, menuArgs); } }