Ejemplo n.º 1
0
        //函数悬停提示
        protected override void OnToolTip()
        {
            if (ToolTip == null)
                return;
            if (ToolTipNeeded == null)
                return;

            //get place under mouse
            Place place = PointToPlace(lastMouseCoord);

            //check distance
            Point p = PlaceToPoint(place);
            if (Math.Abs(p.X - lastMouseCoord.X) > CharWidth*2 ||
                Math.Abs(p.Y - lastMouseCoord.Y) > CharHeight*2)
                return;
            //get word under mouse
            var r = new Range(this, place, place);
            string hoveredWord = r.GetFragment("[a-zA-Z0-9_]").Text;
            //event handler
            var ea = new ToolTipNeededEventArgs(place, hoveredWord);
            ToolTipNeeded(this, ea);

            if (ea.ToolTipText != null)
            {
                //show tooltip
                ToolTip.ToolTipTitle = ea.ToolTipTitle;
                ToolTip.ToolTipIcon = ea.ToolTipIcon;
                //ToolTip.SetToolTip(this, ea.ToolTipText);
                ToolTip.Show(ea.ToolTipText, this, new Point(lastMouseCoord.X, lastMouseCoord.Y + CharHeight));
            }
        }
Ejemplo n.º 2
0
 private void fctb_ToolTipNeeded(object sender, ToolTipNeededEventArgs e)
 {
     if (!string.IsNullOrEmpty(e.HoveredWord))
     {
         e.ToolTipTitle = e.HoveredWord;
         e.ToolTipText = "This is tooltip for '" + e.HoveredWord + "'";
     }
 }
Ejemplo n.º 3
0
 private void fastColoredTextBox1_ToolTipNeeded(object sender, FastColoredTextBoxNS.ToolTipNeededEventArgs e)
 {
     if (!string.IsNullOrEmpty(e.HoveredWord))
     {
         e.ToolTipTitle = e.HoveredWord;
         e.ToolTipText  = "This is tooltip for '" + e.HoveredWord + "'";
     }
 }
Ejemplo n.º 4
0
        private void fctb_ToolTipNeeded(object sender, ToolTipNeededEventArgs e)
        {
            if (!string.IsNullOrEmpty(e.HoveredWord))
            {
                e.ToolTipTitle = e.HoveredWord;
                e.ToolTipText = "This is tooltip for '" + e.HoveredWord + "'";
            }

            /*
             * Also you can get any fragment of the text for tooltip.
             * Following example gets whole line for tooltip:
            
            var range = new Range(sender as FastColoredTextBox, e.Place, e.Place);
            string hoveredWord = range.GetFragment("[^\n]").Text;
            e.ToolTipTitle = hoveredWord;
            e.ToolTipText = "This is tooltip for '" + hoveredWord + "'";

             */
        }
Ejemplo n.º 5
0
        //函数悬停提示
        protected override void OnToolTip()
        {
            if (this.ToolTip == null)
            {
                return;
            }

            if (ToolTipNeeded == null)
            {
                return;
            }

            //get place under mouse
            Place place = this.PointToPlace(this.lastMouseCoord);

            //check distance
            Point p = this.PlaceToPoint(place);

            if (Math.Abs(p.X - this.lastMouseCoord.X) > this.CharWidth * 2 ||
                Math.Abs(p.Y - this.lastMouseCoord.Y) > this.CharHeight * 2)
            {
                return;
            }
            //get word under mouse
            var    r           = new Range(this, place, place);
            string hoveredWord = r.GetFragment("[a-zA-Z0-9_]").Text;
            //event handler
            var ea = new ToolTipNeededEventArgs(place, hoveredWord);

            ToolTipNeeded(this, ea);

            if (ea.ToolTipText != null)
            {
                lbTooltip.Visible  = true;
                lbTooltip.Text     = $"{ea.ToolTipTitle}\r\n\r\n{ea.ToolTipText}";
                lbTooltip.Location = new Point(this.Size.Width - 500, this.lastMouseCoord.Y + this.CharHeight);
                //this.ToolTip.ToolTipTitle = ea.ToolTipTitle;
                //this.ToolTip.ToolTipIcon = ea.ToolTipIcon;
                //ToolTip.SetToolTip(this, ea.ToolTipText);
                //this.ToolTip.Show(ea.ToolTipText, this, new Point(this.lastMouseCoord.X, this.lastMouseCoord.Y + this.CharHeight));
            }
        }
