writeexcel 1.0.4 → 1.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (99) hide show
  1. checksums.yaml +5 -5
  2. data/.travis.yml +8 -0
  3. data/README.rdoc +9 -1
  4. data/examples/a_simple.rb +0 -1
  5. data/examples/chart_area.rb +0 -1
  6. data/examples/chart_legend.rb +0 -1
  7. data/examples/copyformat.rb +0 -1
  8. data/examples/data_validate.rb +1 -2
  9. data/examples/date_time.rb +0 -1
  10. data/examples/demo.rb +0 -1
  11. data/examples/diag_border.rb +0 -1
  12. data/examples/formats.rb +0 -1
  13. data/examples/header.rb +0 -1
  14. data/examples/hide_sheet.rb +0 -1
  15. data/examples/hyperlink.rb +0 -1
  16. data/examples/hyperlink2.rb +0 -1
  17. data/examples/images.rb +0 -1
  18. data/examples/merge1.rb +0 -1
  19. data/examples/merge2.rb +0 -1
  20. data/examples/merge3.rb +0 -1
  21. data/examples/merge4.rb +0 -1
  22. data/examples/merge5.rb +0 -1
  23. data/examples/password_protection.rb +0 -1
  24. data/examples/properties.rb +0 -1
  25. data/examples/properties_jp.rb +0 -1
  26. data/examples/protection.rb +0 -1
  27. data/examples/regions.rb +0 -1
  28. data/examples/repeat.rb +0 -1
  29. data/examples/set_first_sheet.rb +0 -1
  30. data/examples/stocks.rb +0 -1
  31. data/examples/store_formula.rb +0 -1
  32. data/examples/tab_colors.rb +0 -1
  33. data/examples/write_arrays.rb +0 -1
  34. data/lib/writeexcel/biffwriter.rb +2 -1
  35. data/lib/writeexcel/chart.rb +2 -3
  36. data/lib/writeexcel/charts/area.rb +1 -1
  37. data/lib/writeexcel/charts/pie.rb +1 -1
  38. data/lib/writeexcel/charts/scatter.rb +1 -1
  39. data/lib/writeexcel/charts/stock.rb +1 -1
  40. data/lib/writeexcel/col_info.rb +2 -2
  41. data/lib/writeexcel/comments.rb +1 -1
  42. data/lib/writeexcel/convert_date_time.rb +7 -7
  43. data/lib/writeexcel/excelformulaparser.rb +49 -49
  44. data/lib/writeexcel/format.rb +1 -1
  45. data/lib/writeexcel/formula.rb +2 -6
  46. data/lib/writeexcel/helper.rb +3 -3
  47. data/lib/writeexcel/properties.rb +1 -1
  48. data/lib/writeexcel/shared_string_table.rb +5 -5
  49. data/lib/writeexcel/storage_lite.rb +2 -9
  50. data/lib/writeexcel/version.rb +1 -1
  51. data/lib/writeexcel/workbook.rb +13 -14
  52. data/lib/writeexcel/worksheet.rb +43 -35
  53. data/test/helper.rb +12 -5
  54. data/test/test_00_IEEE_double.rb +1 -1
  55. data/test/test_04_dimensions.rb +2 -2
  56. data/test/test_05_rows.rb +1 -1
  57. data/test/test_06_extsst.rb +1 -1
  58. data/test/test_11_date_time.rb +1 -1
  59. data/test/test_12_date_only.rb +1 -1
  60. data/test/test_13_date_seconds.rb +1 -1
  61. data/test/test_21_escher.rb +1 -1
  62. data/test/test_22_mso_drawing_group.rb +1 -1
  63. data/test/test_23_note.rb +1 -1
  64. data/test/test_24_txo.rb +1 -1
  65. data/test/test_25_position_object.rb +1 -1
  66. data/test/test_26_autofilter.rb +1 -1
  67. data/test/test_27_autofilter.rb +1 -1
  68. data/test/test_28_autofilter.rb +1 -1
  69. data/test/test_29_process_jpg.rb +1 -43
  70. data/test/test_30_validation_dval.rb +1 -1
  71. data/test/test_31_validation_dv_strings.rb +1 -1
  72. data/test/test_32_validation_dv_formula.rb +1 -1
  73. data/test/test_40_property_types.rb +1 -1
  74. data/test/test_41_properties.rb +1 -1
  75. data/test/test_42_set_properties.rb +2 -2
  76. data/test/test_50_name_stored.rb +1 -9
  77. data/test/test_51_name_print_area.rb +3 -13
  78. data/test/test_52_name_print_titles.rb +3 -21
  79. data/test/test_53_autofilter.rb +1 -5
  80. data/test/test_60_chart_generic.rb +3 -3
  81. data/test/test_61_chart_subclasses.rb +2 -1
  82. data/test/test_62_chart_formats.rb +9 -21
  83. data/test/test_63_chart_area_formats.rb +1 -1
  84. data/test/test_compatibility.rb +1 -1
  85. data/test/test_example_match.rb +835 -835
  86. data/test/test_format.rb +1 -114
  87. data/test/test_formula.rb +1 -1
  88. data/test/test_properties.rb +1 -2
  89. data/test/test_storage_lite.rb +2 -2
  90. data/test/test_workbook.rb +1 -66
  91. data/test/test_worksheet.rb +1 -18
  92. data/test/test_write_formula_does_not_change_formula_string.rb +1 -1
  93. data/writeexcel.gemspec +4 -1
  94. metadata +38 -19
  95. data/test/test_01_add_worksheet.rb +0 -43
  96. data/test/test_02_merge_formats.rb +0 -49
  97. data/test/test_biff.rb +0 -71
  98. data/test/test_big_workbook.rb +0 -17
  99. data/test/test_ole.rb +0 -102
