[apps/shared] Namespace shared

Change-Id: I6dec7ce900bb4e801a25c567fe5e242cb744cf29
This commit is contained in:
Émilie Feral
2017-02-06 15:07:34 +01:00
parent b06c54856f
commit 23026b6718
92 changed files with 238 additions and 57 deletions

View File

@@ -2,6 +2,7 @@
#include "calculation_icon.h"
using namespace Poincare;
using namespace Shared;
namespace Calculation {

View File

@@ -9,7 +9,7 @@
namespace Calculation {
class App : public TextFieldDelegateApp {
class App : public Shared::TextFieldDelegateApp {
public:
App(Container * container, Poincare::Context * context);
Poincare::Context * localContext() override;

View File

@@ -1,6 +1,8 @@
#include "app.h"
#include "graph_icon.h"
using namespace Poincare;
using namespace Shared;
namespace Graph {

View File

@@ -11,7 +11,7 @@
namespace Graph {
class App : public TextFieldDelegateApp {
class App : public Shared::TextFieldDelegateApp {
public:
App(Container * container, Poincare::Context * context);
InputViewController * inputViewController();

View File

@@ -6,7 +6,7 @@
namespace Graph {
class BannerView : public ::BannerView {
class BannerView : public Shared::BannerView {
public:
BannerView();
void setDisplayDerivative(bool displayDerivative);

View File

@@ -1,6 +1,8 @@
#include "curve_parameter_controller.h"
#include <assert.h>
using namespace Shared;
namespace Graph {
CurveParameterController::CurveParameterController(InteractiveCurveViewRange * graphRange, BannerView * bannerView, CurveViewCursor * cursor) :

View File

@@ -12,7 +12,7 @@ namespace Graph {
class CurveParameterController : public ViewController, public SimpleListViewDataSource {
public:
CurveParameterController(InteractiveCurveViewRange * graphRange, BannerView * bannerView, CurveViewCursor * cursor);
CurveParameterController(Shared::InteractiveCurveViewRange * graphRange, BannerView * bannerView, Shared::CurveViewCursor * cursor);
View * view() override;
const char * title() const override;

View File

@@ -3,6 +3,8 @@
#include "../../apps_container.h"
#include <assert.h>
using namespace Shared;
namespace Graph {
GoToParameterController::GoToParameterController(Responder * parentResponder, InteractiveCurveViewRange * graphRange, CurveViewCursor * cursor) :

View File

@@ -8,9 +8,9 @@
#include "../../shared/interactive_curve_view_range.h"
namespace Graph {
class GoToParameterController : public FloatParameterController {
class GoToParameterController : public Shared::FloatParameterController {
public:
GoToParameterController(Responder * parentResponder, InteractiveCurveViewRange * graphRange, CurveViewCursor * cursor);
GoToParameterController(Responder * parentResponder, Shared::InteractiveCurveViewRange * graphRange, Shared::CurveViewCursor * cursor);
const char * title() const override;
int numberOfRows() override;
TableViewCell * reusableCell(int index) override;
@@ -22,8 +22,8 @@ private:
void setParameterAtIndex(int parameterIndex, float f) override;
char m_draftTextBuffer[EditableTextMenuListCell::k_bufferLength];
EditableTextMenuListCell m_abscisseCell;
InteractiveCurveViewRange * m_graphRange;
CurveViewCursor * m_cursor;
Shared::InteractiveCurveViewRange * m_graphRange;
Shared::CurveViewCursor * m_cursor;
Function * m_function;
};

View File

@@ -6,6 +6,7 @@
#include <float.h>
using namespace Poincare;
using namespace Shared;
namespace Graph {

View File

@@ -10,7 +10,7 @@
#include "../function_store.h"
namespace Graph {
class GraphController : public InteractiveCurveViewController, public InteractiveCurveViewRangeDelegate {
class GraphController : public Shared::InteractiveCurveViewController, public Shared::InteractiveCurveViewRangeDelegate {
public:
GraphController(Responder * parentResponder, FunctionStore * functionStore, HeaderViewController * header);
void didBecomeFirstResponder() override;
@@ -19,7 +19,7 @@ public:
bool isEmpty() const override;
const char * emptyMessage() override;
bool didChangeRange(InteractiveCurveViewRange * interactiveCurveViewRange) override;
bool didChangeRange(Shared::InteractiveCurveViewRange * interactiveCurveViewRange) override;
private:
constexpr static float k_cursorTopMarginRatio = 0.025f; // (cursorHeight/2)/graphViewHeight
constexpr static float k_cursorRightMarginRatio = 0.015f; // (cursorWidth/2)/graphViewWidth
@@ -41,11 +41,11 @@ private:
bool moveCursorVertically(int direction) override;
uint32_t modelVersion() override;
uint32_t rangeVersion() override;
InteractiveCurveViewRange * interactiveCurveViewRange() override;
CurveView * curveView() override;
Shared::InteractiveCurveViewRange * interactiveCurveViewRange() override;
Shared::CurveView * curveView() override;
BannerView m_bannerView;
GraphView m_view;
InteractiveCurveViewRange m_graphRange;
Shared::InteractiveCurveViewRange m_graphRange;
InitialisationParameterController m_initialisationParameterController;
CurveParameterController m_curveParameterController;
FunctionStore * m_functionStore;

View File

@@ -3,11 +3,12 @@
#include <math.h>
#include <float.h>
using namespace Poincare;
using namespace Shared;
namespace Graph {
GraphView::GraphView(FunctionStore * functionStore, InteractiveCurveViewRange * graphRange,
CurveViewCursor * cursor, ::BannerView * bannerView, View * cursorView) :
CurveViewCursor * cursor, BannerView * bannerView, View * cursorView) :
CurveView(graphRange, cursor, bannerView, cursorView),
m_functionStore(functionStore),
m_context(nullptr),

View File

@@ -10,10 +10,10 @@
namespace Graph {
class GraphView : public CurveView {
class GraphView : public Shared::CurveView {
public:
GraphView(FunctionStore * functionStore, InteractiveCurveViewRange * graphRange,
CurveViewCursor * cursor, ::BannerView * bannerView, View * cursorView);
GraphView(FunctionStore * functionStore, Shared::InteractiveCurveViewRange * graphRange,
Shared::CurveViewCursor * cursor, Shared::BannerView * bannerView, View * cursorView);
void drawRect(KDContext * ctx, KDRect rect) const override;
void setContext(Poincare::Context * context);
void setPreferences(Preferences * preferences);

View File

@@ -3,6 +3,8 @@
#include <assert.h>
#include <math.h>
using namespace Shared;
namespace Graph {
InitialisationParameterController::InitialisationParameterController(Responder * parentResponder, InteractiveCurveViewRange * graphRange) :

View File

@@ -8,7 +8,7 @@ namespace Graph {
class InitialisationParameterController : public ViewController, public SimpleListViewDataSource {
public:
InitialisationParameterController(Responder * parentResponder, InteractiveCurveViewRange * graphRange);
InitialisationParameterController(Responder * parentResponder, Shared::InteractiveCurveViewRange * graphRange);
View * view() override;
const char * title() const override;
bool handleEvent(Ion::Events::Event event) override;
@@ -22,7 +22,7 @@ private:
constexpr static int k_totalNumberOfCells = 4;
MenuListCell m_cells[k_totalNumberOfCells];
SelectableTableView m_selectableTableView;
InteractiveCurveViewRange * m_graphRange;
Shared::InteractiveCurveViewRange * m_graphRange;
};
}

View File

@@ -2,6 +2,8 @@
#include "../app.h"
#include <assert.h>
using namespace Shared;
namespace Graph {
IntervalParameterController::IntervalParameterController(Responder * parentResponder, Interval * interval) :

View File

@@ -7,7 +7,7 @@
namespace Graph {
class IntervalParameterController : public FloatParameterController {
class IntervalParameterController : public Shared::FloatParameterController {
public:
IntervalParameterController(Responder * parentResponder, Interval * interval);
Interval * interval();

View File

@@ -13,7 +13,7 @@
namespace Graph {
class ValuesController : public EditableCellTableViewController, public HeaderViewDelegate, public AlternateEmptyViewDelegate {
class ValuesController : public Shared::EditableCellTableViewController, public HeaderViewDelegate, public AlternateEmptyViewDelegate {
public:
ValuesController(Responder * parentResponder, FunctionStore * functionStore, HeaderViewController * header);
const char * title() const override;

View File

@@ -1,6 +1,8 @@
#include "app.h"
#include "probability_icon.h"
using namespace Shared;
namespace Probability {
App::App(Container * container) :

View File

@@ -8,7 +8,7 @@
namespace Probability {
class App : public TextFieldDelegateApp {
class App : public Shared::TextFieldDelegateApp {
public:
App(Container * container);
private:

View File

@@ -6,7 +6,7 @@
namespace Probability {
class Law : public CurveViewRange {
class Law : public Shared::CurveViewRange {
public:
enum class Type : uint8_t{
Binomial,

View File

@@ -2,6 +2,8 @@
#include <assert.h>
#include <math.h>
using namespace Shared;
namespace Probability {
LawCurveView::LawCurveView() :

View File

@@ -10,7 +10,7 @@
namespace Probability {
class LawCurveView : public CurveView {
class LawCurveView : public Shared::CurveView {
public:
LawCurveView();
void setLaw(Law * law);

View File

@@ -8,7 +8,7 @@
namespace Probability {
class ParametersController : public FloatParameterController {
class ParametersController : public Shared::FloatParameterController {
public:
ParametersController(Responder * parentResponder);
View * view() override;

View File

@@ -1,6 +1,8 @@
#include "app.h"
#include "regression_icon.h"
using namespace Shared;
namespace Regression {
App::App(Container * container) :

View File

@@ -10,7 +10,7 @@
namespace Regression {
class App : public TextFieldDelegateApp {
class App : public Shared::TextFieldDelegateApp {
public:
App(Container * container);
private:

View File

@@ -6,7 +6,7 @@
namespace Regression {
class BannerView : public ::BannerView {
class BannerView : public Shared::BannerView {
public:
BannerView();
private:

View File

@@ -1,6 +1,8 @@
#include "go_to_parameter_controller.h"
#include <assert.h>
using namespace Shared;
namespace Regression {
GoToParameterController::GoToParameterController(Responder * parentResponder, Store * store, CurveViewCursor * cursor) :

View File

@@ -8,9 +8,9 @@
namespace Regression {
class GoToParameterController : public FloatParameterController {
class GoToParameterController : public Shared::FloatParameterController {
public:
GoToParameterController(Responder * parentResponder, Store * store, CurveViewCursor * cursor);
GoToParameterController(Responder * parentResponder, Store * store, Shared::CurveViewCursor * cursor);
void setXPrediction(bool xPrediction);
const char * title() const override;
int numberOfRows() override;
@@ -24,7 +24,7 @@ private:
char m_draftTextBuffer[EditableTextMenuListCell::k_bufferLength];
EditableTextMenuListCell m_abscisseCell;
Store * m_store;
CurveViewCursor * m_cursor;
Shared::CurveViewCursor * m_cursor;
bool m_xPrediction;
};

View File

@@ -2,6 +2,7 @@
#include "../apps_container.h"
using namespace Poincare;
using namespace Shared;
namespace Regression {

View File

@@ -11,7 +11,7 @@
namespace Regression {
class GraphController : public InteractiveCurveViewController {
class GraphController : public Shared::InteractiveCurveViewController {
public:
GraphController(Responder * parentResponder, HeaderViewController * headerViewController, Store * store);
@@ -26,8 +26,8 @@ private:
constexpr static int k_maxNumberOfCharacters = 8;
BannerView * bannerView() override;
CurveView * curveView() override;
InteractiveCurveViewRange * interactiveCurveViewRange() override;
Shared::CurveView * curveView() override;
Shared::InteractiveCurveViewRange * interactiveCurveViewRange() override;
bool handleEnter() override;
void reloadBannerView() override;
void initRangeParameters() override;

View File

@@ -2,9 +2,11 @@
#include <assert.h>
#include <math.h>
using namespace Shared;
namespace Regression {
GraphView::GraphView(Store * store, CurveViewCursor * cursor, ::BannerView * bannerView, View * cursorView) :
GraphView::GraphView(Store * store, CurveViewCursor * cursor, BannerView * bannerView, View * cursorView) :
CurveView(store, cursor, bannerView, cursorView),
m_store(store)
{

View File

@@ -8,9 +8,9 @@
namespace Regression {
class GraphView : public CurveView {
class GraphView : public Shared::CurveView {
public:
GraphView(Store * store, CurveViewCursor * cursor, ::BannerView * bannerView, View * cursorView);
GraphView(Store * store, Shared::CurveViewCursor * cursor, Shared::BannerView * bannerView, View * cursorView);
void drawRect(KDContext * ctx, KDRect rect) const override;
private:
char * label(Axis axis, int index) const override;

View File

@@ -2,6 +2,8 @@
#include <assert.h>
#include <math.h>
using namespace Shared;
namespace Regression {
InitialisationParameterController::InitialisationParameterController(Responder * parentResponder, Store * store) :

View File

@@ -1,6 +1,8 @@
#include "prediction_parameter_controller.h"
#include <assert.h>
using namespace Shared;
namespace Regression {
PredictionParameterController::PredictionParameterController(Responder * parentResponder, Store * store, CurveViewCursor * cursor) :

View File

@@ -10,7 +10,7 @@ namespace Regression {
class PredictionParameterController : public ViewController, public SimpleListViewDataSource {
public:
PredictionParameterController(Responder * parentResponder, Store * store, CurveViewCursor * cursor);
PredictionParameterController(Responder * parentResponder, Store * store, Shared::CurveViewCursor * cursor);
View * view() override;
const char * title() const override;
bool handleEvent(Ion::Events::Event event) override;

View File

@@ -4,6 +4,8 @@
#include <math.h>
#include <string.h>
using namespace Shared;
namespace Regression {
Store::Store() :

View File

@@ -6,10 +6,10 @@
namespace Regression {
class Store : public InteractiveCurveViewRange, public FloatPairStore, public InteractiveCurveViewRangeDelegate {
class Store : public Shared::InteractiveCurveViewRange, public Shared::FloatPairStore, public Shared::InteractiveCurveViewRangeDelegate {
public:
Store();
bool didChangeRange(InteractiveCurveViewRange * interactiveCurveViewRange) override;
bool didChangeRange(Shared::InteractiveCurveViewRange * interactiveCurveViewRange) override;
// Dots
/* Return the closest dot to x above the regression curve if direction > 0,

View File

@@ -7,11 +7,12 @@
#include <assert.h>
using namespace Poincare;
using namespace Shared;
namespace Regression {
StoreController::StoreController(Responder * parentResponder, Store * store, HeaderViewController * header) :
::StoreController(parentResponder, store, header),
Shared::StoreController(parentResponder, store, header),
m_titleCells{EvenOddExpressionCell(0.5f, 0.5f), EvenOddExpressionCell(0.5f, 0.5f)}
{
m_titleLayout[0] = new BaselineRelativeLayout(new StringLayout("X", 1, KDText::FontSize::Small), new StringLayout("i", 1, KDText::FontSize::Small), BaselineRelativeLayout::Type::Subscript);

View File

@@ -7,7 +7,7 @@
namespace Regression {
class StoreController : public ::StoreController {
class StoreController : public Shared::StoreController {
public:
StoreController(Responder * parentResponder, Store * store, HeaderViewController * header);
void willDisplayCellAtLocation(TableViewCell * cell, int i, int j) override;

View File

@@ -2,6 +2,8 @@
#include <string.h>
#include <assert.h>
namespace Shared {
void BannerView::setLegendAtIndex(char * text, int index) {
/* The layout of the banner's subviews depends on their content.
* Indeed, we're using a "centered text" algorithm to layout the subviews.
@@ -83,3 +85,5 @@ int BannerView::numberOfLines() {
}
return lineNumber+1;
}
}

View File

@@ -3,6 +3,8 @@
#include <escher.h>
namespace Shared {
class BannerView : public View {
public:
void setLegendAtIndex(char * text, int index);
@@ -15,4 +17,6 @@ private:
virtual TextView * textViewAtIndex(int i) = 0;
};
}
#endif

View File

@@ -1,8 +1,12 @@
#include "cursor_view.h"
namespace Shared {
void CursorView::drawRect(KDContext * ctx, KDRect rect) const {
KDCoordinate width = bounds().width();
KDCoordinate height = bounds().height();
ctx->fillRect(KDRect(width/2, 0, 1, height), KDColorBlack);
ctx->fillRect(KDRect(0, height/2, width, 1), KDColorBlack);
}
}

View File

@@ -3,10 +3,14 @@
#include <escher.h>
namespace Shared {
class CursorView : public View {
public:
using View::View;
void drawRect(KDContext * ctx, KDRect rect) const override;
};
#endif
}
#endif

View File

@@ -7,6 +7,8 @@
using namespace Poincare;
namespace Shared {
CurveView::CurveView(CurveViewRange * curveViewRange, CurveViewCursor * curveViewCursor, BannerView * bannerView,
View * cursorView) :
View(),
@@ -418,3 +420,5 @@ View * CurveView::subviewAtIndex(int index) {
}
return m_cursorView;
}
}

View File

@@ -8,6 +8,8 @@
#include "banner_view.h"
#include <math.h>
namespace Shared {
class CurveView : public View {
public:
typedef void Model;
@@ -80,4 +82,6 @@ private:
uint32_t m_drawnRangeVersion;
};
}
#endif

View File

@@ -1,6 +1,8 @@
#include "curve_view_cursor.h"
#include <math.h>
namespace Shared {
CurveViewCursor::CurveViewCursor() :
m_x(NAN),
m_y(NAN)
@@ -19,3 +21,5 @@ void CurveViewCursor::moveTo(float x, float y) {
m_x = x;
m_y = y;
}
}

View File

@@ -1,6 +1,7 @@
#ifndef SHARED_CURVE_VIEW_CURSOR_H
#define SHARED_CURVE_VIEW_CURSOR_H
namespace Shared {
class CurveViewCursor {
public:
@@ -13,4 +14,6 @@ private:
float m_y;
};
}
#endif

View File

@@ -5,6 +5,8 @@
#include <stddef.h>
#include <float.h>
namespace Shared {
uint32_t CurveViewRange::rangeChecksum() {
float data[4] = {xMin(), xMax(), yMin(), yMax()};
size_t dataLengthInBytes = 4*sizeof(float);
@@ -36,3 +38,5 @@ float CurveViewRange::computeGridUnit(Axis axis, float min, float max) {
}
return a*powf(10,b);
}
}

View File

@@ -3,6 +3,8 @@
#include <stdint.h>
namespace Shared {
class CurveViewRange {
public:
enum class Axis {
@@ -31,4 +33,6 @@ private:
constexpr static float k_largeGridUnitMantissa = 5.0f;
};
}
#endif

View File

@@ -6,6 +6,8 @@
using namespace Poincare;
namespace Shared {
EditableCellTableViewController::EditableCellTableViewController(Responder * parentResponder, KDCoordinate topMargin,
KDCoordinate rightMargin, KDCoordinate bottomMargin, KDCoordinate leftMargin) :
ViewController(parentResponder),
@@ -100,3 +102,5 @@ void EditableCellTableViewController::didBecomeFirstResponder() {
}
app()->setFirstResponder(&m_selectableTableView);
}
}

View File

@@ -4,6 +4,8 @@
#include <escher.h>
#include <poincare.h>
namespace Shared {
class EditableCellTableViewController : public ViewController, public TableViewDataSource, public SelectableTableViewDelegate, public TextFieldDelegate {
public:
EditableCellTableViewController(Responder * parentResponder, KDCoordinate topMargin,
@@ -32,4 +34,6 @@ private:
virtual int maxNumberOfElements() const = 0;
};
}
#endif

View File

@@ -5,6 +5,8 @@
using namespace Poincare;
namespace Shared {
const char * ExpressionTextFieldDelegate::XNT() {
return "x";
}
@@ -77,3 +79,5 @@ bool ExpressionTextFieldDelegate::textFieldDidReceiveEvent(TextField * textField
}
return false;
}
}

View File

@@ -4,6 +4,8 @@
#include <escher.h>
#include <poincare.h>
namespace Shared {
class ExpressionTextFieldDelegate : public TextFieldDelegate {
public:
virtual Poincare::Context * localContext() = 0;
@@ -13,4 +15,6 @@ private:
bool cursorInToken(TextField * textField, const char * token);
};
}
#endif

View File

@@ -4,6 +4,8 @@
#include <stddef.h>
#include <ion.h>
namespace Shared {
FloatPairStore::FloatPairStore() :
m_numberOfPairs(0)
{
@@ -65,3 +67,5 @@ uint32_t FloatPairStore::storeChecksum() {
float FloatPairStore::defaultValue(int i) {
return 0.0f;
}
}

View File

@@ -3,6 +3,8 @@
#include <stdint.h>
namespace Shared {
class FloatPairStore {
public:
FloatPairStore();
@@ -23,4 +25,6 @@ protected:
float m_data[2][k_maxNumberOfPairs];
};
}
#endif

View File

@@ -6,6 +6,8 @@
using namespace Poincare;
namespace Shared {
FloatParameterController::FloatParameterController(Responder * parentResponder) :
ViewController(parentResponder),
m_selectableTableView(SelectableTableView(this, this, Metric::TopMargin, Metric::RightMargin,
@@ -58,3 +60,5 @@ void FloatParameterController::tableViewDidChangeSelection(SelectableTableView *
KDCoordinate FloatParameterController::cellHeight() {
return Metric::ParameterCellHeight;
}
}

View File

@@ -4,6 +4,8 @@
#include <escher.h>
#include "expression_text_field_delegate.h"
namespace Shared {
/* This controller edits float parameter of any model (given through
* parameterAtIndex and setParameterAtIndex). */
@@ -25,4 +27,6 @@ private:
virtual void setParameterAtIndex(int parameterIndex, float f) = 0;
};
}
#endif

View File

@@ -5,6 +5,8 @@
using namespace Poincare;
namespace Shared {
InteractiveCurveViewController::InteractiveCurveViewController(Responder * parentResponder, HeaderViewController * header, InteractiveCurveViewRange * interactiveRange, CurveView * curveView) :
ViewController(parentResponder),
HeaderViewDelegate(header),
@@ -153,3 +155,5 @@ Responder * InteractiveCurveViewController::tabController() const{
StackViewController * InteractiveCurveViewController::stackController() const{
return (StackViewController *)(parentResponder()->parentResponder()->parentResponder());
}
}

View File

@@ -9,6 +9,8 @@
#include "range_parameter_controller.h"
#include "zoom_parameter_controller.h"
namespace Shared {
class InteractiveCurveViewController : public ViewController, public HeaderViewDelegate, public AlternateEmptyViewDelegate {
public:
InteractiveCurveViewController(Responder * parentResponder, HeaderViewController * header, InteractiveCurveViewRange * interactiveRange, CurveView * curveView);
@@ -56,4 +58,6 @@ private:
Poincare::Expression::DisplayMode m_displayModeVersion;
};
}
#endif

View File

@@ -6,6 +6,8 @@
using namespace Poincare;
namespace Shared {
InteractiveCurveViewRange::InteractiveCurveViewRange(CurveViewCursor * cursor, InteractiveCurveViewRangeDelegate * delegate) :
MemoizedCurveViewRange(),
m_yAuto(true),
@@ -163,3 +165,5 @@ void InteractiveCurveViewRange::panToMakePointVisible(float x, float y, float to
m_yAuto = false;
}
}
}

View File

@@ -7,6 +7,8 @@
#include "curve_view_cursor.h"
#include "interactive_curve_view_range_delegate.h"
namespace Shared {
class InteractiveCurveViewRange : public MemoizedCurveViewRange {
public:
InteractiveCurveViewRange(CurveViewCursor * cursor, InteractiveCurveViewRangeDelegate * delegate);
@@ -39,4 +41,6 @@ typedef void (InteractiveCurveViewRange::*ParameterSetterPointer)(float);
typedef float (InteractiveCurveViewRange::*ParameterGetterPointer)();
typedef void (InteractiveCurveViewRange::*RangeMethodPointer)();
}
#endif

View File

@@ -1,6 +1,8 @@
#ifndef SHARED_INTERACTIVE_CURVE_VIEW_DELEGATE_H
#define SHARED_INTERACTIVE_CURVE_VIEW_DELEGATE_H
namespace Shared {
class InteractiveCurveViewRange;
class InteractiveCurveViewRangeDelegate {
@@ -8,4 +10,6 @@ public:
virtual bool didChangeRange(InteractiveCurveViewRange * interactiveCurveViewRange) = 0;
};
}
#endif

View File

@@ -3,6 +3,8 @@
#include <assert.h>
#include <ion.h>
namespace Shared {
MemoizedCurveViewRange::MemoizedCurveViewRange() :
m_xMin(-10.0f),
m_xMax(10.0f),
@@ -68,3 +70,5 @@ void MemoizedCurveViewRange::setYMax(float yMax) {
}
m_yGridUnit = computeGridUnit(Axis::Y, m_yMin, m_yMax);
}
}

View File

@@ -3,6 +3,7 @@
#include "curve_view_range.h"
namespace Shared {
class MemoizedCurveViewRange : public CurveViewRange {
public:
@@ -29,4 +30,6 @@ protected:
float m_yGridUnit;
};
}
#endif

View File

@@ -4,6 +4,8 @@
using namespace Poincare;
namespace Shared {
RangeParameterController::RangeParameterController(Responder * parentResponder, InteractiveCurveViewRange * interactiveRange) :
FloatParameterController(parentResponder),
m_interactiveRange(interactiveRange),
@@ -104,3 +106,5 @@ TableViewCell * RangeParameterController::reusableCell(int index) {
int RangeParameterController::reusableCellCount() {
return k_numberOfTextCell+1;
}
}

View File

@@ -5,6 +5,8 @@
#include "interactive_curve_view_range.h"
#include "float_parameter_controller.h"
namespace Shared {
class RangeParameterController : public FloatParameterController {
public:
RangeParameterController(Responder * parentResponder, InteractiveCurveViewRange * interactiveCurveViewRange);
@@ -26,4 +28,6 @@ private:
SwitchMenuListCell m_yAutoCell;
};
}
#endif

View File

@@ -5,6 +5,8 @@
using namespace Poincare;
namespace Shared {
StoreController::StoreController(Responder * parentResponder, FloatPairStore * store, HeaderViewController * header) :
EditableCellTableViewController(parentResponder, Metric::TopMargin, Metric::RightMargin, Metric::BottomMargin, Metric::LeftMargin),
HeaderViewDelegate(header),
@@ -116,3 +118,5 @@ int StoreController::numberOfElements() {
int StoreController::maxNumberOfElements() const {
return FloatPairStore::k_maxNumberOfPairs;
}
}

View File

@@ -6,6 +6,8 @@
#include "store_parameter_controller.h"
#include "editable_cell_table_view_controller.h"
namespace Shared {
class StoreController : public EditableCellTableViewController, public HeaderViewDelegate {
public:
StoreController(Responder * parentResponder, FloatPairStore * store, HeaderViewController * header);
@@ -36,4 +38,6 @@ protected:
StoreParameterController m_storeParameterController;
};
}
#endif

View File

@@ -1,6 +1,8 @@
#include "store_parameter_controller.h"
#include <assert.h>
namespace Shared {
StoreParameterController::StoreParameterController(Responder * parentResponder, FloatPairStore * store) :
ViewController(parentResponder),
m_deleteColumn(MenuListCell((char*)"Effacer la colonne")),
@@ -74,3 +76,5 @@ int StoreParameterController::reusableCellCount() {
KDCoordinate StoreParameterController::cellHeight() {
return Metric::ParameterCellHeight;
}
}

View File

@@ -4,6 +4,8 @@
#include <escher.h>
#include "float_pair_store.h"
namespace Shared {
class StoreParameterController : public ViewController, public SimpleListViewDataSource {
public:
StoreParameterController(Responder * parentResponder, FloatPairStore * store);
@@ -26,4 +28,6 @@ private:
bool m_xColumnSelected;
};
}
#endif

View File

@@ -3,6 +3,8 @@
using namespace Poincare;
namespace Shared {
TextFieldDelegateApp::TextFieldDelegateApp(Container * container, ViewController * rootViewController, const char * name,
const char * upperName, const Image * icon) :
::App(container, rootViewController, name, upperName, icon),
@@ -15,3 +17,4 @@ Context * TextFieldDelegateApp::localContext() {
return appsContainer->globalContext();
}
}

View File

@@ -4,10 +4,14 @@
#include <escher.h>
#include "expression_text_field_delegate.h"
namespace Shared {
class TextFieldDelegateApp : public ::App, public ExpressionTextFieldDelegate {
public:
TextFieldDelegateApp(Container * container, ViewController * rootViewController, const char * name = nullptr, const char * upperName = nullptr, const Image * icon = nullptr);
virtual Poincare::Context * localContext() override;
};
}
#endif

View File

@@ -2,6 +2,8 @@
#include <assert.h>
#include <math.h>
namespace Shared {
ZoomParameterController::ZoomParameterController(Responder * parentResponder, InteractiveCurveViewRange * interactiveRange, CurveView * curveView) :
ViewController(parentResponder),
m_contentView(ContentView(curveView)),
@@ -117,3 +119,5 @@ void ZoomParameterController::ContentView::LegendView::layoutSubviews() {
m_legends[3+row].setFrame(KDRect(width/2, row*heigth/3, width/2 - k_tokenWidth, heigth/3));
}
}
}

View File

@@ -5,6 +5,8 @@
#include "interactive_curve_view_range.h"
#include "curve_view.h"
namespace Shared {
class ZoomParameterController : public ViewController {
public:
ZoomParameterController(Responder * parentResponder, InteractiveCurveViewRange * interactiveCurveViewRange, CurveView * curveView);
@@ -41,4 +43,6 @@ private:
InteractiveCurveViewRange * m_interactiveRange;
};
}
#endif

View File

@@ -1,6 +1,8 @@
#include "app.h"
#include "stat_icon.h"
using namespace Shared;
namespace Statistics {
App::App(Container * container) :

View File

@@ -11,7 +11,7 @@
namespace Statistics {
class App : public TextFieldDelegateApp {
class App : public Shared::TextFieldDelegateApp {
public:
App(Container * container);
private:

View File

@@ -6,7 +6,7 @@
namespace Statistics {
class BoxBannerView : public ::BannerView {
class BoxBannerView : public Shared::BannerView {
public:
BoxBannerView();
private:

View File

@@ -6,7 +6,7 @@
namespace Statistics {
class BoxRange : public CurveViewRange {
class BoxRange : public Shared::CurveViewRange {
public:
BoxRange(Store * store);
float xMin() override;

View File

@@ -2,9 +2,11 @@
#include <assert.h>
#include <math.h>
using namespace Shared;
namespace Statistics {
BoxView::BoxView(Store * store, ::BannerView * bannerView) :
BoxView::BoxView(Store * store, BannerView * bannerView) :
CurveView(&m_boxRange, nullptr, bannerView, nullptr),
m_store(store),
m_boxRange(BoxRange(store)),

View File

@@ -9,7 +9,7 @@
namespace Statistics {
class BoxView : public CurveView {
class BoxView : public Shared::CurveView {
public:
enum class Quantile : int {
None = -1,
@@ -19,7 +19,7 @@ public:
ThirdQuartile = 3,
Max = 4
};
BoxView(Store * store, ::BannerView * bannerView);
BoxView(Store * store, Shared::BannerView * bannerView);
void reload() override;
Quantile selectedQuantile();
bool selectQuantile(int selectedQuantile);

View File

@@ -6,7 +6,7 @@
namespace Statistics {
class HistogramBannerView : public ::BannerView {
class HistogramBannerView : public Shared::BannerView {
public:
HistogramBannerView();
private:

View File

@@ -5,6 +5,7 @@
#include <float.h>
using namespace Poincare;
using namespace Shared;
namespace Statistics {

View File

@@ -41,7 +41,7 @@ private:
HistogramView m_view;
Button m_settingButton;
Store * m_store;
CurveViewCursor m_cursor;
Shared::CurveViewCursor m_cursor;
uint32_t m_storeVersion;
uint32_t m_barVersion;
uint32_t m_rangeVersion;

View File

@@ -2,6 +2,8 @@
#include "app.h"
#include <assert.h>
using namespace Shared;
namespace Statistics {
HistogramParameterController::HistogramParameterController(Responder * parentResponder, Store * store) :

View File

@@ -7,7 +7,7 @@
namespace Statistics {
class HistogramParameterController : public FloatParameterController {
class HistogramParameterController : public Shared::FloatParameterController {
public:
HistogramParameterController(Responder * parentResponder, Store * store);
const char * title() const override;

View File

@@ -2,9 +2,11 @@
#include <assert.h>
#include <math.h>
using namespace Shared;
namespace Statistics {
HistogramView::HistogramView(Store * store, ::BannerView * bannerView) :
HistogramView::HistogramView(Store * store, BannerView * bannerView) :
CurveView(store, nullptr, bannerView, nullptr),
m_store(store),
m_highlightedBarStart(NAN),

View File

@@ -8,9 +8,9 @@
namespace Statistics {
class HistogramView : public CurveView {
class HistogramView : public Shared::CurveView {
public:
HistogramView(Store * store, ::BannerView * bannerView);
HistogramView(Store * store, Shared::BannerView * bannerView);
void reload() override;
void drawRect(KDContext * ctx, KDRect rect) const override;
void setHighlight(float start, float end);

View File

@@ -5,6 +5,8 @@
#include <string.h>
#include <ion.h>
using namespace Shared;
namespace Statistics {
Store::Store() :

View File

@@ -6,7 +6,7 @@
namespace Statistics {
class Store : public MemoizedCurveViewRange, public FloatPairStore {
class Store : public Shared::MemoizedCurveViewRange, public Shared::FloatPairStore {
public:
Store();
uint32_t barChecksum();

View File

@@ -4,10 +4,12 @@
#include "../constant.h"
#include <assert.h>
using namespace Shared;
namespace Statistics {
StoreController::StoreController(Responder * parentResponder, Store * store, HeaderViewController * header) :
::StoreController(parentResponder, store, header),
Shared::StoreController(parentResponder, store, header),
m_titleCells{EvenOddPointerTextCell(KDText::FontSize::Small), EvenOddPointerTextCell(KDText::FontSize::Small)}
{
}

View File

@@ -7,7 +7,7 @@
namespace Statistics {
class StoreController : public ::StoreController {
class StoreController : public Shared::StoreController {
public:
StoreController(Responder * parentResponder, Store * store, HeaderViewController * header);
void willDisplayCellAtLocation(TableViewCell * cell, int i, int j) override;