Commit graph

253 commits

Author SHA1 Message Date
Paul Beckingham
6f17e80461 Refactoring
- Combined the remains of command.cpp and report.cpp into helpers.cpp.
2011-05-30 16:01:36 -04:00
Paul Beckingham
75a24f5113 Commands - timesheet
- Migrated handleReportTimesheet to CmdTimesheet.
2011-05-30 13:46:08 -04:00
Paul Beckingham
4c47748dd7 Commands - calendar
- Migrated handleReportCalendar to CmdCalendar.
2011-05-30 13:30:18 -04:00
Paul Beckingham
75e651626d Commands - summary
- Migrated handleReportSummary to CmdSummary.
2011-05-30 12:49:45 -04:00
Paul Beckingham
56e4c8172b Commands - stats
- Migrated handleReportStats to CmdStatistics.
2011-05-28 15:11:32 -04:00
Paul Beckingham
0ce198ab8c Commands - info
- Migrated 'info' command to CmdInfo.
- Renamed 'info' command to 'information'.
2011-05-28 12:55:45 -04:00
Paul Beckingham
d892a0cbd2 Code Cleanup
- Fixed comments, compilation warnings.
- Decomposed Context::initialize into several, single-purpose methods.
- Replaced Context::initialize with Context::initialize2.
2011-05-24 19:37:03 -04:00
Paul Beckingham
f8b44b68d7 View
- Fixed problem with incorrect Color vector addressing.
- Modified ViewText to not underline empty column headers.
- Implemented ViewText::set method to set only color.
2011-05-23 20:16:37 -04:00
Paul Beckingham
bc756637da Commands
- Implemented CmdHelp object that replaces the report.cpp longUsage
  function, and builds the output dynamically from other Command
  objects.  This is also why the help text right now is very short,
  as only a few commands are migrated.
- Obsoleted longUsage function.
- Updated task.1 man page with 'execute' command details.
- Modified command.lua sample to include command usage.
- Removed "help" from old Context::dispatch, which means "help" is
  the first migrated command.
- Added usage and description to all Cmd* objects.
- Implemented Command::usage and Command::description as base class
  methods that simply return data that is specified by the derived
  classes.
2011-05-15 01:14:13 -04:00
Paul Beckingham
afc97d566c Commands
- New 'exec' command that runs external programs, implemented by
  CmdExec.
- Restructured code so that only Commands implements ::read_only
  and ::displays_id methods, while derived objects simply set flags.
- Corrected column alignment in summary report.
2011-05-15 00:18:24 -04:00
Paul Beckingham
3d69f70d66 Bug
- Lack of Task default constructor, copy constructor and operator=
  implementation details caused tasks stored in an STL container to
  lose their cached urgency value.
- Info report now specifically formats urgency values, whereas the
  default formatting adds justification spacing.
2011-05-13 17:54:08 -04:00
Paul Beckingham
6fb3bc5b03 View
- Integrated ViewTask and ViewText completely.
- Obsoleted Table.{h,cpp}, Grid.{h,cpp}, grid.t.cpp
- Fixed ViewTask rendering bug that caused the full width to be used every time.
2011-05-13 01:10:30 -04:00
Paul Beckingham
c8c7e02bc8 View
- Converted projects to use TextView.
2011-05-12 00:43:15 -04:00
Paul Beckingham
9e3e40c3a9 View
- Converted info report to ViewText.
- Fixed bug in history report.
- Removed rc.blanklines from Config.cpp defaults.
2011-05-12 00:19:56 -04:00
Paul Beckingham
ec7d9ed765 View
- Converted history reports to use ViewText.
- Fixed unit test.
2011-05-11 00:20:35 -04:00
Paul Beckingham
fcb711d673 View
- Converted 'help' and 'stats' reports to use ViewText.
- Modified Column.cpp to omit column headers if blank.
2011-05-10 23:46:47 -04:00
Paul Beckingham
1a833af2a4 View
- Broke out View into ViewTask and ViewText, where the former uses an
  external std::vector <Task> as storage, thus eliminating the additional
  copy, and the latter that duplicates data and color into 2D vectors
  for rendering non-task data.
