Omnidome
Fulldome Mapping Software Toolkit
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes
omni::ui::Application Class Reference

Omnidome Application. More...

#include <Application.h>

Inheritance diagram for omni::ui::Application:
Inheritance graph
[legend]
Collaboration diagram for omni::ui::Application:
Collaboration graph
[legend]

Public Member Functions

 Application (int &ac, char **av)
 Construct with command arguments and load plugins. More...
 
 ~Application ()
 
void setStyleSheetFile (QString _file)
 Set custom stylesheet file. More...
 
QString styleSheetFile () const
 Return string to style sheet file. More...
 

Static Public Member Functions

static QSettings & settings ()
 Application settings to be saved. More...
 

Private Member Functions

bool eventFilter (QObject *object, QEvent *event)
 
void loadPlugins ()
 

Private Attributes

QString styleSheetFile_
 

Static Private Attributes

static QSettings settings_
 

Detailed Description

Omnidome Application.

Constructor & Destructor Documentation

omni::ui::Application::Application ( int &  ac,
char **  av 
)

Construct with command arguments and load plugins.

31  :
32  QApplication(ac, av)
33  {
34  QCoreApplication::setApplicationName("Omnidome");
35  QCoreApplication::setApplicationVersion(OMNIDOME_VERSION_STRING);
36  QCoreApplication::setOrganizationName("cr8tr");
37  QCoreApplication::setOrganizationDomain("cr8tr.org / omnido.me");
38  loadPlugins();
39 
40  std::vector<QString> _fonts = {
41  ":/fonts/SourceSansPro-Bold.ttf",
42  ":/fonts/SourceSansPro-Light.ttf",
43  ":/fonts/SourceSansPro-Regular.ttf"
44  };
45 
46  for (auto& _font : _fonts) {
47  int id = QFontDatabase::addApplicationFont(_font);
48 #ifdef DEBUG
49  QString family = QFontDatabase::applicationFontFamilies(id).at(0);
50  qDebug() << family;
51 #endif
52  }
53 
54  setStyleSheetFile(":/stylesheet.qss");
55 
56  installEventFilter(this);
57  }
void loadPlugins()
Definition: Application.cpp:79
void setStyleSheetFile(QString _file)
Set custom stylesheet file.
Definition: Application.cpp:61
omni::ui::Application::~Application ( )
59 {}

Member Function Documentation

bool omni::ui::Application::eventFilter ( QObject *  object,
QEvent *  event 
)
private
88  {
89 #ifdef DEBUG // Reload style sheet in debug mode when pressing F5
90  if (event->type() == QEvent::KeyPress)
91  {
92  auto *keyEvent = static_cast<QKeyEvent*>(event);
93  if (keyEvent->key() == Qt::Key_F5) {
95  }
96  }
97 #endif // ifdef DEBUG
98  return QObject::eventFilter(object, event);
99  }
QString styleSheetFile_
Definition: Application.h:50
void setStyleSheetFile(QString _file)
Set custom stylesheet file.
Definition: Application.cpp:61
void omni::ui::Application::loadPlugins ( )
private
79  {
80 
81  std::vector<QDir> _pluginDirs;
82 
83  // Load plugins
84  PluginLoader _pluginLoader(_pluginDirs);
85  }
void omni::ui::Application::setStyleSheetFile ( QString  _file)

Set custom stylesheet file.

61  {
62  // Load application style sheet
63  QFile file(_styleSheetFile);
64 
65  file.open(QFile::ReadOnly);
66  QString styleSheet = QLatin1String(file.readAll());
67  setStyleSheet(styleSheet);
68  styleSheetFile_ = _styleSheetFile;
69  }
QString styleSheetFile_
Definition: Application.h:50
QSettings & omni::ui::Application::settings ( )
static

Application settings to be saved.

75  {
76  return settings_;
77  }
static QSettings settings_
Definition: Application.h:51
QString omni::ui::Application::styleSheetFile ( ) const

Return string to style sheet file.

71  {
72  return styleSheetFile_;
73  }
QString styleSheetFile_
Definition: Application.h:50

Field Documentation

QSettings omni::ui::Application::settings_
staticprivate
QString omni::ui::Application::styleSheetFile_
private

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