menu
  Home  ==>  papers  ==>  vcl  ==>  devexpress_tcx_equivalents_of_tdx   

DevExpress tCx equivalents of tDx components - Felix John COLIBRI.

  • abstract : simple tDx to tCx equivalent list to help migrating old tDx applications to the current tCx version
  • key words : DevExpress, tDx, tCx, Express Quantum Grid
  • software used : Windows XP Home, Delphi 6
  • hardware used : Pentium 2.800Mhz, 512 M memory, 140 G hard disc
  • scope : Delphi 4, 5, 6, 7 to 2006, Delphi 2005, to 2010, Delphi Xe, Delphi Seatle, Delphi Berlin
  • level : Delphi developer
  • plan :




1 - Converting from tDx to tCx

We are in the process of migrating delphi 4, delphi 5, delphi 6 and Delphi 7 applications to Delphi Xe and superior versions.

The tDx DevExpress components have NOT been migrated to Unicode / 64 bits. Instead, DevExpress offers a whole new bunch of tCx components.

Therefore, in order to migrate a tDx application to post Delphi 2010 version, you have to tackle somehow the migration of the tDx components.

One solution is to convert tDx to tCx.

A first step is to compare the available components, and this is the topic of this article.




2 - The tDx to tCx equivalent list

2.1 - The DevExpress version used

We had to work on a DevExpress version containing BOTH tDx and tCx components. This version which was used for Delphi 7 contained:

  cxLibraryMajorVersion = '6';

In addition we only analyzed the packages up to the grids (the core, the editors, the grids). We did not include the more exotic components like those in ExpressSpellChecker.dpk, ExpressInspector etc.



2.2 - The methodology

In order to make our comparison
  • we simply extracted the components from the RegisterComponents statements.
  • The resulting list was first separated into tDx and tCx lists.
  • We then created 3 categories
    • edits and controls (tDxEdit, tCxButton etc)
    • dbControls (tDxDbEdit etc)
    • other more complex controls (grids, treelists, listviews) and components (localiser, shell components etc)
    Our classification is somewhat arbitrary, but you can reorganize the result if necessary.
  • Each of those lists were sorted.
  • After that we created a diff of both lists


2.3 - The equivalents list

 
          Simple controls 
              TdxBlobEdit                     TcxBlobEdit 
                                                TcxButton 
              TdxButtonEdit                   TcxButtonEdit 
              TdxCalcEdit                     TcxCalcEdit 
                TdxCalcDisplay 
                TdxCalculator 
                TdxCheckEdit 
                TdxCheckEditStyleController 
                                                TcxCheckBox 
                                                TcxCheckComboBox 
                                                TcxCheckGroup 
                                                TcxCheckListBox 
                                                TcxColorComboBox 
                                                TcxComboBox 
              TdxCurrencyEdit                 TcxCurrencyEdit 
              TdxDateEdit                     TcxDateEdit 
                TdxEdit                         -TcxTextEdit- 
                                                TcxDefaultEditStyleController 
                                                TcxEditRepository 
                                              TcxExtLookupComboBox 
                                              TcxFilterControl 
              TdxEditStyleController          TcxEditStyleController 
                TdxGraphicEdit 
                                              TcxFontNameComboBox 
                                                TcxGroupBox 
              TdxHyperLinkEdit                TcxHyperLinkEdit 
              TdxImageEdit                    -TcxImage- 
                                                TcxImageComboBox 
                                                TcxImageCollection 
                                                TcxImageList 
                                                TcxLabel 
                                                TcxListBox 
              TdxLookupEdit                   -TcxLookupComboBox- 
              TdxMaskEdit                     TcxMaskEdit 
              TdxMemo                         TcxMemo 
                                                TcxMCListBox 
              TdxMRUEdit                      TcxMRUEdit 
                TdxPickEdit 
                                                TcxNavigator 
              TdxPopupEdit                    TcxPopupEdit 
                                                TcxProgressBar 
                                                TcxRadioButton 
                                                TcxRadioGroup 
                                                TcxRichEdit 
                                                TcxSpinButton 
              TdxSpinEdit                     TcxSpinEdit 
                                                TcxSplitter 
              TdxTimeEdit                     TcxTimeEdit 
                                                TcxTrackBar 
            
            Db controls 
              TdxDBBlobEdit                   TcxDBBlobEdit 
              TdxDBButtonEdit                 TcxDBButtonEdit 
              TdxDBCalcEdit                   TcxDBCalcEdit 
                TdxDBCheckEdit 
                                                TcxDBCheckBox 
                                                TcxDBCheckComboBox 
                                                TcxDBCheckGroup 
                                                TcxDBCheckListBox 
                                                TcxDBColorComboBox 
                                                TcxDBComboBox 
              TdxDBCurrencyEdit               TcxDBCurrencyEdit 
              TdxDBDateEdit                   TcxDBDateEdit 
                TdxDBEdit 
              TdxDBExtLookupEdit              TcxDBExtLookupComboBox 
                TdxDBGraphicEdit 
                                                TcxDBFilterControl 
                                                TcxDBFontNameComboBox 
              TdxDBHyperLinkEdit              TcxDBHyperLinkEdit 
              TdxDBImageEdit                  -TcxDBImage- 
                TdxDBLookupEdit 
                                                TcxDBImageComboBox 
                                                TcxDBLabel 
                                                TcxDBListBox 
                                                TcxDBLookupComboBox 
              TdxDBMaskEdit                   TcxDBMaskEdit 
              TdxDBMemo                       TcxDBMemo 
              TdxDBMRUEdit                    TcxDBMRUEdit 
                TdxDBPickEdit 
                                                TcxDBNavigator 
              TdxDBPopupEdit                  TcxDBPopupEdit 
                                                TcxDBProgressBar 
                                                TcxDBRadioGroup 
                                                TcxDBRichEdit 
                                                TcxDBShellComboBox 
              TdxDBSpinEdit                   TcxDBSpinEdit 
                                                TcxDBTextEdit 
              TdxDBTimeEdit                   TcxDBTimeEdit 
                                               TcxDBTrackBar 
                                              TcxDBTreeList 
            
          Other controls and components 
              TdxDBGrid                       -TcxGrid- 
                TdxDBGridLayoutList 
                                                TcxGridPopupMenu 
                                                TcxGridViewRepository 
                                                TcxHintStyleController 
                                                TcxListView 
                                                TcxLocalizer 
                                                TcxLookAndFeelController 
                                                TcxPageControl 
                                                TcxPropertiesStore 
                                                TcxShellBrowserDialog 
                                                TcxShellComboBox 
                                                TcxShellListView 
                                                TcxShellTreeView 
                                                TcxStyleRepository 
                                                TcxTabControl 
                TdxDBTreeList 
              TdxTreeList                     TcxTreeList 
                                                TcxTreeView 
                                                TcxVirtualTreeList 
          



