1. 22 Apr, 2016 1 commit
  2. 21 Apr, 2016 2 commits
  3. 19 Apr, 2016 2 commits
  4. 18 Apr, 2016 1 commit
  5. 15 Apr, 2016 5 commits
    • Bram Schoenmakers's avatar
      Fix typo · 739a0631
      Bram Schoenmakers authored
      739a0631
    • Bram Schoenmakers's avatar
      899fa9b2
    • Bram Schoenmakers's avatar
      Show colors in the console · ad781585
      Bram Schoenmakers authored
      This is achieved using abstract colors for projects, contexts, etc.. The
      Color filter for the pretty printer has no knowledge of colors, it just
      marks a certain text as 'project color'. All this information is stored
      in the TopydoString. The CLI will convert the colored parts in the
      string with the corresponding ANSI codes, the column UI will convert the
      string to an appropriate markup for the Text widget.
      
      Also, palette items are now specified using an enum-like class
      (PaletteItem) to reduce hidden dependencies of the palette item names.
      
      Moreover, ConsoleWidget is now a urwid.Pile with Text widgets, instead
      of one single Text widget with all text. This also allows for doing
      operations on lines in the output in the future (mark a line and hit
      complete, for instance).
      ad781585
    • Bram Schoenmakers's avatar
      Let PrettyPrinter return a list of TopydoStrings · ddec35c2
      Bram Schoenmakers authored
      PrettyPrinter no longer outputs a string, but a TopydoString in case of a
      single todo item, or a list of TopydoStrings that may contain color
      information. Those who read the PrettyPrinter output should convert it to a
      string that can be displayed.
      ddec35c2
    • Bram Schoenmakers's avatar
      Embed colors in strings · 7e9f954c
      Bram Schoenmakers authored
      TopydoString is a string descendent that maintains information where
      colors should be applied in a string. A user interface can pass a
      function that transforms a color to a color representation that is
      relevant there. That way, the topydo library does not make any
      assumptions anymore on where colors should be applied.
      7e9f954c
  6. 11 Apr, 2016 2 commits
  7. 10 Apr, 2016 1 commit
  8. 10 Mar, 2016 2 commits
  9. 03 Mar, 2016 1 commit
  10. 01 Mar, 2016 1 commit
  11. 27 Feb, 2016 5 commits
  12. 26 Feb, 2016 1 commit
  13. 23 Feb, 2016 1 commit
  14. 22 Feb, 2016 1 commit
    • Jacek Sowiński's avatar
      Execute commands on multiple items marked with 'm' · ef360c2f
      Jacek Sowiński authored
      1. 'm' can be reconfigured to any other key (action: 'mark').
      2. Using 'mark' on already marked todo item will unmark it.
      3. 'esc' key will clear whole selection.
      4. Command will be executed on **all** marked items in **all** columns.
      ef360c2f
  15. 21 Feb, 2016 3 commits
  16. 20 Feb, 2016 2 commits
  17. 15 Feb, 2016 2 commits
  18. 12 Feb, 2016 7 commits
    • Bram Schoenmakers's avatar
      Swap green colors for 16 color range · ed0d9e06
      Bram Schoenmakers authored
      ed0d9e06
    • Bram Schoenmakers's avatar
    • Bram Schoenmakers's avatar
    • Bram Schoenmakers's avatar
      Add tests for progress colors · 3fd7c6c9
      Bram Schoenmakers authored
      Also removed some unreachable branches from the code.
      3fd7c6c9
    • Bram Schoenmakers's avatar
      Fix color tests for garbage/empty values · 93726c4a
      Bram Schoenmakers authored
      The color functions now return a neutral/default color when
      empty/garbage colors are entered in the configuration file.
      
      This addresses issues #69 and #70.
      93726c4a
    • Bram Schoenmakers's avatar
      Introduce -C flag to steer color output · 239a275f
      Bram Schoenmakers authored
      The -C flag takes 0, 1, 16, 256, auto, yes, true, no, false as possible
      values.
      
      If auto, then colors are enabled unless the output is not connected to a
      TTY and is likely not to understand ANSI escape codes. 'auto' is the
      default value.
      
      The config().colors() function either returns 0, 16 or 256 for the
      possible colors that can be displayed.
      
      These values are also recognized by the colors option in the
      configuration file.
      
      This fixes issue #111.
      239a275f
    • Bram Schoenmakers's avatar
      Introduce a Color class · 163fdb91
      Bram Schoenmakers authored
      This color class abstracts away all the possible representations of a
      color in various UIs. These are color objects:
      
      Color(9)              # red
      Color('red')          # red
      Color(196)            # red
      Color('NEUTRAL')      # neutral (resets attributes)
      Color()               # no effect
      
      The configuration stores Color objects now, code that requires colors
      doesn't have to worry about integer representations of colors.
      
      One semantic change: when an empty color is passed as a priority color,
      it will resort to an empty color instead of the neutral color. In
      practice this should have the same visual effect. Test case
      test_priority_color4 is adapted for this.
      
      This commit is the result after an initial refactoring of the color code
      (squashed its history into this one). @mruwek also contributed to this
      refactoring, thanks for the help and the ideas to get to this point.
      163fdb91