The CHT Blogger

Thanks for your interest in The Clarion Handy Tools, an awesome collection of productivity enhancements for Clarion developers. These tools consist of an ever-expanding set of Clarion Templates and OOP Classes that extend or complement the normal functionality of the Clarion Application Development System from SoftVelocity.

Sunday, April 5, 2009

Small Upated Posted to Build 13B1.00 April 4, 2009

We've posted a small update to Build 13B1.00 last night, April 4, 2009. This update is part of an ongoing series of changes and additions to our 13B1.xx, 2nd quarter CHT build.

New CHT Templates


In this update we've added three new templates called: Source_EmbedMAPIFunctions, Source_EmbedZipFunctions and Source_WriteZipCode_SEZF.

These three templates are a continuation of our Templates For ABC Source Procedures initiative discussed in our April 1, 2009 entry posted below on this page. The purpose of this set of templates - all template names starting with "Source_" - is to accommodate the ABC source code procedure which is missing most standard embed points and so is not a very flexible target for template-placed embed code.

New CHT Applications


With this update we've added two new demo applications called: HNDSOURCESMTPDEMO.APP and HNDSOUCEMAPIDEMO.APP.

The purpose of these small demo apps is to illustrate the suite of "Source_" templates which at this point includes eight new templates. More demo apps of this sort will appear during this quarter to illustrate all "Source_" templates available so far. I also have several new "Source_" templates in mind for this quarter and they
too will eventually get separate demos or they will be incorporated into the existing demos.

PopUp Menu Demo Jazzed Up


We spent a few minutes "jazzing" up
HNDPOPUPMENUDEMO.APP
mentioned in our April 1, 2009 entry and have added menu-based calls to also raise the popups embedded under the window buttons by our template. That application now looks as follows:

hndpopupmenudemo_2.bmp


C7 News


We've been slowly adding to our suite of C7 demo applications. Eventually we want all but a couple of CHT demo and utility applications to be available in both C6 and C7 format. We've dragged our feet on a few of these while waiting for a C7 bug fix (a PTSS Item I posted) that seems to be taking its time. It's not a serious
bug but an irritating one since we tend, in C6, to often use an equate, HPROP:AppVersionEx, in the title bar of our windows. C6 doesn't have a problem with this. But apps that contain anything but text in the window title are a problem for C7 during the conversion process. C7 reports Constants and Variables used in your window title bar as errors, so that after conversion, you need to go to the window and edit the title bar back to text.

Long-time CHT user, Robert Barton, alerted us yesterday that when CHT was registered in C7 he was unable to import from another application without encountering a UHE. It appears that when C7 initializes the the template registry in preparation for import, it runs the #SYSTEM code in our template. Since this has always worked just fine in C6 we had to write a workaround to accommodate C7. So as of this update you're able to import from other C7 applications without encountering any problem. We'll raise a C7 bug report to PTSS to explain what causes the UHE and request a fix.

Just a reminder once again, when you do a C7 update, don't forget to run one or the other of our C7 installers to bring our classes and templates up to date after the C7 re-installation.

That's all for now.

Cheers...

Gus Creces
The Clarion Handy Tools Page
www.cwhandy.com
support@cwhandy.com
April 4, 2009

New Build Released 13B1.00 April 1, 2009

As of April 1, 2009 now you're able to download the latest build numbered 13B1.00.

New Templates In Build 13B1.00


More Support For ABC Source Code Procedure Template

We've made it easier to add some of CHT's low-level classes to your procedures built with the ABC source procedure template. In this build, we've added the following templates: Source_EmbedDateFunctions,Source_EmbedDiskFunctions, Source_EmbedUtilityFunctions, Source_EmbedEncryptionFunctions.

ABC source procedures don't have the normal range of embed points provided in ABC window-based procedures, so in order to attach classes in which derivation is automated the way it is in all other ABC procedures, a special template
is required. These four templates provide that special design. You're able to see the class functions inside the procedure and you are able to embed code inside these methods the same way you can in a Window, Browse, Report and Process template. All four are extension templates so they're added to your source procedure via the IDE extensions interface.
source_templates.gif


