Genero Desktop Client 2.20 migration guide

This section describes differences you may encounter when upgrading to GDC 2.20.

GDC is now compiled with Microsoft™ Windows™ Visual C++ 2008

As with any VC++ application, GDC needs VC Runtime files - basically DLLs Microsoft provides, the equivalent of the glibc on Linux®. The difference with GDC 2.1x is that Microsoft changed the way the runtime must be deployed. With VC 2003, it was possible to provide the DLLs with the application, but this was the cause of the DLL Hell. Now The runtime system must be installed on the system directly, using a VC Redist. Our installer will always embed the corresponding VCRedist and install it if needed. But, if you were used to simply copying the GDC directory, you have to be sure that the correct redist is installed - if not, GDC will not be able to start.

Qt4: GUI changes

GDC is based on Qt, a multi platform C++ library. While 2.1x versions (and earlier) are based on Qt3, GDC 2.20 is the first Qt4 based version. Qt4 was a complete rewriting, and in lots of area Qt4 applications are different from Qt3. We've spent a lot of time to minimize the differences, but GDC 2.20 will not be 100% identical to GDC 2.11:

The behavior of your applications should be unaffected. What may change is the look and feel, and the rendering.

Default font has changed

In Qt3, there was a bug which made Qt3 based applications not use the Microsoft recommended font ; this bug has been fixed in Qt4, and now GDC uses the font recommended by Microsoft. More details: You can still set the default font in the GDC configuration panel, if you don't want GDC to use the correct system font.

Better adaptation to system style

The first version of Qt3 was released in 2001, before Windows XP. The theme mechanism was not designed to make use of all the new features introduced by Vista, OS X 10.4 or KDE4 (and even some items like Folder pages are very poorly supported on XP). Qt4 introduced a much better styling support, relying much more on the system theme - for instance on OSX (and some linux themes) the spacing between items is not fixed and varies depending on the item types. We've adapted these changes to Genero, but for some of them we let Qt apply the system defaults. Windows: Items where the styling mechanism change has an impact:

Image attributes are handled differently

GDC 2.20 slightly modifies the handling of images attributes, as there were some inconsistencies in 2.11. Hre are the major rules :
Examples
-- image size: 80*80 pixels
WIDTH=150 PIXELS, HEIGHT=150 PIXELS, SIZEPOLICY=INITIAL, AUTOSCALE;
When it is first displayed, the container shrinks to 80*80 pixels in order to fit the image size. Its size is then frozen. AUTOSCALE is useful here only if another image of a different size is displayed afterwards in the same container.
-- image size: 80*80 pixels
WIDTH=150 PIXELS, HEIGHT=150 PIXELS, SIZEPOLICY=FIXED, AUTOSCALE;

The container has a fixed size of 150*150. The image is smaller, and AUTOSCALE allows scaling of the image to the whole space. When not using AUTOSCALE, you may also use the image style attribute alignment to define where the picture should be located when the container is bigger.

Report to printer differences

Introducing Qt4 and Scribe, the text layouting system of Qt has been entirely rewritten. This has an impact on how GDC prints Report to printer: margins, spacings, font size have changed. You may have then to change your report fond to get similar result as before. Genero Report Writer is now the recommended way of producing reports.

W3C colors

While Qt3 is using X11 color definition, Qt4 is using W3C definition. Some colors have the same name in both definition, but not the same RGB value. This explains why using the term green for a color changed since 2.20.

Table 1. RGB values: X11 and W3C comparison
name X11 RGB value W3C RGB value
green #00ff00 #008000
grey #bebebe #808080
maroon #b03060 #800000
purple #00ff00 #a020f0

Hitting German ß in an UPSHIFT field results in SS

If you hit the German ß in an UPSHIFT field, it will be immediately replaced by SS. It is something expected: SS is the official capitalization of ß. ß is nearly unique among the letters of the Latin alphabet in that it has no traditional upper case form. This is because it never occurs initially in German text, and traditional German printing never used all-caps.