using System.Windows;
using System.Windows.Media;
using Machinations.FromFlash.machinations.model;

namespace Machinations.GUI
{
    /// <summary>
    /// interface for NodeView
    /// </summary>
    /// <typeparam name="T"></typeparam>
    public interface INodeView<out T> : IObjectView<T> where T : MachinationsNode // IObjectView 
    {
        new Point Position { get; set; }
        //UIElement UiElement { get; }
        //T Model { get; }
        int ActivationMode { get; set; }
        int PullMode { get; set; }
        void InitShape();

        Brush GetBrushForSelection();
        SimlinkView CreateSimlinkView(SimlinkModel existing = null);
    }

    //public interface INodeView: INodeView<T> where T : MachinationsNode { }
}
