public void InsertAt(int index, T controlkey, string value, object waitTime)
        {
            if ((index > Count) || (index < 0))
            {
                return;
            }

            ControlActionValuePair <T> pair = new ControlActionValuePair <T>(controlkey, ActionConstants.UNDEFINED, value, waitTime);

            _controlKeyValuePairs.Insert(index, pair);
            if (_currIndex >= index)
            {
                _currIndex++;
            }
        }
        public void Add(T controlKey, string action, object value, object waitTime)
        {
            ControlActionValuePair <T> pair = new ControlActionValuePair <T>(controlKey, action, value, waitTime);

            _controlKeyValuePairs.Add(pair);
        }
        public string Action(int index)
        {
            ControlActionValuePair <T> kvpair = (ControlActionValuePair <T>)_controlKeyValuePairs[index];

            return(kvpair.Action);
        }
        public object WaitTime(int index)
        {
            ControlActionValuePair <T> kvpair = (ControlActionValuePair <T>)_controlKeyValuePairs[index];

            return(kvpair.WaitTime);
        }
        public T ControlKey(int index)
        {
            ControlActionValuePair <T> kvpair = (ControlActionValuePair <T>)_controlKeyValuePairs[index];

            return(kvpair.ControlKey);
        }