@@ -1,4 +1,5 @@
1
1
  # -*- coding: utf-8 -*-
2
+ # frozen_string_literal: true
2
3
  #
3
4
  # DO NOT MODIFY!!!!
4
5
  # This file is automatically generated by Racc 1.4.11
@@ -293,14 +294,14 @@ Racc_debug_parser = false
293
294
 
294
295
  module_eval(<<'.,.,', 'excelformula.y', 20)
295
296
  def _reduce_2(val, _values, result)
296
- result = []
297
+ result = []
297
298
  result
298
299
  end
299
300
  .,.,
300
301
 
301
302
  module_eval(<<'.,.,', 'excelformula.y', 21)
302
303
  def _reduce_3(val, _values, result)
303
- result.push val[1], '_arg', '1'
304
+ result.push val[1], '_arg', '1'
304
305
  result
305
306
  end
306
307
  .,.,
@@ -309,84 +310,84 @@ module_eval(<<'.,.,', 'excelformula.y', 21)
309
310
 
310
311
  module_eval(<<'.,.,', 'excelformula.y', 24)
311
312
  def _reduce_5(val, _values, result)
312
- result = [ val[0], val[2], 'ptgAdd' ]
313
+ result = [ val[0], val[2], 'ptgAdd' ]
313
314
  result
314
315
  end
315
316
  .,.,
316
317
 
317
318
  module_eval(<<'.,.,', 'excelformula.y', 25)
318
319
  def _reduce_6(val, _values, result)
319
- result = [ val[0], val[2], 'ptgSub' ]
320
+ result = [ val[0], val[2], 'ptgSub' ]
320
321
  result
321
322
  end
322
323
  .,.,
323
324
 
324
325
  module_eval(<<'.,.,', 'excelformula.y', 26)
325
326
  def _reduce_7(val, _values, result)
326
- result = [ val[0], val[2], 'ptgMul' ]
327
+ result = [ val[0], val[2], 'ptgMul' ]
327
328
  result
328
329
  end
329
330
  .,.,
330
331
 
331
332
  module_eval(<<'.,.,', 'excelformula.y', 27)
332
333
  def _reduce_8(val, _values, result)
333
- result = [ val[0], val[2], 'ptgDiv' ]
334
+ result = [ val[0], val[2], 'ptgDiv' ]
334
335
  result
335
336
  end
