mirror of
https://github.com/barry-ran/QtScrcpy.git
synced 2025-07-29 12:18:39 +00:00
feat: perfect config
This commit is contained in:
parent
a4daf33bfe
commit
26bf95a43f
6 changed files with 185 additions and 258 deletions
|
@ -33,7 +33,7 @@ Device::Device(DeviceParams params, QObject *parent) : QObject(parent), m_params
|
|||
m_decoder = new Decoder(m_vb, this);
|
||||
m_fileHandler = new FileHandler(this);
|
||||
m_controller = new Controller(params.gameScript, this);
|
||||
m_videoForm = new VideoForm(Config::getInstance().getFramelessWindow(), Config::getInstance().getSkin());
|
||||
m_videoForm = new VideoForm(params.framelessWindow, Config::getInstance().getSkin());
|
||||
m_videoForm->setDevice(this);
|
||||
}
|
||||
|
||||
|
@ -382,7 +382,7 @@ bool Device::saveFrame(const AVFrame *frame)
|
|||
|
||||
// save
|
||||
QString absFilePath;
|
||||
QString fileDir(Config::getInstance().getRecordPath());
|
||||
QString fileDir(m_params.recordPath);
|
||||
if (fileDir.isEmpty()) {
|
||||
qWarning() << "please select record save path!!!";
|
||||
return false;
|
||||
|
|
|
@ -26,6 +26,7 @@ public:
|
|||
struct DeviceParams
|
||||
{
|
||||
QString recordFileName = ""; // 视频录制文件名
|
||||
QString recordPath = ""; // 视频保存路径
|
||||
QString serial = ""; // 设备序列号
|
||||
quint16 localPort = 27183; // reverse时本地监听端口
|
||||
quint16 maxSize = 720; // 视频分辨率
|
||||
|
@ -37,7 +38,8 @@ public:
|
|||
QString gameScript = ""; // 游戏映射脚本
|
||||
bool renderExpiredFrames = false; // 是否渲染延迟视频帧
|
||||
int lockVideoOrientation = -1; // 是否锁定视频方向
|
||||
int stayAwake = false; // 是否保持唤醒
|
||||
bool stayAwake = false; // 是否保持唤醒
|
||||
bool framelessWindow = false; // 是否无边框窗口
|
||||
};
|
||||
enum GroupControlState
|
||||
{
|
||||
|
|
|
@ -43,8 +43,10 @@ Dialog::Dialog(QWidget *parent) : QDialog(parent), ui(new Ui::Dialog)
|
|||
if (args.contains("devices")) {
|
||||
QStringList devices = m_adb.getDevicesSerialFromStdOut();
|
||||
ui->serialBox->clear();
|
||||
ui->connectedPhoneList->clear();
|
||||
for (auto &item : devices) {
|
||||
ui->serialBox->addItem(item);
|
||||
ui->connectedPhoneList->addItem(item+"-"+Config::getInstance().getNickName(item));
|
||||
}
|
||||
} else if (args.contains("show") && args.contains("wlan0")) {
|
||||
QString ip = m_adb.getDeviceIPFromStdOut();
|
||||
|
@ -92,6 +94,7 @@ Dialog::Dialog(QWidget *parent) : QDialog(parent), ui(new Ui::Dialog)
|
|||
|
||||
Dialog::~Dialog()
|
||||
{
|
||||
updateBootConfig(false);
|
||||
m_deviceManage.disconnectAllDevice();
|
||||
delete ui;
|
||||
}
|
||||
|
@ -109,7 +112,6 @@ void Dialog::initUI()
|
|||
ui->bitRateBox->addItem("50000000");
|
||||
ui->bitRateBox->addItem("100000000");
|
||||
ui->bitRateBox->addItem("200000000");
|
||||
ui->bitRateBox->setCurrentIndex(Config::getInstance().getBitRateIndex());
|
||||
|
||||
ui->maxSizeBox->addItem("640");
|
||||
ui->maxSizeBox->addItem("720");
|
||||
|
@ -117,11 +119,9 @@ void Dialog::initUI()
|
|||
ui->maxSizeBox->addItem("1280");
|
||||
ui->maxSizeBox->addItem("1920");
|
||||
ui->maxSizeBox->addItem(tr("original"));
|
||||
ui->maxSizeBox->setCurrentIndex(Config::getInstance().getMaxSizeIndex());
|
||||
|
||||
ui->formatBox->addItem("mp4");
|
||||
ui->formatBox->addItem("mkv");
|
||||
ui->formatBox->setCurrentIndex(Config::getInstance().getRecordFormatIndex());
|
||||
|
||||
ui->lockOrientationBox->addItem(tr("no lock"));
|
||||
ui->lockOrientationBox->addItem("0");
|
||||
|
@ -130,12 +130,13 @@ void Dialog::initUI()
|
|||
ui->lockOrientationBox->addItem("270");
|
||||
ui->lockOrientationBox->setCurrentIndex(0);
|
||||
|
||||
ui->recordPathEdt->setText(Config::getInstance().getRecordPath());
|
||||
ui->framelessCheck->setChecked(Config::getInstance().getFramelessWindow());
|
||||
updateBootConfig(true);
|
||||
|
||||
ui->userNameEdt->setText(Config::getInstance().getNickName(ui->serialBox->currentText()));
|
||||
|
||||
on_useSingleModeCheck_clicked();
|
||||
|
||||
updateConnectedList();
|
||||
on_updateDevice_clicked();
|
||||
|
||||
#ifdef Q_OS_OSX
|
||||
// mac need more width
|
||||
|
@ -148,6 +149,45 @@ void Dialog::initUI()
|
|||
#endif
|
||||
}
|
||||
|
||||
void Dialog::updateBootConfig(bool toView)
|
||||
{
|
||||
if (toView) {
|
||||
UserBootConfig config = Config::getInstance().getUserBootConfig();
|
||||
|
||||
ui->bitRateBox->setCurrentIndex(config.bitRateIndex);
|
||||
ui->maxSizeBox->setCurrentIndex(config.maxSizeIndex);
|
||||
ui->formatBox->setCurrentIndex(config.recordFormatIndex);
|
||||
ui->recordPathEdt->setText(config.recordPath);
|
||||
ui->lockOrientationBox->setCurrentIndex(config.lockOrientationIndex);
|
||||
ui->framelessCheck->setChecked(config.framelessWindow);
|
||||
ui->recordScreenCheck->setChecked(config.recordScreen);
|
||||
ui->notDisplayCheck->setChecked(config.recordBackground);
|
||||
ui->useReverseCheck->setChecked(config.reverseConnect);
|
||||
ui->fpsCheck->setChecked(config.showFPS);
|
||||
ui->alwaysTopCheck->setChecked(config.windowOnTop);
|
||||
ui->closeScreenCheck->setChecked(config.autoOffScreen);
|
||||
ui->stayAwakeCheck->setChecked(config.keepAlive);
|
||||
} else {
|
||||
UserBootConfig config;
|
||||
|
||||
config.bitRateIndex = ui->bitRateBox->currentIndex();
|
||||
config.maxSizeIndex = ui->maxSizeBox->currentIndex();
|
||||
config.recordFormatIndex = ui->formatBox->currentIndex();
|
||||
config.recordPath = ui->recordPathEdt->text();
|
||||
config.lockOrientationIndex = ui->lockOrientationBox->currentIndex();
|
||||
config.recordScreen = ui->recordScreenCheck->isChecked();
|
||||
config.recordBackground = ui->notDisplayCheck->isChecked();
|
||||
config.reverseConnect = ui->useReverseCheck->isChecked();
|
||||
config.showFPS = ui->fpsCheck->isChecked();
|
||||
config.windowOnTop = ui->alwaysTopCheck->isChecked();
|
||||
config.autoOffScreen = ui->closeScreenCheck->isChecked();
|
||||
config.framelessWindow = ui->framelessCheck->isChecked();
|
||||
config.keepAlive = ui->stayAwakeCheck->isChecked();
|
||||
|
||||
Config::getInstance().setUserBootConfig(config);
|
||||
}
|
||||
}
|
||||
|
||||
void Dialog::execAdbCmd()
|
||||
{
|
||||
if (checkAdbRun()) {
|
||||
|
@ -198,33 +238,6 @@ void Dialog::slotActivated(QSystemTrayIcon::ActivationReason reason)
|
|||
}
|
||||
}
|
||||
|
||||
void Dialog::updateConnectedList()
|
||||
{
|
||||
ui->connectedPhoneList->clear();
|
||||
QStringList list = Config::getInstance().getConnectedGroups();
|
||||
|
||||
QRegExp regIP("\\b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\:([0-9]|[1-9]\\d|[1-9]\\d{2}|[1-9]\\d{3}|[1-5]\\d{4}|6[0-4]\\d{3}|65[0-4]\\d{2}|655[0-2]\\d|6553[0-5])\\b");
|
||||
|
||||
for (int i = 0; i < list.length(); ++i)
|
||||
{
|
||||
QString phone = QString(list[i]);
|
||||
if(phone != "common" /*&& regIP.exactMatch(phone)*/)
|
||||
{
|
||||
ui->connectedPhoneList->addItem(phone+"-"+Config::getInstance().getUserName(phone));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void Dialog::updateUser()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void Dialog::loadUser()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void Dialog::closeEvent(QCloseEvent *event)
|
||||
{
|
||||
int res = QMessageBox::question(this,tr("warning"),tr("Quit or set tray?"),tr("Quit"),tr("Set tray"),tr("Cancel"));
|
||||
|
@ -247,8 +260,6 @@ void Dialog::closeEvent(QCloseEvent *event)
|
|||
{
|
||||
event->ignore();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
void Dialog::on_updateDevice_clicked()
|
||||
|
@ -264,21 +275,6 @@ void Dialog::on_startServerBtn_clicked()
|
|||
{
|
||||
outLog("start server...", false);
|
||||
|
||||
UserBootConfig config;
|
||||
|
||||
config.recordScreen = ui->recordScreenCheck->isChecked();
|
||||
config.recordBackground = ui->notDisplayCheck->isChecked();
|
||||
config.reverseConnect = ui->useReverseCheck->isChecked();
|
||||
config.showFPS = ui->fpsCheck->isChecked();
|
||||
config.windowOnTop = ui->alwaysTopCheck->isChecked();
|
||||
config.autoOffScreen = ui->closeScreenCheck->isChecked();
|
||||
config.windowFrameless = ui->framelessCheck->isChecked();
|
||||
config.keepAlive = ui->stayAwakeCheck->isChecked();
|
||||
|
||||
Config::getInstance().setUserBootConfig(ui->serialBox->currentText(),config);
|
||||
|
||||
updateConnectedList();
|
||||
|
||||
QString absFilePath;
|
||||
if (ui->recordScreenCheck->isChecked()) {
|
||||
QString fileDir(ui->recordPathEdt->text().trimmed());
|
||||
|
@ -308,6 +304,8 @@ void Dialog::on_startServerBtn_clicked()
|
|||
params.renderExpiredFrames = Config::getInstance().getRenderExpiredFrames();
|
||||
params.lockVideoOrientation = ui->lockOrientationBox->currentIndex() - 1;
|
||||
params.stayAwake = ui->stayAwakeCheck->isChecked();
|
||||
params.framelessWindow = ui->framelessCheck->isChecked();
|
||||
params.recordPath = ui->recordPathEdt->text().trimmed();
|
||||
|
||||
m_deviceManage.connectDevice(params);
|
||||
|
||||
|
@ -454,7 +452,6 @@ void Dialog::on_selectRecordPathBtn_clicked()
|
|||
|
||||
void Dialog::on_recordPathEdt_textChanged(const QString &arg1)
|
||||
{
|
||||
Config::getInstance().setRecordPath(arg1);
|
||||
ui->recordPathEdt->setToolTip(arg1.trimmed());
|
||||
ui->notDisplayCheck->setCheckable(!arg1.trimmed().isEmpty());
|
||||
}
|
||||
|
@ -515,34 +512,13 @@ void Dialog::on_recordScreenCheck_clicked(bool checked)
|
|||
}
|
||||
}
|
||||
|
||||
void Dialog::on_bitRateBox_activated(int index)
|
||||
{
|
||||
Config::getInstance().setBitRateIndex(index);
|
||||
}
|
||||
|
||||
void Dialog::on_maxSizeBox_activated(int index)
|
||||
{
|
||||
Config::getInstance().setMaxSizeIndex(index);
|
||||
}
|
||||
|
||||
void Dialog::on_formatBox_activated(int index)
|
||||
{
|
||||
Config::getInstance().setRecordFormatIndex(index);
|
||||
}
|
||||
|
||||
void Dialog::on_framelessCheck_stateChanged(int arg1)
|
||||
{
|
||||
Q_UNUSED(arg1)
|
||||
Config::getInstance().setFramelessWindow(ui->framelessCheck->isChecked());
|
||||
}
|
||||
|
||||
void Dialog::on_usbConnectBtn_clicked()
|
||||
{
|
||||
on_stopAllServerBtn_clicked();
|
||||
delayMs(200);
|
||||
on_updateDevice_clicked();
|
||||
delayMs(200);
|
||||
if(ui->serialBox->count()==0)
|
||||
if(ui->serialBox->count() == 0)
|
||||
{
|
||||
qWarning() << "No device is found!";
|
||||
return;
|
||||
|
@ -552,6 +528,7 @@ void Dialog::on_usbConnectBtn_clicked()
|
|||
|
||||
for (int i = 0; i < ui->serialBox->count(); ++i)
|
||||
{
|
||||
// 连接第一个usb设备
|
||||
if(!regIP.exactMatch(ui->serialBox->itemText(i)))
|
||||
{
|
||||
ui->serialBox->setCurrentIndex(i);
|
||||
|
@ -559,8 +536,6 @@ void Dialog::on_usbConnectBtn_clicked()
|
|||
break;
|
||||
}
|
||||
}
|
||||
|
||||
updateConnectedList();
|
||||
}
|
||||
|
||||
void Dialog::on_wifiConnectBtn_clicked()
|
||||
|
@ -570,12 +545,30 @@ void Dialog::on_wifiConnectBtn_clicked()
|
|||
|
||||
on_updateDevice_clicked();
|
||||
delayMs(200);
|
||||
if(ui->serialBox->count()==0)
|
||||
if(ui->serialBox->count() == 0)
|
||||
{
|
||||
qWarning() << "No device is found!";
|
||||
return;
|
||||
}
|
||||
|
||||
bool found = false;
|
||||
QRegExp regIP("\\b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\:([0-9]|[1-9]\\d|[1-9]\\d{2}|[1-9]\\d{3}|[1-5]\\d{4}|6[0-4]\\d{3}|65[0-4]\\d{2}|655[0-2]\\d|6553[0-5])\\b");
|
||||
for (int i = 0; i < ui->serialBox->count(); ++i)
|
||||
{
|
||||
// 选中第一个usb设备
|
||||
if(!regIP.exactMatch(ui->serialBox->itemText(i)))
|
||||
{
|
||||
ui->serialBox->setCurrentIndex(i);
|
||||
found = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (!found) {
|
||||
qWarning() << "No use device is found!";
|
||||
return;
|
||||
}
|
||||
|
||||
on_getIPBtn_clicked();
|
||||
delayMs(200);
|
||||
|
||||
|
@ -585,52 +578,49 @@ void Dialog::on_wifiConnectBtn_clicked()
|
|||
on_wirelessConnectBtn_clicked();
|
||||
delayMs(2000);
|
||||
|
||||
ui->serialBox->clear();
|
||||
|
||||
ui->serialBox->addItem(ui->deviceIpEdt->text()+":5555");
|
||||
|
||||
on_startServerBtn_clicked();
|
||||
on_updateDevice_clicked();
|
||||
delayMs(200);
|
||||
|
||||
updateConnectedList();
|
||||
// 找到第一个无线设备
|
||||
found = false;
|
||||
for (int i = 0; i < ui->serialBox->count(); ++i)
|
||||
{
|
||||
if(regIP.exactMatch(ui->serialBox->itemText(i)))
|
||||
{
|
||||
ui->serialBox->setCurrentIndex(i);
|
||||
found = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (!found) {
|
||||
qWarning() << "No wifi device is found!";
|
||||
return;
|
||||
}
|
||||
|
||||
on_startServerBtn_clicked();
|
||||
}
|
||||
|
||||
void Dialog::on_connectedPhoneList_itemDoubleClicked(QListWidgetItem *item)
|
||||
{
|
||||
ui->serialBox->clear();
|
||||
ui->serialBox->addItem(item->text().split("-")[0]);
|
||||
ui->serialBox->setCurrentIndex(0);
|
||||
|
||||
UserBootConfig config = Config::getInstance().getUserBootConfig(ui->serialBox->currentText());
|
||||
|
||||
ui->recordScreenCheck->setChecked(config.recordScreen);
|
||||
ui->notDisplayCheck->setChecked(config.recordBackground);
|
||||
ui->useReverseCheck->setChecked(config.reverseConnect);
|
||||
ui->fpsCheck->setChecked(config.showFPS);
|
||||
ui->alwaysTopCheck->setChecked(config.windowOnTop);
|
||||
ui->closeScreenCheck->setChecked(config.autoOffScreen);
|
||||
ui->framelessCheck->setChecked(config.windowFrameless);
|
||||
ui->stayAwakeCheck->setChecked(config.keepAlive);
|
||||
ui->userNameEdt->setText(Config::getInstance().getUserName(ui->serialBox->currentText()));
|
||||
|
||||
Q_UNUSED(item);
|
||||
ui->serialBox->setCurrentIndex(ui->connectedPhoneList->currentRow());
|
||||
on_startServerBtn_clicked();
|
||||
}
|
||||
|
||||
void Dialog::on_updateNameBtn_clicked()
|
||||
{
|
||||
if(ui->serialBox->count()!=0)
|
||||
{
|
||||
if(ui->userNameEdt->text().isEmpty())
|
||||
Config::getInstance().setUserName(ui->serialBox->currentText(),"PHONE");
|
||||
else
|
||||
Config::getInstance().setUserName(ui->serialBox->currentText(),ui->userNameEdt->text());
|
||||
if(ui->serialBox->count()!=0) {
|
||||
if(ui->userNameEdt->text().isEmpty()) {
|
||||
Config::getInstance().setNickName(ui->serialBox->currentText(), "Phone");
|
||||
} else {
|
||||
Config::getInstance().setNickName(ui->serialBox->currentText(), ui->userNameEdt->text());
|
||||
}
|
||||
|
||||
updateConnectedList();
|
||||
on_updateDevice_clicked();
|
||||
|
||||
qDebug()<<"Update OK!";
|
||||
}
|
||||
else
|
||||
{
|
||||
} else {
|
||||
qWarning()<<"No device is connected!";
|
||||
}
|
||||
}
|
||||
|
|
|
@ -63,14 +63,6 @@ private slots:
|
|||
|
||||
void on_recordScreenCheck_clicked(bool checked);
|
||||
|
||||
void on_bitRateBox_activated(int index);
|
||||
|
||||
void on_maxSizeBox_activated(int index);
|
||||
|
||||
void on_formatBox_activated(int index);
|
||||
|
||||
void on_framelessCheck_stateChanged(int arg1);
|
||||
|
||||
void on_usbConnectBtn_clicked();
|
||||
|
||||
void on_wifiConnectBtn_clicked();
|
||||
|
@ -84,14 +76,12 @@ private slots:
|
|||
private:
|
||||
bool checkAdbRun();
|
||||
void initUI();
|
||||
void updateBootConfig(bool toView = true);
|
||||
void execAdbCmd();
|
||||
void delayMs(int ms);
|
||||
QString getGameScript(const QString &fileName);
|
||||
void slotShow();
|
||||
void slotActivated(QSystemTrayIcon::ActivationReason reason);
|
||||
void updateConnectedList();
|
||||
void updateUser();
|
||||
void loadUser();
|
||||
|
||||
protected:
|
||||
void closeEvent(QCloseEvent *event);
|
||||
|
|
|
@ -44,7 +44,7 @@
|
|||
#define COMMON_CODEC_NAME_KEY "CodecName"
|
||||
#define COMMON_CODEC_NAME_DEF "-"
|
||||
|
||||
// user data
|
||||
// user config
|
||||
#define COMMON_RECORD_KEY "RecordPath"
|
||||
#define COMMON_RECORD_DEF ""
|
||||
|
||||
|
@ -57,26 +57,41 @@
|
|||
#define COMMON_RECORD_FORMAT_INDEX_KEY "RecordFormatIndex"
|
||||
#define COMMON_RECORD_FORMAT_INDEX_DEF 0
|
||||
|
||||
#define COMMON_LOCK_ORIENTATION_INDEX_KEY "LockDirectionIndex"
|
||||
#define COMMON_LOCK_ORIENTATION_INDEX_DEF 0
|
||||
|
||||
#define COMMON_RECORD_SCREEN_KEY "RecordScreen"
|
||||
#define COMMON_RECORD_SCREEN_DEF false
|
||||
|
||||
#define COMMON_RECORD_BACKGROUD_KEY "RecordBackGround"
|
||||
#define COMMON_RECORD_BACKGROUD_DEF false
|
||||
|
||||
#define COMMON_REVERSE_CONNECT_KEY "ReverseConnect"
|
||||
#define COMMON_REVERSE_CONNECT_DEF true
|
||||
|
||||
#define COMMON_SHOW_FPS_KEY "ShowFPS"
|
||||
#define COMMON_SHOW_FPS_DEF false
|
||||
|
||||
#define COMMON_WINDOW_ON_TOP_KEY "WindowOnTop"
|
||||
#define COMMON_WINDOW_ON_TOP_DEF false
|
||||
|
||||
#define COMMON_AUTO_OFF_SCREEN_KEY "AutoOffScreen"
|
||||
#define COMMON_AUTO_OFF_SCREEN_DEF false
|
||||
|
||||
#define COMMON_FRAMELESS_WINDOW_KEY "FramelessWindow"
|
||||
#define COMMON_FRAMELESS_WINDOW_DEF false
|
||||
|
||||
#define COMMON_KEEP_ALIVE_KEY "KeepAlive"
|
||||
#define COMMON_KEEP_ALIVE_DEF false
|
||||
|
||||
// device config
|
||||
#define SERIAL_WINDOW_RECT_KEY_X "WindowRectX"
|
||||
#define SERIAL_WINDOW_RECT_KEY_Y "WindowRectY"
|
||||
#define SERIAL_WINDOW_RECT_KEY_W "WindowRectW"
|
||||
#define SERIAL_WINDOW_RECT_KEY_H "WindowRectH"
|
||||
#define SERIAL_WINDOW_RECT_KEY_DEF -1
|
||||
|
||||
#define USER_NAME "PHONE"
|
||||
#define USER_RECORD_SCREEN "RecordScreen"
|
||||
#define USER_RECORD_BACKGROUD "RecordBackGround"
|
||||
#define USER_REVERSE_CONNECT "ReverseConnect"
|
||||
#define USER_SHOW_FPS "ShowFPS"
|
||||
#define USER_WINDOW_ON_TOP "WindowOnTop"
|
||||
#define USER_AUTO_OFF_SCREEN "AutoOffScreen"
|
||||
#define USER_WINDOW_FRAMELESS "WindowFrameless"
|
||||
#define USER_KEEP_ALIVE "KeepAlive"
|
||||
|
||||
#define COMMON_FRAMELESS_WINDOW_KEY "FramelessWindow"
|
||||
#define COMMON_FRAMELESS_WINDOW_DEF false
|
||||
|
||||
// 最大尺寸 录制格式
|
||||
#define SERIAL_NICK_NAME_KEY "NickName"
|
||||
#define SERIAL_NICK_NAME_DEF "Phone"
|
||||
|
||||
QString Config::s_configPath = "";
|
||||
|
||||
|
@ -110,101 +125,47 @@ const QString &Config::getConfigPath()
|
|||
return s_configPath;
|
||||
}
|
||||
|
||||
QString Config::getRecordPath()
|
||||
{
|
||||
QString record;
|
||||
m_userData->beginGroup(GROUP_COMMON);
|
||||
record = m_userData->value(COMMON_RECORD_KEY, COMMON_RECORD_DEF).toString();
|
||||
m_userData->endGroup();
|
||||
return record;
|
||||
}
|
||||
|
||||
void Config::setRecordPath(const QString &path)
|
||||
void Config::setUserBootConfig(const UserBootConfig &config)
|
||||
{
|
||||
m_userData->beginGroup(GROUP_COMMON);
|
||||
m_userData->setValue(COMMON_RECORD_KEY, path);
|
||||
m_userData->endGroup();
|
||||
}
|
||||
|
||||
void Config::setUserBootConfig(const QString &serial, const UserBootConfig &config)
|
||||
{
|
||||
m_userData->beginGroup(serial);
|
||||
m_userData->setValue(USER_RECORD_SCREEN, config.recordScreen);
|
||||
m_userData->setValue(USER_RECORD_BACKGROUD, config.recordBackground);
|
||||
m_userData->setValue(USER_REVERSE_CONNECT, config.reverseConnect);
|
||||
m_userData->setValue(USER_SHOW_FPS, config.showFPS);
|
||||
m_userData->setValue(USER_WINDOW_ON_TOP, config.windowOnTop);
|
||||
m_userData->setValue(USER_AUTO_OFF_SCREEN, config.autoOffScreen);
|
||||
m_userData->setValue(USER_WINDOW_FRAMELESS, config.windowFrameless);
|
||||
m_userData->setValue(USER_KEEP_ALIVE, config.keepAlive);
|
||||
m_userData->setValue(COMMON_RECORD_KEY, config.recordPath);
|
||||
m_userData->setValue(COMMON_BITRATE_INDEX_KEY, config.bitRateIndex);
|
||||
m_userData->setValue(COMMON_MAX_SIZE_INDEX_KEY, config.maxSizeIndex);
|
||||
m_userData->setValue(COMMON_RECORD_FORMAT_INDEX_KEY, config.recordFormatIndex);
|
||||
m_userData->setValue(COMMON_FRAMELESS_WINDOW_KEY, config.framelessWindow);
|
||||
m_userData->setValue(COMMON_LOCK_ORIENTATION_INDEX_KEY, config.lockOrientationIndex);
|
||||
m_userData->setValue(COMMON_RECORD_SCREEN_KEY, config.recordScreen);
|
||||
m_userData->setValue(COMMON_RECORD_BACKGROUD_KEY, config.recordBackground);
|
||||
m_userData->setValue(COMMON_REVERSE_CONNECT_KEY, config.reverseConnect);
|
||||
m_userData->setValue(COMMON_SHOW_FPS_KEY, config.showFPS);
|
||||
m_userData->setValue(COMMON_WINDOW_ON_TOP_KEY, config.windowOnTop);
|
||||
m_userData->setValue(COMMON_AUTO_OFF_SCREEN_KEY, config.autoOffScreen);
|
||||
m_userData->setValue(COMMON_KEEP_ALIVE_KEY, config.keepAlive);
|
||||
m_userData->endGroup();
|
||||
m_userData->sync();
|
||||
}
|
||||
|
||||
UserBootConfig Config::getUserBootConfig(const QString &serial)
|
||||
UserBootConfig Config::getUserBootConfig()
|
||||
{
|
||||
UserBootConfig config;
|
||||
m_userData->beginGroup(serial);
|
||||
config.recordScreen = m_userData->value(USER_RECORD_SCREEN, false).toBool();
|
||||
config.recordBackground = m_userData->value(USER_RECORD_BACKGROUD, false).toBool();
|
||||
config.reverseConnect = m_userData->value(USER_REVERSE_CONNECT, true).toBool();
|
||||
config.showFPS = m_userData->value(USER_SHOW_FPS, false).toBool();
|
||||
config.windowOnTop = m_userData->value(USER_WINDOW_ON_TOP, false).toBool();
|
||||
config.autoOffScreen = m_userData->value(USER_AUTO_OFF_SCREEN, false).toBool();
|
||||
config.windowFrameless = m_userData->value(USER_WINDOW_FRAMELESS, false).toBool();
|
||||
config.keepAlive = m_userData->value(USER_KEEP_ALIVE, false).toBool();
|
||||
m_userData->beginGroup(GROUP_COMMON);
|
||||
config.recordPath = m_userData->value(COMMON_RECORD_KEY, COMMON_RECORD_DEF).toString();
|
||||
config.bitRateIndex = m_userData->value(COMMON_BITRATE_INDEX_KEY, COMMON_BITRATE_INDEX_DEF).toInt();
|
||||
config.maxSizeIndex = m_userData->value(COMMON_MAX_SIZE_INDEX_KEY, COMMON_MAX_SIZE_INDEX_DEF).toInt();
|
||||
config.recordFormatIndex = m_userData->value(COMMON_RECORD_FORMAT_INDEX_KEY, COMMON_RECORD_FORMAT_INDEX_DEF).toInt();
|
||||
config.lockOrientationIndex = m_userData->value(COMMON_LOCK_ORIENTATION_INDEX_KEY, COMMON_LOCK_ORIENTATION_INDEX_DEF).toInt();
|
||||
config.framelessWindow = m_userData->value(COMMON_FRAMELESS_WINDOW_KEY, COMMON_FRAMELESS_WINDOW_DEF).toBool();
|
||||
config.recordScreen = m_userData->value(COMMON_RECORD_SCREEN_KEY, COMMON_RECORD_SCREEN_DEF).toBool();
|
||||
config.recordBackground = m_userData->value(COMMON_RECORD_BACKGROUD_KEY, COMMON_RECORD_BACKGROUD_DEF).toBool();
|
||||
config.reverseConnect = m_userData->value(COMMON_REVERSE_CONNECT_KEY, COMMON_REVERSE_CONNECT_DEF).toBool();
|
||||
config.showFPS = m_userData->value(COMMON_SHOW_FPS_KEY, COMMON_SHOW_FPS_DEF).toBool();
|
||||
config.windowOnTop = m_userData->value(COMMON_WINDOW_ON_TOP_KEY, COMMON_WINDOW_ON_TOP_DEF).toBool();
|
||||
config.autoOffScreen = m_userData->value(COMMON_AUTO_OFF_SCREEN_KEY, COMMON_AUTO_OFF_SCREEN_DEF).toBool();
|
||||
config.keepAlive = m_userData->value(COMMON_KEEP_ALIVE_KEY, COMMON_KEEP_ALIVE_DEF).toBool();
|
||||
m_userData->endGroup();
|
||||
return config;
|
||||
}
|
||||
|
||||
int Config::getBitRateIndex()
|
||||
{
|
||||
int bitRateIndex;
|
||||
m_userData->beginGroup(GROUP_COMMON);
|
||||
bitRateIndex = m_userData->value(COMMON_BITRATE_INDEX_KEY, COMMON_BITRATE_INDEX_DEF).toInt();
|
||||
m_userData->endGroup();
|
||||
return bitRateIndex;
|
||||
}
|
||||
|
||||
void Config::setBitRateIndex(int bitRateIndex)
|
||||
{
|
||||
m_userData->beginGroup(GROUP_COMMON);
|
||||
m_userData->setValue(COMMON_BITRATE_INDEX_KEY, bitRateIndex);
|
||||
m_userData->endGroup();
|
||||
}
|
||||
|
||||
int Config::getMaxSizeIndex()
|
||||
{
|
||||
int maxSizeIndex;
|
||||
m_userData->beginGroup(GROUP_COMMON);
|
||||
maxSizeIndex = m_userData->value(COMMON_MAX_SIZE_INDEX_KEY, COMMON_MAX_SIZE_INDEX_DEF).toInt();
|
||||
m_userData->endGroup();
|
||||
return maxSizeIndex;
|
||||
}
|
||||
|
||||
void Config::setMaxSizeIndex(int maxSizeIndex)
|
||||
{
|
||||
m_userData->beginGroup(GROUP_COMMON);
|
||||
m_userData->setValue(COMMON_MAX_SIZE_INDEX_KEY, maxSizeIndex);
|
||||
m_userData->endGroup();
|
||||
}
|
||||
|
||||
int Config::getRecordFormatIndex()
|
||||
{
|
||||
int recordFormatIndex;
|
||||
m_userData->beginGroup(GROUP_COMMON);
|
||||
recordFormatIndex = m_userData->value(COMMON_RECORD_FORMAT_INDEX_KEY, COMMON_RECORD_FORMAT_INDEX_DEF).toInt();
|
||||
m_userData->endGroup();
|
||||
return recordFormatIndex;
|
||||
}
|
||||
|
||||
void Config::setRecordFormatIndex(int recordFormatIndex)
|
||||
{
|
||||
m_userData->beginGroup(GROUP_COMMON);
|
||||
m_userData->setValue(COMMON_RECORD_FORMAT_INDEX_KEY, recordFormatIndex);
|
||||
m_userData->endGroup();
|
||||
}
|
||||
|
||||
void Config::setRect(const QString &serial, const QRect &rc)
|
||||
{
|
||||
m_userData->beginGroup(serial);
|
||||
|
@ -228,39 +189,23 @@ QRect Config::getRect(const QString &serial)
|
|||
return rc;
|
||||
}
|
||||
|
||||
void Config::setFramelessWindow(bool frameless)
|
||||
{
|
||||
m_userData->beginGroup(GROUP_COMMON);
|
||||
m_userData->setValue(COMMON_FRAMELESS_WINDOW_KEY, frameless);
|
||||
m_userData->endGroup();
|
||||
}
|
||||
|
||||
void Config::setUserName(const QString &serial, const QString &name)
|
||||
void Config::setNickName(const QString &serial, const QString &name)
|
||||
{
|
||||
m_userData->beginGroup(serial);
|
||||
m_userData->setValue(USER_NAME, name);
|
||||
m_userData->setValue(SERIAL_NICK_NAME_KEY, name);
|
||||
m_userData->endGroup();
|
||||
m_userData->sync();
|
||||
}
|
||||
|
||||
QString Config::getUserName(const QString &serial)
|
||||
QString Config::getNickName(const QString &serial)
|
||||
{
|
||||
QString name;
|
||||
m_userData->beginGroup(serial);
|
||||
name = m_userData->value(USER_NAME,"PHONE").toString();
|
||||
name = m_userData->value(SERIAL_NICK_NAME_KEY, SERIAL_NICK_NAME_DEF).toString();
|
||||
m_userData->endGroup();
|
||||
return name;
|
||||
}
|
||||
|
||||
bool Config::getFramelessWindow()
|
||||
{
|
||||
bool framelessWindow = false;
|
||||
m_userData->beginGroup(GROUP_COMMON);
|
||||
framelessWindow = m_userData->value(COMMON_FRAMELESS_WINDOW_KEY, COMMON_FRAMELESS_WINDOW_DEF).toBool();
|
||||
m_userData->endGroup();
|
||||
return framelessWindow;
|
||||
}
|
||||
|
||||
QString Config::getServerVersion()
|
||||
{
|
||||
QString server;
|
||||
|
|
|
@ -4,15 +4,21 @@
|
|||
#include <QObject>
|
||||
#include <QPointer>
|
||||
#include <QRect>
|
||||
|
||||
struct UserBootConfig
|
||||
{
|
||||
QString recordPath = "";
|
||||
int bitRateIndex = 0;
|
||||
int maxSizeIndex = 0;
|
||||
int recordFormatIndex = 0;
|
||||
int lockOrientationIndex = 0;
|
||||
bool recordScreen = false;
|
||||
bool recordBackground = false;
|
||||
bool reverseConnect = true;
|
||||
bool showFPS = false;
|
||||
bool windowOnTop = false;
|
||||
bool autoOffScreen = false;
|
||||
bool windowFrameless = false;
|
||||
bool framelessWindow = false;
|
||||
bool keepAlive = false;
|
||||
};
|
||||
|
||||
|
@ -23,6 +29,7 @@ class Config : public QObject
|
|||
public:
|
||||
|
||||
static Config &getInstance();
|
||||
|
||||
// config
|
||||
QString getTitle();
|
||||
QString getServerVersion();
|
||||
|
@ -37,25 +44,18 @@ public:
|
|||
QString getCodecOptions();
|
||||
QString getCodecName();
|
||||
QStringList getConnectedGroups();
|
||||
void deleteGroup(const QString &serial);
|
||||
|
||||
// user data
|
||||
QString getRecordPath();
|
||||
void setRecordPath(const QString &path);
|
||||
int getBitRateIndex();
|
||||
void setBitRateIndex(int bitRateIndex);
|
||||
int getMaxSizeIndex();
|
||||
void setMaxSizeIndex(int maxSizeIndex);
|
||||
int getRecordFormatIndex();
|
||||
void setRecordFormatIndex(int recordFormatIndex);
|
||||
// user data:common
|
||||
void setUserBootConfig(const UserBootConfig &config);
|
||||
UserBootConfig getUserBootConfig();
|
||||
|
||||
// user data:device
|
||||
void setNickName(const QString &serial, const QString &name);
|
||||
QString getNickName(const QString &serial);
|
||||
void setRect(const QString &serial, const QRect &rc);
|
||||
QRect getRect(const QString &serial);
|
||||
bool getFramelessWindow();
|
||||
void setFramelessWindow(bool frameless);
|
||||
void setUserName(const QString &serial, const QString &name);
|
||||
QString getUserName(const QString &serial);
|
||||
void setUserBootConfig(const QString &serial, const UserBootConfig &config);
|
||||
UserBootConfig getUserBootConfig(const QString &serial);
|
||||
|
||||
void deleteGroup(const QString &serial);
|
||||
|
||||
private:
|
||||
explicit Config(QObject *parent = nullptr);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue