/// <summary> Called whenever the xNode editor window is updated </summary>
        public override void OnBodyGUI()
        {
            // Attempt to draw a texture as the base color
            if (tex == null)
            {
                tex = new Texture2D(1, 1, TextureFormat.RGBA32, false);
            }
            tex.SetPixel(0, 0, customNodeColor);
            tex.Apply();

            if (drawCustomTexture)
            {
                GUI.DrawTexture(new Rect(0, 0, GetWidth(), GetWidth() * 0.5f), tex, ScaleMode.ScaleAndCrop);
            }

            // Draw the default GUI first, so we don't have to do all of that manually.
            base.OnBodyGUI();

            // `target` points to the node, but it is of type `Node`, so cast it.
            DisplayValue displayValueNode = target as DisplayValue;

            // Get the value from the node, and display it
            object obj = displayValueNode.GetValue();

            if (obj != null)
            {
                EditorGUILayout.LabelField(obj.ToString());
            }

            //// CODE TO CHANGE NODE COLOR
            //customNodeColor = EditorGUILayout.ColorField(customNodeColor);

            // Checkbox to allow the drawing of custom texture
            drawCustomTexture = EditorGUILayout.Toggle("Custom node texture", drawCustomTexture);
        }
        /// <summary> Called whenever the xNode editor window is updated </summary>
        public override void OnBodyGUI()
        {
            // Draw the default GUI first, so we don't have to do all of that manually.
            base.OnBodyGUI();

            // `target` points to the node, but it is of type `Node`, so cast it.
            DisplayValue displayValueNode = target as DisplayValue;

            // Get the value from the node, and display it
            object obj = displayValueNode.GetValue();

            if (obj != null)
            {
                EditorGUILayout.LabelField(obj.ToString());
            }
        }