/* ==================================================================== * The Apache Software License, Version 1.1 * * Copyright (c) 2002 The Apache Software Foundation. All rights * reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in * the documentation and/or other materials provided with the * distribution. * * 3. The end-user documentation included with the redistribution, * if any, must include the following acknowledgment: * "This product includes software developed by the * Apache Software Foundation (http://www.apache.org/)." * Alternately, this acknowledgment may appear in the software itself, * if and wherever such third-party acknowledgments normally appear. * * 4. The names "Apache" and "Apache Software Foundation" and * "Apache POI" must not be used to endorse or promote products * derived from this software without prior written permission. For * written permission, please contact apache@apache.org. * * 5. Products derived from this software may not be called "Apache", * "Apache POI", nor may "Apache" appear in their name, without * prior written permission of the Apache Software Foundation. * * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * ==================================================================== * * This software consists of voluntary contributions made by many * individuals on behalf of the Apache Software Foundation. For more * information on the Apache Software Foundation, please see * . */ /* * NameXPtg.java * * Created on May 5, 2003 */ package org.apache.poi.hssf.record.formula; import org.apache.poi.util.LittleEndian; import org.apache.poi.hssf.util.SheetReferences; /** * * @author aviks */ public class NameXPtg extends Ptg { public final static short sid = 0x39; private final static int SIZE = 7; private short field_1_ixals; // index to externsheet record private short field_2_ilbl; //index to name or externname table(1 based) private short field_3_reserved; // reserved must be 0 private NameXPtg() { //Required for clone methods } /** Creates new NamePtg */ public NameXPtg(String name) { //TODO } /** Creates new NamePtg */ public NameXPtg(byte[] data, int offset) { offset++; field_1_ixals = LittleEndian.getShort(data, offset); field_2_ilbl = LittleEndian.getShort(data, offset + 2); field_3_reserved = LittleEndian.getShort(data, offset +4); //field_2_reserved = LittleEndian.getByteArray(data, offset + 12,12); } public void writeBytes(byte [] array, int offset) { array[ offset + 0 ] = sid; LittleEndian.putShort(array, offset + 1, field_1_ixals); LittleEndian.putShort(array,offset+3, field_2_ilbl); LittleEndian.putShort(array, offset + 5, field_3_reserved); } public int getSize() { return SIZE; } public String toFormulaString(SheetReferences refs) { return "NO IDEA - NAME"; } public byte getDefaultOperandClass() {return Ptg.CLASS_VALUE;} public Object clone() { NameXPtg ptg = new NameXPtg(); ptg.field_1_ixals = field_1_ixals; ptg.field_3_reserved = field_3_reserved; ptg.field_2_ilbl = field_2_ilbl; return ptg; } }