More Windows Workflow Designer Sample Updates

by Avatar Bill Henning (Actipro)
Thursday, November 21, 2013 at 2:00pm

BlogPostBanner

Back in August, we posted a blog entry showing off a sample we created, where a hosted Windows Workflow Designer instance is integrated with our WPF Docking/MDI and SyntaxEditor controls to dramatically improve the designer UI.  We then posted a second update describing several more enhancements that were made.

Today we posted a third update to the sample, which adds these new features…

  • Updated to properly commit changes on editor focus loss.
  • Updated the language to be a single instance instead of getting created for each editor instance, which improves performance.
  • Updated to focus editor properly on the first mouse click.
  • Added proper notifications of the expression editor's events.

Variable1

These and our prior updates dramatically improve the end user experience when working in a rehosted Windows Workflow Designer scenario.

Summary

If you rehost the Windows Workflow Designer in your WPF apps and would like our example, please contact us and we'll be happy to share it with you!

For those customers who downloaded either of the prior versions, this update is at the same URL as before.

TaskDownload TaskLiveDemo TaskBuyNow

SyntaxEditor - Search Pane Result Highlights

by Avatar Bill Henning (Actipro)
Monday, November 18, 2013 at 2:43pm

PostBannerSyntaxEditorDevNotes

In our last post, we announced that incremental search result highlights werecoming to SyntaxEditor for WPF, WinRT/XAML, and Silverlight in the next maintenance release.  These are highlights that show where each match of the incremental search text is within the document, making it easy for the end user to see the matches without having to iterate through each one.

We also are making this feature available for those who have search panes in their apps and want to be able to highlight matching results as the user enters find text in the search pane.

How It Works

Each editor view now has a new property on it named HighlightedResultSearchOptions that can be set to any ISearchOptions value.  When it is set, a worker thread searches the document for matches and highlights them.

SearchResultHighlighting

In the screenshot above, we type in a TextBox and in the TextBox.TextChanged event handler, update the value of the view's HighlightedResultSearchOptions property.  Highlights then appear for the find text matches, which is "doc" in this case.

Summary

The search result highlights help the end user quickly see where matches are without the need to cycle through them, and can be wired up to any search pane.  This feature is coming in the next maintenance release.

TaskDownload TaskLiveDemo TaskBuyNow

SyntaxEditor - Incremental Search Result Highlights

by Avatar Bill Henning (Actipro)
Tuesday, November 12, 2013 at 1:51pm

PostBannerSyntaxEditorDevNotes

In our last post, we announced that incremental search features were coming to SyntaxEditor for WPF, WinRT/XAML, and Silverlight in the next maintenance release.

We are working on an ancillary feature to that, which we hope to also have completed soon.  This feature automatically highlights matching results when doing an incremental search.

How It Works

To start incremental search mode, press Ctrl+I and start typing some characters. The characters will be accumulated into a find text string and used to search the document for the next instance of the find text, which will be selected.  For this sample, I have pressed Ctrl+I and then "r".

SearchHighlights1

All of the instances of the letter r in the editor have been highlighted.  Now I will continue to type out the full word "random".

SearchHighlights2

All of the instances of the word random are now highlighted.  The first instance is selected.  Pressing Ctrl+I at this point would move the selection to the next highlighted instance..

Summary

The search result highlights help the end user quickly see where matches are without the need to cycle through them.  We hope to have this feature in the next maintenance release.

TaskDownload TaskLiveDemo TaskBuyNow

SyntaxEditor - Incremental Search

by Avatar Bill Henning (Actipro) - 1 comment
Monday, November 4, 2013 at 9:57am

PostBannerSyntaxEditorDevNotes

Another new feature is coming to SyntaxEditor for WPF, WinRT/XAML, and Silverlight in the next maintenance release: incremental search.

What is Incremental Search?

Incremental search is a way for the end user to quickly search for text in a document without needing to interact with search dialogs or panes.  With a couple keyboard strokes, the end user can instantly start searching for text.

How It Works

To start incremental search mode, press Ctrl+I and start typing some characters. The characters will be accumulated into a find text string and used to search the document for the next instance of the find text, which will be selected.

IncrementalSearch

Press Ctrl+I to move to the next match, or Ctrl+Shift+I to move to the previous match. Continue typing characters to append to the find text. Backspace can be used to remove characters from the find text. Esc can be used to deactivate incremental search mode.

The WPF and WinRT versions are capable of showing custom cursors while incremental search is active, enabling the end user to have a visual indicator of the current mode.  Silverlight unfortunately doesn't allow for custom mouse cursors.  It is recommended that all platforms also show some sort of status bar indicator.  In the screenshot above, you can see how the StatusBar is updated as I type to show the current find text.

