Added selector to override the default protocol version.

This commit is contained in:
codestation
2014-10-10 20:42:16 -04:30
parent 0ab3206d18
commit caf5dc2d4e
10 changed files with 235 additions and 115 deletions

View File

@@ -1,6 +1,7 @@
qcma (0.3.5) unstable; urgency=low
* Do not override the user provided protocol version.
* Added selector to override the default protocol version.
* Do not override the user provided protocol version with a default value.
-- codestation <codestation404@gmail.com> Thu, 09 Oct 2014 00:00:00 -0000

View File

@@ -158,156 +158,156 @@
<translation>Directorios</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="34"/>
<location filename="../../src/forms/configwidget.ui" line="39"/>
<source>Specify the folders that the PS Vita will access for each content type.</source>
<translation>Especificar los directorios que el sistema PS Vita accederá para cada tipo de contenido.</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="46"/>
<location filename="../../src/forms/configwidget.ui" line="58"/>
<location filename="../../src/forms/configwidget.ui" line="51"/>
<location filename="../../src/forms/configwidget.ui" line="63"/>
<source>This is the location your Screenshots and Pictures are Saved to/Imported from.</source>
<translation>Esta es la ubicación donde tus capturas de pantalla e imágenes serán almacenadas o importadas.</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="49"/>
<location filename="../../src/forms/configwidget.ui" line="54"/>
<source>Photo Folder</source>
<translation>Directorio de Fotos</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="68"/>
<location filename="../../src/forms/configwidget.ui" line="103"/>
<location filename="../../src/forms/configwidget.ui" line="138"/>
<location filename="../../src/forms/configwidget.ui" line="173"/>
<location filename="../../src/forms/configwidget.ui" line="208"/>
<location filename="../../src/forms/configwidget.ui" line="233"/>
<location filename="../../src/forms/configwidget.ui" line="73"/>
<location filename="../../src/forms/configwidget.ui" line="108"/>
<location filename="../../src/forms/configwidget.ui" line="143"/>
<location filename="../../src/forms/configwidget.ui" line="178"/>
<location filename="../../src/forms/configwidget.ui" line="213"/>
<location filename="../../src/forms/configwidget.ui" line="238"/>
<source>Browse...</source>
<translation>Buscar...</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="81"/>
<location filename="../../src/forms/configwidget.ui" line="93"/>
<location filename="../../src/forms/configwidget.ui" line="86"/>
<location filename="../../src/forms/configwidget.ui" line="98"/>
<source>This is the location your Videos are Saved to/Imported from.</source>
<translation>Esta es la ubicación donde tus videos serán almacenados o importados.</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="84"/>
<location filename="../../src/forms/configwidget.ui" line="89"/>
<source>Video Folder</source>
<translation>Directorio de Videos</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="116"/>
<location filename="../../src/forms/configwidget.ui" line="128"/>
<location filename="../../src/forms/configwidget.ui" line="121"/>
<location filename="../../src/forms/configwidget.ui" line="133"/>
<source>This is the location your Music is Saved to/Imported from.</source>
<translation>Esta es la ubicación donde tu música será almacenada o importada.</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="119"/>
<location filename="../../src/forms/configwidget.ui" line="124"/>
<source>Music Folder</source>
<translation>Directorio de Música</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="151"/>
<location filename="../../src/forms/configwidget.ui" line="163"/>
<location filename="../../src/forms/configwidget.ui" line="156"/>
<location filename="../../src/forms/configwidget.ui" line="168"/>
<source>This is the location your Games, Apps, Savegames, and System Backups are Saved to/Imported from.</source>
<translation>Esta es la ubicación donde tus juegos, aplicaciones, partidas salvadas y respaldos del sistema serán almacenados o importados.</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="154"/>
<location filename="../../src/forms/configwidget.ui" line="159"/>
<source>Applications / Backups</source>
<translation>Aplicaciones / Juegos / Respaldos</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="186"/>
<location filename="../../src/forms/configwidget.ui" line="191"/>
<source>This is the location your Software Updates and Browser Data is Saved to/Imported from.</source>
<translation>Esta es la ubicación donde el sistema PS Vita leerá los contenidos que intente descargar.</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="189"/>
<location filename="../../src/forms/configwidget.ui" line="194"/>
<source>Updates / Web content</source>
<translation>Actualizaciones / Contenido Web</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="198"/>
<location filename="../../src/forms/configwidget.ui" line="203"/>
<source>This is the location your PS Vita system will read all the content that it tries to download.</source>
<translation>Esta es la ubicación donde el sistema PS Vita leerá los contenidos que intente descargar.</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="221"/>
<location filename="../../src/forms/configwidget.ui" line="226"/>
<source>Packages</source>
<translation>Archivos PKG</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="247"/>
<location filename="../../src/forms/configwidget.ui" line="265"/>
<source>Other</source>
<translation>Otros</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="255"/>
<location filename="../../src/forms/configwidget.ui" line="273"/>
<source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p align=&quot;center&quot;&gt;&lt;span style=&quot; font-size:14pt; font-weight:600;&quot;&gt;Advanced settings&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
<translation>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p align=&quot;center&quot;&gt;&lt;span style=&quot; font-size:14pt; font-weight:600;&quot;&gt;Ajustes Avanzados&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="262"/>
<location filename="../../src/forms/configwidget.ui" line="280"/>
<source>Offline Mode</source>
<translation>Modo desconectado</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="272"/>
<location filename="../../src/forms/configwidget.ui" line="290"/>
<source>Skip metadata extraction</source>
<translation>Saltar la extracción de metadatos</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="296"/>
<location filename="../../src/forms/configwidget.ui" line="314"/>
<source>Update database automatically when files on the PC are changed</source>
<translation>Actualizar la base de datos automaticamente</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="324"/>
<location filename="../../src/forms/configwidget.ui" line="342"/>
<source>SQLite</source>
<translation>SQLite</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="334"/>
<location filename="../../src/forms/configwidget.ui" line="352"/>
<source>Skip photo scanning</source>
<translation>Omitir el escaneo de fotos</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="341"/>
<location filename="../../src/forms/configwidget.ui" line="359"/>
<source>Skip video scanning</source>
<translation>Omitir el escaneo de vídeos</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="348"/>
<location filename="../../src/forms/configwidget.ui" line="366"/>
<source>Skip music scanning</source>
<translation>Omitir el escaneo de música</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="357"/>
<location filename="../../src/forms/configwidget.ui" line="381"/>
<source>CMA Protocol version</source>
<translation>Versión del protocolo CMA</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="371"/>
<source>Reset to default</source>
<translation>Valor por defecto</translation>
<location filename="../../src/forms/configwidget.ui" line="436"/>
<source>Use custom version</source>
<translation>Usar versión personalizada</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="279"/>
<location filename="../../src/forms/configwidget.ui" line="297"/>
<source>Disable USB monitoring</source>
<translation>Deshabilitar monitoreo USB</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="286"/>
<location filename="../../src/forms/configwidget.ui" line="304"/>
<source>Disable Wi-Fi monitoring</source>
<translation>Deshabilitar monitoreo WiFi</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="308"/>
<location filename="../../src/forms/configwidget.ui" line="326"/>
<source>Database backend</source>
<translation>Almacenaje de base de datos</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="319"/>
<location filename="../../src/forms/configwidget.ui" line="337"/>
<source>In Memory</source>
<translation>En memoria</translation>
</message>
@@ -460,7 +460,7 @@ Hash de compilación: %1
Rama de compilación: %2</translation>
</message>
<message>
<location filename="../../src/gui/mainwidget.cpp" line="281"/>
<location filename="../../src/gui/mainwidget.cpp" line="283"/>
<source>Information</source>
<translation>Información</translation>
</message>
@@ -601,32 +601,32 @@ Rama de compilación: %2</translation>
<context>
<name>UnityIndicator</name>
<message>
<location filename="../../src/indicator/unityindicator.cpp" line="104"/>
<location filename="../../src/indicator/unityindicator.cpp" line="105"/>
<source>Settings</source>
<translation>Ajustes</translation>
</message>
<message>
<location filename="../../src/indicator/unityindicator.cpp" line="105"/>
<location filename="../../src/indicator/unityindicator.cpp" line="106"/>
<source>Refresh database</source>
<translation>Refrescar base de datos</translation>
</message>
<message>
<location filename="../../src/indicator/unityindicator.cpp" line="106"/>
<location filename="../../src/indicator/unityindicator.cpp" line="107"/>
<source>Backup Manager</source>
<translation>Gestor de Respaldos</translation>
</message>
<message>
<location filename="../../src/indicator/unityindicator.cpp" line="108"/>
<location filename="../../src/indicator/unityindicator.cpp" line="109"/>
<source>About QCMA</source>
<translation>Acerca de QCMA</translation>
</message>
<message>
<location filename="../../src/indicator/unityindicator.cpp" line="109"/>
<location filename="../../src/indicator/unityindicator.cpp" line="110"/>
<source>About Qt</source>
<translation>Acerca de Qt</translation>
</message>
<message>
<location filename="../../src/indicator/unityindicator.cpp" line="111"/>
<location filename="../../src/indicator/unityindicator.cpp" line="112"/>
<source>Quit</source>
<translation>Salir</translation>
</message>

View File

@@ -158,156 +158,156 @@
<translation></translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="34"/>
<location filename="../../src/forms/configwidget.ui" line="39"/>
<source>Specify the folders that the PS Vita will access for each content type.</source>
<translation>PS Vitaがアクセスするフォルダーをコンテンツの種類ごとに指定してください</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="46"/>
<location filename="../../src/forms/configwidget.ui" line="58"/>
<location filename="../../src/forms/configwidget.ui" line="51"/>
<location filename="../../src/forms/configwidget.ui" line="63"/>
<source>This is the location your Screenshots and Pictures are Saved to/Imported from.</source>
<translation>/</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="49"/>
<location filename="../../src/forms/configwidget.ui" line="54"/>
<source>Photo Folder</source>
<translation></translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="68"/>
<location filename="../../src/forms/configwidget.ui" line="103"/>
<location filename="../../src/forms/configwidget.ui" line="138"/>
<location filename="../../src/forms/configwidget.ui" line="173"/>
<location filename="../../src/forms/configwidget.ui" line="208"/>
<location filename="../../src/forms/configwidget.ui" line="233"/>
<location filename="../../src/forms/configwidget.ui" line="73"/>
<location filename="../../src/forms/configwidget.ui" line="108"/>
<location filename="../../src/forms/configwidget.ui" line="143"/>
<location filename="../../src/forms/configwidget.ui" line="178"/>
<location filename="../../src/forms/configwidget.ui" line="213"/>
<location filename="../../src/forms/configwidget.ui" line="238"/>
<source>Browse...</source>
<translation>...</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="81"/>
<location filename="../../src/forms/configwidget.ui" line="93"/>
<location filename="../../src/forms/configwidget.ui" line="86"/>
<location filename="../../src/forms/configwidget.ui" line="98"/>
<source>This is the location your Videos are Saved to/Imported from.</source>
<translation>/</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="84"/>
<location filename="../../src/forms/configwidget.ui" line="89"/>
<source>Video Folder</source>
<translation></translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="116"/>
<location filename="../../src/forms/configwidget.ui" line="128"/>
<location filename="../../src/forms/configwidget.ui" line="121"/>
<location filename="../../src/forms/configwidget.ui" line="133"/>
<source>This is the location your Music is Saved to/Imported from.</source>
<translation>/</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="119"/>
<location filename="../../src/forms/configwidget.ui" line="124"/>
<source>Music Folder</source>
<translation></translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="151"/>
<location filename="../../src/forms/configwidget.ui" line="163"/>
<location filename="../../src/forms/configwidget.ui" line="156"/>
<location filename="../../src/forms/configwidget.ui" line="168"/>
<source>This is the location your Games, Apps, Savegames, and System Backups are Saved to/Imported from.</source>
<translation>/</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="154"/>
<location filename="../../src/forms/configwidget.ui" line="159"/>
<source>Applications / Backups</source>
<translation>/</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="186"/>
<location filename="../../src/forms/configwidget.ui" line="191"/>
<source>This is the location your Software Updates and Browser Data is Saved to/Imported from.</source>
<translation>/</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="189"/>
<location filename="../../src/forms/configwidget.ui" line="194"/>
<source>Updates / Web content</source>
<translation>/Webコンテンツ</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="198"/>
<location filename="../../src/forms/configwidget.ui" line="203"/>
<source>This is the location your PS Vita system will read all the content that it tries to download.</source>
<translation>PS Vitaシステムが読み込み</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="221"/>
<location filename="../../src/forms/configwidget.ui" line="226"/>
<source>Packages</source>
<translation></translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="247"/>
<location filename="../../src/forms/configwidget.ui" line="265"/>
<source>Other</source>
<translation></translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="255"/>
<location filename="../../src/forms/configwidget.ui" line="273"/>
<source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p align=&quot;center&quot;&gt;&lt;span style=&quot; font-size:14pt; font-weight:600;&quot;&gt;Advanced settings&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
<translation>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p align=&quot;center&quot;&gt;&lt;span style=&quot; font-size:14pt; font-weight:600;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="262"/>
<location filename="../../src/forms/configwidget.ui" line="280"/>
<source>Offline Mode</source>
<translation></translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="272"/>
<location filename="../../src/forms/configwidget.ui" line="290"/>
<source>Skip metadata extraction</source>
<translation></translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="296"/>
<location filename="../../src/forms/configwidget.ui" line="314"/>
<source>Update database automatically when files on the PC are changed</source>
<translation>PCのファイルが変更された際にデータベースを自動的に更新する</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="324"/>
<location filename="../../src/forms/configwidget.ui" line="342"/>
<source>SQLite</source>
<translation>SQLite</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="334"/>
<location filename="../../src/forms/configwidget.ui" line="352"/>
<source>Skip photo scanning</source>
<translation></translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="341"/>
<location filename="../../src/forms/configwidget.ui" line="359"/>
<source>Skip video scanning</source>
<translation></translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="348"/>
<location filename="../../src/forms/configwidget.ui" line="366"/>
<source>Skip music scanning</source>
<translation></translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="357"/>
<location filename="../../src/forms/configwidget.ui" line="381"/>
<source>CMA Protocol version</source>
<translation>CMAプロトコルバージョン</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="371"/>
<source>Reset to default</source>
<translation></translation>
<location filename="../../src/forms/configwidget.ui" line="436"/>
<source>Use custom version</source>
<translation>使</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="279"/>
<location filename="../../src/forms/configwidget.ui" line="297"/>
<source>Disable USB monitoring</source>
<translation>USBの監視を無効にする</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="286"/>
<location filename="../../src/forms/configwidget.ui" line="304"/>
<source>Disable Wi-Fi monitoring</source>
<translation>Wi-Fiの監視を無効にする</translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="308"/>
<location filename="../../src/forms/configwidget.ui" line="326"/>
<source>Database backend</source>
<translation></translation>
</message>
<message>
<location filename="../../src/forms/configwidget.ui" line="319"/>
<location filename="../../src/forms/configwidget.ui" line="337"/>
<source>In Memory</source>
<translation></translation>
</message>
@@ -461,7 +461,7 @@ build branch: %2</source>
: %2</translation>
</message>
<message>
<location filename="../../src/gui/mainwidget.cpp" line="281"/>
<location filename="../../src/gui/mainwidget.cpp" line="283"/>
<source>Information</source>
<translation></translation>
</message>
@@ -602,32 +602,32 @@ build branch: %2</source>
<context>
<name>UnityIndicator</name>
<message>
<location filename="../../src/indicator/unityindicator.cpp" line="104"/>
<location filename="../../src/indicator/unityindicator.cpp" line="105"/>
<source>Settings</source>
<translation></translation>
</message>
<message>
<location filename="../../src/indicator/unityindicator.cpp" line="105"/>
<location filename="../../src/indicator/unityindicator.cpp" line="106"/>
<source>Refresh database</source>
<translation></translation>
</message>
<message>
<location filename="../../src/indicator/unityindicator.cpp" line="106"/>
<location filename="../../src/indicator/unityindicator.cpp" line="107"/>
<source>Backup Manager</source>
<translation></translation>
</message>
<message>
<location filename="../../src/indicator/unityindicator.cpp" line="108"/>
<location filename="../../src/indicator/unityindicator.cpp" line="109"/>
<source>About QCMA</source>
<translation>QCMAについて</translation>
</message>
<message>
<location filename="../../src/indicator/unityindicator.cpp" line="109"/>
<location filename="../../src/indicator/unityindicator.cpp" line="110"/>
<source>About Qt</source>
<translation>Qtについて</translation>
</message>
<message>
<location filename="../../src/indicator/unityindicator.cpp" line="111"/>
<location filename="../../src/indicator/unityindicator.cpp" line="112"/>
<source>Quit</source>
<translation></translation>
</message>

View File

@@ -41,7 +41,7 @@ bool DeviceCapability::exchangeInfo(vita_device_t *device)
}
QString hostname = QHostInfo::localHostName();
int protocol_version = QSettings().value("protocolVersion", VITAMTP_PROTOCOL_MAX_VERSION).toInt();
int protocol_version = getProtocolVersion();
const initiator_info_t *pc_info = VitaMTP_Data_Initiator_New(hostname.toUtf8().data(), protocol_version);
// Next, we send the client's (this program) info (discard the const here)

View File

@@ -18,6 +18,7 @@
*/
#include "cmabroadcast.h"
#include "cmautils.h"
#include <QDebug>
#include <QHostInfo>
@@ -85,7 +86,7 @@ void CmaBroadcast::readPendingDatagrams()
void CmaBroadcast::setAvailable()
{
QMutexLocker locker(&mutex);
int protocol_version = QSettings().value("protocolVersion", VITAMTP_PROTOCOL_MAX_VERSION).toInt();
int protocol_version = getProtocolVersion();
reply.clear();
reply.insert(0, broadcast_reply

View File

@@ -24,6 +24,7 @@
#include <QDebug>
#include <QDir>
#include <QImage>
#include <QSettings>
#ifdef Q_OS_WIN32
#include <windows.h>
@@ -184,3 +185,51 @@ QString readable_size(qint64 size, bool use_gib)
}
return QString().setNum(size_f,'f',2) + " " + unit;
}
int getProtocolVersion()
{
bool useCustom = QSettings().value("useCustomProtocol").toBool();
if(useCustom)
{
bool ok;
int protocol = QSettings().value("protocolVersion").toInt(&ok);
if(ok && protocol > 0)
return protocol;
else
return VITAMTP_PROTOCOL_MAX_VERSION;
}
else
{
int protocol;
int index = QSettings().value("protocolIndex").toInt();
switch(index)
{
case 0:
protocol = VITAMTP_PROTOCOL_FW_3_30;
break;
case 1:
protocol = VITAMTP_PROTOCOL_FW_3_10;
break;
case 2:
protocol = VITAMTP_PROTOCOL_FW_3_00;
break;
case 3:
protocol = VITAMTP_PROTOCOL_FW_2_60;
break;
case 4:
protocol = VITAMTP_PROTOCOL_FW_2_10;
break;
case 5:
protocol = VITAMTP_PROTOCOL_FW_2_00;
break;
case 6:
protocol = VITAMTP_WIRELESS_FW_2_00;
break;
default:
protocol = VITAMTP_PROTOCOL_MAX_VERSION;
break;
}
return protocol;
}
}

View File

@@ -49,5 +49,6 @@ bool removeRecursively(const QString &path);
QString readable_size(qint64 size, bool use_gib = false);
bool getDiskSpace(const QString &dir, quint64 *free, quint64 *total);
QByteArray getThumbnail(const QString &path, DataType type, metadata_t *metadata);
int getProtocolVersion();
#endif // UTILS_H

View File

@@ -62,7 +62,6 @@ void ConfigWidget::connectSignals()
connect(mapper, SIGNAL(mapped(int)), this, SLOT(browseBtnPressed(int)));
connect(ui->buttonBox, SIGNAL(accepted()), this, SLOT(accept()));
connect(ui->buttonBox, SIGNAL(rejected()), this, SLOT(reject()));
connect(ui->resetProtocolButton, SIGNAL(clicked()), this, SLOT(resetButtonPressed()));
}
void ConfigWidget::setDefaultData()
@@ -100,8 +99,16 @@ void ConfigWidget::setDefaultData()
ui->videoSkipCheck->setChecked(settings.value("videoSkip", false).toBool());
ui->musicSkipCheck->setChecked(settings.value("musicSkip", false).toBool());
int protocol_version = settings.value("protocolVersion", VITAMTP_PROTOCOL_MAX_VERSION).toInt();
ui->protocolEdit->setText(QString::number(protocol_version));
ui->customProtocolCheckBox->setChecked(settings.value("useCustomProtocol", false).toBool());
ui->protocolBox->setCurrentIndex(settings.value("protocolIndex", 0).toInt());
bool ok;
int protocol_version = settings.value("protocolVersion", VITAMTP_PROTOCOL_MAX_VERSION).toInt(&ok);
if(ok && protocol_version > 0)
ui->protocolEdit->setText(QString::number(protocol_version));
else
ui->protocolEdit->setText(QString::number(VITAMTP_PROTOCOL_MAX_VERSION));
}
ConfigWidget::~ConfigWidget()
@@ -109,11 +116,6 @@ ConfigWidget::~ConfigWidget()
delete ui;
}
void ConfigWidget::resetButtonPressed()
{
ui->protocolEdit->setText(QString::number(VITAMTP_PROTOCOL_MAX_VERSION));
}
void ConfigWidget::browseBtnPressed(int btn)
{
QString msg;
@@ -188,7 +190,17 @@ void ConfigWidget::accept()
settings.setValue("photoSkip", ui->photoSkipCheck->isChecked());
settings.setValue("videoSkip", ui->videoSkipCheck->isChecked());
settings.setValue("musicSkip", ui->musicSkipCheck->isChecked());
settings.setValue("protocolVersion", ui->protocolEdit->text().toInt());
settings.setValue("useCustomProtocol", ui->customProtocolCheckBox->isChecked());
settings.setValue("protocolIndex", ui->protocolBox->currentIndex());
bool ok;
int protocol = ui->protocolEdit->text().toInt(&ok);
if(ok && protocol > 0)
settings.setValue("protocolVersion", protocol);
else
settings.setValue("protocolVersion", VITAMTP_PROTOCOL_MAX_VERSION);
settings.sync();
done(Accepted);

View File

@@ -48,7 +48,6 @@ private:
private slots:
void browseBtnPressed(int from);
void resetButtonPressed();
void accept();
};

View File

@@ -368,25 +368,82 @@
</widget>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_3">
<item>
<layout class="QHBoxLayout" name="horizontalLayout_4"/>
</item>
<item>
<layout class="QFormLayout" name="formLayout_2">
<property name="fieldGrowthPolicy">
<enum>QFormLayout::AllNonFixedFieldsGrow</enum>
</property>
<item row="0" column="0">
<widget class="QLabel" name="label_10">
<property name="text">
<string>CMA Protocol version</string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item>
<item row="0" column="1">
<widget class="QComboBox" name="protocolBox">
<property name="minimumSize">
<size>
<width>200</width>
<height>0</height>
</size>
</property>
<item>
<property name="text">
<string notr="true">FW 3.30 - 1900010</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">FW 3.10 - 1800010</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">FW 3.00 - 1700010</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">FW 2.60 - 1600010</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">FW 2.10 - 1500010</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">FW 2.00 - 1400010</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">FW 1.00 - 1000000</string>
</property>
</item>
</widget>
</item>
<item row="1" column="0">
<widget class="QCheckBox" name="customProtocolCheckBox">
<property name="text">
<string>Use custom version</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QLineEdit" name="protocolEdit">
<property name="inputMask">
<string notr="true">9999999</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="resetProtocolButton">
<property name="text">
<string>Reset to default</string>
<string notr="true"/>
</property>
</widget>
</item>