Autumn (or spring, if you're in the Southern Hemisphere) brings changes in weather and landscape, and Icetips, too, has some changes this season.

MONTHLY & AUTOMATIC BILLING OPTIONS

First, weve made it easier to pay for Icetips software subscriptions by adding automatic billing options and monthly payment options.

To buy a new Gold subscription, you can now make a partial payment of $149 up front, then pay the balance in 11 monthly installments of $15.  Or, you can pay for the whole thing up front, as always.

To renew a Gold subscription and have continuous access to all Icetips Software products, updates and support you can opt for a small, ongoing payment of only $15 a month.  Or, if you would rather, you can still pay your renewal fee once a year.  Now, though, you have the option of having your annual billing paid automatically (and get a discount!).

Solo and Silver subscriptions also have automatic annual payment options and discounts (but no monthly payment options).

For more information about our new payment options, please see our page on recurring/automatic subscriptions.

PRICE CHANGES

Icetips introduced the Gold Subscription in 2007 and we have held prices constant since then.  Unfortunately, costs have gone up – but we're still keeping our prices as low as we can.

If you opt for automatic renewals, prices will be the same as always.  For those who choose to renew their subscriptions manually, prices have increased a small amount.

Some people let a little time go by before renewing their subscriptions.  For those who renew their subscriptions over 30 days after the subscription has expired, renewal costs will be slightly higher.

For more information about our new price options, please see our subscription page.

ARNOR FOR HIRE

Whether you need just a little extra help, or a whole lot of lot of help, with a new or ongoing software or SQL project, Arnor is available for contract work.  $80/hour, 1 hour minimum, references available upon request.  For more information about hiring Arnor, please see the Icetips Solutions website.

HAPPY 20th BIRTHDAY, ICETIPS.COM

Twenty years ago this month, Arnor Baldvinsson and Rick Beckemeyer began working together to make a website for Clarion developers.  In October of 1995, Icetips.com was born.  In the early days, Rick took care of the URL and hosting, while Arnor took care of the website design and content.  In 2001, Arnor took over the administrative side, too.  Shortly after that, Arnor's business partner and wife, Sue Pichotta, began helping with Icetips' website design and some of the content.  There have been a lot of changes over the years, but through it all, Arnor and Sue have always been happy to be part of the Clarion community.  We're looking forward to the years ahead.  Happy Birthday, Icetips.com!

If you run into any problems with our new subscription system, please let me know!  This required a lot of changes and while I have tried to make sure everything is working 100% I may have missed something!  So please let me know if you see anything that doesn't look right or if prices are not showing up correctly!

Arnor Baldvinsson

Yesterday I uploaded some changes to the Icetips website that I hope will help make the site more accessible.  I'm working on a redesign that will be fully responsive, but that's going to take some time to complete.

We have changed the basic fonts so text is now more open and there is more white-space on the pages.  Colors have changed as well and the site as a whole is a bit brighter.  All the product pages now have tabs where there is information about features, compatibility, downloads and screenshots.

I have also added a "Version History" tab to 5 products, Utilities, Previewer, Outlookbar, Powertoolbar and Taskpanel.  The version history for the rest of the products will be up there soon and I will keep this updated as new releases are made.

The login page also has tabs with the latest downloads, blog entries and your profile, so it's easy to get to it all on one page.

For those of you in the US, I wish you all a happy 4th of July tomorrow:)

Arnor Baldvinsson

I have released two new product builds this morning.  Icetips Utilities build 1.2.2433 and Icetips Previewer build 2.7.392.

The Previewer build fixes a problem with the Page of Pages template which I found out was not working with the Legacy/Clarion template chain.  This build also includes the fix to scrolling under Clarion 10.

There are two new features in the Utilities that will come in very handy when dealing with importing comma separated files.

First is a new property, pDelimterStartsLine, to the SplitString method.  It allows it to split strings where the delimiter is the beginning of a line, not the end of it.  Normally SplitString splits strings based on CR+LF (<13,10>) characters at the end of the line.  Recently a customer needed to split a string that had no CR+LF pairs, but each record started with a specific string.  By implementing this change he was able to split up his file and read the data correctly.

