Closed GoogleCodeExporter closed 9 years ago
A new release of Ingatan will be put out within the next few days.
Original comment by tom.eve...@gmail.com
on 3 Feb 2011 at 2:59
Original comment by tom.eve...@gmail.com
on 3 Feb 2011 at 3:00
Original comment by tom.eve...@gmail.com
on 3 Feb 2011 at 3:00
Harder than first thought as the code for row deletion is in the DataTable
column, as well as other identified methods that are problematic for the same
reason, including: copy, paste, cut, etc.
To solve this, a 2D array of doubles will be encapsulated by the DataTable.
There can be as many columns as required, with each column representing a
record of interest, e.g. timesAsked, etc. The table will be referred to in the
interface as "synchronisedData", with the javadoc explaining that this table
will have values removed correspondingly when the DataTable is mutated.
When the QuestionList calls its updateQuestionsWithContent() method, it will
pull the synchronisedData from the DataTable and use this.
Original comment by tom.eve...@gmail.com
on 3 Feb 2011 at 5:40
This has been implemented in revision 64e5121eeb, revision e35536df0a, revision
031dfa1c20, and revision 9e67460d63, chronologically.
A 2D array is not used, instead an ArrayList is 'registered' with the DataTable
through it's registerSynchronisedData() method. This is then added to a nested
class within DataTable, SynchronisedData, which puts it in an array of
ArrayLists.
This encapsulation means that all registered ArrayLists can be altered equally
by a single (i.e. not in a for loop) call to the SynchronisedData object, for
example syncrhonisedData.add(index, 0);
Original comment by tom.eve...@gmail.com
on 4 Feb 2011 at 12:44
Original comment by tom.eve...@gmail.com
on 4 Feb 2011 at 12:44
Original issue reported on code.google.com by
tom.eve...@gmail.com
on 3 Feb 2011 at 2:58