home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / flash078.zip / flashsource-r0_7_8.zip / FSprite.cpp < prev    next >
C/C++ Source or Header  |  2001-05-07  |  1KB  |  58 lines

  1. #include <strstream>
  2. #include "FControl.h"
  3. #include "FSprite.h"
  4. #include "FDisplay.h"
  5.  
  6. void FlashTagSprite::Add(FlashSpriteEnabled *tag)
  7.     tags.push_back(tag);
  8.     if(tag->isFrame()) frames++;
  9. }
  10.  
  11. std::ostream &operator << (std::ostream &out, FlashTagSprite &data)
  12. {
  13.     std::ostrstream tmp;
  14.     for(std::vector<FlashSpriteEnabled *>::iterator i=data.tags.begin(); i != data.tags.end(); i++)
  15.     {
  16.         (*i)->Write(tmp);
  17.     }
  18.     tmp << FlashTagEnd();
  19.     out << FlashTagHeader(39, 4+tmp.pcount());
  20.     WRITE_UWORD(data.GetID());
  21.     WRITE_UWORD(data.frames);
  22.     out.write(tmp.rdbuf()->str(),tmp.pcount());
  23.     return out;
  24. }
  25.  
  26. std::istream &operator >> (std::istream &in,  FlashTagSprite &data)
  27. {
  28.     /*UWORD id;
  29.     READ_UWORD(id);
  30.     data.SetID(id);
  31.     READ_UWORD(data.frames);*/
  32.  
  33.     //ADD IMPORT CODE
  34.     
  35.     return in;
  36. }
  37.  
  38. std::ostream &operator << (std::ostream &out, FlashTagDefineMovie &data)
  39. {
  40.     out << FlashTagHeader(38, strlen(data.str)+3);
  41.     WRITE_UWORD(data.GetID());
  42.     out << data.str;
  43.     out.put((char)0);
  44.     return out;
  45. }
  46.     
  47. std::istream &operator >> (std::istream &in,  FlashTagDefineMovie &data)
  48. {
  49.     UWORD id;
  50.     READ_UWORD(id);
  51.     data.SetID(id);
  52.     data.str = (char *)malloc(data.importsize - 2);    
  53.     in.read(data.str, data.importsize - 2);
  54.     data.gc.push_back(data.str);
  55.     return in;
  56. }
  57.