mirror of
https://github.com/UpsilonNumworks/Upsilon.git
synced 2026-01-19 00:37:25 +01:00
[apps/shared] In float parameter controllers, add a ok button
Change-Id: I6063afd5ebc9bcb0bcddc13e42a91d029c4bd831
This commit is contained in:
@@ -7,9 +7,8 @@ using namespace Shared;
|
||||
namespace Statistics {
|
||||
|
||||
HistogramParameterController::HistogramParameterController(Responder * parentResponder, Store * store) :
|
||||
FloatParameterController(parentResponder),
|
||||
m_binWidthCell(PointerTableCellWithEditableText(&m_selectableTableView, this, m_draftTextBuffer, (char*)"Largeur des rectangles : ")),
|
||||
m_minValueCell(PointerTableCellWithEditableText(&m_selectableTableView, this, m_draftTextBuffer, (char*)"Debut de la serie : ")),
|
||||
FloatParameterController(parentResponder, "Valider"),
|
||||
m_cells{PointerTableCellWithEditableText(&m_selectableTableView, this, m_draftTextBuffer, nullptr), PointerTableCellWithEditableText(&m_selectableTableView, this, m_draftTextBuffer, nullptr)},
|
||||
m_store(store)
|
||||
{
|
||||
}
|
||||
@@ -18,6 +17,27 @@ const char * HistogramParameterController::title() const {
|
||||
return "Parametres de l'histogramme";
|
||||
}
|
||||
|
||||
void HistogramParameterController::viewWillAppear() {
|
||||
for (int i = 0; i < 2; i++) {
|
||||
m_previousParameters[i] = parameterAtIndex(i);
|
||||
}
|
||||
FloatParameterController::viewWillAppear();
|
||||
}
|
||||
|
||||
int HistogramParameterController::numberOfRows() {
|
||||
return 1+2;
|
||||
}
|
||||
|
||||
void HistogramParameterController::willDisplayCellForIndex(HighlightCell * cell, int index) {
|
||||
if (index == numberOfRows()-1) {
|
||||
return;
|
||||
}
|
||||
PointerTableCellWithEditableText * myCell = (PointerTableCellWithEditableText *)cell;
|
||||
const char * labels[2] = {"Largeur des rectangles : ", "Debut de la serie : "};
|
||||
myCell->setText(labels[index]);
|
||||
FloatParameterController::willDisplayCellForIndex(cell, index);
|
||||
}
|
||||
|
||||
float HistogramParameterController::parameterAtIndex(int index) {
|
||||
assert(index >= 0 && index < 2);
|
||||
if (index == 0) {
|
||||
@@ -26,10 +46,14 @@ float HistogramParameterController::parameterAtIndex(int index) {
|
||||
return m_store->firstDrawnBarAbscissa();
|
||||
}
|
||||
|
||||
float HistogramParameterController::previousParameterAtIndex(int index) {
|
||||
return m_previousParameters[index];
|
||||
}
|
||||
|
||||
void HistogramParameterController::setParameterAtIndex(int parameterIndex, float f) {
|
||||
assert(parameterIndex >= 0 && parameterIndex < 2);
|
||||
if (parameterIndex == 0) {
|
||||
if (f <= 0.0f || isnan(f) || isinf(f)) {
|
||||
if (f <= 0.0f) {
|
||||
app()->displayWarning("Valeur interdite");
|
||||
return;
|
||||
}
|
||||
@@ -39,19 +63,12 @@ void HistogramParameterController::setParameterAtIndex(int parameterIndex, float
|
||||
}
|
||||
}
|
||||
|
||||
int HistogramParameterController::numberOfRows() {
|
||||
return 2;
|
||||
};
|
||||
|
||||
HighlightCell * HistogramParameterController::reusableCell(int index) {
|
||||
HighlightCell * HistogramParameterController::reusableParameterCell(int index, int type) {
|
||||
assert(index >= 0 && index < 2);
|
||||
if (index == 0) {
|
||||
return &m_binWidthCell;
|
||||
}
|
||||
return &m_minValueCell;
|
||||
return &m_cells[index];
|
||||
}
|
||||
|
||||
int HistogramParameterController::reusableCellCount() {
|
||||
int HistogramParameterController::reusableParameterCellCount(int type) {
|
||||
return 2;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user