Esempio n. 1
0
        protected virtual void OnFormLoadBefore(SBOItemEventArg pVal, out bool BubbleEvent)
        {
            List <DoverFormBase> pendingList; // forms that does not have UniqueID.
            Type   implementationType;
            IForm  form = sapApp.Forms.Item(pVal.FormUID);
            string key  = form.TypeEx;

            BubbleEvent = true;

            if (pendingForms.TryGetValue(key, out pendingList))
            {
                pendingForms.Remove(key);
                foreach (var addOneForm in pendingList)
                {
                    addOneForm.OnFormLoadBefore(pVal, out BubbleEvent);
                }
            }
            else if (formImplementationType.TryGetValue(key, out implementationType) && !events.ContainsKey(pVal.FormUID))
            // if no form was registered, it's a system or udo form.
            {
                DoverFormBase addOneSysForm = (DoverFormBase)ContainerManager.Container.Resolve(implementationType);
                addOneSysForm.FormUID = pVal.FormUID;
                RegisterForm(pVal.FormUID, addOneSysForm);
                addOneSysForm.OnFormLoadBefore(pVal, out BubbleEvent);
            }
        }
Esempio n. 2
0
 /*
  * Register form so we can get FormUID when form is being created.
  */
 private void RegisterForm(string uniqueID, DoverFormBase form)
 {
     if (!events.ContainsKey(uniqueID)) // prevent duplicates. Shouldn't happen.
     {
         events.Add(uniqueID, form);
         form.OnInitializeFormEvents();
     }
 }
Esempio n. 3
0
        private void RegisterFormLoadBefore(string type, DoverFormBase form)
        {
            List <DoverFormBase> pendingList; // forms that does not have UniqueID created by UI.

            if (!pendingForms.TryGetValue(type, out pendingList))
            {
                pendingList = new List <DoverFormBase>();
                pendingForms.Add(type, pendingList);
            }
            pendingList.Add(form);
        }
Esempio n. 4
0
 private void RegisterFormLoadBefore(string type, DoverFormBase form)
 {
     List<DoverFormBase> pendingList; // forms that does not have UniqueID created by UI.
     if (!pendingForms.TryGetValue(type, out pendingList))
     {
         pendingList = new List<DoverFormBase>();
         pendingForms.Add(type, pendingList);
     }
     pendingList.Add(form);
 }
Esempio n. 5
0
 /*
  * Register form so we can get FormUID when form is being created.
  */
 private void RegisterForm(string uniqueID, DoverFormBase form)
 {
     if (!events.ContainsKey(uniqueID)) // prevent duplicates. Shouldn't happen.
     {
         events.Add(uniqueID, form);
         form.OnInitializeFormEvents();
     }
 }