Click here to Skip to main content
Click here to Skip to main content

SnippetManager written by Tim Sneath extended with cool tooltip

, 11 Mar 2003
Rate this:
Please Sign up or sign in to vote.
Ever find yourself hoarding little pieces of code that are always coming in handy? Snippet Manager is a little utility written in C# that collects all your code snippets into one convenient location, allowing you to save them into XML, or copy them into any code editor using the clipboard.
<!-- Article image -->

Sample Image - ExtendedSnippetManager.jpg

<!-- Add the rest of your HTML here -->

Introduction

I like the snippet manager written by Tim Sneath, but when I use it and have a lot of code snippets, I only can see the title of my snippet and can not remember, what is its content. So I added the functionality of a tooltip which provides me the contents. The tooltip is limited to 24 lines.  

Using the code

I only added a simple method to SnippetUI.cs, which receives a control and a message text as arguments and attaches a tooltip to the control.

  /// Attaches a tooltip to a control
  private void CreateToolTipForControl(Control ctl, String msg)
  {
   // split by carridge return
   String[] lines = msg.Split(new char[] {'\u000D'});

   // StringBuilder is faster
   StringBuilder sb = new StringBuilder();

   // maximum lines
   int lineCount = lines.Length;   
   if (lineCount > 24)
   {
    // only show 24 lines
    lineCount = 24;
   } 

   for (int i = 0; i < lineCount; i++)
   {
    // tab-character
    char tab = '\u0009';

    // line-feed-character
    char lf = '\u000A';

    // must replace tabs with whitespace to show properly
    String line = lines[i].Replace(tab.ToString(), "    ");

    // must replace line-feeds to show properly
    line = line.Replace(lf.ToString(), "");

    // append String
    sb.Append(line + "\n");
   } 

   // append 3 dots if text exceeds more than 24 lines
   if (lines.Length > lineCount)
   {
    sb.Append("...");
   } 

   // attache tooltip to control
   toolTip1.SetToolTip(ctl, sb.ToString());
  } 

This method is called everytime the toolwindow syncronizes its contents. 

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here

Share

About the Author

Andi Fleischmann
Web Developer
Germany Germany
No Biography provided

Comments and Discussions

 
GeneralHi, PinmemberJerry Maguire13-Mar-03 2:08 
GeneralRe: Hi, PinmemberDa Bert13-Mar-03 3:18 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

| Advertise | Privacy | Terms of Use | Mobile
Web02 | 2.8.1411023.1 | Last Updated 12 Mar 2003
Article Copyright 2003 by Andi Fleischmann
Everything else Copyright © CodeProject, 1999-2014
Layout: fixed | fluid