Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Object Windows Library
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Short description|C++ application framework}} {{Infobox software |name = Object Windows Library |author = [[Borland]] Software Corporation |released = {{release date and age|1991}} |latest release version = OWLNext 7.0.19 |latest release date = {{release date and age|2025|04|18}} |programming language = [[C++]] |operating system = [[Windows]], [[OS/2]] |platform = |size = |language = |genre = [[Software framework]] |license = [[proprietary software|Proprietary]] with [[Open-source software|open-source]] patches |website = {{Official URL}} }} 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]]. 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,<ref name="OWLNext">OWLNext http://sourceforge.net/p/owlnext</ref> an [[Open-source software|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 (programming language)|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 [[Microsoft Foundation Classes|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 (computer science)|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.<ref>Morgan B. Adair (1994) "[http://support.novell.com/techcenter/articles/dnd19940502.html The AppWare Foundation: An Overview]"</ref> 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, [[Tru64 UNIX|DEC OSF/1]] AXP, [[HP-UX]] 9.03, Linux 1.2, Solaris 2.x, [[SunOS|Sun OS]] 4.1.x, and SVR4 for x86. It was called WM_MOTIF.<ref>Software UNO Ltd (1997) "[http://softwareuno.com/products/index.htm Software UNO Products and Services]"</ref> 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<ref name="OWLNext" /> [[Open-source software|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 Technologies]]. == Shipped releases == {| class="wikitable" ! Product version ! OWL version |- |Borland C/C++ 3.0 |OWL 1.0 |- |Borland C/C++ 2.0 for OS/2 |OWL 2.0 |- |Borland C++ 4.0x |OWL 2.0 |- |Borland C++ 4.5x |OWL 2.5 |- |Borland C++ 5.0x |OWL 5.0 |- |Borland C++Builder 4.0 |OWL 5.0 |- |Borland C++Builder 5.0 |OWL 5.0 |- |CodeGear C++Builder 2007 |OWLNext 6.20 |- |Embarcadero C++Builder XE |OWLNext 6.30 |- |Embarcadero C++Builder XE2 |OWLNext 6.32 |- |} Later versions of OWLNext have been released through SourceForge. ==References== {{reflist}} ==Further reading== {{refbegin}} # {{Cite book |title = Advanced OWL 5.0: Power Tools for OWL Programmers |first = Ted |last = Neward |year = 1998 |publisher = Manning |isbn = 1-884777-46-5 |url-access = registration |url = https://archive.org/details/advancedowl50pow00newa }} # {{Cite book |title = Borland C++ 4.x Tips, Tricks and Traps |first = Clayton |last = Walnum |year = 1994 |isbn = 1-56529-895-0 |url-access = registration |url = https://archive.org/details/borlandc4xtipstr0000waln }} # {{Cite book |title = Borland C++ 4.5 Object-Oriented Programming |first = Ted |last = Faison |year = 1995 |isbn = 0-672-30605-0}} # {{Cite book |title = Borland C++ 5.0 Programming Starter Kit Deluxe |publisher = Pearson Software |date=June 2002 |isbn = 1-57595-430-3}} # {{Cite book |title = Borland C++ Object Oriented Programs |first = Ted |last = Faison |isbn = 978-0-672-30775-1}} # {{Cite book |title = Core OWL 5.0: OWL Internals for Advanced |first = Ted |last = Neward |year = 1998 |isbn = 1-884777-50-3}} # {{Cite book |title = Inside Object Windows Library |first = Ted |last = Faison |isbn = 978-0-672-30219-0}} # {{Cite book |title = Mastering Borland C++ 4.5 |first = Tom |last = Swan |year = 1995 |isbn = 0-672-30546-1}} # {{Cite book |title = Object Windows 2.0 Programming |first = Victor E. |last = Broquard |date = 20 May 1993 |isbn = 978-0-553-37120-8 }} # {{Cite book |title = Programming for OWL for Windows 95 |first = Victor E. |last = Broquard |year = 1997 |isbn = 978-0-13-492273-7 }} # {{Cite book |title = Teach yourself OWL Programming in 21 days |first = Ian |last = Spencer |year = 1995 |isbn = 0-672-30600-X}} # {{Cite book |title = Windows Graphic Programming with Borland C++ |first = Loren |last = Heiny |date = 10 October 1994 |isbn = 0-471-30930-3}} {{Refend}} ==External links== * {{official website}} * [http://cc.embarcadero.com/partners/bcb5/exclusive/object_windows_library/index.html OWL source code from Embarcadero] * [http://cc.embarcadero.com/partners/cppbuilder2007/owlnext/owlnext/index.html OWLNext 6.20 from Embarcadero] * [http://cc.embarcadero.com/item/27976 OWLNext 6.30 from Embarcadero] {{Pascal programming language family}} {{Widget toolkits}} [[Category:Borland]] [[Category:C++ libraries]] [[Category:Software derived from or incorporating Wine]]
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)
Pages transcluded onto the current version of this page
(
help
)
:
Template:Cite book
(
edit
)
Template:Infobox
(
edit
)
Template:Infobox software
(
edit
)
Template:Main other
(
edit
)
Template:Official website
(
edit
)
Template:Pascal programming language family
(
edit
)
Template:Refbegin
(
edit
)
Template:Refend
(
edit
)
Template:Reflist
(
edit
)
Template:Short description
(
edit
)
Template:Template other
(
edit
)
Template:Widget toolkits
(
edit
)