itom
Loading...
Searching...
No Matches
ito::MainApplication Class Reference

The MainApplication class is the basic management class for the entire application. More...

Inheritance diagram for ito::MainApplication:

Public Types

enum  tGuiType { standard , console , none }
 

Public Slots

void _propertiesChanged ()
 
void mainWindowCloseRequest (bool considerPythonBusy)
 slot invoked if user wants to close application
 

Signals

void propertiesChanged ()
 

Public Member Functions

 MainApplication (tGuiType guiType=standard)
 constructor
 
 ~MainApplication ()
 destructor
 
int loadSettings (const QString userName="")
 
void setupApplication (const QStringList &scriptsToOpen, const QStringList &scriptsToExecute)
 setup of application
 
void finalizeApplication ()
 setup of application
 
int exec ()
 exececution of the main event loop
 
int execPipManagerOnly ()
 
ScriptEditorOrganizergetScriptEditorOrganizer ()
 

Static Public Member Functions

static MainApplicationinstance ()
 

Protected Member Functions

void registerMetaObjects ()
 

Private Slots

void setSplashScreenMessage (const QString &text)
 

Private Member Functions

QString getSplashScreenFileName () const
 
QPixmap getSplashScreenPixmap () const
 

Private Attributes

bool m_devFlag = false
 
tGuiType m_guiType
 
QThread * m_pyThread
 
PythonEnginem_pyEngine
 
PythonStatePublisherm_pyStatePublisher
 
ScriptEditorOrganizerm_scriptEditorOrganizer
 
MainWindowm_mainWin
 
PaletteOrganizerm_paletteOrganizer
 
UiOrganizerm_uiOrganizer
 
DesignerWidgetOrganizerm_designerWidgetOrganizer
 
ito::ProcessOrganizerm_processOrganizer
 
QTranslator m_translator
 
QTranslator m_qtTranslator
 
QTranslator m_commonQtTranslator
 
QTranslator m_commonPlotTranslator
 
QTranslator m_widgetsTranslator
 
QTranslator m_addinmanagerTranslator
 
QSplashScreen * m_pSplashScreen
 
QColor m_splashScreenTextColor
 
QDebugStreamm_pQout
 
QDebugStreamm_pQerr
 
PythonLogger m_pythonLogger
 

Static Private Attributes

static MainApplicationmainApplicationInstance = NULL
 static instance pointer initialization
 

Detailed Description

The MainApplication class is the basic management class for the entire application.

Constructor & Destructor Documentation

◆ MainApplication()

ito::MainApplication::MainApplication ( tGuiType guiType = standard)

constructor

Parameters
guiTypeType of the desired GUI (normal, console, no)
See also
tGuiType

◆ ~MainApplication()

ito::MainApplication::~MainApplication ( )

destructor

shutdown of whole application, including PythonEngine

See also
PythonEngine

Member Function Documentation

◆ exec()

int ito::MainApplication::exec ( )

exececution of the main event loop

Returns
value passed to exit() method, which finishes the exec()-loop, 0 if finished by quit()

◆ finalizeApplication()

void ito::MainApplication::finalizeApplication ( )

setup of application

stops PythonEngine, MainWindow (dependent on gui-type) and all necessary managers and organizers. Closes import connections between MainWindow and PythonEngine as well as ScriptEditorOrganizer.

See also
PythonEngine, MainWindow, ScriptEditorOrganizer

◆ getScriptEditorOrganizer()

ScriptEditorOrganizer * ito::MainApplication::getScriptEditorOrganizer ( )
inline

returns member m_scriptEditorOrganizer

◆ instance()

MainApplication * ito::MainApplication::instance ( )
static

getter-method for static instance pointer

◆ mainWindowCloseRequest

void ito::MainApplication::mainWindowCloseRequest ( bool considerPythonBusy)
slot

slot invoked if user wants to close application

See also
MainWindow

◆ setupApplication()

void ito::MainApplication::setupApplication ( const QStringList & scriptsToOpen,
const QStringList & scriptsToExecute )

setup of application

starts PythonEngine, MainWindow (dependent on gui-type) and all necessary managers and organizers. Builds import connections between MainWindow and PythonEngine as well as ScriptEditorOrganizer.

See also
PythonEngine, MainWindow, ScriptEditorOrganizer

Member Data Documentation

◆ m_designerWidgetOrganizer

DesignerWidgetOrganizer* ito::MainApplication::m_designerWidgetOrganizer
private

designerWidgetOrganizer

◆ m_devFlag

bool ito::MainApplication::m_devFlag = false
private

member to designate dev-build

◆ m_guiType

tGuiType ito::MainApplication::m_guiType
private

member for the desired gui-type

◆ m_mainWin

MainWindow* ito::MainApplication::m_mainWin
private

pointer to the main window

◆ m_paletteOrganizer

PaletteOrganizer* ito::MainApplication::m_paletteOrganizer
private

pointer to figureOrganizer

◆ m_pQerr

QDebugStream* ito::MainApplication::m_pQerr
private

std::cerr is redirected to this instance

◆ m_pQout

QDebugStream* ito::MainApplication::m_pQout
private

std::cout is redirected to this instance

◆ m_processOrganizer

ito::ProcessOrganizer* ito::MainApplication::m_processOrganizer
private

pointer to processOrganizer

◆ m_pyEngine

PythonEngine* ito::MainApplication::m_pyEngine
private

pointer to the python engine

◆ m_pyStatePublisher

PythonStatePublisher* ito::MainApplication::m_pyStatePublisher
private

pointer to the python state publisher (executed in main thread)

◆ m_pythonLogger

PythonLogger ito::MainApplication::m_pythonLogger
private

copies std::cerr to log

◆ m_pyThread

QThread* ito::MainApplication::m_pyThread
private

Thread, where python engine is executed

◆ m_scriptEditorOrganizer

ScriptEditorOrganizer* ito::MainApplication::m_scriptEditorOrganizer
private

pointer to scriptEditorOrganizer, organizing every existing script window or docking widget

◆ m_translator

QTranslator ito::MainApplication::m_translator
private

pointer to a language-translation, different than the standard language (en)

◆ m_uiOrganizer

UiOrganizer* ito::MainApplication::m_uiOrganizer
private

pointer to uiOrganizer

◆ mainApplicationInstance

MainApplication * ito::MainApplication::mainApplicationInstance = NULL
staticprivate

static instance pointer initialization

static pointer to the (singleton) instance of MainApplication


The documentation for this class was generated from the following files: