Mapper  0.9.0
API documentation
Public Member Functions | Static Public Member Functions | Protected Attributes | List of all members
OpenOrienteering::MainWindowController Class Referenceabstract

A MainWindowController provides the specific content and behaviours for a main window, for example map drawing or course setting functions. More...

#include <main_window_controller.h>

Inheritance diagram for OpenOrienteering::MainWindowController:
Inheritance graph
[legend]
Collaboration diagram for OpenOrienteering::MainWindowController:
Collaboration graph
[legend]

Public Member Functions

 ~MainWindowController () override
 
virtual bool menuBarVisible ()
 Returns true when the controller wants a menu bar to be shown. More...
 
virtual bool statusBarVisible ()
 Returns true when the controller wants a status bar to be shown. More...
 
virtual bool saveTo (const QString &path, const FileFormat &format)
 Save to a file. More...
 
bool exportTo (const QString &path)
 Export to a file, but don't change modified state with regard to the original file. More...
 
virtual bool exportTo (const QString &path, const FileFormat &format)
 Export to a file, but don't change modified state with regard to the original file. More...
 
virtual bool loadFrom (const QString &path, const FileFormat &format, QWidget *dialog_parent=nullptr)
 Load from a file. More...
 
virtual void attach (MainWindow *window)=0
 Attach the controller to a main window. More...
 
virtual void detach ()
 Detach the controller from a main window. More...
 
virtual bool isEditingInProgress () const
 Returns true when editing is in progress. More...
 
virtual bool keyPressEventFilter (QKeyEvent *event)
 Receives key press events from the main window. More...
 
virtual bool keyReleaseEventFilter (QKeyEvent *event)
 Receives key release events from the main window. More...
 
MainWindowgetWindow () const
 Get the main window this controller is attached to. More...
 
- Public Member Functions inherited from QObject
virtual const QMetaObjectmetaObject () const const
 
 QObject (QObject *parent)
 
virtual ~QObject ()
 
virtual bool event (QEvent *e)
 
virtual bool eventFilter (QObject *watched, QEvent *event)
 
QString objectName () const const
 
void setObjectName (const QString &name)
 
bool isWidgetType () const const
 
bool isWindowType () const const
 
bool signalsBlocked () const const
 
bool blockSignals (bool block)
 
QThreadthread () const const
 
void moveToThread (QThread *targetThread)
 
int startTimer (int interval, Qt::TimerType timerType)
 
int startTimer (std::chrono::milliseconds time, Qt::TimerType timerType)
 
void killTimer (int id)
 
findChild (const QString &name, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QString &name, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QRegExp &regExp, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QRegularExpression &re, Qt::FindChildOptions options) const const
 
const QObjectListchildren () const const
 
void setParent (QObject *parent)
 
void installEventFilter (QObject *filterObj)
 
void removeEventFilter (QObject *obj)
 
QMetaObject::Connection connect (const QObject *sender, const char *signal, const char *method, Qt::ConnectionType type) const const
 
bool disconnect (const char *signal, const QObject *receiver, const char *method) const const
 
bool disconnect (const QObject *receiver, const char *method) const const
 
void dumpObjectTree ()
 
void dumpObjectInfo ()
 
void dumpObjectTree () const const
 
void dumpObjectInfo () const const
 
bool setProperty (const char *name, const QVariant &value)
 
QVariant property (const char *name) const const
 
QList< QByteArraydynamicPropertyNames () const const
 
void destroyed (QObject *obj)
 
void objectNameChanged (const QString &objectName)
 
QObjectparent () const const
 
bool inherits (const char *className) const const
 
void deleteLater ()
 
 Q_DISABLE_COPY (Class)
 
 Q_DISABLE_MOVE (Class)
 
 Q_DISABLE_COPY_MOVE (Class)
 
qobject_cast (QObject *object)
 
qobject_cast (const QObject *object)
 
qFindChild (const QObject *obj, const QString &name)
 
QList< T > qFindChildren (const QObject *obj, const QString &name)
 
QList< T > qFindChildren (const QObject *obj, const QRegExp &regExp)
 
 Q_CLASSINFO (Name, Value)
 
 Q_INTERFACES (...)
 
 Q_PROPERTY (...)
 
 Q_ENUMS (...)
 
 Q_FLAGS (...)
 
 Q_ENUM (...)
 
 Q_FLAG (...)
 
 Q_ENUM_NS (...)
 
 Q_FLAG_NS (...)
 
 Q_OBJECT Q_OBJECT
 
 Q_GADGET Q_GADGET
 
 Q_NAMESPACE Q_NAMESPACE
 
 Q_SIGNALS Q_SIGNALS
 
 Q_SIGNAL Q_SIGNAL
 
 Q_SLOTS Q_SLOTS
 
 Q_SLOT Q_SLOT
 
 Q_EMIT Q_EMIT
 
 Q_INVOKABLE Q_INVOKABLE
 
 Q_REVISION Q_REVISION
 
 Q_SET_OBJECT_NAME (Object)
 
 QT_NO_NARROWING_CONVERSIONS_IN_CONNECT QT_NO_NARROWING_CONVERSIONS_IN_CONNECT
 

Static Public Member Functions

static MainWindowControllercontrollerForFile (const QString &filename)
 Get a controller suitable for a particular file. More...
 
- Static Public Member Functions inherited from QObject
QString tr (const char *sourceText, const char *disambiguation, int n)
 
QString trUtf8 (const char *sourceText, const char *disambiguation, int n)
 
QMetaObject::Connection connect (const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, Functor functor)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, const QObject *context, Functor functor, Qt::ConnectionType type)
 
bool disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *method)
 
bool disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method)
 
bool disconnect (const QMetaObject::Connection &connection)
 
bool disconnect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method)
 

Protected Attributes

MainWindowwindow
 

Additional Inherited Members

- Public Attributes inherited from QObject
typedef QObjectList
 
- Protected Member Functions inherited from QObject
QObjectsender () const const
 
int senderSignalIndex () const const
 
int receivers (const char *signal) const const
 
bool isSignalConnected (const QMetaMethod &signal) const const
 
virtual void timerEvent (QTimerEvent *event)
 
virtual void childEvent (QChildEvent *event)
 
virtual void customEvent (QEvent *event)
 
virtual void connectNotify (const QMetaMethod &signal)
 
virtual void disconnectNotify (const QMetaMethod &signal)
 
- Properties inherited from QObject
 objectName
 

Detailed Description

A MainWindowController provides the specific content and behaviours for a main window, for example map drawing or course setting functions.

Constructor & Destructor Documentation

◆ ~MainWindowController()

OpenOrienteering::MainWindowController::~MainWindowController ( )
overridedefault

Member Function Documentation

◆ attach()

virtual void OpenOrienteering::MainWindowController::attach ( MainWindow window)
pure virtual

Attach the controller to a main window.

The controller should create its user interface here.

Implemented in OpenOrienteering::MapEditorController, and OpenOrienteering::HomeScreenController.

◆ controllerForFile()

MainWindowController * OpenOrienteering::MainWindowController::controllerForFile ( const QString filename)
static

Get a controller suitable for a particular file.

Parameters
filenamethe name of the file
Returns
a MainWindowController that is able to load the file

◆ detach()

void OpenOrienteering::MainWindowController::detach ( )
virtual

Detach the controller from a main window.

The controller should delete its user interface here.

Reimplemented in OpenOrienteering::MapEditorController, and OpenOrienteering::HomeScreenController.

◆ exportTo() [1/2]

bool OpenOrienteering::MainWindowController::exportTo ( const QString path)

Export to a file, but don't change modified state with regard to the original file.

Parameters
paththe path to export to
Returns
true if saving was successful, false on errors

◆ exportTo() [2/2]

bool OpenOrienteering::MainWindowController::exportTo ( const QString path,
const FileFormat format 
)
virtual

Export to a file, but don't change modified state with regard to the original file.

Parameters
paththe path to export to
formatthe file format
Returns
true if saving was successful, false on errors

Reimplemented in OpenOrienteering::MapEditorController.

◆ getWindow()

MainWindow * OpenOrienteering::MainWindowController::getWindow ( ) const
inline

Get the main window this controller is attached to.

◆ isEditingInProgress()

bool OpenOrienteering::MainWindowController::isEditingInProgress ( ) const
virtual

Returns true when editing is in progress.

"Editing in progress" means the file is an "unstable" state where no global operations like save, undo, redo shall not be applied.

Reimplemented in OpenOrienteering::MapEditorController.

◆ keyPressEventFilter()

bool OpenOrienteering::MainWindowController::keyPressEventFilter ( QKeyEvent event)
virtual

Receives key press events from the main window.

QKeyEvent starts with isAccepted() == true, so the return value of this function decides if the event shall be stopped from being handled further.

The default implementation simply returns false.

Returns
True if the event shall be stopped from being handled further, false otherwise.

Reimplemented in OpenOrienteering::MapEditorController.

◆ keyReleaseEventFilter()

bool OpenOrienteering::MainWindowController::keyReleaseEventFilter ( QKeyEvent event)
virtual

Receives key release events from the main window.

QKeyEvent starts with isAccepted() == true, so the return value of this function decides if the event shall be stopped from being handled further.

The default implementation simply returns false.

Returns
True if the event shall be stopped from being handled further, false otherwise.

Reimplemented in OpenOrienteering::MapEditorController.

◆ loadFrom()

bool OpenOrienteering::MainWindowController::loadFrom ( const QString path,
const FileFormat format,
QWidget dialog_parent = nullptr 
)
virtual

Load from a file.

Parameters
paththe path to load from
dialog_parentAlternative parent widget for all dialogs. If nullptr, implementations should use MainWindowController::window.
Returns
true if loading was successful, false on errors

Reimplemented in OpenOrienteering::MapEditorController.

◆ menuBarVisible()

bool OpenOrienteering::MainWindowController::menuBarVisible ( )
virtual

Returns true when the controller wants a menu bar to be shown.

The default implementation returns false for mobile mode, true otherwise.

Reimplemented in OpenOrienteering::MapEditorController.

◆ saveTo()

bool OpenOrienteering::MainWindowController::saveTo ( const QString path,
const FileFormat format 
)
virtual

Save to a file.

Parameters
paththe path to save to
formatthe file format
Returns
true if saving was successful, false on errors

Reimplemented in OpenOrienteering::MapEditorController.

◆ statusBarVisible()

bool OpenOrienteering::MainWindowController::statusBarVisible ( )
virtual

Returns true when the controller wants a status bar to be shown.

The default implementation returns false for mobile mode, true otherwise.

Reimplemented in OpenOrienteering::HomeScreenController.

Member Data Documentation

◆ window

MainWindow* OpenOrienteering::MainWindowController::window
protected

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