336
337
  .,.,
337
338
 
338
339
  module_eval(<<'.,.,', 'excelformula.y', 28)
339
340
  def _reduce_9(val, _values, result)
340
- result = [ val[0], val[2], 'ptgPower' ]
341
+ result = [ val[0], val[2], 'ptgPower' ]
341
342
  result
342
343
  end
343
344
  .,.,
344
345
 
345
346
  module_eval(<<'.,.,', 'excelformula.y', 29)
346
347
  def _reduce_10(val, _values, result)
347
- result = [ val[0], val[2], 'ptgConcat' ]
348
+ result = [ val[0], val[2], 'ptgConcat' ]
348
349
  result
349
350
  end
350
351
  .,.,
351
352
 
352
353
  module_eval(<<'.,.,', 'excelformula.y', 30)
353
354
  def _reduce_11(val, _values, result)
354
- result = [ val[0], val[2], 'ptgLT' ]
355
+ result = [ val[0], val[2], 'ptgLT' ]
355
356
  result
356
357
  end
357
358
  .,.,
358
359
 
359
360
  module_eval(<<'.,.,', 'excelformula.y', 31)
360
361
  def _reduce_12(val, _values, result)
361
- result = [ val[0], val[2], 'ptgGT' ]
362
+ result = [ val[0], val[2], 'ptgGT' ]
362
363
  result
363
364
  end
364
365
  .,.,
365
366
 
366
367
  module_eval(<<'.,.,', 'excelformula.y', 32)
367
368
  def _reduce_13(val, _values, result)
368
- result = [ val[0], val[2], 'ptgLE' ]
369
+ result = [ val[0], val[2], 'ptgLE' ]
369
370
  result
370
371
  end
371
372
  .,.,
372
373
 
373
374
  module_eval(<<'.,.,', 'excelformula.y', 33)
374
375
  def _reduce_14(val, _values, result)
375
- result = [ val[0], val[2], 'ptgGE' ]
376
+ result = [ val[0], val[2], 'ptgGE' ]
376
377
  result
377
378
  end
378
379
  .,.,
379
380
 
380
381
  module_eval(<<'.,.,', 'excelformula.y', 34)
381
382
  def _reduce_15(val, _values, result)
382
- result = [ val[0], val[2], 'ptgNE' ]
383
+ result = [ val[0], val[2], 'ptgNE' ]
383
384
  result
384
385
  end
385
386
  .,.,
386
387
 
387
388
  module_eval(<<'.,.,', 'excelformula.y', 35)
388
389
  def _reduce_16(val, _values, result)
389
- result = [ val[0], val[2], 'ptgEQ' ]
390
+ result = [ val[0], val[2], 'ptgEQ' ]
390
391
  result
391
392
  end
392
393
  .,.,
@@ -395,14 +396,14 @@ module_eval(<<'.,.,', 'excelformula.y', 35)
395
396
 
396
397
  module_eval(<<'.,.,', 'excelformula.y', 38)
397
398
  def _reduce_18(val, _values, result)
398
- result = [ val[1], '_arg', '1', 'ptgParen']
399
+ result = [ val[1], '_arg', '1', 'ptgParen']
399
400
  result
400
401
  end
401
402
  .,.,
402
403
 
403
404
  module_eval(<<'.,.,', 'excelformula.y', 39)
404
405
  def _reduce_19(val, _values, result)
405
- result = [ '_num', '-1', val[1], 'ptgMul' ]
406
+ result = [ '_num', '-1', val[1], 'ptgMul' ]
406
407
  result
407
408
  end
408
409
  .,.,
@@ -411,63 +412,63 @@ module_eval(<<'.,.,', 'excelformula.y', 39)
411
412
 
412
413
  module_eval(<<'.,.,', 'excelformula.y', 41)
413
414
  def _reduce_21(val, _values, result)
414
- result = [ '_num', val[0] ]
415
+ result = [ '_num', val[0] ]
415
416
  result
416
417
  end
417
418
  .,.,
418
419
 
419
420
  module_eval(<<'.,.,', 'excelformula.y', 42)
