示例#1
0
        private void DoColorSwatchAndEyedropper()
        {
            GUILayout.BeginHorizontal(new GUILayoutOption[0]);
            if (GUILayout.Button(ColorPicker.styles.eyeDropper, GUIStyle.none, new GUILayoutOption[]
            {
                GUILayout.Width(40f),
                GUILayout.ExpandWidth(false)
            }))
            {
                EyeDropper.Start(this.m_Parent);
                this.m_ColorBoxMode = ColorPicker.ColorBoxMode.EyeDropper;
                GUIUtility.ExitGUI();
            }
            Color color = new Color(this.m_R, this.m_G, this.m_B, this.m_A);
            Rect  rect  = GUILayoutUtility.GetRect(20f, 20f, 20f, 20f, ColorPicker.styles.colorPickerBox, new GUILayoutOption[]
            {
                GUILayout.ExpandWidth(true)
            });

            EditorGUIUtility.DrawColorSwatch(rect, color, this.m_ShowAlpha);
            if (Event.current.type == EventType.Repaint)
            {
                ColorPicker.styles.pickerBox.Draw(rect, GUIContent.none, false, false, false, false);
            }
            GUILayout.EndHorizontal();
        }
示例#2
0
        public void DrawColorBox(Texture gradientTex, Color col)
        {
            if (!GUI.enabled)
            {
                col = new Color(0.3f, 0.3f, 0.3f, 1f);
                EditorGUI.showMixedValue = false;
            }
            GUILayout.BeginVertical(new GUILayoutOption[0]);
            GUILayout.Space(5f);
            GUILayoutOption[] options = new GUILayoutOption[] { GUILayout.ExpandWidth(true), GUILayout.Height(10f) };
            Rect position             = GUILayoutUtility.GetRect(new GUIContent(), GUIStyle.none, options);

            GUI.Box(position, GUIContent.none);
            position = new Rect(position.x + 1f, position.y + 1f, position.width - 2f, position.height - 2f);
            if (gradientTex != null)
            {
                GUI.DrawTexture(position, gradientTex);
            }
            else
            {
                EditorGUIUtility.DrawColorSwatch(position, col, false);
            }
            GUILayout.EndVertical();
        }
示例#3
0
 internal static void DrawColorSwatch(Rect position, Color color, bool showAlpha)
 {
     EditorGUIUtility.DrawColorSwatch(position, color, showAlpha, false);
 }
示例#4
0
 public static void DrawColorSwatch(Rect position, Color color)
 {
     EditorGUIUtility.DrawColorSwatch(position, color, true);
 }