Object Windows Library

Last updated
Object Windows Library
Original author(s) Borland Software Corporation
Initial release1991;33 years ago (1991)
Stable release
OWLNext 7.0.12 / December 25, 2023;19 days ago (2023-12-25)
Repository
Written in C++
Operating system Windows, OS/2
Type Software framework
License Proprietary with open-source patches
Website sourceforge.net/p/owlnext/wiki/ OOjs UI icon edit-ltr-progressive.svg

The Object Windows Library (OWL) is a C++ object-oriented application framework designed to simplify desktop application development for Windows and (some releases) OS/2.

Contents

OWL was introduced by Borland in 1991 and eventually deprecated in 1997 in favor of their Visual Component Library (VCL). Its primary competitor was the Microsoft Foundation Class Library (MFC). OWLNext, [1] an open-source project driven by the OWL user community, has continued the maintenance of OWL, ensuring that the library and applications that use it work with the latest version of Windows and modern C++ compilers.

History

In the early 1990s, Borland dominated the C++ market. In 1991, Borland introduced Borland C++ 3.0 which included OWL 1.0. At that time, C++ was just beginning to replace C for development of commercial software, driven by the rising of the Windows platform and the rapid adoption of object-oriented design. During this period, OWL was a popular choice for Windows application development.

In 1992, Microsoft introduced MFC as part of Microsoft C++ 7.0. As a similar C++ application framework for Windows, MFC immediately became OWL's primary competitor in the C++ application development market.

OWL 1.0 depended on Dynamic Dispatch Virtual Tables (DDVT), a proprietary extension to C++ that allowed the programmer to bind Windows messages (events) to functions (event handlers) in a simple manner and with little run-time overhead. MFC, on the other hand, used a solution that did not require a language extension.

In 1993, Borland launched Borland C++ 4.0 which included OWL 2.0. In this version of OWL, the proprietary DDVT extension was replaced by response tables, a macro-based solution compatible with standard C++ and similar to MFC in use. A conversion tool (OWLCVT) was included to migrate code from OWL 1.0 to OWL 2.0.

In April 1993, Borland and Novell signed an agreement to port OWL to Novell AppWare Foundation. AppWare Foundation was an API designed by Novell to be cross-platform, allowing the deployment of applications on Mac, Windows and Unix clients and with several network services. The main tools for developing in AppWare were OWL and AppBuilder. [2] However, in late 1994, Novell CEO Raymond Noorda resigned. Novell expansion plans were reconsidered, AppWare development was stopped and so was OWL for AppWare. In 1995 a group of original team members bought AppBuilder. In the same year, Software UNO offered a commercial port for OWL 2.0 to several platforms: AIX 3.2.5, DEC OSF/1 AXP, HP-UX 9.03, Linux 1.2, Solaris 2.x, Sun OS 4.1.x, and SVR4 for x86. It was called WM_MOTIF. [3]

In 1995, Borland C++ 4.5 with OWL 2.5 was released. As it was released before Windows 95, Borland promised a free upgrade for any incompatibility present in the final Windows version. In August 1995, Microsoft launched Windows 95 and Visual Studio 4.0. By then, Visual Studio had already eclipsed Borland C++ in shipments, and it was clear that OWL was losing ground to MFC.

In 1996, Borland released Borland C++ 5 for Windows. This version included OWL 5, a major revamp of the library. While OWL 5 received a minor update with the release of Borland C++ 5.02 a little later, version 5 would end up as the final version of OWL by Borland.

In 1997, Borland released C++Builder and deprecated Borland C++. OWL was included on the Companion CD that shipped with C++Builder, but Borland ended maintenance and further development of the library.

In late 1999, Borland stopped selling Borland C++ and OWL.

OWLNext

Shortly after Borland ended the development of OWL, maintenance was taken over by a group of users led by Yura Bidus. This effort evolved into the OWLNext [1] open-source project currently hosted at the SourceForge site. OWLNext is a modern update and extension of OWL with support for the latest Windows versions and modern C++ compilers from Microsoft and Embarcadero.

