示例#1
0
        /// <summary>
        /// Заповнює форму для роботи з буфером даними з буфера
        /// </summary>
        /// <param name="load_form">форма для заповнення</param>
        internal void FillData(frmSelectBufferData load_form)
        {
            foreach (string k in value.Keys)
            {
                BufferData bd;
                value.TryGetValue(k, out bd);

                if (bd != null)
                {
                    if (load_form.Validator != null)
                    {
                        int  valKey = getValidationDelegateHashCode(load_form.Validator);
                        bool valRes;

                        if (bd.ValidatorsResults.ContainsKey(valKey))
                        {
                            valRes = bd.ValidatorsResults[valKey];
                        }
                        else
                        {
                            //testing
                            //MessageBox.Show("Validating " + bd.ToString() + " with " + valKey);
                            valRes = load_form.Validator(bd);
                            bd.ValidatorsResults.Add(valKey, valRes);
                        }

                        load_form.AddData(valRes, k, bd.Icon, bd.ToString());
                    }
                    else
                    {
                        load_form.AddData(k, bd.Icon, bd.ToString());
                    }
                }
            }
        }
示例#2
0
        /// <summary>
        /// Викликає діалог вибору обєкту з буфера з перевіркою його валідності
        /// </summary>
        /// <param name="validator">валідатор обєктів</param>
        /// <returns>тру, якщо був обраний валідний обєкт</returns>
        public BufferData LoadDialog(ValidationCallback validator)
        {
            //validator = delegate(BufferData obj) { return obj.ToString().Length>7 ;};

            frmSelectBufferData frm_load = new frmSelectBufferData(validator);

            if (frm_load.ShowDialog() == DialogResult.OK)
            {
                BufferData selectedBd = Load(frm_load.SelectedName);
                if (validator == null)
                {
                    return(selectedBd);
                }
                else
                {
                    int valKey = getValidationDelegateHashCode(validator);
                    if (selectedBd.ValidatorsResults.ContainsKey(valKey) &&
                        selectedBd.ValidatorsResults[valKey])
                    {
                        return(selectedBd);
                    }
                    else
                    {
                        return(null);
                    }
                }
            }
            else
            {
                return(null);
            }
        }
示例#3
0
        internal void FillData(frmSelectBufferData load_form, string elName)
        {
            BufferData bd;

            if (!value.TryGetValue(elName, out bd))
            {
                return;
            }
        }
示例#4
0
        /// <summary>
        /// Викликає діалог для збереження нового обєкту
        /// </summary>
        /// <param name="obj">обєкт, що заноситься до буфера</param>
        public void SaveDialog(BufferData obj)
        {
            if (obj == null)
            {
                throw new ArgumentNullException("obj");
            }

            frmSelectBufferData frm_load = new frmSelectBufferData(true, null);

            if (frm_load.ShowDialog() == DialogResult.OK)
            {
                Save(frm_load.SaveName, obj);
            }
        }