420
421
  def _reduce_22(val, _values, result)
421
- result = [ '_str', val[0] ]
422
+ result = [ '_str', val[0] ]
422
423
  result
423
424
  end
424
425
  .,.,
425
426
 
426
427
  module_eval(<<'.,.,', 'excelformula.y', 43)
427
428
  def _reduce_23(val, _values, result)
428
- result = [ '_ref2d', val[0] ]
429
+ result = [ '_ref2d', val[0] ]
429
430
  result
430
431
  end
431
432
  .,.,
432
433
 
433
434
  module_eval(<<'.,.,', 'excelformula.y', 44)
434
435
  def _reduce_24(val, _values, result)
435
- result = [ '_ref3d', val[0] ]
436
+ result = [ '_ref3d', val[0] ]
436
437
  result
437
438
  end
438
439
  .,.,
439
440
 
440
441
  module_eval(<<'.,.,', 'excelformula.y', 45)
441
442
  def _reduce_25(val, _values, result)
442
- result = [ '_range2d', val[0] ]
443
+ result = [ '_range2d', val[0] ]
443
444
  result
444
445
  end
445
446
  .,.,
446
447
 
447
448
  module_eval(<<'.,.,', 'excelformula.y', 46)
448
449
  def _reduce_26(val, _values, result)
449
- result = [ '_range3d', val[0] ]
450
+ result = [ '_range3d', val[0] ]
450
451
  result
451
452
  end
452
453
  .,.,
453
454
 
454
455
  module_eval(<<'.,.,', 'excelformula.y', 47)
455
456
  def _reduce_27(val, _values, result)
456
- result = [ '_name', val[0] ]
457
+ result = [ '_name', val[0] ]
457
458
  result
458
459
  end
459
460
  .,.,
460
461
 
461
462
  module_eval(<<'.,.,', 'excelformula.y', 48)
462
463
  def _reduce_28(val, _values, result)
463
- result = [ 'ptgBool', '1' ]
464
+ result = [ 'ptgBool', '1' ]
464
465
  result
465
466
  end
466
467
  .,.,
467
468
 
468
469
  module_eval(<<'.,.,', 'excelformula.y', 49)
469
470
  def _reduce_29(val, _values, result)
470
- result = [ 'ptgBool', '0' ]
471
+ result = [ 'ptgBool', '0' ]
471
472
  result
472
473
  end
473
474
  .,.,
@@ -476,28 +477,28 @@ module_eval(<<'.,.,', 'excelformula.y', 49)
476
477
 
477
478
  module_eval(<<'.,.,', 'excelformula.y', 52)
478
479
  def _reduce_31(val, _values, result)
479
- result = [ '_class', val[0], val[2], '_arg', val[2].size.to_s, '_func', val[0] ]
480
+ result = [ '_class', val[0], val[2], '_arg', val[2].size.to_s, '_func', val[0] ]
480
481
  result
481
482
  end
482
483
  .,.,
483
484
 
484
485
  module_eval(<<'.,.,', 'excelformula.y', 53)
485
486
  def _reduce_32(val, _values, result)
486
- result = [ '_func', val[0] ]
487
+ result = [ '_func', val[0] ]
487
488
  result
488
489
  end
489
490
  .,.,
490
491
 
491
492
  module_eval(<<'.,.,', 'excelformula.y', 55)
492
493
  def _reduce_33(val, _values, result)
493
- result = val
494
+ result = val
494
495
  result
495
496
  end
496
497
  .,.,
497
498
 
498
499
  module_eval(<<'.,.,', 'excelformula.y', 56)
499
500
  def _reduce_34(val, _values, result)
500
- result.push val[2]
501
+ result.push val[2]
501
502
  result
502
503
  end
503
504
  .,.,
@@ -515,70 +516,69 @@ end
515
516
  module Writeexcel
516
517
 
517
518
  class Node # :nodoc:
518
-
519
+
519
520
  def exec_list(nodes)
520
521
  v = nil
521
522
  nodes.each { |i| v = i.evaluate }
522
523
  v
523
524
  end
