home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 10 Tools
/
10-Tools.zip
/
VSCPPv8.zip
/
VACPP
/
IBMCPP
/
samples
/
IOC
/
MMSTEREO
/
MLTCD.HPP
< prev
next >
Wrap
Text File
|
1995-05-01
|
3KB
|
111 lines
#include "mltcd.h"
#include <immcdda.hpp>
#include <ifont.hpp>
#include <immttime.hpp>
#include <inotifev.hpp>
#include <icolor.hpp>
#include <ianimbut.hpp>
#include <icmdhdr.hpp>
#include <istattxt.hpp>
#include <iobservr.hpp>
#include <immplypn.hpp>
#include <immplyhd.hpp>
class CDHandler;
class CDObserver;
class CD : public IMMPlayerPanel {
//**************************************************************************
// Class: CD *
// *
// Purpose: Provide a CD player. *
// It is a subclass of IMMPlayerPanel *
// *
//**************************************************************************
public:
CD( IMMAudioCD* cd,
unsigned long windowid,
IWindow* parent,
IWindow* owner);
~CD();
IAnimatedButton
*ejectButton () const,
*scanForwardButton () const,
*scanBackwardButton () const;
/*-------------------------------- Device ------------------------------------*/
IMMAudioCD*
cdPlayer() const;
IStaticText
name,
discReadout,
readout;
private:
IMMAudioCD
*pCDPlayer;
IAnimatedButton
*trackF,
*trackB,
*scanF,
*scanB,
*eject;
CDHandler
*handler;
CDObserver
*observer;
};
class CDHandler : public IMMPlayerPanelHandler {
typedef IMMPlayerPanelHandler
Inherited;
//**************************************************************************
// Class: CDHandler *
// *
// Purpose: Provide a Handler for processing the track and scan buttons *
// *
//**************************************************************************
public:
CDHandler ();
/*---------------------------- Event Dispatching -----------------------------*/
virtual Boolean
command (ICommandEvent& event);
/*----------------------------- Event Processing -----------------------------*/
virtual Boolean
rewind (const IMMPlayerPanel& panel),
fastForward (const IMMPlayerPanel& panel);
};
class CDObserver : public IObserver {
typedef IObserver
Inherited;
//**************************************************************************
// Class: CDObserver *
// *
// Purpose: Provide an Observer for processing the play notifications. *
// *
//**************************************************************************
public:
CDObserver (CD& cdPanel);
virtual CDObserver
&dispatchNotificationEvent(const INotificationEvent&);
private:
CD
&panel;
};