• Products
  • Download
  • Purchase
  • Support
  • Company
Actipro Software company logo
Twitter Follow Actipro RSS Subscribe (RSS Feed)

The Actipro Blog

Tag Cloud

  • aero
  • blog
  • docking
  • editors
  • gauge
  • intelliprompt
  • navigation
  • propertygrid
  • ribbon
  • shared library
  • silverlight
  • syntaxeditor
  • themes
  • views
  • winforms
  • wpf

Latest Twitter News

November 21, 2011 at 11:14 AM
#WPF Studio 2011.2 is out now! Includes enhanced themes for native WPF conrtols and new SyntaxEditor features. http://t.co/uEMCaGPG

September 26, 2011 at 1:25 PM
If you'd like to see our #WPF / #Silverlight SyntaxEditor code editor control ported to Metro, provide feedback here: http://t.co/xXBNIDTi

September 15, 2011 at 8:31 PM
If you want to see SyntaxEditor eventually show up in Win8's #xaml UI, be sure to add your support to this MS thread: http://t.co/FBjz6TuC

August 15, 2011 at 1:47 PM
New SyntaxEditor IntelliPrompt parameter info feature docs/samples ready for the 2011.2 #WPF and #Silverlight releases. http://t.co/ezoYIjv

August 2, 2011 at 2:40 PM
First look at new automated IntelliPrompt parameter info coming to our C#/VB editor control in #WPF / #Silverlight http://t.co/CUz6O1T

Twitter Follow us on Twitter

Month List

  • 2012
    • February (3)
    • January (2)
  • 2011
    • December (2)
    • November (7)
    • October (2)
    • September (1)
    • August (5)
    • July (3)
    • June (6)
    • May (5)
    • April (8)
    • March (4)
    • February (5)
    • January (9)
  • 2010
    • December (9)
    • November (10)
    • October (4)
    • September (8)
    • August (12)
    • July (9)
    • June (7)
    • May (6)
    • April (7)
    • March (6)
    • February (6)
    • January (4)
  • 2009
    • December (2)
    • November (2)
    • October (12)
    • September (3)
    • August (11)
    • July (10)
    • June (6)
    • May (3)
    • April (7)
    • March (6)
    • February (8)
    • January (10)
  • 2008
    • December (10)
    • November (2)
    • October (3)
    • September (5)
    • August (5)
    • July (8)
    • June (4)
    • May (4)
    • April (10)
    • March (8)
    • February (1)
    • January (2)

Category List

  • RSS feed for ActiproActipro (289)
  • RSS feed for Blog SummaryBlog Summary (13)
  • RSS feed for GeneralGeneral (34)
  • RSS feed for In developmentIn development (150)
  • RSS feed for New featuresNew features (140)
  • RSS feed for New productNew product (30)
  • RSS feed for PromotionPromotion (2)
  • RSS feed for SilverlightSilverlight (71)
  • RSS feed for Tips and tricksTips and tricks (4)
  • RSS feed for Visual Studio 2008Visual Studio 2008 (2)
  • RSS feed for Windows FormsWindows Forms (20)
  • RSS feed for Windows VistaWindows Vista (10)
  • RSS feed for WPFWPF (235)
  • RSS feed for XAMLXAML (23)

About Us

Actipro Software is a leading provider of .NET user interface controls for the WPF, Silverlight, and WinForms frameworks, and is most well-known for their SyntaxEditor syntax-highlighting code editor control.

Please take some time to learn more about us and our product offerings.

SyntaxEditor for WPF - Completion list matching algorithms

February 12, 2009 at 12:37 AM
by Bill Henning (Actipro)

“IntelliPrompt completion list” week continues with today’s hot new feature: matching algorithms.

Matching algorithms are what are used to select an item in the completion list as you type in the editor. 

Default matching algorithm

Normal completion lists match with an algorithm in which the typed characters are compared against the start of each item like in this screenshot:

Alg1

“GetHashCode” is matched because it starts with the text “get”

The default algorithm has the highest priority when attempting to match items.  If no match is made, the next active algorithm is used.

Acronym matching algorithm

Next in priority is an optional algorithm in which the first and every uppercase letter is examined for a match.

Alg2

“GetType” is matched because the “gt” matches the uppercase letters in the word “GetType”

For words that contain underscores, the first and every character following an underscore are examined for a match instead.

If no match is made, the next active algorithm is used.

Shorthand matching algorithm

Next in priority is another optional algorithm in which the supplied text provides a wildcard sort of pattern.  A match is made if all the characters appear somewhere in the item text.

Alg3

“IntValueChanged” because the “val” and “ch” (which make up the typed “valch”) are both in the word “IntValueChanged”

Shorthand provides the most flexibility since it allows substring matches anywhere in the items.

If no match is made, the fallback algorithm is used.

Fallback partial matching algorithm

Finally if no match as been made yet, a partial match can be made at the item that starts with text closest to the typed text.

Alg4

“GetHashCode” is partially matched because the first “g” matches the starting “G” in “GetHashCode”

 

 

Case sensitivity

By default, matching is done such that matches that actually match the case of the typed text are returned first.  If none are found, an insensitive match is returned instead.

This default can be disabled so that insensitive matches are always used.

Match target text

Completion list items each have display text and text that is actually inserted into the document.  By default the text that will be inserted into the document is matched against.  However you can change it to match against the display text if you prefer.

Note that in most cases, the display text and text to insert actually are the same thing.

Summary

As you can see, the multi-algorithm approach provides some really nice functionality for end users.  And there are plenty of other options so that you can tailor the user interface how you wish.

These are just some of the advancements we’re making in SyntaxEditor for WPF that make all the difference between our product and the competition.

Tags: wpf, syntaxeditor, intelliprompt
Filed under: Actipro, In development, WPF
Submit to DotNetKicks...
Permalink | Comments (0)

Related posts

SyntaxEditor for WPF - Custom completion list item matching algorithmsLast week we discussed the concept of prioritized item matching algorithms and yesterday I talked ab...SyntaxEditor for WPF - Advanced completion list filteringWe’re currently working on implementing completion lists in SyntaxEditor for WPF.  Comple...SyntaxEditor for WPF - Completion list text insertionWe’re sad to be ending SyntaxEditor “completion list” blog post week today. :)&nbs...
Comments are closed
Copyright © 1999-2012 Actipro Software LLC. All rights reserved.
Home Actipro Software | Products | Download | Contact Us