public void UpdateHighlightedParameter(CSharpParameterCompletionEngine pce)
        {
            int parameterIndex = pce.GetCurrentParameterIndex(window != null ? window.StartOffset : startOffset, editor.Caret.Offset);

            if (parameterIndex < 0 && window != null)
            {
                window.Close();
            }
            else
            {
                if (window == null || parameterIndex > ((CSharpInsightItem)window.SelectedItem).Method.Parameters.Count)
                {
                    var newItem = items.FirstOrDefault(i => parameterIndex <= i.Method.Parameters.Count);
                    if (newItem != null)
                    {
                        if (window != null)
                        {
                            window.SelectedItem = newItem;
                        }
                        else
                        {
                            initiallySelectedItem = newItem;
                        }
                    }
                }
                if (parameterIndex > 0)
                {
                    parameterIndex--;                     // NR returns 1-based parameter index
                }
                foreach (var item in items)
                {
                    item.HighlightParameter(parameterIndex);
                }
            }
        }
Esempio n. 2
0
		public void UpdateHighlightedParameter(CSharpParameterCompletionEngine pce)
		{
			int parameterIndex = pce.GetCurrentParameterIndex(window != null ? window.StartOffset : startOffset, editor.Caret.Offset);
			if (parameterIndex < 0 && window != null) {
				window.Close();
			} else {
				if (window == null || parameterIndex > ((CSharpInsightItem)window.SelectedItem).Method.Parameters.Count) {
					var newItem = items.FirstOrDefault(i => parameterIndex <= i.Method.Parameters.Count);
					if (newItem != null) {
						if (window != null)
							window.SelectedItem = newItem;
						else
							initiallySelectedItem = newItem;
					}
				}
				if (parameterIndex > 0)
					parameterIndex--; // NR returns 1-based parameter index
				foreach (var item in items)
					item.HighlightParameter(parameterIndex);
			}
		}