Ejemplo n.º 6
0
        //函数悬停提示
        protected override void OnToolTip()
        {
            if (ToolTip == null)
            {
                return;
            }
            if (ToolTipNeeded == null)
            {
                return;
            }

            //get place under mouse
            Place place = PointToPlace(lastMouseCoord);

            //check distance
            Point p = PlaceToPoint(place);

            if (Math.Abs(p.X - lastMouseCoord.X) > CharWidth * 2 ||
                Math.Abs(p.Y - lastMouseCoord.Y) > CharHeight * 2)
            {
                return;
            }
            //get word under mouse
            var    r           = new Range(this, place, place);
            string hoveredWord = r.GetFragment("[a-zA-Z0-9_]").Text;
            //event handler
            var ea = new ToolTipNeededEventArgs(place, hoveredWord);

            ToolTipNeeded(this, ea);

            if (ea.ToolTipText != null)
            {
                //show tooltip
                ToolTip.ToolTipTitle = ea.ToolTipTitle;
                ToolTip.ToolTipIcon  = ea.ToolTipIcon;
                //ToolTip.SetToolTip(this, ea.ToolTipText);
                ToolTip.Show(ea.ToolTipText, this, new Point(lastMouseCoord.X, lastMouseCoord.Y + CharHeight));
            }
        }
Ejemplo n.º 7
0
        //函数悬停提示
        protected override void OnToolTip()
        {
            if (this.ToolTip == null)
            {
                return;
            }

            if (ToolTipNeeded == null)
            {
                return;
            }

            //get place under mouse
            Place place = this.PointToPlace(this.lastMouseCoord);

            //check distance
            Point p = this.PlaceToPoint(place);

            if (Math.Abs(p.X - this.lastMouseCoord.X) > this.CharWidth * 2 ||
                Math.Abs(p.Y - this.lastMouseCoord.Y) > this.CharHeight * 2)
            {
                return;
            }
            //get word under mouse
            var    r           = new Range(this, place, place);
            string hoveredWord = r.GetFragment("[a-zA-Z0-9_]").Text;
            //event handler
            var ea = new ToolTipNeededEventArgs(place, hoveredWord);

            ToolTipNeeded(this, ea);

            if (ea.ToolTipText != null)
            {
                this.ShowTooltipWithLabel(ea.ToolTipTitle, ea.ToolTipText);
            }
        }
Ejemplo n.º 8
0
 void MatchParser(ToolTipNeededEventArgs e, int p, Match m, string title = null, ParamDescriptor descriptor = null)
 {
     if (p >= m.Index && p <= (m.Index + m.Length)) {
         var i = 0;
         var d = "P[{0}]: {1}";
         var v = new List<string>();
         foreach (Capture c in m.Groups[1].Captures) {
             if (IsComment(c.Index, c.Length)) continue;
             i++;
             v.Add(c.Value);
             if (p >= c.Index && p <= (c.Index + c.Length)) {
                 if (descriptor != null) descriptor(i, ref d, v);
                 e.ToolTipIcon = ToolTipIcon.Info;
                 e.ToolTipTitle = title;
                 e.ToolTipText = String.Format(d, i - 1, c.Value);
             }
         }
     }
 }
Ejemplo n.º 9
0
 public void HintParser(object sender, ToolTipNeededEventArgs e)
 {
     var ctl = sender as FastColoredTextBox;
     var p = ctl.PlaceToPosition(e.Place);
     foreach (Match m in new ScnSyntax.NodeParams().Matches(ctl.Text))
         MatchParser(e, p, m, "node", NodeDescriptor);
     foreach (Match m in new ScnSyntax.IncludeParams().Matches(ctl.Text))
         MatchParser(e, p, m, "include", IncludeDescriptor);
     foreach (Match m in new ScnSyntax.EventParams().Matches(ctl.Text))
         MatchParser(e, p, m, "event", EventDescriptor);
     foreach (Match m in new ScnSyntax.TrainsetParams().Matches(ctl.Text))
         MatchParser(e, p, m, "trainset", TrainsetDescriptor);
 }
 private void fastColoredTextBox_Code_ToolTipNeeded(object aSender, ToolTipNeededEventArgs aEventArgs)
 {
     var lRange  = new Range(aSender as FastColoredTextBox, aEventArgs.Place, aEventArgs.Place);
         try
         {
             int lHandle = mBrowser.getItemHandleByName(lRange.GetFragment("[^\n ']").Text);
             if (lHandle != -1)
             {
                 aEventArgs.ToolTipText = mBrowser.getItemToolTipByHandle(lHandle);
             }
         }
         catch { }
 }
