//Auto-generated by kalyptus. DO NOT EDIT.
namespace Phonon {
    using Phonon;
    using System;
    using Qyoto;
    /// <remarks> \class VolumeSlider volumeslider.h Phonon/VolumeSlider
    ///  \short Widget providing a slider to control the volume of an AudioOutput.
    ///  \ingroup PhononWidgets
    ///  \author Matthias Kretz <kretz@kde.org>
    ///  </remarks>        <short>   \class VolumeSlider volumeslider.</short>
    [SmokeClass("Phonon::VolumeSlider")]
    public class VolumeSlider : QWidget, IDisposable {
        protected VolumeSlider(Type dummy) : base((Type) null) {}
        protected new void CreateProxy() {
            interceptor = new SmokeInvocation(typeof(VolumeSlider), this);
        }
        [Q_PROPERTY("qreal", "maximumVolume")]
        public double MaximumVolume {
            get { return (double) interceptor.Invoke("maximumVolume", "maximumVolume()", typeof(double)); }
            set { interceptor.Invoke("setMaximumVolume$", "setMaximumVolume(qreal)", typeof(void), typeof(double), value); }
        }
        [Q_PROPERTY("Qt::Orientation", "orientation")]
        public new Qt.Orientation Orientation {
            get { return (Qt.Orientation) interceptor.Invoke("orientation", "orientation()", typeof(Qt.Orientation)); }
            set { interceptor.Invoke("setOrientation$", "setOrientation(Qt::Orientation)", typeof(void), typeof(Qt.Orientation), value); }
        }
        [Q_PROPERTY("bool", "tracking")]
        public bool Tracking {
            get { return (bool) interceptor.Invoke("hasTracking", "hasTracking()", typeof(bool)); }
            set { interceptor.Invoke("setTracking$", "setTracking(bool)", typeof(void), typeof(bool), value); }
        }
        [Q_PROPERTY("int", "pageStep")]
        public int PageStep {
            get { return (int) interceptor.Invoke("pageStep", "pageStep()", typeof(int)); }
            set { interceptor.Invoke("setPageStep$", "setPageStep(int)", typeof(void), typeof(int), value); }
        }
        [Q_PROPERTY("int", "singleStep")]
        public int SingleStep {
            get { return (int) interceptor.Invoke("singleStep", "singleStep()", typeof(int)); }
            set { interceptor.Invoke("setSingleStep$", "setSingleStep(int)", typeof(void), typeof(int), value); }
        }
        [Q_PROPERTY("bool", "muteVisible")]
        public bool MuteVisible {
            get { return (bool) interceptor.Invoke("isMuteVisible", "isMuteVisible()", typeof(bool)); }
            set { interceptor.Invoke("setMuteVisible$", "setMuteVisible(bool)", typeof(void), typeof(bool), value); }
        }
        [Q_PROPERTY("QSize", "iconSize")]
        public QSize IconSize {
            get { return (QSize) interceptor.Invoke("iconSize", "iconSize()", typeof(QSize)); }
            set { interceptor.Invoke("setIconSize#", "setIconSize(QSize)", typeof(void), typeof(QSize), value); }
        }
        /// <remarks>
        ///  Constructs a new volume slider with a <pre>parent</pre>.
        ///          </remarks>        <short>    Constructs a new volume slider with a \p parent.</short>
        public VolumeSlider(QWidget parent) : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("VolumeSlider#", "VolumeSlider(QWidget*)", typeof(void), typeof(QWidget), parent);
        }
        public VolumeSlider() : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("VolumeSlider", "VolumeSlider()", typeof(void));
        }
        public VolumeSlider(Phonon.AudioOutput arg1, QWidget parent) : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("VolumeSlider##", "VolumeSlider(Phonon::AudioOutput*, QWidget*)", typeof(void), typeof(Phonon.AudioOutput), arg1, typeof(QWidget), parent);
        }
        public VolumeSlider(Phonon.AudioOutput arg1) : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("VolumeSlider#", "VolumeSlider(Phonon::AudioOutput*)", typeof(void), typeof(Phonon.AudioOutput), arg1);
        }
        public Phonon.AudioOutput AudioOutput() {
            return (Phonon.AudioOutput) interceptor.Invoke("audioOutput", "audioOutput() const", typeof(Phonon.AudioOutput));
        }
        [Q_SLOT("void setMaximumVolume(qreal)")]
        public void SetMaximumVolume(double arg1) {
            interceptor.Invoke("setMaximumVolume$", "setMaximumVolume(qreal)", typeof(void), typeof(double), arg1);
        }
        [Q_SLOT("void setOrientation(Qt::Orientation)")]
        public void SetOrientation(Qt.Orientation arg1) {
            interceptor.Invoke("setOrientation$", "setOrientation(Qt::Orientation)", typeof(void), typeof(Qt.Orientation), arg1);
        }
        [Q_SLOT("void setMuteVisible(bool)")]
        public void SetMuteVisible(bool arg1) {
            interceptor.Invoke("setMuteVisible$", "setMuteVisible(bool)", typeof(void), typeof(bool), arg1);
        }
        [Q_SLOT("void setIconSize(QSize)")]
        public void SetIconSize(QSize size) {
            interceptor.Invoke("setIconSize#", "setIconSize(const QSize&)", typeof(void), typeof(QSize), size);
        }
        /// <remarks>
        ///  Sets the audio output object to be controlled by this slider.
        ///          </remarks>        <short>    Sets the audio output object to be controlled by this slider.</short>
        [Q_SLOT("void setAudioOutput(Phonon::AudioOutput*)")]
        public void SetAudioOutput(Phonon.AudioOutput arg1) {
            interceptor.Invoke("setAudioOutput#", "setAudioOutput(Phonon::AudioOutput*)", typeof(void), typeof(Phonon.AudioOutput), arg1);
        }
        ~VolumeSlider() {
            interceptor.Invoke("~VolumeSlider", "~VolumeSlider()", typeof(void));
        }
        public new void Dispose() {
            interceptor.Invoke("~VolumeSlider", "~VolumeSlider()", typeof(void));
        }
        protected new IVolumeSliderSignals Emit {
            get { return (IVolumeSliderSignals) Q_EMIT; }
        }
    }

    public interface IVolumeSliderSignals : IQWidgetSignals {
    }
}
