Files
Upsilon/apps/apps_container.h
Émilie Feral 47cec5e72b [apps] Put the method preference in container instead of in every app
Change-Id: Ib390952a6559aa847c99e3ca74c4f6995a07e909
2017-02-02 10:29:07 +01:00

55 lines
1.4 KiB
C++

#ifndef APPS_CONTAINER_H
#define APPS_CONTAINER_H
#include "home/app.h"
#include "graph/app.h"
#include "probability/app.h"
#include "calculation/app.h"
#include "regression/app.h"
#include "settings/app.h"
#include "statistics/app.h"
#include "apps_window.h"
#include "toolbox_controller.h"
#include "variable_box_controller.h"
#include "preferences.h"
#define USE_PIC_VIEW_APP 0
#if USE_PIC_VIEW_APP
#include "picview/picview_app.h"
#endif
class AppsContainer : public Container {
public:
AppsContainer();
int numberOfApps();
App * appAtIndex(int index);
Context * globalContext();
Preferences * preferences();
ToolboxController * toolboxController();
VariableBoxController * variableBoxController();
bool handleEvent(Ion::Events::Event event) override;
void switchTo(App * app) override;
void refreshPreferences();
private:
Window * window() override;
static constexpr int k_numberOfApps = 9;
AppsWindow m_window;
Home::App m_homeApp;
Graph::App m_graphApp;
Probability::App m_probabilityApp;
Calculation::App m_calculationApp;
Regression::App m_regressionApp;
Settings::App m_settingsApp;
Statistics::App m_statisticsApp;
#if USE_PIC_VIEW_APP
PicViewApp m_picViewApp;
#endif
GlobalContext m_globalContext;
Preferences m_preferences;
ToolboxController m_toolboxController;
VariableBoxController m_variableBoxController;
};
#endif