Monthly Archives: December 2009

Clarion.Net updates

We just released an update for Clarion#, the release features our new  LINQToFileProvider along with a few examples that should get you going pretty well.  We’ll post some documentation on the LINQToFileProvider here within a few days, but the examples are a good way to start getting familiar with this powerful tool.

Also if you haven’t already done so – be sure to look at the Class Diagrammer.  Open any Solution select the Project node in the Solution Explorer and right-click to create the Class Diagram. You can use the Class Diagramer to create new class files or work with existing classes. From the design surface you can add fields,properties,events and methods, and a dbl-click on any element in the class opens the appropriate source file and positions to that element.

The Class Diagramer is a great tool for when you are creating custom user controls, and is especially useful for the Compact Framework. Our CF Form Designer can work with asmmeta files created in MS VS and vice versa MS VS CF form designer now can use CF user controls created in our IDE. We also added a new file template CFDesignerTimeAttributes that allows using our CF custom user controls in the MS.

The basic steps are:

– create a CF User Control project
– design the control in the Form Designer
– add a new item to the project using the Compact Framework Design Time Attribute File  template
– use the Class Diagrammer to add all required information about the control’s properties and events attributes
– compile the project
– Genasm will be launched automatically and an appropriate asmmeta will be generated.

We’ll have a thorough tutorial on all this in the next update for the Clarion# By Example course. In the mean time explore it and see what it can do for your development.

Happy New Year to all in the Clarion community!

Happy New Year!

On behalf of our entire staff, we wish all of you a very Happy, Healthy, and Prosperous New Year (and new Decade).

Our offices will close today at 2 P.M. and
we will be back on Monday, January 4th.

Thank you for your continuing support in 2009, and look for some great things to come in 2010.

Happy Holidays from SoftVelocity!

On behalf of the entire staff here at SoftVelocity, we would like to wish all of you a happy and festive Holiday season. Our offices will be closed at 1 P.M. EST on Christmas Eve (December 24th) as well as Christmas Day (December 25th), and we will be back bright and early on December 28th. Thank You!

7.1 release is out

Email notifications with download links for the 7.1 release are on their way.  Here are the few changes made after the pre-release:

FIX: FILETIME and WIN32_FIND_DATA declared in the WINSOCK.INC file were renamed to avoid duplicate symbol errors; new names are FILETIMEW and WIN32_FIND_DATAW
FIX: Greenbar effect didn’t work in ABC chain
FIX: wrong version of HTML help templates were released
FIX: PE install was missing files required for the Window Previewer
CHANGE: add Rtar_src.tpw to PE installation

The 7.1 add-on drivers (IMDD, DFD, IPDS) have already been released – contact sales if you didn’t get yours yet.

Another topic of interest, some users really like the theming capabilities of the C7 menus, while others want a menu with no owner drawn items. We are looking into the possibility of allowing to switch between owner-drawn menu items and standard menu items, we’ll keep you posted on that. We also already have a handful of additional changes in testing now for the next update to 7.1 and we expect to make the next update available in the beginning of January.

We’ll be working hard to get an update out for Clarion.Net before the Christmas break.  If it doesn’t make it out, then it will be first priority right after the New Year begins.

7.1 Pre-release on its way to you

Small adjustment to the release plan; we targeted the 7.1 release for today 12/18, but yesterday we fixed two bugs in the window library and the QA team requires 2 full days to redo the regression test suite. We realize there are a lot of folks very eager to get their hands on the new release, and rather then make you wait until late Monday or possibly Tuesday, we’re making 7.1 available today to all subscription holders as a “pre-release”. If no regressions are found the pre-release will in fact become the official release.

Another good reason for letting the release out today; all 3rd party blackbox products must be rebuilt with the 7.1 compiler, so this pre-release will give those vendors a headstart on doing so.

In another post I received a comment about this item in the release notes; “CHANGE: FILEs declared within a Procedure are now Private data to that Procedure”, and I promised to provide some further details about that change.

The linker has been improved in 7.1, whereas in every prior release going back to earliest Clarion compiler/linker, reporting of “duplicate symbol” by the linker was dependent upon the order of files in the link list. Meaning that the absence of “duplicate symbol” errors did not necessarily mean that all was OK. When this problem was exposed and fixed, it immediately uncovered two previously “hidden” problems in some of the libsrc code we ship, and exposed some problems in 3rd party products used in our regression testing, and we do expect that a few of you will find your own “hidden” problems when you rebuild with 7.1.

