Subscribe (RSS)

Quick Links

Recent Posts

Tags

Categories

Archive

About Actipro

Actipro Software has been creating .NET user interface control products for Windows Forms since its inception. More recently, Actipro has become a pioneer in the .NET 3.0 WPF control development arena.
Monday, 10 November 2008 00:24 by Bill Henning

Major new Gauge for WPF features and controls

Our Gauge product has just been updated with two new controls, lots of new features for the existing controls, and several bug fixes.  This update is part of build 4.5.0480 that was released this past Friday.

Here are some details on some of the major new features and controls...

New Features

Logarithmic Scales

The CircularGauge and LinearGauge now support logarithmic scales with a configurable base. Logarithmic scales can be useful when more sensitivity is needs for lower values, since smaller values are spaced further apart.

CircularGaugeLogarithmic

A CircularGauge with a logarithmic scale using a base of 10

Glass Effect and Frames

All the gauge controls allow more customization of the frame rendered. The frame rim is now independent of the frame background, which allows you to mix and match the various effects supported by each. In addition, a new glass effect has been added, which produces a more stunning look.

CircularGaugeGlass     CircularGaugeNoGlass

A CircularGauge shown with (left) and without (right) the new glass effect

Dynamic Sizing

The gauges now support being resized dynamically, so that the inner elements resize proportionally. This is accomplished by specifying percentage-based sizes, but fixed-based sizes can still be used if desired.

DynamicSizeSmall   DynamicSizeLarge

A CircularGauge sized 200x200 (left) and 300x300 (right)

Scrolling Text

The DigitalGauge can now scroll the text displayed to the left or right using a configurable interval. This allows long text to be presented to the end-user using a marquee effect.

Marquee

A DigitalGauge using the new dot matrix character type with scrolling marquee functionality

New Controls

Two new controls come with this update, an Led control and a ToggleSwitch control.

Led Control

The Led control is great for presenting simple state (on, off, blinking) information to the end-user. The led light is fully animated and customizable, with options for the light shape and colors.

Led 

An Led with a red light

ToggleSwitch Control

The ToggleSwitch control works much like the native WPF ToggleButton, but looks like a real-life switch. The switch is fully animated and customizable, with 2 styles to choose from.

ToggleSwitch

A ToggleSwitch with a circular look 

Summary

There are too many other new features to list here, but check out the latest build to try them out for yourselves.

Tags:   ,
Categories:   Actipro | New features | WPF
Actions:   E-mail | Permalink | Comments (0) | Comment RSS



Wednesday, 15 October 2008 06:33 by Bill Henning

Ribbon and NavigationBar get new Aero themes

The latest maintenance release 4.5.0475 of WPF Studio adds new attractive Aero themes for Ribbon and NavigationBar.  These new Aero themes match great with our other WPF products such as Docking & MDI.

Additionally we've added a Change Theme button to the top of our Sample Browser.  This lets you quickly set the application-wide theme for the Sample Browser.  You can even use the Change Theme button in our XBAP live demos.

Ribbon Aero Theme

AeroRibbon

A RibbonWindow that contains a Ribbon as well as a DockSite with tool and document windows

Note how Ribbon and Docking & MDI now look great together in Aero.  The above screenshot was taken with glass effects disabled so that you can see how RibbonWindow renders with its Aero theme when used on XP systems.

NavigationBar Aero Theme

AeroNavBar

The new NavigationBar Aero theme

Enjoy the updates!

Tags:   , , ,
Categories:   Actipro | New features | Windows Vista | WPF
Actions:   E-mail | Permalink | Comments (0) | Comment RSS



Friday, 3 October 2008 07:53 by Bill Henning

New PropertyGrid features and other WPF Studio build 471 updates

The latest maintenance release of Actipro WPF Studio v4.5.0471 includes several large updates to the PropertyGrid product, several small updates to other WPF Studio products, and a number of brand new QuickStarts for the Sample Browser.

PropertyGrid Features

Filters

The first new PropertyGrid feature is the ability to quickly and easily filter the items presented. We've included several built-in filters for string and boolean properties, as well as filter groups. String filters support everything from Equals to regular expressions and groups can be used to combine any number of filters using AND/OR logic.

PropertyGridBeforeFilter PropertyGridAfterFilter

Shows the PropertyGrid before (left) and after (right) text is typed to filter out properties by name

We designed the filters so that they can readily be used directly from XAML, including support for data binding. Custom filters can be used when the built-in filters are not enough. 

Filters allow users to quickly find a specific item, or they can be used to permanently exclude items from being displayed. 

A common use of filters is to provide a TextBox above the property grid.  When the end user types in text, only the properties whose names contain the text are displayed.  This is displayed in the screenshot above.

