From 0505417247147077b633b561ee02e2504c2addba Mon Sep 17 00:00:00 2001 From: Blu3train Date: Tue, 29 Aug 2023 23:31:00 +0200 Subject: [PATCH] Limit string length option --- GUI/mainwindow.cpp | 3 +++ host/textthread.cpp | 3 ++- host/textthread.h | 1 + text.cpp | 2 ++ 4 files changed, 8 insertions(+), 1 deletion(-) diff --git a/GUI/mainwindow.cpp b/GUI/mainwindow.cpp index d95af3c..e30e4e0 100644 --- a/GUI/mainwindow.cpp +++ b/GUI/mainwindow.cpp @@ -64,6 +64,7 @@ extern const char* DEFAULT_CODEPAGE; extern const char* FLUSH_DELAY; extern const char* MAX_BUFFER_SIZE; extern const char* MAX_HISTORY_SIZE; +extern const char* LIMIT_STRING_LENGTH; extern const char* CONFIG_JP_LOCALE; extern const wchar_t* ABOUT; extern const wchar_t* CL_OPTIONS; @@ -503,6 +504,7 @@ namespace { TextThread::maxBufferSize, MAX_BUFFER_SIZE }, { TextThread::flushDelay, FLUSH_DELAY }, { TextThread::maxHistorySize, MAX_HISTORY_SIZE }, + { TextThread::limitStringLength, LIMIT_STRING_LENGTH }, { Host::defaultCodepage, DEFAULT_CODEPAGE }, }) { @@ -666,6 +668,7 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) TextThread::flushDelay = settings.value(FLUSH_DELAY, TextThread::flushDelay).toInt(); TextThread::maxBufferSize = settings.value(MAX_BUFFER_SIZE, TextThread::maxBufferSize).toInt(); TextThread::maxHistorySize = settings.value(MAX_HISTORY_SIZE, TextThread::maxHistorySize).toInt(); + TextThread::limitStringLength = settings.value(LIMIT_STRING_LENGTH, TextThread::limitStringLength).toInt(); Host::defaultCodepage = settings.value(DEFAULT_CODEPAGE, Host::defaultCodepage).toInt(); Host::Start(ProcessConnected, ProcessDisconnected, ThreadAdded, ThreadRemoved, SentenceReceived); diff --git a/host/textthread.cpp b/host/textthread.cpp index 593ab0f..fcba099 100644 --- a/host/textthread.cpp +++ b/host/textthread.cpp @@ -112,7 +112,8 @@ void TextThread::Flush() if (buffer.empty()) return; if (buffer.size() > maxBufferSize || GetTickCount64() - lastPushTime > flushDelay) { - AddSentence(std::move(buffer)); + if (limitStringLength==0 || buffer.length() name = {}); diff --git a/text.cpp b/text.cpp index cef6372..93a32b9 100644 --- a/text.cpp +++ b/text.cpp @@ -94,6 +94,7 @@ const char* DEFAULT_CODEPAGE = u8"Default codepage"; const char* FLUSH_DELAY = u8"Flush delay"; const char* MAX_BUFFER_SIZE = u8"Max buffer size"; const char* MAX_HISTORY_SIZE = u8"Max history size"; +const char* LIMIT_STRING_LENGTH = u8"Limit string length (0=Off)"; const char* CONFIG_JP_LOCALE = u8"Launch with JP locale"; const wchar_t* CONSOLE = L"Console"; const wchar_t* CLIPBOARD = L"Clipboard"; @@ -860,6 +861,7 @@ Per rimuovere un estenzione, selezionala e premi rimuovi)"; FLUSH_DELAY = u8"Ritardo flush"; MAX_BUFFER_SIZE = u8"Massima dimensione buffer"; MAX_HISTORY_SIZE = u8"Massima dimensione cronologia"; + LIMIT_STRING_LENGTH = u8"Limita lunghezza stringa (0=Off)"; CONFIG_JP_LOCALE = u8"Avvia con il JP locale"; CONSOLE = L"Console"; CLIPBOARD = L"Appunti";