524
-
525
+
525
526
  def excelformulaparser_error(msg)
526
527
  raise ExcelFormulaParserError,
527
528
  "in #{fname}:#{lineno}: #{msg}"
528
529
  end
529
-
530
+
530
531
  end
531
-
532
+
532
533
  class RootNode < Node # :nodoc:
533
-
534
+
534
535
  def initialize(tree)
535
536
  @tree = tree
536
537
  end
537
-
538
+
538
539
  def evaluate
539
540
  exec_list @tree
540
541
  end
541
-
542
+
542
543
  end
543
-
544
-
544
+
545
+
545
546
  class FuncallNode < Node # :nodoc:
546
-
547
+
547
548
  def initialize(func, args)
548
549
  @func = func
549
550
  @args = args
550
551
  end
551
-
552
+
552
553
  def evaluate
553
554
  arg = @args.collect {|i| i.evaluate }
554
- out = []
555
555
  arg.each { |i| o.push i }
556
556
  o.push @func
557
557
  p o
558
558
  end
559
-
559
+
560
560
  end
561
-
561
+
562
562
  class NumberNode < Node # :nodoc:
563
-
563
+
564
564
  def initialize(val)
565
565
  @val = val
566
566
  end
567
-
567
+
568
568
  def evaluate
569
569
  p @val
570
570
  end
571
-
571
+
572
572
  end
573
-
573
+
574
574
  class OperateNode < Node # :nodoc:
575
-
575
+
576
576
  def initialize(op, left, right)
577
577
  @op = op
578
578
  @left = left
579
579
  @right = right
580
580
  end
581
-
581
+
582
582
  def evaluate
583
583
  o = []
584
584
  o.push @left
@@ -1,4 +1,5 @@
1
1
  # -*- coding: utf-8 -*-
2
+ # frozen_string_literal: true
2
3
  ##############################################################################
3
4
  #
4
5
  # Format - A class for defining Excel formatting.
@@ -1572,4 +1573,3 @@ class Format < Colors
1572
1573
  end # class Format
1573
1574
 
1574
1575
  end # module Writeexcel
1575
-
@@ -1,4 +1,5 @@
1
1
  # -*- coding: utf-8 -*-
2
+ # frozen_string_literal: true
2
3
  ###############################################################################
3
4
  #
4
5
  # Formula - A class for generating Excel formulas.
@@ -62,7 +63,6 @@ class Formula < ExcelFormulaParser #:nodoc:
62
63
  #
63
64
  def parse_tokens(tokens)
64
65
  parse_str = ''
65
- last_type = ''
66
66
  modifier = ''
67
67
  num_args = 0
68
68
  _class = 0
@@ -680,13 +680,11 @@ class Formula < ExcelFormulaParser #:nodoc:
680
680
  'ptgRefNV' => 0x4C,
681
681
  'ptgAreaNV' => 0x4D,
682
682
  'ptgMemAreaNV' => 0x4E,
683
- 'ptgMemNoMemN' => 0x4F,
684
683
  'ptgFuncCEV' => 0x58,
685
684
  'ptgNameXV' => 0x59,
686
685
  'ptgRef3dV' => 0x5A,
687
686
  'ptgArea3dV' => 0x5B,
688
687
  'ptgRefErr3dV' => 0x5C,
689
- 'ptgAreaErr3d' => 0x5D,
690
688
  'ptgArrayA' => 0x60,
691
689
  'ptgFuncA' => 0x61,
692
690
  'ptgFuncVarA' => 0x62,
@@ -702,13 +700,11 @@ class Formula < ExcelFormulaParser #:nodoc:
702
700
  'ptgRefNA' => 0x6C,
703
701
  'ptgAreaNA' => 0x6D,
704
702
  'ptgMemAreaNA' => 0x6E,
705
- 'ptgMemNoMemN' => 0x6F,
706
703
  'ptgFuncCEA' => 0x78,
707
704
  'ptgNameXA' => 0x79,
708
705
  'ptgRef3dA' => 0x7A,
709
706
  'ptgArea3dA' => 0x7B,