2.4 - Remarks

Please note:
  • our comparison is only based on names. We have NOT checked whether the properties / methods / events are the same. For the tDxDbGrid 178 properties among 526 have no direct equivalent. In addition the behaviour of components with the same name has not been analyzed
  • for some components, we assumed that there was some likeliness, even if the names do not totally match:
    • tDxDbGrid and tCxGrid
  • in other cases, the names are quite different but the substitution looks likely
    • tDxEdit and tCxTextEdit
    • TdxLookupEdit and TcxLookupComboBox
  • our tDx list is not complete. We found a post asking for equivalents for
    • TdxfBackGround
    which we did not locate in our sources (not in any of the .PAS we had at hand). The post was dated 2015, but our version of DevX is likely to be from 2002.
  • this article also does not present
    • the components which are not in the palette (the InPlaceEdits, for instance)
    • the architectural differences between the two component sets.


In conclusion, we simply presented a "name based equivalence list"



2.5 - How to get help

One possibility is to post a question in the DevExpress forum.




3 - References

To perform the migration, we use an autoamtic transformation tool.

We also offer migration services, training and support




4 - The author

Felix John COLIBRI works at the Pascal Institute. Starting with Pascal in 1979, he then became involved with Object Oriented Programming, Delphi, Sql, Tcp/Ip, Html, UML. Currently, he is mainly active in the area of custom software development (new projects, maintenance, audits, BDE migration, Delphi Xe_n migrations, refactoring), Delphi Consulting and Delph training. His web site features tutorials, technical papers about programming with full downloadable source code, and the description and calendar of forthcoming Delphi, FireBird, Tcp/IP, Web Services, OOP  /  UML, Design Patterns, Unit Testing training sessions.
Created: aug-16. Last updated: dec-2019 - 103 articles, 239 .ZIP sources, 1292 figures
Contact : Felix COLIBRI - Phone: (33)1.42.83.69.36 / 06.87.88.23.91 - email:fcolibri@felix-colibri.com
Copyright © Felix J. Colibri   http://www.felix-colibri.com 2004 - 2019. All rigths reserved
Back:    Home  Papers  Training  Delphi developments  Links  Download
the Pascal Institute

Felix J COLIBRI

+ Home
  + articles_with_sources
    + database
    + web_internet_sockets
    + rest_services
    + oop_components
    + uml_design_patterns
    + debug_and_test
    + graphic
    + controls
    + colibri_utilities
    + colibri_helpers
    + delphi
    + IDE
    + firemonkey
    + compilers
    + vcl
      – devx_tdx_to_tcx
      – devx_tdx_to_tcx_migration
      – delphi_sorted_tlistview
  + delphi_training
  + delphi_developments
  + sweet_home
  – download_zip_sources
  + links
Contacts
Site Map
– search :

RSS feed  
Blog