Class: NameRecord
- Inherits:
-
BiffRecord
- Object
- BiffRecord
- NameRecord
- Defined in:
- lib/surpass/biff_record.rb
Overview
This record is part of a Link Table. It contains the name and the token
array of an internal defined name. Token arrays of defined names
contain tokens with aberrant token classes.
Record NAME, BIFF5/BIFF7:
Offset Size Contents
0 2 Option flags, see below
2 1 Keyboard shortcut (only for command macro names, see below)
3 1 Length of the name (character count, ln)
4 2 Size of the formula data (sz)
6 2 0 = Global name, otherwise index to EXTERNSHEET record (one-based)
8 2 0 = Global name, otherwise index to sheet (one-based)
10 1 Length of menu text (character count, lm)
11 1 Length of description text (character count, ld)
12 1 Length of help topic text (character count, lh)
13 1 Length of status bar text (character count, ls)
14 ln Character array of the name
14+ln sz Formula data (RPN token array without size field, 4)
14+ln+sz lm Character array of menu text
var. ld Character array of description text
var. lh Character array of help topic text
var. ls Character array of status bar text
Record NAME, BIFF8:
Offset Size Contents
0 2 Option flags, see below
2 1 Keyboard shortcut (only for command macro names, see below)
3 1 Length of the name (character count, ln)
4 2 Size of the formula data (sz)
6 2 Not used
8 2 0 = Global name, otherwise index to sheet (one-based)
10 1 Length of menu text (character count, lm)
11 1 Length of description text (character count, ld)
12 1 Length of help topic text (character count, lh)
13 1 Length of status bar text (character count, ls)
14 var. Name (Unicode string without length field, 3.4)
var. sz Formula data (RPN token array without size field, 4)
[var.] var. (optional, only if lm > 0) Menu text (Unicode string without length field, 3.4)
[var.] var. (optional, only if ld > 0) Description text (Unicode string without length field, 3.4)
[var.] var. (optional, only if lh > 0) Help topic text (Unicode string without length field, 3.4)
[var.] var. (optional, only if ls > 0) Status bar text (Unicode string without length field, 3.4)
Constant Summary collapse
- RECORD_ID =
0x0018
Constants inherited from BiffRecord
BiffRecord::BIFF_LIMIT, BiffRecord::CONTINUE_RECORD_ID
Instance Attribute Summary
Attributes inherited from BiffRecord
Instance Method Summary collapse
-
#initialize(options, keyboard_shortcut, name, sheet_index, rpn, menu_text = '', desc_text = '', help_text = '', status_text = '') ⇒ NameRecord
constructor
A new instance of NameRecord.
Methods inherited from BiffRecord
Constructor Details
#initialize(options, keyboard_shortcut, name, sheet_index, rpn, menu_text = '', desc_text = '', help_text = '', status_text = '') ⇒ NameRecord
Returns a new instance of NameRecord.
2113 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 2124 2125 2126 |
# File 'lib/surpass/biff_record.rb', line 2113 def initialize(, keyboard_shortcut, name, sheet_index, rpn, ='', desc_text='', help_text='', status_text='') if name.is_a?(Integer) unicode_name = [name].pack('c') else unicode_name = name end args = [, keyboard_shortcut, unicode_name.length, rpn.length] args += [0x0000, sheet_index, 0x00] args += [.length, desc_text.length, help_text.length, status_text.length] args += [unicode_name, rpn] @record_data = args.pack('vCCv vvC vvvv b*') + + desc_text + help_text + status_text end |