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

📄 cellreference.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:   CellReference.java

package jxl.biff.formula;

import common.Logger;
import jxl.Cell;
import jxl.biff.CellReferenceHelper;
import jxl.biff.IntegerHelper;

// Referenced classes of package jxl.biff.formula:
//            Operand, ParsedThing, Token

class CellReference extends Operand
    implements ParsedThing
{

    private static Logger logger;
    private boolean columnRelative;
    private boolean rowRelative;
    private int column;
    private int row;
    private Cell relativeTo;
    static Class class$jxl$biff$formula$CellReference; /* synthetic field */

    public CellReference(Cell rt)
    {
        relativeTo = rt;
    }

    public CellReference()
    {
    }

    public CellReference(String s)
    {
        column = CellReferenceHelper.getColumn(s);
        row = CellReferenceHelper.getRow(s);
        columnRelative = CellReferenceHelper.isColumnRelative(s);
        rowRelative = CellReferenceHelper.isRowRelative(s);
    }

    public int read(byte data[], int pos)
    {
        row = IntegerHelper.getInt(data[pos], data[pos + 1]);
        int columnMask = IntegerHelper.getInt(data[pos + 2], data[pos + 3]);
        column = columnMask & 0xff;
        columnRelative = (columnMask & 0x4000) != 0;
        rowRelative = (columnMask & 0x8000) != 0;
        return 4;
    }

    public int getColumn()
    {
        return column;
    }

    public int getRow()
    {
        return row;
    }

    public void getString(StringBuffer buf)
    {
        CellReferenceHelper.getCellReference(column, !columnRelative, row, !rowRelative, buf);
    }

    byte[] getBytes()
    {
        byte data[] = new byte[5];
        data[0] = useAlternateCode() ? Token.REF.getCode2() : Token.REF.getCode();
        IntegerHelper.getTwoBytes(row, data, 1);
        int grcol = column;
        if(rowRelative)
            grcol |= 0x8000;
        if(columnRelative)
            grcol |= 0x4000;
        IntegerHelper.getTwoBytes(grcol, data, 3);
        return data;
    }

    public void adjustRelativeCellReferences(int colAdjust, int rowAdjust)
    {
        if(columnRelative)
            column += colAdjust;
        if(rowRelative)
            row += rowAdjust;
    }

    public void columnInserted(int sheetIndex, int col, boolean currentSheet)
    {
        if(!currentSheet)
            return;
        if(column >= col)
            column++;
    }

    void columnRemoved(int sheetIndex, int col, boolean currentSheet)
    {
        if(!currentSheet)
            return;
        if(column >= col)
            column--;
    }

    void rowInserted(int sheetIndex, int r, boolean currentSheet)
    {
        if(!currentSheet)
            return;
        if(row >= r)
            row++;
    }

    void rowRemoved(int sheetIndex, int r, boolean currentSheet)
    {
        if(!currentSheet)
            return;
        if(row >= r)
            row--;
    }

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

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

⌨️ 快捷键说明

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