Difference between revisions of "LogbookTodo"

From AardRock Wiki
Jump to navigation Jump to search
Line 7: Line 7:
== Done ==
== Done ==
* Er moet een listener komen op het RDF model. Het LogbookModel vertaalt de RDF events naar table even1ts en vuurt deze (LogbookModel.fireXxx()).
* Er moet een listener komen op het RDF model. Het LogbookModel vertaalt de RDF events naar table even1ts en vuurt deze (LogbookModel.fireXxx()).
** Done: Chris
* De RDF objecten moeten URIs krijgen.
* De RDF objecten moeten URIs krijgen.
** Done: Chris
* De cellen moeten editable worden (implementeer LogbookModel.setValueAt()); de veranderingen worden naar RDF gedelegeerd.
* De cellen moeten editable worden (implementeer LogbookModel.setValueAt()); de veranderingen worden naar RDF gedelegeerd.
** Done: Chris
** Done: Chris

Revision as of 15:24, 19 June 2006

Todo

  • Toevoegen van nieuwe items in het Home scherm werkt niet meer.
  • Als er nieuwe rows toegevoegd worden via b.v. het Home-scherm moet dit ook worden doorgegeven.
  • Ook cellen waarvoor de waarde null was moeten editable worden.
    • Verander setValueAt en isCellEditable.

Done

  • Er moet een listener komen op het RDF model. Het LogbookModel vertaalt de RDF events naar table even1ts en vuurt deze (LogbookModel.fireXxx()).
    • Done: Chris
  • De RDF objecten moeten URIs krijgen.
    • Done: Chris
  • De cellen moeten editable worden (implementeer LogbookModel.setValueAt()); de veranderingen worden naar RDF gedelegeerd.
    • Done: Chris
  • Comments lijken niet te werken. In plaats van comments worden de bloedglucosewaarden getoond.
    • De comments worden wel getoond, alleen bij het opslaan werd de bloedglucosewaarde opgeslagen ipv de comment
    • Done: Chris

Plan

  • Objecten moeten een URI krijgen
    • Vorm: cheetah://email/classname/creation_timestamp
    • E.g.: cheetah://chris@example.com/insulinEntry/4589778925
  • Een invoer van meerdere entries moet dezelfde timestamp krijgen
  • We moeten een snelle cache in ons TableModel bouwen
  • De cache moet wijzigingen doorgeven aan het RDFModel
  • De cache moet luisteren naar wijzigingen op het RDFModel
    • De cache moet op een snelle manier deze wijzingen doorvoeren (mappen van URI naar rownumber)
    • Waarschijnlijk een Hash bijhouden met URI's als keys en rownumbers als values
  • De rows moet een aggregatie zijn van alle entries met dezelfde timestamp
  • Iedere 5 minuten RDF-db opslaan

Ideas

Propagating changes

When the JTable is changed, the setValueAt of the TableModel is called. The TableModel passes translates this to a setProperty of the RDFModel. When the RDFModel is changed, an event is fired an the TableModel and all other listeners will receive this event. The TableModel will update itself (within a recent amount of time), and will send a table-event to the GUI.


User Interface

Rows in a table are in alternating colors. The current active row is highlighted (with a blue background-color for example).