• 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.

Call for early SyntaxEditor for WPF 2009.2 testers

November 30, 2009 at 7:04 AM
by Bill Henning (Actipro)

The next release of SyntaxEditor for WPF, part of WPF Studio 2009.2, has a lot of major new functionality added.  A significant chunk of that deals with the addition of new text tagging and adornment layer frameworks.

What you can do to help

We’re looking for some existing SyntaxEditor for WPF customers who would like to get their hands on the latest code before it is publicly released, specifically to help us test out these new tagging and adornment features.  We’ll explain below more about what each framework provides.

If you are an existing customer and are interested in testing out the new features, please email our sales team.  Again, only do so if you plan on implementing code that uses tagging and/or adornments.

What are text tagging and adornment layers?

Text tagging is the ability to associate some data (a tag) with ranges of text.  Our built-in tagging mechanism makes it easy for you to provide tagged ranges both using virtualization and without.  An example of text tagging would be to mark certain ranges of text as parse errors.  Text tagging is a logical way of marking text, and can also be paired with adornment layers that can provide custom rendering over tagged text areas.

Adornment layers, first described in this post, are a way to render any UIElement within the text area of a SyntaxEditor.  Adornments can be ordered and sandwiched between any other adornment layers.  As an example, the caret and selection are both adornment layers.  The caret has a Rectangle that blinks to render the caret.  The selection is a complex Path.

The neat thing about tagging and adornments is that the sky is the limit on what custom rendering you can achieve in the editor.  Let’s take a quick look at some of the full source QuickStarts that will be included in the next version, all of which demo tagging and/or adornment layers. 

Adornments 1: Smoke Text

The first adornments QuickStart was already mentioned in a previous post, which also included a video of it that shows it’s animations.

SmokeText

Basically, as you type, smoke clouds puff out of where text changes occurred and dissipate away.  It’s a very neat demonstration of special effects using animated adornments.

Adornments 2: Squiggles Intro

This QuickStart shows how a tagger for the built-in ISquiggleTag interface can be used to render certain ranges of text with squiggle lines underneath.

Squiggles

Note that each instance of the word Actipro in the text above has squiggle lines below it.  Our tagger in this sample scans the text of each rendered line and tags ranges that contain the word Actipro.

The rendering implementation of the squiggle adornments is handled internally by SyntaxEditor code, which automatically watches for ISquiggleTag instances.  Therefore all you need is a tagger to provide the functionality above.  You have full control over the color used to render the squiggle lines too.

Adornments 3: Custom Decorator

This QuickStart shows the ease in which you can combine taggers with custom adornment managers to achieve decorations around ranges of text.

CustomDecorator

Just like the previous QuickStart, instances of the text Actipro are tagged, but this time with a custom tag instead of ISquiggleTag.  We also add a custom adornment manager class that watches for tagged ranges and adds a “Knight Rider”-ish red animated swoosh that glides back and forth.

Implementation of the adornment manager is actually rather simple due to us wrapping up most of the meat of tag watching, etc. in a handy DecorationAdornmentManagerBase base class for you.

Adornments 4: Highlight Word

This QuickStart uses a tagger that provides IClassificationTag tags.  The tagger is created to as view-specific (as opposed to document-specific in other samples) and highlights all the words in the view that match the word at the caret.

WordHighlight

In the screenshot, you can see that both instances of the word System are highlighted.  IClassificationTag, a built-in tag type that is monitored by SyntaxEditor, allows you to override the rendering style of any text.  Thus we could have just as easily changed the foreground of the two System instances to red if we had wished.

Adornments 5: Alternating Rows

This QuickStart shows how to create an alternating row background for all “even” document lines, similar to what you often see in grids.

AlternatingRows

Notice the subtle gray background on each even line.  It updates the adornments automatically as you scroll or type text.

Changes to classifications

In SyntaxEditor 2009.1 we had “classifier” features that worked similarly to the new tagging mechanism but were specifically for classification purposes.  In 2009.2, we have switched those features to use the tagging mechanism since it is more generic and can be used for other features too, as seen above.  Details on this change and how to convert code (probably just a one line change for impacted customers) will be in the 2009.2 documentation.  The highlight word QuickStart described above is a great demonstration of how the old classifier mechanism is now implemented with taggers that return IClassificationTag.

Summary

We’re really excited about these updates as they open up the doors to many new possibilities with the editor.  If you would like to help us test them out before they go public, please write our sales team ASAP.  Thanks!

By the way, these features are in the Silverlight version of SyntaxEditor too.

Tags: wpf, silverlight, syntaxeditor
Filed under: Actipro, WPF, Silverlight, In development, New features
Submit to DotNetKicks...
Permalink | Comments (3)

Related posts

SyntaxEditor grammar/AST framework part 6: Introduction to callbacks and error handlingIn the previous post, we optimized the tree construction output of our Simple language to be very co...Actipro SyntaxEditor for WPF and Editors for WPF are released SyntaxEditor for WPF with a custom theme loaded Yesterday evening we published WP...SyntaxEditor 2011.1 Updates Part 4: Can-Match Callback and Error Reporting Enhancements This post continues our series on new features coming to SyntaxEditor 2011.1, primarily centered a...

Comments

November 29, 2009 at 17:05  

Eric J. Smith

I must see the knight rider effect!! Smile

Eric J. Smith United States

December 3, 2009 at 07:44  

Sean

Can't wait until the Silverlight release! Tong

Sean United States

January 1, 2010 at 04:48  

trackback

Actipro Blog 2009 Q4 posting summary

Actipro Blog 2009 Q4 posting summary

The Actipro Blog - WPF and WinForms Development

Comments are closed
Copyright © 1999-2012 Actipro Software LLC. All rights reserved.
Home Actipro Software | Products | Download | Contact Us