KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > jxl > biff > BuiltInStyle


1 /*********************************************************************
2 *
3 * Copyright (C) 2002 Andrew Khan
4 *
5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Lesser General Public
7 * License as published by the Free Software Foundation; either
8 * version 2.1 of the License, or (at your option) any later version.
9 *
10 * This library is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Lesser General Public License for more details.
14 *
15 * You should have received a copy of the GNU Lesser General Public
16 * License along with this library; if not, write to the Free Software
17 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 ***************************************************************************/

19
20 package jxl.biff;
21
22 /**
23  * Represents a built in, rather than a user defined, style.
24  * This class is used by the FormattingRecords class when writing out the hard*
25  * coded styles
26  */

27 class BuiltInStyle extends WritableRecordData
28 {
29   /**
30    * The XF index of this style
31    */

32   private int xfIndex;
33   /**
34    * The reference number of this style
35    */

36   private int styleNumber;
37
38   /**
39    * Constructor
40    *
41    * @param xfind the xf index of this style
42    * @param sn the style number of this style
43    */

44   public BuiltInStyle(int xfind, int sn)
45   {
46     super(Type.STYLE);
47
48     xfIndex = xfind;
49     styleNumber = sn;
50   }
51
52   /**
53    * Abstract method implementation to get the raw byte data ready to write out
54    *
55    * @return The byte data
56    */

57   public byte[] getData()
58   {
59     byte[] data = new byte[4];
60
61     IntegerHelper.getTwoBytes(xfIndex, data, 0);
62
63     // Set the built in bit
64
data[1] |= 0x80;
65
66     data[2] = (byte) styleNumber;
67
68     // Set the outline level
69
data[3] = (byte) 0xff;
70
71     return data;
72   }
73 }
74
Popular Tags