SyntaxEditor - Curly Brace Auto-Indent

by Avatar Bill Henning (Actipro)
Monday, July 15, 2013 at 10:38am

PostBannerSyntaxEditorDevNotes

Several weeks ago, we announced a new Delimiter Auto-Complete feature coming to the 2013.2 version of SyntaxEditor for WPF and Silverlight.  This feature is great because it improves typing efficiency by auto-inserting end delimiters when the start delimiter is typed.

We have been wanting to improve the typing experience even more and in today's post, I'd like to announce that curly brace auto-indent is also coming.

What Is Curly Brace Auto-Indent?

When the caret is in the middle of a curly brace pair, pressing Enter normally will move the close curly brace to the next line with the caret right in front of it.  If you have an indent provider for your language, the close curly brace will be indented properly however it's still not an ideal situation because you generally want the caret to be on its own line before the close curly brace's line.

This scenario is where curly brace auto-indent comes in!  This feature injects a new blank line in between the braces, indents one more level, and positions the caret on that line.

Sample Usage

Let's start with a regular JavaScript function declaration.  Note how the caret in in between a curly brace pair.

AutoIndent1

In the past, if you pressed Enter, you'd get this:

AutoIndent2

With the new curly brace auto-indent feature, instead of the above when you press Enter, you will get now this:

AutoIndent3

The end user is immediately able to start typing content for the function.

Summary

These new features will be available in the 2013.2 version of SyntaxEditor, and are built into our advanced C# and JavaScript languages for this version.

They can easily be added to any custom language as well with a few lines of code.

TaskDownload TaskLiveDemo TaskBuyNow

WPF Controls 2013.1 Build 582 Released

by Avatar Bill Henning (Actipro)
Monday, July 1, 2013 at 12:38pm

SyntaxEditor - Indentation Guides

by Avatar Bill Henning (Actipro)
Tuesday, June 18, 2013 at 11:04am

PostBannerSyntaxEditorDevNotes

In today's post I'd like to announce another new feature coming to the 2013.2 version of SyntaxEditor for WPF and Silverlight:  indentation guides.

What are Indentation Guides?

Indentation guides are subtle vertical lines that render at each tab stop on lines prior to the first non-whitespace character.  They help visually align the indentation of visible code blocks.

You can see the silver indentation guide lines in the tab stops within this screenshot:

IndentationGuides

Whitespace-only lines are intelligent and render indentation guides based on the tab stop level of surrounding text.

Summary

These new features will be available in the 2013.2 version of SyntaxEditor!

TaskDownload TaskLiveDemo TaskBuyNow

InertiaScrollViewer Control

by Avatar Bill Henning (Actipro) - 3 comments
Wednesday, June 12, 2013 at 9:56am

BlogPostBanner

Today I'd like to reveal a new control coming to our WPF and Silverlight Views products in the 2013.2 version:  InertiaScrollViewer.

Overview

The InertiaScrollViewer control is a drop-in replacement for the native WPF/Silverlight ScrollViewer control but allows you to scroll content using touch, similar to what you're used to on Windows 8 and mobile devices.

It reacts to dragging, flicking, mouse wheel, and normal mouse operation via the scrollbars. You can adjust properties like EasingFunction, VelocityTimeRatio, and VelocityDistanceRatio to fully control how inertia scrolling looks and feels.

SampleBrowser

In the screenshot above, you can see how our main Sample Browser pages have been updated with InertiaScrollViewer, allowing full touch interaction and navigation within them.

With a deluge of new touch-enabled Windows PCs entering the market, you'll be able to update your WPF and Silverlight apps with InertiaScrollViewer and take full advantage of this new hardware.

Summary

InertiaScrollViewer will available in the 2013.2 version of Views for WPF and Silverlight.  We've also added a new related QuickStart to our Sample Browser application.

TaskDownload TaskLiveDemo TaskBuyNow

SyntaxEditor Delimiter Auto-Complete

by Avatar Bill Henning (Actipro)
Wednesday, May 29, 2013 at 12:16pm

PostBannerSyntaxEditorDevNotes

One great thing about having our free Code Writer Windows 8 text/code editing app out is that we now get a lot of feedback directly from end users of the SyntaxEditor control.  Normally we only receive feedback from our own customers, who are developers integrating SyntaxEditor and our other UI controls into their own apps.

What is Delimiter Auto-Complete?

A common request we've received is to support delimiter auto-complete.  Delimiter auto-complete is where the user types a start delimiter and a related end delimiter is auto-inserted after the caret.  This is especially helpful when working on mobile tablets like a Surface since it means less overall typing is required to output the same code.

The 2013.2 version of SyntaxEditor for WPF and Silverlight includes a built-in implementation of delimiter auto-complete via a language service that can be customized and assigned to any syntax language.

Sample Usage

In this example, we'll use our new advanced JavaScript language, also coming in the 2013.2 version and described further in this post.

First, we'll type a ( character:

Delimiter1

You can see how the related end ) is also auto-completed and the caret remains in the middle of the two delimiters. 

Now if I type a ) character, it recognizes that this end delimiter was auto-completed, and instead of making another text change, skips right over the previously auto-completed end delimiter.

Delimiter2

Now if I type another ), it will insert a new character since it recognizes we are now outside of the auto-completed delimiter range.

Delimiter3

Let's delete that extra end delimiter and type an open curly brace to see the resulting auto-completed close brace:

Delimiter4

Say I made a mistake and wish to quickly delete the pair.  If I press Backspace then it recognizes I'm backspacing over a delimiter that created an auto-complete and it removes the completed end brace as well. 

Delimiter5

That's neat stuff!

Summary

These new features will be available in the 2013.2 version of SyntaxEditor!

TaskDownload TaskLiveDemo TaskBuyNow