using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using MercatorApi;
using MercatorUi;
using System.Drawing;
using System.Windows.Forms;

namespace SigCli
{
    public class Customizer : MercatorUi.ICustomizers.IFormLoadCustomizer, MercatorUi.ICustomizers.IFormClosedCustomizer
    {

        public void FormLoadCustomize(Form form)
        {
            if ((MercatorUi.Globals.VirtualUI != null) && MercatorUi.Globals.VirtualUI.IsTouchDevice)
            {
                MercatorUi.Forms.Sig.SigForm sigForm = (MercatorUi.Forms.Sig.SigForm)form;
                foreach (string source in new string[2] { "C_NUM_TEL", "C_NUM_GSM" })
                {
                    foreach (Control c in sigForm.FindMovableControlsBySource(source))
                    {
                        MercatorUi.MovableControls.MovableTextBox textBoxPhone = (MercatorUi.MovableControls.MovableTextBox)c;
                        textBoxPhone.ButtonCustom.Image = Image.FromFile(Globals.MainDir + "tinyphone.png");
                        textBoxPhone.ButtonCustom.Visible = true;
                        textBoxPhone.ButtonCustomClick += new EventHandler(textBoxPhone_ButtonCustomClick);
                    }
                }
            }
        }

        public void FormClosedCustomize(Form form)
        {
            if ((MercatorUi.Globals.VirtualUI != null) && MercatorUi.Globals.VirtualUI.IsTouchDevice)
            {
                MercatorUi.Forms.Sig.SigForm sigForm = (MercatorUi.Forms.Sig.SigForm)form;
                foreach (string source in new string[2] { "C_NUM_TEL", "C_NUM_GSM" })
                {
                    foreach (Control c in sigForm.FindMovableControlsBySource(source))
                    {
                        MercatorUi.MovableControls.MovableTextBox textBoxPhone = (MercatorUi.MovableControls.MovableTextBox)c;
                        textBoxPhone.ButtonCustomClick -= new EventHandler(textBoxPhone_ButtonCustomClick);
                    }
                }
            }
        }

        void textBoxPhone_ButtonCustomClick(object sender, EventArgs e)
        {
            MercatorUi.MovableControls.MovableTextBox textBox = (MercatorUi.MovableControls.MovableTextBox)sender;
            string no = Api.NumOnly(textBox.Text.Trim());
            if (no != "")
                MercatorUi.Globals.VirtualUI.OpenLinkDlg("tel:" + no, "");
        }
    }
}