2002-01-30 21:22:28 -05:00
|
|
|
/* ====================================================================
|
2006-12-22 14:18:16 -05:00
|
|
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
|
|
|
contributor license agreements. See the NOTICE file distributed with
|
|
|
|
this work for additional information regarding copyright ownership.
|
|
|
|
The ASF licenses this file to You under the Apache License, Version 2.0
|
|
|
|
(the "License"); you may not use this file except in compliance with
|
|
|
|
the License. You may obtain a copy of the License at
|
2004-04-09 09:05:39 -04:00
|
|
|
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
|
|
See the License for the specific language governing permissions and
|
|
|
|
limitations under the License.
|
|
|
|
==================================================================== */
|
2002-01-30 21:22:28 -05:00
|
|
|
package org.apache.poi.hssf.record.formula;
|
|
|
|
|
2003-08-31 02:16:57 -04:00
|
|
|
import org.apache.poi.hssf.model.Workbook;
|
2005-08-18 03:06:44 -04:00
|
|
|
import org.apache.poi.hssf.record.RecordInputStream;
|
2002-04-23 19:56:46 -04:00
|
|
|
|
2002-01-30 21:22:28 -05:00
|
|
|
/**
|
2002-07-14 20:14:40 -04:00
|
|
|
* Implements the standard mathmatical multiplication - *
|
|
|
|
* @author Andrew C. Oliver (acoliver at apache dot org)
|
2002-09-04 20:26:28 -04:00
|
|
|
* @author Jason Height (jheight at chariot dot net dot au)
|
2002-01-30 21:22:28 -05:00
|
|
|
*/
|
|
|
|
|
|
|
|
public class MultiplyPtg
|
2002-04-23 19:56:46 -04:00
|
|
|
extends OperationPtg
|
2002-01-30 21:22:28 -05:00
|
|
|
{
|
|
|
|
public final static int SIZE = 1;
|
|
|
|
public final static byte sid = 0x05;
|
|
|
|
|
|
|
|
/** Creates new AddPtg */
|
|
|
|
|
2002-07-14 20:14:40 -04:00
|
|
|
public MultiplyPtg()
|
2002-01-30 21:22:28 -05:00
|
|
|
{
|
|
|
|
}
|
|
|
|
|
2005-08-18 03:06:44 -04:00
|
|
|
public MultiplyPtg(RecordInputStream in)
|
2002-01-30 21:22:28 -05:00
|
|
|
{
|
|
|
|
|
|
|
|
// doesn't need anything
|
|
|
|
}
|
2002-04-23 19:56:46 -04:00
|
|
|
|
2002-01-30 21:22:28 -05:00
|
|
|
public void writeBytes(byte [] array, int offset)
|
|
|
|
{
|
|
|
|
array[ offset + 0 ] = sid;
|
|
|
|
}
|
|
|
|
|
|
|
|
public int getSize()
|
|
|
|
{
|
|
|
|
return SIZE;
|
|
|
|
}
|
|
|
|
|
|
|
|
public int getType()
|
|
|
|
{
|
|
|
|
return TYPE_BINARY;
|
|
|
|
}
|
|
|
|
|
|
|
|
public int getNumberOfOperands()
|
|
|
|
{
|
|
|
|
return 2;
|
|
|
|
}
|
|
|
|
|
2002-04-23 19:56:46 -04:00
|
|
|
public int getStringLength() {
|
|
|
|
return 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2003-08-31 02:16:57 -04:00
|
|
|
public String toFormulaString(Workbook book)
|
2002-01-30 21:22:28 -05:00
|
|
|
{
|
|
|
|
return "*";
|
|
|
|
}
|
|
|
|
|
|
|
|
public String toFormulaString(Ptg [] operands)
|
|
|
|
{
|
|
|
|
StringBuffer buffer = new StringBuffer();
|
|
|
|
|
2003-08-31 02:16:57 -04:00
|
|
|
buffer.append(operands[ 0 ].toFormulaString((Workbook)null));
|
2002-01-30 21:22:28 -05:00
|
|
|
buffer.append("*");
|
2003-08-31 02:16:57 -04:00
|
|
|
buffer.append(operands[ 1 ].toFormulaString((Workbook)null));
|
2002-01-30 21:22:28 -05:00
|
|
|
return buffer.toString();
|
|
|
|
}
|
2002-04-23 19:56:46 -04:00
|
|
|
|
2002-04-27 10:07:53 -04:00
|
|
|
public String toFormulaString(String[] operands) {
|
|
|
|
StringBuffer buffer = new StringBuffer();
|
|
|
|
|
|
|
|
buffer.append(operands[ 0 ]);
|
2003-08-31 02:16:57 -04:00
|
|
|
buffer.append(toFormulaString((Workbook)null));
|
2002-04-27 10:07:53 -04:00
|
|
|
buffer.append(operands[ 1 ]);
|
|
|
|
return buffer.toString();
|
2002-04-28 12:33:57 -04:00
|
|
|
}
|
2002-09-04 20:26:28 -04:00
|
|
|
|
|
|
|
public Object clone() {
|
|
|
|
return new MultiplyPtg();
|
|
|
|
}
|
2002-01-30 21:22:28 -05:00
|
|
|
}
|