Example #1
0
TrayIcon::TrayIcon(const QString& trayIcon,const QString& programName, QObject *parent) :
    QSystemTrayIcon(QIcon(trayIcon),parent)
{
    setToolTip(programName);

    pMenu=new QMenu;
    pMenu->addAction("Головне вікно",this,SIGNAL(mainWindowSignal()));
    pMenu->addAction("Вікно налаштувань",this,SIGNAL(settingsSignal()));
    pMenu->addAction("Оновити курси",this,SIGNAL(updateSignal()));
    pMenu->addSeparator();
    pMenu->addAction("Вийти",qApp,SLOT(quit()));
    setContextMenu(pMenu);

    connect(this,SIGNAL(activated(QSystemTrayIcon::ActivationReason)),
            SLOT(activatedSlot(QSystemTrayIcon::ActivationReason)));
}
void settingsDialog::on_buttonBox_accepted()
{
    QSettings settings("settings", QSettings::IniFormat);
    m_currentSettings->TableName = ui->dbTableLineEdit->text();
    m_currentSettings->DBPath = ui->dbPathLineEdit->text();
    m_currentSettings->SoundPath = ui->soundPathEdit->text();
    m_currentSettings->msgPattern = ui->patternLineEdit->text();
    m_currentSettings->playSound = ui->soundCheckBox->isChecked();
    m_currentSettings->showDialog = ui->messageCheckBox->isChecked();
    settings.setValue("Database/Tablename", m_currentSettings->TableName);
    settings.setValue("Database/Path", m_currentSettings->DBPath);
    settings.setValue("Informer/SoundPath", m_currentSettings->SoundPath);
    settings.setValue("Informer/MsgPattern", m_currentSettings->msgPattern);
    if(m_currentSettings->playSound)
        settings.setValue("Informer/Sound", "true");
    else
        settings.setValue("Informer/Sound", "false");
    if(m_currentSettings->showDialog)
        settings.setValue("Informer/Dialog", "true");
    else
        settings.setValue("Informer/Dialog", "false");
    emit settingsSignal(m_currentSettings);
}