JSON Language Coming to SyntaxEditor

by Avatar Bill Henning (Actipro) - 1 comment
Wednesday, March 5, 2014 at 7:08am

PostBannerSyntaxEditorDevNotes

We recently posted that the advanced JavaScript syntax language implementation in our SyntaxEditor Web Languages Add-on (WPF, Silverlight, and WinRT/XAML versions) is getting IntelliPrompt completion lists in the upcoming 2014.1 version.

In today's post, I'd like to announce that a brand new JSON syntax language is coming to the add-on as well!

Features

JSON is a lightweight data-interchange format that is a subset of JavaScript syntax, and is commonly used with many web technologies.  With the new syntax language, you'll be able to provide a great editor/viewer for JSON data.  Here's a screenshot:

JsonLanguage

The JSON syntax language has these features:

  • Syntax highlighting
  • Abstract syntax tree (AST) generation
  • Automatic code outlining based on AST structure
  • Reporting and automatic squiggle display of errors for invalid syntax
  • Mouse hover quick info for syntax errors
  • Smart indent
  • Code block selection
  • Delimiter (bracket) highlighting and auto-completion

Summary

This new syntax language will be available when the 2014.1 WPF, Silverlight, and WinRT/XAML versions are released in the next couple weeks.

TaskDownload TaskLiveDemo TaskBuyNow

SyntaxEditor JavaScript Completion

by Avatar Bill Henning (Actipro) - 5 comments
Thursday, February 27, 2014 at 1:09pm

PostBannerSyntaxEditorDevNotes

Last year we added an advanced JavaScript language implementation to the SyntaxEditor Web Languages Add-on.  This language implementation (available in the WPF, Silverlight, and WinRT/XAML versions of the add-on) includes features like syntax highlighting, parsing with AST generation, syntax error reporting, code outlining, etc.

In today's post I'd like to announce that we have added a simplistic completion provider to the language that should help end user coding productivity.

Completion Provider

The new completion provider displays a completion list when Ctrl+Space is pressed:

JavaScriptCompletion

The concept is similar to completion lists found in other popular IDEs like Sublime, where the list includes JavaScript keywords and identifiers found throughout the document.  The list has been set up to accept acronym and shortcut item matchers, meaning that any loosely-matched text will select items.  The list also auto-shrinks to only show matching items.

Summary

TaskDownload TaskLiveDemo TaskBuyNow

SyntaxEditor Auto-Sizing

by Avatar Bill Henning (Actipro)
Wednesday, February 26, 2014 at 2:34pm

PostBannerSyntaxEditorDevNotes

One feature that several customers have asked for is the ability for SyntaxEditor to automatically resize itself based on its text contents.  We didn't originally have this feature since it can be time-consuming (relatively speaking) and when editing huge documents, we didn't want to add any performance hits.

That being said, in the upcoming 2014.1 version of SyntaxEditor for WPF, Silverlight, and WinRT/XAML, we have added a new SyntaxEditor.IsViewLineMeasureEnabled property that can be set to true to activate view line measure behavior.  This means that you now can use SyntaxEditor in a layout scenario where its measured size will have an effect on its arranged size.

Multi-Line Editing Example

Let's check out an example of this in action.  Here we have a SyntaxEditor that has an XML language loaded and the new view line measure features enabled.  It's resizing itself vertically according to the number of lines in it:

AutoSizeMultiLine1

Now if we press Enter a couple times, it auto-sizes to a larger height:

AutoSizeMultiLine2

You can see how this would be useful when SyntaxEditor is hosted in controls like a StackPanel.

Single-Line Editing Example

We've also enhanced our single-line edit mode with a neat new feature.  Now if you set word wrap mode on and also have the view line measure features enabled, the single line will grow to render on multiple lines but will still not allow Enter to be pressed or inserted via pastes, etc.

This sort of feature is useful for scenarios where you want to allow a single line snippet of text to be edited but for the entire text to be visible.  Let's have a look:

AutoSizeSingleLine1

Above we have a SyntaxEditor in single-line mode, with word wrap on, and view line measure enabled.  Let's type some more text:

AutoSizeSingleLine2

Even though the text is still a single line (no line feeds are allowed in single-line mode), the word wrap caused the editor to grow taller.

Summary

These great new features will be available when the 2014.1 WPF, Silverlight, and WinRT/XAML versions are released in March.

TaskDownload TaskLiveDemo TaskBuyNow

Docking/MDI for WPF - Huge Metro Theme Updates

by Avatar Bill Henning (Actipro)
Friday, February 7, 2014 at 9:38am

PostBannerWPFStudioDevNotes

The past couple days, we've been working on enhancing our popular Metro Themes, mostly focusing on refinements and improvements to their use in our Docking/MDI product.

Our Metro Light, White, and Dark themes have been available since v2012.2 and not only theme the Actipro controls you use in your projects, but also can theme all the native WPF controls.  This allows your entire app to mesh together cleanly with a polished, professional appearance.

Theme Updates

Let's dive in and take a look at some of the updates that are coming.  First, here's a screenshot of our main Docking/MDI demo with the updated Metro Light theme:

DockingMetroLightThemeUpdates

Improvements include:

  • Lighter dock site background that blends better with the window background.
  • Subtle outline borders around the tabbed MDI and tool window containers.
  • Tool window container title bars are no longer as in-your-face when not focused.
  • Tool window container title bars now have a dotted region that help relay that they are grippable.
  • New auto-hidden tool window tab appearance that is more like Visual Studio 2013.
  • Tool window tab images hidden by default in Metro themes (but can be toggled back via a new option).
  • Slightly lighter control backgrounds in Metro Dark theme.

Here's the same window in our Metro Dark theme:

DockingMetroDarkThemeUpdates

Summary

Our feature rich Docking/MDI product, combined with our enhanced Metro themes, really provide sleek and clean docking window functionality for your WPF apps.  You won't beat the attention to detail that our themes provide.

These new features will be available in the 2014.1 version of Docking/MDI.

TaskDownload TaskLiveDemo TaskBuyNow

Docking/MDI Getting Events for Auto-Hide Popups

by Avatar Bill Henning (Actipro)
Wednesday, January 8, 2014 at 9:45am

PostBannerWPFStudioDevNotes

One feature that has been requested by a number of customers for our Docking/MDI product is to be notified of when a tool window that is auto-hidden flies out or back in, such as the Error List tool window in the screenshot below:

DockingAutoHide

We just completed adding two new events to DockSite named WindowAutoHidePopupOpened and WindowAutoHidePopupClosed.  Each even passes an event args that specifies which tool window is being opened or closed.

These new features will be available in the 2014.1 version of Docking/MDI.

TaskDownload TaskLiveDemo TaskBuyNow