コード例 #1
0
        internal DataviewHeaderBase CreateDataviewHeaders(Task task, int tableIndex)
        {
            bool isTableLocal = task.IsTableLocal(tableIndex);
            DataviewHeaderBase dataviewHeader = (isTableLocal ? new LocalDataviewHeader(task, tableIndex) : (DataviewHeaderBase) new RemoteDataviewHeader(task));

            return(dataviewHeader);
        }
コード例 #2
0
        /// <summary>
        /// When the parser encounters the end of an element, it calls this method
        /// </summary>
        /// <param name="elementName"></param>
        /// <param name="elementValue"></param>
        /// <param name="attributes"></param>
        public void endElement(string elementName, string elementValue, NameValueCollection attributes)
        {
            String valueStr = attributes[ConstInterface.MG_ATTR_TABLE_INDEX];

            if (valueStr != null)
            {
                int tableIndex = XmlParser.getInt(valueStr);
                DataviewHeaderBase dataviewHeader = _dataviewHeadersFactory.CreateDataviewHeaders(_task, tableIndex);
                attributes.Remove(ConstInterface.MG_ATTR_TABLE_INDEX);
                dataviewHeader.SetAttributes(attributes);
                _dataviewHeaders[dataviewHeader.Id] = dataviewHeader;
            }
        }
コード例 #3
0
        /// <summary>
        /// find links
        /// </summary>
        /// <param name="predicate"> find link according to the predicate</param>
        /// <returns></returns>
        internal DataviewHeaderBase Find(Predicate <DataviewHeaderBase> predicate)
        {
            IEnumerator dataviewHeaders = _dataviewHeaders.Values.GetEnumerator();

            while (dataviewHeaders.MoveNext())
            {
                DataviewHeaderBase dataviewHeader = (DataviewHeaderBase)dataviewHeaders.Current;
                if (predicate(dataviewHeader))
                {
                    return(dataviewHeader);
                }
            }
            return(null);
        }