Ejemplo n.º 1
0
 public static int SelectionList(int selected, string[] list, DoubleClickCallback callback, SingleClickCallback selCallback)
 {
     return(SelectionList(selected, list, getListItemStyle("List Item"), callback, selCallback));
 }
Ejemplo n.º 2
0
    public static int SelectionList(int selected, GUIContent[] list, GUIStyle elementStyle, DoubleClickCallback callback, SingleClickCallback selCallback)
    {
        for (int i = 0; i < list.Length; ++i)
        {
            Rect elementRect = GUILayoutUtility.GetRect(list[i], elementStyle);
            if (elementRect.width > maxListWidth)
            {
                elementRect.width = maxListWidth;
            }

            bool hover = elementRect.Contains(Event.current.mousePosition);
            if (hover && Event.current.type == EventType.MouseDown && Event.current.clickCount == 1)
            {
                selected = i;
                Event.current.Use();
                if (selCallback != null)
                {
                    selCallback(i);
                }
            }
            else if (hover && callback != null && Event.current.type == EventType.MouseDown && Event.current.clickCount == 2)
            {
                callback(i);
                Event.current.Use();
            }
            else if (Event.current.type == EventType.Repaint)
            {
                elementStyle.Draw(elementRect, list[i], hover, false, i == selected, false);
            }
        }
        return(selected);
    }
Ejemplo n.º 3
0
 public static int SelectionList(int selected, string[] list, GUIStyle elementStyle, DoubleClickCallback callback, SingleClickCallback selCallback)
 {
     GUIContent[] contentList = new GUIContent[list.Length];
     for (int i = 0; i < list.Length; ++i)
     {
         contentList[i] = new GUIContent(list[i]);
     }
     return(SelectionList(selected, contentList, elementStyle, callback, selCallback));
 }