diff options
author | Jason <jason@socialflow.com> | 2013-08-27 14:20:21 +0000 |
---|---|---|
committer | Jason <jason@socialflow.com> | 2013-08-27 14:20:21 +0000 |
commit | 7e6ee683379071b6cea2bda7dce8cb7828baa5b4 (patch) | |
tree | a19ed60af2f7fdb296916146d69e0cbc62300f1b | |
parent | c41829e1b87eb19d80776d422938f7fff25f3c76 (diff) | |
download | spreadsheet-template-7e6ee683379071b6cea2bda7dce8cb7828baa5b4.tar.gz spreadsheet-template-7e6ee683379071b6cea2bda7dce8cb7828baa5b4.zip |
support for full autofilter functionality
-rw-r--r-- | lib/Spreadsheet/Template/Writer/Excel.pm | 14 | ||||
-rw-r--r-- | t/merge.t | 2 |
2 files changed, 12 insertions, 4 deletions
diff --git a/lib/Spreadsheet/Template/Writer/Excel.pm b/lib/Spreadsheet/Template/Writer/Excel.pm index 2e9c3e2..f77e898 100644 --- a/lib/Spreadsheet/Template/Writer/Excel.pm +++ b/lib/Spreadsheet/Template/Writer/Excel.pm @@ -1,6 +1,13 @@ package Spreadsheet::Template::Writer::Excel; +BEGIN { + $Spreadsheet::Template::Writer::Excel::AUTHORITY = 'cpan:DOY'; +} +{ + $Spreadsheet::Template::Writer::Excel::VERSION = '0.01'; +} use Moose::Role; +use Data::Dumper; use Class::Load 'load_class'; use List::Util 'first'; @@ -169,9 +176,8 @@ sub _write_worksheet { } } if (exists $data->{autofilter}) { - my $row = $data->{autofilter}; - my $num_cols = scalar @{$data->{cells}[$data->{autofilter}]}; - $sheet->autofilter($row, 0, $row, $num_cols-1); + my @autofilter = @{$data->{autofilter}}; + $sheet->autofilter($autofilter[0], $autofilter[1], $autofilter[2], $autofilter[3]); } } @@ -185,7 +191,7 @@ sub _write_cell { } my $format; - if (exists $data->{format}) { + if ($data->{format}) { my %border = ( thin => 1, ); @@ -34,6 +34,8 @@ my $data = do { local $/; local @ARGV = ('t/data/merge.json'); <> }; my $ws = $wb->worksheet(0); is($ws->get_name, 'Merge Report 1'); + # In the template, the 4 columns are merged + # with contents = "Merged Cells" for my $col (0..3) { if ($col == 0) { is($ws->get_cell(0, $col)->value, 'Merged Cells'); |