Read-Only State

We have also added a read-only state to the PropertyGrid, which is configured using the new IsReadOnly property. Using this new property, all the value editors in the PropertyGrid can be set to prevent changes.

PropertyGridReadOnly

PropertyGrid with the global IsReadOnly flag set to true; note all values are disabled in this mode

Memory Usage and Other Fixes

Several memory issues and other fixes found since the initial product release are also included in this release.

New Demos and QuickStarts

We've added five completely new demos and QuickStarts to this release, along with updating two of our existing QuickStarts with new functionality.

Docking & MDI Custom Docking Windows

We've had several requests to allow our DocumentWindow and ToolWindow controls to be inherited so that they can be defined as their own classes with separate XAML.  There was a core WPF issue that prevented this in the past (styles wouldn't be applied to the inherited controls) however we've found a workaround for this issue and implemented it in build 471.

In addition, we've added a new QuickStart that shows exactly how to define custom DocumentWindow and ToolWindow classes and reuse them in a DockSite.

MonthCalendar Day Highlighting

Another request we've gotten from several customers is to be able to highlight certain days within our MonthCalendar control.  In build 471, we show the implementation of a custom class that highlights certain days. 

MonthCalendar

The MonthCalendar control showing several types of highlighted days

The same concept could be used to highlight holidays, birthdays, etc. in your own applications.

Enjoy the update!

Tags:   , , ,
Categories:   Actipro | New features | WPF | XAML
Actions:   E-mail | Permalink | Comments (0) | Comment RSS



Tuesday, 9 September 2008 08:20 by Bill Henning

New poll: Which WPF products do you want to see Actipro bring to market?

As a more formal follow-up to this post where a lot of our valued customers gave their feedback on our product roadmap, we just began a new poll to get more input from our customers on exactly which types of WPF products you'd like to see us bring to market.  Now that PropertyGrid for WPF is almost ready to go, our next project will be an Editors library with things like part-based and masked textbox editing.  These will be able to be used with PropertyGrid or standalone.  As you know we also have SyntaxEditor for WPF in ongoing development.

You can find the new poll here:

Poll: Which WPF products do you want to see Actipro bring to market?

Please take a minute to fill it out and rank the various future product ideas we have.  At Actipro, your input matters!

Previous Poll Results

Our previous poll "What IDEs do you use for WPF design/development?" has been out for a while now and we found the results thus far to be in line with what we expected.

95% said they used Visual Studio 2008 for WPF development.  5% said they still used VS 2005 and 5% said they used neither.

10% said they used Expression Blend all the time.  53% said they used it occasionally, while 37% said they do not use it at all.

Tags:   ,
Categories:   Actipro | General | WPF
Actions:   E-mail | Permalink | Comments (3) | Comment RSS



Friday, 5 September 2008 05:06 by Bill Henning

PropertyGrid for WPF is almost ready

We're very close to having our new PropertyGrid for WPF product ready to go and we're confident you'll love it once you get your hands on it.  We've added a lot of innovative features that aren't found in our competition.

More on these closer to release, but I'll review a couple things below.

Release Date

We're putting some final touches on the codebase today and early next week.  We already have over 10 QuickStarts that show off various product features, and several others that we plan on doing, some possibly after the initial release.  We also have to work on documentation.

So with all that mind and barring any last minute changes, we're going to target the first release of PropertyGrid for WPF sometime in the week of September 15th. 

Anyone who has an active WPF Studio subscription at the time of release will be eligible to upgrade to get PropertyGrid for free!  That's one of the great benefits of being a WPF Studio customer, instant free access to new products.

.NET 3.5 SP1 Virtualization

As you know, .NET 3.5 SP1 came out a couple weeks ago adding some nice new virtualization capabilities for native WPF controls.  We wanted to ensure that PropertyGrid also took advantage of the new virtualization features and have designed it accordingly.

When PropertyGrid virtualization is enabled on machines running SP1, the control will use less memory and will have faster load times.  The only downside is that scrolling will be slightly slower since it is generating containers on the fly instead of at initial load time.

Category Editors

One really interesting feature of the Actipro PropertyGrid for WPF is the ability to support custom category editors.

Category editors are a concept introduced in Expression Blend where you can group multiple properties into a custom UI that provides a friendlier layout.  The properties processed by the category editor do not appear individually like normal.

CategoryEditor

Two PropertyGrids side-by-side and operating on the same object, one with default editors and one with custom category editors

The screenshot above shows one of our QuickStarts where both PropertyGrid controls are editing the same object. However the PropertyGrid on the right has a couple category editors that consumes several properties and provides an interesting UI for editing those properties.

As with the rest of the control, the UI can be fully customized and styled.

