using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using MercatorApi;
using MercatorUi;
using System.Linq;

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

        public void FormLoadCustomize(System.Windows.Forms.Form form)
        {
            MercatorUi.Forms.Sig.SigForm sigForm = (MercatorUi.Forms.Sig.SigForm)form;
            MercatorUi.Forms.Sig.SigGrids.ArtLiens artliens = sigForm.MovableControls.Values.OfType<MercatorUi.Forms.Sig.SigGrids.ArtLiens>().FirstOrDefault();
            if (artliens != null)
                artliens.AfterSelectNewSigRecord += GridArtliens_AfterSelectNewSigRecord;
        }

        public void FormClosedCustomize(System.Windows.Forms.Form form)
        {
            MercatorUi.Forms.Sig.SigForm sigForm = (MercatorUi.Forms.Sig.SigForm)form;
            MercatorUi.Forms.Sig.SigGrids.ArtLiens artliens = sigForm.MovableControls.Values.OfType<MercatorUi.Forms.Sig.SigGrids.ArtLiens>().FirstOrDefault();
            if (artliens != null)
                artliens.AfterSelectNewSigRecord -= GridArtliens_AfterSelectNewSigRecord;
        }

        private void GridArtliens_AfterSelectNewSigRecord(object sender, MercatorUi.MovableControls.MovableGrid.AfterSelectNewSigRecordEventArgs e)
        {
            MercatorUi.Forms.Sig.SigGrids.ArtLiens artliens = (MercatorUi.Forms.Sig.SigGrids.ArtLiens)sender;
            artliens.Grid.Rows[e.RowIndex].Cells["ACH"].Value = true;
        }
    }
}