void preferenceDialog::on_pushButton_6_clicked() { AssStyles ass; ass.exportStyles(Paths::configPath()+"/styles.ass") ; ColorUtils::setBackgroundColor(ui->texcol,QColor(ass.primarycolor)); ColorUtils::setBackgroundColor(ui->shcol,QColor(ass.backcolor)); ColorUtils::setBackgroundColor(ui->borcol,QColor(ass.outlinecolor)); ui->fontComboBox->setCurrentFont(QFont(ass.fontname)); ui->spinBoxFs->setValue(ass.fontsize); ui->checkBoxBold->setChecked(ass.bold); ui->checkBoxItalic->setChecked(ass.italic); ui->comboBoxHa->setCurrentIndex(1); ui->comboBoxVa->setCurrentIndex(ass.valignment); ui->checkBoxUseCodePage->setChecked(false); }
void MplayerProcess::setSubStyles(const AssStyles & styles, const QString & assStylesFile) { if (assStylesFile.isEmpty()) { qWarning("MplayerProcess::setSubStyles: assStylesFile is invalid"); return; } // Load the styles.ass file if (!QFile::exists(assStylesFile)) { // If file doesn't exist, create it styles.exportStyles(assStylesFile); } if (QFile::exists(assStylesFile)) { setOption("ass-styles", assStylesFile); } else { qWarning("MplayerProcess::setSubStyles: '%s' doesn't exist", assStylesFile.toUtf8().constData()); } }
void preferenceDialog::on_buttonBox_clicked(QAbstractButton* button) { if (ui->buttonBox->buttonRole(button)==QDialogButtonBox::HelpRole) { hlpDlg=new helpDialog(this); rphMPFEhelp hlp; switch(ui->stackedWidget->currentIndex()) { case 0:hlpDlg->setHelpText(hlp.playerhlpstr); hlpDlg->show(); break; case 1:hlpDlg->setHelpText(hlp.audiohlpstr); hlpDlg->show(); break; case 2:hlpDlg->setHelpText(hlp.videohlpstr); hlpDlg->show(); break; case 3:hlpDlg->setHelpText(hlp.subtitlehlpstr); hlpDlg->show(); break; case 4:hlpDlg->setHelpText(hlp.internethlpstr); hlpDlg->show(); break; case 5:hlpDlg->setHelpText(hlp.keyboardhlpstr); hlpDlg->show(); break; case 6:hlpDlg->setHelpText(hlp.mousehlpstr); hlpDlg->show(); break; } } if (ui->buttonBox->buttonRole(button)==QDialogButtonBox::ApplyRole) apply=false; if(!apply) {if(ui->buttonBox->buttonRole(button)==QDialogButtonBox::ApplyRole) {qDebug("setting"); switch(ui->stackedWidget->currentIndex()) { case 0:emit settingChanged("General","Priority",ui->comboBox->currentText()); emit settingChanged("Skin","style",ui->comboBoxStyle->currentText()); emit disableSS(); emit settingChanged("General","recentFilesClear",QString::number(ui->checkBoxRemrm->checkState())); if (ui->comboBoxStyle->currentText()=="wood") QApplication::setStyle(new NorwegianWoodStyle); else if(ui->comboBoxStyle->currentText()=="aqua") emit setAqua(); else qApp->setStyle(ui->comboBoxStyle->currentText()); //if(ui->comboBoxStyle->currentText()!="windowsxp"&&ui->comboBoxStyle->currentText()!="aqua") QApplication::setPalette(QApplication::style()->standardPalette()); emit restartComplete(); break; case 1:{ emit settingChanged("Audio","EnableEQ",QString::number(ui->cbEnableAEq->checkState())); emit settingChanged("Audio","Driver",ui->cmbAO->currentText()); emit settingChanged("Audio","DevNo",QString::number(ui->cmbAO->currentIndex())); emit settingChanged("Audio","VolumeBoost",QString::number(ui->hSliderVolumeBoost->value())); emit restartComplete(); break; } case 2: emit restartComplete(); break; case 3 :{AssStyles ass; //qDebug()<<ui->texcol->palette().color(QPalette::Base).toRgb().value(); ass.primarycolor=ui->texcol->palette().color(QPalette::Base).rgb(); ass.backcolor=ui->shcol->palette().color(QPalette::Base).rgb(); ass.outlinecolor=ui->borcol->palette().color(QPalette::Base).rgb(); ass.fontname=ui->fontComboBox->currentFont().family(); ass.fontsize=ui->spinBoxFs->value(); ass.bold=ui->checkBoxBold->isChecked(); ass.italic=ui->checkBoxItalic->isChecked(); ass.valignment=ui->comboBoxVa->currentIndex(); ass.halignment=ui->comboBoxHa->itemData(ui->comboBoxHa->currentIndex()).toInt(); ass.save(_settings); ass.exportStyles(Paths::configPath()+"/styles.ass"); emit settingChanged("Subtitles","UseCodePage",QString::number(ui->checkBoxUseCodePage->checkState())); emit settingChanged("Subtitles","CodePage",ui->comboBoxSubEncoding->currentText()); #ifdef Q_OS_WIN //Open fontconfig //Calculate Sha1 //QStringList fontConfLst; /*QByteArray hashData; QFile inputFile(qApp->applicationDirPath()+"/mplayer/fonts/fonts.conf"); if (inputFile.open(QIODevice::ReadOnly)) { QByteArray fileData = inputFile.readAll(); hashData = QCryptographicHash::hash(fileData, QCryptographicHash::Sha1); } qDebug() << hashData.toHex(); QMessageBox::critical(this,QString(hashData.toHex()),"gfd"); QString actHash="c8ba9d01342f8488c815fb5e63e96f53ba9f46fb";*/ // if ( QString(hashData.toHex())!=actHash) //{ // qDebug() << "Differnt font config"; QString exeFileName(qApp->applicationDirPath()+"/exmplayer-font-cache.exe"); int result = (int)::ShellExecuteA(0, "open", exeFileName.toUtf8().constData(), 0, 0, SW_HIDE); if (SE_ERR_ACCESSDENIED == result) { // Requesting elevation(Windows Vista/Window7/window8) result = (int)::ShellExecuteA(0, "runas", exeFileName.toUtf8().constData(), 0, 0, SW_HIDE); } //c8ba9d01342f8488c815fb5e63e96f53ba9f46fb /*if (inputFile.open(QIODevice::ReadOnly)) { QTextStream in(&inputFile); while ( !in.atEnd() ) { fontConfLst<< in.readLine(); } inputFile.close(); } if(fontConfLst.filter(QRegExp(".*<dir></dir>")).count()==1) { fontConfLst.replaceInStrings("<dir></dir>","<dir>WINDOWSFONTDIR</dir>"); qDebug()<<fontConfLst; QFile outFile(qApp->applicationDirPath()+"/mplayer/fonts/fonts.conf"); if (outFile.open(QFile::WriteOnly|QFile::Truncate)) { foreach (QString fontConfig, fontConfLst) { outFile.write(fontConfig.toAscii()+"\n"); } } else { //What to do? (Beta) // QMessageBox::critical(this,"Error","failed to open file for writing"); } outFile.close(); }*/ #endif emit restartComplete(); break; } case 4:{ emit settingChanged("Network","ipv",ui->cmbiv->currentText()); emit settingChanged("Network","Bandwidth",QString::number(ui->sbNetBw->value())); emit settingChanged("Network","cache",QString::number(ui->sbNetCache->value())); emit settingChanged("Network","seekmin",QString::number(ui->sbseekmin->value())); emit settingChanged("Network","cachemin",QString::number(ui->sbNetCachemin->value())); break; } case 5:if( !resetsc) {saveActionToXml(); //emit reloadshortcut(); QMessageBox::information(this,qApp->applicationName(),tr("Shortcut will be active after a restart."),QMessageBox::Ok,QMessageBox::Cancel); } break; case 6: {emit settingChanged("Mouse","Wheel",QString::number(mw)); emit setmousewheelrole(); break; } case 7:settingChanged("Updates","Automatic",QString::number(ui->checkUpdates->isChecked())); } } } apply=true; if(ui->buttonBox->buttonRole(button)==QDialogButtonBox::AcceptRole) this->close(); }