Commit graph

20 commits

Author SHA1 Message Date
Paul Beckingham
c35a764019 Custom Reports - oldest, newest
- Added support for the "report.X.limit" configuration variable, to
  restrict the number of rows a report generates.
- Added support for Table::render (limit) to limit the number of rows
  that are rendered.
- Removed "oldest" and "newest" report code.
- Added "oldest" and "newest" custom report details to Config.cpp
- Updated various documentation.
2009-03-12 22:34:45 -04:00
Paul Beckingham
17de9fec9f New Column - recur
- Added new column 'recur' for use in custom reports.
- Implemented Table::ascendingPeriod, Table::descendingPeriod allowing
  sorting on the recur column.
- Added unit tests to both use the new column and test the sorting.
- Code cleanup.
2009-03-09 22:01:08 -04:00
Paul Beckingham
28e997691f Unit Tests - repair
- Added auto right trim to all table rows, which is a much more
  efficient way of doing what Table::optimize was doing.
- Table::optimize is now a nop.
2009-03-08 22:56:47 -04:00
Paul Beckingham
3f418c6fdc Performance
- Made Table::optimize a public method.
- Table::optimize called only from handleReportGHistory, where it's
  needed.
- Retaining benchmark.txt, to allow further improvements.
2009-03-08 21:29:55 -04:00
Paul Beckingham
0362b41f3b Performance
- Added Timer class to display high resolution timing information.
- Found terrible bug in Table::optimize that was taking up 99.7%,
  on average, of the Table::rendering time, including sorting.  This
  fix naturally causes a 187-fold speedup of rendering.
- Changed report.cpp in handleCustomReport to only load pending tasks,
  instead of all pending tasks.  Subtle, but important difference.
2009-03-08 20:49:33 -04:00
Paul Beckingham
a1b7516cf8 Sort Algorithm Fix
- The sort algorithm (Combsort11) was broken because it didn't
  consider all the possible variations of present/missing, same/
  different combinations of data, when performing a compare.  This
  led to an unstable sort, which is an infinite loop in Combsort11.
2009-03-02 23:49:13 -05:00
Paul Beckingham
2307dcab8a Copyright Update
- bumped the year, on the source copyright notices.
2009-02-14 17:50:38 -05:00
Paul Beckingham
4abc722eff - Task now uses dashes (-----) to underline column headings when color is
disabled (thanks for Vincent Fleuranceau).
2008-09-12 11:27:25 -04:00
Paul Beckingham
11225eb599 - Applied patch from Andy Lester to correct Table sorting to use the entire
string instead of just the initial characters.
2008-09-12 10:28:14 -04:00
Paul Beckingham
131693f617 - Fixed bug whereby the "dateformat" configuration variable was being used to display dates, but not parse them. 2008-06-11 01:14:22 -04:00
Paul Beckingham
1a580b1967 - Removed unnecessary TODO items from the source code. 2008-05-30 22:10:06 -04:00
Paul Beckingham
9aec4efefa - Added proper copyright, licensing details to all source.
- Eliminated redundant stlmacros.h heaer file.
2008-05-30 21:35:49 -04:00
Paul Beckingham
b061ef6191 - "task calendar" now lists all months that contain pending due tasks. 2008-05-30 20:22:38 -04:00
Paul Beckingham
cb4f86e9f1 - Changes necessary for a clean build on Fedora9. 2008-05-26 20:58:41 -04:00
Paul Beckingham
45a25ca47b - Fixed Table::calculateColumnWidths bug. 2008-05-24 23:08:36 -04:00
Paul Beckingham
a8fa293695 - Corrected wrong include file in Table.cpp 2008-05-15 11:33:46 -04:00
Paul Beckingham
494ed3b964 - New color management integrated. 2008-05-13 23:08:25 -04:00
Paul Beckingham
b63cf606f0 - Integrated Grid object for data storage.
time ./task lo

			old	new
		real	0.262	0.018
		user	0.201	0.013
		sys	0.048	0.004

		~1200-1400% faster

	time ./task completed

			old	new
		real	3.991	4.014
		user	2.821	2.832
		sys	1.165	1.169

		~0.3-0.5% slower
2008-05-12 23:29:14 -04:00
Paul Beckingham
62e6b31a17 - Integrated new Grid object into build - not yet integrated into Table. 2008-04-26 00:09:59 -04:00
Paul Beckingham
b5be083d88 - Added all source code. 2008-04-19 22:11:59 -04:00