1 /
55
56
57 package org.apache.poi.hssf.record;
58
59
60
61 import org.apache.poi.util.*;
62
63
70 public class AxisOptionsRecord
71 extends Record
72 {
73 public final static short sid = 0x1062;
74 private short field_1_minimumCategory;
75 private short field_2_maximumCategory;
76 private short field_3_majorUnitValue;
77 private short field_4_majorUnit;
78 private short field_5_minorUnitValue;
79 private short field_6_minorUnit;
80 private short field_7_baseUnit;
81 private short field_8_crossingPoint;
82 private short field_9_options;
83 private BitField defaultMinimum = new BitField(0x1);
84 private BitField defaultMaximum = new BitField(0x2);
85 private BitField defaultMajor = new BitField(0x4);
86 private BitField defaultMinorUnit = new BitField(0x8);
87 private BitField isDate = new BitField(0x10);
88 private BitField defaultBase = new BitField(0x20);
89 private BitField defaultCross = new BitField(0x40);
90 private BitField defaultDateSettings = new BitField(0x80);
91
92
93 public AxisOptionsRecord()
94 {
95
96 }
97
98
106
107 public AxisOptionsRecord(short id, short size, byte [] data)
108 {
109 super(id, size, data);
110 }
111
112
121
122 public AxisOptionsRecord(short id, short size, byte [] data, int offset)
123 {
124 super(id, size, data, offset);
125 }
126
127
132 protected void validateSid(short id)
133 {
134 if (id != sid)
135 {
136 throw new RecordFormatException("Not a AxisOptions record");
137 }
138 }
139
140 protected void fillFields(byte [] data, short size, int offset)
141 {
142 field_1_minimumCategory = LittleEndian.getShort(data, 0x0 + offset);
143 field_2_maximumCategory = LittleEndian.getShort(data, 0x2 + offset);
144 field_3_majorUnitValue = LittleEndian.getShort(data, 0x4 + offset);
145 field_4_majorUnit = LittleEndian.getShort(data, 0x6 + offset);
146 field_5_minorUnitValue = LittleEndian.getShort(data, 0x8 + offset);
147 field_6_minorUnit = LittleEndian.getShort(data, 0xa + offset);
148 field_7_baseUnit = LittleEndian.getShort(data, 0xc + offset);
149 field_8_crossingPoint = LittleEndian.getShort(data, 0xe + offset);
150 field_9_options = LittleEndian.getShort(data, 0x10 + offset);
151
152 }
153
154 public String toString()
155 {
156 StringBuffer buffer = new StringBuffer();
157
158 buffer.append("[AxisOptions]\n");
159
160 buffer.append(" .minimumCategory = ")
161 .append("0x")
162 .append(HexDump.toHex((short)getMinimumCategory()))
163 .append(" (").append(getMinimumCategory()).append(" )\n");
164
165 buffer.append(" .maximumCategory = ")
166 .append("0x")
167 .append(HexDump.toHex((short)getMaximumCategory()))
168 .append(" (").append(getMaximumCategory()).append(" )\n");
169
170 buffer.append(" .majorUnitValue = ")
171 .append("0x")
172 .append(HexDump.toHex((short)getMajorUnitValue()))
173 .append(" (").append(getMajorUnitValue()).append(" )\n");
174
175 buffer.append(" .majorUnit = ")
176 .append("0x")
177 .append(HexDump.toHex((short)getMajorUnit()))
178 .append(" (").append(getMajorUnit()).append(" )\n");
179
180 buffer.append(" .minorUnitValue = ")
181 .append("0x")
182 .append(HexDump.toHex((short)getMinorUnitValue()))
183 .append(" (").append(getMinorUnitValue()).append(" )\n");
184
185 buffer.append(" .minorUnit = ")
186 .append("0x")
187 .append(HexDump.toHex((short)getMinorUnit()))
188 .append(" (").append(getMinorUnit()).append(" )\n");
189
190 buffer.append(" .baseUnit = ")
191 .append("0x")
192 .append(HexDump.toHex((short)getBaseUnit()))
193 .append(" (").append(getBaseUnit()).append(" )\n");
194
195 buffer.append(" .crossingPoint = ")
196 .append("0x")
197 .append(HexDump.toHex((short)getCrossingPoint()))
198 .append(" (").append(getCrossingPoint()).append(" )\n");
199
200 buffer.append(" .options = ")
201 .append("0x")
202 .append(HexDump.toHex((short)getOptions()))
203 .append(" (").append(getOptions()).append(" )\n");
204 buffer.append(" .defaultMinimum = ").append(isDefaultMinimum ()).append('\n');
205 buffer.append(" .defaultMaximum = ").append(isDefaultMaximum ()).append('\n');
206 buffer.append(" .defaultMajor = ").append(isDefaultMajor ()).append('\n');
207 buffer.append(" .defaultMinorUnit = ").append(isDefaultMinorUnit ()).append('\n');
208 buffer.append(" .isDate = ").append(isIsDate ()).append('\n');
209 buffer.append(" .defaultBase = ").append(isDefaultBase ()).append('\n');
210 buffer.append(" .defaultCross = ").append(isDefaultCross ()).append('\n');
211 buffer.append(" .defaultDateSettings = ").append(isDefaultDateSettings ()).append('\n');
212
213 buffer.append("[/AxisOptions]\n");
214 return buffer.toString();
215 }
216
217 public int serialize(int offset, byte[] data)
218 {
219 LittleEndian.putShort(data, 0 + offset, sid);
220 LittleEndian.putShort(data, 2 + offset, (short)(getRecordSize() - 4));
221
222 LittleEndian.putShort(data, 4 + offset, field_1_minimumCategory);
223 LittleEndian.putShort(data, 6 + offset, field_2_maximumCategory);
224 LittleEndian.putShort(data, 8 + offset, field_3_majorUnitValue);
225 LittleEndian.putShort(data, 10 + offset, field_4_majorUnit);
226 LittleEndian.putShort(data, 12 + offset, field_5_minorUnitValue);
227 LittleEndian.putShort(data, 14 + offset, field_6_minorUnit);
228 LittleEndian.putShort(data, 16 + offset, field_7_baseUnit);
229 LittleEndian.putShort(data, 18 + offset, field_8_crossingPoint);
230 LittleEndian.putShort(data, 20 + offset, field_9_options);
231
232 return getRecordSize();
233 }
234
235
238 public int getRecordSize()
239 {
240 return 4 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2;
241 }
242
243 public short getSid()
244 {
245 return this.sid;
246 }
247
248 public Object clone() {
249 AxisOptionsRecord rec = new AxisOptionsRecord();
250
251 rec.field_1_minimumCategory = field_1_minimumCategory;
252 rec.field_2_maximumCategory = field_2_maximumCategory;
253 rec.field_3_majorUnitValue = field_3_majorUnitValue;
254 rec.field_4_majorUnit = field_4_majorUnit;
255 rec.field_5_minorUnitValue = field_5_minorUnitValue;
256 rec.field_6_minorUnit = field_6_minorUnit;
257 rec.field_7_baseUnit = field_7_baseUnit;
258 rec.field_8_crossingPoint = field_8_crossingPoint;
259 rec.field_9_options = field_9_options;
260
261 return rec;
262 }
263
264
265
268 public short getMinimumCategory()
269 {
270 return field_1_minimumCategory;
271 }
272
273
276 public void setMinimumCategory(short field_1_minimumCategory)
277 {
278 this.field_1_minimumCategory = field_1_minimumCategory;
279 }
280
281
284 public short getMaximumCategory()
285 {
286 return field_2_maximumCategory;
287 }
288
289
292 public void setMaximumCategory(short field_2_maximumCategory)
293 {
294 this.field_2_maximumCategory = field_2_maximumCategory;
295 }
296
297
300 public short getMajorUnitValue()
301 {
302 return field_3_majorUnitValue;
303 }
304
305
308 public void setMajorUnitValue(short field_3_majorUnitValue)
309 {
310 this.field_3_majorUnitValue = field_3_majorUnitValue;
311 }
312
313
316 public short getMajorUnit()
317 {
318 return field_4_majorUnit;
319 }
320
321
324 public void setMajorUnit(short field_4_majorUnit)
325 {
326 this.field_4_majorUnit = field_4_majorUnit;
327 }
328
329
332 public short getMinorUnitValue()
333 {
334 return field_5_minorUnitValue;
335 }
336
337
340 public void setMinorUnitValue(short field_5_minorUnitValue)
341 {
342 this.field_5_minorUnitValue = field_5_minorUnitValue;
343 }
344
345
348 public short getMinorUnit()
349 {
350 return field_6_minorUnit;
351 }
352
353
356 public void setMinorUnit(short field_6_minorUnit)
357 {
358 this.field_6_minorUnit = field_6_minorUnit;
359 }
360
361
364 public short getBaseUnit()
365 {
366 return field_7_baseUnit;
367 }
368
369
372 public void setBaseUnit(short field_7_baseUnit)
373 {
374 this.field_7_baseUnit = field_7_baseUnit;
375 }
376
377
380 public short getCrossingPoint()
381 {
382 return field_8_crossingPoint;
383 }
384
385
388 public void setCrossingPoint(short field_8_crossingPoint)
389 {
390 this.field_8_crossingPoint = field_8_crossingPoint;
391 }
392
393
396 public short getOptions()
397 {
398 return field_9_options;
399 }
400
401
404 public void setOptions(short field_9_options)
405 {
406 this.field_9_options = field_9_options;
407 }
408
409
413 public void setDefaultMinimum(boolean value)
414 {
415 field_9_options = defaultMinimum.setShortBoolean(field_9_options, value);
416 }
417
418
422 public boolean isDefaultMinimum()
423 {
424 return defaultMinimum.isSet(field_9_options);
425 }
426
427
431 public void setDefaultMaximum(boolean value)
432 {
433 field_9_options = defaultMaximum.setShortBoolean(field_9_options, value);
434 }
435
436
440 public boolean isDefaultMaximum()
441 {
442 return defaultMaximum.isSet(field_9_options);
443 }
444
445
449 public void setDefaultMajor(boolean value)
450 {
451 field_9_options = defaultMajor.setShortBoolean(field_9_options, value);
452 }
453
454
458 public boolean isDefaultMajor()
459 {
460 return defaultMajor.isSet(field_9_options);
461 }
462
463
467 public void setDefaultMinorUnit(boolean value)
468 {
469 field_9_options = defaultMinorUnit.setShortBoolean(field_9_options, value);
470 }
471
472
476 public boolean isDefaultMinorUnit()
477 {
478 return defaultMinorUnit.isSet(field_9_options);
479 }
480
481
485 public void setIsDate(boolean value)
486 {
487 field_9_options = isDate.setShortBoolean(field_9_options, value);
488 }
489
490
494 public boolean isIsDate()
495 {
496 return isDate.isSet(field_9_options);
497 }
498
499
503 public void setDefaultBase(boolean value)
504 {
505 field_9_options = defaultBase.setShortBoolean(field_9_options, value);
506 }
507
508
512 public boolean isDefaultBase()
513 {
514 return defaultBase.isSet(field_9_options);
515 }
516
517
521 public void setDefaultCross(boolean value)
522 {
523 field_9_options = defaultCross.setShortBoolean(field_9_options, value);
524 }
525
526
530 public boolean isDefaultCross()
531 {
532 return defaultCross.isSet(field_9_options);
533 }
534
535
539 public void setDefaultDateSettings(boolean value)
540 {
541 field_9_options = defaultDateSettings.setShortBoolean(field_9_options, value);
542 }
543
544
548 public boolean isDefaultDateSettings()
549 {
550 return defaultDateSettings.isSet(field_9_options);
551 }
552
553
554 }
555
556
557
558
559