710
- 'ptgRefErr3dA' => 0x7C,
711
- 'ptgAreaErr3d' => 0x7D
707
+ 'ptgRefErr3dA' => 0x7C
712
708
  }
713
709
 
714
710
  # Thanks to Michael Meeks and Gnumeric for the initial arg values.
@@ -42,9 +42,9 @@
42
42
  private :utf8_to_16le
43
43
 
44
44
  def ascii_to_16be(ascii)
45
- ascii.unpack("C*").pack("n*")
46
- ruby_19 { ascii.force_encoding('UTF-16BE') }
47
- ascii
45
+ str_16be = ascii.unpack("C*").pack("n*")
46
+ ruby_19 { str_16be.force_encoding('UTF-16BE') }
47
+ str_16be
48
48
  end
49
49
  private :ascii_to_16be
50
50
 
@@ -178,7 +178,7 @@ end
178
178
  #
179
179
  def pack_VT_I2(value) #:nodoc:
180
180
  type = 0x0002
181
- data = [type, value].pack('VV')
181
+ [type, value].pack('VV')
182
182
  end
183
183
 
184
184
  ###############################################################################
@@ -109,10 +109,10 @@ class Workbook < BIFFWriter
109
109
  written += space_remaining
110
110
 
111
111
  # Reduce the current block length by the amount written
112
- block_length -= continue_limit -continue -align
112
+ block_length -= continue_limit - continue - align
113
113
 
114
114
  # Store the max size for this block
115
- block_sizes.push(continue_limit -align)
115
+ block_sizes.push(continue_limit - align)
116
116
 
117
117
  # If the current string was split then the next CONTINUE block
118
118
  # should have the string continue flag (grbit) set unless the
@@ -125,10 +125,10 @@ class Workbook < BIFFWriter
125
125
  end
126
126
  else
127
127
  # Store the max size for this block
128
- block_sizes.push(written +continue)
128
+ block_sizes.push(written + continue)
129
129
 
130
130
  # Not enough space to start the string in the current block
131
- block_length -= continue_limit -space_remaining -continue
131
+ block_length -= continue_limit - space_remaining - continue
132
132
  continue = 0
133
133
  end
134
134
 
@@ -145,7 +145,7 @@ class Workbook < BIFFWriter
145
145
  end
146
146
 
147
147
  # Store the max size for the last block unless it is empty
148
- block_sizes.push(written +continue) if written +continue != 0
148
+ block_sizes.push(written + continue) if written + continue != 0
149
149
 
150
150
  block_sizes
151
151
  end
@@ -55,8 +55,6 @@ class OLEStorageLite #:nodoc:
55
55
  end
56
56
  done << no
57
57
 
58
- rootblock = info[:root_start]
59
-
60
58
  #1. Get Information about itself
61
59
  pps = _getNthPps(no, info, data)
62
60
 
@@ -76,7 +74,6 @@ class OLEStorageLite #:nodoc:
76
74
  private :_getPpsTree
77
75
 
78
76
  def _getPpsSearch(no, info, name, data, icase, done = nil)
79
- rootblock = info[:root_start]
80
77
  #1. Check it self
81
78
  if done
82
79
  return [] if done.include?(no)
@@ -589,7 +586,6 @@ class OLEStorageLitePPSRoot < OLEStorageLitePPS #:nodoc:
589
586
  rh_info[:fileh] = sFile.binmode
590
587
  end
591
588
 
592
- iBlk = 0
593
589
  #1. Make an array of PPS (for Save)
594
590
  aList=[]
595
591
  if bNoAs
@@ -728,7 +724,6 @@ class OLEStorageLitePPSRoot < OLEStorageLitePPS #:nodoc:
728
724
  private :_saveHeader
729
725
 
730
726
  def _saveBigData(iStBlk, aList, rh_info)
731
- iRes = 0
732
727
  file = rh_info[:fileh]
733
728
 
734
729
  #1.Write Big (ge 0x1000) Data into Block
@@ -810,7 +805,7 @@ class OLEStorageLitePPSRoot < OLEStorageLitePPS #:nodoc:
810
805
  aPrev = aWk[0, iPos]
