Skip to content
pulkit110 edited this page Jul 17, 2012 · 12 revisions

TODO

July 9 - ??

  • Improve background loading with partial window loading. ** The current version reloads the complete window from the API if some cells are not yet loaded.
  • Put in random delays in the API to test the performance in case of slow response from server.
  • Implement some suggestions from code review.
  • A developer demo that previews all the events the user can listen to.

?? - ??

  • Write more unit tests for plugin.
  • Allow custom styling for matrix.
  • Use named methods to load styling information into the matrix.

Done

May 21-27

  • Setup project source and wiki on github.
  • Decided upon request and response for the server API.
  • Decided upon configuration and use of the plugin.
  • Researched about libraries to be used
  • Setup the code repository
  • Added few unit tests for validation of jMatrixBrowse

May 28-June3

  • Generated matrix for testing according to API specifications
  • First version: Gets matrix through mock Ajax API and displays using Zynga scroller
  • Wrote more unit tests for the plugin
  • Deployed demo page at http://pulkitgoyal.in/Demo/jMatrixBrowse/
  • Changed directory structure as per code review.
  • Check how to create the matrix so that loading doesn't take a lot of time.
  • Run benchmarking on large (1000 x 1000) matrices.
  • Document code
  • Implement suggestions from first code review.

June 4-June 10

  • Created a draggable area containing initial matrix content using jQuery UI draggable and without using Zynga Scroller (See Findings and Decisions:Week 3).
  • Added event jMatrixBrowseChange triggered when new content is to be loaded.

June 10-June 24

  • Did major refactoring of code.
  • Researched about better background loading approaches.
  • Wrote some more unit tests for testing basic loading.
  • Added events for jMatrixBrowseClick to notify about the cell element that has been clicked.
  • Updated wiki with details for all events.

June 25-July 2

  • Fixed a bug with loading of matrix data.
  • Wrote more unit tests.
  • Decided on a background loading approach that loads the data in the background periodically until everything has been loaded.

July 3-July 8

  • Map keyboard shortcuts (arrow keys, ctrl+arrow keys) for browsing.
  • Option to snap row/columns. Snapping finds the element close to its top left corner and snaps it to the edge.
  • Prevent dragging of matrix outside bounds.
  • Small bug fixes.

July 9 - July 16

  • A separate module for background loading that keeps loading matrix content into the DOM in the background. This content is then swapped into the matrix when new cells are required. ** Added configuration option to choose between three different strategies (See details about performance here).
  • Implemented suggestions from code review.
  • Updated the demo to 1000x1000 with randomly generated data.
  • Mapped few more keyboard shortcuts for browsing.