本文整理汇总了C#中ScintillaNet.CallTipShow方法的典型用法代码示例。如果您正苦于以下问题:C# ScintillaNet.CallTipShow方法的具体用法?C# ScintillaNet.CallTipShow怎么用?C# ScintillaNet.CallTipShow使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ScintillaNet
的用法示例。
在下文中一共展示了ScintillaNet.CallTipShow方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ResolveFunctionContext
/// <summary>
/// Let contexts handle code completion
/// </summary>
/// <param name="sci">Scintilla control</param>
/// <param name="expression">Completion context</param>
/// <returns>Null (not handled) or function signature</returns>
public override MemberModel ResolveFunctionContext(ScintillaNet.ScintillaControl sci, ASExpr expression, bool autoHide)
{
if (hxsettings.DisableCompilerCompletion)
return null;
if (autoHide && !hxsettings.DisableCompletionOnDemand)
return null;
string[] parts = expression.Value.Split('.');
string name = parts[parts.Length - 1];
MemberModel member = new MemberModel();
// Do not show error
string val = expression.Value;
if (val == "for" ||
val == "while" ||
val == "if" ||
val == "switch" ||
val == "function" ||
val == "catch" ||
val == "trace")
return null;
HaXeCompletion hc = new HaXeCompletion(sci, expression.Position);
ArrayList al = hc.getList();
if (al == null || al.Count == 0)
return null; // haxe.exe not found
string outputType = al[0].ToString();
if (outputType == "type" )
{
member.Name = name;
member.Flags = FlagType.Function;
member.Access = Visibility.Public;
string type = al[1].ToString();
Array types = type.Split(new string[] { "->" }, StringSplitOptions.RemoveEmptyEntries);
// Function's arguments
member.Parameters = new List<MemberModel>();
int j = 0;
while (j < types.Length - 1)
{
MemberModel param = new MemberModel(types.GetValue(j).ToString(), "", FlagType.ParameterVar, Visibility.Public);
member.Parameters.Add(param);
j++;
}
// Function's return type
member.Type = types.GetValue(types.Length - 1).ToString();
}
else if ( outputType == "error" )
{
string err = al[1].ToString();
sci.CallTipShow(sci.CurrentPos, err);
sci.CharAdded += new ScintillaNet.CharAddedHandler(removeTip);
}
return member;
}
示例2: ResolveDotContext
/// <summary>
/// Let contexts handle code completion
/// </summary>
/// <param name="sci">Scintilla control</param>
/// <param name="expression">Completion context</param>
/// <param name="autoHide">Auto-started completion (is false when pressing Ctrl+Space)</param>
/// <returns>Null (not handled) or member list</returns>
public override MemberList ResolveDotContext(ScintillaNet.ScintillaControl sci, ASExpr expression, bool autoHide)
{
if (hxsettings.DisableCompilerCompletion)
return null;
if (autoHide && !hxsettings.DisableCompletionOnDemand)
return null;
// auto-started completion, can be ignored for performance (show default completion tooltip)
if (autoHide && !expression.Value.EndsWith("."))
if ( hxsettings.DisableMixedCompletion )
return new MemberList();
else
return null;
MemberList list = new MemberList();
HaXeCompletion hc = new HaXeCompletion(sci, expression.Position);
ArrayList al = hc.getList();
if (al == null || al.Count == 0)
return null; // haxe.exe not found
string outputType = al[0].ToString();
if( outputType == "error" )
{
string err = al[1].ToString();
sci.CallTipShow(sci.CurrentPos, err);
sci.CharAdded += new ScintillaNet.CharAddedHandler(removeTip);
// show default completion tooltip
if (!hxsettings.DisableMixedCompletion)
return null;
}
else if (outputType == "list")
{
foreach (ArrayList i in al[ 1 ] as ArrayList)
{
string var = i[0].ToString();
string type = i[1].ToString();
string desc = i[2].ToString();
FlagType flag = FlagType.Variable;
MemberModel member = new MemberModel();
member.Name = var;
member.Access = Visibility.Public;
// Package or Class
if (type == "")
{
string bl = var.Substring( 0, 1 );
if (bl == bl.ToLower())
flag = FlagType.Package;
else
flag = FlagType.Class;
}
// Function or Variable
else
{
Array types = type.Split(new string[] { "->" }, StringSplitOptions.RemoveEmptyEntries);
// Function
if (types.Length > 1)
{
flag = FlagType.Function;
// Function's arguments
member.Parameters = new List<MemberModel>();
int j = 0;
while (j < types.Length - 1)
{
MemberModel param = new MemberModel(types.GetValue(j).ToString(), "", FlagType.ParameterVar, Visibility.Public);
member.Parameters.Add(param);
j++;
}
// Function's return type
member.Type = types.GetValue(types.Length - 1).ToString();
}
// Variable
else
{
flag = FlagType.Variable;
// Variable's type
member.Type = type;
}
}
member.Flags = flag;
list.Add(member);
//.........这里部分代码省略.........