home *** CD-ROM | disk | FTP | other *** search
/ The Best of Mecomp Multimedia 2 / MECOMP-CD-II.iso / amiga / sound / mrmpeg / main.rexx < prev    next >
Encoding:
OS/2 REXX Batch file  |  1998-03-07  |  8.5 KB  |  193 lines

  1. /* Main.rexx */
  2.  
  3. options results; address MrMPEG
  4.  
  5. if ~show('L', 'rexxsupport.library') then do
  6.   if ~addlib('rexxsupport.library', 0, -30, 0) then do
  7.     say('rexxsupport.library is not available. Exiting...')
  8.     exit
  9.   end
  10. end
  11. if ~show('L', 'rexxutil.library') then do
  12.   if ~addlib('rexxutil.library', 0, -30, 0) then do
  13.     say('rexxutil.library is not available. Exiting...')
  14.     exit
  15.   end
  16. end
  17.  
  18. ASLFR_DrawersOnly    = 0x8008002f;    ASLFR_TitleText        = 0x80080001
  19. MUIA_Cycle_Active    = 0x80421788;    MUIA_Disabled        = 0x80423661
  20. MUIA_Dropable        = 0x8042fbce;    MUIA_InputMode        = 0x8042fb04
  21. MUIA_Listview_DragType    = 0x80425cd3;    MUIA_Listview_ClickColumn    = 0x8042d1b3
  22. MUIA_Listview_DoubleClick    = 0x80424635
  23. MUIA_Listview_MultiSelect    = 0x80427e08
  24. MUIA_List_AutoVisible    = 0x8042a445;    MUIA_List_DragSortable    = 0x80426099
  25. MUIA_List_Format    = 0x80423c0a;    MUIA_Menuitem_ShortCut    = 0x80422030
  26. MUIA_Menuitem_Title    = 0x804218be;    MUIA_NoNotify        = 0x804237f9
  27. MUIA_Numeric_Value    = 0x8042ae3a;    MUIA_Pressed        = 0x80423535
  28. MUIA_Selected        = 0x8042654b;    MUIA_ShowMe        = 0x80429ba8
  29. MUIA_Slider_Level    = 0x8042ae3a;    MUIA_Slider_Max        = 0x8042d78a
  30. MUIA_Slider_Min        = 0x8042e404;    MUIA_Timer        = 0x80426435
  31. MUIA_Window_Open    = 0x80428aa0;    MUIA_Window_Sleep    = 0x8042e7db
  32. MUIM_Application_AboutMUI    = 0x8042d21d
  33. MUIM_Application_OpenConfigWindow    = 0x804299ba
  34. MUIV_EveryTime        = 0x49893131;    MUIV_InputMode_RelVerify    = 1
  35. MUIV_Listview_DragType_Immediate    = 1
  36. MUIV_Listview_MultiSelect_Default    = 1
  37.  
  38. setvar cont 0; setvar stopped 0; setvar current_song ""; setvar current_time '00:00'
  39. setvar total_time '00:00:00'
  40.  
  41. window ID WIND1 TITLE '"MrMPEG"' COMMAND '"Clean"'
  42.  menu LABEL "Project"
  43.   item COMMAND '"Save 1"' ATTRS MUIA_Menuitem_Shortcut 'S' LABEL "Save Prefs"
  44.   item COMMAND '"method 'MUIM_Application_OpenConfigWindow'"',
  45.    ATTRS MUIA_Menuitem_Shortcut 'P' PORT MrMPEG LABEL "MUI Prefs..."
  46.   item ATTRS MUIA_Menuitem_Title '-1'
  47.   item COMMAND '"About"' ATTRS MUIA_Menuitem_Shortcut 'R' LABEL "About MrMPEG..."
  48.   item COMMAND '"method 'MUIM_Application_AboutMUI' 0"',
  49.    ATTRS MUIA_Menuitem_Shortcut 'M' PORT MrMPEG LABEL "About MUI..."
  50.   item ATTRS MUIA_Menuitem_Title '-1'
  51.   item COMMAND '"Clean"' ATTRS MUIA_Menuitem_Shortcut 'Q' LABEL "Quit"
  52.  endmenu
  53.  group ID MAIN FRAME
  54.   string ID FNAME CONTENT "No song is loaded."
  55.   text ID LCD LABEL "MrMIDI is also available from Aminet."
  56.   group HORIZ
  57.    label SINGLE "Song:"
  58.    text ID ACTIV LABEL "\033b\033r  0"
  59.    label SINGLE "/"
  60.    text ID MAX LABEL "\033b\033r  0"
  61.    label SINGLE "Time:"
  62.    text ID CURNT LABEL "\033b\033r00:00"
  63.    label SINGLE "/"
  64.    text ID TOTAL LABEL "\033b\033r00:00:00"
  65.   endgroup
  66.   group HORIZ
  67.    group
  68.     knob ID VOLM ATTRS MUIA_Slider_Max 255 MUIA_Slider_Min 0 MUIA_Slider_Level 100,
  69.      MUIA_InputMode MUIV_InputMode_RelVerify
  70.     label "Volume"
  71.    endgroup
  72.    group
  73.     group HORIZ
  74.      image ID PREV SPEC "4:MrMPEG:images/Previous.mf0" COMMAND '"Prev"'
  75.      image ID RWND SPEC "4:MrMPEG:images/Backward.mf0" COMMAND '""' PORT INLINE
  76.      check ID PLAY SPEC "4:MrMPEG:images/Play.mf0" COMMAND '"Play"'
  77.      image ID FFWD SPEC "4:MrMPEG:images/Forward.mf0" COMMAND '""' PORT INLINE
  78.      image ID NEXT SPEC "4:MrMPEG:images/Next.mf0" COMMAND '"Next"'
  79.      image ID STOP SPEC "4:MrMPEG:images/Stop.mf0" COMMAND '"Stop"'
  80.      image ID EJCT SPEC "4:MrMPEG:images/Eject.mf0" COMMAND '"Eject"'
  81.      check ID LIST SPEC "4:MrMPEG:images/SongList.mf0" ATTRS MUIA_Selected 1,
  82.       COMMAND '"window ID WIND2 ATTRS 'MUIA_Window_Open' %s"' PORT MrMPEG
  83.     endgroup
  84.     group HORIZ
  85.      check ID ADVC SPEC "4:MrMPEG:images/Advanced.mf0" ATTRS MUIA_Selected 1,
  86.       COMMAND '"group ID GRUP1 ATTRS 'MUIA_ShowMe' %s"' PORT MrMPEG
  87.      check ID MONO SPEC "4:MrMPEG:images/Expand.mf0" COMMAND '"Continue"'
  88.      check ID FILT SPEC "4:MrMPEG:images/Filter.mf0" COMMAND '"Continue"'
  89.      check ID RAND SPEC "4:MrMPEG:images/Random.mf0"
  90.      cycle ID REPT ATTRS MUIA_Cycle_Active 2 LABEL 'No Repeat,Repeat 1,Repeat All'
  91.     endgroup
  92.     slider ID PROG ATTRS MUIA_Slider_Max 0 MUIA_Slider_Min 0 MUIA_Slider_Level 0
  93.    endgroup
  94.   endgroup
  95.  endgroup
  96.  group ID GRUP1 FRAME HORIZ
  97.   group
  98.    label SINGLE "Freq. Div.:"
  99.    label SINGLE "Quality:"
  100.    label SINGLE "Priority:"
  101.    label SINGLE "Max. Freq. (Hz):"
  102.    label SINGLE "Mix. Freq. (Hz):"
  103.    label SINGLE "Audio Buffer (Sec):"
  104.    label SINGLE "Input Buffer (KB):"
  105.    label SINGLE "Use AHI (Mode ID):"
  106.   endgroup
  107.   group
  108.    cycle ID DIVS COMMAND '"Continue"' LABEL '1:1,1:2,1:4'
  109.    cycle ID QUAL COMMAND '"Continue"' LABEL 'Low,Medium,High'
  110.    slider ID PRIO ATTRS MUIA_Slider_Max 30 MUIA_Slider_Min '-30' MUIA_Slider_Level 0
  111.    cycle ID MAXF PORT INLINE COMMAND '"options results; address MrMPEG;
  112.     cycle ID MAXF; if result ~= 'OFF' then; cycle ID DIVS 'MUIA_Disabled' 1;
  113.     else cycle ID DIVS 'MUIA_Disabled' 0; call Continue()"',
  114.     LABEL 'OFF,11025,22050,24000,44100,48000'
  115.    cycle ID MIXF COMMAND '"Continue"' LABEL 'OFF,11025,22050,24000,44100,48000'
  116.    cycle ID ABUF COMMAND '"Continue"' ATTRS MUIA_Cycle_Active 1 LABEL '0,1,2,3,4,5'
  117.    cycle ID IBUF COMMAND '"Continue"' ATTRS MUIA_Cycle_Active 0 LABEL '16,32,64,128,256,512,1024'
  118.    group HORIZ
  119.     check ID UAHI PORT INLINE COMMAND '"options results; address MrMPEG;
  120.      check ID UAHI; if result = 0 then; text ID AHID ATTRS 'MUIA_Disabled' 1;
  121.      else text ID AHID ATTRS 'MUIA_Disabled' 0; call Continue()"'
  122.     text ID AHID COMMAND '"GetAHI.rexx"' ATTRS MUIA_Disabled 1
  123.    endgroup
  124.   endgroup
  125.  endgroup
  126. endwindow
  127. window ID WIND2 TITLE '"Play List"'
  128.  menu LABEL "Project"
  129.   item COMMAND '"Save 1"' ATTRS MUIA_Menuitem_Shortcut 'S' LABEL "Save Prefs"
  130.   item COMMAND '"method 'MUIM_Application_OpenConfigWindow'"',
  131.    ATTRS MUIA_Menuitem_Shortcut 'P' PORT MrMPEG LABEL "MUI Prefs..."
  132.   item ATTRS MUIA_Menuitem_Title '-1'
  133.   item COMMAND '"About"' ATTRS MUIA_Menuitem_Shortcut 'R' LABEL "About MrMPEG..."
  134.   item COMMAND '"method 'MUIM_Application_AboutMUI' 0"',
  135.    ATTRS MUIA_Menuitem_Shortcut 'M' PORT MrMPEG LABEL "About MUI..."
  136.   item ATTRS MUIA_Menuitem_Title '-1'
  137.   item COMMAND '"Clean"' ATTRS MUIA_Menuitem_Shortcut 'Q' LABEL "Quit"
  138.  endmenu
  139.  group HORIZ
  140.   group
  141.    label SINGLE "MPEGA Path:"
  142.    label SINGLE "MPEG Files Path:"
  143.   endgroup
  144.   group
  145.    popasl ID PATH SPEC "6:20" ATTRS ASLFR_DrawersOnly 1
  146.    popasl ID FPATH SPEC "6:20" ATTRS ASLFR_DrawersOnly 1
  147.   endgroup
  148.  endgroup
  149.  list ID SLIST TITLE '"Song Path,Time,Details"' ATTRS MUIA_Listview_DragType,
  150.   MUIV_Listview_DragType_Immediate MUIA_List_DragSortable 1 MUIA_Dropable 1,
  151.   MUIA_List_AutoVisible 1,
  152.   MUIA_List_Format '"P=\033r C=1 BAR,C=0 BAR,"',
  153.   MUIA_Listview_MultiSelect MUIV_Listview_MultiSelect_Default PORT INLINE COMMAND '"
  154.   options results; address MrMPEG; check ID PLAY; if result = 0 then do;
  155.   setvar cont 1; check ID PLAY ATTRS 'MUIA_Selected' 1; end; else do;
  156.   call Continue.rexx; end; slider ID PROG ATTRS 'MUIA_Slider_Level' 0"'
  157.  group HORIZ
  158.   button ID INST COMMAND '"Insert"' LABEL "Insert"
  159.   button ID DELE COMMAND '"Delete"' LABEL "Delete"
  160.   button ID CLR COMMAND '"Clear"' LABEL "Clear"
  161.   button ID SORT COMMAND '"Sort"' LABEL "Sort"
  162.  endgroup
  163.  group HORIZ
  164.   button ID LLOAD COMMAND '"ListLoad 1"' LABEL "Load"
  165.   button ID LSAVE COMMAND '"ListSave 1"' LABEL "Save"
  166.   button ID INCL COMMAND '"ListLoad 2"' LABEL "Include"
  167.  endgroup
  168. endwindow
  169. call Load
  170. call ListLoad(0)
  171.  
  172. callhook ID SLIST APP COMMAND '"DropInsert %s"'
  173. callhook ID MAIN APP PORT INLINE COMMAND """options results; address MrMPEG;
  174.  call Clear; call DropInsert '%s'; check ID PLAY ATTRS "MUIA_Selected" 1"""
  175. callhook ID VOLM ATTRS MUIA_Pressed 0 COMMAND '"Continue"'
  176. callhook ID FFWD PORT INLINE ATTRS MUIA_Timer MUIV_EveryTime COMMAND '"
  177.  options results; address MrMPEG; slider ID PROG ATTRS 'MUIA_Slider_Level';
  178.  slider ID PROG ATTRS 'MUIA_NoNotify' 1 'MUIA_Slider_Level' result+1;
  179.  slider ID PROG ATTRS 'MUIA_Slider_Level'; counter = result;
  180.  temp_current_time = right(counter % 60, 2, 0)'':''right(counter // 60, 2, 0);
  181.  setvar current_time temp_current_time"'
  182. callhook ID RWND PORT INLINE ATTRS MUIA_Timer MUIV_EveryTime COMMAND '"
  183.  options results; address MrMPEG; slider ID PROG ATTRS 'MUIA_Slider_Level';
  184.  slider ID PROG ATTRS 'MUIA_NoNotify' 1 'MUIA_Slider_Level' result-1;
  185.  slider ID PROG ATTRS 'MUIA_Slider_Level'; counter = result;
  186.  temp_current_time = right(counter % 60, 2, 0)'':''right(counter // 60, 2, 0);
  187.  setvar current_time temp_current_time"'
  188. callhook ID PROG PORT INLINE ATTRS MUIA_Numeric_Value MUIV_EveryTime COMMAND '"
  189.  options results; address MrMPEG; slider ID PROG ATTRS 'MUIA_Slider_Level';
  190.  counter = result; temp_current_time = right(counter % 60, 2, 0)'':''right(counter // 60, 2, 0);
  191.  setvar current_time temp_current_time"'
  192. exit
  193.