|
|
Friday, 5 September 2008 05:06 by Bill Henning
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. | 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.

Monday, 25 August 2008 09:31 by Bill Henning
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 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.

Friday, 22 August 2008 03:20 by Bill Henning
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. | 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.
Tuesday, 19 August 2008 04:08 by Bill Henning
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.

Friday, 8 August 2008 09:31 by Bill Henning
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. | 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.

Wednesday, 30 July 2008 01:00 by Bill Henning
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. | 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: - 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.
- Improve the document/parsing capabilities in general.
- 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 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.

Wednesday, 16 July 2008 06:12 by Bill Henning
Now that Actipro WPF Studio v4.0 is out, we've started on PropertyGrid for WPF development again. We already have a good core codebase working for the PropertyGrid for WPF control and have done a lot of planning on its feature set, but we want to hear your thoughts as well. What features do you want to see in our upcoming PropertyGrid for WPF control? Please email our support team with your comments, we'd love to hear them!
Tuesday, 8 July 2008 07:55 by Bill Henning
We're just about ready to launch WPF Studio v4.0, probably in the next day or two. Keep an eye on our site for the official release! As another sample of what our gauges in WPF Studio v4.0 can do, here is a flight simulation gauges gallery that shows a collage of gauge controls related to a flight simulation. | Flight simulation gauges that can be fully data bound | The full XAML source for these control samples are in our v4.0 Sample Browser.
Thursday, 26 June 2008 08:34 by Bill Henning
We've been working some long hours to get WPF Studio v4.0 completed and into your hands. Both the Docking & MDI and Gauge products are now just about code complete for their first release. We already have a lot of samples that demonstrate major areas of functionality. We are now working on documentation and designer support. As mentioned before, WPF Studio v4.0 includes a complete set of circular, linear, and digital gauges, all of which are native WPF controls. I wanted to highlight some of the capabilities of our gauges so we came up with an automotive gauges gallery that shows a collage of gauge controls related to a car dashboard. | A car dashboard with gauges that can be fully data bound | All of the controls above are vector drawn (meaning they scale cleanly to any size) and can be data bound to live data. Dampening, or the process of smoothing out transitions to new values, is fully supported too. When enabled, as values change, the gauge needles smoothly animate to the new values like a real gauge would. The full source for these control samples are in our v4.0 Sample Browser. Stay tuned for some more sample screenshots soon.

Monday, 16 June 2008 06:10 by Bill Henning
We've had a lot of interest from customers regarding our product roadmap for WPF development. I wanted to post where things currently stand and where our future development priorities lay. I also would like to give customers the opportunity to voice their opinion as to what they would most like to see added to WPF Studio down the road. In addition, we are now announcing a new WPF product that will be available after the WPF Studio v4.0 release: PropertyGrid for WPF. WPF Product Roadmap Here is the roadmap for WPF development as of June 2008. WPF Studio v4.0 Release The WPF Studio v4.0 release will be available in the next several weeks. We are still finishing up the two new products that have been added and are in the process of adding samples, documentation, etc. Actipro Docking & MDI for WPF The Docking product implements docking tool windows and MDI functionality for WPF. We haven't talked too much about the feature set yet, however we'll get into that closer to release time. Rest assured though that themes are created for all Windows system themes, along with all three Office themes. It also will offer a huge number of options. |  Docking and MDI in Windows Vista | Use the docking tag to search for info on this product in the Actipro blog. Actipro Gauge for WPF The Gauge product makes it easy to create any sort of circular, linear, or digital gauge. These gauges can be used to represent data in digital dashboards, provide virtual instrumentation, and much more. |  A circular gauge that shows how easy it is to create a working analog clock | Use the gauge tag to search for info on this product in the Actipro blog. After WPF Studio v4.0 The following two products have had work started on them but were placed on hold temporarily while we divert our development resources towards getting WPF Studio v4.0 out the door. PropertyGrid for WPF A new product, PropertyGrid for WPF, will provide property grid functionality similar to that found in Visual Studio and Expression Blend. We will get into more details about the product following the WPF Studio v4.0 release. However its development is already fairly far along, and we expect it to be ready within a few weeks after the WPF Studio v4.0 release. | The first look at our upcoming PropertyGrid control for WPF | SyntaxEditor for WPF SyntaxEditor for WPF will provide the high quality code editing experience you expect from Actipro, the industry leader in syntax highlighting editing controls and components. One SyntaxEditor for WPF design goal is to make a common document/parsing library so that it can be shared with the next Windows Forms SyntaxEditor v5.0 and CodeHighlighter. We also have a ton of new features planned that we will start posting about in the future. As a WPF Studio Customer, Will I Receive These Products for Free? As long as your WPF Studio subscription is active when a product is released, you will be eligible to upgrade to the new version and get any new products added to WPF Studio for free. Each WPF Studio developer license includes a free subscription that can be renewed at its expiration date each year. What Would You Like to See Added? Let's hear your comments on what you'd like to see added that hasn't been listed in our roadmap above. Some suggestions from customers have included: - Grid
- Chart/graph
- Scheduling
- Reporting
Please post a comment and rank in order of priority which of these (or your own suggestions) that you would like us to work on. At Actipro, the opinions of our customers matter and your feedback really will help steer our long term future development efforts.

|