Soon we'll give you at least one example application using these templates to illustrate what you can do with them.

New Pop-Up Menu Template

This build, we've given you a Pop-Up menu template called HandyPopUpMenuButton. With this template you're able to easily build pop up menus which include images. The template provides a button control which is used to trigger the pop up menu. Clever developers know that they really don't need to display this button to make it work for them. By simply hiding the button, and posting EVENT:Accepted to it from any other control or from an embed in your procedure, the pop up menu can be made to do what you've set it up to do.

handypopupmenu2.gif

handypopupmenu1.gif


For an example application illustrating HandyPopUpMenuButton look at HandyPopUpMenuDemo.

Windows Services Template Revised

We've revised the HandyNTServiceFunctions template with a switch which when checked, makes the window service "silent" whenever it is installed or removed. In the previous version of this template, the service displayed messages when it was first installed and when it was removed. While displaying messages is still the default mode of operation, now you can suppress the messages if you choose to (see image).

handyntservicefunctions.gif


Look at application HndWindowsServiceDemo.APP for an example illustrating use of this template. While we were at it we also fleshed out this functionality in-code by adding two commands /ISQ (install service quietly) and /RSQ (remove service quietly). The image that follows is from the service application's interface. We use this application set for 3:30 AM daily, to back up our tool kit source code by having it start HNDFSYNC.APP, passing it a sync control file called hndfsync_driveo.tps.

hndwindowservicedemonew.gif


For a full review of new and revised templates so far in 2009, follow this link: New/Revised Templates YTD 2009.

Cheers...

Gus Creces
The Clarion Handy Tools Page
www.cwhandy.com
support@cwhandy.com
April 1, 2009

Wednesday, February 4, 2009

CHT INSTALLATION TUNER FOR C7

As promised, we've posted a fully functional WEBUPDATER C7 _AND_ a fully functional CHT INSTALLATION TUNER (HNDZINDEXC7.EXE). Installation Tuner and WEBUPDATER for C7 were tricky, because we decided to re-use all C6 containers - why not - except those that contain the C7 apps and dct's - which are different - and some of the C7 specific .EXE's like HNDZINDEXC7.EXE itself. C7 uses different path locations than C7, so we had to intercept these and change them on the way in. Works good now though.

I tried to do this last night and did a partial upload last night which I wasn't able to finish as I got one heck of a cold over the weekend and felt like crap. I struggled through today and am happy with HNDZINDEXC7.EXE, which was developed forward in C7 from the C6 version

Cheers...
Gus M. Creces
gcreces@sympatico.ca

Friday, January 30, 2009

Two New Clarions Today

We received notification today of the release of Clarion 7.0.0.4790 as well as Clarion.Net 7.0.0.4769 and have done re-installs and brief checks of both.
Clarion 7 checks out ok with a dozen or so CHT demo applications I tested. No exhaustive testing done but another of my reported bugs is fixed in this release.

RE: CLARION 7
Here is a list of the latest changes and additions Clarion 7.0.0.4790:

• FEATURE: Clarion Template Code Editor supporting code folding and drop list for type of templates and names and parameters.

• FEATURE: #HELP, #RUN and #RUNDLL use the redirection file to try and find the necessary file.

• FEATURE: When you install a version of Clarion into the C7 IDE the base redirection file for that version will automatically be upgraded so that #HELP, #RUN and #RUNDLL can use the redirection file

• CHANGE: Better error message when a key cannot be found for a relationship when upgrading a dictionary

• CHANGE: Clarion Templates highlighting was not allowing to comment template code

• CHANGE: Warning message changed from "Option text is too long" to "The option was truncated by a prior version of Clarion"

• CHANGE: add data pictures and scrollbar to the LISTBox formatter

• FIX: Clarion template chain was referencing C60HELP.HLP

• FIX: Help was unavailable from some Help buttons inside generator

• FIX: Win32 redirection system did not support include directives with quotes surrounding the file name

• FIX: %Procedure must be re-fixed to complete re-synchronization of dependent symbols

