home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: Multimed / Multimed.zip / mp3osr05.zip / src / infopane.pas < prev    next >
Pascal/Delphi Source File  |  1999-12-26  |  2KB  |  75 lines

  1. unit InfoPane;
  2.  
  3. interface
  4.  
  5. uses
  6.   Objects, Dialogs, Views, ID3v1;
  7.  
  8. type
  9.   PMpegInfo = ^TMpegInfo;
  10.   TMpegInfo = object(TDialog)
  11.     constructor Init(tag: PjID3v1); // nothing would be freed
  12.   end;
  13.  
  14. implementation
  15.  
  16. uses
  17.   Macroz, MacrozTV, Reports, Wizard;
  18.  
  19. constructor TMpegInfo.Init(tag: PjID3v1);
  20. var
  21.   R: TRect;
  22.   mc: PMacrosEngine;
  23.   tempLong: Longint;
  24.   ptMin, ptSec: string;
  25. begin
  26.   R.Assign(0, 0, 46, 15);
  27.   inherited Init(R, 'Info pane');
  28.  
  29.   Options := Options or ofCentered;
  30.  
  31.   mc := New(PMacrosEngine, Init);
  32.   MakeStandardMacros(tag, mc, tempLong, '');
  33.  
  34.   R.Assign(2, 2, 44, 3);
  35.   Insert(New(PStaticText, Init(R, mc^.Process('Title     │ @title'))));
  36.  
  37.   R.Assign(2, 3, 44, 4);
  38.   Insert(New(PStaticText, Init(R, mc^.Process('Artist    │ @artist'))));
  39.  
  40.   R.Assign(2, 4, 44, 5);
  41.   Insert(New(PStaticText, Init(R, mc^.Process('Album     │ @album'))));
  42.  
  43.   R.Assign(2, 5, 44, 6);
  44.   Insert(New(PStaticText, Init(R, mc^.Process('Comment   │ @comment'))));
  45.  
  46.   R.Assign(2, 6, 44, 7);
  47.   Insert(New(PStaticText, Init(R, mc^.Process('Year      │ @year'))));
  48.  
  49.   R.Assign(2, 7, 44, 8);
  50.   Insert(New(PStaticText, Init(R, mc^.Process('MPEG ver  │ @mpegversion'))));
  51.  
  52.   R.Assign(2, 8, 44, 9);
  53.   Insert(New(PStaticText, Init(R, mc^.Process('Layer     │ @layer'))));
  54.  
  55.   R.Assign(2, 9, 44, 10);
  56.   Insert(New(PStaticText, Init(R, mc^.Process('Bitrate   │ @bitrate'))));
  57.  
  58.   R.Assign(2, 10, 44, 11);
  59.   Insert(New(PStaticText, Init(R, mc^.Process('Smp. rate │ @samplerate'))));
  60.  
  61.   R.Assign(2, 11, 44, 12);
  62.   Insert(New(PStaticText, Init(R, mc^.Process('Mode      │ @mode'))));
  63.  
  64.   ptMin := LeftPadCh(mc^.Process('@playtimemin'), '0', 2);
  65.   ptSec := LeftPadCh(mc^.Process('@playtimesec'), '0', 2);
  66.  
  67.   R.Assign(2, 12, 44, 13);
  68.   Insert(New(PStaticText, Init(R, mc^.Process(Concat('Play time │ ', ptMin,
  69.     ':', ptSec)))));
  70.  
  71.   Dispose(mc, Done);
  72. end;
  73.  
  74. end.
  75.