Exemplo n.º 1
0
  protected void fillFields(RecordInputStream in) {
    fHighByte = BitFieldFactory.getInstance(0x01); // have to init here, since we are being called
    // from super, and class level init hasnt been done.
    field_1_xf_index = in.readShort();
    if (getType() == STYLE_BUILT_IN) {
      field_2_builtin_style = in.readByte();
      field_3_outline_style_level = in.readByte();
    } else if (getType() == STYLE_USER_DEFINED) {
      field_2_name_length = in.readShort();
      field_3_string_options = in.readByte();

      byte[] string = in.readRemainder();
      if (fHighByte.isSet(field_3_string_options)) {
        field_4_name = StringUtil.getFromUnicodeBE(string, 0, field_2_name_length);
      } else {
        field_4_name = StringUtil.getFromCompressedUnicode(string, 0, field_2_name_length);
      }
    }

    // todo sanity check exception to make sure we're one or the other
  }