• FIX: Command line passed to RUN could be parsed incorrectly

• FIX: Some memory was not being garbage collected from the data pad

• FIX: adding/editing of nested GROUP and QUEUE structures to applications as well as groups or queues after other groups and queues

• PTSS 31947: Wrong error could be reported on parsing #WINDOWS/#ENDWINDOWS and #REPORTS/#ENDREPORTS blocks

Don't forget that once you've installed this latest C7 version to at least open and then close WEBUPDATER or the HNDC7INSTALL application. If you don't do this after re-installing C7 classes you'll get a "PRIVATE" error on compiling any of our demo apps. Don't report that please, just rerun either installer.

Just a quick reminder not to run the CHT Installation Tuner for either C6 or C7 until we give notice of it's completion. The introduction of special .APP and .DCT containers for C7 require some changes to this application which we've not yet completed. They'll be along early next week.


RE: CLARION.NET
The Clarion.NET 4769 update was a welcome surprise. We've been so pre-occupied with C7 we haven't had much time to experiment with this Clarion in the last couple of months. However, we did dig out a CHT demo app created for Clarion.NET in the previous version and it compiled and ran OK in the latest Clarion.NET, so there have been at least no compiler changes since the last release. If you don't have that Clarion.NET demo app, we're happy to supply you with a copy if you'd like it. Post your request as a reply to this message on the CHT forum.
That's all for now.

Cheers...

Gus Creces
The Clarion Handy Tools Page
www.cwhandy.com
support@cwhandy.com
January 30, 2009

Monday, January 19, 2009

Build Update (13A1.02) Posted Last Night

We posted an update to the 13A1.XX build last night, numbered 13A1.02. This build update is in preparation for the imminent release also of our full C7 installer which I'm still hoping to do this week. I was hoping to check it out first against the next C7 update - which is supposed to be this week - before setting it free. If that update doesn't materialize before, say this coming Saturday January 19th, 2009, we'll release WEBUPDATER-C7 anyway.

The first thing you will notice with last night's 13A1.02 build update is that the WEBUPDATER graphic now sports a "C6" prominently on the window inside a white oval. This is so that you can easily distinguish the updaters when you have both to contend with. The C7 WEBUPDATER will display a "C7" inside the oval pictured below.

webupdaterc6graphic.gif



Application/DCT Auto-Backup Feature
Last night's build update also introduces a new feature available both for C6 and C7, the ability to turn on auto-backup for your applications and dictionaries. Any time your application is re-generated due to changes made by the "Save" button, a backup is made of the application as it was immediately after the last "Save". This feature is OFF by default but can be turned on and configured using a new support application called HNDBACKUPCONFIG, pictured below.

hndbackupconfig.gif



From this app interface you can set the backup directory, turn auto-backup on/off and manage older backups by either deleting them or zipping them into a compressed batch first and then deleting them. This backs up both the .APP file and the .DCT of your application. At the moment, it is doing this rather aggressively (making more backups than is really necessary) I'm working on fine tuning this a bit to cut down on duplicate backups but initially I'm erring on the side of more, rather than less.
Suggestions on the operation of this are welcome.

New Cross Installer Feature


There's a new C7 Cross installer feature in last night's update. This lets you configure some C7 application options at the time of install. It also lets you see how these options are currently configured, even if you don't intent do change them. The graphic below illustrates what this looks like:

hndc7installgraphic.gif



Note that this throws a configurable location at you asking where you'd like your C7 to open. This will default to the "Default Project Location" currently configured on your C7 options. Since this Cross-installer does not (and will not) install C7 examples this field is more informational than useful. However you can change here the default directory where C7 will open up when you click it's open solution menu.

The other items illustrate how I like to configure my C7 "Application Options". A similar feature is planned for the C7 Webupdater, which will provide you with C7 equivalents of the C6 demo applications and dictionaries. In that case you can determine where you want to install your CHT demo applications. I'll provide a "Tools" menu item that automatically points C7 to open up on those demo apps when you want to "play" with them, regardless of where you decide to install them.

Thats all for now.

