mirror of
https://github.com/UpsilonNumworks/Upsilon.git
synced 2026-03-19 05:40:38 +01:00
[apps/statistics] Clean HistogramController
This commit is contained in:
@@ -29,21 +29,41 @@ HistogramController::HistogramController(Responder * parentResponder, ButtonRowC
|
||||
{
|
||||
}
|
||||
|
||||
const char * HistogramController::title() {
|
||||
return I18n::translate(I18n::Message::HistogramTab);
|
||||
}
|
||||
|
||||
View * HistogramController::view() {
|
||||
return &m_view;
|
||||
}
|
||||
|
||||
StackViewController * HistogramController::stackController() {
|
||||
StackViewController * stack = (StackViewController *)(parentResponder()->parentResponder()->parentResponder());
|
||||
return stack;
|
||||
}
|
||||
|
||||
HistogramParameterController * HistogramController::histogramParameterController() {
|
||||
return &m_histogramParameterController;
|
||||
int HistogramController::numberOfButtons(ButtonRowController::Position) const {
|
||||
return isEmpty() ? 0 : 1;
|
||||
}
|
||||
Button * HistogramController::buttonAtIndex(int index, ButtonRowController::Position) const {
|
||||
return (Button *)&m_settingButton;
|
||||
}
|
||||
|
||||
bool HistogramController::isEmpty() const {
|
||||
return m_store->isEmpty();
|
||||
}
|
||||
|
||||
I18n::Message HistogramController::emptyMessage() {
|
||||
return I18n::Message::NoDataToPlot;
|
||||
}
|
||||
|
||||
Responder * HistogramController::defaultController() {
|
||||
return tabController();
|
||||
}
|
||||
|
||||
const char * HistogramController::title() {
|
||||
return I18n::translate(I18n::Message::HistogramTab);
|
||||
}
|
||||
|
||||
void HistogramController::viewWillAppear() {
|
||||
if (!m_view.isMainViewSelected()) {
|
||||
m_view.selectMainView(true);
|
||||
header()->setSelectedButton(-1);
|
||||
}
|
||||
reloadBannerView();
|
||||
m_view.reload();
|
||||
}
|
||||
|
||||
bool HistogramController::handleEvent(Ion::Events::Event event) {
|
||||
@@ -104,37 +124,6 @@ void HistogramController::didBecomeFirstResponder() {
|
||||
}
|
||||
}
|
||||
|
||||
int HistogramController::numberOfButtons(ButtonRowController::Position) const {
|
||||
if (isEmpty()) {
|
||||
return 0;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
Button * HistogramController::buttonAtIndex(int index, ButtonRowController::Position) const {
|
||||
return (Button *)&m_settingButton;
|
||||
}
|
||||
|
||||
bool HistogramController::isEmpty() const {
|
||||
return m_store->isEmpty();
|
||||
}
|
||||
|
||||
I18n::Message HistogramController::emptyMessage() {
|
||||
return I18n::Message::NoDataToPlot;
|
||||
}
|
||||
|
||||
Responder * HistogramController::defaultController() {
|
||||
return tabController();
|
||||
}
|
||||
|
||||
void HistogramController::viewWillAppear() {
|
||||
if (!m_view.isMainViewSelected()) {
|
||||
m_view.selectMainView(true);
|
||||
header()->setSelectedButton(-1);
|
||||
}
|
||||
reloadBannerView();
|
||||
m_view.reload();
|
||||
}
|
||||
|
||||
void HistogramController::willExitResponderChain(Responder * nextFirstResponder) {
|
||||
if (nextFirstResponder == nullptr || nextFirstResponder == tabController()) {
|
||||
m_view.selectMainView(false);
|
||||
|
||||
@@ -14,20 +14,26 @@ class HistogramController : public ViewController, public ButtonRowDelegate, pub
|
||||
|
||||
public:
|
||||
HistogramController(Responder * parentResponder, ButtonRowController * header, Store * store, uint32_t * m_storeVersion, uint32_t * m_barVersion, uint32_t * m_rangeVersion, int * m_selectedBarIndex);
|
||||
const char * title() override;
|
||||
View * view() override;
|
||||
StackViewController * stackController();
|
||||
HistogramParameterController * histogramParameterController();
|
||||
bool handleEvent(Ion::Events::Event event) override;
|
||||
void didBecomeFirstResponder() override;
|
||||
HistogramParameterController * histogramParameterController() { return &m_histogramParameterController; }
|
||||
|
||||
// ButtonRowDelegate
|
||||
int numberOfButtons(ButtonRowController::Position) const override;
|
||||
Button * buttonAtIndex(int index, ButtonRowController::Position position) const override;
|
||||
|
||||
// AlternateEmptyViewDelegate
|
||||
bool isEmpty() const override;
|
||||
I18n::Message emptyMessage() override;
|
||||
Responder * defaultController() override;
|
||||
|
||||
// ViewController
|
||||
const char * title() override;
|
||||
View * view() override { return &m_view; }
|
||||
void viewWillAppear() override;
|
||||
|
||||
// Responder
|
||||
bool handleEvent(Ion::Events::Event event) override;
|
||||
void didBecomeFirstResponder() override;
|
||||
void willExitResponderChain(Responder * nextFirstResponder) override;
|
||||
private:
|
||||
constexpr static int k_maxNumberOfBarsPerWindow = 100;
|
||||
|
||||
Reference in New Issue
Block a user