The Issue
A persistent feature request from SketchPath users has been for this XPath Tool to support larger XML files. The realistic current limitation is about 500KB, and even for this file size 'load performance' is close to being unacceptable.
Word 2007
I'm still investigating options and will now trial a version of SketchPath that integrates with Word 2007 rather than using the .NET RichTextBox control. This should provide support for XML files up to about 20MB, which, bearing in mind that 4MB of XML is about 1600 pages, should answer some of the concerns.
Ribbons
Using Word 2007 with .NET is very straightforwards now thanks to VS2008. There's even a Ribbon designer, though for any production version, its likely that I'll choose to generate XML to define the Ribbon as this provide more flexibility - especially when overriding existing Word functions.
The Approach - RTF
To minimise code changes, SketchPath for Word generates RTF from the XML source which is then loaded into Word in the background. There are alternatives of course but this solution already provides good performance and takes advantage of the way Word does 'progressive loading' for files.
The Actions Pane
Word 2007 provides a very neat way of integrating with WinForms, this is via the ActionPanes control which works just like a .NET form and thus a container for any of the Winforms controls. The main limitation here is that it appears to only have one ActionsPane loaded at a time, it would have been nice to give users both a vertical and horizontal pane.
Managing the Release
Word 2007 provides a very neat way of integrating with WinForms, this is via the ActionPanes control which works just like a .NET form and thus a container for any of the Winforms controls. The main limitation here is that it appears to only have one ActionsPane loaded at a time, it would have been nice to give users both a vertical and horizontal pane.
Managing the Release
If this 'proof of concept' has some degree of success and there is to be a sister product to SketchPath then this will be managed to minimise the impact on the development and popularity of SketchPath.