Cheers...
Gus Creces
The Clarion Handy Tools Page
www.cwhandy.com
support@cwhandy.com
January 15, 2009

Thursday, January 8, 2009

CHT Changes Posted C7-4673 Compatible

We've uploaded some template changes (no version change) that work around the C7-4673 problem with #CONTEXT/#ENDCONTEXT. If you intend to test and use C7-4673 you should download this set of changes. Other than the #CONTEXT problem which stopped our template set dead in the water, 4673 seems stable enough.
If you intend to skip over C7-4673 and stay with C7-4608 until the next build (presumably next week) then we suggest you wait with your CHT update until that time.

Since C7-4673 also fixes a problem with #RUN() we removed the workaround in this template set that we'd implemented for the #RUN problem in C7-4608. So our template will not work correctly in earlier versions of C7 prior to this new one. So please make a choice on which C7 it will be and be prepared to live with it until the next C7 build. This kind of thing is likely to continue until C7 stabilizes and we see more consistent behavior.

This upload also fixes some C7 issues with 4 control templates uncovered by Didier. SV fixed a problem last build with #ORIG() that I'd done a C7 workaround for. When that C7 change was put in place I didn't remove my workaround. This upload does remove the workaround and these 4 control templates now work as expected. (Didier, if you wouldn't mind giving these a re-test when you get a chance).

I found an intermittent problem with compiler PRAGMAS disappearing from some C6-to-C7 converted apps. This upload resolves that.

In short, you should be comfortable enough moving to C7-4673 if you're so inclined. No C6 relevant changes in this upload.

I've posted a bunch of app changes that make the following apps C7 ready:
HNDCOLOR.APP, HNDINSTALLMYFILES.APP, HNDIFTP.APP, HNDINSTALLATIONSERVER.APP, HNDINSTBA.APP, HND3.APP, HND5.APP, HND6.APP, HND7.APP, HND8.APP, HND8A.APP, HNDABCHK.APP, HNDBROWSERCLIENT.APP, HNDLNCH.APP, HNDFSYNCH.APP, HNDZINDEX.APP. These apps will convert error free to C7. They also incorporate smaller icons on the menus and the splash screen text area has been set to RTF since C7 has an issue displaying flat text boxes without borders. We're still waiting for SV to fix a C7 bug with equates in the Window title.

There's one new app called HNDABCHKC7.APP which is specific to C7. This app will be used by our C7-only WEBUPDATER to aid with configuration.

Finally, for those of you using windows 64 and intending to install C7 directly onto a WIN64 O/S where you can't use the C6/C7 cross-installer, you may be heartened to hear that we've made good progress on WEBUPDATER (C7) so that, with any luck, it should be available by mid next week. There are other support apps in our suite - like HNDABCHKC7.APP - which need to be adjusted to work in the context of C7; HNDZINDEX.APP and HNDFSYNC.APP for instance. These apps need to be looked at more closely to make sure they behave differently when compiled in the context of C7.

Cheers...

Gus Creces
The Clarion Handy Tools Page
www.cwhandy.com
support@cwhandy.com
January 8, 2009

Wednesday, January 7, 2009

Build 13A1.01 Now Available

We've just posted the first build for 2009 - 13A1.01.

This includes a complete review of the demo apps (renumbered to Version 7.00.00) which I thought was appropriate given where we're headed in 2009.

We've made some improvements in the cross installer (clarion6/3rdparty/hnd/hndc7install.exe) for Clarion 7 including now, silent template registration and automatic suppression of copying CHT dlls to the output directory.

There are some template changes made for the benefit of Clarion 7.

We've begun the task of converting all of the Demo apps to C7 (though they're not yet included) with this upload. Nor is the standalone installer (HND_WEBUPDATER_C7.EXE) available at this point in time. That, with any luck, will be available by the end of next week along with a full complement of converted demo apps.

You can find a templates overview for 13A1.01 here: CHTTTEMPLATES.HTML

You can find a demo apps overview for 13A1.01 here: CHTAPPLICATIONS.HTML


Cheers...

Gus Creces
The Clarion Handy Tools Page
Visit Website