mirror of
https://github.com/UpsilonNumworks/Upsilon.git
synced 2026-03-20 14:20:39 +01:00
[apps/graph/values] Enable to delete row by row
Change-Id: I25b14091711af3d7afd64413839a2664fc98a051
This commit is contained in:
@@ -16,6 +16,14 @@ int Interval::numberOfElements() {
|
||||
return m_numberOfElements;
|
||||
}
|
||||
|
||||
void Interval::deleteElementAtIndex(int index) {
|
||||
m_numberOfElements--;
|
||||
for (int k = index; k < m_numberOfElements; k++) {
|
||||
m_intervalBuffer[k] = m_intervalBuffer[k+1];
|
||||
}
|
||||
m_intervalBuffer[m_numberOfElements] = 0.0f;
|
||||
}
|
||||
|
||||
float Interval::element(int i) {
|
||||
assert(i >= 0 && i < numberOfElements());
|
||||
computeElements();
|
||||
|
||||
@@ -9,6 +9,7 @@ public:
|
||||
// Delete the implicit copy constructor: the object is heavy
|
||||
Interval(const Interval&) = delete;
|
||||
int numberOfElements();
|
||||
void deleteElementAtIndex(int index);
|
||||
float element(int i);
|
||||
float start();
|
||||
float end();
|
||||
|
||||
@@ -56,7 +56,12 @@ bool ValuesController::handleEvent(Ion::Events::Event event) {
|
||||
headerViewController()->setSelectedButton(0);
|
||||
return true;
|
||||
}
|
||||
|
||||
if (event == Ion::Events::Clear && activeRow() > 0 &&
|
||||
(activeRow() < numberOfRows()-1 || m_interval.numberOfElements() == Interval::k_maxNumberOfElements)) {
|
||||
m_interval.deleteElementAtIndex(m_selectableTableView.selectedRow()-1);
|
||||
m_selectableTableView.reloadData();
|
||||
return true;
|
||||
}
|
||||
if (event == Ion::Events::OK) {
|
||||
if (activeRow() == -1) {
|
||||
return headerViewController()->handleEvent(event);
|
||||
|
||||
Reference in New Issue
Block a user