using ComPDFKit.Tool;
using Compdfkit_Tools.PDFControl;
using System.Windows.Controls;

namespace Compdfkit_Tools.Edit
{
    public partial class PDFContentEditControl : UserControl
    {
        private PDFImageEditControl PDFImageEditControl = new PDFImageEditControl();
        private PDFTextEditControl PDFTextEditControl = new PDFTextEditControl();

        public PDFViewControl ViewControl { get; private set; }
        public PDFEditParam EditEvent { get; set; }

        public PDFContentEditControl()
        {
            InitializeComponent();
        }

        public void InitWithPDFViewer(PDFViewControl newPDFView)
        {
            ViewControl = newPDFView;
            PDFImageEditControl.InitWithPDFViewer(newPDFView.PDFViewTool);
        }

        public void SetPDFTextEditData(TextEditParam editEvent, bool isTemp = false)
        {
            if (!isTemp)
            {
                PDFTextEditControl.SetPDFTextEditData(editEvent);
                ContentEditContainer.Child = PDFTextEditControl;
            }
            else
            {
                PDFTextEditControl tempPDFTextEditControl = new PDFTextEditControl();
                tempPDFTextEditControl.SetPDFTextEditData(editEvent);
                ContentEditContainer.Child = tempPDFTextEditControl;
            }
        }

        public void ClearContentControl()
        {
            ContentEditContainer.Child = null;
        }

        public void SetPDFImageEditData(ImageEditParam editEvent)
        {
                PDFImageEditControl.SetPDFImageEditData(editEvent);
                ContentEditContainer.Child = PDFImageEditControl;
        }

        public void RefreshThumb()
        {
            PDFImageEditControl?.SetImageThumb();
        }
    }
}
