Clarion Handy Tools

September 2018


September 18, 2018

Our C11 cross-Installer and template dialog revisions proceed well, no important problems have been encountered since the revised version of C11 (minus the regressions) was released.

Our template dialog revisions are moving more slowly than we initially estimated because we're improving our C10 dialogs at the same time, since this positions us in the probable ( but time yet unknown) future when we will release a C11 standalone version of CHT. When we release standalone for C11 depends entirely on SV's C11 timeline not ours.

A quite realistic estimate for a C11 cross-installed release is by the end of September, 2018.

We have a LOT of templates! And we're touching every one of our template interfaces to make improvements for both C10 and C11.

Since end of September 2018, brings us to the cusp of Quarter 4, 2018. The interim release that we mentioned will now be provided not as 22C.00.03, on Sept 18, 2018, but as 22D.00.00, on Oct 1, 2018. (Note that "D" designates our 4th quarter release).

We will keep you posted periodically as we work, though we don't anticipate any further delays.


September 14, 2018

By now, anyone with a Clarion Core Subscription Program will probably have received their announcement that C11 Pre-Release is available to you.

Here is a partial copy of the email we received from SV on Sept 11, 2018:

Announcing an updated pre-release of Clarion 11 EE is available today. Earlier pre-release builds were sent out to allow the Clarion 3rd party community the opportunity to modify their template UI to take advantage of the change to the Template dialog widths. While no Template changes are "required" (all template functionality is 100% backward compatible), many 3rd party developers have begun to improve their template UI.

When you install C11 and open any of your Apps, you can take a look at the core Template dialogs to see the types of changes that we made on our templates. C11 has already been in testing for weeks and all reported compatibility issues have been resolved.

We're busy re-working our template UI to take advantage of the larger template dialog space available in C11.

At this time we've had about a week to see what's happening in the C11 dialogs that we can use to advantage on such short notice. There's more dialog space, definitely.

Here's our up-to-date plan as to how we will proceed to get you at least testing your apps in C11 as soon as possible.

However, since the very first version of C11 contained a regression, that basically broke many 3rd party templates, (admittedly, this was fixed in 2-3 days) we proceed with extreme caution as regards investing many hours in re-tooling for C11, until we're sure SV has a more "finished" and stable C11 version.

Note that SV are calling this a pre-release, which means, at least to our ears, that C11 still has some distance to go before it becomes a "real" release, let alone a "gold" release. SV has admitted as much.

It is our intention, in the near term, to have the very same template files (HNDTOOLS.TPL, HNDTOOLS.TPW etc. etc.) containing our template code, work in both C10 and C11. We want to avoid needing to ship entirely separate template code for C10 and C11, if possible.

Starting a pure C11 branch of our templates and classes, at this early stage is a surely a fools errand, given the implied reality, that C11 "Gold" is some distance away.

The decision to have the same template code run in both versions, limits somewhat the extent that we can take advantage of these larger dialogs, given that template "screen" code lacks the necessary sophistication to write truly conditional code that can fully distinguish at run-time between C10 and C11.

While screen structures such as TAB and BOXED allow for WHERE() clauses in which we're able to indicate "do this" with C10 and "do that" with C11, to provide different dialog designs in C10 and C11, the resulting code is bulky and full of duplication.

Template code AT(a,b,c,d) properties do not allow for variable values, only fixed, hard coded values, so we're not able to describe the perimeter of a dialog differently for C10 or C11 without duplicate code targeted at two different Clarion versions.

Positional code such as this has to be written, stored and tested twice, once for each version.

Nor, for that matter does #SHEET,AT(a,b,c,d) allow for variables while #SHEET without the AT(), (implied values) works differently in C10 than in C11. In C11 implied width encompasses the entire template dialog width, while in C10 it doesn't.

Whole dialog structures with completely separate C10/C11 positional code have to placed inside TAB and BOXED, WHERE() clauses to distinguish which code will run in C11 and C10. That works of course, but requires separate blocks of code, one block for each screen structure aimed at C10, another block aimed at C11.

We've devised a way to optimally lay out our template dialogs, (our template "screens") to make them at once very legible and effortless to use, with very little conditional code, AND keep them in the same template file used by both C10 and C11.

