Numworks Epsilon  1.4.1
Graphing Calculator Operating System
Graph::CalculationGraphController Class Referenceabstract

#include <calculation_graph_controller.h>

Inheritance diagram for Graph::CalculationGraphController:
ViewController Shared::FunctionBannerDelegate Responder Graph::IntersectionGraphController Graph::MaximumGraphController Graph::MinimumGraphController Graph::RootGraphController

Public Member Functions

 CalculationGraphController (Responder *parentResponder, GraphView *graphView, BannerView *bannerView, Shared::InteractiveCurveViewRange *curveViewRange, Shared::CurveViewCursor *cursor, I18n::Message defaultMessage)
 
Viewview () override
 
void viewWillAppear () override
 
bool handleEvent (Ion::Events::Event event) override
 
void setFunction (CartesianFunction *function)
 
- Public Member Functions inherited from ViewController
 ViewController (Responder *parentResponder)
 
virtual const char * title ()
 
virtual void viewDidDisappear ()
 
virtual DisplayParameter displayParameter ()
 
- Public Member Functions inherited from Responder
 Responder (Responder *parentResponder)
 
virtual void didBecomeFirstResponder ()
 
virtual void willResignFirstResponder ()
 
virtual void didEnterResponderChain (Responder *previousFirstResponder)
 
virtual void willExitResponderChain (Responder *nextFirstResponder)
 
ResponderparentResponder () const
 
RespondercommonAncestorWith (Responder *responder)
 
void setParentResponder (Responder *responder)
 
Appapp ()
 
virtual Toolboxtoolbox ()
 

Protected Member Functions

BannerViewbannerView () override
 
virtual void reloadBannerView ()
 
bool moveCursor (int direction)
 
CartesianFunction::Point computeNewPointOfInteresetFromAbscissa (double start, int direction)
 
virtual CartesianFunction::Point computeNewPointOfInterest (double start, double step, double max, Poincare::Context *context)=0
 
- Protected Member Functions inherited from Shared::FunctionBannerDelegate
void reloadBannerViewForCursorOnFunction (CurveViewCursor *cursor, Function *function, char symbol)
 

Protected Attributes

GraphViewm_graphView
 
BannerViewm_bannerView
 
Shared::InteractiveCurveViewRangem_graphRange
 
Shared::CurveViewCursorm_cursor
 
CartesianFunctionm_function
 
MessageTextView m_defaultBannerView
 
bool m_isActive
 

Static Protected Attributes

static constexpr float k_cursorTopMarginRatio = 0.07f
 
static constexpr float k_cursorBottomMarginRatio = 0.15f
 

Additional Inherited Members

- Public Types inherited from ViewController
enum  DisplayParameter { DisplayParameter::Default, DisplayParameter::DoNotShowOwnTitle, DisplayParameter::WantsMaximumSpace }
 
- Static Public Attributes inherited from Shared::FunctionBannerDelegate
static constexpr int k_maxNumberOfCharacters = 50
 
static constexpr int k_maxDigitLegendLength = 11
 

Detailed Description

Definition at line 13 of file calculation_graph_controller.h.

Constructor & Destructor Documentation

◆ CalculationGraphController()

Graph::CalculationGraphController::CalculationGraphController ( Responder parentResponder,
GraphView graphView,
BannerView bannerView,
Shared::InteractiveCurveViewRange curveViewRange,
Shared::CurveViewCursor cursor,
I18n::Message  defaultMessage 
)

Definition at line 9 of file calculation_graph_controller.cpp.

Member Function Documentation

◆ bannerView()

BannerView* Graph::CalculationGraphController::bannerView ( )
inlineoverrideprotectedvirtual

Implements Shared::FunctionBannerDelegate.

Definition at line 23 of file calculation_graph_controller.h.

◆ computeNewPointOfInteresetFromAbscissa()

CartesianFunction::Point Graph::CalculationGraphController::computeNewPointOfInteresetFromAbscissa ( double  start,
int  direction 
)
protected

Definition at line 79 of file calculation_graph_controller.cpp.

◆ computeNewPointOfInterest()

virtual CartesianFunction::Point Graph::CalculationGraphController::computeNewPointOfInterest ( double  start,
double  step,
double  max,
Poincare::Context context 
)
protectedpure virtual

◆ handleEvent()

bool Graph::CalculationGraphController::handleEvent ( Ion::Events::Event  event)
overridevirtual

Reimplemented from Responder.

Definition at line 42 of file calculation_graph_controller.cpp.

◆ moveCursor()

bool Graph::CalculationGraphController::moveCursor ( int  direction)
protected

Definition at line 69 of file calculation_graph_controller.cpp.

◆ reloadBannerView()

void Graph::CalculationGraphController::reloadBannerView ( )
protectedvirtual

Definition at line 64 of file calculation_graph_controller.cpp.

◆ setFunction()

void Graph::CalculationGraphController::setFunction ( CartesianFunction function)

Definition at line 59 of file calculation_graph_controller.cpp.

◆ view()

View * Graph::CalculationGraphController::view ( )
overridevirtual

Implements ViewController.

Definition at line 21 of file calculation_graph_controller.cpp.

◆ viewWillAppear()

void Graph::CalculationGraphController::viewWillAppear ( )
overridevirtual

Reimplemented from ViewController.

Definition at line 25 of file calculation_graph_controller.cpp.

Member Data Documentation

◆ k_cursorBottomMarginRatio

constexpr float Graph::CalculationGraphController::k_cursorBottomMarginRatio = 0.15f
staticprotected

Definition at line 22 of file calculation_graph_controller.h.

◆ k_cursorTopMarginRatio

constexpr float Graph::CalculationGraphController::k_cursorTopMarginRatio = 0.07f
staticprotected

Definition at line 21 of file calculation_graph_controller.h.

◆ m_bannerView

BannerView* Graph::CalculationGraphController::m_bannerView
protected

Definition at line 29 of file calculation_graph_controller.h.

◆ m_cursor

Shared::CurveViewCursor* Graph::CalculationGraphController::m_cursor
protected

Definition at line 31 of file calculation_graph_controller.h.

◆ m_defaultBannerView

MessageTextView Graph::CalculationGraphController::m_defaultBannerView
protected

Definition at line 33 of file calculation_graph_controller.h.

◆ m_function

CartesianFunction* Graph::CalculationGraphController::m_function
protected

Definition at line 32 of file calculation_graph_controller.h.

◆ m_graphRange

Shared::InteractiveCurveViewRange* Graph::CalculationGraphController::m_graphRange
protected

Definition at line 30 of file calculation_graph_controller.h.

◆ m_graphView

GraphView* Graph::CalculationGraphController::m_graphView
protected

Definition at line 28 of file calculation_graph_controller.h.

◆ m_isActive

bool Graph::CalculationGraphController::m_isActive
protected

Definition at line 34 of file calculation_graph_controller.h.


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