1    
2    /* ====================================================================
3     * The Apache Software License, Version 1.1
4     *
5     * Copyright (c) 2002 The Apache Software Foundation.  All rights
6     * reserved.
7     *
8     * Redistribution and use in source and binary forms, with or without
9     * modification, are permitted provided that the following conditions
10    * are met:
11    *
12    * 1. Redistributions of source code must retain the above copyright
13    *    notice, this list of conditions and the following disclaimer.
14    *
15    * 2. Redistributions in binary form must reproduce the above copyright
16    *    notice, this list of conditions and the following disclaimer in
17    *    the documentation and/or other materials provided with the
18    *    distribution.
19    *
20    * 3. The end-user documentation included with the redistribution,
21    *    if any, must include the following acknowledgment:
22    *       "This product includes software developed by the
23    *        Apache Software Foundation (http://www.apache.org/)."
24    *    Alternately, this acknowledgment may appear in the software itself,
25    *    if and wherever such third-party acknowledgments normally appear.
26    *
27    * 4. The names "Apache" and "Apache Software Foundation" and
28    *    "Apache POI" must not be used to endorse or promote products
29    *    derived from this software without prior written permission. For
30    *    written permission, please contact apache@apache.org.
31    *
32    * 5. Products derived from this software may not be called "Apache",
33    *    "Apache POI", nor may "Apache" appear in their name, without
34    *    prior written permission of the Apache Software Foundation.
35    *
36    * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
37    * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
38    * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
39    * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
40    * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
41    * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
42    * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
43    * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
44    * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
45    * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
46    * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
47    * SUCH DAMAGE.
48    * ====================================================================
49    *
50    * This software consists of voluntary contributions made by many
51    * individuals on behalf of the Apache Software Foundation.  For more
52    * information on the Apache Software Foundation, please see
53    * <http://www.apache.org/>.
54    */
55   
56   
57   package org.apache.poi.hssf.record;
58   
59   
60   
61   import org.apache.poi.util.*;
62   
63   /**
64    * The text record is used to define text stored on a chart.
65    * NOTE: This source is automatically generated please do not modify this file.  Either subclass or
66    *       remove the record in src/records/definitions.
67   
68    * @author Glen Stampoultzis (glens at apache.org)
69    */
70   public class TextRecord
71       extends Record
72   {
73       public final static short      sid                             = 0x1025;
74       private  byte       field_1_horizontalAlignment;
75       public final static byte        HORIZONTAL_ALIGNMENT_LEFT      = 1;
76       public final static byte        HORIZONTAL_ALIGNMENT_CENTER    = 2;
77       public final static byte        HORIZONTAL_ALIGNMENT_BOTTOM    = 3;
78       public final static byte        HORIZONTAL_ALIGNMENT_JUSTIFY   = 4;
79       private  byte       field_2_verticalAlignment;
80       public final static byte        VERTICAL_ALIGNMENT_TOP         = 1;
81       public final static byte        VERTICAL_ALIGNMENT_CENTER      = 2;
82       public final static byte        VERTICAL_ALIGNMENT_BOTTOM      = 3;
83       public final static byte        VERTICAL_ALIGNMENT_JUSTIFY     = 4;
84       private  short      field_3_displayMode;
85       public final static short       DISPLAY_MODE_TRANSPARENT       = 1;
86       public final static short       DISPLAY_MODE_OPAQUE            = 2;
87       private  int        field_4_rgbColor;
88       private  int        field_5_x;
89       private  int        field_6_y;
90       private  int        field_7_width;
91       private  int        field_8_height;
92       private  short      field_9_options1;
93       private  BitField   autoColor                                   = new BitField(0x1);
94       private  BitField   showKey                                     = new BitField(0x2);
95       private  BitField   showValue                                   = new BitField(0x4);
96       private  BitField   vertical                                    = new BitField(0x8);
97       private  BitField   autoGeneratedText                           = new BitField(0x10);
98       private  BitField   generated                                   = new BitField(0x20);
99       private  BitField   autoLabelDeleted                            = new BitField(0x40);
100      private  BitField   autoBackground                              = new BitField(0x80);
101      private BitField   rotation                                   = new BitField(0x0700);
102      public final static short  ROTATION_NONE                  = 0;
103      public final static short  ROTATION_TOP_TO_BOTTOM         = 1;
104      public final static short  ROTATION_ROTATED_90_DEGREES    = 2;
105      public final static short  ROTATION_ROTATED_90_DEGREES_CLOCKWISE = 3;
106      private  BitField   showCategoryLabelAsPercentage               = new BitField(0x800);
107      private  BitField   showValueAsPercentage                       = new BitField(0x1000);
108      private  BitField   showBubbleSizes                             = new BitField(0x2000);
109      private  BitField   showLabel                                   = new BitField(0x4000);
110      private  short      field_10_indexOfColorValue;
111      private  short      field_11_options2;
112      private BitField   dataLabelPlacement                         = new BitField(0x000F);
113      public final static short  DATA_LABEL_PLACEMENT_CHART_DEPENDENT = 0;
114      public final static short  DATA_LABEL_PLACEMENT_OUTSIDE   = 1;
115      public final static short  DATA_LABEL_PLACEMENT_INSIDE    = 2;
116      public final static short  DATA_LABEL_PLACEMENT_CENTER    = 3;
117      public final static short  DATA_LABEL_PLACEMENT_AXIS      = 4;
118      public final static short  DATA_LABEL_PLACEMENT_ABOVE     = 5;
119      public final static short  DATA_LABEL_PLACEMENT_BELOW     = 6;
120      public final static short  DATA_LABEL_PLACEMENT_LEFT      = 7;
121      public final static short  DATA_LABEL_PLACEMENT_RIGHT     = 8;
122      public final static short  DATA_LABEL_PLACEMENT_AUTO      = 9;
123      public final static short  DATA_LABEL_PLACEMENT_USER_MOVED = 10;
124      private  short      field_12_textRotation;
125  
126  
127      public TextRecord()
128      {
129  
130      }
131  
132      /**
133       * Constructs a Text record and sets its fields appropriately.
134       *
135       * @param id    id must be 0x1025 or an exception
136       *              will be throw upon validation
137       * @param size  size the size of the data area of the record
138       * @param data  data of the record (should not contain sid/len)
139       */
140  
141      public TextRecord(short id, short size, byte [] data)
142      {
143          super(id, size, data);
144      }
145  
146      /**
147       * Constructs a Text record and sets its fields appropriately.
148       *
149       * @param id    id must be 0x1025 or an exception
150       *              will be throw upon validation
151       * @param size  size the size of the data area of the record
152       * @param data  data of the record (should not contain sid/len)
153       * @param offset of the record's data
154       */
155  
156      public TextRecord(short id, short size, byte [] data, int offset)
157      {
158          super(id, size, data, offset);
159      }
160  
161      /**
162       * Checks the sid matches the expected side for this record
163       *
164       * @param id   the expected sid.
165       */
166      protected void validateSid(short id)
167      {
168          if (id != sid)
169          {
170              throw new RecordFormatException("Not a Text record");
171          }
172      }
173  
174      protected void fillFields(byte [] data, short size, int offset)
175      {
176          field_1_horizontalAlignment     = data[ 0x0 + offset ];
177          field_2_verticalAlignment       = data[ 0x1 + offset ];
178          field_3_displayMode             = LittleEndian.getShort(data, 0x2 + offset);
179          field_4_rgbColor                = LittleEndian.getInt(data, 0x4 + offset);
180          field_5_x                       = LittleEndian.getInt(data, 0x8 + offset);
181          field_6_y                       = LittleEndian.getInt(data, 0xc + offset);
182          field_7_width                   = LittleEndian.getInt(data, 0x10 + offset);
183          field_8_height                  = LittleEndian.getInt(data, 0x14 + offset);
184          field_9_options1                = LittleEndian.getShort(data, 0x18 + offset);
185          field_10_indexOfColorValue      = LittleEndian.getShort(data, 0x1a + offset);
186          field_11_options2               = LittleEndian.getShort(data, 0x1c + offset);
187          field_12_textRotation           = LittleEndian.getShort(data, 0x1e + offset);
188  
189      }
190  
191      public String toString()
192      {
193          StringBuffer buffer = new StringBuffer();
194  
195          buffer.append("[Text]\n");
196  
197          buffer.append("    .horizontalAlignment  = ")
198              .append("0x")
199              .append(HexDump.toHex((byte)getHorizontalAlignment()))
200              .append(" (").append(getHorizontalAlignment()).append(" )\n");
201  
202          buffer.append("    .verticalAlignment    = ")
203              .append("0x")
204              .append(HexDump.toHex((byte)getVerticalAlignment()))
205              .append(" (").append(getVerticalAlignment()).append(" )\n");
206  
207          buffer.append("    .displayMode          = ")
208              .append("0x")
209              .append(HexDump.toHex((short)getDisplayMode()))
210              .append(" (").append(getDisplayMode()).append(" )\n");
211  
212          buffer.append("    .rgbColor             = ")
213              .append("0x")
214              .append(HexDump.toHex((int)getRgbColor()))
215              .append(" (").append(getRgbColor()).append(" )\n");
216  
217          buffer.append("    .x                    = ")
218              .append("0x")
219              .append(HexDump.toHex((int)getX()))
220              .append(" (").append(getX()).append(" )\n");
221  
222          buffer.append("    .y                    = ")
223              .append("0x")
224              .append(HexDump.toHex((int)getY()))
225              .append(" (").append(getY()).append(" )\n");
226  
227          buffer.append("    .width                = ")
228              .append("0x")
229              .append(HexDump.toHex((int)getWidth()))
230              .append(" (").append(getWidth()).append(" )\n");
231  
232          buffer.append("    .height               = ")
233              .append("0x")
234              .append(HexDump.toHex((int)getHeight()))
235              .append(" (").append(getHeight()).append(" )\n");
236  
237          buffer.append("    .options1             = ")
238              .append("0x")
239              .append(HexDump.toHex((short)getOptions1()))
240              .append(" (").append(getOptions1()).append(" )\n");
241          buffer.append("         .autoColor                = ").append(isAutoColor           ()).append('\n');
242          buffer.append("         .showKey                  = ").append(isShowKey             ()).append('\n');
243          buffer.append("         .showValue                = ").append(isShowValue           ()).append('\n');
244          buffer.append("         .vertical                 = ").append(isVertical            ()).append('\n');
245          buffer.append("         .autoGeneratedText        = ").append(isAutoGeneratedText   ()).append('\n');
246          buffer.append("         .generated                = ").append(isGenerated           ()).append('\n');
247          buffer.append("         .autoLabelDeleted         = ").append(isAutoLabelDeleted    ()).append('\n');
248          buffer.append("         .autoBackground           = ").append(isAutoBackground      ()).append('\n');
249          buffer.append("         .rotation                 = ").append(getRotation            ()).append('\n');
250          buffer.append("         .showCategoryLabelAsPercentage     = ").append(isShowCategoryLabelAsPercentage()).append('\n');
251          buffer.append("         .showValueAsPercentage     = ").append(isShowValueAsPercentage()).append('\n');
252          buffer.append("         .showBubbleSizes          = ").append(isShowBubbleSizes     ()).append('\n');
253          buffer.append("         .showLabel                = ").append(isShowLabel           ()).append('\n');
254  
255          buffer.append("    .indexOfColorValue    = ")
256              .append("0x")
257              .append(HexDump.toHex((short)getIndexOfColorValue()))
258              .append(" (").append(getIndexOfColorValue()).append(" )\n");
259  
260          buffer.append("    .options2             = ")
261              .append("0x")
262              .append(HexDump.toHex((short)getOptions2()))
263              .append(" (").append(getOptions2()).append(" )\n");
264          buffer.append("         .dataLabelPlacement       = ").append(getDataLabelPlacement  ()).append('\n');
265  
266          buffer.append("    .textRotation         = ")
267              .append("0x")
268              .append(HexDump.toHex((short)getTextRotation()))
269              .append(" (").append(getTextRotation()).append(" )\n");
270  
271          buffer.append("[/Text]\n");
272          return buffer.toString();
273      }
274  
275      public int serialize(int offset, byte[] data)
276      {
277          LittleEndian.putShort(data, 0 + offset, sid);
278          LittleEndian.putShort(data, 2 + offset, (short)(getRecordSize() - 4));
279  
280          data[ 4 + offset ] = field_1_horizontalAlignment;
281          data[ 5 + offset ] = field_2_verticalAlignment;
282          LittleEndian.putShort(data, 6 + offset, field_3_displayMode);
283          LittleEndian.putInt(data, 8 + offset, field_4_rgbColor);
284          LittleEndian.putInt(data, 12 + offset, field_5_x);
285          LittleEndian.putInt(data, 16 + offset, field_6_y);
286          LittleEndian.putInt(data, 20 + offset, field_7_width);
287          LittleEndian.putInt(data, 24 + offset, field_8_height);
288          LittleEndian.putShort(data, 28 + offset, field_9_options1);
289          LittleEndian.putShort(data, 30 + offset, field_10_indexOfColorValue);
290          LittleEndian.putShort(data, 32 + offset, field_11_options2);
291          LittleEndian.putShort(data, 34 + offset, field_12_textRotation);
292  
293          return getRecordSize();
294      }
295  
296      /**
297       * Size of record (exluding 4 byte header)
298       */
299      public int getRecordSize()
300      {
301          return 4 + 1 + 1 + 2 + 4 + 4 + 4 + 4 + 4 + 2 + 2 + 2 + 2;
302      }
303  
304      public short getSid()
305      {
306          return this.sid;
307      }
308  
309      public Object clone() {
310        TextRecord rec = new TextRecord();
311        
312        rec.field_1_horizontalAlignment = field_1_horizontalAlignment;
313        rec.field_2_verticalAlignment = field_2_verticalAlignment;
314        rec.field_3_displayMode = field_3_displayMode;
315        rec.field_4_rgbColor = field_4_rgbColor;
316        rec.field_5_x = field_5_x;
317        rec.field_6_y = field_6_y;
318        rec.field_7_width = field_7_width;
319        rec.field_8_height = field_8_height;
320        rec.field_9_options1 = field_9_options1;
321        rec.field_10_indexOfColorValue = field_10_indexOfColorValue;
322        rec.field_11_options2 = field_11_options2;
323        rec.field_12_textRotation = field_12_textRotation;
324  
325        return rec;
326      }
327  
328  
329      /**
330       * Get the horizontal alignment field for the Text record.
331       *
332       * @return  One of 
333       *        HORIZONTAL_ALIGNMENT_LEFT
334       *        HORIZONTAL_ALIGNMENT_CENTER
335       *        HORIZONTAL_ALIGNMENT_BOTTOM
336       *        HORIZONTAL_ALIGNMENT_JUSTIFY
337       */
338      public byte getHorizontalAlignment()
339      {
340          return field_1_horizontalAlignment;
341      }
342  
343      /**
344       * Set the horizontal alignment field for the Text record.
345       *
346       * @param field_1_horizontalAlignment
347       *        One of 
348       *        HORIZONTAL_ALIGNMENT_LEFT
349       *        HORIZONTAL_ALIGNMENT_CENTER
350       *        HORIZONTAL_ALIGNMENT_BOTTOM
351       *        HORIZONTAL_ALIGNMENT_JUSTIFY
352       */
353      public void setHorizontalAlignment(byte field_1_horizontalAlignment)
354      {
355          this.field_1_horizontalAlignment = field_1_horizontalAlignment;
356      }
357  
358      /**
359       * Get the vertical alignment field for the Text record.
360       *
361       * @return  One of 
362       *        VERTICAL_ALIGNMENT_TOP
363       *        VERTICAL_ALIGNMENT_CENTER
364       *        VERTICAL_ALIGNMENT_BOTTOM
365       *        VERTICAL_ALIGNMENT_JUSTIFY
366       */
367      public byte getVerticalAlignment()
368      {
369          return field_2_verticalAlignment;
370      }
371  
372      /**
373       * Set the vertical alignment field for the Text record.
374       *
375       * @param field_2_verticalAlignment
376       *        One of 
377       *        VERTICAL_ALIGNMENT_TOP
378       *        VERTICAL_ALIGNMENT_CENTER
379       *        VERTICAL_ALIGNMENT_BOTTOM
380       *        VERTICAL_ALIGNMENT_JUSTIFY
381       */
382      public void setVerticalAlignment(byte field_2_verticalAlignment)
383      {
384          this.field_2_verticalAlignment = field_2_verticalAlignment;
385      }
386  
387      /**
388       * Get the display mode field for the Text record.
389       *
390       * @return  One of 
391       *        DISPLAY_MODE_TRANSPARENT
392       *        DISPLAY_MODE_OPAQUE
393       */
394      public short getDisplayMode()
395      {
396          return field_3_displayMode;
397      }
398  
399      /**
400       * Set the display mode field for the Text record.
401       *
402       * @param field_3_displayMode
403       *        One of 
404       *        DISPLAY_MODE_TRANSPARENT
405       *        DISPLAY_MODE_OPAQUE
406       */
407      public void setDisplayMode(short field_3_displayMode)
408      {
409          this.field_3_displayMode = field_3_displayMode;
410      }
411  
412      /**
413       * Get the rgbColor field for the Text record.
414       */
415      public int getRgbColor()
416      {
417          return field_4_rgbColor;
418      }
419  
420      /**
421       * Set the rgbColor field for the Text record.
422       */
423      public void setRgbColor(int field_4_rgbColor)
424      {
425          this.field_4_rgbColor = field_4_rgbColor;
426      }
427  
428      /**
429       * Get the x field for the Text record.
430       */
431      public int getX()
432      {
433          return field_5_x;
434      }
435  
436      /**
437       * Set the x field for the Text record.
438       */
439      public void setX(int field_5_x)
440      {
441          this.field_5_x = field_5_x;
442      }
443  
444      /**
445       * Get the y field for the Text record.
446       */
447      public int getY()
448      {
449          return field_6_y;
450      }
451  
452      /**
453       * Set the y field for the Text record.
454       */
455      public void setY(int field_6_y)
456      {
457          this.field_6_y = field_6_y;
458      }
459  
460      /**
461       * Get the width field for the Text record.
462       */
463      public int getWidth()
464      {
465          return field_7_width;
466      }
467  
468      /**
469       * Set the width field for the Text record.
470       */
471      public void setWidth(int field_7_width)
472      {
473          this.field_7_width = field_7_width;
474      }
475  
476      /**
477       * Get the height field for the Text record.
478       */
479      public int getHeight()
480      {
481          return field_8_height;
482      }
483  
484      /**
485       * Set the height field for the Text record.
486       */
487      public void setHeight(int field_8_height)
488      {
489          this.field_8_height = field_8_height;
490      }
491  
492      /**
493       * Get the options1 field for the Text record.
494       */
495      public short getOptions1()
496      {
497          return field_9_options1;
498      }
499  
500      /**
501       * Set the options1 field for the Text record.
502       */
503      public void setOptions1(short field_9_options1)
504      {
505          this.field_9_options1 = field_9_options1;
506      }
507  
508      /**
509       * Get the index of color value field for the Text record.
510       */
511      public short getIndexOfColorValue()
512      {
513          return field_10_indexOfColorValue;
514      }
515  
516      /**
517       * Set the index of color value field for the Text record.
518       */
519      public void setIndexOfColorValue(short field_10_indexOfColorValue)
520      {
521          this.field_10_indexOfColorValue = field_10_indexOfColorValue;
522      }
523  
524      /**
525       * Get the options2 field for the Text record.
526       */
527      public short getOptions2()
528      {
529          return field_11_options2;
530      }
531  
532      /**
533       * Set the options2 field for the Text record.
534       */
535      public void setOptions2(short field_11_options2)
536      {
537          this.field_11_options2 = field_11_options2;
538      }
539  
540      /**
541       * Get the text rotation field for the Text record.
542       */
543      public short getTextRotation()
544      {
545          return field_12_textRotation;
546      }
547  
548      /**
549       * Set the text rotation field for the Text record.
550       */
551      public void setTextRotation(short field_12_textRotation)
552      {
553          this.field_12_textRotation = field_12_textRotation;
554      }
555  
556      /**
557       * Sets the auto color field value.
558       * true = automaticly selected colour, false = user-selected
559       */
560      public void setAutoColor(boolean value)
561      {
562          field_9_options1 = autoColor.setShortBoolean(field_9_options1, value);
563      }
564  
565      /**
566       * true = automaticly selected colour, false = user-selected
567       * @return  the auto color field value.
568       */
569      public boolean isAutoColor()
570      {
571          return autoColor.isSet(field_9_options1);
572      }
573  
574      /**
575       * Sets the show key field value.
576       * true = draw legend
577       */
578      public void setShowKey(boolean value)
579      {
580          field_9_options1 = showKey.setShortBoolean(field_9_options1, value);
581      }
582  
583      /**
584       * true = draw legend
585       * @return  the show key field value.
586       */
587      public boolean isShowKey()
588      {
589          return showKey.isSet(field_9_options1);
590      }
591  
592      /**
593       * Sets the show value field value.
594       * false = text is category label
595       */
596      public void setShowValue(boolean value)
597      {
598          field_9_options1 = showValue.setShortBoolean(field_9_options1, value);
599      }
600  
601      /**
602       * false = text is category label
603       * @return  the show value field value.
604       */
605      public boolean isShowValue()
606      {
607          return showValue.isSet(field_9_options1);
608      }
609  
610      /**
611       * Sets the vertical field value.
612       * true = text is vertical
613       */
614      public void setVertical(boolean value)
615      {
616          field_9_options1 = vertical.setShortBoolean(field_9_options1, value);
617      }
618  
619      /**
620       * true = text is vertical
621       * @return  the vertical field value.
622       */
623      public boolean isVertical()
624      {
625          return vertical.isSet(field_9_options1);
626      }
627  
628      /**
629       * Sets the auto generated text field value.
630       * 
631       */
632      public void setAutoGeneratedText(boolean value)
633      {
634          field_9_options1 = autoGeneratedText.setShortBoolean(field_9_options1, value);
635      }
636  
637      /**
638       * 
639       * @return  the auto generated text field value.
640       */
641      public boolean isAutoGeneratedText()
642      {
643          return autoGeneratedText.isSet(field_9_options1);
644      }
645  
646      /**
647       * Sets the generated field value.
648       * 
649       */
650      public void setGenerated(boolean value)
651      {
652          field_9_options1 = generated.setShortBoolean(field_9_options1, value);
653      }
654  
655      /**
656       * 
657       * @return  the generated field value.
658       */
659      public boolean isGenerated()
660      {
661          return generated.isSet(field_9_options1);
662      }
663  
664      /**
665       * Sets the auto label deleted field value.
666       * 
667       */
668      public void setAutoLabelDeleted(boolean value)
669      {
670          field_9_options1 = autoLabelDeleted.setShortBoolean(field_9_options1, value);
671      }
672  
673      /**
674       * 
675       * @return  the auto label deleted field value.
676       */
677      public boolean isAutoLabelDeleted()
678      {
679          return autoLabelDeleted.isSet(field_9_options1);
680      }
681  
682      /**
683       * Sets the auto background field value.
684       * 
685       */
686      public void setAutoBackground(boolean value)
687      {
688          field_9_options1 = autoBackground.setShortBoolean(field_9_options1, value);
689      }
690  
691      /**
692       * 
693       * @return  the auto background field value.
694       */
695      public boolean isAutoBackground()
696      {
697          return autoBackground.isSet(field_9_options1);
698      }
699  
700      /**
701       * Sets the rotation field value.
702       * 
703       */
704      public void setRotation(short value)
705      {
706          field_9_options1 = rotation.setShortValue(field_9_options1, value);
707      }
708  
709      /**
710       * 
711       * @return  the rotation field value.
712       */
713      public short getRotation()
714      {
715          return rotation.getShortValue(field_9_options1);
716      }
717  
718      /**
719       * Sets the show category label as percentage field value.
720       * 
721       */
722      public void setShowCategoryLabelAsPercentage(boolean value)
723      {
724          field_9_options1 = showCategoryLabelAsPercentage.setShortBoolean(field_9_options1, value);
725      }
726  
727      /**
728       * 
729       * @return  the show category label as percentage field value.
730       */
731      public boolean isShowCategoryLabelAsPercentage()
732      {
733          return showCategoryLabelAsPercentage.isSet(field_9_options1);
734      }
735  
736      /**
737       * Sets the show value as percentage field value.
738       * 
739       */
740      public void setShowValueAsPercentage(boolean value)
741      {
742          field_9_options1 = showValueAsPercentage.setShortBoolean(field_9_options1, value);
743      }
744  
745      /**
746       * 
747       * @return  the show value as percentage field value.
748       */
749      public boolean isShowValueAsPercentage()
750      {
751          return showValueAsPercentage.isSet(field_9_options1);
752      }
753  
754      /**
755       * Sets the show bubble sizes field value.
756       * 
757       */
758      public void setShowBubbleSizes(boolean value)
759      {
760          field_9_options1 = showBubbleSizes.setShortBoolean(field_9_options1, value);
761      }
762  
763      /**
764       * 
765       * @return  the show bubble sizes field value.
766       */
767      public boolean isShowBubbleSizes()
768      {
769          return showBubbleSizes.isSet(field_9_options1);
770      }
771  
772      /**
773       * Sets the show label field value.
774       * 
775       */
776      public void setShowLabel(boolean value)
777      {
778          field_9_options1 = showLabel.setShortBoolean(field_9_options1, value);
779      }
780  
781      /**
782       * 
783       * @return  the show label field value.
784       */
785      public boolean isShowLabel()
786      {
787          return showLabel.isSet(field_9_options1);
788      }
789  
790      /**
791       * Sets the data label placement field value.
792       * 
793       */
794      public void setDataLabelPlacement(short value)
795      {
796          field_11_options2 = dataLabelPlacement.setShortValue(field_11_options2, value);
797      }
798  
799      /**
800       * 
801       * @return  the data label placement field value.
802       */
803      public short getDataLabelPlacement()
804      {
805          return dataLabelPlacement.getShortValue(field_11_options2);
806      }
807  
808  
809  }  // END OF CLASS
810  
811  
812  
813  
814