Extending OPL with C++ - OPXs

An OPX is a Symbian OS DLL containing functions written in C++ but exposed to the OPL developer via a special interface. This mechanism gives OPL access to the full capabilities of the underlying Symbian OS operating system, meaning that the language can be extended as required. The procedures are as efficient as the built in OPL commands.

To develop OPXs, you need the C++ Software Development Kit. OPXs are usually supplied within '.sis' installation files ready for installation into the \System\OPX\ directory (on C: or D:) of the Symbian OS machine.  Separate versions are required for the Symbian OS machine and the Symbian OS Emulator.

The OPXs listed below have been developed and released by the Symbian Developer Network.

Suitable for devices based on Symbian OS v3 and v5.

System.opx Source code (v1.01 updated June 1999)
Provided as a full working example to developers who are interested in producing OPXs
Download System.opx Source code (10Kb)

Agenda (v1.01 updated 10 September 1999)
Access to Agenda files. This OPX will work on both Symbian OS v3 and Symbian OS v5 devices, but Symbian OS v5 authors are encouraged to use Agenda2.opx instead. This OPX is maintained only for older Symbian OS v3 applications which made use of it before Agenda2 was written.
Download Agenda OPX (7Kb)
Download Agenda OPX C++ Source Code (62Kb)
Download Agenda OPX OPL Source Code (6Kb)

Agenda2 (v5.00 updated 17th June 1999)
Access to entries in Agenda files.
Download Agenda2 OPX (23Kb)

Alarm (v5.10 updated 20th March 2000)
Gives access to the eight built in Alarms and to the World Database information.
Download Alarm OPX (19Kb)

Buffer (v5.00 updated 17th June 1999)
Gives access to buffer search and copy functions. Particularly useful when used with dEDITMULTI.
Download Buffer OPX (8Kb)

Contact (v1.00 updated 11 October 1999)
Provides access to the functionality of the Symbian OS v5 Contacts engine from OPL programs.
Download Contact OPX (18Kb)

Dataopx (v5.00 updated 17th June 1999)
Gives access to all the field types supported by Symbian OS DBMS including long types (text of arbitrary length). It also allows complete schema inquiries for OPL Databases.
Download Data OPX (21Kb)

Date (v1.01 updated 17th June 1999)
Bug fixed version of the built in Date.opx. This OPX will work on Symbian OS v1 to Symbian OS v5 devices, but is not required under Symbian OS v4 or Symbian OS v5 as that already includes this fixed version.
Read about and download Date OPX (15Kb)

DBUtils (v1.00 updated 11 October 1999)
Provides additional functionality for DBMS use in OPL, especially for programs running under ER5.
Download DBUtils OPX (7Kb)

Music (v5.00 updated 17th June 1999)
Play music and DTMF tones on your Symbian OS device.
Download Music OPX (7Kb)

Scomms (v1.01 updated 17th June 1999)
Allows sending and receiving information via the IrDA port.
Download Scomms OPX (117Kb)

Spell (v5.00 updated 29th March 2000)
Gives access to the built in spelling checker
Download Spell OPX (10Kb)

Subst (v5.00 updated 17th June 1999)
Reproduces the SUBST command from DOS, to make searching the drive trees dramatically quicker.
Download Subst OPX (7Kb)

SysRAM1 (v5.20 updated 7th August 2000)
Additional access to system information, and some bug fixes to OPL commands.
Download SysRAM1 OPX (16Kb)

Systinfo (v5.10 updated 7th August 2000)
Gives access to many of the System settings that are set through the Control Panel.
Download SystInfo OPX (22Kb)

 

This area lists known third party OPXs (OPL Extensions written in C++), with links to the sites where they can be downloaded from.

The following are available from Twiddlebit Software (External Link):

AppInfo - provides access to information about applications installed on a device.

GPrinter - provides the vector based printing.

The following are available from EMCC (External Link):

Cliptext - Access to the system clipboard for copying and pasting text between applications.

Clipbit - Access to the system clipboard for copying and pasting bitmaps between applications.

The following are available from Keith Walker (External Link):

CComms - a thin interface layer allowing the creation and manipulation of objects which are defined by the C++ classes giving access to serial communications.

CDescriptor - allows OPL programs to access Symbian OS descriptors.

CE32Base - a thin interface layer allowing the creation and manipulation of objects which are defined by the C++ classes giving access to the fundamental base classes of Symbian OS.

CFile - a thin interface layer allowing the creation and manipulation of objects which are defined by the C++ classes giving access to file and directory classes of Symbian OS.

CSocket - allows OPL programs to access the socket layer of the Symbian OS.

The following are available from Neuon (External Link):

nListBox - A fully featured OPX providing multi-column, graphical listboxes.

nMPD (Multi-page Dialog OPX) - An OPX to provide multi-paged dialogs to OPL as well as many more professional features such as dynamic dimming, radio buttons and more.

nDirNav (Directory Navigator) - An OPX to provides a quick and customizable alternative to the dFILE command.

The following is available from X-Soft (External Link):

FTP - This OPX allows you to easily add the FTP protocol to your OPL applications, meaning you can send and receive files across the Internet.

The following is available from Ralph Sprenger (External Link):

OPXScan - OPXscan will help you keep track of your OPX files.

The following is available from mBrainSoftware (External Link):

RunMime - this OPX will start the correct application to handle a given file according to it's MIME type or (if no MIME type is defined or you are running on ER3) according to any appropriate file recognizers.

The following is available from Novateh (External Link):

Blowfish - An OPX for data encryption using the Blowfish algorithm.

The following is available from Henrik Bjerregaard Pedersen (External Link):

ASM Assembler - An OPX to allow you to use ARM Assembler code in order to speed up data processing from OPL

The following is available from Graham Holden

AldurFile - An OPX to extend file and directory handling in OPL programs above and beyond the functionality offered by the existing keywords

OPMs, extensions to OPL written in OPL itself, are an alternative to OPXs. You can read more in Writing standard OPMs.

Back to opl-dev project homepage

SourceForge.net Logo Symbian logo