Source: qaudiomixer.h


Annotated List
Files
Globals
Hierarchy
Index
// ##########################################################################
// ####                                                                  ####
// ####                      RTP Audio Server Project                    ####
// ####                    ============================                  ####
// ####                                                                  ####
// #### QAudioMixer                                                      ####
// ####                                                                  ####
// #### Version 1.00  --  February 04, 2001                              ####
// ####                                                                  ####
// #### Copyright (C) 1999  Thomas Dreibholz                             ####
// ####               2000  Universität Bonn, Abt. IV                    ####
// ####               2001  EMail: Dreibholz@bigfoot.com                 ####
// ####                     WWW:   http://www.bigfoot.com/~dreibholz     ####
// ####                                                                  ####
// ##########################################################################


#ifndef QAUDIOMIXER_H
#define QAUDIOMIXER_H


#include "system.h"
#include "audiomixer.h"


#include <qapp.h>
#if QT_VERSION < 200
#error QT Version 2.00 or better required!!!
#endif
#include <qlayout.h>
#include <qpushbutton.h>
#include <qlabel.h>
#include <qslider.h>
#include <qgroupbox.h>
#include <qmainwindow.h>


namespace Coral {


/**
  * This class is a Qt GUI for the audio mixer.
  *
  * @short   QAudioMixer
  * @author  Thomas Dreibholz (Dreibholz@bigfoot.com)
  * @version 1.0
  */
class QAudioMixer : public QMainWindow
{
   // ====== Constructor/Destructor =========================================
   Q_OBJECT  
   public:
   /**
     * Constructor.
     *
     * @param mixer AudioMixer object.
     * @param parent Parent widget.
     * @param name Widget name.
     */
   QAudioMixer(AudioMixer* mixer,
               QWidget*    parent = NULL,
               const char* name   = NULL);

   /**
     * Destructor.
     */
   ~QAudioMixer();


   // ====== Qt slots =======================================================
   public slots:
   /**
     * Qt slot: Change balance.
     */
   void balance(int value);

   /**
     * Qt slot: Change volume.
     */
   void volume(int value);

   /**
     * Qt slot: Center balance slider.
     */
   void centerBalance();

   /**
     * Qt slot: Mute.
     */
   void mute();


   // ====== Qt signals =====================================================
   signals:
   /**
     * Qt signal: Emitted, when "Close" or window's close button is clicked.
     */
   void closeAudioMixer();


   // ====== Private data ===================================================
   private:
   void closeEvent(QCloseEvent* event);
   void update();


   integer      VolumeSetting;
   integer      BalanceSetting;

   AudioMixer*  Mixer;
   QPushButton* Mute;
   QSlider*     Balance;
   QSlider*     Volume;
   QLabel*      Values;
};


}


#endif

Generated by: viper@odin on Sun Feb 4 18:54:51 2001, using kdoc 2.0a22.