Shipped releases

Product versionOWL version
Borland C/C++ 3.0OWL 1.0
Borland C/C++ 2.0 for OS/2OWL 2.0
Borland C++ 4.0xOWL 2.0
Borland C++ 4.5xOWL 2.5
Borland C++ 5.0xOWL 5.0
Borland C++Builder 4.0OWL 5.0
Borland C++Builder 5.0OWL 5.0
CodeGear C++Builder 2007OWLNext 6.20
Embarcadero C++Builder XEOWLNext 6.30
Embarcadero C++Builder XE2OWLNext 6.32

Later versions of OWLNext have been released through SourceForge.

Related Research Articles

<span class="mw-page-title-main">Windows API</span> Microsofts core set of application programming interfaces on Windows

The Windows API, informally WinAPI, is Microsoft's core set of application programming interfaces (APIs) available in the Microsoft Windows operating systems. The name Windows API collectively refers to several different platform implementations that are often referred to by their own names. Almost all Windows programs interact with the Windows API. On the Windows NT line of operating systems, a small number use the Native API.

Quattro Pro is a spreadsheet program developed by Borland and now sold by Corel, most often as part of Corel's WordPerfect Office suite.

<span class="mw-page-title-main">Novell</span> 1980–2014 American multinational software and services company

Novell, Inc. was an American software and services company headquartered in Provo, Utah, that existed from 1980 until 2014. Its most significant product was the multi-platform network operating system known as Novell NetWare.

C++Builder is a rapid application development (RAD) environment for developing software in the C++ programming language. Originally developed by Borland, as of 2009 it is owned by Embarcadero Technologies, a subsidiary of Idera. C++Builder can compile apps for Windows, iOS, macOS, and Android. It includes tools that allow drag-and-drop visual development, making programming easier by incorporating a WYSIWYG graphical user interface builder.

The Visual Component Library (VCL) is a visual component-based object-oriented framework for developing the user interface of Microsoft Windows applications. It is written in Object Pascal.

<span class="mw-page-title-main">Microsoft Foundation Class Library</span> Windows OS object-oriented library

Microsoft Foundation Class Library (MFC) is a C++ object-oriented library for developing desktop applications for Windows.

<span class="mw-page-title-main">Delphi (software)</span> General-purpose programming language and a software product

Delphi is a general-purpose programming language and a software product that uses the Delphi dialect of the Object Pascal programming language and provides an integrated development environment (IDE) for rapid application development of desktop, mobile, web, and console software, currently developed and maintained by Embarcadero Technologies.

Object Pascal is an extension to the programming language Pascal that provides object-oriented programming (OOP) features such as classes and methods.

DataFlex is an object-oriented high-level programming language and a fourth generation visual tool for developing Windows, web and mobile software applications on one framework-based platform. It was introduced and developed by Data Access Corporation beginning in 1982.

Borland Kylix is a compiler and integrated development environment (IDE) formerly sold by Borland, but later discontinued. It is a Linux software development environment based on Borland Delphi and Borland C++ Builder, which runs under Microsoft Windows. Continuing Delphi's classical Greek theme, Kylix is the name for an ancient Greek drinking cup. The closest supported equivalent to Kylix is the free Lazarus IDE package, designed to be code-compatible with Delphi. As of 2010 the project has been resurrected in the form of Delphi cross compiler for Mac and Linux, as shown in the Embarcadero's Delphi and C++ Builder roadmap. As of September 2011 with Kylix discontinued the framework for cross-platform development by Embarcadero is FireMonkey.

AppWare was a rapid application development system for Microsoft Windows and the classic Mac OS based on a simple graphical programming language. Applications were constructed by connecting together icons representing objects in the program and their commands. The resulting logic could be compiled on either platform and typically only required minor changes to the GUI layout to complete the port.

Borland Database Engine (BDE) is the Windows-based core database engine and connectivity software behind Borland Delphi, C++Builder, IntraBuilder, Paradox for Windows, and Visual dBASE for Windows.

<span class="mw-page-title-main">Turbo C++</span> Compiler and IDE from Borland

Turbo C++ is a discontinued C++ compiler and integrated development environment originally from Borland. It was designed as a home and hobbyist counterpart for Borland C++. As the developer focused more on professional programming tools, later Turbo C++ products were made as scaled down versions of its professional compilers.

In Microsoft Windows applications programming, OLE Automation is an inter-process communication mechanism created by Microsoft. It is based on a subset of Component Object Model (COM) that was intended for use by scripting languages – originally Visual Basic – but now is used by several languages on Windows. All automation objects are required to implement the IDispatch interface. It provides an infrastructure whereby applications called automation controllers can access and manipulate shared automation objects that are exported by other applications. It supersedes Dynamic Data Exchange (DDE), an older mechanism for applications to control one another. As with DDE, in OLE Automation the automation controller is the "client" and the application exporting the automation objects is the "server".

Borland C++ was a C and C++ IDE released by Borland for MS-DOS and Microsoft Windows. It was the successor to Turbo C++ and included a better debugger, the Turbo Debugger, which was written in protected mode DOS.

Turbo Delphi is a discontinued integrated development environment (IDE), created by CodeGear, which was targeted towards student, amateur, individual professionals, and hobbyist programmers. It used the Delphi programming language, which is a dialect of Object Pascal.

Embarcadero Technologies, Inc. is an American computer software company that develops, manufactures, licenses and supports products and services related to software through several product divisions. It was founded in 1993, went public in 2000 and private in 2007, and became a division of Idera, Inc. in 2015.

<span class="mw-page-title-main">Teechart</span>

TeeChart is a charting library for programmers, developed and managed by Steema Software of Girona, Catalonia, Spain. It is available as commercial and non-commercial software. TeeChart has been included in most Delphi and C++Builder products since 1997, and TeeChart Standard currently is part of Embarcadero RAD Studio 12 Athens. TeeChart Pro version is a commercial product that offers shareware releases for all of its formats, TeeChart. Lite for .NET is a free charting component for the Microsoft Visual Studio .NET community and TeeChart for PHP is an open-source library for PHP environments. The TeeChart Charting Library offers charts, maps and gauges in versions for Delphi VCL/FMX, ActiveX, C# for Microsoft Visual Studio .NET, Java and PHP. Full source code has always been available for all versions except the ActiveX version. TeeChart's user interface is translated into 38 languages.

This page details the history of the programming language and software product Delphi.

References

Further reading

  1. Neward, Ted (1998). Advanced OWL 5.0: Power Tools for OWL Programmers . ISBN   1-884777-46-5.
  2. Walnum, Clayton (1994). Borland C++ 4.x Tips, Tricks and Traps . ISBN   1-56529-895-0.
  3. Faison, Ted (1995). Borland C++ 4.5 Object-Oriented Programming. ISBN   0-672-30605-0.
  4. Borland C++ 5.0 Programming Starter Kit Deluxe. Pearson Software. June 2002. ISBN   1-57595-430-3.
  5. Faison, Ted. Borland C++ Object Oriented Programs. ISBN   978-0-672-30775-1.
  6. Neward, Ted (1998). Core OWL 5.0: OWL Internals for Advanced. ISBN   1-884777-50-3.
  7. Faison, Ted. Inside Object Windows Library. ISBN   978-0-672-30219-0.
  8. Swan, Tom (1995). Mastering Borland C++ 4.5. ISBN   0-672-30546-1.
  9. Broquard, Victor E. (20 May 1993). Object Windows 2.0 Programming. ISBN   978-0-553-37120-8.
  10. Broquard, Victor E. (1997). Programming for OWL for Windows 95. ISBN   978-0-13-492273-7.
  11. Spencer, Ian (1995). Teach yourself OWL Programming in 21 days. ISBN   0-672-30600-X.
  12. Heiny, Loren (10 October 1994). Windows Graphic Programming with Borland C++. ISBN   0-471-30930-3.