Author: KennethLavrsen Date: 2008-01-08 13:52:21 -0600 (Tue, 08 Jan 2008) New Revision: 16172 Trac url: http://develop.twiki.org/trac/changeset/16172 Modified: twiki/branches/TWikiRelease04x02/twikiplugins/EditTablePlugin/data/TWiki/EditTablePlugin.txt twiki/branches/TWikiRelease04x02/twikiplugins/EditTablePlugin/lib/TWiki/Plugins/EditTablePlugin.pm twiki/branches/TWikiRelease04x02/twikiplugins/EditTablePlugin/lib/TWiki/Plugins/EditTablePlugin/Core.pm twiki/branches/TWikiRelease04x02/twikiplugins/EditTablePlugin/test/unit/EditTablePlugin/EditTablePluginTests.pm Log: Item5217: EditTablePlugin does unwanted merging of cells because it no longer leaves space in empty cell Note that this reverts the feature added for Item4910 Problem with 4910 is that is it not obvious for users that deleting the content of a table means merging with cell to the left. Users expect to get an empty cell. Using the plugin with real users has revealed this. A merge feature with EditTable will have to be engineered in a different way maybe with a backwards compatible EDITCELL feature. Modified: twiki/branches/TWikiRelease04x02/twikiplugins/EditTablePlugin/data/TWiki/EditTablePlugin.txt =================================================================== --- twiki/branches/TWikiRelease04x02/twikiplugins/EditTablePlugin/data/TWiki/EditTablePlugin.txt 2008-01-08 08:32:09 UTC (rev 16171) +++ twiki/branches/TWikiRelease04x02/twikiplugins/EditTablePlugin/data/TWiki/EditTablePlugin.txt 2008-01-08 19:52:21 UTC (rev 16172) @@ -221,7 +221,7 @@ | Plugin Author: | TWiki:Main/PeterThoeny | | Copyright: | © 2002-2007, TWiki:Main.PeterThoeny ([[http://www.twiki.net/][TWIKI.NET]]) and TWiki Contributors | | License: | GPL ([[http://www.gnu.org/copyleft/gpl.html][GNU General Public License]]) | -| Plugin Version: | 4.7.9 (08 Jan 2008) | +| Plugin Version: | 4.7.10 (08 Jan 2008) | | Change History: | <!-- specify latest version first --> | | 25 Dec 2007: | 4.7.1: Arthur Clemens: Added warning if =include= parameter topic does not exist. | | 22 Dec 2007: | 4.7: Arthur Clemens: Changed handling of escaped variables. To escape TWiki variable, use formatting tokens such as =$percnt=. | Modified: twiki/branches/TWikiRelease04x02/twikiplugins/EditTablePlugin/lib/TWiki/Plugins/EditTablePlugin/Core.pm =================================================================== --- twiki/branches/TWikiRelease04x02/twikiplugins/EditTablePlugin/lib/TWiki/Plugins/EditTablePlugin/Core.pm 2008-01-08 08:32:09 UTC (rev 16171) +++ twiki/branches/TWikiRelease04x02/twikiplugins/EditTablePlugin/lib/TWiki/Plugins/EditTablePlugin/Core.pm 2008-01-08 19:52:21 UTC (rev 16172) @@ -1254,7 +1254,7 @@ sub addSpaceToBothSides { my ($text) = @_; - return $text if $text eq ''; + return ' ' if $text eq ''; #Item5217 $text = " $text "; $text =~ s/^\s+/ /; # remove extra spaces Modified: twiki/branches/TWikiRelease04x02/twikiplugins/EditTablePlugin/lib/TWiki/Plugins/EditTablePlugin.pm =================================================================== --- twiki/branches/TWikiRelease04x02/twikiplugins/EditTablePlugin/lib/TWiki/Plugins/EditTablePlugin.pm 2008-01-08 08:32:09 UTC (rev 16171) +++ twiki/branches/TWikiRelease04x02/twikiplugins/EditTablePlugin/lib/TWiki/Plugins/EditTablePlugin.pm 2008-01-08 19:52:21 UTC (rev 16172) @@ -35,7 +35,7 @@ # This is a free-form string you can use to "name" your own plugin version. # It is *not* used by the build automation tools, but is reported as part # of the version number in PLUGINDESCRIPTIONS. -$RELEASE = '4.7.9'; +$RELEASE = '4.7.10'; $encodeStart = '--EditTableEncodeStart--'; $encodeEnd = '--EditTableEncodeEnd--'; Modified: twiki/branches/TWikiRelease04x02/twikiplugins/EditTablePlugin/test/unit/EditTablePlugin/EditTablePluginTests.pm =================================================================== --- twiki/branches/TWikiRelease04x02/twikiplugins/EditTablePlugin/test/unit/EditTablePlugin/EditTablePluginTests.pm 2008-01-08 08:32:09 UTC (rev 16171) +++ twiki/branches/TWikiRelease04x02/twikiplugins/EditTablePlugin/test/unit/EditTablePlugin/EditTablePluginTests.pm 2008-01-08 19:52:21 UTC (rev 16172) @@ -366,8 +366,8 @@ $expected = <<NEWEXPECTED; %EDITTABLE{format="| row, -1 | text, 10, init|"}% | 0 | test1 | -|| test2 | -|| test3 | +| | test2 | +| | test3 | NEWEXPECTED $this->assert_str_equals( $expected, $newtext, 0 ); @@ -737,12 +737,12 @@ my $expected = <<NEWEXPECTED; %TABLE{columnwidths="80,80,50,110,150,50,50,50,50,50,70,70,50" dataalign="left,left,center,left,left,center,center,center,center,center,center,right,right,center" headeralign="center" headerrows="1" footerrows="1" headerislabel="on"}%%EDITTABLE{format="|text,10|text,10|text,3|text,15|text,15|text,3|text,3|text,3|text,3|text,3|text,3|text,10|label,0|text,5|" }% | *Project* | *Customer* | *Pass* | *Type* | *Purpose* | *Qty* | *Radios* | *Controllers* | *Hubs* | *Tuners* | *Hybrid* | *Unit Cost (USD)* | *Total Cost (USD)* | *When (Q)* | -| Project A | Engineering | A | PK2 | Eng Test | 2 | 4 || 2 | 2 || 6214 | %CALC{"\$EVAL(\$T(R\$ROW():C6) * \$T(R\$ROW():C\$COLUMN(-1)))"}% | Q1 | -| Project B | Factory | A | PC2 | Fact Test | 1 | 4 || 2 | 2 || 6214 | %CALC{"\$EVAL(\$T(R\$ROW():C6) * \$T(R\$ROW():C\$COLUMN(-1)))"}% | Q2 | -| Project C | Eng | P1 | CT5 | Eng Test | 1 | 2 | 1 ||| 1 | 3502 | %CALC{"\$EVAL(\$T(R\$ROW():C6) * \$T(R\$ROW():C\$COLUMN(-1)))"}% | Q3 | -| Project D | SW | P1 | CT5 | SW Dev | 2 | 4 | 2 || 2 || 6345 | %CALC{"\$EVAL(\$T(R\$ROW():C6) * \$T(R\$ROW():C\$COLUMN(-1)))"}% | Q4 | -||||||||||||||| -| Total ||||| *%CALC{"\$SUM(\$ABOVE())"}%* | *%CALC{"\$SUMPRODUCT(R2:C6..R\$ROW(-1):C6, R2:C\$COLUMN(0)..R\$ROW(-1):C\$COLUMN(0))"}%* | *%CALC{"\$SUMPRODUCT(R2:C6..R\$ROW(-1):C6, R2:C\$COLUMN(0)..R\$ROW(-1):C\$COLUMN(0))"}%* | *%CALC{"\$SUMPRODUCT(R2:C6..R\$ROW(-1):C6, R2:C\$COLUMN(0)..R\$ROW(-1):C\$COLUMN(0))"}%* | *%CALC{"\$SUMPRODUCT(R2:C6..R\$ROW(-1):C6, R2:C\$COLUMN(0)..R\$ROW(-1):C\$COLUMN(0))"}%* | *%CALC{"\$SUMPRODUCT(R2:C6..R\$ROW(-1):C6, R2:C\$COLUMN(0)..R\$ROW(-1):C\$COLUMN(0))"}%* || *%CALC{"\$SUM(\$ABOVE())"}%* || +| Project A | Engineering | A | PK2 | Eng Test | 2 | 4 | | 2 | 2 | | 6214 | %CALC{"\$EVAL(\$T(R\$ROW():C6) * \$T(R\$ROW():C\$COLUMN(-1)))"}% | Q1 | +| Project B | Factory | A | PC2 | Fact Test | 1 | 4 | | 2 | 2 | | 6214 | %CALC{"\$EVAL(\$T(R\$ROW():C6) * \$T(R\$ROW():C\$COLUMN(-1)))"}% | Q2 | +| Project C | Eng | P1 | CT5 | Eng Test | 1 | 2 | 1 | | | 1 | 3502 | %CALC{"\$EVAL(\$T(R\$ROW():C6) * \$T(R\$ROW():C\$COLUMN(-1)))"}% | Q3 | +| Project D | SW | P1 | CT5 | SW Dev | 2 | 4 | 2 | | 2 | | 6345 | %CALC{"\$EVAL(\$T(R\$ROW():C6) * \$T(R\$ROW():C\$COLUMN(-1)))"}% | Q4 | +| | | | | | | | | | | | | | | +| Total | | | | | *%CALC{"\$SUM(\$ABOVE())"}%* | *%CALC{"\$SUMPRODUCT(R2:C6..R\$ROW(-1):C6, R2:C\$COLUMN(0)..R\$ROW(-1):C\$COLUMN(0))"}%* | *%CALC{"\$SUMPRODUCT(R2:C6..R\$ROW(-1):C6, R2:C\$COLUMN(0)..R\$ROW(-1):C\$COLUMN(0))"}%* | *%CALC{"\$SUMPRODUCT(R2:C6..R\$ROW(-1):C6, R2:C\$COLUMN(0)..R\$ROW(-1):C\$COLUMN(0))"}%* | *%CALC{"\$SUMPRODUCT(R2:C6..R\$ROW(-1):C6, R2:C\$COLUMN(0)..R\$ROW(-1):C\$COLUMN(0))"}%* | *%CALC{"\$SUMPRODUCT(R2:C6..R\$ROW(-1):C6, R2:C\$COLUMN(0)..R\$ROW(-1):C\$COLUMN(0))"}%* | | *%CALC{"\$SUM(\$ABOVE())"}%* | | NEWEXPECTED $this->assert_str_equals( $expected, $newtext, 0 ); @@ -867,11 +867,14 @@ =pod -Test if colspan cells do not get saved with a space +Test if colspan cells do get split to avoid that users get unwanted cell merges +when they delete the content of a cell. +Note that EditTablePlugin does not support merged cells using the ||| syntax. +If a merge feature is added please pay attention to Item5217 =cut -sub test_keepColspans { +sub test_addSpacesToEmptyCells { my $this = shift; my $topicName = $this->{test_topic}; my $webName = $this->{test_web}; @@ -913,8 +916,8 @@ my ( $meta, $newtext ) = TWiki::Func::readTopic( $webName, $topicName ); my $expected = <<NEWEXPECTED; %EDITTABLE{format="|text,40|text,10|"}% -|| X | -| DEF || +| | X | +| DEF | | NEWEXPECTED $this->assert_str_equals( $expected, $newtext, 0 ); $twiki->finish(); |