Paradox for Windows is distinctly different from Paradox for DOS, and was produced by a different team of programmers. Paradox for Windows applications are programmed in a different programming language called ObjectPAL. Although key features of the DOS product, the QBE and the database engine, were ports keeping the DOS code, there was a major break in compatibility from PAL to ObjectPAL and in the shift to a GUI design metaphor for Forms and Reports. The ObjectPAL changes were controversial but forced since PAL was based on keystroke recording actions that had no equivalent in Windows. An object-based language based on ideas from Hypercard was used in place of keystroke recording. The Forms and Reports designers used device-independent scaling including ability to work in zoomed mode for detailed layout. The mouse right-click was used for access to Forms and Reports properties, inspired by the Xerox Alto and Smalltalk, in a way now almost universal to Windows programs. The ObjectPAL was (like Hypercard) associated with the visual objects - also revealed by right click. Property inspection and layout tools could be "pinned up" to stay on screen, an idea borrowed from the NeXT and now fairly widely adopted in Windows.