diff --git a/LedOK/LedOK Express.pro b/LedOK/LedOK Express.pro index fcaf3fe..642e213 100644 --- a/LedOK/LedOK Express.pro +++ b/LedOK/LedOK Express.pro @@ -27,7 +27,7 @@ CONFIG += embed_translations # You can also select to disable deprecated APIs only up to a certain version of Qt. #DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0 -VERSION = 2.0.0 +VERSION = 2.0.1 DEFINES += APP_VERSION=\\\"$$VERSION\\\" msvc { contains(QT_ARCH, i386) { diff --git a/LedOK/device/ctrladvancedpanel.cpp b/LedOK/device/ctrladvancedpanel.cpp index 83a5cae..088af35 100644 --- a/LedOK/device/ctrladvancedpanel.cpp +++ b/LedOK/device/ctrladvancedpanel.cpp @@ -60,9 +60,9 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { fdScreenHeight->setMaximumWidth(60); hBox->addWidget(fdScreenHeight); - btnScreenSet = new QPushButton; - btnScreenSet->setProperty("ssType", "progManageTool"); - connect(btnScreenSet, &QPushButton::clicked, this, [this] { + auto btn = new QPushButton; + btnSets.push_back(btn); + connect(btn, &QPushButton::clicked, this, [this] { if(gSelCards.isEmpty()) { QMessageBox::information(this, tr("Tip"), tr("NoSelectedController")); return; @@ -106,7 +106,7 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { } } }); - hBox->addWidget(btnScreenSet); + hBox->addWidget(btn); hBox->addSpacing(20); @@ -117,9 +117,8 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { fdAlias->setMaximumWidth(200); hBox->addWidget(fdAlias); - btnAliasSet = new QPushButton; - btnAliasSet->setProperty("ssType", "progManageTool"); - connect(btnAliasSet, &QPushButton::clicked, this, [this] { + btnSets.push_back(btn = new QPushButton); + connect(btn, &QPushButton::clicked, this, [this] { if(gSelCards.isEmpty()) { QMessageBox::information(this, tr("Tip"), tr("NoSelectedController")); return; @@ -156,7 +155,7 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { } } }); - hBox->addWidget(btnAliasSet); + hBox->addWidget(btn); hBox->addStretch(); @@ -183,9 +182,8 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { fdCompanyId->setFixedWidth(100); hBox->addWidget(fdCompanyId); - btnWebServerSet = new QPushButton; - btnWebServerSet->setProperty("ssType", "progManageTool"); - connect(btnWebServerSet, &QPushButton::clicked, this, [this] { + btnSets.push_back(btn = new QPushButton); + connect(btn, &QPushButton::clicked, this, [this] { if(gSelCards.isEmpty()) { QMessageBox::information(this, tr("Tip"), tr("NoSelectedController")); return; @@ -211,7 +209,7 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { } } }); - hBox->addWidget(btnWebServerSet); + hBox->addWidget(btn); hBox->addStretch(); @@ -224,9 +222,8 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { fdRealtimeServer->setEditable(true); hBox->addWidget(fdRealtimeServer); - btnRealtimeServerSet = new QPushButton; - btnRealtimeServerSet->setProperty("ssType", "progManageTool"); - connect(btnRealtimeServerSet, &QPushButton::clicked, this, [this] { + btnSets.push_back(btn = new QPushButton); + connect(btn, &QPushButton::clicked, this, [this] { if(gSelCards.isEmpty()) { QMessageBox::information(this, tr("Tip"), tr("NoSelectedController")); return; @@ -247,7 +244,7 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { } } }); - hBox->addWidget(btnRealtimeServerSet); + hBox->addWidget(btn); btnRealtimeClear = new QPushButton; btnRealtimeClear->setProperty("ssType", "progManageTool"); @@ -948,9 +945,8 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { fdRebootTime->setMaximumWidth(60); hBox->addWidget(fdRebootTime); - btnTimingRebootSet = new QPushButton; - btnTimingRebootSet->setProperty("ssType", "progManageTool"); - connect(btnTimingRebootSet, &QPushButton::clicked, this, [=] { + btnSets.push_back(btn = new QPushButton); + connect(btn, &QPushButton::clicked, this, [=] { if(gSelCards.isEmpty()) { QMessageBox::information(this, tr("Tip"), tr("NoSelectedController")); return; @@ -971,11 +967,10 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { } } }); - hBox->addWidget(btnTimingRebootSet); + hBox->addWidget(btn); - btnTimingRebootGet = new QPushButton; - btnTimingRebootGet->setProperty("ssType", "progManageTool"); - connect(btnTimingRebootGet, &QPushButton::clicked, this, [=] { + btnGets.push_back(btn = new QPushButton); + connect(btn, &QPushButton::clicked, this, [=] { if(gSelCards.isEmpty()) { QMessageBox::information(this, tr("Tip"), tr("NoSelectedController")); return; @@ -1004,7 +999,7 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { } } }); - hBox->addWidget(btnTimingRebootGet); + hBox->addWidget(btn); hBox->addStretch(); @@ -1085,9 +1080,8 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { fdDisMode->addItem("Part", 2); hBox->addWidget(fdDisMode); - btnDisModeSet = new QPushButton; - btnDisModeSet->setProperty("ssType", "progManageTool"); - connect(btnDisModeSet, &QPushButton::clicked, this, [=] { + btnSets.push_back(btn = new QPushButton); + connect(btn, &QPushButton::clicked, this, [=] { if(gSelCards.isEmpty()) { QMessageBox::information(this, tr("Tip"), tr("NoSelectedController")+" ..."); return; @@ -1108,11 +1102,10 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { } } }); - hBox->addWidget(btnDisModeSet); + hBox->addWidget(btn); - btnDisModeGet = new QPushButton; - btnDisModeGet->setProperty("ssType", "progManageTool"); - connect(btnDisModeGet, &QPushButton::clicked, this, [=] { + btnGets.push_back(btn = new QPushButton); + connect(btn, &QPushButton::clicked, this, [=] { if(gSelCards.isEmpty()) { QMessageBox::information(this, tr("Tip"), tr("NoSelectedController")); return; @@ -1146,7 +1139,7 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { } } }); - hBox->addWidget(btnDisModeGet); + hBox->addWidget(btn); hBox->addSpacing(40); lbScreenPos = new QLabel; @@ -1163,9 +1156,8 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { fdScreenOff->setRange(-9999, 99999); hBox->addWidget(fdScreenOff); - btnScreenOffSet = new QPushButton; - btnScreenOffSet->setProperty("ssType", "progManageTool"); - connect(btnScreenOffSet, &QPushButton::clicked, this, [=] { + btnSets.push_back(btn = new QPushButton); + connect(btn, &QPushButton::clicked, this, [=] { if(gSelCards.isEmpty()) { QMessageBox::information(this, tr("Tip"), tr("NoSelectedController")); return; @@ -1187,11 +1179,10 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { } } }); - hBox->addWidget(btnScreenOffSet); + hBox->addWidget(btn); - btnScreenOffGet = new QPushButton; - btnScreenOffGet->setProperty("ssType", "progManageTool"); - connect(btnScreenOffGet, &QPushButton::clicked, this, [=] { + btnGets.push_back(btn = new QPushButton); + connect(btn, &QPushButton::clicked, this, [=] { if(gSelCards.isEmpty()) { QMessageBox::information(this, tr("Tip"), tr("NoSelectedController")); return; @@ -1223,9 +1214,105 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { } } }); - hBox->addWidget(btnScreenOffGet); + hBox->addWidget(btn); hBox->addStretch(); + { + hBox = new HBox(vBox); + + lbCameraDis = new QLabel; + hBox->addWidget(lbCameraDis); + + auto edCameraDisMin = new QSpinBox; + edCameraDisMin->setRange(0, 99999); + hBox->addWidget(edCameraDisMin); + hBox->addLabel("~"); + + auto edCameraDisMax = new QSpinBox; + edCameraDisMax->setRange(0, 99999); + hBox->addWidget(edCameraDisMax); + hBox->addLabel("mm"); + + btnSets.push_back(btn = new QPushButton); + connect(btn, &QPushButton::clicked, this, [=] { + if(gSelCards.isEmpty()) { + QMessageBox::information(this, tr("Tip"), tr("NoSelectedController")); + return; + } + JObj json; + json.insert("_id", "SetCameraRange"); + json.insert("_type", "SetCameraRange"); + json.insert("min", edCameraDisMin->value()); + json.insert("max", edCameraDisMax->value()); + json.insert("zVer", "xixun1"); + if(gSelCards.count() == 1) { + WaitingDlg waitingDlg(this, tr("Setting Camera Range")+" ..."); + waitingDlg.showLater(); + auto card = gSelCards[0]; + TcpSocket tcp; + tcp.connectToHost(card.ip, 3333); + if(! tcp.waitForConnected(10000)) { + tcp.close(); + if(! waitingDlg.isVisible()) return; + waitingDlg.close(); + QMessageBox::critical(this, tr("Error"), QString(socketErrKey(tcp.error()))+" ("+QString::number(tcp.error())+") "+tcp.errorString()+" at WaitConnected"); + return; + } + auto resNum = tcp.write(JToBytes(json)); + tcp.flush(); + if(resNum == -1 || ! tcp.waitForBytesWritten(10000)) { + tcp.close(); + if(! waitingDlg.isVisible()) return; + waitingDlg.close(); + QMessageBox::critical(this, tr("Error"), QString(socketErrKey(tcp.error()))+" ("+QString::number(tcp.error())+") "+tcp.errorString()+" at write"); + return; + } + if(! tcp.waitForReadyRead(10000)) { + tcp.close(); + if(! waitingDlg.isVisible()) return; + waitingDlg.close(); + QMessageBox::critical(this, tr("Error"), QString(socketErrKey(tcp.error()))+" ("+QString::number(tcp.error())+") "+tcp.errorString()+" at WaitForReadyRead"); + return; + } + tcp.readAll(); + tcp.close(); + waitingDlg.success(); + } else { + for(auto &card : gSelCards) { + auto tcp = new TcpSocket; + auto cardId = card.id; + connect(tcp, &QTcpSocket::connected, tcp, [=] { + tcp->stopTimer(); + tcp->write(JToBytes(json)); + tcp->startTimer(10000); + }); + connect(tcp, &QTcpSocket::readyRead, tcp, [=] { + tcp->stopTimer(); + auto resp = tcp->readAll(); + tcp->close(); + tcp->deleteLater(); + QString error; + auto json = JFrom(resp, &error); + if(! error.isEmpty()) { + gFdResInfo->append(cardId+" "+tr("Set Camera Range")+" "+error); + return; + } + gFdResInfo->append(cardId+" "+tr("Set Camera Range")+" "+tr("Success")); + }); + connect(tcp, &QTcpSocket::errorOccurred, tcp, [=](QAbstractSocket::SocketError err) { + tcp->close(); + tcp->deleteLater(); + gFdResInfo->append(cardId+" "+tr("Set Camera Range")+" "+socketErrKey(err)+" ("+QString::number(err)+") "+tcp->errorString()); + }); + tcp->connectToHost(card.ip, 3333); + tcp->startTimer(10000); + } + } + }); + hBox->addWidget(btn); + hBox->addStretch(); + } + hBox = new HBox(vBox); btnLedSet = new QPushButton; @@ -1402,9 +1489,8 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { fdTopLevelLH = new QRadioButton; hBox->addWidget(fdTopLevelLH); - btnHighForBusySet = new QPushButton; - btnHighForBusySet->setProperty("ssType", "progManageTool"); - connect(btnHighForBusySet, &QPushButton::clicked, this, [this] { + btnSets.push_back(btn = new QPushButton); + connect(btn, &QPushButton::clicked, this, [this] { if(gSelCards.isEmpty()) { QMessageBox::information(this, tr("Tip"), tr("NoSelectedController")); return; @@ -1425,7 +1511,7 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { } } }); - hBox->addWidget(btnHighForBusySet); + hBox->addWidget(btn); btnGetTopLevel = new QPushButton; btnGetTopLevel->setProperty("ssType", "progManageTool"); @@ -1478,9 +1564,8 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { hBox->addWidget(fdMinBright); hBox->addWidget(new QLabel("%")); - btnMinBrightSet = new QPushButton; - btnMinBrightSet->setProperty("ssType", "progManageTool"); - connect(btnMinBrightSet, &QPushButton::clicked, this, [this] { + btnSets.push_back(btn = new QPushButton); + connect(btn, &QPushButton::clicked, this, [this] { if(gSelCards.isEmpty()) { QMessageBox::information(this, tr("Tip"), tr("NoSelectedController")); return; @@ -1501,11 +1586,10 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { } } }); - hBox->addWidget(btnMinBrightSet); + hBox->addWidget(btn); - btnMinBrightGet = new QPushButton(); - btnMinBrightGet->setProperty("ssType", "progManageTool"); - connect(btnMinBrightGet, &QPushButton::clicked, this, [this] { + btnGets.push_back(btn = new QPushButton); + connect(btn, &QPushButton::clicked, this, [this] { if(gSelCards.isEmpty()) { QMessageBox::information(this, tr("Tip"), tr("NoSelectedController")); return; @@ -1542,7 +1626,7 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { } } }); - hBox->addWidget(btnMinBrightGet); + hBox->addWidget(btn); hBox->addSpacing(10); @@ -1555,9 +1639,8 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { hBox->addWidget(fdMaxBright); hBox->addWidget(new QLabel("%")); - btnMaxBrightSet = new QPushButton; - btnMaxBrightSet->setProperty("ssType", "progManageTool"); - connect(btnMaxBrightSet, &QPushButton::clicked, this, [this] { + btnSets.push_back(btn = new QPushButton); + connect(btn, &QPushButton::clicked, this, [this] { if(gSelCards.isEmpty()) { QMessageBox::information(this, tr("Tip"), tr("NoSelectedController")); return; @@ -1578,11 +1661,10 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { } } }); - hBox->addWidget(btnMaxBrightSet); + hBox->addWidget(btn); - btnMaxBrightGet = new QPushButton; - btnMaxBrightGet->setProperty("ssType", "progManageTool"); - connect(btnMaxBrightGet, &QPushButton::clicked, this, [this] { + btnGets.push_back(btn = new QPushButton); + connect(btn, &QPushButton::clicked, this, [this] { if(gSelCards.isEmpty()) { QMessageBox::information(this, tr("Tip"), tr("NoSelectedController")); return; @@ -1619,7 +1701,7 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { } } }); - hBox->addWidget(btnMaxBrightGet); + hBox->addWidget(btn); hBox->addStretch(); vBox->addWidget(grpMinMaxBrightness); @@ -2053,9 +2135,8 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { btnGrp->addButton(fdDeg180, 2); btnGrp->addButton(fdDeg270, 3); - btnRotateSet = new QPushButton; - btnRotateSet->setProperty("ssType", "progManageTool"); - connect(btnRotateSet, &QPushButton::clicked, this, [=] { + btnSets.push_back(btn = new QPushButton); + connect(btn, &QPushButton::clicked, this, [=] { if(gSelCards.isEmpty()) { QMessageBox::information(this, tr("Tip"), tr("NoSelectedController")); return; @@ -2077,11 +2158,10 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { } } }); - hBox->addWidget(btnRotateSet); + hBox->addWidget(btn); - btnRotateGet = new QPushButton; - btnRotateGet->setProperty("ssType", "progManageTool"); - connect(btnRotateGet, &QPushButton::clicked, this, [=] { + btnGets.push_back(btn = new QPushButton); + connect(btn, &QPushButton::clicked, this, [=] { if(gSelCards.isEmpty()) { QMessageBox::information(this, tr("Tip"), tr("NoSelectedController")); return; @@ -2114,8 +2194,7 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { } } }); - hBox->addWidget(btnRotateGet); - + hBox->addWidget(btn); hBox->addStretch(); @@ -2128,9 +2207,8 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { fdChargingStation->setMaximumWidth(120); hBox->addWidget(fdChargingStation); - btnChargingStationSet = new QPushButton; - btnChargingStationSet->setProperty("ssType", "progManageTool"); - connect(btnChargingStationSet, &QPushButton::clicked, this, [=] { + btnSets.push_back(btn = new QPushButton); + connect(btn, &QPushButton::clicked, this, [=] { if(gSelCards.isEmpty()) { QMessageBox::information(this, tr("Tip"), tr("NoSelectedController")); return; @@ -2151,7 +2229,7 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { } } }); - hBox->addWidget(btnChargingStationSet); + hBox->addWidget(btn); hBox->addStretch(); @@ -2223,9 +2301,8 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { fdBaud->setMaximumWidth(70); hBox->addWidget(fdBaud); - btnBaudSet = new QPushButton; - btnBaudSet->setProperty("ssType", "progManageTool"); - connect(btnBaudSet, &QPushButton::clicked, this, [this, fdUart, fdBaud] { + btnSets.push_back(btn = new QPushButton); + connect(btn, &QPushButton::clicked, this, [this, fdUart, fdBaud] { if(gSelCards.isEmpty()) { QMessageBox::information(this, tr("Tip"), tr("NoSelectedController")); return; @@ -2247,11 +2324,10 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { } } }); - hBox->addWidget(btnBaudSet); + hBox->addWidget(btn); - btnBaudGet = new QPushButton; - btnBaudGet->setProperty("ssType", "progManageTool"); - connect(btnBaudGet, &QPushButton::clicked, this, [this, fdUart, fdBaud] { + btnGets.push_back(btn = new QPushButton); + connect(btn, &QPushButton::clicked, this, [this, fdUart, fdBaud] { if(gSelCards.isEmpty()) { QMessageBox::information(this, tr("Tip"), tr("NoSelectedController")); return; @@ -2280,7 +2356,7 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { } } }); - hBox->addWidget(btnBaudGet); + hBox->addWidget(btn); hBox->addStretch(); @@ -2415,9 +2491,8 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { fdTraficProtocol->addItem("三思协议", 1); hBox->addWidget(fdTraficProtocol); - btnTraficProtSet = new QPushButton; - btnTraficProtSet->setProperty("ssType", "progManageTool"); - connect(btnTraficProtSet, &QPushButton::clicked, this, [this, fdTraficProtocol] { + btnSets.push_back(btn = new QPushButton); + connect(btn, &QPushButton::clicked, this, [this, fdTraficProtocol] { if(gSelCards.isEmpty()) { QMessageBox::information(this, tr("Tip"), tr("NoSelectedController")); return; @@ -2438,11 +2513,10 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { } } }); - hBox->addWidget(btnTraficProtSet); + hBox->addWidget(btn); - btnTraficProtGet = new QPushButton; - btnTraficProtGet->setProperty("ssType", "progManageTool"); - connect(btnTraficProtGet, &QPushButton::clicked, this, [this, fdTraficProtocol] { + btnGets.push_back(btn = new QPushButton); + connect(btn, &QPushButton::clicked, this, [this, fdTraficProtocol] { if(gSelCards.isEmpty()) { QMessageBox::information(this, tr("Tip"), tr("NoSelectedController")); return; @@ -2476,7 +2550,7 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { } } }); - hBox->addWidget(btnTraficProtGet); + hBox->addWidget(btn); hBox->addStretch(); hBox = new HBox(vBox); @@ -2501,9 +2575,8 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { fdPort->setValue(5000); hBox->addWidget(fdPort); - btnTraficSet = new QPushButton; - btnTraficSet->setProperty("ssType", "progManageTool"); - connect(btnTraficSet, &QPushButton::clicked, this, [=] { + btnSets.push_back(btn = new QPushButton); + connect(btn, &QPushButton::clicked, this, [=] { if(gSelCards.isEmpty()) { QMessageBox::information(this, tr("Tip"), tr("NoSelectedController")); return; @@ -2525,11 +2598,10 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { } } }); - hBox->addWidget(btnTraficSet); + hBox->addWidget(btn); - btnTraficGet = new QPushButton; - btnTraficGet->setProperty("ssType", "progManageTool"); - connect(btnTraficGet, &QPushButton::clicked, this, [=] { + btnGets.push_back(btn = new QPushButton); + connect(btn, &QPushButton::clicked, this, [=] { if(gSelCards.isEmpty()) { QMessageBox::information(this, tr("Tip"), tr("NoSelectedController")); return; @@ -2566,13 +2638,13 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { } } }); - hBox->addWidget(btnTraficGet); + hBox->addWidget(btn); hBox->addStretch(); } vBox->addWidget(grpBoxHiddenSettings); hBox = new HBox(vBox); - auto btn = new QPushButton("List Card Infos"); + btn = new QPushButton("List Card Infos"); btn->setProperty("ssType", "progManageTool"); connect(btn, &QPushButton::clicked, this, [this] { if(gSelCards.isEmpty()) { @@ -2594,6 +2666,9 @@ CtrlAdvancedPanel::CtrlAdvancedPanel() { vBox->addStretch(); + for(auto btn : btnSets) btn->setProperty("ssType", "progManageTool"); + for(auto btn : btnGets) btn->setProperty("ssType", "progManageTool"); + if(QSettings().value("advUiPs", "888").toString().isEmpty()) isPassed = true; connect(gDevicePanel, &DevicePanel::sigSelectedDeviceList, this, [this] { if(isVisible()) init(); @@ -2718,6 +2793,9 @@ void CtrlAdvancedPanel::changeEvent(QEvent *event) { if(event->type() == QEvent::LanguageChange) transUi(); } void CtrlAdvancedPanel::transUi() { + for(auto btn : btnSets) btn->setText(tr("Set")); + for(auto btn : btnGets) btn->setText(tr("Get")); + btnBindTaxiIc->setText(tr("Binding *.ic account indentity voucher")); btnGetTopLevel->setText(tr("Readback")); btnLedSet->setText(tr("Start LedSet4")); @@ -2733,26 +2811,18 @@ void CtrlAdvancedPanel::transUi() { fdDisMode->setItemText(1, tr("Part")); btnY50Set->setText(tr("Set")); - lbDisMode->setText(tr("Display Mode")); - btnDisModeSet->setText(tr("Set")); - btnDisModeGet->setText(tr("Get")); + lbDisMode->setText(tr("Display Mode")+":"); - lbScreenPos->setText(tr("Screen Position")); - lbScreenOff->setText(tr("Offset")); - btnScreenOffSet->setText(tr("Set")); - btnScreenOffGet->setText(tr("Get")); + lbScreenPos->setText(tr("Screen Position")+":"); + lbScreenOff->setText(tr("Offset")+":"); + + lbCameraDis->setText(tr("Camera Distance")+":"); - btnAliasSet->setText(tr("Set")); - btnScreenSet->setText(tr("Set")); - btnHighForBusySet->setText(tr("Set")); fdScreenHeight->setPlaceholderText(tr("Height")); fdScreenWidth->setPlaceholderText(tr("Width")); fdHighForBusy->setText(tr("Service:High Out of service:Low")); fdTopLevelLH->setText(tr("Service:Low Out of service:High")); lbRotate->setText(tr("Rotate")); - btnRotateSet->setText(tr("Set")); - btnRotateGet->setText(tr("Get")); - btnChargingStationSet->setText(tr("Set")); grpBoxHiddenSettings->setTitle(tr("Hidden Settings")+" ("+tr("Click right button to hide")+")"); btnSysUpd->setText(tr("System Update")); @@ -2761,8 +2831,6 @@ void CtrlAdvancedPanel::transUi() { lbBaudModel->setText(tr("Model")); lbUart->setText(tr("Uart")); lbBaud->setText(tr("Baud")); - btnBaudSet->setText(tr("Set")); - btnBaudGet->setText(tr("Get")); fdIsOpenADB->setText(tr("Open ADB")); lbCustomJson->setText(tr("Post Custom JSON")); btnSendCustomJson->setText(tr("Send")); @@ -2791,29 +2859,17 @@ void CtrlAdvancedPanel::transUi() { btnPlayerBackClear->setText(tr("Clear player background")); btnRealtimeClear->setText(tr("Clear")); - btnMinBrightSet->setText(tr("Set")); - btnMinBrightGet->setText(tr("Readback")); - btnMaxBrightSet->setText(tr("Set")); - btnMaxBrightGet->setText(tr("Readback")); btnRestart->setText(tr("Restart")); btnIsRunning->setText(tr("Running check")); - btnRealtimeServerSet->setText(tr("Set")); - btnWebServerSet->setText(tr("Set")); fdUninstall->setText(tr("Uninstall")); lbTimingReboot->setText(tr("Timing Reboot")); - btnTimingRebootSet->setText(tr("Set")); - btnTimingRebootGet->setText(tr("Get")); lbTraficProtocol->setText(tr("Protocol")); lbCardMode->setText(tr("Card work mode")); fdServerType->setItemText(0, tr("Server")); fdServerType->setItemText(1, tr("Client")); lbTraficPort->setText(tr("Port")); - btnTraficProtSet->setText(tr("Set")); - btnTraficProtGet->setText(tr("Get")); - btnTraficSet->setText(tr("Set")); - btnTraficGet->setText(tr("Get")); } void messageHandler(QtMsgType type, const QMessageLogContext &, const QString &msg) { diff --git a/LedOK/device/ctrladvancedpanel.h b/LedOK/device/ctrladvancedpanel.h index 80515df..23f1dfa 100644 --- a/LedOK/device/ctrladvancedpanel.h +++ b/LedOK/device/ctrladvancedpanel.h @@ -27,25 +27,20 @@ protected: void mouseReleaseEvent(QMouseEvent *) override; private: - bool isPassed{false}; - + std::vector btnSets, btnGets; QLabel *lbTitle; QLabel *lbScreenWidth; QLineEdit *fdScreenWidth; QLabel *lbScreenHeight; QLineEdit *fdScreenHeight; - QPushButton *btnScreenSet; QLabel *lbAlias; QLineEdit *fdAlias; - QPushButton *btnAliasSet; QLabel *labelWebServer; QComboBox *fdWebServerAddr; QLabel *lbCompanyId; QLineEdit *fdCompanyId; - QPushButton *btnWebServerSet; QLabel *lbRealtime; QComboBox *fdRealtimeServer; - QPushButton *btnRealtimeServerSet; QPushButton *btnRealtimeClear; QPushButton *btnWareUpdate; QLabel *lbWareTip; @@ -59,7 +54,6 @@ private: QPushButton *btnSetBack, *btnPlayerBackSet, *btnPlayerBackClear; QLabel *lbTimingReboot; - QPushButton *btnTimingRebootSet, *btnTimingRebootGet; QGroupBox *grpM80, *grpY50; QComboBox *fdM80Resolu, *fdDisMode; @@ -68,33 +62,23 @@ private: QPushButton *btnM80Restore; QLabel *lbDisMode; - QPushButton *btnDisModeSet, *btnDisModeGet; QLabel *lbScreenPos, *lbScreenOff; - QPushButton *btnScreenOffSet, *btnScreenOffGet; + QLabel *lbCameraDis; QGroupBox *grpHighForBusy; QRadioButton *fdHighForBusy; QRadioButton *fdTopLevelLH; - QPushButton *btnHighForBusySet; QPushButton *btnGetTopLevel; QPushButton *btnLedSet; QPushButton *btnReceCardsGet, *btnBindTaxiIc; QGroupBox *grpMinMaxBrightness; - QLabel *lbMinBright; - QLineEdit *fdMinBright; - QPushButton *btnMinBrightGet; - QPushButton *btnMinBrightSet; - QLabel *label_3; - QLineEdit *fdMaxBright; - QPushButton *btnMaxBrightGet; - QPushButton *btnMaxBrightSet; + QLabel *lbMinBright, *label_3; + QLineEdit *fdMinBright, *fdMaxBright; QGroupBox *grpBoxHiddenSettings; QPushButton *btnSysUpd, *btnMcuUpd, *btnMcuGet; - QPushButton *btnRotateSet, *btnRotateGet, *btnChargingStationSet; QLabel *lbRotate, *lbChargingStation, *lbBaudCfg, *lbBaudModel, *lbUart, *lbBaud; - QPushButton *btnBaudSet, *btnBaudGet; QCheckBox *fdIsOpenADB; QLabel *lbCustomJson; QTextEdit *fdCustomJson; @@ -102,7 +86,8 @@ private: QLabel *lbTraficProtocol, *lbCardMode, *lbTraficPort; QComboBox *fdServerType; - QPushButton *btnTraficProtSet, *btnTraficProtGet, *btnTraficSet, *btnTraficGet; + + bool isPassed = false; }; class PlayerBackSendThread : public QThread { diff --git a/LedOK/player/playwin.cpp b/LedOK/player/playwin.cpp index 8ce9fd8..4789d90 100644 --- a/LedOK/player/playwin.cpp +++ b/LedOK/player/playwin.cpp @@ -120,11 +120,10 @@ PlayWin::PlayWin(int x, int y, int width, int height, QString dir, const JValue src.view = lb; } } else if(src.type.startsWith("Environ")) { - auto arrayPics = source["arrayPics"]; - for(int i=(int)arrayPics.size()-1; i>=0; i--) if(arrayPics[i]["name"].toString() == "previewTmp") { - if(source["bSingleScroll"].toBool()) src.view = new EleScroll(box, dir+"/" + arrayPics[i]["id"].toString(), 'l', source["iScrollSpeed"].toDouble()); - else src.view = new EleScroll(box, dir+"/"+arrayPics[i]["id"].toString()); - break; + auto previewImg = source["previewImg"].toStr(); + if(! previewImg.isEmpty()) { + if(source["bSingleScroll"].toBool()) src.view = new EleScroll(box, dir+"/"+previewImg, 'l', source["iScrollSpeed"].toDouble()); + else src.view = new EleScroll(box, dir+"/"+previewImg); } } else if(src.type=="MultiPng" || src.type=="SplitText") { auto imgs = source["arrayPics"]; diff --git a/LedOK/program/eenviron.cpp b/LedOK/program/eenviron.cpp index b114927..7f4ebc3 100644 --- a/LedOK/program/eenviron.cpp +++ b/LedOK/program/eenviron.cpp @@ -43,6 +43,14 @@ JObj EEnviron::genProg(const JValue &json, const QString &dstDir, const QString for(auto &str : str0_9) Tools::saveImg(dstDir, metric, font, color, values, str, str); Tools::saveImg(dstDir, metric, font, color, values, ".", "."); Tools::saveImg(dstDir, metric, font, color, values, "-", "-"); + Tools::saveImg(dstDir, metric, font, color, values, tr("N"), "N"); + Tools::saveImg(dstDir, metric, font, color, values, tr("NE"), "NE"); + Tools::saveImg(dstDir, metric, font, color, values, tr("E"), "E"); + Tools::saveImg(dstDir, metric, font, color, values, tr("SE"), "SE"); + Tools::saveImg(dstDir, metric, font, color, values, tr("S"), "S"); + Tools::saveImg(dstDir, metric, font, color, values, tr("SW"), "SW"); + Tools::saveImg(dstDir, metric, font, color, values, tr("W"), "W"); + Tools::saveImg(dstDir, metric, font, color, values, tr("NW"), "NW"); res["values"] = values; JArray oitems; @@ -60,63 +68,13 @@ JObj EEnviron::genProg(const JValue &json, const QString &dstDir, const QString oitem["unit"] = url; } res["items"] = oitems; - - res["以下字段用来兼容旧播放器"] = 0; - res["bTitle"] = ! title.isEmpty(); - res["bgColor"] = Tools::color2Int(json["backColor"].toString()); - res["bTemperature"] = items["temperature"]["has"]; - res["bHumidity"] = items["humidity"]["has"]; - res["bNoise"] = items["noise"]["has"]; - res["bWindSpeed"] = items["windSpeed"]["has"]; - res["bWindDirection"] = items["windDirection"]["has"]; - res["bPM25"] = items["pm2.5"]["has"]; - res["bPM10"] = items["pm10"]["has"]; - JArray arrayPics; - for(auto &str : str0_9) Tools::saveImg2(dstDir, metric, font, color, arrayPics, str, str); - Tools::saveImg2(dstDir, metric, font, color, arrayPics, title, "labeltitle"); - Tools::saveImg2(dstDir, metric, font, color, arrayPics, items["temperature"]["label"].toString(), "labeltemperature"); - Tools::saveImg2(dstDir, metric, font, color, arrayPics, items["humidity"]["label"].toString(), "labelhumidity"); - Tools::saveImg2(dstDir, metric, font, color, arrayPics, items["noise"]["label"].toString(), "labelnoise"); - Tools::saveImg2(dstDir, metric, font, color, arrayPics, items["windSpeed"]["label"].toString(), "labelwindSpeed"); - Tools::saveImg2(dstDir, metric, font, color, arrayPics, items["windDirection"]["label"].toString(), "labelwindDirection"); - Tools::saveImg2(dstDir, metric, font, color, arrayPics, items["pm10"]["label"].toString(), "labelpm10"); - Tools::saveImg2(dstDir, metric, font, color, arrayPics, items["pm2.5"]["label"].toString(), "labelpm25"); - Tools::saveImg2(dstDir, metric, font, color, arrayPics, "℃", "unit_celsius"); - Tools::saveImg2(dstDir, metric, font, color, arrayPics, "℉", "unit_fahrenheit"); - Tools::saveImg2(dstDir, metric, font, color, arrayPics, "%", "unit_humidity"); - Tools::saveImg2(dstDir, metric, font, color, arrayPics, "dB", "unit_noise"); - Tools::saveImg2(dstDir, metric, font, color, arrayPics, "m/s", "unit_windspeed"); - Tools::saveImg2(dstDir, metric, font, color, arrayPics, "μg/m³", "unit_pm10"); - arrayPics.append(arrayPics->back()); - Tools::saveImg2(dstDir, metric, font, color, arrayPics, "-", "minus_sign"); - Tools::saveImg2(dstDir, metric, font, color, arrayPics, tr("N"), "N"); - Tools::saveImg2(dstDir, metric, font, color, arrayPics, tr("N")+tr("NE"), "NNE"); - Tools::saveImg2(dstDir, metric, font, color, arrayPics, tr("NE"), "NE"); - Tools::saveImg2(dstDir, metric, font, color, arrayPics, tr("E")+tr("NE"), "ENE"); - Tools::saveImg2(dstDir, metric, font, color, arrayPics, tr("E"), "E"); - Tools::saveImg2(dstDir, metric, font, color, arrayPics, tr("E")+tr("SE"), "ESE"); - Tools::saveImg2(dstDir, metric, font, color, arrayPics, tr("SE"), "SE"); - Tools::saveImg2(dstDir, metric, font, color, arrayPics, tr("S")+tr("SE"), "SSE"); - Tools::saveImg2(dstDir, metric, font, color, arrayPics, tr("S"), "S"); - Tools::saveImg2(dstDir, metric, font, color, arrayPics, tr("S")+tr("SW"), "SSW"); - Tools::saveImg2(dstDir, metric, font, color, arrayPics, tr("SW"), "SW"); - Tools::saveImg2(dstDir, metric, font, color, arrayPics, tr("W")+tr("SW"), "WSW"); - Tools::saveImg2(dstDir, metric, font, color, arrayPics, tr("W"), "W"); - Tools::saveImg2(dstDir, metric, font, color, arrayPics, tr("W")+tr("NW"), "WNW"); - Tools::saveImg2(dstDir, metric, font, color, arrayPics, tr("NW"), "NW"); - Tools::saveImg2(dstDir, metric, font, color, arrayPics, tr("N")+tr("NW"), "NNW"); - JObj arrayPic; - arrayPic["name"] = "previewTmp"; - QString srcFile = srcPageDir+"/previewTmp.png"; + auto srcFile = srcPageDir+"/previewTmp.png"; QFile srcQFile(srcFile); if(srcQFile.exists()) { - QString id = Tools::fileMd5(srcFile); + auto id = Tools::fileMd5(srcFile); srcQFile.copy(dstDir+"/"+id); - arrayPic["id"] = id; + res["previewImg"] = id; } - arrayPics.append(arrayPic); - res["arrayPics"] = arrayPics; - res["旧播放器兼容结束"] = 0; } return res; } diff --git a/LedOK/ts/app_en.ts b/LedOK/ts/app_en.ts index 75903ae..50ec85d 100644 --- a/LedOK/ts/app_en.ts +++ b/LedOK/ts/app_en.ts @@ -56,225 +56,209 @@ CtrlAdvancedPanel - + Advanced Advanced - + Screen Width(pixel) Screen Width(pixel) - + Width Width - - + + Height Height - - - - + - - - - - - - - - - - - + Set Set - + Alias Alias - + Web Server Address: Web Server Address: - + Setting - + Traffic screen settings - + Setting protocol ... - + Set protocol - + Getting protocol ... - + Get protocol - - + + Port - + Realtime Address: - + Firmware Management - + update or uninstall - + Clear Clear - + Check Apk Check Apk - + Uninstall Uninstall - + Running check Running check - + Restart Restart - + Check Log Check Log - + Start LedSet4 Start LedSet4.0 (Apk Display2.0 and higher) - + Open ADB Open ADB debugging function - + Post Custom JSON Post Custom JSON - - - - - - + + + + + + Clear Program Clear Program - + Config Config - + Refresh Refresh - + Restore to default Restore to default - + Taxi top screen configuration Taxi top screen configuration - - + + Service:High Out of service:Low Service:High Out of service:Low - - + + Service:Low Out of service:High Service:Low Out of service:High - + Binding *.ic account indentity voucher Binding *.ic account indentity voucher - + Rotate Rotate - + Min brightness Min brightness - - - + Readback Readback - + Send Send - + Max brightness Max brightness @@ -285,603 +269,612 @@ Set Screen Size - - - - + + + + Success Success - + Compant ID: Company ID - + Compant ID Company ID - - + + SetOnlineAddr Set Web server address - - + + ClearRealtimeServer Clear - - + + SetRealtimeServer Set realtimer address - - + + RestartAndroid Restart - - + + running running - - + + no running no running - + Check Apk Version Check Apk Version - - + + UninstallSoftware Uninstall - - + + Check apk running status - - + + OpenAdb Open ADB debugging function - + indentity voucher (*.ic) indentity voucher (*.ic) - - - - - + + + + + InvokeTaxiAppFunction Binding certificate - - + + AliIotSetting - + Software Version Info - + Package - + Version - - + + Package name is null - + Clearing Program - - + + Timeout Timeout - - - - + + + + Failed - + Getting Log - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + Error Error - + Setting Timing Reboot - + Set Timing Reboot - + Getting Timing Reboot - + Get Timing Reboot - + totalResolution FPGA total resoltuion - + strCurDisplayResolution Cur display resolution - - + + File not exist - + Getting Player State - - - + + + Get Player State - - + + Player State - - + + Cannot Open File - + Uploading - + Update Update - - + + Set Display Mode - - + + Get Display Mode - - + + Set Screen Offset - - + + Get Screen Offset - + + + Set Camera Distance + + + + Open file Failed Open file Failed - + Setting Wallpaper - - + + Set Wallpaper - + System Updating - - + + System Update - + Upload error - + Upgrading - + Getting MCU Version - - + + MCU Version - + Select File Select File - + Setting player background - - + + Set player background - + Clearing player background - - - - - - - - + + + + + + + + Clear player background - - + + GetScreenRotation Get Screen Rotation - - - + + + Charging Station - + Setting Baud Rate - + Set Baud Rate - + Getting Baud Rate - + Get Baud Rate - - + + Text is empty - - + + Json Parse Error - - + + Json isn't an Object - + Info - + Setting card work mode ... - + Set card work mode - + Getting card work mode ... - + Get card work mode - + Input password Input password - + Change Password Change Password - + Get Receive Card Num - + Resolution Config - + Full screen - + Part - + Display Mode - + Screen Position - + Offset - + + Camera Distance + + + + Min + Min + + + Hidden Settings - + Click right button to hide - + Get MCU Version - + Baud Config - + Model - + Uart - + Baud - - - - - - - + Get - + Timing Reboot - + Protocol - + Server - + Client - - + + SetScreenRotation Set screen rotation - - + + SetMinBrightness Set min brightness value - - + + SetMaxBrightness Set maximum brightness value - - + + GetMinBrightness Get min brightness - - + + GetMaxBrightness Get maximum brightness - - + + Card work mode - - + + SetSpecialResolution Set Special Resolution - - + + GetSpecialResolution Get Special Resolution - - + + CleanDisplayScreenSize Restore to default relolution - - + + SetHighForBusy Set level for busy - - + + GetStateForBusy Get level of busy - - + + SetCardAlias Set alias @@ -889,141 +882,143 @@ - - - - - - - - - - - - + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Tip Tip - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + NoSelectedController Please select screen first @@ -1038,7 +1033,7 @@ Please enter the correct height pixel value - + Password is error Password is error @@ -2602,283 +2597,283 @@ CtrlVerifyClockPanel - + Verify Clock Configuration Verify clock configuration - - + + Verify to Computer time Verify to Computer time - + Cur time of controller Cur time of controller - - + + LAN LAN - - - - - - - - - - - + + + + + + + + + + + Tip Tip - - - - - - - - - - - + + + + + + + + + + + NoSelectedController Please select screen first - + screenSwitch Switch Screen - - - + + + YES On - - - + + + NO Close - + volume Volume - + brightness brightnenss - - + + identificationCode Identification Code - - + + delaySync Time offset - - + + msec msec - - - - + + + + OtherSyncItem Other sync items - - - - + + + + lastSynchronousTime Last Synchronous Time - + checkNtpTime Synchronization interval - + Lora identity Lora identity - + (min/time) (min/time) - + identification code identification code - + Time offset(msec) Time offset(msec) - + Brightness Screen Brightness - + Volume Volume - + Screen on/off Screen On/Off - - + + Slave Slave - + NTP Server NTP Server - - + + NTP Server address NTP Server address - + TimeZone Time zone - - - - - + + + + + Set Set - + Language: Language: - + Enable Synchronous playing Enable Synchronous playing - - + + Sync time interval Sync time interval - - - - - + + + + + Readback Readback - - + + Master Master - + Identification Code Identification Code - - + + SetNtpServer SetNtpServer - - + + MasterSwitch Set as master device - - + + SlaveSwitch Set as slave device - + IsMasterSlave Read back the identity of master and slave - - + + GetControllerDate Get date time - - + + SetingSyncMethod Set sync method - - + + SyncTime SyncTime - - + + GetNtpServer GetNtpServer - - + + GetingSyncMethod Geting Sync Method - - + + SetTimezone Set Timezone @@ -3081,10 +3076,10 @@ - - + + - + Success Success @@ -3101,45 +3096,45 @@ DevicePanel - + All ALL ALL - + Online Online Online - + Refresh Refresh Refresh - - + + Specify IP Specify IP Specify IP - - - - + + + + Current Screen Current screen - - + + none none @@ -3176,8 +3171,8 @@ - - + + Player Version @@ -3192,176 +3187,176 @@ - + Specify IP list - + Search Search - - + + Attention Attention - - + + Please input IP address! Please input IP address! - + Cancel Cancel - + Screen ID Screen ID - + Screen Size Screen Size - + Alias - - + + Screenshot Screenshot - - + + On ON - - + + Off OFF - + Brightness Adj. Brightness Adj. - + Power Control Power Control - + Net Config Network Config - + Time Sync Time Sync - + Video source Video Source - + Password Password - + Advanced Advanced - + Volume Adj. Volume - + Test Test - - + + Multi screen operation Multi screen operation - - + + selected num Selected number - - + + Clear Clear - + More Info More Info - + Screen Brightness Screen Brightness - + Power Status Power Status - + Security encryption - + Getting - - + + Error Error - + Input password Input password - + VerifyPassword Verify Password - + Tip Info Tip Info - + password is wrong password is wrong @@ -3464,256 +3459,263 @@ EBase - + Area Area(px) - + X X - + Y Y - + W W - + H H - + Border Border - - - - + + + + None None - - + + Effect Effect - + + Rotate Rotate - + + Blink Blink - + Speed Speed - + Slow Slow - + Moderate Moderate - + Fast Fast - + Play Time - + Start - - - - + + + + s - + Duration - + Entry - - + + Random - - + + Expand horizontal - - + + Expand vertical - - + + Expand to left - - + + Expand to top - - + + Expand to right - - + + Expand to bottom - + Zoom in - + Zoom in from left-top - + Zoom in from right-top - + Zoom in from right-bottom - + Zoom in from left-bottom - - + + Rotate zoom - - + + Rotate zoom reverse - + Fade in - - + + Move to left - - + + Move to top - - + + Move to right - - + + Move to bottom - - + + Dur - + Exit - + Zoom out - + Zoom out to left-top - + Zoom out to right-top - + Zoom out to right-bottom - + Zoom out to left-bottom - + Fade out + + + Freq + + EDClock @@ -4084,22 +4086,22 @@ EPhoto - + Basic Properties Basic properties - + File File - + Select File Select File - + Image Read Error Image Read Error @@ -4409,67 +4411,67 @@ GenTmpThread - + MON MON - + TUE TUE - + WED WED - + THU THU - + FRI FRI - + SAT SAT - + SUN SUN - + AM AM - + PM PM - + day Days - + hour Hours - + min Mins - + sec Secs @@ -4477,7 +4479,7 @@ ImgDlg - + Screenshot @@ -4528,182 +4530,182 @@ MainWindow - + Language Language - + Help Help - - + + Check for updates Check for updates - - + + firmware manager Firmware management - - - + + + Preferences - - + + Info - - - + + + About About - - + + Setting Setting - + Software Update Software Update - + CurVersion CurVersion - + Latest Version - + Update Log - + The current version is already the latest version The current version is already the latest version - + Video compress to - + Video transcoding to - + Text antialiasing - + TextAntilaTip (Note: this option is suitable for screens with small spacing and large size. If this option is selected, the shadow on the edge of the text will be smooth; it is not recommended for small size screens and single and double color screens.) - + Ultra-Long Screen Split - + Program Send Batch - + Hide Detect Button - + Show Alias in Terminal Control - + Show Lora Screen - + Download - + Fail Fail - + Cannot Save File - - - + + + Downloading updates Downloading updates - + Error Error - + Device Terminals - + Program Solutions - + Control Terminal Control - + Lora Screen - + Check card Detect - + Tip Info Tip Info - + RestoreLedCardIpByUdpTip This operation will fix all the control cards in the LAN that are not in the same network segment as the computer IP. Please be careful! @@ -4969,12 +4971,12 @@ PlayerBackSendThread - + Open file failed Open file failed - + Read file failed Read file failed @@ -5489,17 +5491,17 @@ SendProgThread - + Program is empty Program is empty - + Open file failed Open file failed - + Read file failed Read file failed diff --git a/LedOK/ts/app_ja.ts b/LedOK/ts/app_ja.ts index d950632..51223ff 100644 --- a/LedOK/ts/app_ja.ts +++ b/LedOK/ts/app_ja.ts @@ -56,225 +56,209 @@ CtrlAdvancedPanel - + Advanced 上級パラメータ - + Screen Width(pixel) 画面幅(ピクセル) - + Width - - + + Height 高さ - - - - + - - - - - - - - - - - - + Set セット - + Alias 別名 - + Web Server Address: Webサーバのアドレス: - + Setting - + Traffic screen settings - + Setting protocol ... - + Set protocol - + Getting protocol ... - + Get protocol - - + + Port ポート - + Firmware Management ファームウェア管理 - + update or uninstall 更新またはアンインストール - + Clear クリア - + Check Apk APKを検出 - + Uninstall アンマウント - + Running check 運転状態モニタ - + Restart 再起動 - + Check Log ログを見る - + Start LedSet4 - + Open ADB ADBデバッグ機能を開く - + Post Custom JSON Post Custom JSON - - - - - - + + + + + + Clear Program 番組をクリア - + Config の設定 - + Refresh 更新 - + Restore to default 標準の値を復元 - + Taxi top screen configuration タクシートップ画面の設定 - - + + Service:High Out of service:Low 客がいます:高 客がいません:低 - - + + Service:Low Out of service:High 客がいます:低 客がいません:高 - + Binding *.ic account indentity voucher テーピングtaxihubプラットフォームのユーザーID証明書 - + Rotate 回転 - + Realtime Address: - + Min brightness 最低輝度 - - - + Readback 読み戻し - + Send 送信 - + Max brightness 最高輝度 @@ -285,603 +269,612 @@ スクリーンのピクセルサイズを設定 - - - - + + + + Success 成功 - + Compant ID: 会社ID: - + Compant ID 会社ID - - + + SetOnlineAddr ウェブサーバのアドレスを設定 - - + + ClearRealtimeServer クリア - - + + SetRealtimeServer RealTimerアドレスを設定 - - + + RestartAndroid 再起動 - - + + running 実行中 - - + + no running 実行されていません - + Check Apk Version チェック APK バージョン - - + + UninstallSoftware アンマウント - - + + Check apk running status APK運転状態監視 - - + + OpenAdb ADBデバッグ機能を開く - + indentity voucher (*.ic) 身分証明書(*.ic) - - - - - + + + + + InvokeTaxiAppFunction 証明書をバインド - - + + AliIotSetting - + Software Version Info - + Package - + Version バージョン - - + + Package name is null パッケージ名は空です - + Clearing Program プログラムクリア - - + + Timeout タイムアウト - - - - + + + + Failed 失敗 - + Getting Log ログを取得中 - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + Error エラー - + Setting Timing Reboot スケジュール再起動を設定中 - + Set Timing Reboot スケジュール再起動の設定 - + Getting Timing Reboot スケジュール再起動を取得中 - + Get Timing Reboot スケジュール再起動の取得 - + totalResolution トータル解像度 - + strCurDisplayResolution 表示解像度 - - + + File not exist ファイルが存在しません - + Getting Player State プレーヤーの状態を取得しています - - - + + + Get Player State プレーヤーの状態の取得 - - + + Player State プレーヤーの状態 - - + + Cannot Open File ファイルのオープンに失敗しました - + Uploading アップロード中 - + Update 更新 - - + + Set Display Mode - - + + Get Display Mode - - + + Set Screen Offset - - + + Get Screen Offset - + + + Set Camera Distance + + + + Open file Failed ファイルのオープンに失敗しました - + Setting Wallpaper - - + + Set Wallpaper - + System Updating - - + + System Update - + Upload error アップロード エラー - + Upgrading アップグレード中 - + Getting MCU Version - - + + MCU Version - + Select File ファイルを選択 - + Setting player background - - + + Set player background - + Clearing player background - - - - - - - - + + + + + + + + Clear player background - - + + GetScreenRotation 画面回転の取得 - - - + + + Charging Station じゅうでんぐい - + Setting Baud Rate - + Set Baud Rate - + Getting Baud Rate - + Get Baud Rate - - + + Text is empty - - + + Json Parse Error - - + + Json isn't an Object - + Info 情報 - + Setting card work mode ... - + Set card work mode - + Getting card work mode ... - + Get card work mode - + Input password パスワードを入力 - + Change Password パスワード変更 - + Get Receive Card Num 受信カード数の取得 - + Resolution Config 解像度設定 - + Full screen フルスクリーン - + Part セクション - + Display Mode 表示モード - + Screen Position - + Offset - + + Camera Distance + + + + Min + + + + Hidden Settings - + Click right button to hide - + Get MCU Version - + Baud Config - + Model - + Uart - + Baud - - - - - - - + Get 得る - + Timing Reboot スケジュール再起動 - + Protocol プロトコル - + Server サービス - + Client クライアント - - + + SetScreenRotation 画面の回転を設定する - - + + SetMinBrightness 最小輝度値を設定します - - + + SetMaxBrightness 輝度最大値を設定 - - + + GetMinBrightness 輝度最小値を取得 - - + + GetMaxBrightness 輝度最大値を取得 - - + + Card work mode - - + + SetSpecialResolution 解像度を設定 - - + + GetSpecialResolution 読み込み解像度 - - + + CleanDisplayScreenSize デフォルトの解像度を復元 - - + + SetHighForBusy 客レベルの設定 - - + + GetStateForBusy ゲストレベルを取得 - - + + SetCardAlias エイリアスの設定 @@ -889,141 +882,143 @@ - - - - - - - - - - - - + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Tip 提示 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + NoSelectedController 先に大きいスクリーンを選んでください @@ -1038,7 +1033,7 @@ 正しい高さのピクセル値を入力してください - + Password is error パスワード @@ -2602,283 +2597,283 @@ CtrlVerifyClockPanel - + Verify Clock Configuration 検証クロック設定 - - + + Verify to Computer time コンピュータ時刻の確認 - + Cur time of controller ディスプレイの現在の時間 - - + + LAN LAN - - - - - - - - - - - + + + + + + + + + + + Tip 提示 - - - - - - - - - - - + + + + + + + + + + + NoSelectedController 先に大きいスクリーンを選んでください - + screenSwitch スクリーンの切り替え - - - + + + YES 開く - - - + + + NO オフ - + volume 音量 - + brightness 明るさ - - + + identificationCode 識別コード - - + + delaySync 時間オフセット - - + + msec ミリ秒 - - - - + + + + OtherSyncItem その他の同期項目 - - - - + + + + lastSynchronousTime 最終同期時間 - + checkNtpTime 同期間隔 - + Lora identity ロラの身分 - + (min/time) (分/回) - + identification code 識別コード - + Time offset(msec) タイム・オフセット( msec ) - + Brightness スクリーン輝度 - + Volume 体積 - + Screen on/off スクリーンスイッチ - - + + Slave から - + NTP Server NTPサーバ - - + + NTP Server address NTPサーバのアドレス - + TimeZone タイムゾーン - - - - - + + + + + Set セット - + Language: 言語: - + Enable Synchronous playing 画面を同期させる機能 - - + + Sync time interval 同期時間間隔 - - - - - + + + + + Readback 読み戻し - - + + Master - + Identification Code 識別コード - - + + SetNtpServer NTPサービスの設定 - - + + MasterSwitch メインデバイスの設定 - - + + SlaveSwitch スレーブデバイスとして設定 - + IsMasterSlave 主従の身分を読み返す - - + + GetControllerDate 日付時間の取得 - - + + SetingSyncMethod set syncメソッド - - + + SyncTime キャリブレーション時間 - - + + GetNtpServer NTPサービス情報を取得する - - + + GetingSyncMethod 同期方式を取得 - - + + SetTimezone タイムゾーンを設定 @@ -3081,10 +3076,10 @@ - - + + - + Success 成功 @@ -3101,44 +3096,44 @@ DevicePanel - + All トータル トータル - + Online オンライン中 - + Refresh 更新 更新 - - + + Specify IP 指定IP 指定IP - - - - + + + + Current Screen 現在のスクリーン - - + + none なし @@ -3175,8 +3170,8 @@ - - + + Player Version プレーヤーファームウェアバージョン @@ -3191,176 +3186,176 @@ 取得中 - + Specify IP list 指定 IP リスト - + Search 検索 - - + + Attention 注意 - - + + Please input IP address! IPアドレスを入力してください! - + Cancel キャンセル - + Screen ID ターミナルID - + Screen Size スクリーンサイズ - + Alias 別名 - - + + Screenshot スクリーンショット - - + + On オン - - + + Off オフ - + Brightness Adj. 輝度設定 - + Power Control 電源コントロール - + Net Config ネット配置 - + Time Sync タイマ配置 - + Video source ビデオソース - + Password ひそかに言う - + Advanced 上級パラメータ - + Volume Adj. 音量調節 - + Test テスト - - + + Multi screen operation マルチスクリーン操作 - - + + selected num 選択された数 - - + + Clear クリア - + More Info 詳細 - + Screen Brightness 画面の明るさ - + Power Status 画面切り替えステータス - + Security 暗号化 - + Getting 取得中 - - + + Error エラー - + Input password パスワードを入力 - + VerifyPassword パスワードの検証 - + Tip Info ヒント - + password is wrong パスワードエラー @@ -3463,256 +3458,263 @@ EBase - + Area 領域(px) - + X X - + Y Y - + W W - + H H - + Border ボーダー - - - - + + + + None なし - - + + Effect 特効 - + + Rotate 回転 - + + Blink きらめき - + Speed スピード - + Slow 遅い - + Moderate - + Fast 速い - + Play Time 再生時間 - + Start スタート - - - - + + + + s - + Duration 期間 - + Entry 入場する - - + + Random ランダム - - + + Expand horizontal 水平展開 - - + + Expand vertical 垂直展開 - - + + Expand to left 左に展開 - - + + Expand to top 上へ展開 - - + + Expand to right 右に展開 - - + + Expand to bottom 下へ展開 - + Zoom in 拡大 - + Zoom in from left-top 左上から拡大 - + Zoom in from right-top 右上から拡大 - + Zoom in from right-bottom 右下から拡大 - + Zoom in from left-bottom 左下から拡大 - - + + Rotate zoom 回転拡大 - - + + Rotate zoom reverse 逆回転拡大 - + Fade in フェードイン - - + + Move to left 左に移動 - - + + Move to top 上へ移動 - - + + Move to right 右に移動 - - + + Move to bottom 下へ移動 - - + + Dur 時間 - + Exit 出場する - + Zoom out 縮小 - + Zoom out to left-top 左上に縮小 - + Zoom out to right-top 右上に縮小 - + Zoom out to right-bottom 右下に縮小 - + Zoom out to left-bottom 左下に縮小 - + Fade out フェードアウト + + + Freq + + EDClock @@ -4083,22 +4085,22 @@ EPhoto - + Basic Properties 基本的な属性 - + File ファイル - + Select File ファイルを選択 - + Image Read Error 画像読み込みエラー @@ -4408,67 +4410,67 @@ GenTmpThread - + MON 月曜日 - + TUE 火曜日 - + WED 水曜日 - + THU 木曜日 - + FRI 金曜日 - + SAT 土曜日 - + SUN 日曜日 - + AM 午前 - + PM 午後 - + day - + hour - + min - + sec @@ -4476,7 +4478,7 @@ ImgDlg - + Screenshot スクリーンショット @@ -4527,182 +4529,182 @@ MainWindow - + Language 言語 - + Help ヘルプ - - + + Check for updates アップデートをチェック - - + + firmware manager ファームウェア管理 - - - + + + Preferences プリファレンス設定 - - + + Info 情報 - - - + + + About 当ソフトウェアについて - - + + Setting 設置 - + Software Update ソフトウェアの更新 - + CurVersion 現在のバージョン - + Latest Version 最新バージョン - + Update Log 更新ログ - + The current version is already the latest version すでに最新バージョンです。 - + Video compress to ビデオ圧縮 to - + Video transcoding to トランスコード to - + Text antialiasing 文字のアンチエイリアス - + TextAntilaTip (ヒント:小さい間隔の大きい画面に適しています。このオプションを有効にすると、文字の端に影がフォントのエッジの滑らかさに達します。小さいサイズのスクリーンと単色のスクリーンは使用を推奨しません) - + Ultra-Long Screen Split 超ロングスクリーン分割 - + Program Send Batch - + Hide Detect Button - + Show Alias in Terminal Control 端末制御に別名を表示 - + Show Lora Screen - + Download ダウンロード - + Fail 失敗 - + Cannot Save File ファイルの保存に失敗しました - - - + + + Downloading updates 更新をダウンロード - + Error エラー - + Device 端末管理 - + Program コンテンツ管理 - + Control ターミナルコントロール - + Lora Screen - + Check card ワンタッチ修復 - + Tip Info ヒント - + RestoreLedCardIpByUdpTip この操作はLAN内のすべてのコンピュータIPと同じセグメントにないコントロールカードを固定IPに修正します。慎重に操作してください。 @@ -4968,12 +4970,12 @@ PlayerBackSendThread - + Open file failed ファイルのオープンに失敗しました - + Read file failed ファイルの読み込みに失敗しました @@ -5488,17 +5490,17 @@ SendProgThread - + Program is empty プログラムは空です - + Open file failed ファイルのオープンに失敗しました - + Read file failed ファイルの読み込みに失敗しました diff --git a/LedOK/ts/app_pt.ts b/LedOK/ts/app_pt.ts index 8737ede..8f7fbb1 100644 --- a/LedOK/ts/app_pt.ts +++ b/LedOK/ts/app_pt.ts @@ -56,230 +56,214 @@ CtrlAdvancedPanel - + Advanced Avançado - + Screen Width(pixel) Largura do display(pixel) - + Width Largura - - + + Height Altura - - - - + - - - - - - - - - - - - + Set Config - + Alias Apelido - + Web Server Address: Endereço do Web Server: - + Setting - + Getting Baud Rate - + Traffic screen settings - + Setting protocol ... - + Set protocol - + Getting protocol ... - + Get protocol - - + + Port - + Model - + Realtime Address: Servidor de Realtime: - + update or uninstall - + Clear Limpar - + Check Apk Conferi Apk - + Uninstall Desinstalar - + Running check Conferir - + Restart Reiniciar - + Check Log Conferir Log - + Start LedSet4 Iniciar LedSet4.0 (Apk Display2.0 and higher) - + Open ADB Abri ADB debug - + Post Custom JSON Publicar JSON - - - - - - + + + + + + Clear Program Limpar Programa - + Config Config - + Refresh Atualizar - + Restore to default Restaurar padrão - + Taxi top screen configuration Taxi top screen configuration - - + + Service:High Out of service:Low Service:Altura fora do pardão:Diminuir - - + + Service:Low Out of service:High Service:Altura fora do padrão:Aumentar - + Binding *.ic account indentity voucher Vincular *.identificação da conta - + Rotate Rotacionar - + Min brightness Brilho minimo - - - + Readback Ler - + Send Enviar - + Max brightness Brilho Maximo @@ -290,598 +274,607 @@ Conf. tamanho do painel - - - - + + + + Success Successo - + Compant ID: ID da empresa - + Compant ID ID da empresa - - + + SetOnlineAddr Config o webserver - - + + ClearRealtimeServer Limpar - - + + SetRealtimeServer Config o server de realtimer - - + + RestartAndroid Reiniciar - - + + running Rodar - - + + no running não rodar - + Check Apk Version Checar a versão da APK - - + + UninstallSoftware Desistalar - - + + Check apk running status Checar status do APK - - + + OpenAdb Abrir o debug - + indentity voucher (*.ic) Comprovante de ID (*.ic) - - - - - + + + + + InvokeTaxiAppFunction Vincular certificado - - + + AliIotSetting - + Software Version Info - + Package - + Version - - + + Package name is null - + Clearing Program - - + + Timeout Tempo esgotado - - - - + + + + Failed Falhou - + Getting Log Obtendo log - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + Error Erro - + Getting Player State - - + + Player State - - - + + + Get Player State - + Setting Timing Reboot Config tempo de reiniciar - + Set Timing Reboot Config tempo de reiniciar - + Getting Timing Reboot Config tempo de reiniciar - + Get Timing Reboot Obtendo tempo de reinicialização - - + + Get Display Mode - - + + Set Screen Offset - + totalResolution Resolução total de FPGA - + strCurDisplayResolution Resolução do display - - + + File not exist Arquivo não encontrado - - + + Cannot Open File Não pode abrir arquivo - + Uploading Atualizando - + Update Atualizar - - + + Set Display Mode Config Display - - + + Get Screen Offset Obter display Offset - + + + Set Camera Distance + + + + Open file Failed Falaha em abrir - + Setting Wallpaper Config plano fundo - - + + Set Wallpaper Config plano fundo - + System Updating Atualizando - - + + System Update Sistema atualizado - + Upload error Erro ao atualizar - + Upgrading Actualização - + Getting MCU Version Obtendo versão - - + + MCU Version Verão de MCU - + Select File Arquivo selecionado - + Setting player background Config plano de fundo - - + + Set player background Config plano de fundo - + Clearing player background Apagar plano de fundo - - - - - - - - + + + + + + + + Clear player background Apagar plano de fundo - - + + GetScreenRotation Rotação do display - - - + + + Charging Station - + Setting Baud Rate Config Baud Rate - + Set Baud Rate Config Baud Rate - + Get Baud Rate Config Baud Rate - - + + Text is empty Testo em branco - - + + Json Parse Error Erro Json - - + + Json isn't an Object - + Info Info - + Setting card work mode ... - + Set card work mode - + Getting card work mode ... - + Get card work mode - + Input password Entre com a senha - + Change Password Troque a senha - + Get Receive Card Num Obter o número de cartões receptores - + Resolution Config Config de resolução - + Full screen Full screen - + Part Parte - + Display Mode Modo do display - + Screen Position Posição da tela - + Offset Offset - + + Camera Distance + + + + Min + Min + + + Hidden Settings Esconder Config - + Click right button to hide Clique com o botão direito para esconder - + Get MCU Version Versão de MCU - + Baud Config Config Baudrate - + Uart Uart - + Baud Baud - - - - - - - + Get Obter - + Firmware Management - + Timing Reboot Reiniciando - + Protocol Protocolo - + Server Servidor - + Client Cliente - - + + SetScreenRotation Config a rotação do display - - + + SetMinBrightness Config brilho minimo - - + + SetMaxBrightness Config brilho maximo - - + + GetMinBrightness Obter bilho - - + + GetMaxBrightness Obter brilho - - + + Card work mode - - + + SetSpecialResolution Config resolução especial - - + + GetSpecialResolution Ler resolução especial - - + + CleanDisplayScreenSize Restaurar resolução - - + + SetHighForBusy Set level for busy - - + + GetStateForBusy Get level of busy - - + + SetCardAlias Config apelido @@ -889,141 +882,143 @@ - - - - - - - - - - - - + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Tip Dica - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + NoSelectedController Selecionar o display @@ -1038,7 +1033,7 @@ Entre com a correta altura - + Password is error Senha esta errada @@ -2602,283 +2597,283 @@ CtrlVerifyClockPanel - + Verify Clock Configuration Verificar config de hora - - + + Verify to Computer time Verificar hora do PC - + Cur time of controller Hora atual do display - - + + LAN LAN - - - - - - - - - - - + + + + + + + + + + + Tip Dica - - - - - - - - - - - + + + + + + + + + + + NoSelectedController Selecione o display - + screenSwitch Switch Screen - - - + + + YES Ligado - - - + + + NO Fechado - + volume Volume - + brightness Brilho - - + + identificationCode Codigo ID - - + + delaySync Hora - - + + msec miliseg - - - - + + + + OtherSyncItem Outro sinc itens - - - - + + + + lastSynchronousTime Ultima atualização de hora - + checkNtpTime Intervalo de atualização - + Lora identity Lora ID - + (min/time) (min/hora) - + identification code Codigo ID - + Time offset(msec) Hora (miliseg) - + Brightness Brilho do display - + Volume Volume - + Screen on/off Liga/Desliga - - + + Slave Escravo - + NTP Server Servidor NTP - - + + NTP Server address Endereço server NTP - + TimeZone Fuso horário - - - - - + + + + + Set Config - + Language: Idioma: - + Enable Synchronous playing Habilitar sincronização de video - - + + Sync time interval Sincronizar intervalo de tempo - - - - - + + + + + Readback Ler - - + + Master Master - + Identification Code Codigo ID - - + + SetNtpServer Config server NTP - - + + MasterSwitch Selecionar como prioritario - - + + SlaveSwitch Selecionar como escravo - + IsMasterSlave Ler identificação - - + + GetControllerDate Obter data hora - - + + SetingSyncMethod Selecionar modo Sinc - - + + SyncTime Sinc hora - - + + GetNtpServer Obter server NTP - - + + GetingSyncMethod Lendo metodo de Sinc - - + + SetTimezone Config fuso horario @@ -3081,10 +3076,10 @@ - - + + - + Success Successo @@ -3101,45 +3096,45 @@ DevicePanel - + All ALL Todos - + Online Online Online - + Refresh Refresh Atializar - - + + Specify IP Specify IP Definir IP - - - - + + + + Current Screen Display atual - - + + none none @@ -3176,8 +3171,8 @@ - - + + Player Version Versão do player @@ -3192,176 +3187,176 @@ Obtendo info - + Specify IP list Definir IP - + Search Procurar - - + + Attention Atenção - - + + Please input IP address! Entre com endereço IP! - + Cancel Cancelar - + Screen ID ID do display - + Screen Size Tamanho do display - - + + Screenshot Capturar tela - - + + On Ligado - - + + Off Desligado - + Brightness Adj. Brilho Adj. - + Power Control Controle de energia - + Net Config Config de rede - + Time Sync Hora Sinc - + Video source Entrada video - + Password Senha - + Advanced Avançado - + Volume Adj. Volume - + Test Teste - - + + Multi screen operation Operação de multi display - - + + selected num Selecionar numero - - + + Clear Limpar - + More Info Mais Info - + Alias Apelido - + Screen Brightness Brilho do display - + Power Status Estatus de funcionam - + Security encriptação - + Getting Obter - - + + Error Erro - + Input password Introduzir a senha - + VerifyPassword Verifique a senha - + Tip Info Dica - + password is wrong A senha esta errada @@ -3464,256 +3459,263 @@ EBase - + Area Area(px) - + X X - + Y Y - + W L - + H A - + Border Borda - - - - + + + + None None - - + + Effect Efeito - + + Rotate Rotacionar - + + Blink Piscar - + Speed Velocidade - + Slow Devagar - + Moderate Moderado - + Fast Rapido - + Play Time - + Start - - - - + + + + s s - + Duration Duração - + Entry - - + + Random - - + + Expand horizontal - - + + Expand vertical - - + + Expand to left - - + + Expand to top - - + + Expand to right - - + + Expand to bottom - + Zoom in - + Zoom in from left-top - + Zoom in from right-top - + Zoom in from right-bottom - + Zoom in from left-bottom - - + + Rotate zoom - - + + Rotate zoom reverse - + Fade in - - + + Move to left - - + + Move to top - - + + Move to right - - + + Move to bottom Mover para baixo - - + + Dur - + Exit - + Zoom out - + Zoom out to left-top - + Zoom out to right-top - + Zoom out to right-bottom - + Zoom out to left-bottom - + Fade out + + + Freq + + EDClock @@ -4084,22 +4086,22 @@ EPhoto - + Basic Properties Propriedades - + File Arquivo - + Select File Selec Arquivo - + Image Read Error Erro ao ler iamgem @@ -4409,67 +4411,67 @@ GenTmpThread - + MON Seg - + TUE Ter - + WED Qua - + THU Qui - + FRI Sex - + SAT Sab - + SUN Dom - + AM AM - + PM PM - + day Dias - + hour Horas - + min Mins - + sec Segs @@ -4477,7 +4479,7 @@ ImgDlg - + Screenshot Captura da tela @@ -4528,182 +4530,182 @@ MainWindow - + Language Idioma - + Help Ajuda - - + + Check for updates Checar atualizações - - + + firmware manager Gerenciador Firmware - - - + + + Preferences Preferencias - - + + Info Info - - - + + + About Sobre - - + + Setting Config - + Software Update Atualização deSoftware - + CurVersion Versão atual - + Latest Version Ultima versão - + Update Log Atualização de log - + The current version is already the latest version The current version is already the latest version - + Video compress to - + Video transcoding to - + Text antialiasing - + TextAntilaTip (Info:Não indicado para pequenos displays - + Ultra-Long Screen Split Dividir o Ecrã Ultralongo - + Program Send Batch - + Hide Detect Button - + Show Alias in Terminal Control Mostrar os aliases no controlo do terminal - + Show Lora Screen - + Download - + Fail Falhou - + Cannot Save File Não pode salvar - - - + + + Downloading updates Atualizando - + Error Erro - + Device Painéis - + Program Editor - + Control Config - + Lora Screen Display LORA - + Check card Detectar - + Tip Info Info - + RestoreLedCardIpByUdpTip Esta operação irá fixar todos os painéis na LAN que não estão na mesma faixa de IP do seu PC. Atenção! @@ -4969,12 +4971,12 @@ PlayerBackSendThread - + Open file failed Abrir aqrquivo - + Read file failed Ler arquivo @@ -5489,17 +5491,17 @@ SendProgThread - + Program is empty Programa em branco - + Open file failed Falaha ao abrir - + Read file failed Ler arquivo com falha diff --git a/LedOK/ts/app_zh_CN.ts b/LedOK/ts/app_zh_CN.ts index 7abfde2..399cc8f 100644 --- a/LedOK/ts/app_zh_CN.ts +++ b/LedOK/ts/app_zh_CN.ts @@ -56,225 +56,209 @@ CtrlAdvancedPanel - + Advanced 高级设置 - + Screen Width(pixel) 屏幕宽(像素) - + Width - - + + Height - - - - + - - - - - - - - - - - - + Set 设置 - + Alias 别名 - + Web Server Address: Web服务器地址: - + Setting 正在设置 - + Traffic screen settings 交通屏设置 - + Setting protocol ... 正在设置协议 ... - + Set protocol 设置协议 - + Getting protocol ... 正在回读协议 ... - + Get protocol 回读协议 - - + + Port 端口 - + Realtime Address: Realtime 地址: - + Firmware Management 固件管理 - + update or uninstall 更新或卸载 - + Clear 清空 - + Check Apk 检查Apk - + Uninstall 卸载 - + Running check 运行状态监测 - + Restart 重启 - + Check Log 查看日志 - + Start LedSet4 使用 LedSet4.0 配置LED模组(Apk Display2.0以上版本) - + Open ADB 打开ADB调试功能 - + Post Custom JSON Post Custom JSON - - - - - - + + + + + + Clear Program 清除节目 - + Config 配置 - + Refresh 刷新 - + Restore to default 恢复默认值 - + Taxi top screen configuration 车顶有无客电平配置 - - + + Service:High Out of service:Low 有客:高电平 无客:低电平 - - + + Service:Low Out of service:High 有客:低电平 无客:高电平 - + Binding *.ic account indentity voucher 绑定taxihub平台用户身份凭证 - + Rotate 旋转 - + Min brightness 最低亮度 - - - + Readback 回读 - + Send 发送 - + Max brightness 最高亮度 @@ -285,603 +269,608 @@ 设置屏幕像素尺寸 - - - - + + + + Success 成功 - + Compant ID: 公司ID: - + Compant ID 公司ID - - + + SetOnlineAddr 设置web服务器地址 - - + + ClearRealtimeServer 清除 - - + + SetRealtimeServer 设置RealTimer地址 - - + + RestartAndroid 重启 - - + + running 正在运行 - - + + no running 没有运行 - + Check Apk Version 查询已安装apk版本 - - + + UninstallSoftware 卸载 - - + + Check apk running status 监测APK运行状态 - - + + OpenAdb 打开ADB调试功能 - + indentity voucher (*.ic) 身份凭证(*.ic) - - - - - + + + + + InvokeTaxiAppFunction 绑定证书 - - + + AliIotSetting - + Software Version Info 软件版本信息 - + Package 包名 - + Version 版本 - - + + Package name is null 包名为空 - + Clearing Program 正在清除节目 - - + + Timeout 超时 - - - - + + + + Failed 失败 - + Getting Log 正在获取日志 - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + Error 错误 - + Setting Timing Reboot 正在设置定时重启 - + Set Timing Reboot 设置定时重启 - + Getting Timing Reboot 正在获取定时重启 - + Get Timing Reboot 获取定时重启 - + totalResolution 包括行场数的分辨率 - + strCurDisplayResolution 当前显示屏分辨率 - - + + File not exist 文件不存在 - + Getting Player State 正在获取播放器状态 - - - + + + Get Player State 获取播放器状态 - - + + Player State 播放器状态 - - + + Cannot Open File 文件打开失败 - + Uploading 正在上传 - + Update 更新 - - + + Set Display Mode 设置显示模式 - - + + Get Display Mode 获取显示模式 - - + + Set Screen Offset 设置屏幕偏移 - - + + Get Screen Offset 获取屏幕偏移 - + + + Set Camera Distance + 设置摄像头距离 + + + Open file Failed 文件打开失败 - + Setting Wallpaper 正在设置系统桌面背景 - - + + Set Wallpaper 设置系统桌面背景 - + System Updating 系统升级中 - - + + System Update 系统升级 - + Upload error 上传错误 - + Upgrading 升级中 - + Getting MCU Version 正在获取单片机版本 - - + + MCU Version 单片机版本 - + Select File 选择文件 - + Setting player background 正在设置播放器背景 - - + + Set player background 设置播放器背景 - + Clearing player background 正在清除播放器背景 - - - - - - - - + + + + + + + + Clear player background 清除播放器背景 - - + + GetScreenRotation 获取屏幕旋转 - - - + + + Charging Station 充电桩 - + Setting Baud Rate 正在设置波特率 - + Set Baud Rate 设置波特率 - + Getting Baud Rate 正在获取波特率 - + Get Baud Rate 获取波特率 - - + + Text is empty 文本为空 - - + + Json Parse Error - - + + Json isn't an Object - + Info 信息 - + Setting card work mode ... 正在设置控制卡工作模式 ... - + Set card work mode 设置控制卡工作模式 - + Getting card work mode ... 正在回读控制卡工作模式 ... - + Get card work mode 回读控制卡工作模式 - + Input password 输入密码 - + Change Password 修改密码 - + Get Receive Card Num 获取接收卡数量 - + Resolution Config 分辨率配置 - + Full screen 全屏 - + Part 局部 - + Display Mode 显示模式 - + Screen Position 屏幕位置 - + Offset 偏移 - + + Camera Distance + 摄像头距离 + + + Hidden Settings 隐藏的设置 - + Click right button to hide 点击右键隐藏 - + Get MCU Version 获取单片机版本 - + Baud Config 波特率配置 - + Model 设备型号 - + Uart 串口节点 - + Baud 波特率 - - - - - - - + Get 获取 - + Timing Reboot 定时重启 - + Protocol 协议 - + Server 服务端 - + Client 客户端 - - + + SetScreenRotation 设置屏幕旋转 - - + + SetMinBrightness 设置最小的亮度值 - - + + SetMaxBrightness 设置亮度最大值 - - + + GetMinBrightness 获取亮度最小值 - - + + GetMaxBrightness 获取亮度最大值 - - + + Card work mode 控制卡工作模式 - - + + SetSpecialResolution 设置分辨率 - - + + GetSpecialResolution 读取分辨率 - - + + CleanDisplayScreenSize 恢复默认分辨率 - - + + SetHighForBusy 设置有无客电平 - - + + GetStateForBusy 获取有无客电平 - - + + SetCardAlias 设置别名 @@ -889,141 +878,143 @@ - - - - - - - - - - - - + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Tip 提示 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + NoSelectedController 请先选择大屏幕 @@ -1038,7 +1029,7 @@ 请输入正确的高度像素值 - + Password is error 密码错误 @@ -2602,283 +2593,283 @@ CtrlVerifyClockPanel - + Verify Clock Configuration 校准时间 - - + + Verify to Computer time 校准到计算机时间 - + Cur time of controller LED显示屏设备当前时间 - - + + LAN 局域网 - - - - - - - - - - - + + + + + + + + + + + Tip 提示 - - - - - - - - - - - + + + + + + + + + + + NoSelectedController 请先选择大屏幕 - + screenSwitch 开关屏 - - - + + + YES - - - + + + NO - + volume 音量 - + brightness 亮度 - - + + identificationCode 识别码 - - + + delaySync 时间偏移 - - + + msec 毫秒 - - - - + + + + OtherSyncItem 其他同步项 - - - - + + + + lastSynchronousTime 上次同步时间 - + checkNtpTime 同步间隔 - + Lora identity Lora身份 - + (min/time) (分钟/次) - + identification code 同步识别码 - + Time offset(msec) 时间偏移(毫秒) - + Brightness 屏体亮度 - + Volume 音量 - + Screen on/off 屏幕开关 - - + + Slave - + NTP Server NTP服务器 - - + + NTP Server address NTP服务器地址 - + TimeZone 时区 - - - - - + + + + + Set 设置 - + Language: 语言: - + Enable Synchronous playing 使能同步画面功能 - - + + Sync time interval 同步时间间隔 - - - - - + + + + + Readback 回读 - - + + Master - + Identification Code 识别码 - - + + SetNtpServer 设置NTP服务 - - + + MasterSwitch 设置为主设备 - - + + SlaveSwitch 设置为从设备 - + IsMasterSlave 回读主从身份 - - + + GetControllerDate 获取日期时间 - - + + SetingSyncMethod 设置同步方法 - - + + SyncTime 校准时间 - - + + GetNtpServer 获取NTP服务信息 - - + + GetingSyncMethod 获取同步方式 - - + + SetTimezone 设置时区 @@ -3081,10 +3072,10 @@ - - + + - + Success 成功 @@ -3101,44 +3092,44 @@ DevicePanel - + All 总数 总数 - + Online 在线 在线 - + Refresh 刷新 刷新 - - - - + + + + Current Screen 当前屏幕 - - + + none - - + + Specify IP 指定IP 指定IP @@ -3176,8 +3167,8 @@ - - + + Player Version 播放器固件版本 @@ -3192,176 +3183,176 @@ 正在获取 - + Specify IP list 指定IP列表 - + Search 搜索 - - + + Attention 注意 - - + + Please input IP address! 请输入IP地址! - + Cancel 取消 - + Screen ID 屏幕ID - + Screen Size 屏幕像素 - + Alias 别名 - - + + Screenshot 回读画面 - - + + On - - + + Off - + Brightness Adj. 亮度调节 - + Power Control 电源控制 - + Net Config 网络配置 - + Time Sync 对时管理 - + Video source 同异步配置 - + Password 设置密码 - + Advanced 高级设置 - + Volume Adj. 音量调节 - + Test 测试 - - + + Multi screen operation 多屏操作 - - + + selected num 选中数目 - - + + Clear 清空 - + More Info 更多信息 - + Screen Brightness 屏幕亮度 - + Power Status 屏幕开关状态 - + Security 加密 - + Getting 正在获取 - - + + Error 错误 - + Input password 输入密码 - + VerifyPassword 验证密码 - + Tip Info 提示 - + password is wrong 密码错误 @@ -3464,256 +3455,263 @@ EBase - + Area 区域(px) - + X - + Y - + W - + H - + Border 边框 - - - - + + + + None - - + + Effect 特效 - + + Rotate 旋转 - + + Blink 闪烁 - + Speed 速度 - + Slow - + Moderate - + Fast - + Play Time 播放时间 - + Start 开始 - - - - + + + + s - + Duration 时长 - + Entry 入场 - - + + Random 随机 - - + + Expand horizontal 水平展开 - - + + Expand vertical 垂直展开 - - + + Expand to left 向左展开 - - + + Expand to top 向上展开 - - + + Expand to right 向右展开 - - + + Expand to bottom 向下展开 - + Zoom in 放大 - + Zoom in from left-top 从左上角放大 - + Zoom in from right-top 从右上角放大 - + Zoom in from right-bottom 从右下角放大 - + Zoom in from left-bottom 从左下角放大 - - + + Rotate zoom 旋转放大 - - + + Rotate zoom reverse 反向旋转放大 - + Fade in 淡入 - - + + Move to left 向左移动 - - + + Move to top 向上移动 - - + + Move to right 向右移动 - - + + Move to bottom 向下移动 - - + + Dur 时长 - + Exit 出场 - + Zoom out 缩小 - + Zoom out to left-top 向左上角缩小 - + Zoom out to right-top 向右上角缩小 - + Zoom out to right-bottom 向右下角缩小 - + Zoom out to left-bottom 向左下角缩小 - + Fade out 淡出 + + + Freq + 频率 + EDClock @@ -4084,22 +4082,22 @@ EPhoto - + Basic Properties 基本属性 - + File 文件 - + Select File 选择文件 - + Image Read Error 图片读取错误 @@ -4409,67 +4407,67 @@ GenTmpThread - + MON 星期一 - + TUE 星期二 - + WED 星期三 - + THU 星期四 - + FRI 星期五 - + SAT 星期六 - + SUN 星期日 - + AM 上午 - + PM 下午 - + day - + hour - + min - + sec @@ -4477,7 +4475,7 @@ ImgDlg - + Screenshot 屏幕截图 @@ -4528,182 +4526,182 @@ MainWindow - + Language 语言 - + Help 帮助 - - + + Check for updates 检查更新 - - + + firmware manager 固件管理 - - - + + + Preferences 偏好设置 - - + + Info 信息 - - - + + + About 关于 - - + + Setting 设置 - + Software Update 软件更新 - + CurVersion 当前版本 - + Latest Version 最新版本 - + Update Log 更新日志 - + The current version is already the latest version 已经是最新的版本 - + Video compress to 视频压缩成 - + Video transcoding to 视频转码成 - + Text antialiasing 文字反锯齿 - + TextAntilaTip (提示:该选项适合小间距大尺寸的屏幕,选中此项,文字边缘会有暗影已达到字体边缘光滑的效果;小尺寸屏幕和单双色屏幕不建议使用) - + Ultra-Long Screen Split 超长屏打折 - + Program Send Batch 同时发送节目数量 - + Hide Detect Button 隐藏一键找卡 - + Show Alias in Terminal Control 在终端控制显示别名 - + Show Lora Screen 显示光影屏 - + Download 下载 - + Fail 失败 - + Cannot Save File 保存文件失败 - - - + + + Downloading updates 正在下载更新 - + Error 错误 - + Device 设备管理 - + Program 节目管理 - + Control 终端控制 - + Lora Screen 光影屏 - + Check card 一键找卡 - + Tip Info 提示 - + RestoreLedCardIpByUdpTip 该操作会把局域网内的所有与计算机IP不在同一网段的控制卡修复成固定IP,请谨慎操作! @@ -4969,12 +4967,12 @@ PlayerBackSendThread - + Open file failed 文件读取失败 - + Read file failed 文件读取失败 @@ -5489,17 +5487,17 @@ SendProgThread - + Program is empty 节目为空 - + Open file failed 文件打开失败 - + Read file failed 文件读取失败 diff --git a/LedOK/ts/app_zh_TW.ts b/LedOK/ts/app_zh_TW.ts index 633ac78..9c20867 100644 --- a/LedOK/ts/app_zh_TW.ts +++ b/LedOK/ts/app_zh_TW.ts @@ -56,225 +56,209 @@ CtrlAdvancedPanel - + Advanced 高級設定 - + Screen Width(pixel) 螢幕寬(點數) - + Width - - + + Height - - - - + - - - - - - - - - - - - + Set 設定 - + Alias 別名 - + Web Server Address: Web伺服器地址: - + Setting 正在設定 - + Traffic screen settings 交通屏設定 - + Setting protocol ... 正在設定協定 - + Set protocol 設定協定 - + Getting protocol ... 正在回讀協定 ... - + Get protocol 回讀協定 - - + + Port - + Realtime Address: Realtime 地址: - + Firmware Management 固件管理 - + update or uninstall 更新或卸載 - + Clear 清空 - + Check Apk 檢查Apk - + Uninstall 卸載 - + Running check 運行狀態監測 - + Restart 重啓 - + Check Log 查看日誌 - + Start LedSet4 - + Open ADB 打開ADB調試功能 - + Post Custom JSON Post Custom JSON - - - - - - + + + + + + Clear Program 清除節目 - + Config 配寘 - + Refresh 檢測 - + Restore to default 恢復預設值 - + Taxi top screen configuration 車頂有無客電平配寘 - - + + Service:High Out of service:Low 有客:高電平無客:低電平 - - + + Service:Low Out of service:High 有客:低電平 無客:高電平 - + Binding *.ic account indentity voucher 綁定taxihub平臺用戶身份憑證 - + Rotate 旋轉 - + Min brightness 最低亮度 - - - + Readback 回讀 - + Send 發送 - + Max brightness 最高亮度 @@ -285,661 +269,667 @@ 設定螢幕點數尺寸 - - - - + + + + Success 成功 - + Compant ID: 公司ID: - + Compant ID 公司ID - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + NoSelectedController 請先選擇大螢幕 - - + + SetOnlineAddr 設定web伺服器地址 - - + + ClearRealtimeServer 清除 - - + + SetRealtimeServer 設定RealTimer地址 - - + + RestartAndroid 重啓 - - + + running 正在運行 - - + + no running 沒有運行 - + Check Apk Version 査詢已安裝apk版本 - - + + UninstallSoftware 卸載 - - + + Check apk running status 監測APK運行狀態 - - + + OpenAdb 打開ADB調試功能 - + indentity voucher (*.ic) 身份憑證(*.ic) - - - - - + + + + + InvokeTaxiAppFunction 綁定證書 - - + + AliIotSetting - + Software Version Info 軟體版本資訊 - + Package 包名 - + Version 版本 - - + + Package name is null 包名為空 - + Clearing Program 正在清除節目 - - + + Timeout 超時 - - - - + + + + Failed 失敗 - + Getting Log 讀取日誌 - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + Error 錯誤 - + Setting Timing Reboot 正在設定定時重啓 - + Set Timing Reboot 設定定時重啓 - + Getting Timing Reboot 正在獲取定時重啓 - + Get Timing Reboot 獲取定時重啓 - + totalResolution 行数を含む解像度 - + strCurDisplayResolution 當前顯示分辯率 - - + + File not exist 檔案不存在 - + Getting Player State 正在獲取播放機狀態 - - - + + + Get Player State 獲取播放機狀態 - - + + Player State 播放機狀態 - - + + Cannot Open File 檔案打開失敗 - + Uploading 正在上傳 - + Update 更新 - - + + Set Display Mode 設定顯示模式 - - + + Get Display Mode 獲取顯示模式 - - + + Set Screen Offset 設定螢幕偏移 - - + + Get Screen Offset 獲取螢幕偏移 - + + + Set Camera Distance + 設定監視器距離 + + + Open file Failed 檔案打開失敗 - + Setting Wallpaper 正在設定系統桌面背景 - - + + Set Wallpaper 設定系統桌面背景 - + System Updating 系統升級中 - - + + System Update 系統升級 - + Upload error 上傳錯誤 - + Upgrading 陞級中 - + Getting MCU Version 正在獲取單片機版本 - - + + MCU Version 單片機版本 - + Select File 選擇檔案 - + Setting player background 正在設定播放機背景 - - + + Set player background 設定播放機背景 - + Clearing player background 正在清除播放機背景 - - - - - - - - + + + + + + + + Clear player background 清除播放機背景 - - + + GetScreenRotation 獲取荧幕旋轉 - - - + + + Charging Station 充電樁 - + Setting Baud Rate 正在設定串列傳輸速率 - + Set Baud Rate 設定串列傳輸速率 - + Getting Baud Rate 正在讀取串列傳輸速率 - + Get Baud Rate 讀取串列傳輸速率 - - + + Text is empty - - + + Json Parse Error - - + + Json isn't an Object - + Info 資訊 - + Setting card work mode ... 正在設定控制卡工作模式 ... - + Set card work mode 設定控制卡工作模式 - + Getting card work mode ... 正在回讀控制卡工作模式 ... - + Get card work mode 回讀控制卡工作模式 - + Input password 輸入密碼 - + Change Password 修改密碼 - + Get Receive Card Num 獲取接收卡數量 - + Resolution Config 分辯率配寘 - + Full screen 全屏 - + Part 局部 - + Display Mode 顯示模式 - + Screen Position 螢幕位置 - + Offset 偏移 - + + Camera Distance + 監視器距離 + + + Hidden Settings 隱藏的設定 - + Click right button to hide 點擊右鍵隱藏 - + Get MCU Version 獲取單片機版本 - + Baud Config 串列傳輸速率配寘 - + Model 設備型號 - + Uart 串口節點 - + Baud 串列傳輸速率 - - - - - - - + Get 讀取 - + Timing Reboot 定時重啓 - + Protocol 協定 - + Server 服務端 - + Client 用戶端 - - + + SetScreenRotation 設定螢幕旋轉 - - + + SetMinBrightness 設定最小的亮度值 - - + + SetMaxBrightness 設定亮度最大值 - - + + GetMinBrightness 獲取亮度最小值 - - + + GetMaxBrightness 獲取亮度最大值 - - + + Card work mode 控制卡工作模式 - - + + SetSpecialResolution 設定分辯率 - - + + GetSpecialResolution 讀取分辯率 - - + + CleanDisplayScreenSize 恢復默認分辯率 - - + + SetHighForBusy 設定有無客電平 - - + + GetStateForBusy 獲取有無客電平 - - + + SetCardAlias 設定別名 @@ -947,83 +937,84 @@ - - - - - - - - - - - - + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Tip 提示 @@ -1038,7 +1029,7 @@ 請輸入正確的高度點數值 - + Password is error 密碼錯誤 @@ -2607,283 +2598,283 @@ CtrlVerifyClockPanel - + Verify Clock Configuration 校準時間 - - + + Verify to Computer time 校準到電腦時間 - + Cur time of controller 顯示幕設備當前時間 - - + + LAN 局域網 - - - - - - - - - - - + + + + + + + + + + + Tip 提示 - - - - - - - - - - - + + + + + + + + + + + NoSelectedController 請先選擇大螢幕 - + screenSwitch 開關屏 - - - + + + YES - - - + + + NO - + volume 音量 - + brightness 亮度 - - + + identificationCode 識別碼 - - + + delaySync 時間偏移 - - + + msec 毫秒 - - - - + + + + OtherSyncItem 其他同步項 - - - - + + + + lastSynchronousTime 上次同步時間 - + checkNtpTime 同步間隔 - + Lora identity Lora身份 - + (min/time) (分鐘/次) - + identification code 同步识别码 - + Time offset(msec) 時間偏移(毫秒) - + Brightness 屏体亮度 - + Volume 音量 - + Screen on/off 螢幕開關 - - + + Slave - + NTP Server NTP服務器 - - + + NTP Server address NTP服務器地址 - + TimeZone 時區 - - - - - + + + + + Set 設定 - + Language: 語言: - + Enable Synchronous playing 使能同步画面功能 - - + + Sync time interval 同步時間間隔 - - - - - + + + + + Readback 回讀 - - + + Master - + Identification Code 識別碼 - - + + SetNtpServer 設定NTP服務 - - + + MasterSwitch 設定為主設備 - - + + SlaveSwitch 設定為從設備 - + IsMasterSlave 回讀主從身份 - - + + GetControllerDate 獲取日期時間 - - + + SetingSyncMethod 設定同步方法 - - + + SyncTime 校準時間 - - + + GetNtpServer 獲取NTP服務資訊 - - + + GetingSyncMethod 獲取同步方式 - - + + SetTimezone 設定時區 @@ -3086,10 +3077,10 @@ - - + + - + Success 成功 @@ -3106,43 +3097,43 @@ DevicePanel - + All 總數 - + Online 在线 線上 - + Refresh 檢測 - - + + Specify IP 指定IP 指定IP - - - - + + + + Current Screen 当前屏幕 - - + + none @@ -3179,8 +3170,8 @@ - - + + Player Version 播放機固件版本 @@ -3195,176 +3186,176 @@ 正在獲取 - + Specify IP list 指定IP清單 - + Search 蒐索 - - + + Attention 注意 - - + + Please input IP address! 請輸入IP地址! - + Cancel 取消 - + Screen ID 螢幕ID - + Screen Size 螢幕點數 - + Alias 別名 - - + + Screenshot 回讀畫面 - - + + On - - + + Off - + Brightness Adj. 亮度調節 - + Power Control 電源控制 - + Net Config 網絡配寘 - + Time Sync 對時管理 - + Video source 同異步配寘 - + Password 設寘密碼 - + Advanced 高級設定 - + Volume Adj. 音量調節 - + Test 測試 - - + + Multi screen operation 多屏操作 - - + + selected num 選中數目 - - + + Clear 清空 - + More Info 更多資訊 - + Screen Brightness 螢幕亮度 - + Power Status 螢幕開關狀態 - + Security 加密 - + Getting 正在獲取 - - + + Error 錯誤 - + Input password 輸入密碼 - + VerifyPassword 驗證密碼 - + Tip Info 提示 - + password is wrong 密碼錯誤 @@ -3467,256 +3458,263 @@ EBase - + Area 區域(px) - + X - + Y - + W - + H - + Border 邊框 - - - - + + + + None - - + + Effect 特效 - + + Rotate 旋轉 - + + Blink 閃爍 - + Speed 速度 - + Slow - + Moderate - + Fast - + Play Time 播放時間 - + Start 開始 - - - - + + + + s - + Duration 時長 - + Entry 入場 - - + + Random 隨機 - - + + Expand horizontal 水平展開 - - + + Expand vertical 垂直展開 - - + + Expand to left 向左展開 - - + + Expand to top 向上展開 - - + + Expand to right 向右展開 - - + + Expand to bottom 向下展開 - + Zoom in 放大 - + Zoom in from left-top 從左上角放大 - + Zoom in from right-top 從右上角放大 - + Zoom in from right-bottom 從右下角放大 - + Zoom in from left-bottom 從左下角放大 - - + + Rotate zoom 旋轉放大 - - + + Rotate zoom reverse 反向旋轉放大 - + Fade in 淡入 - - + + Move to left 向左移動 - - + + Move to top 向上移動 - - + + Move to right 向右移動 - - + + Move to bottom 向下移動 - - + + Dur 時長 - + Exit 出場 - + Zoom out 縮小 - + Zoom out to left-top 向左上角縮小 - + Zoom out to right-top 向右上角縮小 - + Zoom out to right-bottom 向右下角縮小 - + Zoom out to left-bottom 向左下角縮小 - + Fade out 淡出 + + + Freq + 頻率 + EDClock @@ -4087,22 +4085,22 @@ EPhoto - + Basic Properties 基本屬性 - + File 檔案 - + Select File 選擇檔案 - + Image Read Error 圖片讀取錯誤 @@ -4383,7 +4381,7 @@ Scale - + 拉伸 @@ -4412,67 +4410,67 @@ GenTmpThread - + MON 星期一 - + TUE 星期二 - + WED 星期三 - + THU 星期四 - + FRI 星期五 - + SAT 星期六 - + SUN 星期日 - + AM 上午 - + PM 下午 - + day - + hour - + min - + sec @@ -4480,7 +4478,7 @@ ImgDlg - + Screenshot 螢幕截圖 @@ -4531,182 +4529,182 @@ MainWindow - + Language 語言 - + Help 幫助 - - + + Check for updates 檢查更新 - - + + firmware manager 固件管理 - - - + + + Preferences 偏好設定 - - + + Info 資訊 - - - + + + About 關於 - - + + Setting 設定 - + Software Update 軟體更新 - + CurVersion 當前版本 - + Latest Version 最新版本 - + Update Log 更新日誌 - + The current version is already the latest version 已經是最新的版本 - + Video compress to 視頻壓縮成 - + Video transcoding to 視頻轉碼成 - + Text antialiasing 文字反鋸齒 - + TextAntilaTip (提示:該選項適合小間距大尺寸的螢幕,選中此項,文字邊緣會有暗影已達到字體邊緣光滑的效果;小尺寸螢幕和單雙色螢幕不建議使用) - + Ultra-Long Screen Split 超長屏打折 - + Program Send Batch 同時發送節目數量 - + Hide Detect Button 隱藏一鍵找卡 - + Show Alias in Terminal Control 在終端控制顯示別名 - + Show Lora Screen 顯示光影屏 - + Download 下載 - + Fail 失敗 - + Cannot Save File 保存檔案失敗 - - - + + + Downloading updates 下載更新 - + Error 錯誤 - + Device 設備管理 - + Program 節目管理 - + Control 終端控制 - + Lora Screen 光影屏 - + Check card 一鍵找卡 - + Tip Info 提示 - + RestoreLedCardIpByUdpTip 該操作會把局域網內的所有與電腦IP不在同一網段的控制卡修復成固定IP,請謹慎操作! @@ -4972,12 +4970,12 @@ PlayerBackSendThread - + Open file failed 檔案打開失敗 - + Read file failed 檔案讀取失敗 @@ -5492,17 +5490,17 @@ SendProgThread - + Program is empty 節目為空 - + Open file failed 檔案打開失敗 - + Read file failed 檔案讀取失敗