Files
Upsilon/apps/shared/function_app.h
Émilie Feral d2c55eb7d0 [apps/graph][apps/sequence] In values controller, memoize the number of
columns to improve performance

Change-Id: Ie3c545d0198a2f23575bd22fdbf56e9c6b8ff2b8
2017-06-02 14:07:40 +02:00

42 lines
995 B
C++

#ifndef SHARED_FUNCTION_APP_H
#define SHARED_FUNCTION_APP_H
#include <poincare.h>
#include "text_field_delegate_app.h"
#include "curve_view_cursor.h"
#include "interval.h"
class AppsContainer;
namespace Shared {
class FunctionApp : public TextFieldDelegateApp {
public:
class Snapshot : public ::App::Snapshot, public TabViewDataSource {
public:
Snapshot();
CurveViewCursor * cursor();
uint32_t * graphModelVersion();
uint32_t * valuesModelVersion();
uint32_t * rangeVersion();
Interval * interval();
void reset() override;
protected:
CurveViewCursor m_cursor;
Interval m_interval;
private:
uint32_t m_graphModelVersion;
uint32_t m_valuesModelVersion;
uint32_t m_rangeVersion;
};
virtual ~FunctionApp() = default;
virtual InputViewController * inputViewController() = 0;
void willBecomeInactive() override;
protected:
FunctionApp(Container * container, Snapshot * snapshot, ViewController * rootViewController);
};
}
#endif