Ejemplo n.º 11
0
        //悬停的函数说明
        void FctbToolTipNeeded(object sender, ToolTipNeededEventArgs e)
        {
            if (!string.IsNullOrEmpty(e.HoveredWord))
            {
                long tl = 0;
                string name = e.HoveredWord;
                string desc = "";
                if (!name.StartsWith("0x") && name.Length <= 9)
                {
                    name = name.Replace("c", "");
                    long.TryParse(name, out tl);
                }

                if (tl > 0)
                {
                    //获取卡片信息
                    if (cardlist.ContainsKey(tl))
                        desc = cardlist[tl];
                }
                else
                    desc = FindTooltip(e.HoveredWord);
                if (!string.IsNullOrEmpty(desc))
                {
                    e.ToolTipTitle = e.HoveredWord;
                    e.ToolTipText = desc;
                }
            }
        }
Ejemplo n.º 12
0
 private void codeTextBox_ToolTipNeeded(object sender, ToolTipNeededEventArgs e)
 {
     Range range = GetMessageRangeFromPlace(e.Place);
     if (range != null)
     {
         e.ToolTipText = range.Text;
     }
 }
Ejemplo n.º 13
0
 private void fastColoredTextBox1_ToolTipNeeded(object sender, ToolTipNeededEventArgs e)
 {
     if (!string.IsNullOrEmpty(e.HoveredWord))
     {
         foreach (var d in InfoManager.data)
         {
             if (d.Key == e.HoveredWord)
             {
                 e.ToolTipTitle = e.HoveredWord;
                 e.ToolTipText = d.Value;
             }
         }
     }
 }
Ejemplo n.º 14
0
        private void tb_ToolTipNeeded(object sender, ToolTipNeededEventArgs e)
        {
            if (!string.IsNullOrEmpty(e.HoveredWord))
            {
                if (e.HoveredWord != null | e.HoveredWord != "")
                {
                    List<Style> stls = CurrentTB.GetStylesOfChar(e.Place);
                    int isComment = stls.FindIndex(p => p == CurrentTB.SyntaxHighlighter.styScpComments);
                    if (isComment > 0)
                        return;

                    PopupToolTip keyw = ScriptCommunityPack.keywordsInformation.Find(x => x.Name.ToLower().StartsWith(e.HoveredWord.ToLower()) && !x.Properties.Contains(PropertyTypes.SnippetAuto));
                    if (keyw != null)
                    {
                        e.ToolTipTitle = keyw.Name;
                        e.ToolTipText = keyw.ToString();
                    }
                    else
                    {
                        //scp command tooltip
                    }
                }
            }
        }
Ejemplo n.º 15
0
Archivo: frmMain.cs Proyecto: zuun/wSQL
        private void NewEditor_ToolTipNeeded(object sender, ToolTipNeededEventArgs e)
        {
            if (!string.IsNullOrEmpty(e.HoveredWord))
             {
            if (documentToolTips.ContainsKey(e.HoveredWord))
            {
               var info = documentToolTips[e.HoveredWord];
               e.ToolTipTitle = info.Title;
               e.ToolTipText = info.Text;
            }
             }

             /*
              * Also you can get any fragment of the text for tooltip.
              * Following example gets whole line for tooltip:

             var range = new Range(sender as FastColoredTextBox, e.Place, e.Place);
             string hoveredWord = range.GetFragment("[^\n]").Text;
             e.ToolTipTitle = hoveredWord;
             e.ToolTipText = "This is tooltip for '" + hoveredWord + "'";
              */
        }