⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sharedformularecord.java

📁 实现JAVA界面的代码GWT
💻 JAVA
字号:
// Decompiled by Jad v1.5.7g. Copyright 2000 Pavel Kouznetsov.
// Jad home page: http://www.geocities.com/SiliconValley/Bridge/8617/jad.html
// Decompiler options: packimports(3) fieldsfirst ansi 
// Source File Name:   SharedFormulaRecord.java

package jxl.read.biff;

import common.Logger;
import java.util.ArrayList;
import jxl.Cell;
import jxl.CellType;
import jxl.biff.*;
import jxl.biff.formula.ExternalSheet;

// Referenced classes of package jxl.read.biff:
//            SharedNumberFormulaRecord, SharedDateFormulaRecord, BaseSharedFormulaRecord, Record, 
//            SheetImpl

class SharedFormulaRecord
{

    private static Logger logger;
    private int firstRow;
    private int lastRow;
    private int firstCol;
    private int lastCol;
    private BaseSharedFormulaRecord templateFormula;
    private ArrayList formulas;
    private byte tokens[];
    private ExternalSheet externalSheet;
    private SheetImpl sheet;
    static Class class$jxl$read$biff$SharedFormulaRecord; /* synthetic field */

    public SharedFormulaRecord(Record t, BaseSharedFormulaRecord fr, ExternalSheet es, WorkbookMethods nt, SheetImpl si)
    {
        sheet = si;
        byte data[] = t.getData();
        firstRow = IntegerHelper.getInt(data[0], data[1]);
        lastRow = IntegerHelper.getInt(data[2], data[3]);
        firstCol = data[4] & 0xff;
        lastCol = data[5] & 0xff;
        formulas = new ArrayList();
        templateFormula = fr;
        tokens = new byte[data.length - 10];
        System.arraycopy(data, 10, tokens, 0, tokens.length);
    }

    public boolean add(BaseSharedFormulaRecord fr)
    {
        boolean added = false;
        int r = fr.getRow();
        if(r >= firstRow && r <= lastRow)
        {
            int c = fr.getColumn();
            if(c >= firstCol && c <= lastCol)
            {
                formulas.add(fr);
                added = true;
            }
        }
        return added;
    }

    Cell[] getFormulas(FormattingRecords fr, boolean nf)
    {
        Cell sfs[] = new Cell[formulas.size() + 1];
        if(templateFormula == null)
        {
            logger.warn("Shared formula template formula is null");
            return new Cell[0];
        }
        templateFormula.setTokens(tokens);
        java.text.NumberFormat templateNumberFormat = null;
        if(templateFormula.getType() == CellType.NUMBER_FORMULA)
        {
            SharedNumberFormulaRecord snfr = (SharedNumberFormulaRecord)templateFormula;
            templateNumberFormat = snfr.getNumberFormat();
            if(fr.isDate(templateFormula.getXFIndex()))
            {
                templateFormula = new SharedDateFormulaRecord(snfr, fr, nf, sheet, snfr.getFilePos());
                templateFormula.setTokens(snfr.getTokens());
            }
        }
        sfs[0] = templateFormula;
        BaseSharedFormulaRecord f = null;
        for(int i = 0; i < formulas.size(); i++)
        {
            f = (BaseSharedFormulaRecord)formulas.get(i);
            if(f.getType() == CellType.NUMBER_FORMULA)
            {
                SharedNumberFormulaRecord snfr = (SharedNumberFormulaRecord)f;
                if(fr.isDate(f.getXFIndex()))
                    f = new SharedDateFormulaRecord(snfr, fr, nf, sheet, snfr.getFilePos());
            }
            f.setTokens(tokens);
            sfs[i + 1] = f;
        }

        return sfs;
    }

    BaseSharedFormulaRecord getTemplateFormula()
    {
        return templateFormula;
    }

    static Class class$(String x0)
    {
        return Class.forName(x0);
        ClassNotFoundException x1;
        x1;
        throw new NoClassDefFoundError(x1.getMessage());
    }

    static 
    {
        logger = Logger.getLogger(class$jxl$read$biff$SharedFormulaRecord != null ? class$jxl$read$biff$SharedFormulaRecord : (class$jxl$read$biff$SharedFormulaRecord = class$("jxl.read.biff.SharedFormulaRecord")));
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -