001: /* ====================================================================
002: Licensed to the Apache Software Foundation (ASF) under one or more
003: contributor license agreements. See the NOTICE file distributed with
004: this work for additional information regarding copyright ownership.
005: The ASF licenses this file to You under the Apache License, Version 2.0
006: (the "License"); you may not use this file except in compliance with
007: the License. You may obtain a copy of the License at
008:
009: http://www.apache.org/licenses/LICENSE-2.0
010:
011: Unless required by applicable law or agreed to in writing, software
012: distributed under the License is distributed on an "AS IS" BASIS,
013: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
014: See the License for the specific language governing permissions and
015: limitations under the License.
016: ==================================================================== */
017:
018: package org.apache.poi.hssf.record;
019:
020: import org.apache.poi.util.*;
021:
022: /**
023: * The dat record is used to store options for the chart.
024: * NOTE: This source is automatically generated please do not modify this file. Either subclass or
025: * remove the record in src/records/definitions.
026:
027: * @author Glen Stampoultzis (glens at apache.org)
028: */
029: public class DatRecord extends Record {
030: public final static short sid = 0x1063;
031: private short field_1_options;
032: private BitField horizontalBorder = BitFieldFactory
033: .getInstance(0x1);
034: private BitField verticalBorder = BitFieldFactory.getInstance(0x2);
035: private BitField border = BitFieldFactory.getInstance(0x4);
036: private BitField showSeriesKey = BitFieldFactory.getInstance(0x8);
037:
038: public DatRecord() {
039:
040: }
041:
042: /**
043: * Constructs a Dat record and sets its fields appropriately.
044: *
045: * @param in the RecordInputstream to read the record from
046: */
047:
048: public DatRecord(RecordInputStream in) {
049: super (in);
050:
051: }
052:
053: /**
054: * Checks the sid matches the expected side for this record
055: *
056: * @param id the expected sid.
057: */
058: protected void validateSid(short id) {
059: if (id != sid) {
060: throw new RecordFormatException("Not a Dat record");
061: }
062: }
063:
064: protected void fillFields(RecordInputStream in) {
065: field_1_options = in.readShort();
066: }
067:
068: public String toString() {
069: StringBuffer buffer = new StringBuffer();
070:
071: buffer.append("[DAT]\n");
072: buffer.append(" .options = ").append("0x")
073: .append(HexDump.toHex(getOptions())).append(" (")
074: .append(getOptions()).append(" )");
075: buffer.append(System.getProperty("line.separator"));
076: buffer.append(" .horizontalBorder = ").append(
077: isHorizontalBorder()).append('\n');
078: buffer.append(" .verticalBorder = ").append(
079: isVerticalBorder()).append('\n');
080: buffer.append(" .border = ").append(
081: isBorder()).append('\n');
082: buffer.append(" .showSeriesKey = ").append(
083: isShowSeriesKey()).append('\n');
084:
085: buffer.append("[/DAT]\n");
086: return buffer.toString();
087: }
088:
089: public int serialize(int offset, byte[] data) {
090: int pos = 0;
091:
092: LittleEndian.putShort(data, 0 + offset, sid);
093: LittleEndian.putShort(data, 2 + offset,
094: (short) (getRecordSize() - 4));
095:
096: LittleEndian.putShort(data, 4 + offset + pos, field_1_options);
097:
098: return getRecordSize();
099: }
100:
101: /**
102: * Size of record (exluding 4 byte header)
103: */
104: public int getRecordSize() {
105: return 4 + 2;
106: }
107:
108: public short getSid() {
109: return sid;
110: }
111:
112: public Object clone() {
113: DatRecord rec = new DatRecord();
114:
115: rec.field_1_options = field_1_options;
116: return rec;
117: }
118:
119: /**
120: * Get the options field for the Dat record.
121: */
122: public short getOptions() {
123: return field_1_options;
124: }
125:
126: /**
127: * Set the options field for the Dat record.
128: */
129: public void setOptions(short field_1_options) {
130: this .field_1_options = field_1_options;
131: }
132:
133: /**
134: * Sets the horizontal border field value.
135: * has a horizontal border
136: */
137: public void setHorizontalBorder(boolean value) {
138: field_1_options = horizontalBorder.setShortBoolean(
139: field_1_options, value);
140: }
141:
142: /**
143: * has a horizontal border
144: * @return the horizontal border field value.
145: */
146: public boolean isHorizontalBorder() {
147: return horizontalBorder.isSet(field_1_options);
148: }
149:
150: /**
151: * Sets the vertical border field value.
152: * has vertical border
153: */
154: public void setVerticalBorder(boolean value) {
155: field_1_options = verticalBorder.setShortBoolean(
156: field_1_options, value);
157: }
158:
159: /**
160: * has vertical border
161: * @return the vertical border field value.
162: */
163: public boolean isVerticalBorder() {
164: return verticalBorder.isSet(field_1_options);
165: }
166:
167: /**
168: * Sets the border field value.
169: * data table has a border
170: */
171: public void setBorder(boolean value) {
172: field_1_options = border
173: .setShortBoolean(field_1_options, value);
174: }
175:
176: /**
177: * data table has a border
178: * @return the border field value.
179: */
180: public boolean isBorder() {
181: return border.isSet(field_1_options);
182: }
183:
184: /**
185: * Sets the show series key field value.
186: * shows the series key
187: */
188: public void setShowSeriesKey(boolean value) {
189: field_1_options = showSeriesKey.setShortBoolean(
190: field_1_options, value);
191: }
192:
193: /**
194: * shows the series key
195: * @return the show series key field value.
196: */
197: public boolean isShowSeriesKey() {
198: return showSeriesKey.isSet(field_1_options);
199: }
200:
201: } // END OF CLASS
|