So, what is so peculiar about a new DHTMLX release, that after a few years of 1.x era we offer the whole new package and standalone components all versioned 2.x?
First and foremost, it's about the approach towards our products line involvement in developing web applications. An intermedium has appeared in the line - dhtmlxLayout - which is aimed at:
One more reason for 2.x versioning - the line of DHTMLX components became all-sufficient due to the delivery of Text editor, Accordion and AJAX queries Library. This means that the whole interface and browser-side work of the application can be built merely by using DHTMLX components. Why is that so good? Components' work logic and API creation approach are similar, and that simplifies its understanding and speeds up the development process.
Components' mutual integration (for example, drag-n-drop between Tree, Grid and TreeGrid, or dhtmlxWindows integration into the Layout, Tabbar and Accordion), in its turn, provides more opportunities for user-friendly interface creation. On top of that is skins inheritance framework, which means that a skin set for the Layout works for attached components as well.
Using DHTMLX 2.x you can minimize time spent on routine work creating user interfaces, which makes it possible to center developers' attention on realization of application's main functionality.
Having refused to use complex approach in working with DHTMLX components, you can go on using them successfully inside your own products.
All components in the new release are 100% compatible with their 1.x versions, except of dhtmlxMenu and dhtmlxToolbar. We have changed API of these two components to make them more convenient for use.
Server side connectors (dhtmlxConnector for dhtmlxGrid/TreeGrid, dhtmlxTree, dhtmlxCombo) were introduced in version 2.1. And it was another step in direction of simplicity of use. You do not need to worry about data formats any more. dhtmlxConnector will handle data connection between server-side database and client-side DHTMLX components, seamlessly loading the content. It also takes care about update/insert/delete operations and can organize server side functionality to support special modes for components working with large amounts of data (Dynamical loading, Smart Rendering, Paging) as well as Server side sorting and filtering.