The second new thing is the ParseCSVLine method.  It takes a line of comma separated CSV data and splits it into fields, stored in the CSVFields property of the Icetips String Class.  This method can take regular old CSV data and parse it into easily accessible field data. It handles commas in strings without problems so there is no worry about it getting out of sync if the data is otherwise properly formatted.  I have made it flexible so that you can specify if strings are quoted or not (if they are, the code will look for and ignore commas inside the string) as well as specify the delimiter to use (up to 4 characters).  The pStringsAreQuotes parameter defaults to TRUE and the pDelimiter defaults to a comma (,)  Check out the demo code in the help:

ITS  ITStringClass
S    STRING(255)
I    LONG 
F    LONG
X    LONG 
  CODE
  ITS.FileToLines('testcsv.csv')
  LOOP I = 1 TO Records(ITS.Lines)
    GET(ITS.Lines,I)
    F = ITS.ParseCSVLine(ITS.Lines.OL)
    ITS.ODS('Line: ' & ITS.Lines.OL)
    IF F
      ITS.ODS('  ' & Format(F,@n_3) & ' Fields from ' & ITS.Lines.OL)
      LOOP X = 1 TO F
        GET(ITS.CSVFields,X)
        ITS.ODS('    ' & Format(X,@n02) & ' ' & ITS.CSVFields.OL)
      END
    END
  END
ParseCSVLine example code (image)
ParseCSVLine example code (image)

There are also some fixes in this Utilities release:

March 10, 2015 The template could cause classes to export an older version which could cause "xxx is unresolved for export" errors when compiling exporting dlls.  Fixed.
May 24, 2015 Fixed a potential memory leak in the AddIntoParenthesis method.
June 27, 2015 Image Class ResizeImage method did not work correctly on reports.  Fixed.
June 27, 2015 Image Class ResizeImage did not correctly size images when it was called multiple times for the same image control.  Fixed.

Arnor Baldvinsson

I have been working on Build Automator in Clarion 10 this week, along with other things.  Yesterday I discovered that there was something very odd going on with the resizing of the windows.  When comparing the Search and Replace window between the Clarion 6.3 version and the Clarion 10 version, it was like the listbox wasn't stretching like it should, as seen in the screenshot below.

06.17.2015-14.59
Clarion 6.3 window on the left, Clarion 10 window on the right.

After quite a bit of snooping around and posting on the newsgroup, where Bob Campbell pointed out the listbox size issue, I came to the conclusion that there was a problem with the WindowResizeClass.SetParentDefault method in ABRESIZE.CLW.  So to test it, I copied the one from Clarion 6.3 and omitted the original and lo and behold the resizing worked perfectly again!

After sleeping on it, I realized that the code change involved a new method of finding the parent control of a control, which doesn't have a PROP:Parent parent - kind of an orphan;)

In the class method the code figures out what type of parent controls there can be:

 CASE ThisControl{PROP:Type} + 0
 OF CREATE:Group
 OROF CREATE:Option
 OROF CREATE:Tab
 OROF CREATE:Sheet

This is missing both CREATE:Panel and CREATE:Region!  I'm using Panels all over the place on the windows in Build Automator and came to the conclusion that this is where the problem was.  So I added:

 OROF CREATE:Panel
 OROF CREATE:Region

to the list, re-compiled after omitting the Clarion 6.3 code, and it worked perfectly again:) The CASE statement is around line 580 in the ABRESIZE.CLW file if you want to do this fix to your class file.  I have reported this to Softvelocity and hope they will fix this in the next release.

Arnor Baldvinsson

I have released Icetips Previewer build 2.7.391 with a fix to the problem with mouse wheel scrolling in the previewer window under Windows 10 that I blogged about yesterday. The fix seems to take completely care of the problem and have no ill effect on previous versions of Windows that I can find.  If you run into any problems with it or it seems to behave differently, then please let me know!

Arnor Baldvinsson

In Clarion 9.1 and 10 you can change the fonts for the IDE. This makes it easy to customize the IDE to look the way you want it to.  Personally I change the environment fonts to Segoe UI 9pt for dialogs and listboxes and Segoe UI 17pt for the Start page.

Clarion10FontSettings

I use good, old, boring Courier New 10pt for the editor but you might want to try Consolas, Lucinda Console or some other fonts.  Somehow I have ended up with one of Adobe's font on my laptop, "Source Code Pro" which comes in several different versions (black, semi-bold, light, extra-light)  The normal one looks pretty good, but I haven't really used it.  I have also used Droid Sans Mono which is a Google font.  If you want to find fonts to use in your editor, something other than Courier New, then go to fontsquirrel and have a look around.

