コード例 #1
0
        /// <summary>
        /// Clone this component
        /// </summary>
        /// <param name="name"></param>
        /// <param name="bRecursivley"></param>
        /// <returns></returns>
        public override CompBase Clone(string name, bool bRecursivley)
        {
            SMFlowContainer newComp = base.Clone(name, bRecursivley) as SMFlowContainer;

            newComp.ScopeID    = ScopeID;
            newComp.GridCorner = GridCorner;
            newComp.GridSize   = GridSize;

            return(newComp);
        }
コード例 #2
0
        /// <summary>
        /// Check if the scope is doable
        /// </summary>
        /// <param name="proposedScope"></param>
        /// <returns></returns>
        public override string ScopeCheck(string proposedScope)
        {
            if (proposedScope == SMFlowContainer.NOSCOPE || string.IsNullOrEmpty(ConditionID) || ConditionID[0] == '(')
            {
                return(proposedScope);
            }
            int lastPeriod = ConditionID.LastIndexOf('.');

            if (lastPeriod < 0)
            {
                U.LogPopup("Expected a period. {0}", ConditionID);
                return(proposedScope);
            }
            string propPath = ConditionID.Substring(0, lastPeriod);

            return(SMFlowContainer.DetermineScope(proposedScope, propPath));
        }
コード例 #3
0
        /// <summary>
        /// Check if the scope is doable
        /// </summary>
        /// <param name="proposedScope"></param>
        /// <returns></returns>
        public string ScopeCheck(string proposedScope)
        {
            if (proposedScope == SMFlowContainer.NOSCOPE || string.IsNullOrEmpty(MethodID))
            {
                return(proposedScope);
            }
            string methodPath = string.Empty;

            if (MethodID.Contains('.'))
            {
                U.SplitMethodID(MethodID, out methodPath);
                int lastPeriod = methodPath.LastIndexOf('.');
                if (lastPeriod > 0)
                {
                    methodPath = methodPath.Substring(0, lastPeriod);
                }
                else
                {
                    methodPath = string.Empty;
                }
            }
            return(SMFlowContainer.DetermineScope(proposedScope, methodPath));
        }