The core module provides all core application functions

All the core functions of the OpenLP application including the GUI, settings, logging and a plugin framework are contained within the openlp.core module.

class openlp.core.OpenLP(*args, **kwargs)[source]

Bases: openlp.core.common.openlpmixin.OpenLPMixin, PyQt5.QtWidgets.QApplication

The core application class. This class inherits from Qt’s QApplication class in order to provide the core of the application.

args = []
backup_on_upgrade(has_run_wizard, can_show_splash)[source]

Check if OpenLP has been upgraded, and ask if a backup of data should be made

  • has_run_wizard – OpenLP has been run before
  • can_show_splash – Should OpenLP show the splash screen

Enables platform specific event handling i.e. direct file opening on OS X

Parameters:event – The event

Override exec method to allow the shared memory to be released on exit

hook_exception(exc_type, value, traceback)[source]

Add an exception hook so that any uncaught exceptions are displayed in this window rather than somewhere where users cannot see it and cannot report when we encounter these problems.

  • exc_type – The class of exception.
  • value – The actual exception object.
  • traceback – A traceback object with the details of where the exception occurred.

Look to see if OpenLP is already running and ask if a 2nd instance is to be started.


Check if the data folder path exists.


Wrapper to make ProcessEvents visible and named correctly


Run the OpenLP application.

Parameters:args – Some Args

Sets the Busy Cursor for the Application


Sets the Normal Cursor for the Application


The main function which parses command line options and then runs

Parameters:args – Some args