LogbookTodo

From AardRock Wiki
Revision as of 09:27, 19 June 2006 by Chris (talk | contribs)
Jump to navigation Jump to search

Todo

  • Er moet een listener komen op het RDF model. Het LogbookModel vertaalt de RDF events naar table even1ts en vuurt deze (LogbookModel.fireXxx()).
  • De RDF objecten moeten URIs krijgen zodat de vorige stap handig geimplementeerd kan worden.
  • Ook cellen waarvoor de waarde null was moeten editable worden.
    • Verander setValueAt en isCellEditable.

Done

  • 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).