GetConditionTypes() 개인적인 메소드

private GetConditionTypes ( ArrayList listToFill ) : void
listToFill System.Collections.ArrayList
리턴 void
예제 #1
0
        internal void UnregisterNodeCondition(TreeNode node, BaseCondition cond)
        {
            ArrayList list = (ArrayList)conditionsToNodes [cond];

            if (list == null)
            {
                return;
            }

            list.Remove(node);
            if (list.Count == 0)
            {
                conditionsToNodes.Remove(cond);
                ArrayList conditionTypeIds = new ArrayList();
                cond.GetConditionTypes(conditionTypeIds);
                foreach (string cid in conditionTypes.Keys)
                {
                    ConditionInfo info = conditionTypes [cid] as ConditionInfo;
                    if (info != null && info.BoundConditions != null)
                    {
                        info.BoundConditions.Remove(cond);
                    }
                }
            }
        }
예제 #2
0
        internal void RegisterNodeCondition(TreeNode node, BaseCondition cond)
        {
            ArrayList list = (ArrayList)conditionsToNodes [cond];

            if (list == null)
            {
                list = new ArrayList();
                conditionsToNodes [cond] = list;
                ArrayList conditionTypeIds = new ArrayList();
                cond.GetConditionTypes(conditionTypeIds);

                foreach (string cid in conditionTypeIds)
                {
                    // Make sure the condition is properly created
                    GetCondition(cid);

                    ConditionInfo info = CreateConditionInfo(cid);
                    if (info.BoundConditions == null)
                    {
                        info.BoundConditions = new ArrayList();
                    }

                    info.BoundConditions.Add(cond);
                }
            }
            list.Add(node);
        }
예제 #3
0
 internal override void GetConditionTypes(System.Collections.ArrayList listToFill)
 {
     baseCond.GetConditionTypes(listToFill);
 }
예제 #4
0
 internal override void GetConditionTypes(List <string> listToFill)
 {
     baseCond.GetConditionTypes(listToFill);
 }
		internal void UnregisterNodeCondition (TreeNode node, BaseCondition cond)
		{
			ArrayList list = (ArrayList) conditionsToNodes [cond];
			if (list == null)
				return;
			
			list.Remove (node);
			if (list.Count == 0) {
				conditionsToNodes.Remove (cond);
				ArrayList conditionTypeIds = new ArrayList ();
				cond.GetConditionTypes (conditionTypeIds);
				foreach (string cid in conditionTypes.Keys) {
					ConditionInfo info = conditionTypes [cid] as ConditionInfo;
					if (info != null && info.BoundConditions != null)
						info.BoundConditions.Remove (cond);
				}
			}
		}
		internal void RegisterNodeCondition (TreeNode node, BaseCondition cond)
		{
			ArrayList list = (ArrayList) conditionsToNodes [cond];
			if (list == null) {
				list = new ArrayList ();
				conditionsToNodes [cond] = list;
				ArrayList conditionTypeIds = new ArrayList ();
				cond.GetConditionTypes (conditionTypeIds);
				
				foreach (string cid in conditionTypeIds) {
				
					// Make sure the condition is properly created
					GetCondition (cid);
					
					ConditionInfo info = CreateConditionInfo (cid);
					if (info.BoundConditions == null)
						info.BoundConditions = new ArrayList ();
						
					info.BoundConditions.Add (cond);
				}
			}
			list.Add (node);
		}