private void ShowAutoCompleteIfAppropriate(int minimumLength)
{
if ((InsideStringOrComment(false)) || (IgnoringCurrentLine()))
{
return;
}
int checkAtPos = this.scintillaControl1.CurrentPos - 1;
if (CheckForAndShowEnumAutocomplete(checkAtPos))
{
return;
}
string pathedExpression = GetPreviousPathedExpression(checkAtPos, false);
if (pathedExpression.IndexOf('.') >= 0)
{
ShowStructMemberAutoComplete();
}
else
{
string previousWord = GetPreviousWord();
if ((previousWord.Length >= minimumLength) &&
((previousWord.Length == 0) || (!Char.IsDigit(previousWord[0]))))
{
string needMatch = previousWord;
if (minimumLength == 0)
{
needMatch = null;
}
ShowAutoComplete(previousWord.Length, ConstructScintillaAutocompleteList(null, false, false, needMatch));
}
}
}