At this point in time, however, our "same code for both versions" approach is not going to make full use of the extra screen space in C11 dialogs. But at such time that C11 goes "Gold" and everyone is ready to move to C11 from C10, then we can "freeze" C10 code and re-configure for a stand-alone C11 template set, with minimal workload, yet take full advantage of C11 dialog sizes.

We suggest not holding your breath, waiting on C11 gold. Nor will we push C10 to the background any time soon.

In the meantime, here are examples of C10 and C11 dialogs as they will appear when our C11 "cross-installer" is released to you later this month. Note that they are equally legible, and easy to use regardless of which Clarion.

First, two example C10 dialogs:



Next, two example C11 dialogs:



More about this as we dig deeper.


September 6, 2018

One key difference in the Clarion 11 template system is the size of template IDE dialogs. This makes C11 template dialogs larger, and easier to interact with. That's good and has been a long time coming.

What this means for us, is that OUR template dialogs, which are wrapped around the limited size work surfaces provided by the C10 IDE, means a lot of effort to re-design our dialogs to work one way with C10 (small dialogs) and another way with C11 (LARGE DIALOGS).

We've studied our existing C10 dialogs displayed inside C11 and they're OK, no loss of information. But they look a bit off in C11, lots of valuable unused space.

To make C10 and C11 work with the same template code, (i.e. without needing to provide a totally separate set of C10 and C11 template files) this requires us to provide version specific template code that behaves one way in C10 (small dialogs) and another way in C11 (LARGE DIALOGS).

Template screen code is very picky about the use of conditional code. You can't use an #IF/#ENDIF statement inside a #SHEET/#ENDSHEET (template dialog sheet) for instance.

That limits how much conditonal code may be used in our template dialog screen code.

We've begun to experiment with this and after some significant trial and error, have had some limited success in template #SHEET designs that render differently in C10 and C11.

Below is some example code for a template header subroutine routine called HEAD.


Below is how that code renders our AACHTControlPanel template interface in C10.


Below is how that same code renders our AACHTControlPanel template interface in C11.


More about this as we continue our C11 testing.


September 4, 2018

We've been successful in working around a C11 regression introduced with the C11 beta posted last friday, without having to wait for a fix from SV.

So our C10 templates are now registering in C11 and we're test-compiling CHT utilities and demos.

We've introduced a set of C10/C11 pragmas in our classes which will make the C10/C11 templates and classes compatible with either version of Clarion. And we've finished building a new C11 template DLL.

In the short term, (before end of September) we'll post these revised templates and classes to your C10 Webupdater, along with a C11 cross-installer. This will install CHT to your C11 directories and make CHT available to C11 directories as if you'd done a full CHT Install of C11. The two versions C10 and C11 can, at that point, readily co-exist on the same hardware without clashes.

Again, that's not today, but soon, no more than two weeks from now. (Approx Sept 18th)

C11 uses revised (much larger) Clarion template dialogs, which will need to be accommodated, in the longer term. Since changes to the template dialogs are not backward compatible to C10, we'll inevitably end up giving you a fully separate C11 version of CHT templates, branched from the C10 version.

Also, C11 converts your dictionaries, such that they no longer work in C10, so you can't treat your apps as fully interchangeable. I suspect there are more C11 changes, this C11 is a beta, after all. Apps for the time being can be moved back and forth, between C10 and C11, but I'm not at all sure that this might not change down the line.

In any case, our long-term plan is to continue forward development of C10 as always, to share the same CHT classes, and to introduce a fully independent C11 set of templates.

In other words, we'll introduce a fully stand-alone CHT version for C11 with a separate installer parallel to our C10 version. You'll be able to move your work smoothly to C11 if you want or need that, or stay fully up to date with CHT for C10 under one CHT subscription.

And as indicated on our website, if you're a paid-up subscriber, you can have our C11 version at no extra cost. And use both versions under one subscription.

Any questions, feel free to ask.

After-Note About Clarion

Not long after posting the above message we received the Clarion update. It removes the Cll regression discussed above and permits a direct registration, without errors, of the C10 template with C11.

That will go a long way to getting ourselves and our many developers, worldwide, working with C11 and CHT quickly. There are still several key things required from us, however, including pre-registration of our templates and classes into the Windows Registry under HKEY_CURRENT_USER\Software\CHToolsC11, the addition of our HNDTPLBKC11.DLL, and the placement of important utility applications called from inside the templates, into \accessory\bin\ and \accessory\hnd\.