Tags:   ,
Categories:   Actipro | In development | WPF
Actions:   E-mail | Permalink | Comments (1) | Comment RSS



Monday, 25 August 2008 09:31 by Bill Henning

PropertyGrid for WPF beta testing starts this week

The time has finally arrived, we plan on starting beta testing of our PropertyGrid for WPF control this week!  We're just finishing a couple last minute items and making several quick samples.  Then we'll be ready to get it out into the hands of our beta testers for feedback.

PropertyGrid

PropertyGrid for WPF showing how you can embed custom controls like our SpectrumColorPicker as an editor for a property value

Beta Testers Wanted

We're looking for more beta testers.  If you are a WPF Studio customer and would like to help try out the PropertyGrid for WPF control, please send our support team an e-mail. 

Please note that you must be willing to provide feedback on the control after using it.  Also, only WPF Studio customers will be accepted for beta testing at this time since they will be receiving it free upon final release.

What's Left Before Final Release?

The code is just about ready for final release, pending any changes or minor enhancements that we make based on the beta testing feedback.  The beta will include several samples, and we'll be working on more before final release.  The beta will not contain any documentation yet since that also will be written while beta testing is in progress.

What's After PropertyGrid?

As I've been posting, progress on SyntaxEditor for WPF has been very good and will be continuing. 

We have some other minor items to work on with our existing products but will also be getting into an editors library such as masked edits, etc. following the release of PropertyGrid.  The goal is for the editors to work flawlessly both inside the PropertyGrid as well as standalone.

Tags:   ,
Categories:   Actipro | In development | WPF
Actions:   E-mail | Permalink | Comments (0) | Comment RSS



Friday, 22 August 2008 03:20 by Bill Henning

SyntaxEditor for WPF block selection

As mentioned in previous posts, we're working very hard on the SyntaxEditor for WPF core editing capabilities.  One area that we've been working in this week is advanced selections such as block selections.

Block selections are where you create a rectangle of selection instead of the normal "snaking" variety of selection.

BlockSelection

Block selection in SyntaxEditor for WPF

As you can see from the screenshot above, we have block selection working already in SyntaxEditor for WPF.  And it even supports embedded right-to-left text properly!  Although the screenshot's selection looks a bit strange, that actually is the correct way to do a block selection when encountering right-to-left text.

We're making a very concerted effort to ensure that SyntaxEditor for WPF supports any culture.

Tags:   ,
Categories:   Actipro | In development | WPF
Actions:   E-mail | Permalink | Comments (2) | Comment RSS



Tuesday, 19 August 2008 04:08 by Bill Henning

Large file editing in SyntaxEditor for WPF looks great so far

One area that we definitely want to improve with SyntaxEditor is the ability to have good response and performance when editing large files.  In SyntaxEditor for WinForms, there are a number of options you can turn off to help improve performance, yet it would would be much better to be able to leave options on and still have decent performance.  Also when editing huge documents, performance should still be considered good, not just satisfactory.

In our newer internal design that we're prototyping out in SyntaxEditor for WPF, we have already started implementing a number of improvements we've been brainstorming on for a long time.  Let's call these new ideas SyntaxEditor Next since after the WPF version is completed, we'll probably be looking at implementing similar techniques in the WinForms version 5.0.

