/*
* This file is a part of VyQChat.
*
* Copyright (C) 2002-2004 Pawel Stolowski <yogin@linux.bydg.org>
*
* VyQChat is free software; you can redestribute it and/or modify it
* under terms of GNU General Public License by Free Software Foundation.
*
* This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY. See GPL for more details.
*/
#ifndef __SETTINGSDLG_H
#define __SETTINGSDLG_H
#include <qtabdialog.h>
#include "sound.h"
#include "icons.h"
class QListBox;
class QLineEdit;
class QCheckBox;
class QComboBox;
class QSpinBox;
class QLabel;
class QRadioButton;
class QButtonGroup;
class QVButtonGroup;
class SettingsDialog: public QTabDialog
{
Q_OBJECT
private slots:
void slotApply();
void slotDefaults();
void slotPopupCheckBoxChanged(bool state);
void slotThemeSelected(int index);
void slotSoundSystemClicked(int index);
void slotUseBroadcastToggled(bool state);
void slotBrowseSample(int id);
void slotSampleEnable(int id);
void slotBrowseScript(int id);
void slotScriptEnable(int id);
private:
QCheckBox *cb_scr[7], *cb_wav[7];
QLineEdit *le_scr[7], *le_wav[7];
QPushButton *b_browsescr[7], *b_browsewav[7];
QRadioButton *b_male, *b_female;
QRadioButton *bt_broadcast, *bt_multicast;
QButtonGroup *b_scrbrgroup,
*b_screngroup,
*b_wavbrgroup,
*b_wavengroup;
QLineEdit *le_nick,
*le_hostname,
*le_ip,
*le_broadcast,
*le_multicast,
*le_sndname,
*le_playcmd; //play command name
QSpinBox *sp_refresh, *sp_port;
QVButtonGroup *opt_snddev;
QCheckBox *b_hide,
*b_popup,
*b_popupdnd,
*b_systray,
*b_play, // play selected sound
*b_confirmexit,
*b_useutf,
*b_exec; // execute script
QListBox *snd_list;
QComboBox *l_enc;
QLabel *theme_info;
Settings *settings;
QComboBox *themes_list;
ThemesList themes;
struct EvtString {
QString name;
VyEvent evt;
};
static EvtString btns[];
void setupNetworkTab(QWidget *p);
void setupSoundDeviceTab(QWidget *p);
void setupSoundsTab(QWidget *p);
void setupScriptsTab(QWidget *p);
void setupLookTab(QWidget *p);
void setupMiscTab(QWidget *p);
signals:
void networkSettingsChanged();
void themeChanged();
void soundSettinsChanged();
void systraySettingsChanged();
public:
SettingsDialog(QWidget *parent, Settings *s);
~SettingsDialog();
};
#endif
syntax highlighted by Code2HTML, v. 0.9.1