2 * Common Source Project/ Qt
3 * (C) 2015 K.Ohta <whatisthis.sowhat _at_ gmail.com>
4 * Qt: Menu->Adjust Volume.
5 * History: Jul 28, 2015 : Initial
8 #ifndef _CSP_QT_SOUND_DIALOG_H
9 #define _CSP_QT_SOUND_DIALOG_H
11 #include <QApplication>
20 #include <QPushButton>
21 #include <QVBoxLayout>
22 #include <QHBoxLayout>
23 #include <QGridLayout>
30 #include "commonclasses.h"
31 #include "menu_flags.h"
37 class DLL_PREFIX Ui_SndSliderObject : public QSlider
41 USING_FLAGS *using_flags;
43 QWidget *parent_widget;
47 Ui_SndSliderObject(USING_FLAGS *p, Qt::Orientation orientation, QWidget *parent, int num = 0);
48 ~Ui_SndSliderObject();
50 void setValue(int volume);
51 void setLevelValue(int volume);
52 void setBalanceValue(int volume);
53 void resetVolumeValue(void);
54 void resetBalanceValue(void);
56 int sig_emu_update_config(void);
57 int sig_emu_update_volume_level(int, int);
58 int sig_emu_update_volume_label(int, int);
59 int sig_emu_update_volume_balance(int, int);
60 int sig_update_master_volume(int);
63 class DLL_PREFIX Ui_SoundDialog : public QWidget
67 QWidget *parent_widget;
68 QGridLayout *MasterLayout;
70 USING_FLAGS *using_flags;
72 Ui_SndSliderObject *sliderMasterVolume;
73 QGroupBox *boxMasterVolume;
74 QVBoxLayout *VBoxMasterVolume;
75 Ui_SndSliderObject *sliderDeviceVolume[32 * 2];
76 QGroupBox *boxDeviceVolume[32];
77 QGridLayout *LayoutDeviceVolume[32];
78 QLabel *LabelVolume[32];
79 QLabel *LabelBalance[32];
80 QLabel *LabelLevel[32];
82 QPushButton *ResetBalance[32];
83 QPushButton *closeButton;
85 Ui_SoundDialog(USING_FLAGS *p, QWidget *parent = 0);
87 void setDeviceLabel(int num, QString s);
88 void setSliderVisible(int num, bool flag);
90 void do_update_volume_label(int num, int level);
94 #endif //_CSP_QT_SOUND_DIALOG_H