Here is a list of some of the improved areas (let's assume a large document is 10MB in size for these comparisons):

  • Document loading - When loading a very large document, it may take 10-15 seconds to load and display in SyntaxEditor for WinForms.  In SyntaxEditor Next, it loads and displays instantaneously.
  • Typing performance - When editing a large document in SyntaxEditor for WinForms, there can be a noticeable delay when typing each character.  With our SyntaxEditor Next design, there is almost no noticeable slowdown in typing.
  • Word wrap activation - When switching to word wrap mode in SyntaxEditor for WinForms, very large documents might notice up to a several second delay before the switch is complete.  In SyntaxEditor Next, the change is instantaneous.
  • Word wrap memory - In SyntaxEditor for WinForms, word wrap mode took up a lot of additional memory when working with large files.  In SyntaxEditor Next, it uses almost no additional memory.

The observations above are comparisons made on the same 10MB file with highlighting enabled.

Please note that while SyntaxEditor for WPF (SyntaxEditor Next prototype) doesn't have outlining or semantic parsing implemented yet, to compare apples to apples we turned off outlining and semantic parsing in the WinForms version.  Therefore we are very optimistic that the performance results above can be maintained once outlining and semantic parsing are added to SyntaxEditor for WPF.

Tags:   , ,
Categories:   Actipro | In development | WPF
Actions:   E-mail | Permalink | Comments (0) | Comment RSS



Friday, 8 August 2008 09:31 by Bill Henning

SyntaxEditor for WPF will support bi-directional text (Arabic, etc.)

As I mentioned in the previous blog post, we've been working on core editing functionality for the WPF version of SyntaxEditor.  One feature that isn't in our WinForms version but that we always wanted to add is support for right-to-left languages inline with code.

Bi-directional display of text is a tricky thing because as soon as you enter a sequence of right-to-left characters such as Arabic or Hebrew, the entire sequence is flipped over and directional left/right arrow keys move the caret in the opposite direction.

 Bidi

SyntaxEditor for WPF showing the partial selection of some Arabic text

So in the screenshot above, say you have the caret at the left quote (fourth character) on line 6.  If you press your right arrow, the caret jumps to just before the right quote after the Arabic "Hello world" text, since this is considered "before" the Arabic sequence of characters.  If you press right arrow again, it moves one character to the left, and into the Arabic section.  This continues until you reach the leftmost side of the Arabic sequence, and the caret moves to the right quote again.  From that point on, right arrow moves to the right since it is back in left-to-right mode.

In the screenshot, the selection was anchored at the start of the "SyntaxEditor" word on line 5 and then the caret was moved down to line 6 into the Arabic sequence of characters.  You can see how the selection properly splits to show the contiguous sequence of characters that are selected.

Tags:   ,
Categories:   Actipro | In development | WPF
Actions:   E-mail | Permalink | Comments (1) | Comment RSS



Wednesday, 30 July 2008 01:00 by Bill Henning

Actipro's WPF Product Roadmap - August 2008

Our previous WPF product roadmap posting presented the post-WPF Studio v4.0 development goals we have for the near future, including PropertyGrid for WPF and SyntaxEditor for WPF.

In this posting, I'd like to talk about some of the progress being made in those areas.

PropertyGrid for WPF

The PropertyGrid for WPF control provides nearly all the features found in modern IDE applications such as Visual Studio 2008 and Expression Blend.  If development continues as planned, we could be looking at having it out in late August.

Let's take an in-depth look as to what features the first release of this control will provide.

 PropertyGrid

The upcoming PropertyGrid for WPF product

Property Population - Manual and Automatic Options

The PropertyGrid can be populated manually using XAML or code-behind, which can be bound to any value. This
is great for scenarios where there is a known and static list of entries.

Additionally, the properties of any .NET object, or objects, can be used to automatically populate the PropertyGrid.
You can choose from simple reflection or TypeDescriptors, which supports abstract properties like attached properties, to create the entries from the specified object(s). When more than one object is specified, the properties common to all objects are "merged", just like the WinForms PropertyGrid. You can provide a custom "property factory" if you need more control over the generation of entries.

Property Editors

Property editors can be specified for properties by name/type, name, type, or base types. This means you can specify the editor to use for all enumeration types or for a specific property. The property editor can be used to customize the value cell DataTemplate, the control used to present/modify the value, and the name cell DataTemplate.  These give you total control over the appearance of each property.

Category Editors

Category editors can be used to present more complex editors that are capable of modifying more than one property
in a specified category. As seen above the FontFamily, FontSize, FontStyle, and FontWeight properties are presented using a "Font" category editor.

Data Validation

All the editors support the standard WPF data validation, as seen in the font size TextBox above. You can use Styles to apply your own ErrorTemplate.

Complex Properties

Certain "complex" properties can be expanded to show child properties.

SyntaxEditor for WPF

SyntaxEditor is under full development as well.  However this product will take more time to get an initial release out because there are several parallel goals that we're working on:

  1. Build a common document/parsing framework that can be shared among multiple related products and platforms.  This means using it for SyntaxEditor for WinForms, SyntaxEditor for WPF, CodeHighlighter for ASP.NET, and other small products we have in mind.
  2. Improve the document/parsing capabilities in general.
  3. Create better tools to help develop and maintain advanced languages.

That being said, once we get core editor functionality working, we may start some alpha testing for any WPF Studio customers who are interested.

SyntaxEditor

SyntaxEditor for WPF with some basic syntax highlighting for a C# document

Speaking of the core editing capabilities, we've been focusing a lot lately on making the common document/parsing framework.  So unfortunately that can't be displayed in screenshots.  However you'll like what you see once you get your hands on it.  Also we've been working on some basic editor features like view splitting along with some other really neat things that we'll keep quiet on for now.  Let's just say that once complete, SyntaxEditor for WPF will work like the Visual Studio code editor out-of-the-box, but will have some very nice extensibility points that weren't previously available.

If anyone has any suggestions for document/parsing or UI extensibility points, now is the time to e-mail them over.  We'd love to hear your thoughts.

Tags:   , , ,
Categories:   Actipro | In development | WPF
Actions:   E-mail | Permalink | Comments (2) | Comment RSS