Our classes use version specific pragmas that indicate to the compiler how to behave in the context of several different Clarion versions. We will also need to add Clarion 11 specific pragmas into CHT classes.

All of what we said above still applies, as regards the delivery of a cross-installer from C10 which will make sure that everything you need for CHT to run smoothly with Clarion 11 is copied over into your C11 directories. That cross installer will be part of the C10 toolkit by approx Sept 18th or earlier (Build 22C.00.03). That cross-installer will be temporary item, of course, until C11 is stable.

Because, ulitmately, we will produce a full, standalone, Webupdater for Clarion 11. As we explained above, this is at least partially due to the larger template dialogs provided by C11.

We have no fixed delivery date for that full C11 Webupdater, just yet. That will depend on how quickly C11 stabilizes.

Of course, our C10 forward development proceeds unabated, along side C11 forward development.


September 1, 2018

Thursday, August 30st, 2018, we received notification that a beta version of Clarion 11 was available to us for reliability testing.

We were able to determine almost immediately that there is a regression in the C11 template registration parser/compiler that causes it to throw errors on code that has worked for years in past Clarions.

We weren't the only ones to notice this as the new SoftVelocity Clarion 11 newsgroup began filling up with comments that something was up with the template parser. It was reporting errors on certain code, or blank lines, in the #ATSTART/#ATEND section of the template.

Bob Zaunere has indicated that this regression would be corrected by early next week. At that time we'll resume our beta testing of Clarion 11.


If your Webupdater C10 is dated prior to JUL.06.2018, you should visit our Download Site to download (manually) our brand new "Pre-Installer", in the form of a file called CHTSETUP.ZIP as your toolkit is falling seriously behind the rest of us. The latest CHT version is currently Version: 22C.00.02 AUG 17, 2018.

CHTSETUP.ZIP contains CHTSETUP.EXE and two security certificates. The included certificates are optional. However they are provided, in order to moderate the challenge raised by Windows 10, when you take the time to install the certificates first, by clicking on them one-by one. If you decide for the certificates first, please install them to "Trusted Root Certification Authorities" or best results.

CHTSETUP.EXE is what we call a "Pre-Installer". Feel free to run it any time in order to get a "news brief" about what we're up to. It opens a text file on your desktop, called CHTTODO.CLW that we hope you'll read regularly, bi-weekly, or even daily. What's in this text file is explained briefly below.

CHTSETUP.EXE also provides the latest versions of 4 or 5 CHT UTILITY APPS that we're currently featuring. We change these periodically to bring them foremost to your mind. They tie in with some of the "PLEASE TRY THIS" tasks which are part of our CHT "NEWS BRIEF". Included currently is a newer version of HNDBRWCL.EXE, the CHT forum browser, and 3 others.

CHTSETUP.EXE also creates a small, separate set of menus on your PC, located under the "&" symbol near the top of your Windows 10 menu. We'll keep this menu short, under 10 items, with some items changing from time-to-time. However, always found in this list are two key items: "@CHT SETUP", and "@WEB UPDATER C10". They're our key installation and upate applications.

HND_WBUPDATERC10.EXE is our "Installer-Updater". It detects when build changes or updates to builds have been posted, which you may not yet have on your system. To check whether there's anything new, by way of a new build or a build update, you must start "WEBUPDATER" from the "@WEB UPDATER C10" menu and click "Continue". It logs in and displays the last-available build number. Click "continue" again and it scans your containers to determine when any are out of date. If it finds NONE ARE out of date, it skips quickly through the available list. Whenever containers requiring updating are detected, it downloads these first. Finally, in step 5, the newly-acquired containers are extracted to your system.

CHTSETUP.EXE finishes by opening a file called "CHTTODO.CLW" located in /accessory/hnd/todo/. This text file contains our quite detailed "NEWS-BRIEF" updated several times a week. The file is structured in reverse chronological order, with the newest entries at the bottom. There are four distinct sections as follows:


If you encounter problems or have any questions, please contact us using the email link at the bottom of this page, with a description of the problem or with your questions.

Contact Us

If you have any thoughts or impressions to share, feel free to get back to us via email using the hot link provided here.

Click the link below. It will start your email client with our email address inserted:

Click To Contact Us