2011-05-10 22:49:20 -04:00
Paul Beckingham
b4fba5b08d Next Report
- Removed all traces of the old next report.
- Removed rc.next support.
2011-05-08 19:33:05 -04:00
Paul Beckingham
041bcfdf21 Custom Reports
- Integrated new View in place of Table for all custom reports.
- Implemented legacy field mapping for columns and sort fields.
- Implemented rc.indent.report.
- Implemented rc.row.padding.
- Implemented rc.column.padding.
- Implemented rc.color.label.
- Modified default rc.indent.annotation from 1 to 2.
- Implemented urgency value caching.
- Implemented View truncation by line and row.
- Columns now know which report thy belong to, so they can use the
  rc.report.<report>.dateformat override.
- Assorted bugs remain.
2011-05-08 09:29:55 -04:00
Paul Beckingham
1506ee67f4 Code Cleanup
- Implemented Context::color to hide the color override details,
  then integrated it.
2011-05-01 11:53:13 -04:00
Paul Beckingham
ac69c02876 View
- Implemented (a fraction of) description columns.
2011-04-30 18:03:18 -04:00
Paul Beckingham
86ef048cb0 Bug #605
+ Fixed bug #605, which gave misleading project completion percentages under
  certain circumstances (thanks to Steve Rader).
2011-04-24 11:36:43 -04:00
Paul Beckingham
5f8b3cf989 Code Cleanup
- Further attemps at removing 'foreach'.
2011-04-23 23:06:00 -04:00
Paul Beckingham
48eb4757f8 Hooks
- Removed all obsolete hooks, except from commands.cpp, which is being
  worked on in parallel.
- Implemented new on-launch and on-exit unit tests.
2011-04-17 21:09:58 -04:00
Paul Beckingham
77ba7946f5 Code Cleanup
- Removed conditional compilation of the shell, controlled by FEATURE_SHELL.
2011-04-03 19:41:19 -04:00
Paul Beckingham
bd0dbe3af6 Unit Tests, Documentation
- Added 'ids' command to task.1.in.
- Added unit test for 'ids' command.
- Reformatted 'help' output for the ~ modifier.
2011-03-19 01:18:56 -04:00
Dan White
4b71fa73f8 Feature #710
- Added feature #710, which adds an attribute modifier prefix to return the
  complement of a filtered set (thanks to Dan White).
- Added missing description to the 'help' command.

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2011-03-19 00:56:45 -04:00
Cory Donnelly
994404d6e1 Merge branch '2.0.0' of tasktools.org:task into 2.0.0 2011-03-16 08:40:02 -04:00
Cory Donnelly
45e0ef20da Bug #708
- Project completion report didn't account for multiple changes made
  at once. For example, task 1-3 done, task 4-6 del, task 7-9 pro:new
2011-03-16 08:37:29 -04:00
Paul Beckingham
9470e9af17 New 'ids' command, and stdin reading
- New 'ids' command that returns a filtered set of task ID numbers, instead
  of the actual tasks.  For advanced pipeline use.
- Now supplements the command line with data read from standard input, which
  allows commands like:  echo 'add Pay the bills' | task
2011-03-16 00:53:29 -04:00
Paul Beckingham
2f4e0d9e17 Bug #654
- By misplacing a } I broke the info command for tasks without undo
  history, which subsequently broke 28 unit tests.
2011-01-22 23:20:26 -05:00
Paul Beckingham
e301cda990 Bug, Reorg
- Fixed bug in journal annotations that omitted \n characters for
  certain events, creating an unreadable journal entry.
- Relocated the 'Total active time' into the journal table, made
  the text bold, and changed from "Xh XXm" format to Duration::format.
2011-01-20 10:42:37 -05:00
Johannes Schlatow
792eab8621 Info report
* added a line to the journal which shows the total time a task was active
2011-01-17 15:21:55 +01:00
Paul Beckingham
462caf5bd4 Copyright
- Updated copyright to 2011.
2010-12-31 22:03:05 -05:00
Paul Beckingham
08f32cb9e9 Bug
- Sorting bug in which 'urgency' column was not identified as numeric.
2010-12-31 00:34:23 -05:00
Paul Beckingham
77f3269f09 Bug #589
- Fixed bug #589, where the man page did not adequately describe searching
  or usage of attribute modifiers (thanks to Steve Rader).
