Archive for June, 2011

From RxLib to JVCL in details. List of lost properties and methods of Rx components.

June 28th, 2011 No comments

The original post in Russian can be found here: Переход с RxLib на JVCL в деталях. Список пропавших в JVCL свойств и методов Rx-компонентов.

My previous post doesn’t provide full information about differences between RxLib and JVCL components. So here is full list of all public and published properties and methods, which are missing in JVCL-components. For every component.

Ante Scriptum: I definitely like new RTTI in Delphi 2010. =)

I created small program that compares properties and methods for each component using Delphi 2010 RTTI.

Program has 3 units:

  • uRxJvComponents.pas – contains list of Rx and Jv classes. Creating this list was the only unpleasant part of this work.
  • uCompareClasses.pas – class that compares Rx and JVCL components.
  • RxJvCompareMainFormU.pas – main form. Can run comparison and show results in text/html format.

You can download: Rx and Jvcl Compare here

Remark: program can be compiled in Delphi 2010+. To compile you need to install both RxLib and JVCL.

Read more…

Tags: , ,

Going from RxLib to Jvcl. What was changed?

June 25th, 2011 Comments off

This is translation of my post in Russian: Переход с RxLib на JVCL. Какие изменения? Original post was published in February 2010.

This article is written for those developers who still uses RxLib library in non-unicode Delphi and is thinking about going to Unicode.

In year 2002 RxLib was officially merged with Jedi Visual Component Library. JVCL has special tool for rapid conversion of all Rx components, functions and units to according JVCL code. See previous post Jvcl Dev Tools: JvclConvert.

Why not to stay with RxLib, and move to JVCL?

  1. JVCL is maintained. Bugs are fixed. You’ll always have JVCL version with newest Delphi IDE support.
  2. RxLib is abandoned. There are few enthusiasts who try to release patches, but they are not coordinated. Most of existing RxLib versions for Delphi 2009, 2010 and XE has its own unique code changes. Most of them have bugs either. Even version that was released in “official” RxLib project on SourceForge has bugs.
  3. JVCL supports Windows themes, RxLib is not.

This post contains list of all Rx components with according Jvcl component, package name, and short list of differences. You can find more detailed list in the next article “From RxLib to JVCL: details”.

Read more…

Tags: , ,

JVCL dev tools

June 24th, 2011 No comments

Do you need to work with the same code in Delphi 7 and Delphi 2010 in parallel? Need to delete some properties from dfm-files? Or maybe you want to replace all Rx-components and functions with JVCL code? Or maybe you want to create dpk-files for all existing Delphi versions with a single click?

If you answered yes at least one time, then you might be interested to know about JVCL developer tools.

JVCL (Jedi Visual Component Library) contains few great utilities, that can help to improve component development process. These utilities located in JVCL\devtools folder. Most of utilities described in file devtools.txt. This post adds few comments to those descriptions.

Most interesting utility is JVCLConvert, which allows easily converting project from RxLib to JVCL. Developers of component libraries may be interested in PackagesGenerator tool, which can create project files (dpr and dpk) and project group files for different Delphi versions.

To compile utilities, file CompileDevTools.bat should be run. However, if you have several Delphi versions installed on your PC, it’s better to compile utilities manually in IDE. You can open all utilities projects via devtools.bpg project group.

I ran into situation, when form processed with DFMCleaner couldn’t be opened in Delphi 6. I think it happened (I didn’t research for actual reasons), because DFMCleaner was compiled using Delphi 2010 compiler when via CompileDevTools.bat. After I recompiled DFMCleaner manually in Delphi 6, it worked fine.


Warning: before using any of tools, make backup copy of your sources. Or better use version control system (f.e. Subversion).

Read more…

Tags: , ,