As we move forward in getting the new AppGen.Net and the new template families ready for you, we are simultaneously working to make writing the new T4 templates (much) easier. That task involves creating a specialized editor and supporting hybrid code completion. What’s hybrid code completion? Well to write a T4 styled template you need both code completion for the template directives and the template constructs (embeds, properties, ATs, etc), and code completion for the template language used (as we mentioned before that will be C# for the first release, and later we’ll support Clarion#). So the editor and parser must work together and determine whether the code being written or parsed is template directive or template language. Sounds simple enough but changing the context can happen almost anywhere, including on a line that starts in one context and mid-way through switches to another context and then back again.
Here’s an animated GIF that shows the code completion (CC) in action:
And here’s another one that shows the editor Drop list of “Methods” – equivalent to what in the Win32 templates we call #GROUPs (the drop lists also contains the equivalent to #ATs). All in all it makes for a very powerful template writing environment.
Of course the editor supports all the standard features we all depend on, like syntax coloring and code folding.
The T4 editor and hybrid code completion will make for much faster learning of the interfaces available in the templates, and will make it so much easier to write templates. We are also planning for the code completion to make available “Embed” names when you are in the equivalent to the Win32 #AT tag.
Well as you can see a considerable effort has been put into making writing and modifying templates a better experience. Writing templates is a bit of an art, not everyone can think in the abstract of translating lines of template code into lines of generated code, but writing good templates is much easier when you have the right tools available. As we got deeper into writing the T4 style templates we quickly saw that the syntax highlighting just wasn’t going to be enough. And though we hadn’t planned on support for code completion and code navigation in the T4 templates as critical for a first release, we decided from our own experience that it was actually going to be critical, for us and for you. We’re getting very close to finishing with that task, and doing so moves us that much closer to the end goal.
But enough on writing the templates, now let’s take a quick look at the user interface for using the templates in the new AppGen.Net. This screenshot shows a lot of key areas; central we have the Application Tree dialog. The dialog is split into the tree view on the left side, and the details view on the right. In the details view we can see the Properties, Extensions, Embeds and Procedures tabs. This is the main area you’ll be working from when not in the Designers or Editor. You can also see at the bottom right the new .Net Applications pad which has equivalent functionality the Win32 Applications pad; i.e. you can generate, generate/make or generate/make and run your applications.
We had hoped for an early June beta, and while we’ve decided the system isn’t quite ready today for a beta release you can see how much closer we’re getting. We’ll try to post weekly updates on the new AppGen.Net right here, and we’ll keep you informed as the beta release moves closer. And Thanks for your patience!