2010-12-30 09:37:40 -05:00
Paul Beckingham
a6cf99a83c Code Cleanup
- Migrated format helper functions over from taskd.
- Converted much of the sprintf usage to format calls.
2010-12-27 16:31:11 -05:00
Paul Beckingham
c73f131f32 Eliminated ncurses
- Removed autoconf ncurses detection.
- Modified man pages.
- Inserted vitapi replacement code.
- Cached terminal size values for reuse.
- Modified packaging info for OSX.
- Removed -lncurses from unit test makefile.
- Removed obsolete taskrc example.
- Modified (simplified) source build instructions.
2010-12-14 14:40:03 -05:00
Federico Hernandez
4ca35fb956 Feature #567
- added a calendar offset that effectively changes the first
  month to be displayed in the calendar report (thanks to
  Michelle Crane)
- calendar.offset turns the featue off or on
- calendar.offset.value controls the number of month to be
  applied for the offset
2010-12-01 23:25:13 +01:00
Paul Beckingham
4c3354fa50 Journal Feature
- Added change log display to the 'info' command, controlled by the
  'journal.info' configuration setting.
2010-11-27 16:38:36 -05:00
Paul Beckingham
6ef5650129 Bug #515
- Fixed bug #515, which displayed an incorrect message after duplicating a
  non-existent task (thanks to Peter De Poorter).
2010-11-26 11:08:51 -05:00
Paul Beckingham
d7de67d242 Feature #546
- Added feature #546, which is a 'count' command that counts tasks, and is
  intended to help scripts that manipulate task output.
- Added unit tests.
- Added man page description.
2010-11-26 10:39:00 -05:00
Paul Beckingham
652b7d9c8d Burndown Chart
- Implemented burndown.daily, which is functional, but has outstanding
  problems that need to be addressed:
    - Slow
    - Does not optimize output (i.e. contains /\S\s+$/)
    - Needs generalized helper functions to reduce the size of the handler
2010-11-21 00:28:34 -05:00
Paul Beckingham
d3303f6a98 Code Cleanup
- Obsoleted the monthlyEpoch and yearlyEpoch functions, which are better
  served by the Date::startOf{Month,Year} methos.
2010-11-15 12:04:27 -05:00
Paul Beckingham
46c031c45c Documentation
- The help command now includes the task-sync man page.
- The help command now includes export.csv and export.yaml.
2010-10-28 21:46:26 -04:00
Paul Beckingham
01bb76b3b6 Feedback
- Modified feedback when the number of pending tasks in a project changes
  (thanks to Peter De Poorter).
2010-10-27 22:26:11 -04:00
Paul Beckingham
1e37d7a784 Diagnostics
- Added new 'diagnostics' command to assist with bug reporting,
  testing.  It answers questions such as "did you compile it yourself?",
  and more.
- Specifically, it runs a UUID generation test to prove that the UUIDs
  are really unique.
2010-10-20 00:22:20 -04:00
Paul Beckingham
b609cdb8a0 Urgency
- Removed the urgency rating from the info report.  Otherwise, we
  will need to explain it, and without the corresponding new next
  report, what can we say?  It will be reenabled later.
2010-10-09 12:27:57 -04:00
Paul Beckingham
6af7540fe7 Bug
- Fixed a divide-by-zero bug in the project completion calculations, that
  was uncovered by sync testing.
2010-10-07 23:40:03 -04:00
Paul Beckingham
7fdfcbacc6 Dependencies - #410
- Completed support for 'task 1 depends:2,-3' to manipulate the
  dependencies.
- Now supports rc.dependency.reminder to indicate when to nag about
  dependency chain violations, defaulting to on.
- Now supports rc.dependency.confirm to require confirmation before
  fixing dependency chains, defaulting to on.
- New source file dependency.cpp which implements a low-level API for
  determining dependency status, and assorted handlers for task state
  changes.
- Adds blocking tasks to the 'next' report.
- Added more dependency unit tests, changed the wording in a couple of
  them and numbered them for easy reference.
2010-10-03 18:52:59 -04:00