using System.Windows;
using AIStudio.Wpf.DiagramDesigner.Controls;

namespace AIStudio.Wpf.DiagramDesigner.Services
{
    public class WPFUIVisualizerService : IUIVisualizerService
    {

        #region Public Methods
        /// <summary>
        /// This method displays a modal dialog associated with the given key.
        /// </summary>
        /// <param name="dataContextForPopup">Object state to associate with the dialog</param>
        /// <returns>True/False if UI is displayed.</returns>
        public bool? ShowDialog(object dataContextForPopup, bool buttonVisable = true)
        {
            Window win = new PopupWindow();
            win.DataContext = dataContextForPopup;
            win.Owner = Application.Current.MainWindow;
            if (win != null)
                return win.ShowDialog();

            return false;
        }

        public bool? ShowDialog(object dataContextForPopup, double width, double height)
        {
            PopupWindow win = new PopupWindow();
            win.SizeToContent = SizeToContent.Manual;
            win.Width = width;
            win.Height = height;     
            win.DataContext = dataContextForPopup;
            win.Owner = Application.Current.MainWindow;
            if (win != null)
                return win.ShowDialog();

            return false;
        }
        #endregion


    }
}