Note that you must restart the IDE for the font changes to show.  This applies to all the font settings, also the Text Editor settings, which is a bit of a bother as you have to restart the IDE just to see how the fonts look like.  My suggestion is to load some code into WordPad and use it to pick a font that looks good to you and start from there.  WordPad has a nice feature where it will automatically reformat the text when you hover over a font in the font selection drop-down so it's easy to see how the font will affect the code.  See the video below for a demonstration.

Hope this will help you set up your environment to your liking:)

Update:  Here is an article, while from 2010, contains a nice collection of monospaced programming fonts:
http://www.codeproject.com/Articles/30040/Font-Survey-of-the-Best-Monospaced-Programming

Arnor Baldvinsson

Update: This has been fixed, see this post.

It appears that something in Windows 10 breaks the mouse wheel scrolling in Icetips Previewer!  In the latest Windows 10 Technical Preview (10130) and at least some previous ones if not all of them, it just doesn't work at all. 

computer-mouses

I haven't been able to find any references to a problem with scrolling in Windows 10 so this must be a very isolated case.  Guess it's time to take a look at that sub-classing code I added in back in March 2006 - more than 9 years ago!  My gosh, how time flies! 😎   This does not seem to be Clarion version specific as this is happening in applications compiled in Clarion 6.3 as well as Clarion 10 and with new and old builds of Icetips Previewer.

Hope you all have a good weekend - I'll be spending it with debug view on my Windows 10 virtual machine!

Arnor Baldvinsson

It was brought to my attention today by Lee White that the manifest for Clarion 10 is set to "asInvoker" This means that the IDE is NOT elevated when it runs. This can cause problems.

2015-06-10_1239

For example if you are used to seeing the  "Process Running" message if you accidentally left the program running that you are compiling, you will not see that in Clarion 10.  It will simply give you an "Access denied" error at the end of the linking process.

To fix this you need to make a small edit in the Clarion.exe.manifest file in your Clarion\Bin folder.  If you load it into an editor you will see a line that looks like this:

<requestedExecutionLevel level="asInvoker" uiAccess="false"/>

Change this line to:

<requestedExecutionLevel level="requireAdministrator" uiAccess="false"/>

save it and you are done.  Now the IDE will open elevated and the "Process Running" warning will once again work as it should.  Note that to get the warning you must turn off the "Kill running process before build" or Clarion will simply kill it without prompting.

2015-06-10_1244

 

I have been running the Clarion IDE as elevated since Clarion 7 came out and never had issues with it.  But apparently some people have had problems so Softvelocity decided to change the manifest in Clarion 10.

Arnor Baldvinsson

One of the very cool things in the new IDE is the support for XML help. This is the information entered into .INC files using triple exclamation mark (!!!) comments. This makes a quick help accessible right in the IDE.  I have been working on documenting the ITUtilities.inc file and I'm about half way through it.  It doesn't replace the documentation but once I have gone through and documented the ITUtilities.inc it will be much easier for me to dig through getting the full documentation done.

Below is an example from the ITImageClass in the Utilities:

!!!<summary>
!!! Sets the position of the image withing a boundary control.
!!!</summary>
!!!<param name='pImageFEQ'>The control with the image</param>
!!!<param name='pRelativeFEQ'>The relative boundary control</param>
!!!<param name='pX'>Adjust horizontal placement</param>
!!!<param name='pY'>Adjust vertical placement</param>
!!!<param name='pJust'>Justification of the image inside 
!!! the boundary control</param>
!!! <para></para>
!!! <para>The horzontal justification can be one of:</para>
!!! <para> IT_IMAGE_JUST:LEFT</para>
!!! <para> IT_IMAGE_JUST:CENTER</para>
!!! <para> IT_IMAGE_JUST:RIGHT</para>
!!! <para></para>
!!! <para>The vertical justification can be one of:</para>
!!! <para> IT_IMAGE_JUST:TOP</para>
!!! <para> IT_IMAGE_JUST:MIDDLE</para>
!!! <para> IT_IMAGE_JUST:BOTTOM</para>

In the IDE, when you are entering the name of the method in the editor it will show you a tooltip with all the information above:

2015-06-06_12-32-46

Click on the image to load a full size screenshot.

Arnor Baldvinsson