Created
December 25, 2011 20:11
-
-
Save grauwoelfchen/1519684 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
diff --git a/lib/spreadsheet/excel/reader.rb b/lib/spreadsheet/excel/reader.rb | |
index 1c2d445..4413e04 100644 | |
--- a/lib/spreadsheet/excel/reader.rb | |
+++ b/lib/spreadsheet/excel/reader.rb | |
@@ -771,7 +771,7 @@ class Reader | |
# but another self-contained MERGEDCELLS record is started. The limit of 8224 bytes | |
# per record results in a maximum number of 1027 merged ranges. | |
- worksheet.merged_cells.push *read_range_address_list(work, len) | |
+ worksheet.set_merged_cells read_range_address_list(work, len), pos, len | |
# | |
# A cell range address list consists of a field with the number of ranges and the list | |
# of the range addresses. | |
diff --git a/lib/spreadsheet/excel/worksheet.rb b/lib/spreadsheet/excel/worksheet.rb | |
index 87d5e75..b06542d 100644 | |
--- a/lib/spreadsheet/excel/worksheet.rb | |
+++ b/lib/spreadsheet/excel/worksheet.rb | |
@@ -10,13 +10,14 @@ module Spreadsheet | |
# to use any of these. | |
class Worksheet < Spreadsheet::Worksheet | |
include Spreadsheet::Excel::Offset | |
- offset :dimensions | |
+ offset :dimensions, :merged_cells | |
attr_reader :offset, :ole, :links, :guts | |
def initialize opts = {} | |
@row_addresses = nil | |
super | |
@offset, @ole, @reader = opts[:offset], opts[:ole], opts[:reader] | |
@dimensions = nil | |
+ @merged_cells = [] | |
@links = {} | |
@guts = {} | |
end | |
diff --git a/lib/spreadsheet/worksheet.rb b/lib/spreadsheet/worksheet.rb | |
index 7e25020..e66b61e 100644 | |
--- a/lib/spreadsheet/worksheet.rb | |
+++ b/lib/spreadsheet/worksheet.rb | |
@@ -27,7 +27,7 @@ module Spreadsheet | |
include Spreadsheet::Encodings | |
include Enumerable | |
attr_accessor :name, :selected, :workbook | |
- attr_reader :rows, :columns, :merged_cells | |
+ attr_reader :rows, :columns | |
def initialize opts={} | |
@default_format = nil | |
@selected = opts[:selected] | |
@@ -37,7 +37,6 @@ module Spreadsheet | |
@rows = [] | |
@columns = [] | |
@links = {} | |
- @merged_cells = [] | |
end | |
def active # :nodoc: | |
warn "Worksheet#active is deprecated. Please use Worksheet#selected instead." | |
@@ -252,12 +251,6 @@ module Spreadsheet | |
def []= row, column, value | |
row(row)[column] = value | |
end | |
- ## | |
- # Merges multiple cells into one. | |
- def merge_cells start_row, start_col, end_row, end_col | |
- # FIXME enlarge or dup check | |
- @merged_cells.push [start_row, end_row, start_col, end_col] | |
- end | |
private | |
def index_of_first ary # :nodoc: | |
return unless ary |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment