You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@poi.apache.org by ni...@apache.org on 2008/01/24 17:05:29 UTC
svn commit: r614909 - in /poi/trunk/src: documentation/content/xdocs/
java/org/apache/poi/hssf/record/ java/org/apache/poi/hssf/record/formula/
Author: nick
Date: Thu Jan 24 08:05:27 2008
New Revision: 614909
URL: http://svn.apache.org/viewvc?rev=614909&view=rev
Log:
>From bug #44254 - avoid some unread bytes warnings, and process the contents of DVALRecord
Modified:
poi/trunk/src/documentation/content/xdocs/changes.xml
poi/trunk/src/documentation/content/xdocs/status.xml
poi/trunk/src/java/org/apache/poi/hssf/record/DVALRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/UncalcedRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/formula/ErrPtg.java
Modified: poi/trunk/src/documentation/content/xdocs/changes.xml
URL: http://svn.apache.org/viewvc/poi/trunk/src/documentation/content/xdocs/changes.xml?rev=614909&r1=614908&r2=614909&view=diff
==============================================================================
--- poi/trunk/src/documentation/content/xdocs/changes.xml (original)
+++ poi/trunk/src/documentation/content/xdocs/changes.xml Thu Jan 24 08:05:27 2008
@@ -36,6 +36,7 @@
<!-- Don't forget to update status.xml too! -->
<release version="3.0.2-FINAL" date="2008-??-??">
+ <action dev="POI-DEVELOPERS" type="fix">44254 - Avoid some unread byte warnings, and properly understand DVALRecord</action>
<action dev="POI-DEVELOPERS" type="add">Add another formula evaluation method, evaluateFormulaCell(cell), which will re-calculate the value for a formula, without affecting the formula itself.</action>
<action dev="POI-DEVELOPERS" type="fix">41726 - Fix how we handle signed cell offsets in relative areas and references</action>
<action dev="POI-DEVELOPERS" type="add">44233 - Support for getting and setting a flag on the sheet, which tells excel to re-calculate all formulas on it at next reload</action>
Modified: poi/trunk/src/documentation/content/xdocs/status.xml
URL: http://svn.apache.org/viewvc/poi/trunk/src/documentation/content/xdocs/status.xml?rev=614909&r1=614908&r2=614909&view=diff
==============================================================================
--- poi/trunk/src/documentation/content/xdocs/status.xml (original)
+++ poi/trunk/src/documentation/content/xdocs/status.xml Thu Jan 24 08:05:27 2008
@@ -33,6 +33,7 @@
<!-- Don't forget to update changes.xml too! -->
<changes>
<release version="3.0.2-FINAL" date="2008-??-??">
+ <action dev="POI-DEVELOPERS" type="fix">44254 - Avoid some unread byte warnings, and properly understand DVALRecord</action>
<action dev="POI-DEVELOPERS" type="add">Add another formula evaluation method, evaluateFormulaCell(cell), which will re-calculate the value for a formula, without affecting the formula itself.</action>
<action dev="POI-DEVELOPERS" type="fix">41726 - Fix how we handle signed cell offsets in relative areas and references</action>
<action dev="POI-DEVELOPERS" type="add">44233 - Support for getting and setting a flag on the sheet, which tells excel to re-calculate all formulas on it at next reload</action>
Modified: poi/trunk/src/java/org/apache/poi/hssf/record/DVALRecord.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/DVALRecord.java?rev=614909&r1=614908&r2=614909&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/record/DVALRecord.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/record/DVALRecord.java Thu Jan 24 08:05:27 2008
@@ -29,19 +29,22 @@
public class DVALRecord extends Record
{
- public final static short sid = 0x01B2;
+ public final static short sid = 0x01B2;
- //unknown field ; it's size should be 10
- private short field_unknown = 0x0000;
+ /** Options of the DVAL */
+ private short field_1_options;
+ /** Horizontal position of the dialog */
+ private int field_2_horiz_pos;
+ /** Vertical position of the dialog */
+ private int field_3_vert_pos;
+
+ /** Object ID of the drop down arrow object for list boxes ;
+ * in our case this will be always FFFF , until
+ * MSODrawingGroup and MSODrawing records are implemented */
+ private int field_cbo_id = 0xFFFFFFFF;
- //Object ID of the drop down arrow object for list boxes ;
- //in our case this will be always FFFF , until
- //MSODrawingGroup and MSODrawing records are implemented
- private int field_cbo_id = 0xFFFFFFFF;
-
- //Number of following DV records
- //Default value is 1
- private int field_3_dv_no = 0x00000000;
+ /** Number of following DV Records */
+ private int field_5_dv_no = 0x00000000;
public DVALRecord()
{
@@ -66,17 +69,38 @@
}
}
- protected void fillFields(RecordInputStream in)
- {
- for ( int i=0; i<5; i++)
- {
- this.field_unknown = in.readShort();
- }
+ protected void fillFields(RecordInputStream in)
+ {
+ this.field_1_options = in.readShort();
+ this.field_2_horiz_pos = in.readInt();
+ this.field_3_vert_pos = in.readInt();
this.field_cbo_id = in.readInt();
- this.field_3_dv_no = in.readInt();
- }
+ this.field_5_dv_no = in.readInt();
+ }
+
/**
+ * @param field_1_options the options of the dialog
+ */
+ public void setOptions(short field_1_options) {
+ this.field_1_options = field_1_options;
+ }
+
+ /**
+ * @param field_2_horiz_pos the Horizontal position of the dialog
+ */
+ public void setHorizontalPos(int field_2_horiz_pos) {
+ this.field_2_horiz_pos = field_2_horiz_pos;
+ }
+
+ /**
+ * @param field_3_vert_pos the Vertical position of the dialog
+ */
+ public void setVerticalPos(int field_3_vert_pos) {
+ this.field_3_vert_pos = field_3_vert_pos;
+ }
+
+ /**
* set the object ID of the drop down arrow object for list boxes
* @param cboID - Object ID
*/
@@ -91,10 +115,33 @@
*/
public void setDVRecNo(int dvNo)
{
- this.field_3_dv_no = dvNo;
+ this.field_5_dv_no = dvNo;
}
+
+
/**
+ * @return the field_1_options
+ */
+ public short getOptions() {
+ return field_1_options;
+ }
+
+ /**
+ * @return the Horizontal position of the dialog
+ */
+ public int getHorizontalPos() {
+ return field_2_horiz_pos;
+ }
+
+ /**
+ * @return the the Vertical position of the dialog
+ */
+ public int getVerticalPos() {
+ return field_3_vert_pos;
+ }
+
+ /**
* get Object ID of the drop down arrow object for list boxes
*/
public int getObjectID( )
@@ -107,29 +154,32 @@
*/
public int getDVRecNo( )
{
- return this.field_3_dv_no;
+ return this.field_5_dv_no;
}
- public String toString()
- {
- StringBuffer buffer = new StringBuffer();
-
- buffer.append("[DVAL]\n");
- buffer.append(" .comboObjectID = ").append(Integer.toHexString(this.getObjectID())).append("\n");
- buffer.append(" .DVRecordsNumber = ").append(Integer.toHexString(this.getDVRecNo())).append("\n");
- buffer.append("[/DVAL]\n");
- return buffer.toString();
- }
+ public String toString()
+ {
+ StringBuffer buffer = new StringBuffer();
+
+ buffer.append("[DVAL]\n");
+ buffer.append(" .options = ").append(this.getOptions()).append('\n');
+ buffer.append(" .horizPos = ").append(this.getHorizontalPos()).append('\n');
+ buffer.append(" .vertPos = ").append(this.getVerticalPos()).append('\n');
+ buffer.append(" .comboObjectID = ").append(Integer.toHexString(this.getObjectID())).append("\n");
+ buffer.append(" .DVRecordsNumber = ").append(Integer.toHexString(this.getDVRecNo())).append("\n");
+ buffer.append("[/DVAL]\n");
+ return buffer.toString();
+ }
public int serialize(int offset, byte [] data)
{
LittleEndian.putShort(data, 0 + offset, this.sid);
LittleEndian.putShort(data, 2 + offset, ( short)(this.getRecordSize()-4));
- for ( int i=0; i<5; i++)
- {
- LittleEndian.putShort(data, 4 + i*2 + offset, (short)this.field_unknown);
- }
+
+ LittleEndian.putShort(data, 4 + offset, this.getOptions());
+ LittleEndian.putInt(data, 6 + offset, this.getHorizontalPos());
+ LittleEndian.putInt(data, 10 + offset, this.getVerticalPos());
LittleEndian.putInt(data, 14 + offset, this.getObjectID());
LittleEndian.putInt(data, 18 + offset, this.getDVRecNo());
return getRecordSize();
@@ -149,9 +199,11 @@
public Object clone()
{
DVALRecord rec = new DVALRecord();
- rec.field_unknown = this.field_unknown;
+ rec.field_1_options = field_1_options;
+ rec.field_2_horiz_pos = field_2_horiz_pos;
+ rec.field_3_vert_pos = field_3_vert_pos;
rec.field_cbo_id = this.field_cbo_id;
- rec.field_3_dv_no = this.field_3_dv_no;
+ rec.field_5_dv_no = this.field_5_dv_no;
return rec;
}
-}
\ No newline at end of file
+}
Modified: poi/trunk/src/java/org/apache/poi/hssf/record/UncalcedRecord.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/UncalcedRecord.java?rev=614909&r1=614908&r2=614909&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/record/UncalcedRecord.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/record/UncalcedRecord.java Thu Jan 24 08:05:27 2008
@@ -55,6 +55,7 @@
}
protected void fillFields(RecordInputStream in) {
+ short unused = in.readShort();
}
public String toString() {
Modified: poi/trunk/src/java/org/apache/poi/hssf/record/formula/ErrPtg.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/formula/ErrPtg.java?rev=614909&r1=614908&r2=614909&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/record/formula/ErrPtg.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/record/formula/ErrPtg.java Thu Jan 24 08:05:27 2008
@@ -29,7 +29,7 @@
public class ErrPtg extends Ptg
{
public static final short sid = 0x1c;
- private static final int SIZE = 7;
+ private static final int SIZE = 2;
private byte field_1_error_code;
/** Creates new ErrPtg */
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@poi.apache.org
For additional commands, e-mail: commits-help@poi.apache.org