811
806
  aWk[0..iPos-1] = []
812
807
  aNext = aWk[1, iCnt - iPos - 1]
813
- aWk[1..(1 + iCnt - iPos -1 -1)] = []
808
+ aWk[1..(1 + iCnt - iPos - 1 - 1)] = []
814
809
  pps_array[iPos].prev_pps = _savePpsSetPnt(aPrev, aList, rh_info)
815
810
  pps_array[iPos].next_pps = _savePpsSetPnt(aNext, aList, rh_info)
816
811
  pps_array[iPos].dir_pps = _savePpsSetPnt(pps_array[iPos].child, aList, rh_info)
@@ -834,12 +829,10 @@ class OLEStorageLitePPSRoot < OLEStorageLitePPS #:nodoc:
834
829
  return pps_array[0].no
835
830
  #1.3 Array
836
831
  else
837
- iCnt = pps_array.size
838
832
  #1.3.1 Define Center
839
833
  iPos = 0 #int($iCnt/ 2); #$iCnt
840
834
 
841
835
  aWk = pps_array.dup
842
- aPrev = aWk[1, 1]
843
836
  aWk[1..1] = []
844
837
  aNext = aWk[1..aWk.size] #, $iCnt - $iPos -1);
845
838
  pps_array[iPos].prev_pps = _savePpsSetPnt2(pps_array, aList, rh_info)
@@ -975,7 +968,7 @@ class OLEStorageLitePPSFile < OLEStorageLitePPS #:nodoc:
975
968
  @pps_file.binmode
976
969
  end
977
970
 
978
- def append (data)
971
+ def append(data)
979
972
  return if data.nil?
980
973
  if @pps_file
981
974
  @pps_file << data
@@ -1,5 +1,5 @@
1
1
  require 'writeexcel'
2
2
 
3
3
  class WriteExcel < Workbook
4
- VERSION = "1.0.4"
4
+ VERSION = "1.0.6"
5
5
  end
@@ -1,4 +1,5 @@
1
1
  # -*- coding: utf-8 -*-
2
+ # frozen_string_literal: true
2
3
  ###############################################################################
3
4
  #
4
5
  # Workbook - A writer class for Excel Workbooks.
@@ -652,7 +653,6 @@ class Workbook < BIFFWriter
652
653
  #
653
654
  def define_name(name, formula, encoding = 0)
654
655
  sheet_index = 0
655
- full_name = name.downcase
656
656
 
657
657
  if name =~ /^(.*)!(.*)$/
658
658
  sheetname = $1
@@ -1266,7 +1266,7 @@ class Workbook < BIFFWriter
1266
1266
  # Add the length of the MSODRAWINGGROUP records including an extra 4 bytes
1267
1267
  # for any CONTINUE headers. See add_mso_drawing_group_continue().
1268
1268
  mso_size = @mso_size
1269
- mso_size += 4 * Integer((mso_size -1) / Float(@limit))
1269
+ mso_size += 4 * Integer((mso_size - 1) / Float(@limit))
1270
1270
  offset += mso_size
1271
1271
 
1272
1272
  @worksheets.each do |sheet|
@@ -1374,7 +1374,7 @@ class Workbook < BIFFWriter
1374
1374
  image_id += 1
1375
1375
  else
1376
1376
  # We've processed this file already.
1377
- index = images_seen[image.filename] -1
1377
+ index = images_seen[image.filename] - 1
1378
1378
 
1379
1379
  # Increase image reference count.
1380
1380
  image_data[index].ref_count += 1
@@ -2053,7 +2053,6 @@ class Workbook < BIFFWriter
2053
2053
  def store_shared_strings #:nodoc:
2054
2054
  record = 0x00FC # Record identifier
2055
2055
  length = 0x0008 # Number of bytes to follow
2056
- total = 0x0000
2057
2056
 
2058
2057
  # Iterate through the strings to calculate the CONTINUE block sizes
2059
2058
  continue_limit = 8208
@@ -2136,10 +2135,10 @@ class Workbook < BIFFWriter
2136
2135
  append(tmp)
