[apps] Add headers in all sub tab view for a better rendering

Change-Id: Id9fc1ffac9cbc4bebc9af7daf410f36279555519
This commit is contained in:
Émilie Feral
2017-01-20 10:24:32 +01:00
parent 3555a6306c
commit 4b49be549d
15 changed files with 56 additions and 38 deletions

View File

@@ -10,14 +10,14 @@ App::App(Container * container, Context * context) :
m_listController(ListController(&m_listHeader, &m_functionStore, &m_listHeader)),
m_listHeader(HeaderViewController(nullptr, &m_listController, &m_listController)),
m_listStackViewController(StackViewController(&m_tabViewController, &m_listHeader)),
m_graphController(GraphController(&m_graphHeader, &m_functionStore, &m_graphHeader)),
m_graphHeader(HeaderViewController(&m_graphAlternateEmptyViewController, &m_graphController, &m_graphController)),
m_graphAlternateEmptyViewController(AlternateEmptyViewController(nullptr, &m_graphHeader, &m_graphController)),
m_graphStackViewController(StackViewController(&m_tabViewController, &m_graphAlternateEmptyViewController)),
m_valuesController(&m_valuesHeader, &m_functionStore, &m_valuesHeader),
m_valuesHeader(HeaderViewController(&m_valuesAlternateEmptyViewController, &m_valuesController, &m_valuesController)),
m_valuesAlternateEmptyViewController(AlternateEmptyViewController(nullptr, &m_valuesHeader, &m_valuesController)),
m_valuesStackViewController(StackViewController(&m_tabViewController, &m_valuesAlternateEmptyViewController)),
m_graphController(GraphController(&m_graphAlternateEmptyViewController, &m_functionStore, &m_graphHeader)),
m_graphAlternateEmptyViewController(AlternateEmptyViewController(&m_graphHeader, &m_graphController, &m_graphController)),
m_graphHeader(HeaderViewController(nullptr, &m_graphAlternateEmptyViewController, &m_graphController)),
m_graphStackViewController(StackViewController(&m_tabViewController, &m_graphHeader)),
m_valuesController(&m_valuesAlternateEmptyViewController, &m_functionStore, &m_valuesHeader),
m_valuesAlternateEmptyViewController(AlternateEmptyViewController(&m_valuesHeader, &m_valuesController, &m_valuesController)),
m_valuesHeader(HeaderViewController(nullptr, &m_valuesAlternateEmptyViewController, &m_valuesController)),
m_valuesStackViewController(StackViewController(&m_tabViewController, &m_valuesHeader)),
m_tabViewController(&m_inputViewController, &m_listStackViewController, &m_graphStackViewController, &m_valuesStackViewController),
m_inputViewController(&m_modalViewController, &m_tabViewController, this)
{

View File

@@ -23,12 +23,12 @@ private:
HeaderViewController m_listHeader;
StackViewController m_listStackViewController;
GraphController m_graphController;
HeaderViewController m_graphHeader;
AlternateEmptyViewController m_graphAlternateEmptyViewController;
HeaderViewController m_graphHeader;
StackViewController m_graphStackViewController;
ValuesController m_valuesController;
HeaderViewController m_valuesHeader;
AlternateEmptyViewController m_valuesAlternateEmptyViewController;
HeaderViewController m_valuesHeader;
StackViewController m_valuesStackViewController;
TabViewController m_tabViewController;
InputViewController m_inputViewController;

View File

@@ -100,6 +100,9 @@ ViewController * ValuesController::intervalParameterController() {
}
int ValuesController::numberOfButtons() const {
if (isEmpty()) {
return 0;
}
return 1;
}

View File

@@ -119,6 +119,9 @@ ViewController * InteractiveCurveViewController::zoomParameterController() {
}
int InteractiveCurveViewController::numberOfButtons() const {
if (isEmpty()) {
return 0;
}
return 3;
}

View File

@@ -6,16 +6,17 @@ namespace Regression {
App::App(Container * container) :
TextFieldDelegateApp(container, &m_tabViewController, "Resgression", ImageStore::RegressionIcon),
m_store(),
m_calculationController(CalculationController(&m_calculationAlternateEmptyViewController, &m_store)),
m_calculationAlternateEmptyViewController(AlternateEmptyViewController(&m_tabViewController, &m_calculationController, &m_calculationController)),
m_graphController(GraphController(&m_graphHeader, &m_graphHeader, &m_store)),
m_graphHeader(HeaderViewController(&m_graphAlternateEmptyViewController, &m_graphController, &m_graphController)),
m_graphAlternateEmptyViewController(AlternateEmptyViewController(nullptr, &m_graphHeader, &m_graphController)),
m_graphStackViewController(StackViewController(&m_tabViewController, &m_graphAlternateEmptyViewController)),
m_calculationController(CalculationController(&m_calculationAlternateEmptyViewController, &m_calculationHeader, &m_store)),
m_calculationAlternateEmptyViewController(AlternateEmptyViewController(&m_calculationHeader, &m_calculationController, &m_calculationController)),
m_calculationHeader(HeaderViewController(&m_tabViewController, &m_calculationAlternateEmptyViewController, &m_calculationController)),
m_graphController(GraphController(&m_graphAlternateEmptyViewController, &m_graphHeader, &m_store)),
m_graphAlternateEmptyViewController(AlternateEmptyViewController(&m_graphHeader, &m_graphController, &m_graphController)),
m_graphHeader(HeaderViewController(nullptr, &m_graphAlternateEmptyViewController, &m_graphController)),
m_graphStackViewController(StackViewController(&m_tabViewController, &m_graphHeader)),
m_storeController(StoreController(&m_storeHeader, &m_store, &m_storeHeader)),
m_storeHeader(HeaderViewController(nullptr, &m_storeController, &m_storeController)),
m_storeStackViewController(StackViewController(&m_tabViewController, &m_storeHeader)),
m_tabViewController(&m_modalViewController, &m_storeStackViewController, &m_graphStackViewController, &m_calculationAlternateEmptyViewController)
m_tabViewController(&m_modalViewController, &m_storeStackViewController, &m_graphStackViewController, &m_calculationHeader)
{
}

View File

@@ -17,9 +17,10 @@ private:
Store m_store;
CalculationController m_calculationController;
AlternateEmptyViewController m_calculationAlternateEmptyViewController;
HeaderViewController m_calculationHeader;
GraphController m_graphController;
HeaderViewController m_graphHeader;
AlternateEmptyViewController m_graphAlternateEmptyViewController;
HeaderViewController m_graphHeader;
StackViewController m_graphStackViewController;
::StoreController m_storeController;
HeaderViewController m_storeHeader;

View File

@@ -5,8 +5,9 @@
namespace Regression {
CalculationController::CalculationController(Responder * parentResponder, Store * store) :
CalculationController::CalculationController(Responder * parentResponder, HeaderViewController * headerViewController, Store * store) :
ViewController(parentResponder),
HeaderViewDelegate(headerViewController),
m_titleCells{EvenOddPointerTextCell(KDText::FontSize::Small), EvenOddPointerTextCell(KDText::FontSize::Small), EvenOddPointerTextCell(KDText::FontSize::Small), EvenOddPointerTextCell(KDText::FontSize::Small), EvenOddPointerTextCell(KDText::FontSize::Small),
EvenOddPointerTextCell(KDText::FontSize::Small), EvenOddPointerTextCell(KDText::FontSize::Small), EvenOddPointerTextCell(KDText::FontSize::Small), EvenOddPointerTextCell(KDText::FontSize::Small), EvenOddPointerTextCell(KDText::FontSize::Small)},
m_columnTitleCell(EvenOddDoubleBufferTextCell(&m_selectableTableView)),

View File

@@ -7,10 +7,10 @@
namespace Regression {
class CalculationController : public ViewController, public AlternateEmptyViewDelegate, public TableViewDataSource, public SelectableTableViewDelegate {
class CalculationController : public ViewController, public HeaderViewDelegate, public AlternateEmptyViewDelegate, public TableViewDataSource, public SelectableTableViewDelegate {
public:
CalculationController(Responder * parentResponder, Store * store);
CalculationController(Responder * parentResponder, HeaderViewController * headerViewController, Store * store);
const char * title() const override;
View * view() override;
bool handleEvent(Ion::Events::Event event) override;

View File

@@ -6,18 +6,20 @@ namespace Statistics {
App::App(Container * container) :
TextFieldDelegateApp(container, &m_tabViewController, "Statistics", ImageStore::StatIcon),
m_store(),
m_calculationController(CalculationController(&m_calculationAlternateEmptyViewController, &m_store)),
m_calculationAlternateEmptyViewController(AlternateEmptyViewController(&m_tabViewController, &m_calculationController, &m_calculationController)),
m_boxController(BoxController(&m_boxAlternateEmptyViewController, &m_store)),
m_boxAlternateEmptyViewController(AlternateEmptyViewController(&m_tabViewController, &m_boxController, &m_boxController)),
m_histogramController(HistogramController(&m_histogramHeader, &m_histogramHeader, &m_store)),
m_histogramHeader(HeaderViewController(&m_histogramAlternateEmptyViewController, &m_histogramController, &m_histogramController)),
m_histogramAlternateEmptyViewController(AlternateEmptyViewController(nullptr, &m_histogramHeader, &m_histogramController)),
m_histogramStackViewController(StackViewController(&m_tabViewController, &m_histogramAlternateEmptyViewController)),
m_calculationController(CalculationController(&m_calculationAlternateEmptyViewController, &m_calculationHeader, &m_store)),
m_calculationAlternateEmptyViewController(AlternateEmptyViewController(&m_calculationHeader, &m_calculationController, &m_calculationController)),
m_calculationHeader(HeaderViewController(&m_tabViewController, &m_calculationAlternateEmptyViewController, &m_calculationController)),
m_boxController(BoxController(&m_boxAlternateEmptyViewController, &m_boxHeader, &m_store)),
m_boxAlternateEmptyViewController(AlternateEmptyViewController(&m_boxHeader, &m_boxController, &m_boxController)),
m_boxHeader(HeaderViewController(&m_tabViewController, &m_boxAlternateEmptyViewController, &m_boxController)),
m_histogramController(HistogramController(&m_histogramAlternateEmptyViewController, &m_histogramHeader, &m_store)),
m_histogramAlternateEmptyViewController(AlternateEmptyViewController(&m_histogramHeader, &m_histogramController, &m_histogramController)),
m_histogramHeader(HeaderViewController(nullptr, &m_histogramAlternateEmptyViewController, &m_histogramController)),
m_histogramStackViewController(StackViewController(&m_tabViewController, &m_histogramHeader)),
m_storeController(&m_storeHeader, &m_store, &m_storeHeader),
m_storeHeader(HeaderViewController(nullptr, &m_storeController, &m_storeController)),
m_storeStackViewController(StackViewController(&m_tabViewController, &m_storeController)),
m_tabViewController(&m_modalViewController, &m_storeStackViewController, &m_histogramStackViewController, &m_boxAlternateEmptyViewController, &m_calculationAlternateEmptyViewController)
m_storeStackViewController(StackViewController(&m_tabViewController, &m_storeHeader)),
m_tabViewController(&m_modalViewController, &m_storeStackViewController, &m_histogramStackViewController, &m_boxHeader, &m_calculationHeader)
{
}

View File

@@ -18,11 +18,13 @@ private:
Store m_store;
CalculationController m_calculationController;
AlternateEmptyViewController m_calculationAlternateEmptyViewController;
HeaderViewController m_calculationHeader;
BoxController m_boxController;
AlternateEmptyViewController m_boxAlternateEmptyViewController;
HeaderViewController m_boxHeader;
HistogramController m_histogramController;
HeaderViewController m_histogramHeader;
AlternateEmptyViewController m_histogramAlternateEmptyViewController;
HeaderViewController m_histogramHeader;
StackViewController m_histogramStackViewController;
StoreController m_storeController;
HeaderViewController m_storeHeader;

View File

@@ -3,8 +3,9 @@
namespace Statistics {
BoxController::BoxController(Responder * parentResponder, Store * store) :
BoxController::BoxController(Responder * parentResponder, HeaderViewController * headerViewController, Store * store) :
ViewController(parentResponder),
HeaderViewDelegate(headerViewController),
m_boxBannerView(BoxBannerView()),
m_view(BoxView(store, &m_boxBannerView)),
m_store(store)

View File

@@ -8,9 +8,9 @@
namespace Statistics {
class BoxController : public ViewController, public AlternateEmptyViewDelegate {
class BoxController : public ViewController, public HeaderViewDelegate, public AlternateEmptyViewDelegate {
public:
BoxController(Responder * parentResponder, Store * store);
BoxController(Responder * parentResponder, HeaderViewController * headerViewController, Store * store);
const char * title() const override;
View * view() override;
bool handleEvent(Ion::Events::Event event) override;

View File

@@ -5,8 +5,9 @@
namespace Statistics {
CalculationController::CalculationController(Responder * parentResponder, Store * store) :
CalculationController::CalculationController(Responder * parentResponder, HeaderViewController * headerViewController, Store * store) :
ViewController(parentResponder),
HeaderViewDelegate(headerViewController),
m_titleCells{EvenOddPointerTextCell(KDText::FontSize::Small), EvenOddPointerTextCell(KDText::FontSize::Small), EvenOddPointerTextCell(KDText::FontSize::Small), EvenOddPointerTextCell(KDText::FontSize::Small), EvenOddPointerTextCell(KDText::FontSize::Small),
EvenOddPointerTextCell(KDText::FontSize::Small), EvenOddPointerTextCell(KDText::FontSize::Small), EvenOddPointerTextCell(KDText::FontSize::Small), EvenOddPointerTextCell(KDText::FontSize::Small), EvenOddPointerTextCell(KDText::FontSize::Small)},
m_calculationCells{EvenOddBufferTextCell(KDText::FontSize::Small), EvenOddBufferTextCell(KDText::FontSize::Small), EvenOddBufferTextCell(KDText::FontSize::Small), EvenOddBufferTextCell(KDText::FontSize::Small), EvenOddBufferTextCell(KDText::FontSize::Small),

View File

@@ -6,10 +6,10 @@
namespace Statistics {
class CalculationController : public ViewController, public AlternateEmptyViewDelegate, public TableViewDataSource {
class CalculationController : public ViewController, public HeaderViewDelegate, public AlternateEmptyViewDelegate, public TableViewDataSource {
public:
CalculationController(Responder * parentResponder, Store * store);
CalculationController(Responder * parentResponder, HeaderViewController * headerViewController, Store * store);
const char * title() const override;
View * view() override;
bool handleEvent(Ion::Events::Event event) override;

View File

@@ -94,6 +94,9 @@ void HistogramController::didBecomeFirstResponder() {
}
int HistogramController::numberOfButtons() const {
if (isEmpty()) {
return 0;
}
return 1;
}
Button * HistogramController::buttonAtIndex(int index) {