using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Linq;
using System.Windows.Forms;
using MercatorApi;
using MercatorUi;
using MercatorExtensions;
using MercatorDatabase;

// <CompileWithRoslyn />

namespace Action
{
    public class Customizer : MercatorUi.ICustomizers.IActionEngineCreated, MercatorUi.ICustomizers.IActionEngineClosed
    {
        public void ActionEngineCreated(MercatorUi.Engine.Crm.ActionEngine actionEngine)
        {
            actionEngine.ActionFormLoaded += actionEngine_ActionFormLoaded;
        }

        public void ActionEngineClosed(MercatorUi.Engine.Crm.ActionEngine actionEngine)
        {
            actionEngine.ActionFormLoaded -= actionEngine_ActionFormLoaded;
        }

        void actionEngine_ActionFormLoaded(object sender, EventArgs arg)
        {
            MercatorUi.Engine.Crm.ActionEngine actionEngine = (MercatorUi.Engine.Crm.ActionEngine)sender;
            foreach (MercatorUi.MovableControls.MovableHtmlBox2 htmlBox in actionEngine.ActionForm.MovableControls.Values.OfType<MercatorUi.MovableControls.MovableHtmlBox2>())
            {
                ToolStripButton toolStripButtonCustom = new ToolStripButton("", GraphicKit.CurrentGraphicKit.Images.magic16, (s, e) =>
                {
                    // ici le code du bouton
                    htmlBox.HtmlEditor.HtmlText += "<p>hello</p>";
                }) { AutoSize = true, Padding = new Padding(3) };

                ToolStripItem[] items = new ToolStripItem[2]
                {
                    new ToolStripSeparator(),
                    toolStripButtonCustom
                };
                htmlBox.AddToolStripItems(items);
            }
        }
    }
}