View Javadoc

1   ////////////////////////////////////////////////////////////////////////////////
2   // MillScript-Excel: an Open Spice interpreter and batch website creation tool
3   // Copyright (C) 2005 Open World Ltd, Kevin Rogers
4   //
5   // This file is part of MillScript-Excel.
6   //
7   // MillScript-Excel is free software; you can redistribute it and/or modify it under
8   // the terms of the GNU General Public License as published by the Free
9   // Software Foundation; either version 2 of the License, or (at your option)
10  // any later version.
11  //
12  // MillScript-Excel is distributed in the hope that it will be useful, but WITHOUT
13  // ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
14  // FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
15  // more details.
16  //
17  // You should have received a copy of the GNU General Public License along with
18  // MillScript-Excel; if not, write to the Free Software Foundation, Inc., 59 Temple
19  // Place, Suite 330, Boston, MA  02111-1307  USA
20  ////////////////////////////////////////////////////////////////////////////////
21  package org.millscript.office.excel.records;
22  
23  import org.millscript.office.excel.Record;
24  import org.millscript.office.excel.alerts.BIFFAlert;
25  import org.millscript.office.excel.blocks.CalculationSettings;
26  
27  /**
28   * 
29   */
30  public class CalcMode extends Record implements CalculationSettings {
31  
32      /**
33       * 
34       */
35      public enum Mode {
36  
37          AUTOMATIC_EXCEPT_MULTIPLE_TABLE_OPERATIONS, MANUALLY, AUTOMATICALLY;
38  
39          public static Mode getMode( final int mode ) {
40              switch ( mode ) {
41                  case 0xFFFF:
42                      return AUTOMATIC_EXCEPT_MULTIPLE_TABLE_OPERATIONS;
43                  case 0x0000:
44                      return MANUALLY;
45                  case 0x0001:
46                      return AUTOMATICALLY;
47                  default:
48                      throw new BIFFAlert(
49                          "Unknown mode for CALCMODE record"
50                      ).culprit( "mode", mode ).mishap();
51              }
52          }
53  
54      }
55  
56      private Mode calcMode;
57  
58      /**
59       * 
60       */
61      public CalcMode( final Mode mode ) {
62          this.calcMode = mode;
63      }
64  
65  }