How about an example of the type of problem the 7.1 linker will now catch? OK.  Assume that there are 2 very different procedures but with the exact same public name in 2 different Member modules. Nothing can be done by the linker to allow them both, but the old linker could miss that error dependent upon the order of source files and presence of resource files in the link list. The solution for this type of error is easy, one of the procedures can be renamed, or the PRIVATE attribute could be added to their prototypes. In general, it’s better to use the PRIVATE attribute for all procedures and data objects local to a member module, unless they are exported or used in other modules.  If you do run into an unexpected duplicate symbol error, don’t panic, its easy to fix and will make for a better product.

We’ve taken your suggestions and your feature requests and delivered on them with 7.1; from the ultra-small things like changing toolbar icons, to the big things like the new functionality in the property grid, the new window previewer, automatic App saving and recovery functionality, Windows 7 manifest support in the linker/templates, a new Report Writer, ….. well its a very long list of improvements which I won’t repeat right now.

7.1 is a fantastic update; more reliable, more stable, and more fully-featured then any other Clarion release, and we’re sure you’ll love it.

Release update

The day before Thanksgiving I posted about the upcoming release of 7.1 (and the next update for Clarion.Net), and I wrote that we expected to make it within 2 weeks.  In that same post I mentioned we’d be closed for a long (for us) 4 day break over the holiday.  Well it seems some people took that 2 weeks literally to mean 14 consecutive days, and not the next 2 working weeks. Ahem, even our developers take a day off now and then… 🙂

We are in final closedown for the 7.1 release, we planned to have it ready by this Friday (and that would be within the 2 working weeks!), but there is a chance it’ll have to go out on the following week. Why?  Well there were a few “hot topics” brought to our attention last week and we decided to tackle 2 of them. So if you don’t get a notification of the 7.1 release this Friday, just relax over the weekend and look forward to getting 7.1 early next week. The same applies for the Clarion.Net release!

Here is what we’ve been working on these last 2 weeks, and indeed some of these items did consume a bit of extra time (the first 2 items were the “hot topics” I was referring to)

WORKAROUND: The OS could position some Menu items outside the screen boundary if there were sufficient number of items to cause a multi-column overflow
FEATURE: You can now set if the Copy Referenced Dlls to Output Directory defaults to On or Off via the Tools/Options/Clarion/General tab
FEATURE: The PRIVATE attribute is now allowed for TYPE declarations

CHANGE:  Better error message when an included project cannot be found during a make
CHANGE:  When you associate the C7 IDE with .app files, the .app files now get an appropriate icon displayed in Windows
CHANGE: FILEs declared within a Procedure are now Private data to that Procedure
CHANGE: Menu style now takes into account dimensions of particular item defined in MENU/MENUBAR declaration or set at run time (in latter case PROP:NoWidth and/or PROP:NoHeight must be set to FALSE)
CHANGE: Post a warning if window/report parser changed some control definition because a variable used as a attribute’s parameter does not exist anymore
CHANGE: Warning if PRIVATE and PROTECTED are used incorrectly
CHANGE: private queue types in abfile.clw are now marked private to take advantage of the updated clw compiler and reduce the number of duplicate symbols possible
CHANGE: renamed internal class used in the Query control QEIPManager to QueryQEIPManager because it was duplicated with the public method with the same name.

FIX:  %ApplicationExternalLibrary was returning the wrong value if you edited the project properties of an app, but did not set the model (ie left it at the default value of dll)
FIX:  An exception would be thrown by the data pad if you copied a field and then tried to paste it into an empty local data list
FIX:  Not all compilers were registered if you created a new C6 version
FIX:  The Data pad could throw an exception if you tried to add a Queue to local data
FIX: Aboop.tpw: Incorrect declaration of a variable for the return value was generated if the procedure return type in the prototype was ? or *?
FIX: Avoid auto-#RELEASE on emitting unconditional source lines
FIX: Setting of PROP:NoHeight and PROP:NoWidth properties for menu items worked not as documented.
FIX: Source Editor – Search/Replace would fail for various conditions
FIX: The ISAM file imports would not work if you had a file with a . in the name.

PTSS 32051: Suppress Windows internal repainting of the button upon changing its text
PTSS 33701: Clarioncl would some times fail to register templates if multiple /tr switches where supplied on the command line
PTSS 33804: Lookup table must be updated first before record validation
PTSS 34190: GROUP and OPTION controls cannot be selected themselves but they provide defaults for selected text and background colors to nested controls
PTSS 34226: Current build configuration was not being passed so the %ApplicationDebug symbol was not setup correctly
PTSS 34563: Show warning if WINDOW with TOOLBOX/DOCK/DOCKED attributes has the MDI attribute too
PTSS 34600: Changing of variable name in the Data Pad was not reflected in changes to attributes of WINDOW/REPORT controls using that variable as a parameter
PTSS 34605: The window previewer would not work with ENTRY controls that had @P or @K pictures
PTSS 34631: Designers might not be available in plain embed editor
PTSS 34643: Implementation of drawing of themed borders for RTF controls