Summary

Incremental search is already available in SyntaxEditor for WinForms and will now be in the other SyntaxEditor platforms after the next maintenance releases.

TaskDownload TaskLiveDemo TaskBuyNow

WinRT XAML Controls 2013.2 Released

by Avatar Bill Henning (Actipro)
Tuesday, October 22, 2013 at 10:57am

WinRTBlogPostBanner

The Actipro WinRT XAML Controls 2013.2 have been released and are now ready for download.  This version adds a complete port of our SyntaxEditor control and related add-ons, and also adds a number of new controls to existing products.

Major new features are described below.  See the announcement post for the detailed list of enhancements and updates.

A new WinRT XAML Studio bundle option is available that includes SyntaxEditor, Charts, Micro Charts, and our Shared Library.  The pricing saves you 40% over purchasing those products individually!  Best of all, once you have an active WinRT XAML Studio subscription, you will receive any new control products added to the bundle for free while your subscription is active.

If you are an existing customer of our individual WinRT/XAML controls and would like to switch to studio bundle at a discounted price, please contact our sales team.

ProductHeadingGenericSyntaxEditor

SyntaxEditor Control

Our SyntaxEditor control is fully ported and now is available for use in WinRT/XAML apps!  This code editor control lets you make any sort of IDE, script, or expression editor app.

SyntaxEditorSDIEditor

SyntaxEditor is a powerful text editing control that is packed with features for efficient code editing, including syntax highlighting, code outlining, parsing, line numbers, block selection, IntelliPrompt UI, zooming, adornments, single-line mode, and much more. It is built on top of our next-generation extensible text/parsing framework and has many of the same code editing features found in the Visual Studio code editor.  The WinRT/XAML version shares a codebase with the WPF and Silverlight versions of SyntaxEditor, making it easy to transition code between platforms.

Now you can build your own apps, just like our free Code Writer app in the Windows Store.

LL(*) Parser Framework

The LL(*) Parser Framework is Actipro's own framework for constructing robust text parsers that work standalone or with code editor controls like SyntaxEditor. The framework features grammars that are written in C#/VB using EBNF-like notation, customizable AST construction, advanced error handling/reporting, easy code injection, a complete debugger UI, and much more.

The framework is included with the SyntaxEditor control for WinRT/XAML.

.NET Languages Add-on

The SyntaxEditor .NET Languages Add-on is an optional add-on that provides automated IntelliPrompt completion lists, parameter info, quick info, code snippets, code outlining, parsing, AST construction, syntax error reporting, a resolver, formatting, and more for C# and Visual Basic documents.

Web Languages Add-on

The SyntaxEditor Web Languages Add-on is an optional add-on that provides automated IntelliPrompt quick info, code outlining, parsing, AST construction, syntax error reporting, end tag auto-complete, formatting, and more for XML documents.  It also includes advanced JavaScript editing with code outlining, parsing, syntax error reporting, formatting and more.

ProductHeadingGenericCharts

PieChart

A new pie chart control has been added to complement our other bar, line, area, and scatter chart offerings.

Pie

The pie chart supports advanced features like multiple label positioning and display options, legend display, nesting of multiple series, hierarchical data, and more.

DonutChart

Donut

Donut charts have been added as well.  All the same features found in pie charts are found in donut charts, and the hole radius is fully configurable.

Axis Tick Labels for Percentage Stacked Charts

PercentageStackingChart

When using stacking bar or area charts with the percentage axis option, the percentage value labels now display on the axis.

Improved Scatter Chart Samples

ScatterChart

A new and improved scatter sample has been added.

Dark Theme Support

Dark themes are now fully supported out-of-the-box.

ProductHeadingGenericMicroCharts

Multiple Part Property Paths in XPath and YPath

The XY charts now allow multi-part property paths to be specified in their XPath and YPath binding values.

Dark Theme Support

Dark themes are now fully supported out-of-the-box for controls like box plot and candlestick.

ProductHeadingGenericShared

RadialSlider Control

RadialSlider is a circular slider that can be used to input any scalar value.

RadialSlider

In the example above, a couple RadialSlider and RingSlice controls are combined to build a timer app.

RingSlice Control

RingSlice renders a portion of a ring at designated angles and radius.

RingSlice

The slice's start and end angles can be bound to any data and its appearance can be fully customized.  Make dotted lines, add different end cap styles, etc.

CircularThumb Control

CircularThumb is a thumb gripper with a circular shape and arrow adornment.  It is what the end user interacts with in a RadialSlider, as seen in the screenshot above.

TaskDownload TaskLiveDemo TaskBuyNow