History of WPTools

<< Click to Display Table of Contents >>

Navigation:  »No topics above this level«

History of WPTools

 

The first version of our product was released on the Delphi market in January 1996. Over the years it has evolved further to become what you now see. First of  all, HTML and WYSIWYG support was added, later we also added the page layout view and fast zooming. At the beginning of 2004 version 4.22 was released - it was the last release of a WPTools version which was still partially based on the RTF Engine created in 1996.

 

During 2003 and 2004 WPCubed GmbH, managed by Julian Ziersch, developed a new word processing engine. This new engine was constructed to provide solutions for the wide variety of demands which were raised over the last 8 years and addresses issues which could not be solved within the framework of the old WPTools engine.

 

In-depth modifications were required to add support for new features, such as nested tables. Plus, it necessary to remove pointer arithmetic completely. Those pointers had been very important in 1996 to enhance performance and because the compiler did not support arrays with variable lengths. Furthermore, some parts of the programming interface had become redundant over the years and last, but not least, CSS and XML development brought new ideas to word processing, which could only be implemented in a complete re-write. Since WPTools 5 the engine works with property inheritance, this means if a deeper element does not define a certain property (think of indents, shading and alike) the property is used which was defined at a higher level.

 

The new RTF-Engine was first used for WPTools 5. WPTools ∞ is build upon the stable WPTools 5 kernel, but introduces several interesting new features and optimizes the support for the new unicode enabled compiler Delphi 2009 and Delphi 2010 and XE.

 

Unlike competing products WPTools implemented separation of data and display from the very beginning. The included style support always made it possible to have a set of styles which is valid for different text at the same time. Further more there always was double page and multi column display.

 

WPTools ∞ is mostly based on the architecture of WPTools 5 and 6, however it was necessary to split up some of the pascal units into smaller units. The formatting logic has now been implemented in special units, which have to be linked in when required and can be left out, if not. This helps to make compiled code smaller and also to implement alternative formatting code. During the development of WPTools ∞ we tried to avoid changes which could break existing logic.

 

But the numbering logic had been updated and there some significant changes were made. Created files in WPT format can look a bit different when loaded into WPTools 7 based applications, in respect to numbering.

 

WPTools 9 updates the widely used TWPToolbar to use glyphs stored as PNG data (with alpha transparency). We also created a completely redesigned set of icons. The icons are provided in different resolutions and can be added to a project with a few mouse clicks. There is a TWPToolButton which also can access those icons.

 

WPTools was now carefully refactored to make it possible to use it as a basis for WPTools FMX  - our project to support the FireMonkey platform.