Commit graph

46 commits

Author SHA1 Message Date
Paul Beckingham
bfcb3eac49 l10n: Eliminated STRING_INVALID_SORT_COL 2018-05-13 23:33:59 -04:00
Paul Beckingham
216d4d63bc Copyright 2018 2018-05-13 23:30:21 -04:00
Paul Beckingham
42e0c17de7 sort: Greater use of auto 2018-05-13 22:50:51 -04:00
Paul Beckingham
88516acdaa Copyright update 2018-05-13 20:50:26 -04:00
Paul Beckingham
43d49d17d0 sort: Converted from ISO8601p to Duration 2018-05-13 20:33:34 -04:00
Paul Beckingham
8a43f4902d libhsared: migrating from local to libshared 2018-05-13 20:26:34 -04:00
Paul Beckingham
ae128f587d Context: Eliminated sort timer 2018-05-13 20:20:49 -04:00
Paul Beckingham
641d232dea Copyright: Updated to 2016 2015-12-31 15:06:43 -05:00
Paul Beckingham
9a33aa2997 Revert "sort: Converted from strtof to std::stof"
This reverts commit 8db04b8ec1.
2015-11-02 18:40:06 -05:00
Paul Beckingham
8db04b8ec1 sort: Converted from strtof to std::stof 2015-11-01 21:53:07 -05:00
Tomas Babej
514c869aea sort: Do not use Variant to sort UDA strings
String UDA defer the evaluation of the sort_compare method
to the '<' operator of the Variant class, since the logic for
comparing string UDAs (which can have custom sort orders) is
already implemented there.

However, since primary use case of Variant is the filter evaluation,
it handles trivial (empty) values in a manner which does not allow
for its direct usage as the comparison operator between sort UDAs.

When filtering, a trivial (empty) value should neither match
'uda < A' nor 'uda >= A'. However, when sorting tasks upon values of
this UDA, precisely one of the above expressions *must* be true.

This commit implements the UDA string sorting logic directly in
the sort_compare method.
2015-09-13 09:16:07 -04:00
Paul Beckingham
3c54c78e3a Sorting: All dates now sort the same as 'due' dates 2015-09-08 17:57:25 -04:00
Paul Beckingham
aab9ea1563 Sort: Duration replaced by ISO8601p 2015-08-12 07:48:27 -04:00
Paul Beckingham
e74c6963a9 C++11: Cleaned up program framework with range-based for 2015-05-11 17:50:53 -04:00
Paul Beckingham
5af4579741 Priority: Converted 'priority' attribute to a UDA
- 'priority.long' and 'priority.short' formats now map to 'priority', and
  generate a warning.
- Man page updated.
- Converted priority urgency coefficients to UDA equivalents.
- Converted priority color rules to UDA color rules.
- Removed 'default.priority' support.
- Removed special sort handling for 'priority' field in Variant, added special
  UDA sort handling.
- Removed ColPriority.{h,cpp} source files.
- Removed asorted newly-unused variables.
- The 'show' command now highlights unused priority settings.
- Removed unused localized priority-relateѕ strings.
- Added legacy mapping for columns and sort columns for 'priority.long' and
  'priority.short' columns in report definitions.
- Removed priority color rules implementation.
- Removed obsolete tests for #860, #990, custom.priority_long.t.
- Updated various tests that set priority default, colors.
2015-04-04 19:30:33 -04:00
Paul Beckingham
370afa0d26 Sort: Delegate UDA string sorting to Variant::operator< 2015-04-04 12:53:06 -04:00
Paul Beckingham
fa7d4352cd Sort: All attributes are now sortable 2015-04-04 11:15:43 -04:00
Paul Beckingham
b7ad091d00 Updated copyright to 2015 2015-01-01 00:00:41 -05:00
Paul Beckingham
bd7e66a939 Context
- Improved sort column parsing to include an optional trailing solidus, in
  addition to the +/- sort direction.
2014-07-10 22:14:35 -04:00
Paul Beckingham
29d3fa9c55 sort
- Converted from OldDuration to Duration.
2014-05-28 22:43:24 -04:00
Paul Beckingham
523dce8f32 Code Cleanup
- Standardized headers.
2014-02-01 14:33:37 -05:00
Paul Beckingham
98f740e9d1 Merge branch '2.3.0' into 2.4.0
Conflicts:
	AUTHORS
	CMakeLists.txt
	NEWS
	src/A3.cpp
	src/CMakeLists.txt
	src/Config.cpp
	src/Duration.cpp
	src/Duration.h
	src/Nibbler.cpp
	src/Nibbler.h
	src/RX.cpp
	src/RX.h
	src/columns/ColDate.cpp
	src/columns/ColScheduled.cpp
	src/commands/Command.cpp
	src/legacy.cpp
	src/utf8.cpp
	src/utf8.h
	test/CMakeLists.txt
	test/bug.mergedeps.t.postponed
	test/duration.t.cpp
	test/merge.duplicates.t
	test/merge.simple_duplication.t
	test/merge.t
	test/nibbler.t.cpp
	test/roundtrip.t
	test/rx.t.cpp
	test/utf8.t.cpp
2014-01-07 19:10:03 -05:00
Paul Beckingham
18f03c25b4 Duration
- Renamed Duration object to OldDuration so that the two implementations can
  coexist in a binary.
2014-01-02 01:06:48 -05:00
Paul Beckingham
d27451590a Duration Rename
- In preparation for a new (different) Duration object, the source files need
  to be renamed.
2014-01-02 00:12:28 -05:00
Paul Beckingham
8ed92ca498 Copyright
- Bumped copyright to 2014, ready for release.
2014-01-01 13:32:22 -05:00
Paul Beckingham
d03c4cda8a Build Error
- Many files were missing an explicit cmake.h include.  Some were not including
  it at all.  Now it's used almost everywhere.

(cherry picked from commit 82ae86979c497e6d1d0c6b2b5a55aa379ec82c98)
2013-06-02 13:57:36 -04:00
Paul Beckingham
773b55d374 Code Cleanup
- Removed L10N define.  It served its purpose.
2013-04-07 23:50:51 -04:00
Paul Beckingham
1dccd29643 Copyright 2013
- Updated copyright notices.
2013-03-04 17:47:12 -05:00
Paul Beckingham
e180dce1bc Bug #1063
- Fixed bug #1063, so that numeric UDA fields are now sortable (thanks to Max
  Muller).
2013-01-19 15:45:58 -05:00
Paul Beckingham
26dbd8e790 Code Cleanup
- Made code more compact and consistent while reviewing sorting for UDAs.
2013-01-13 16:52:57 -05:00
Paul Beckingham
051274b960 Bug
- Fixed bug that caused a segfault when an invalid sort column was specified
  (thanks to Uli Martens).
2012-07-16 17:04:25 -04:00
Paul Beckingham
2815fcb90d UDA
- Implemented UDA sorting.
2012-07-16 01:08:42 -04:00
Paul Beckingham
b5f4fa03d2 Performance
- Implemented Task::get_ref, which is a lower-cost attribute accessor.
- Called this in a few places.
2012-04-28 18:01:40 -04:00
Paul Beckingham
8cbacdacf7 Performance
- Sped up task sorting by skipping re-interpretation of certain data types.
2012-04-24 23:28:42 -04:00
Paul Beckingham
96fe3f42ba Minor Refactoring
- Added support for more type-specific checks of attribute values.
- Added support for more type-specific attribute rendering.
- Improved generalized methods for checking columns in a report.
- Added unit tests.
- Minor code cleanup.
- Added secret hidden feature for internal testing.
2012-02-05 20:56:46 -05:00
Paul Beckingham
6580095002 Copyright
- Year change.
2012-01-02 23:32:10 -05:00
Federico Hernandez
8116c6a103 License
- moving task from GPL to MIT license
  top level src directory
2011-10-08 00:04:01 +02:00
Paul Beckingham
aef24c0c54 TDB2
- Converted the sort routine to TDB2.
2011-09-03 11:29:08 -04:00
Paul Beckingham
ac9d1f3bfa Performance Timing
- Change the was performance measurements are taken.  This in preparation
  to automated daily perf charts, leading to efforts to speed up certain
  operations.
2011-08-15 21:53:01 -04:00
Paul Beckingham
76b30d8d10 L10N
- More file conversions.
2011-06-11 14:57:11 -04:00
Paul Beckingham
0260aff441 Build
- Enabled compiler warnings, which were off.  Yikes.
- Fixed all compiler warnings on OSX.
2011-05-28 23:59:43 -04:00
Paul Beckingham
1d10370341 Bug
- Fixed bug that caused dependencies to be sorted by UUID, although
  they are shown as IDs.
- Updated unit test to accomodate new comma-less formatting of
  dependencies.
2011-05-13 18:05:26 -04:00
Paul Beckingham
c1b4f34a70 Sorting
- Added missing custom sorting for due dates.
2011-05-11 22:21:43 -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
4584da8895 Sorting
- Sorting implemented using a non-relocatable task list, a stable
  sort, and type-specific comparisons.
2011-05-05 22:37:54 -04:00
Paul Beckingham
74d799acea View
- First pass at the interface, structure and algorithm used by the
  new View object that will ultimately obsolete Table, Grid and Cell.
2011-04-26 18:19:57 -04:00