2137
2136
 
2138
2137
  # The remainder will be written in the next block(s)
2139
- string = string[space_remaining .. string.length-1]
2138
+ string = string[space_remaining .. string.length - 1]
2140
2139
 
2141
2140
  # Reduce the current block length by the amount written
2142
- block_length -= continue_limit -continue -align
2141
+ block_length -= continue_limit - continue - align
2143
2142
 
2144
2143
  # If the current string was split then the next CONTINUE block
2145
2144
  # should have the string continue flag (grbit) set unless the
@@ -2152,7 +2151,7 @@ class Workbook < BIFFWriter
2152
2151
  end
2153
2152
  else
2154
2153
  # Not enough space to start the string in the current block
2155
- block_length -= continue_limit -space_remaining -continue
2154
+ block_length -= continue_limit - space_remaining - continue
2156
2155
  continue = 0
2157
2156
  end
2158
2157
 
@@ -2206,7 +2205,7 @@ class Workbook < BIFFWriter
2206
2205
  bucket_size = 1 + Integer(unique_strings / 128.0)
2207
2206
  end
2208
2207
 
2209
- buckets = Integer((unique_strings + bucket_size -1) / Float(bucket_size))
2208
+ buckets = Integer((unique_strings + bucket_size - 1) / Float(bucket_size))
2210
2209
 
2211
2210
  @extsst_buckets = buckets
2212
2211
  @extsst_bucket_size = bucket_size
@@ -2278,7 +2277,7 @@ class Workbook < BIFFWriter
2278
2277
  # Case 3: > 2*8224 bytes 2 MSODRAWINGGROUP + n CONTINUE
2279
2278
  #
2280
2279
  def add_mso_drawing_group_continue(data) #:nodoc:
2281
- limit = 8228 -4
2280
+ limit = 8228 - 4
2282
2281
  mso_group = 0x00EB # Record identifier
2283
2282
  continue = 0x003C # Record identifier
2284
2283
  block_count = 1
@@ -2334,7 +2333,7 @@ class Workbook < BIFFWriter
2334
2333
  version = 15
2335
2334
  instance = 0
2336
2335
  data = ''
2337
- length = @mso_size -12 # -4 (biff header) -8 (for this).
2336
+ length = @mso_size - 12 # -4 (biff header) -8 (for this).
2338
2337
 
2339
2338
  add_mso_generic(type, version, instance, data, length)
2340
2339
  end
@@ -2372,7 +2371,7 @@ class Workbook < BIFFWriter
2372
2371
  version = 15
2373
2372
  instance = @images_data.size # Number of images.
2374
2373
  data = ''
2375
- length = @images_size +8 *instance
2374
+ length = @images_size + 8 * instance
2376
2375
 
2377
2376
  add_mso_generic(type, version, instance, data, length)
2378
2377
  end
@@ -2399,12 +2398,12 @@ class Workbook < BIFFWriter
2399
2398
  type = 0xF007
2400
2399
  version = 2
2401
2400
  instance = image_type
2402
- length = size +61
2401
+ length = size + 61
2403
2402
  data = [image_type].pack('C') + # Win32
2404
2403
  [image_type].pack('C') + # Mac
2405
2404
  [checksum1].pack('H*') + # Uid checksum
2406
2405
  [0xFF].pack('v') + # Tag
2407
- [size +25].pack('V') + # Next Blip size
2406
+ [size + 25].pack('V') + # Next Blip size
2408
2407
  [ref_count].pack('V') + # Image ref count
2409
2408
  [0x00000000].pack('V') + # File offset
2410
2409
  [0x00].pack('C') + # Usage
@@ -2430,7 +2429,7 @@ class Workbook < BIFFWriter
2430
2429
 
2431
2430
  type = 0xF018 + image_type
2432
2431
  version = 0x0000
2433
- length = size +17
2432
+ length = size + 17
2434
2433
  data = [checksum1].pack('H*') + # Uid checksum
2435
2434
  [0xFF].pack('C') + # Tag
2436
2435
  image_data # Image