Examples of UserEditAtom


Examples of org.apache.poi.hslf.record.UserEditAtom

            (int)cua.getCurrentEditOffset()
        );
      } catch(ArrayIndexOutOfBoundsException e) {}
      if(r == null) { return null; }
      if(! (r instanceof UserEditAtom)) { return null; }
      UserEditAtom uea = (UserEditAtom)r;
     
      // Now get the PersistPtrHolder
      Record r2 = Record.buildRecordAtOffset(
          hss.getUnderlyingBytes(),
          uea.getPersistPointersOffset()
      );
      if(! (r2 instanceof PersistPtrHolder)) { return null; }
      PersistPtrHolder pph = (PersistPtrHolder)r2;
     
      // Now get the last record
View Full Code Here

Examples of org.apache.poi.hslf.record.UserEditAtom

   
    // Should only have a master SLWT
    assertEquals(1, ss_empty.getDocumentRecord().getSlideListWithTexts().length);

        //grab UserEditAtom
        UserEditAtom usredit = null;
        Record[] _records = hss_empty.getRecords();
        for (int i = 0; i < _records.length; i++) {
            Record record = _records[i];
            if(_records[i].getRecordType() == RecordTypes.UserEditAtom.typeID) {
                usredit = (UserEditAtom)_records[i];
            }
       }
       assertNotNull(usredit);

    // Add one
    Slide slide = ss_empty.createSlide();
    assertEquals(1, ss_empty.getSlides().length);
    assertEquals(256, slide._getSheetNumber());
    assertEquals(3, slide._getSheetRefId());
    assertEquals(1, slide.getSlideNumber());
        assertEquals(usredit.getMaxPersistWritten(), slide._getSheetRefId());

    // Write out, and read back in
    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    hss_empty.write(baos);
    ByteArrayInputStream bais = new ByteArrayInputStream(baos.toByteArray());
View Full Code Here

