Blame view

build2/epsilon-master/apps/shared/function_app.h 1.1 KB
6663b6c9   adorian   projet complet av...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
  #ifndef SHARED_FUNCTION_APP_H
  #define SHARED_FUNCTION_APP_H
  
  #include <poincare.h>
  #include "expression_field_delegate_app.h"
  #include "curve_view_cursor.h"
  #include "interval.h"
  
  class AppsContainer;
  
  namespace Shared {
  
  class FunctionApp : public ExpressionFieldDelegateApp {
  public:
    class Snapshot : public ::App::Snapshot, public TabViewDataSource {
    public:
      Snapshot();
      CurveViewCursor * cursor();
      uint32_t * modelVersion();
      uint32_t * rangeVersion();
      Poincare::Expression::AngleUnit * angleUnitVersion();
      Interval * interval();
      int * indexFunctionSelectedByCursor();
      void reset() override;
    protected:
      CurveViewCursor m_cursor;
      Interval m_interval;
    private:
      int m_indexFunctionSelectedByCursor;
      uint32_t m_modelVersion;
      uint32_t m_rangeVersion;
      Poincare::Expression::AngleUnit m_angleUnitVersion;
   };
    virtual ~FunctionApp() = default;
    virtual InputViewController * inputViewController() = 0;
    void willBecomeInactive() override;
  protected:
    FunctionApp(Container * container, Snapshot * snapshot, ViewController * rootViewController);
  };
  
  }
  
  #endif