[BACK]Return to Todo.pm CVS log [TXT][DIR] Up to [local] / todotxt / Text-Todo / lib / Text

Diff for /todotxt/Text-Todo/lib/Text/Todo.pm between version 1.17 and 1.18

version 1.17, 2010/01/12 20:09:02 version 1.18, 2010/01/18 00:19:55
Line 1 
Line 1 
 package Text::Todo;  package Text::Todo;
   
 # $AFresh1: Todo.pm,v 1.16 2010/01/12 19:40:52 andrew Exp $  # $AFresh1: Todo.pm,v 1.17 2010/01/12 20:09:02 andrew Exp $
   
 use warnings;  use warnings;
 use strict;  use strict;
 use Carp;  use Carp;
   
 use Class::Std::Utils;  use Class::Std;
 use Text::Todo::Entry;  use Text::Todo::Entry;
 use File::Spec;  use File::Spec;
   
 use version; our $VERSION = qv('0.0.1');  use version; our $VERSION = qv('0.0.1');
   
 {  {
       my ( %path_of, %list_of, %loaded_of, ) : ATTR;
   
     my %path_of;      sub BUILD {
     my %list_of;          my ( $self, $ident, $options ) = @_;
     my %loaded_of;  
   
     sub new {  
         my ( $class, $options ) = @_;  
   
         my $self = bless anon_scalar(), $class;  
         my $ident = ident($self);  
   
         $path_of{$ident} = {          $path_of{$ident} = {
             todo_dir  => undef,              todo_dir  => undef,
             todo_file => 'todo.txt',              todo_file => 'todo.txt',
Line 160 
Line 154 
         open my $fh, '<', $file or croak "Couldn't open [$file]: $!";          open my $fh, '<', $file or croak "Couldn't open [$file]: $!";
         while (<$fh>) {          while (<$fh>) {
             s/\r?\n$//xms;              s/\r?\n$//xms;
             push @list, Text::Todo::Entry->new($_);              push @list, Text::Todo::Entry->new({ text => $_ });
         }          }
         close $fh or croak "Couldn't close [$file]: $!";          close $fh or croak "Couldn't close [$file]: $!";
   
Line 220 
Line 214 
         my $ident = ident($self);          my $ident = ident($self);
   
         if ( !ref $entry ) {          if ( !ref $entry ) {
             $entry = Text::Todo::Entry->new($entry);              $entry = Text::Todo::Entry->new({ text => $entry });
         }          }
         elsif ( ref $entry ne 'Text::Todo::Entry' ) {          elsif ( ref $entry ne 'Text::Todo::Entry' ) {
             croak(              croak(
Line 428 
Line 422 
   
 =head1 INTERFACE  =head1 INTERFACE
   
 =head2 new  =head2 BUILD
   
     new({      new({
         [ todo_dir    => 'directory', ]          [ todo_dir    => 'directory', ]
Line 439 
Line 433 
   
 Allows you to set each item individually.  todo_file defaults to todo.txt.  Allows you to set each item individually.  todo_file defaults to todo.txt.
   
     new('path/to/todo.txt');      new({ todo_file => 'path/to/todo.txt');
   
 Automatically sets todo_dir to 'path/to', todo_file to 'todo.txt'  Automatically sets todo_dir to 'path/to', todo_file to 'todo.txt'
   
     new('path/to')  
   
 If you pass an existing directory to new, it will set todo_dir.  
   
   
 If you what you set matches (.*)todo(.*).txt it will automatically set  If you what you set matches (.*)todo(.*).txt it will automatically set
 done_file to $1done$2.txt  done_file to $1done$2.txt
 and  and
Line 603 
Line 592 
   
 =head1 DEPENDENCIES  =head1 DEPENDENCIES
   
 Class::Std::Utils  Class::Std
 File::Spec  File::Spec
 version  version
   

Legend:
Removed from v.1.17  
changed lines
  Added in v.1.18

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>