Examples of org.apache.poi.hslf.record.UserEditAtom

   * Test adding a slide to an existing slideshow,
   *  with two slides already
   */
  public void testAddSlideToExisting2() throws Exception {
        //grab UserEditAtom
        UserEditAtom usredit = null;
        Record[] _records = hss_two.getRecords();
        for (int i = 0; i < _records.length; i++) {
            Record record = _records[i];
            if(_records[i].getRecordType() == RecordTypes.UserEditAtom.typeID) {
                usredit = (UserEditAtom)_records[i];
            }
       }
       assertNotNull(usredit);

    // Has two slides
    assertEquals(2, ss_two.getSlides().length);
    Slide s1 = ss_two.getSlides()[0];
    Slide s2 = ss_two.getSlides()[1];
   
    // Check slide 1 is as expected
    assertEquals(256, s1._getSheetNumber());
    assertEquals(4, s1._getSheetRefId()); // master has notes
    assertEquals(1, s1.getSlideNumber());
    // Check slide 2 is as expected
    assertEquals(257, s2._getSheetNumber());
    assertEquals(6, s2._getSheetRefId()); // master and 1 have notes
    assertEquals(2, s2.getSlideNumber());

    // Add a third one
    Slide s3 = ss_two.createSlide();
    assertEquals(3, ss_two.getSlides().length);
    assertEquals(258, s3._getSheetNumber());
    assertEquals(8, s3._getSheetRefId()); // lots of notes before us
    assertEquals(3, s3.getSlideNumber());
        assertEquals(usredit.getMaxPersistWritten(), s3._getSheetRefId());

    // Write out, and read back in
    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    hss_two.write(baos);
    ByteArrayInputStream bais = new ByteArrayInputStream(baos.toByteArray());
View Full Code Here

Examples of org.apache.poi.hslf.record.UserEditAtom

   
    // Should only have a master SLWT
    assertEquals(1, ss_empty.getDocumentRecord().getSlideListWithTexts().length);

        //grab UserEditAtom
        UserEditAtom usredit = null;
        Record[] _records = hss_empty.getRecords();
        for (int i = 0; i < _records.length; i++) {
            Record record = _records[i];
            if(record.getRecordType() == RecordTypes.UserEditAtom.typeID) {
                usredit = (UserEditAtom)record;
            }
       }
       assertNotNull(usredit);

    // Add one
    Slide slide = ss_empty.createSlide();
    assertEquals(1, ss_empty.getSlides().length);
    assertEquals(256, slide._getSheetNumber());
    assertEquals(3, slide._getSheetRefId());
    assertEquals(1, slide.getSlideNumber());
        assertEquals(usredit.getMaxPersistWritten(), slide._getSheetRefId());

    // Write out, and read back in
    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    hss_empty.write(baos);
    ByteArrayInputStream bais = new ByteArrayInputStream(baos.toByteArray());
View Full Code Here

Examples of org.apache.poi.hslf.record.UserEditAtom

   * Test adding a slide to an existing slideshow,
   *  with two slides already
   */
  public void testAddSlideToExisting2() throws Exception {
        //grab UserEditAtom
        UserEditAtom usredit = null;
        Record[] _records = hss_two.getRecords();
        for (int i = 0; i < _records.length; i++) {
            Record record = _records[i];
            if(_records[i].getRecordType() == RecordTypes.UserEditAtom.typeID) {
                usredit = (UserEditAtom)_records[i];
            }
       }
       assertNotNull(usredit);

    // Has two slides
    assertEquals(2, ss_two.getSlides().length);
    Slide s1 = ss_two.getSlides()[0];
    Slide s2 = ss_two.getSlides()[1];
   
    // Check slide 1 is as expected
    assertEquals(256, s1._getSheetNumber());
    assertEquals(4, s1._getSheetRefId()); // master has notes
    assertEquals(1, s1.getSlideNumber());
    // Check slide 2 is as expected
    assertEquals(257, s2._getSheetNumber());
    assertEquals(6, s2._getSheetRefId()); // master and 1 have notes
    assertEquals(2, s2.getSlideNumber());

    // Add a third one
    Slide s3 = ss_two.createSlide();
    assertEquals(3, ss_two.getSlides().length);
    assertEquals(258, s3._getSheetNumber());
    assertEquals(8, s3._getSheetRefId()); // lots of notes before us
    assertEquals(3, s3.getSlideNumber());
        assertEquals(usredit.getMaxPersistWritten(), s3._getSheetRefId());

    // Write out, and read back in
    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    hss_two.write(baos);
    ByteArrayInputStream bais = new ByteArrayInputStream(baos.toByteArray());
View Full Code Here

Examples of org.apache.poi.hslf.record.UserEditAtom

      } catch (ArrayIndexOutOfBoundsException e) {
        return null;
      }
      if(r == null) { return null; }
      if(! (r instanceof UserEditAtom)) { return null; }
      UserEditAtom uea = (UserEditAtom)r;

      // Now get the PersistPtrHolder
      Record r2 = Record.buildRecordAtOffset(
          hss.getUnderlyingBytes(),
          uea.getPersistPointersOffset()
      );
      if(! (r2 instanceof PersistPtrHolder)) { return null; }
      PersistPtrHolder pph = (PersistPtrHolder)r2;

      // Now get the last record
View Full Code Here

Examples of org.apache.poi.hslf.record.UserEditAtom

  }

    private Record[] read(byte[] docstream, int usrOffset){
        ArrayList lst = new ArrayList();
        while (usrOffset != 0){
            UserEditAtom usr = (UserEditAtom) Record.buildRecordAtOffset(docstream, usrOffset);
            lst.add(new Integer(usrOffset));
            int psrOffset = usr.getPersistPointersOffset();

            PersistPtrHolder ptr = (PersistPtrHolder)Record.buildRecordAtOffset(docstream, psrOffset);
            lst.add(new Integer(psrOffset));
            Hashtable entries = ptr.getSlideLocationsLookup();
            for (Iterator it = entries.keySet().iterator(); it.hasNext(); ) {
                Integer id = (Integer)it.next();
                Integer offset = (Integer)entries.get(id);

                lst.add(offset);
            }

            usrOffset = usr.getLastUserEditAtomOffset();
        }
        //sort found records by offset.
        //(it is not necessary but SlideShow.findMostRecentCoreRecords() expects them sorted)
        Object a[] = lst.toArray();
        Arrays.sort(a);
View Full Code Here

Examples of org.apache.poi.hslf.record.UserEditAtom

      Record r = Record.buildRecordAtOffset(
          hss.getUnderlyingBytes(),
          (int)cua.getCurrentEditOffset()
      );
      if(! (r instanceof UserEditAtom)) { return null; }
      UserEditAtom uea = (UserEditAtom)r;
     
      // Now get the PersistPtrHolder
      Record r2 = Record.buildRecordAtOffset(
          hss.getUnderlyingBytes(),
          uea.getPersistPointersOffset()
      );
      if(! (r2 instanceof PersistPtrHolder)) { return null; }
      PersistPtrHolder pph = (PersistPtrHolder)r2;
     
      // Now get the last record
View Full Code Here

Examples of org.apache.poi.hslf.record.UserEditAtom

      Record r = Record.buildRecordAtOffset(
          hss.getUnderlyingBytes(),
          (int)cua.getCurrentEditOffset()
      );
      if(! (r instanceof UserEditAtom)) { return null; }
      UserEditAtom uea = (UserEditAtom)r;
     
      // Now get the PersistPtrHolder
      Record r2 = Record.buildRecordAtOffset(
          hss.getUnderlyingBytes(),
          uea.getPersistPointersOffset()
      );
      if(! (r2 instanceof PersistPtrHolder)) { return null; }
      PersistPtrHolder pph = (PersistPtrHolder)r2;
     
      // Now get the last record
View Full Code Here

Examples of org.apache.poi.hslf.record.UserEditAtom

      // Add the new Slide into the PersistPtr stuff
      int offset = 0;
      int slideOffset = 0;
      PersistPtrHolder ptr = null;
      UserEditAtom usr = null;
      for (int i = 0; i < _records.length; i++) {
        Record record = _records[i];
        ByteArrayOutputStream out = new ByteArrayOutputStream();
        record.writeOut(out);
       
        // Grab interesting records as they come past
        if(_records[i].getRecordType() == RecordTypes.PersistPtrIncrementalBlock.typeID){
          ptr = (PersistPtrHolder)_records[i];
        }
        if(_records[i].getRecordType() == RecordTypes.UserEditAtom.typeID) {
          usr = (UserEditAtom)_records[i];
        }
       
        if(i == slideRecordPos) {
          slideOffset = offset;
        }
        offset += out.size();
      }
     
    // Add the new slide into the last PersistPtr
      // (Also need to tell it where it is)
    slideRecord.setLastOnDiskOffset(slideOffset);
    ptr.addSlideLookup(sp.getRefID(), slideOffset);
    System.out.println("New slide ended up at " + slideOffset);

    // Last view is now of the slide
      usr.setLastViewType((short)UserEditAtom.LAST_VIEW_SLIDE_VIEW);
     
      // All done and added
      slide.setSlideShow(this);
      return slide;
  }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.