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

📄 button.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:   Button.java

package jxl.biff.drawing;

import common.Assert;
import common.Logger;
import java.io.IOException;
import jxl.WorkbookSettings;
import jxl.biff.*;
import jxl.write.biff.File;

// Referenced classes of package jxl.biff.drawing:
//            Sp, ClientAnchor, ObjRecord, ClientTextBox, 
//            MsoDrawingRecord, TextObjectRecord, DrawingGroupObject, Origin, 
//            DrawingData, DrawingGroup, EscherContainer, ShapeType, 
//            EscherRecord, EscherRecordType

public class Button
    implements DrawingGroupObject
{

    private static Logger logger;
    private EscherContainer readSpContainer;
    private EscherContainer spContainer;
    private MsoDrawingRecord msoDrawingRecord;
    private ObjRecord objRecord;
    private boolean initialized;
    private int objectId;
    private int blipId;
    private int shapeId;
    private int column;
    private int row;
    private double width;
    private double height;
    private int referenceCount;
    private EscherContainer escherData;
    private Origin origin;
    private DrawingGroup drawingGroup;
    private DrawingData drawingData;
    private ShapeType type;
    private int drawingNumber;
    private MsoDrawingRecord mso;
    private TextObjectRecord txo;
    private ContinueRecord text;
    private ContinueRecord formatting;
    private String commentText;
    private WorkbookSettings workbookSettings;
    static Class class$jxl$biff$drawing$Button; /* synthetic field */

    public Button(MsoDrawingRecord msodr, ObjRecord obj, DrawingData dd, DrawingGroup dg, WorkbookSettings ws)
    {
        initialized = false;
        drawingGroup = dg;
        msoDrawingRecord = msodr;
        drawingData = dd;
        objRecord = obj;
        initialized = false;
        workbookSettings = ws;
        origin = Origin.READ;
        drawingData.addData(msoDrawingRecord.getData());
        drawingNumber = drawingData.getNumDrawings() - 1;
        drawingGroup.addDrawing(this);
        Assert.verify(msoDrawingRecord != null && objRecord != null);
        initialize();
    }

    public Button(DrawingGroupObject dgo, DrawingGroup dg, WorkbookSettings ws)
    {
        initialized = false;
        Button d = (Button)dgo;
        Assert.verify(d.origin == Origin.READ);
        msoDrawingRecord = d.msoDrawingRecord;
        objRecord = d.objRecord;
        initialized = false;
        origin = Origin.READ;
        drawingData = d.drawingData;
        drawingGroup = dg;
        drawingNumber = d.drawingNumber;
        drawingGroup.addDrawing(this);
        mso = d.mso;
        txo = d.txo;
        text = d.text;
        formatting = d.formatting;
        workbookSettings = ws;
    }

    private void initialize()
    {
        readSpContainer = drawingData.getSpContainer(drawingNumber);
        Assert.verify(readSpContainer != null);
        EscherRecord children[] = readSpContainer.getChildren();
        Sp sp = (Sp)readSpContainer.getChildren()[0];
        objectId = objRecord.getObjectId();
        shapeId = sp.getShapeId();
        type = ShapeType.getType(sp.getShapeType());
        if(type == ShapeType.UNKNOWN)
            logger.warn("Unknown shape type");
        ClientAnchor clientAnchor = null;
        for(int i = 0; i < children.length && clientAnchor == null; i++)
            if(children[i].getType() == EscherRecordType.CLIENT_ANCHOR)
                clientAnchor = (ClientAnchor)children[i];

        if(clientAnchor == null)
        {
            logger.warn("Client anchor not found");
        } else
        {
            column = (int)clientAnchor.getX1() - 1;
            row = (int)clientAnchor.getY1() + 1;
        }
        initialized = true;
    }

    public final void setObjectId(int objid, int bip, int sid)
    {
        objectId = objid;
        blipId = bip;
        shapeId = sid;
        if(origin == Origin.READ)
            origin = Origin.READ_WRITE;
    }

    public final int getObjectId()
    {
        if(!initialized)
            initialize();
        return objectId;
    }

    public final int getShapeId()
    {
        if(!initialized)
            initialize();
        return shapeId;
    }

    public final int getBlipId()
    {
        if(!initialized)
            initialize();
        return blipId;
    }

    public MsoDrawingRecord getMsoDrawingRecord()
    {
        return msoDrawingRecord;
    }

    public EscherContainer getSpContainer()
    {
        if(!initialized)
            initialize();
        if(origin == Origin.READ)
        {
            return getReadSpContainer();
        } else
        {
            Assert.verify(false);
            return spContainer;
        }
    }

    public void setDrawingGroup(DrawingGroup dg)
    {
        drawingGroup = dg;
    }

    public DrawingGroup getDrawingGroup()
    {
        return drawingGroup;
    }

    public Origin getOrigin()
    {
        return origin;
    }

    public int getReferenceCount()
    {
        return referenceCount;
    }

    public void setReferenceCount(int r)
    {
        referenceCount = r;
    }

    public double getX()
    {
        if(!initialized)
            initialize();
        return (double)column;
    }

    public void setX(double x)
    {
        if(origin == Origin.READ)
        {
            if(!initialized)
                initialize();
            origin = Origin.READ_WRITE;
        }
        column = (int)x;
    }

    public double getY()
    {
        if(!initialized)
            initialize();
        return (double)row;
    }

    public void setY(double y)
    {
        if(origin == Origin.READ)
        {
            if(!initialized)
                initialize();
            origin = Origin.READ_WRITE;
        }
        row = (int)y;
    }

    public double getWidth()
    {
        if(!initialized)
            initialize();
        return width;
    }

    public void setWidth(double w)
    {
        if(origin == Origin.READ)
        {
            if(!initialized)
                initialize();
            origin = Origin.READ_WRITE;
        }
        width = w;
    }

    public double getHeight()
    {
        if(!initialized)
            initialize();
        return height;
    }

    public void setHeight(double h)
    {
        if(origin == Origin.READ)
        {
            if(!initialized)
                initialize();
            origin = Origin.READ_WRITE;
        }
        height = h;
    }

    private EscherContainer getReadSpContainer()
    {
        if(!initialized)
            initialize();
        return readSpContainer;
    }

    public byte[] getImageData()
    {
        Assert.verify(origin == Origin.READ || origin == Origin.READ_WRITE);
        if(!initialized)
            initialize();
        return drawingGroup.getImageData(blipId);
    }

    public ShapeType getType()
    {
        return type;
    }

    public void setTextObject(TextObjectRecord t)
    {
        txo = t;
    }

    public void setText(ContinueRecord t)
    {
        text = t;
    }

    public void setFormatting(ContinueRecord t)
    {
        formatting = t;
    }

    public byte[] getImageBytes()
    {
        Assert.verify(false);
        return null;
    }

    public String getImageFilePath()
    {
        Assert.verify(false);
        return null;
    }

    public void addMso(MsoDrawingRecord d)
    {
        mso = d;
        drawingData.addRawData(mso.getData());
    }

    public void writeAdditionalRecords(File outputFile)
        throws IOException
    {
        if(origin == Origin.READ)
        {
            outputFile.write(objRecord);
            if(mso != null)
                outputFile.write(mso);
            outputFile.write(txo);
            outputFile.write(text);
            if(formatting != null)
                outputFile.write(formatting);
            return;
        } else
        {
            Assert.verify(false);
            ObjRecord objrec = new ObjRecord(objectId, ObjRecord.EXCELNOTE);
            outputFile.write(objrec);
            ClientTextBox textBox = new ClientTextBox();
            MsoDrawingRecord msod = new MsoDrawingRecord(textBox.getData());
            outputFile.write(msod);
            TextObjectRecord tor = new TextObjectRecord(getText());
            outputFile.write(tor);
            byte textData[] = new byte[commentText.length() * 2 + 1];
            textData[0] = 1;
            StringHelper.getUnicodeBytes(commentText, textData, 1);
            ContinueRecord textContinue = new ContinueRecord(textData);
            outputFile.write(textContinue);
            byte frData[] = new byte[16];
            IntegerHelper.getTwoBytes(0, frData, 0);
            IntegerHelper.getTwoBytes(0, frData, 2);
            IntegerHelper.getTwoBytes(commentText.length(), frData, 8);
            IntegerHelper.getTwoBytes(0, frData, 10);
            ContinueRecord frContinue = new ContinueRecord(frData);
            outputFile.write(frContinue);
            return;
        }
    }

    public void writeTailRecords(File file)
    {
    }

    public int getRow()
    {
        return 0;
    }

    public int getColumn()
    {
        return 0;
    }

    public String getText()
    {
        if(commentText == null)
        {
            Assert.verify(text != null);
            byte td[] = text.getData();
            if(td[0] == 0)
                commentText = StringHelper.getString(td, td.length - 1, 1, workbookSettings);
            else
                commentText = StringHelper.getUnicodeString(td, (td.length - 1) / 2, 1);
        }
        return commentText;
    }

    public int hashCode()
    {
        return commentText.hashCode();
    }

    public void setButtonText(String t)
    {
        commentText = t;
        if(origin == Origin.READ)
            origin = Origin.READ_WRITE;
    }

    public boolean isFirst()
    {
        return mso.isFirst();
    }

    public boolean isFormObject()
    {
        return true;
    }

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

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

⌨️ 快捷键说明

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