summaryrefslogtreecommitdiffstats
path: root/vendor/diff-display
diff options
context:
space:
mode:
authorJohan Sørensen <johan@johansorensen.com>2009-09-10 11:07:53 +0200
committerJohan Sørensen <johan@johansorensen.com>2009-09-28 10:21:07 +0200
commit97bb1994baced41ebf7f692a7884fdbdcb65a1c6 (patch)
tree2b7338eeefd28fe26083ed3b500b9f4532c34666 /vendor/diff-display
parente1c4df003e6e5f0b6204dd1df3afad1562dd75e0 (diff)
downloadgitorious-mainline-outdated-97bb1994baced41ebf7f692a7884fdbdcb65a1c6.zip
gitorious-mainline-outdated-97bb1994baced41ebf7f692a7884fdbdcb65a1c6.tar.gz
gitorious-mainline-outdated-97bb1994baced41ebf7f692a7884fdbdcb65a1c6.tar.bz2
Make Diff::Display calculate line changes and display them in the merge request version
Also style the file list a bit nicer and change the event listener to be on the h4
Diffstat (limited to 'vendor/diff-display')
-rw-r--r--vendor/diff-display/lib/diff/display/data_structure.rb17
-rw-r--r--vendor/diff-display/lib/diff/display/unified.rb6
2 files changed, 21 insertions, 2 deletions
diff --git a/vendor/diff-display/lib/diff/display/data_structure.rb b/vendor/diff-display/lib/diff/display/data_structure.rb
index 176eaf9..1da658c 100644
--- a/vendor/diff-display/lib/diff/display/data_structure.rb
+++ b/vendor/diff-display/lib/diff/display/data_structure.rb
@@ -3,6 +3,21 @@ module Diff
class Data < Array
def initialize
super
+ @stats = {:additions => 0, :deletions => 0}
+ end
+
+ def stats
+ each do |block|
+ block.each do |line|
+ case line
+ when Diff::Display::AddLine
+ @stats[:additions] += 1
+ when Diff::Display::RemLine
+ @stats[:deletions] += 1
+ end
+ end
+ end
+ @stats
end
def to_diff
@@ -190,4 +205,4 @@ module Diff
class NonewlineBlock < Block; end
#:startdoc:#
end
-end \ No newline at end of file
+end
diff --git a/vendor/diff-display/lib/diff/display/unified.rb b/vendor/diff-display/lib/diff/display/unified.rb
index b5e0169..9754f89 100644
--- a/vendor/diff-display/lib/diff/display/unified.rb
+++ b/vendor/diff-display/lib/diff/display/unified.rb
@@ -5,6 +5,10 @@ module Diff
@data = Diff::Display::Unified::Generator.run(udiff)
end
attr_reader :data
+
+ def stats
+ @stats ||= data.stats
+ end
def render(renderer, out="")
out << renderer.render(data)
@@ -12,4 +16,4 @@ module Diff
end
end
end
-end \ No newline at end of file
+end