summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorB. Stack <bgstack15@gmail.com>2022-03-09 14:43:11 +0000
committerB. Stack <bgstack15@gmail.com>2022-03-09 14:43:11 +0000
commit106716ec0daedf3a19bcc0036e81305968c543ee (patch)
tree9e6113f824015cdbf5c954f598d6b58f813a7984
parentMerge branch 'b11.17' into 'master' (diff)
parentadd upstream 11.18 (diff)
downloadFreeFileSync-106716ec0daedf3a19bcc0036e81305968c543ee.tar.gz
FreeFileSync-106716ec0daedf3a19bcc0036e81305968c543ee.tar.bz2
FreeFileSync-106716ec0daedf3a19bcc0036e81305968c543ee.zip
Merge branch 'b11.18' into 'master'11.18
add upstream 11.18 See merge request opensource-tracking/FreeFileSync!42
-rw-r--r--Changelog.txt11
-rw-r--r--FreeFileSync/Build/Resources/Languages.zipbin507762 -> 507823 bytes
-rw-r--r--FreeFileSync/Source/RealTimeSync/config.cpp2
-rw-r--r--FreeFileSync/Source/afs/abstract.cpp8
-rw-r--r--FreeFileSync/Source/afs/abstract.h4
-rw-r--r--FreeFileSync/Source/afs/ftp.cpp259
-rw-r--r--FreeFileSync/Source/afs/ftp.h1
-rw-r--r--FreeFileSync/Source/afs/gdrive.cpp472
-rw-r--r--FreeFileSync/Source/afs/gdrive.h12
-rw-r--r--FreeFileSync/Source/afs/sftp.cpp173
-rw-r--r--FreeFileSync/Source/afs/sftp.h3
-rw-r--r--FreeFileSync/Source/base/status_handler_impl.h2
-rw-r--r--FreeFileSync/Source/config.h2
-rw-r--r--FreeFileSync/Source/localization.cpp52
-rw-r--r--FreeFileSync/Source/localization.h2
-rw-r--r--FreeFileSync/Source/log_file.cpp40
-rw-r--r--FreeFileSync/Source/parse_lng.h10
-rw-r--r--FreeFileSync/Source/ui/batch_status_handler.cpp9
-rw-r--r--FreeFileSync/Source/ui/gui_generated.cpp6818
-rw-r--r--FreeFileSync/Source/ui/gui_generated.h2239
-rw-r--r--FreeFileSync/Source/ui/gui_status_handler.cpp22
-rw-r--r--FreeFileSync/Source/ui/gui_status_handler.h7
-rw-r--r--FreeFileSync/Source/ui/log_panel.cpp2
-rw-r--r--FreeFileSync/Source/ui/log_panel.h2
-rw-r--r--FreeFileSync/Source/ui/main_dlg.cpp199
-rw-r--r--FreeFileSync/Source/ui/main_dlg.h1
-rw-r--r--FreeFileSync/Source/ui/progress_indicator.cpp46
-rw-r--r--FreeFileSync/Source/ui/progress_indicator.h11
-rw-r--r--FreeFileSync/Source/ui/small_dlgs.cpp29
-rw-r--r--FreeFileSync/Source/version/version.h2
-rw-r--r--libcurl/curl_wrap.cpp16
-rw-r--r--libcurl/curl_wrap.h6
-rw-r--r--zen/http.cpp9
-rw-r--r--zenXml/zenxml/xml.h4
34 files changed, 5359 insertions, 5116 deletions
diff --git a/Changelog.txt b/Changelog.txt
index d65315c6..8badc140 100644
--- a/Changelog.txt
+++ b/Changelog.txt
@@ -1,3 +1,14 @@
+FreeFileSync 11.18 [2022-03-07]
+-------------------------------
+Add comparison time to sync log when using GUI
+Added user-configurable timeout for Google Drive
+Consider port when comparing (S)FTP paths for equality
+Fixed SFTP key file login error on OpenSSH_8.8p1
+Add error details for NSFileReadUnknownError (macOS)
+Disable new config button when already at default
+Use user language instead of region locale during installation
+
+
FreeFileSync 11.17 [2022-02-04]
-------------------------------
Show per-file progress in percent when copying large files
diff --git a/FreeFileSync/Build/Resources/Languages.zip b/FreeFileSync/Build/Resources/Languages.zip
index 487d8ba6..69f3e627 100644
--- a/FreeFileSync/Build/Resources/Languages.zip
+++ b/FreeFileSync/Build/Resources/Languages.zip
Binary files differ
diff --git a/FreeFileSync/Source/RealTimeSync/config.cpp b/FreeFileSync/Source/RealTimeSync/config.cpp
index c6121c90..7d5cf52f 100644
--- a/FreeFileSync/Source/RealTimeSync/config.cpp
+++ b/FreeFileSync/Source/RealTimeSync/config.cpp
@@ -176,7 +176,7 @@ wxLanguage rts::getProgramLanguage() //throw FileError
catch (FileError&)
{
if (!itemStillExists(filePath)) //throw FileError
- return fff::getSystemLanguage();
+ return fff::getDefaultLanguage();
throw;
}
diff --git a/FreeFileSync/Source/afs/abstract.cpp b/FreeFileSync/Source/afs/abstract.cpp
index a0d1ab2c..76ad0c6e 100644
--- a/FreeFileSync/Source/afs/abstract.cpp
+++ b/FreeFileSync/Source/afs/abstract.cpp
@@ -134,8 +134,8 @@ AFS::FileCopyResult AFS::copyFileAsStream(const AfsPath& afsSource, const Stream
if (totalBytesRead != makeSigned(attrSourceNew.fileSize))
throw FileError(replaceCpy(_("Cannot read file %x."), L"%x", fmtPath(getDisplayPath(afsSource))),
replaceCpy(replaceCpy(_("Unexpected size of data stream.\nExpected: %x bytes\nActual: %y bytes"),
- L"%x", numberTo<std::wstring>(attrSourceNew.fileSize)),
- L"%y", numberTo<std::wstring>(totalBytesRead)) + L" [notifyUnbufferedRead]");
+ L"%x", formatNumber(attrSourceNew.fileSize)),
+ L"%y", formatNumber(totalBytesRead)) + L" [notifyUnbufferedRead]");
const FinalizeResult finResult = streamOut->finalize(); //throw FileError, X
@@ -146,8 +146,8 @@ AFS::FileCopyResult AFS::copyFileAsStream(const AfsPath& afsSource, const Stream
if (totalBytesWritten != totalBytesRead)
throw FileError(replaceCpy(_("Cannot write file %x."), L"%x", fmtPath(getDisplayPath(apTarget))),
replaceCpy(replaceCpy(_("Unexpected size of data stream.\nExpected: %x bytes\nActual: %y bytes"),
- L"%x", numberTo<std::wstring>(totalBytesRead)),
- L"%y", numberTo<std::wstring>(totalBytesWritten)) + L" [notifyUnbufferedWrite]");
+ L"%x", formatNumber(totalBytesRead)),
+ L"%y", formatNumber(totalBytesWritten)) + L" [notifyUnbufferedWrite]");
FileCopyResult cpResult;
cpResult.fileSize = attrSourceNew.fileSize;
cpResult.modTime = attrSourceNew.modTime;
diff --git a/FreeFileSync/Source/afs/abstract.h b/FreeFileSync/Source/afs/abstract.h
index cd5aa1a6..0e2bdc88 100644
--- a/FreeFileSync/Source/afs/abstract.h
+++ b/FreeFileSync/Source/afs/abstract.h
@@ -478,8 +478,8 @@ AbstractFileSystem::FinalizeResult AbstractFileSystem::OutputStream::finalize()
if (bytesExpected_ && *bytesExpected_ != bytesWrittenTotal_)
throw FileError(replaceCpy(_("Cannot write file %x."), L"%x", fmtPath(getDisplayPath(filePath_))), //instead we should report the source file, but don't have it here...
replaceCpy(replaceCpy(_("Unexpected size of data stream.\nExpected: %x bytes\nActual: %y bytes"),
- L"%x", numberTo<std::wstring>(*bytesExpected_)),
- L"%y", numberTo<std::wstring>(bytesWrittenTotal_)));
+ L"%x", formatNumber(*bytesExpected_)),
+ L"%y", formatNumber(bytesWrittenTotal_)));
const FinalizeResult result = outStream_->finalize(); //throw FileError, X
finalizeSucceeded_ = true;
diff --git a/FreeFileSync/Source/afs/ftp.cpp b/FreeFileSync/Source/afs/ftp.cpp
index 9f17ccf0..4a05fb73 100644
--- a/FreeFileSync/Source/afs/ftp.cpp
+++ b/FreeFileSync/Source/afs/ftp.cpp
@@ -17,30 +17,11 @@
#include <glib.h>
#include <fcntl.h>
-warn_static("remove after test (including openssl-headers set for ftp.cpp")
-//#include <openssl/ssl.h> //SSL_OP_IGNORE_UNEXPECTED_EOF
-
-
using namespace zen;
using namespace fff;
using AFS = AbstractFileSystem;
-namespace fff
-{
-std::weak_ordering operator<=>(const FtpSessionId& lhs, const FtpSessionId& rhs)
-{
- //exactly the type of case insensitive comparison we need for server names!
- if (const std::weak_ordering cmp = compareAsciiNoCase(lhs.server, rhs.server); //https://docs.microsoft.com/en-us/windows/win32/api/ws2tcpip/nf-ws2tcpip-getaddrinfow#IDNs
- std::is_neq(cmp))
- return cmp;
-
- return std::tie(lhs.port, lhs.username, lhs.password, lhs.useTls) <=> //username, password: case sensitive!
- std::tie(rhs.port, rhs.username, rhs.password, rhs.useTls);
-}
-}
-
-
namespace
{
//Extensions to FTP: https://tools.ietf.org/html/rfc3659
@@ -61,6 +42,36 @@ enum class ServerEncoding
};
+inline
+int getEffectivePort(int portOption)
+{
+ if (portOption > 0)
+ return portOption;
+ return DEFAULT_PORT_FTP;
+}
+}
+
+
+namespace fff
+{
+std::weak_ordering operator<=>(const FtpSessionId& lhs, const FtpSessionId& rhs)
+{
+ //exactly the type of case insensitive comparison we need for server names!
+ if (const std::weak_ordering cmp = compareAsciiNoCase(lhs.server, rhs.server); //https://docs.microsoft.com/en-us/windows/win32/api/ws2tcpip/nf-ws2tcpip-getaddrinfow#IDNs
+ std::is_neq(cmp))
+ return cmp;
+
+ const int portLhs = getEffectivePort(lhs.port);
+ const int portRhs = getEffectivePort(rhs.port);
+
+ return std::tie(portLhs, lhs.username, lhs.password, lhs.useTls) <=> //username, password: case sensitive!
+ std::tie(portRhs, rhs.username, rhs.password, rhs.useTls);
+}
+}
+
+
+namespace
+{
Zstring concatenateFtpFolderPathPhrase(const FtpLogin& login, const AfsPath& afsPath); //noexcept
@@ -143,13 +154,20 @@ std::string utfToServerEncoding(const Zstring& str, ServerEncoding enc) //throw
std::wstring getCurlDisplayPath(const FtpSessionId& sessionId, const AfsPath& afsPath)
{
Zstring displayPath = Zstring(ftpPrefix) + Zstr("//");
+
if (!sessionId.username.empty()) //show username! consider AFS::compareDeviceSameAfsType()
displayPath += sessionId.username + Zstr('@');
+
displayPath += sessionId.server;
- const Zstring relPath = getServerRelPath(afsPath);
+ if (const int port = getEffectivePort(sessionId.port);
+ port != DEFAULT_PORT_FTP)
+ displayPath += Zstr(':') + numberTo<Zstring>(port);
+
+ const Zstring& relPath = getServerRelPath(afsPath);
if (relPath != Zstr("/"))
displayPath += relPath;
+
return utfTo<std::wstring>(displayPath);
}
@@ -280,12 +298,15 @@ public:
::curl_easy_cleanup(easyHandle_);
}
+ //set *before* calling any of the subsequent functions; see FtpSessionManager::access()
+ void setContextTimeout(const std::weak_ptr<int>& timeoutSec) { timeoutSec_ = timeoutSec; }
+
//returns server response (header data)
std::string perform(const AfsPath& afsPath, bool isDir, curl_ftpmethod pathMethod,
- const std::vector<CurlOption>& extraOptions, bool requiresUtf8, int timeoutSec) //throw SysError
+ const std::vector<CurlOption>& extraOptions, bool requiresUtf8) //throw SysError
{
if (requiresUtf8) //avoid endless recursion
- ensureUtf8(timeoutSec); //throw SysError
+ ensureUtf8(); //throw SysError
if (!easyHandle_)
{
@@ -313,7 +334,7 @@ public:
options.emplace_back(CURLOPT_HEADERFUNCTION, onHeaderReceived);
//lifetime: keep alive until after curl_easy_setopt() below
- const std::string curlPath = getCurlUrlPath(afsPath, isDir, timeoutSec); //throw SysError
+ const std::string curlPath = getCurlUrlPath(afsPath, isDir); //throw SysError
options.emplace_back(CURLOPT_URL, curlPath.c_str());
assert(pathMethod != CURLFTPMETHOD_MULTICWD); //too slow!
@@ -331,24 +352,28 @@ public:
options.emplace_back(CURLOPT_PASSWORD, password.c_str());
}
- if (sessionId_.port > 0)
- options.emplace_back(CURLOPT_PORT, static_cast<long>(sessionId_.port));
+ options.emplace_back(CURLOPT_PORT, getEffectivePort(sessionId_.port));
options.emplace_back(CURLOPT_NOSIGNAL, 1); //thread-safety: https://curl.haxx.se/libcurl/c/threadsafe.html
- options.emplace_back(CURLOPT_CONNECTTIMEOUT, timeoutSec);
+ const std::shared_ptr<int> timeoutSec = timeoutSec_.lock();
+ assert(timeoutSec);
+ if (!timeoutSec)
+ throw std::runtime_error(std::string(__FILE__) + '[' + numberTo<std::string>(__LINE__) + "] FtpSession: Timeout duration was not set.");
+
+ options.emplace_back(CURLOPT_CONNECTTIMEOUT, *timeoutSec);
//CURLOPT_TIMEOUT: "Since this puts a hard limit for how long time a request is allowed to take, it has limited use in dynamic use cases with varying transfer times."
- options.emplace_back(CURLOPT_LOW_SPEED_TIME, timeoutSec);
+ options.emplace_back(CURLOPT_LOW_SPEED_TIME, *timeoutSec);
options.emplace_back(CURLOPT_LOW_SPEED_LIMIT, 1); //[bytes], can't use "0" which means "inactive", so use some low number
//unlike CURLOPT_TIMEOUT, this one is NOT a limit on the total transfer time
- options.emplace_back(CURLOPT_FTP_RESPONSE_TIMEOUT, timeoutSec); //== alias of CURLOPT_SERVER_RESPONSE_TIMEOUT
+ options.emplace_back(CURLOPT_FTP_RESPONSE_TIMEOUT, *timeoutSec); //== alias of CURLOPT_SERVER_RESPONSE_TIMEOUT
//CURLOPT_ACCEPTTIMEOUT_MS? => only relevant for "active" FTP connections
//long-running file uploads require us to send keep-alives for the TCP control connection: https://freefilesync.org/forum/viewtopic.php?t=6928
- options.emplace_back(CURLOPT_TCP_KEEPALIVE, 1);
+ options.emplace_back(CURLOPT_TCP_KEEPALIVE, 1); //=> CURLOPT_TCP_KEEPIDLE (=delay) and CURLOPT_TCP_KEEPINTVL both default to 60 sec
std::optional<SysError> callbackException;
@@ -458,19 +483,6 @@ public:
{
options.emplace_back(CURLOPT_USE_SSL, CURLUSESSL_ALL); //require SSL for both control and data
options.emplace_back(CURLOPT_FTPSSLAUTH, CURLFTPAUTH_TLS); //try TLS first, then SSL (currently: CURLFTPAUTH_DEFAULT == CURLFTPAUTH_SSL)
-
-
- warn_static("remove after test")
-#if 0
- using SslContextCbType = CURLcode (*)(CURL* curl, SSL_CTX* ssl_ctx, void* userptr); //needed for cdecl function pointer cast
- SslContextCbType onSslContextWrapper = [](CURL* curl, SSL_CTX* ssl_ctx, void* userptr)
- {
- assert((::SSL_CTX_get_options(ssl_ctx) & SSL_OP_IGNORE_UNEXPECTED_EOF) == 0);
- ::SSL_CTX_set_options(ssl_ctx, SSL_OP_IGNORE_UNEXPECTED_EOF); //does not set, but *adds* options; no-fail
- return CURLE_OK;
- };
- options.emplace_back(CURLOPT_SSL_CTX_FUNCTION, onSslContextWrapper);
-#endif
}
//let's not hold our breath until Curl adds a reasonable PASV handling => patch libcurl accordingly!
@@ -519,7 +531,7 @@ public:
}
//returns server response (header data)
- std::string runSingleFtpCommand(const std::string& ftpCmd, bool requiresUtf8, int timeoutSec) //throw SysError
+ std::string runSingleFtpCommand(const std::string& ftpCmd, bool requiresUtf8) //throw SysError
{
curl_slist* quote = nullptr;
ZEN_ON_SCOPE_EXIT(::curl_slist_free_all(quote));
@@ -529,10 +541,10 @@ public:
{
{CURLOPT_NOBODY, 1L},
{CURLOPT_QUOTE, quote},
- }, requiresUtf8, timeoutSec); //throw SysError
+ }, requiresUtf8); //throw SysError
}
- void testConnection(int timeoutSec) //throw SysError
+ void testConnection() //throw SysError
{
/* https://en.wikipedia.org/wiki/List_of_FTP_commands
FEAT: are there servers that don't support this command? fuck, yes: "550 FEAT: Operation not permitted" => buggy server not granting access, despite support!
@@ -544,7 +556,7 @@ public:
... and it tells! FUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU https://freefilesync.org/forum/viewtopic.php?t=8041 */
//=> * to the rescue: as long as we get an FTP response - *any* FTP response (including 550) - the connection itself is fine!
- const std::string& featBuf = runSingleFtpCommand("*FEAT", false /*requiresUtf8*/, timeoutSec); //throw SysError
+ const std::string& featBuf = runSingleFtpCommand("*FEAT", false /*requiresUtf8*/); //throw SysError
for (const std::string& line : splitFtpResponse(featBuf))
if (startsWith(line, "211-") ||
@@ -557,7 +569,7 @@ public:
throw SysError(L"Unexpected FTP response. (" + utfTo<std::wstring>(featBuf) + L')');
}
- AfsPath getHomePath(int timeoutSec) //throw SysError
+ AfsPath getHomePath() //throw SysError
{
if (!homePathCached_)
homePathCached_ = [&]
@@ -578,7 +590,7 @@ public:
easyHandle_ = nullptr;
}
- const std::string& pwdBuf = runSingleFtpCommand("PWD", true /*requiresUtf8*/, timeoutSec); //throw SysError
+ const std::string& pwdBuf = runSingleFtpCommand("PWD", true /*requiresUtf8*/); //throw SysError
for (const std::string& line : splitFtpResponse(pwdBuf))
if (startsWith(line, "257 "))
@@ -597,7 +609,7 @@ public:
else
{
const std::string homePathRaw = replaceCpy(std::string{itBegin, it}, "\"\"", '"');
- const ServerEncoding enc = getServerEncoding(timeoutSec); //throw SysError
+ const ServerEncoding enc = getServerEncoding(); //throw SysError
const Zstring homePathUtf = serverToUtfEncoding(homePathRaw, enc); //throw SysError
return sanitizeDeviceRelativePath(homePathUtf);
}
@@ -609,13 +621,13 @@ public:
return *homePathCached_;
}
- void ensureBinaryMode(int timeoutSec) //throw SysError
+ void ensureBinaryMode() //throw SysError
{
if (std::optional<curl_socket_t> currentSocket = getActiveSocket()) //throw SysError
if (*currentSocket == binaryEnabledSocket_)
return;
- runSingleFtpCommand("TYPE I", false /*requiresUtf8*/, timeoutSec); //throw SysError
+ runSingleFtpCommand("TYPE I", false /*requiresUtf8*/); //throw SysError
//make sure our binary-enabled session is still there (== libcurl behaves as we expect)
std::optional<curl_socket_t> currentSocket = getActiveSocket(); //throw SysError
@@ -629,26 +641,26 @@ public:
}
//------------------------------------------------------------------------------------------------------------
- bool supportsMlsd(int timeoutSec) { return getFeatureSupport(&Features::mlsd, timeoutSec); } //
- bool supportsMfmt(int timeoutSec) { return getFeatureSupport(&Features::mfmt, timeoutSec); } //throw SysError
- bool supportsClnt(int timeoutSec) { return getFeatureSupport(&Features::clnt, timeoutSec); } //
- bool supportsUtf8(int timeoutSec) { return getFeatureSupport(&Features::utf8, timeoutSec); } //
+ bool supportsMlsd() { return getFeatureSupport(&Features::mlsd); } //
+ bool supportsMfmt() { return getFeatureSupport(&Features::mfmt); } //throw SysError
+ bool supportsClnt() { return getFeatureSupport(&Features::clnt); } //
+ bool supportsUtf8() { return getFeatureSupport(&Features::utf8); } //
- ServerEncoding getServerEncoding(int timeoutSec) { return supportsUtf8(timeoutSec) ? ServerEncoding::utf8 : ServerEncoding::ansi; } //throw SysError
+ ServerEncoding getServerEncoding() { return supportsUtf8() ? ServerEncoding::utf8 : ServerEncoding::ansi; } //throw SysError
bool isHealthy() const
{
return std::chrono::steady_clock::now() - lastSuccessfulUseTime_ <= FTP_SESSION_MAX_IDLE_TIME;
}
- std::string getServerPathInternal(const AfsPath& afsPath, int timeoutSec) //throw SysError
+ std::string getServerPathInternal(const AfsPath& afsPath) //throw SysError
{
const Zstring serverPath = getServerRelPath(afsPath);
if (afsPath.value.empty()) //endless recursion caveat!! getServerEncoding() transitively depends on getServerPathInternal()
return utfTo<std::string>(serverPath);
- const ServerEncoding encoding = getServerEncoding(timeoutSec); //throw SysError
+ const ServerEncoding encoding = getServerEncoding(); //throw SysError
return utfToServerEncoding(serverPath, encoding); //throw SysError
}
@@ -657,11 +669,11 @@ private:
FtpSession (const FtpSession&) = delete;
FtpSession& operator=(const FtpSession&) = delete;
- std::string getCurlUrlPath(const AfsPath& afsPath /*optional*/, bool isDir, int timeoutSec) //throw SysError
+ std::string getCurlUrlPath(const AfsPath& afsPath /*optional*/, bool isDir) //throw SysError
{
std::string curlRelPath; //libcurl expects encoded paths (except for '/' char!!!) => bug: https://github.com/curl/curl/pull/4423
- for (const std::string& comp : split(getServerPathInternal(afsPath, timeoutSec), '/', SplitOnEmpty::skip)) //throw SysError
+ for (const std::string& comp : split(getServerPathInternal(afsPath), '/', SplitOnEmpty::skip)) //throw SysError
{
char* compFmt = ::curl_easy_escape(easyHandle_, comp.c_str(), static_cast<int>(comp.size()));
if (!compFmt)
@@ -685,14 +697,14 @@ private:
return path;
}
- void ensureUtf8(int timeoutSec) //throw SysError
+ void ensureUtf8() //throw SysError
{
//"OPTS UTF8 ON" needs to be activated each time libcurl internally creates a new session
//hopyfully libcurl will offer a better solution: https://github.com/curl/curl/issues/1457
//Some RFC-2640-non-compliant servers require UTF8 to be explicitly enabled: https://wiki.filezilla-project.org/Character_Encoding#Conflicting_specification
//e.g. this one (Microsoft FTP Service): https://freefilesync.org/forum/viewtopic.php?t=4303
- if (supportsUtf8(timeoutSec)) //throw SysError
+ if (supportsUtf8()) //throw SysError
{
//[!] supportsUtf8() is buffered! => FTP session might not yet exist (or was closed by libcurl after a failure)
if (std::optional<curl_socket_t> currentSocket = getActiveSocket()) //throw SysError
@@ -700,13 +712,13 @@ private:
return;
//some servers even require "CLNT" before accepting "OPTS UTF8 ON": https://social.msdn.microsoft.com/Forums/en-US/d602574f-8a69-4d69-b337-52b6081902cf/problem-with-ftpwebrequestopts-utf8-on-501-please-clnt-first
- if (supportsClnt(timeoutSec)) //throw SysError
- runSingleFtpCommand("CLNT FreeFileSync", false /*requiresUtf8*/, timeoutSec); //throw SysError
+ if (supportsClnt()) //throw SysError
+ runSingleFtpCommand("CLNT FreeFileSync", false /*requiresUtf8*/); //throw SysError
//"prefix the command with an asterisk to make libcurl continue even if the command fails"
//-> ignore if server does not know this legacy command (but report all *other* issues; else getActiveSocket() below won't return value and hide real error!)
//"If an RFC 2640 compliant client sends OPTS UTF-8 ON, it has to use UTF-8 regardless whether OPTS UTF-8 ON succeeds or not. "
- runSingleFtpCommand("*OPTS UTF8 ON", false /*requiresUtf8*/, timeoutSec); //throw SysError
+ runSingleFtpCommand("*OPTS UTF8 ON", false /*requiresUtf8*/); //throw SysError
//make sure our unicode-enabled session is still there (== libcurl behaves as we expect)
std::optional<curl_socket_t> currentSocket = getActiveSocket(); //throw SysError
@@ -740,7 +752,7 @@ private:
};
using FeatureList = std::map<Zstring /*server name*/, std::optional<Features>, LessAsciiNoCase>;
- bool getFeatureSupport(bool Features::* status, int timeoutSec) //throw SysError
+ bool getFeatureSupport(bool Features::* status) //throw SysError
{
if (!featureCache_)
{
@@ -756,7 +768,7 @@ private:
if (!featureCache_)
{
//*: ignore error if server does not support/allow FEAT
- featureCache_ = parseFeatResponse(runSingleFtpCommand("*FEAT", false /*requiresUtf8*/, timeoutSec)); //throw SysError
+ featureCache_ = parseFeatResponse(runSingleFtpCommand("*FEAT", false /*requiresUtf8*/)); //throw SysError
//used by ensureUtf8()! => requiresUtf8 = false!!!
sf->access([&](FeatureList& feat) { feat[sessionId_.server] = featureCache_; });
@@ -822,6 +834,7 @@ private:
const std::shared_ptr<UniCounterCookie> libsshCurlUnifiedInitCookie_;
std::chrono::steady_clock::time_point lastSuccessfulUseTime_;
+ std::weak_ptr<int> timeoutSec_;
};
//================================================================================================================
@@ -858,6 +871,9 @@ public:
if (!ftpSession)
ftpSession = std::make_unique<FtpSession>(login); //throw SysError
+ const std::shared_ptr<int> timeoutSec = std::make_shared<int>(login.timeoutSec); //context option: valid only for duration of this call!
+ ftpSession->setContextTimeout(timeoutSec);
+
ZEN_ON_SCOPE_EXIT(
if (ftpSession->isHealthy()) //thread that created the "!isHealthy()" session is responsible for clean up (avoid hitting server connection limits!)
sessionStore.access([&](IdleFtpSessions& sessions) { sessions.push_back(std::move(ftpSession)); }); );
@@ -971,10 +987,10 @@ FtpItem getFtpSymlinkInfo(const FtpLogin& login, const AfsPath& linkPath) //thro
-> can't replace SIZE + MDTM with MLSD which doesn't follow symlinks! */
- session.ensureBinaryMode(login.timeoutSec); //throw SysError
+ session.ensureBinaryMode(); //throw SysError
//...or some server return ASCII size or fail with '550 SIZE not allowed in ASCII mode: https://freefilesync.org/forum/viewtopic.php?t=7669&start=30#p27742
- const std::string sizeBuf = session.runSingleFtpCommand("*SIZE " + session.getServerPathInternal(linkPath, login.timeoutSec),
- true /*requiresUtf8*/, login.timeoutSec); //throw SysError
+ const std::string sizeBuf = session.runSingleFtpCommand("*SIZE " + session.getServerPathInternal(linkPath),
+ true /*requiresUtf8*/); //throw SysError
//alternative: use libcurl + CURLINFO_CONTENT_LENGTH_DOWNLOAD_T? => nah, suprise (motherfucker)! libcurl adds needless "REST 0" command!
for (const std::string& line : splitFtpResponse(sizeBuf))
if (startsWith(line, "213 ")) // 213<space>[rubbish]<file size> according to libcurl
@@ -984,8 +1000,8 @@ FtpItem getFtpSymlinkInfo(const FtpLogin& login, const AfsPath& linkPath) //thro
auto it = std::find_if(line.rbegin(), line.rend(), [](const char c) { return !isDigit(c); });
output.fileSize = stringTo<uint64_t>(makeStringView(it.base(), line.end()));
- mdtmBuf = session.runSingleFtpCommand("MDTM " + session.getServerPathInternal(linkPath, login.timeoutSec),
- true /*requiresUtf8*/, login.timeoutSec); //throw SysError
+ mdtmBuf = session.runSingleFtpCommand("MDTM " + session.getServerPathInternal(linkPath),
+ true /*requiresUtf8*/); //throw SysError
return;
}
break;
@@ -1056,7 +1072,7 @@ public:
};
curl_ftpmethod pathMethod = CURLFTPMETHOD_SINGLECWD;
- if (session.supportsMlsd(login.timeoutSec)) //throw SysError
+ if (session.supportsMlsd()) //throw SysError
{
options.emplace_back(CURLOPT_CUSTOMREQUEST, "MLSD");
@@ -1084,10 +1100,10 @@ public:
//else: use "LIST" + CURLFTPMETHOD_SINGLECWD
//caveat: let's better not use LIST parameters: https://cr.yp.to/ftp/list.html
- session.perform(afsDirPath, true /*isDir*/, pathMethod, options, true /*requiresUtf8*/, login.timeoutSec); //throw SysError
+ session.perform(afsDirPath, true /*isDir*/, pathMethod, options, true /*requiresUtf8*/); //throw SysError
- const ServerEncoding encoding = session.getServerEncoding(login.timeoutSec); //throw SysError
- if (session.supportsMlsd(login.timeoutSec)) //throw SysError
+ const ServerEncoding encoding = session.getServerEncoding(); //throw SysError
+ if (session.supportsMlsd()) //throw SysError
output = parseMlsd(rawListing, encoding); //throw SysError
else
output = parseUnknown(rawListing, encoding); //throw SysError
@@ -1661,7 +1677,7 @@ void ftpFileDownload(const FtpLogin& login, const AfsPath& afsFilePath, //throw
{CURLOPT_WRITEDATA, &onBytesReceived},
{CURLOPT_WRITEFUNCTION, onBytesReceivedWrapper},
{CURLOPT_IGNORE_CONTENT_LENGTH, 1L}, //skip FTP "SIZE" command before download (=> download until actual EOF if file size changes)
- }, true /*requiresUtf8*/, login.timeoutSec); //throw SysError
+ }, true /*requiresUtf8*/); //throw SysError
});
}
catch (const SysError& e)
@@ -1730,7 +1746,7 @@ void ftpFileUpload(const FtpLogin& login, const AfsPath& afsFilePath, //throw Fi
//{CURLOPT_PREQUOTE, quote},
//{CURLOPT_POSTQUOTE, quote},
- }, true /*requiresUtf8*/, login.timeoutSec); //throw SysError
+ }, true /*requiresUtf8*/); //throw SysError
});
}
catch (const SysError& e)
@@ -1908,11 +1924,11 @@ private:
accessFtpSession(login_, [&](FtpSession& session) //throw SysError
{
- if (!session.supportsMfmt(login_.timeoutSec)) //throw SysError
+ if (!session.supportsMfmt()) //throw SysError
throw SysError(L"Server does not support the MFMT command.");
- session.runSingleFtpCommand("MFMT " + isoTime + ' ' + session.getServerPathInternal(afsPath_, login_.timeoutSec),
- true /*requiresUtf8*/, login_.timeoutSec); //throw SysError
+ session.runSingleFtpCommand("MFMT " + isoTime + ' ' + session.getServerPathInternal(afsPath_),
+ true /*requiresUtf8*/); //throw SysError
//not relevant for OutputStreamFtp, but: does MFMT follow symlinks? for Linux FTP server (using utime) it does
});
}
@@ -1959,14 +1975,16 @@ private:
std::is_neq(cmp))
return cmp;
- //port does NOT create a *different* data source!!! -> same thing for password!
-
- //username: usually *does* create different folder view for FTP
- return lhs.username <=> rhs.username; //case sensitive!
+ //port DOES create a *different* data source! https://freefilesync.org/forum/viewtopic.php?t=9047
+ const int portLhs = getEffectivePort(lhs.port);
+ const int portRhs = getEffectivePort(rhs.port);
+
+ //username: usually creates different folder view for FTP
+ return std::tie(portLhs, lhs.username) <=> //username: case sensitive!
+ std::tie(portRhs, rhs.username);
}
//----------------------------------------------------------------------------------------------------------------
-
ItemType getItemType(const AfsPath& afsPath) const override //throw FileError
{
//don't use MLST: broken for Pure-FTPd: https://freefilesync.org/forum/viewtopic.php?t=4287
@@ -1977,7 +1995,7 @@ private:
{
accessFtpSession(login_, [&](FtpSession& session) //throw SysError
{
- session.testConnection(login_.timeoutSec); //throw SysError
+ session.testConnection(); //throw SysError
});
return ItemType::folder;
}
@@ -2036,8 +2054,8 @@ private:
{
accessFtpSession(login_, [&](FtpSession& session) //throw SysError
{
- session.runSingleFtpCommand("MKD " + session.getServerPathInternal(afsPath, login_.timeoutSec),
- true /*requiresUtf8*/, login_.timeoutSec); //throw SysError
+ session.runSingleFtpCommand("MKD " + session.getServerPathInternal(afsPath),
+ true /*requiresUtf8*/); //throw SysError
});
}
catch (const SysError& e)
@@ -2052,8 +2070,8 @@ private:
{
accessFtpSession(login_, [&](FtpSession& session) //throw SysError
{
- session.runSingleFtpCommand("DELE " + session.getServerPathInternal(afsPath, login_.timeoutSec),
- true /*requiresUtf8*/, login_.timeoutSec); //throw SysError
+ session.runSingleFtpCommand("DELE " + session.getServerPathInternal(afsPath),
+ true /*requiresUtf8*/); //throw SysError
});
}
catch (const SysError& e)
@@ -2079,8 +2097,8 @@ private:
{
try
{
- session.runSingleFtpCommand("RMD " + session.getServerPathInternal(afsPath, login_.timeoutSec),
- true /*requiresUtf8*/, login_.timeoutSec); //throw SysError
+ session.runSingleFtpCommand("RMD " + session.getServerPathInternal(afsPath),
+ true /*requiresUtf8*/); //throw SysError
}
catch (const SysError& e) { delError = e; }
});
@@ -2205,14 +2223,14 @@ private:
{
curl_slist* quote = nullptr;
ZEN_ON_SCOPE_EXIT(::curl_slist_free_all(quote));
- quote = ::curl_slist_append(quote, ("RNFR " + session.getServerPathInternal(pathFrom, login_.timeoutSec)).c_str()); //throw SysError
- quote = ::curl_slist_append(quote, ("RNTO " + session.getServerPathInternal(pathTo.afsPath, login_.timeoutSec)).c_str()); //
+ quote = ::curl_slist_append(quote, ("RNFR " + session.getServerPathInternal(pathFrom )).c_str()); //throw SysError
+ quote = ::curl_slist_append(quote, ("RNTO " + session.getServerPathInternal(pathTo.afsPath)).c_str()); //
session.perform(AfsPath(), true /*isDir*/, CURLFTPMETHOD_NOCWD, //avoid needless CWDs
{
{CURLOPT_NOBODY, 1L},
{CURLOPT_QUOTE, quote},
- }, true /*requiresUtf8*/, login_.timeoutSec); //throw SysError
+ }, true /*requiresUtf8*/); //throw SysError
});
}
catch (const SysError& e)
@@ -2259,10 +2277,18 @@ private:
//expects "clean" login data
Zstring concatenateFtpFolderPathPhrase(const FtpLogin& login, const AfsPath& afsPath) //noexcept
{
+ Zstring username;
+ if (!login.username.empty())
+ username = encodeFtpUsername(login.username) + Zstr("@");
+
Zstring port;
if (login.port > 0)
port = Zstr(':') + numberTo<Zstring>(login.port);
+ Zstring relPath = getServerRelPath(afsPath);
+ if (relPath == Zstr("/"))
+ relPath.clear();
+
Zstring options;
if (login.timeoutSec != FtpLogin().timeoutSec)
options += Zstr("|timeout=") + numberTo<Zstring>(login.timeoutSec);
@@ -2273,11 +2299,7 @@ Zstring concatenateFtpFolderPathPhrase(const FtpLogin& login, const AfsPath& afs
if (!login.password.empty()) //password always last => visually truncated by folder input field
options += Zstr("|pass64=") + encodePasswordBase64(login.password);
- Zstring username;
- if (!login.username.empty())
- username = encodeFtpUsername(login.username) + Zstr("@");
-
- return Zstring(ftpPrefix) + Zstr("//") + username + login.server + port + getServerRelPath(afsPath) + options;
+ return Zstring(ftpPrefix) + Zstr("//") + username + login.server + port + relPath + options;
}
}
@@ -2304,7 +2326,7 @@ AfsPath fff::getFtpHomePath(const FtpLogin& login) //throw FileError
accessFtpSession(login, [&](FtpSession& session) //throw SysError
{
- homePath = session.getHomePath(login.timeoutSec); //throw SysError
+ homePath = session.getHomePath(); //throw SysError
});
return homePath;
}
@@ -2351,10 +2373,10 @@ bool fff::acceptsItemPathPhraseFtp(const Zstring& itemPathPhrase) //noexcept
}
-//syntax: ftp://[<user>[:<password>]@]<server>[:port]/<relative-path>[|option_name=value]
-//
-// e.g. ftp://user001:secretpassword@private.example.com:222/mydirectory/
-// ftp://user001@private.example.com/mydirectory|pass64=c2VjcmV0cGFzc3dvcmQ
+/* syntax: ftp://[<user>[:<password>]@]<server>[:port]/<relative-path>[|option_name=value]
+
+ e.g. ftp://user001:secretpassword@private.example.com:222/mydirectory/
+ ftp://user001@private.example.com/mydirectory|pass64=c2VjcmV0cGFzc3dvcmQ */
AbstractPath fff::createItemPathFtp(const Zstring& itemPathPhrase) //noexcept
{
Zstring pathPhrase = expandMacros(itemPathPhrase); //expand before trimming!
@@ -2368,8 +2390,8 @@ AbstractPath fff::createItemPathFtp(const Zstring& itemPathPhrase) //noexcept
const Zstring fullPathOpt = afterFirst(pathPhrase, Zstr('@'), IfNotFoundReturn::all);
FtpLogin login;
- login.username = decodeFtpUsername(beforeFirst(credentials, Zstr(':'), IfNotFoundReturn::all)); //support standard FTP syntax, even though ':'
- login.password = afterFirst(credentials, Zstr(':'), IfNotFoundReturn::none); //is not used by concatenateFtpFolderPathPhrase()!
+ login.username = decodeFtpUsername(beforeFirst(credentials, Zstr(':'), IfNotFoundReturn::all)); //support standard FTP syntax, even though
+ login.password = afterFirst(credentials, Zstr(':'), IfNotFoundReturn::none); //concatenateFtpFolderPathPhrase() uses "pass64" instead
const Zstring fullPath = beforeFirst(fullPathOpt, Zstr('|'), IfNotFoundReturn::all);
const Zstring options = afterFirst(fullPathOpt, Zstr('|'), IfNotFoundReturn::none);
@@ -2382,18 +2404,15 @@ AbstractPath fff::createItemPathFtp(const Zstring& itemPathPhrase) //noexcept
const Zstring port = afterLast(serverPort, Zstr(':'), IfNotFoundReturn::none);
login.port = stringTo<int>(port); //0 if empty
- if (!options.empty())
- {
- for (const Zstring& optPhrase : split(options, Zstr("|"), SplitOnEmpty::skip))
- if (startsWith(optPhrase, Zstr("timeout=")))
- login.timeoutSec = stringTo<int>(afterFirst(optPhrase, Zstr("="), IfNotFoundReturn::none));
- else if (optPhrase == Zstr("ssl"))
- login.useTls = true;
- else if (startsWith(optPhrase, Zstr("pass64=")))
- login.password = decodePasswordBase64(afterFirst(optPhrase, Zstr("="), IfNotFoundReturn::none));
- else
- assert(false);
- } //fix "-Wdangling-else"
+ for (const Zstring& optPhrase : split(options, Zstr("|"), SplitOnEmpty::skip))
+ if (startsWith(optPhrase, Zstr("timeout=")))
+ login.timeoutSec = stringTo<int>(afterFirst(optPhrase, Zstr("="), IfNotFoundReturn::none));
+ else if (optPhrase == Zstr("ssl"))
+ login.useTls = true;
+ else if (startsWith(optPhrase, Zstr("pass64=")))
+ login.password = decodePasswordBase64(afterFirst(optPhrase, Zstr("="), IfNotFoundReturn::none));
+ else
+ assert(false);
return AbstractPath(makeSharedRef<FtpFileSystem>(login), serverRelPath);
}
diff --git a/FreeFileSync/Source/afs/ftp.h b/FreeFileSync/Source/afs/ftp.h
index f0e8a142..9660bdf6 100644
--- a/FreeFileSync/Source/afs/ftp.h
+++ b/FreeFileSync/Source/afs/ftp.h
@@ -29,6 +29,7 @@ struct FtpSessionId
Zstring password;
bool useTls = false;
};
+const int DEFAULT_PORT_FTP = 21; //TLS enabled? => same for explicit FTP, but *implicit* FTP uses port 990
struct FtpLogin : FtpSessionId
{
diff --git a/FreeFileSync/Source/afs/gdrive.cpp b/FreeFileSync/Source/afs/gdrive.cpp
index b8d80dc7..e1b33519 100644
--- a/FreeFileSync/Source/afs/gdrive.cpp
+++ b/FreeFileSync/Source/afs/gdrive.cpp
@@ -72,7 +72,6 @@ namespace
//Google Drive REST API Reference: https://developers.google.com/drive/api/v3/reference
const Zchar* GOOGLE_REST_API_SERVER = Zstr("www.googleapis.com");
-constexpr std::chrono::seconds HTTP_SESSION_ACCESS_TIME_OUT(15);
constexpr std::chrono::seconds HTTP_SESSION_MAX_IDLE_TIME (20);
constexpr std::chrono::seconds HTTP_SESSION_CLEANUP_INTERVAL(4);
constexpr std::chrono::seconds GDRIVE_SYNC_INTERVAL (5);
@@ -106,28 +105,23 @@ std::weak_ordering operator<=>(const HttpSessionId& lhs, const HttpSessionId& rh
}
-//expects "clean" input data
-Zstring concatenateGdriveFolderPathPhrase(const GdrivePath& gdrivePath) //noexcept
-{
- Zstring pathPhrase = Zstring(gdrivePrefix) + FILE_NAME_SEPARATOR + utfTo<Zstring>(gdrivePath.gdriveLogin.email);
+Zstring concatenateGdriveFolderPathPhrase(const GdrivePath& gdrivePath); //noexcept
- if (!gdrivePath.gdriveLogin.sharedDriveName.empty())
- pathPhrase += Zstr(':') + gdrivePath.gdriveLogin.sharedDriveName;
- if (!gdrivePath.itemPath.value.empty())
- pathPhrase += FILE_NAME_SEPARATOR + gdrivePath.itemPath.value;
+//e.g.: gdrive:/john@gmail.com:SharedDrive/folder/file.txt
+std::wstring getGdriveDisplayPath(const GdrivePath& gdrivePath)
+{
+ Zstring displayPath = Zstring(gdrivePrefix) + FILE_NAME_SEPARATOR;
- if (endsWith(pathPhrase, Zstr(' '))) //path phrase concept must survive trimming!
- pathPhrase += FILE_NAME_SEPARATOR;
+ displayPath += utfTo<Zstring>(gdrivePath.gdriveLogin.email);
- return pathPhrase;
-}
+ if (!gdrivePath.gdriveLogin.sharedDriveName.empty())
+ displayPath += Zstr(':') + gdrivePath.gdriveLogin.sharedDriveName;
+ if (!gdrivePath.itemPath.value.empty())
+ displayPath += FILE_NAME_SEPARATOR + gdrivePath.itemPath.value;
-//e.g.: gdrive:/john@gmail.com:SharedDrive/folder/file.txt
-std::wstring getGdriveDisplayPath(const GdrivePath& gdrivePath)
-{
- return utfTo<std::wstring>(concatenateGdriveFolderPathPhrase(gdrivePath)); //noexcept
+ return utfTo<std::wstring>(displayPath);
}
@@ -232,7 +226,7 @@ private:
struct HttpInitSession
{
HttpInitSession(std::shared_ptr<UniCounterCookie> cook, const Zstring& server, const Zstring& caCertFilePath) :
- cookie(std::move(cook)), session(server, true /*useTls*/, caCertFilePath, HTTP_SESSION_ACCESS_TIME_OUT) {}
+ cookie(std::move(cook)), session(server, true /*useTls*/, caCertFilePath) {}
std::shared_ptr<UniCounterCookie> cookie;
HttpSession session; //life time must be subset of UniCounterCookie
@@ -305,38 +299,59 @@ private:
constinit Global<HttpSessionManager> globalHttpSessionManager; //caveat: life time must be subset of static UniInitializer!
//--------------------------------------------------------------------------------------
+struct GdriveAccess
+{
+ std::string token;
+ int timeoutSec = 0;
+};
//===========================================================================================================================
-//try to get a grip on this crazy REST API: - parameters are passed via query string, header, or body, using GET, POST, PUT, PATCH, DELETE, ... it's a dice roll
-HttpSession::Result gdriveHttpsRequest(const std::string& serverRelPath, //throw SysError, X
+HttpSession::Result googleHttpsRequest(const Zstring& serverName, const std::string& serverRelPath, //throw SysError, X
const std::vector<std::string>& extraHeaders,
- const std::vector<CurlOption>& extraOptions,
+ std::vector<CurlOption> extraOptions,
const std::function<void (std::span<const char> buf)>& writeResponse /*throw X*/, //optional
const std::function<size_t(std::span< char> buf)>& readRequest /*throw X*/, //optional; returning 0 signals EOF
- const std::function<void (const std::string_view& header)>& receiveHeader /*throw X*/) //optional
+ const std::function<void (const std::string_view& header)>& receiveHeader /*throw X*/, //optional
+ int timeoutSec)
{
+ //https://developers.google.com/drive/api/v3/performance
+ //"In order to receive a gzip-encoded response you must do two things: Set an Accept-Encoding header, ["gzip" automatically set by HttpSession]
+ extraOptions.emplace_back(CURLOPT_USERAGENT, "FreeFileSync (gzip)"); //and modify your user agent to contain the string gzip."
+
const std::shared_ptr<HttpSessionManager> mgr = globalHttpSessionManager.get();
if (!mgr)
- throw SysError(formatSystemError("gdriveHttpsRequest", L"", L"Function call not allowed during init/shutdown."));
+ throw SysError(formatSystemError("googleHttpsRequest", L"", L"Function call not allowed during init/shutdown."));
HttpSession::Result httpResult;
- mgr->access(HttpSessionId(GOOGLE_REST_API_SERVER), [&](HttpSession& session) //throw SysError
+ mgr->access(HttpSessionId(serverName), [&](HttpSession& session) //throw SysError
{
- std::vector<CurlOption> options =
- {
- //https://developers.google.com/drive/api/v3/performance
- //"In order to receive a gzip-encoded response you must do two things: Set an Accept-Encoding header, ["gzip" automatically set by HttpSession]
- {CURLOPT_USERAGENT, "FreeFileSync (gzip)"}, //and modify your user agent to contain the string gzip."
- };
- append(options, extraOptions);
-
- httpResult = session.perform(serverRelPath, extraHeaders, options, writeResponse, readRequest, receiveHeader); //throw SysError, X
+ httpResult = session.perform(serverRelPath, extraHeaders, extraOptions, writeResponse, readRequest, receiveHeader, timeoutSec); //throw SysError, X
});
return httpResult;
}
+
+//try to get a grip on this crazy REST API: - parameters are passed via query string, header, or body, using GET, POST, PUT, PATCH, DELETE, ... it's a dice roll
+HttpSession::Result gdriveHttpsRequest(const std::string& serverRelPath, //throw SysError, X
+ std::vector<std::string> extraHeaders,
+ const std::vector<CurlOption>& extraOptions,
+ const std::function<void (std::span<const char> buf)>& writeResponse /*throw X*/, //optional
+ const std::function<size_t(std::span< char> buf)>& readRequest /*throw X*/, //optional; returning 0 signals EOF
+ const std::function<void (const std::string_view& header)>& receiveHeader /*throw X*/, //optional
+ const GdriveAccess& access)
+{
+ extraHeaders.push_back("Authorization: Bearer " + access.token);
+
+ return googleHttpsRequest(GOOGLE_REST_API_SERVER, serverRelPath,
+ extraHeaders,
+ extraOptions,
+ writeResponse /*throw X*/,
+ readRequest /*throw X*/,
+ receiveHeader /*throw X*/, access.timeoutSec); //throw SysError, X
+}
+
//========================================================================================================
struct GdriveUser
@@ -344,7 +359,7 @@ struct GdriveUser
std::wstring displayName;
std::string email;
};
-GdriveUser getGdriveUser(const std::string& accessToken) //throw SysError
+GdriveUser getGdriveUser(const GdriveAccess& access) //throw SysError
{
//https://developers.google.com/drive/api/v3/reference/about
const std::string& queryParams = xWwwFormUrlEncode(
@@ -352,8 +367,8 @@ GdriveUser getGdriveUser(const std::string& accessToken) //throw SysError
{"fields", "user/displayName,user/emailAddress"},
});
std::string response;
- gdriveHttpsRequest("/drive/v3/about?" + queryParams, {"Authorization: Bearer " + accessToken}, {} /*extraOptions*/, //throw SysError
- [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); }, nullptr /*readRequest*/, nullptr /*receiveHeader*/);
+ gdriveHttpsRequest("/drive/v3/about?" + queryParams, {} /*extraHeaders*/, {} /*extraOptions*/,
+ [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); }, nullptr /*readRequest*/, nullptr /*receiveHeader*/, access); //throw SysError
JsonValue jresponse;
try { jresponse = parseJson(response); }
@@ -391,7 +406,7 @@ struct GdriveAccessInfo
GdriveUser userInfo;
};
-GdriveAccessInfo gdriveExchangeAuthCode(const GdriveAuthCode& authCode) //throw SysError
+GdriveAccessInfo gdriveExchangeAuthCode(const GdriveAuthCode& authCode, int timeoutSec) //throw SysError
{
//https://developers.google.com/identity/protocols/OAuth2InstalledApp#exchange-authorization-code
const std::string postBuf = xWwwFormUrlEncode(
@@ -404,8 +419,9 @@ GdriveAccessInfo gdriveExchangeAuthCode(const GdriveAuthCode& authCode) //throw
{"code_verifier", authCode.codeChallenge},
});
std::string response;
- gdriveHttpsRequest("/oauth2/v4/token", {} /*extraHeaders*/, {{CURLOPT_POSTFIELDS, postBuf.c_str()}}, //throw SysError
- [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); }, nullptr /*readRequest*/, nullptr /*receiveHeader*/);
+ googleHttpsRequest(Zstr("oauth2.googleapis.com"), "/token", {} /*extraHeaders*/, {{CURLOPT_POSTFIELDS, postBuf.c_str()}},
+ [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); },
+ nullptr /*readRequest*/, nullptr /*receiveHeader*/, timeoutSec); //throw SysError
JsonValue jresponse;
try { jresponse = parseJson(response); }
@@ -417,7 +433,7 @@ GdriveAccessInfo gdriveExchangeAuthCode(const GdriveAuthCode& authCode) //throw
if (!accessToken || !refreshToken || !expiresIn)
throw SysError(formatGdriveErrorRaw(response));
- const GdriveUser userInfo = getGdriveUser(*accessToken); //throw SysError
+ const GdriveUser userInfo = getGdriveUser({*accessToken, timeoutSec}); //throw SysError
return {{*accessToken, std::time(nullptr) + stringTo<time_t>(*expiresIn)}, *refreshToken, userInfo};
}
@@ -425,7 +441,7 @@ GdriveAccessInfo gdriveExchangeAuthCode(const GdriveAuthCode& authCode) //throw
//Astyle fucks up because of the raw string literal!
//*INDENT-OFF*
-GdriveAccessInfo gdriveAuthorizeAccess(const std::string& gdriveLoginHint, const std::function<void()>& updateGui /*throw X*/) //throw SysError, X
+GdriveAccessInfo gdriveAuthorizeAccess(const std::string& gdriveLoginHint, const std::function<void()>& updateGui /*throw X*/, int timeoutSec) //throw SysError, X
{
//spin up a web server to wait for the HTTP GET after Google authentication
::addrinfo hints = {};
@@ -623,7 +639,7 @@ GdriveAccessInfo gdriveAuthorizeAccess(const std::string& gdriveLoginHint, const
//do as many login-related tasks as possible while we have the browser as an error output device!
//see AFS::connectNetworkFolder() => errors will be lost after time out in dir_exist_async.h!
- authResult = gdriveExchangeAuthCode({code, redirectUrl, codeChallenge}); //throw SysError
+ authResult = gdriveExchangeAuthCode({code, redirectUrl, codeChallenge}, timeoutSec); //throw SysError
replace(htmlMsg, "TITLE_PLACEHOLDER", utfTo<std::string>(_("Authentication completed.")));
replace(htmlMsg, "MESSAGE_PLACEHOLDER", utfTo<std::string>(_("You may close this page now and continue with FreeFileSync.")));
}
@@ -656,7 +672,7 @@ GdriveAccessInfo gdriveAuthorizeAccess(const std::string& gdriveLoginHint, const
//*INDENT-ON*
-GdriveAccessToken gdriveRefreshAccess(const std::string& refreshToken) //throw SysError
+GdriveAccessToken gdriveRefreshAccess(const std::string& refreshToken, int timeoutSec) //throw SysError
{
//https://developers.google.com/identity/protocols/OAuth2InstalledApp#offline
const std::string postBuf = xWwwFormUrlEncode(
@@ -667,8 +683,9 @@ GdriveAccessToken gdriveRefreshAccess(const std::string& refreshToken) //throw S
{"grant_type", "refresh_token"},
});
std::string response;
- gdriveHttpsRequest("/oauth2/v4/token", {} /*extraHeaders*/, {{CURLOPT_POSTFIELDS, postBuf.c_str()}}, //throw SysError
- [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); }, nullptr /*readRequest*/, nullptr /*receiveHeader*/);
+ googleHttpsRequest(Zstr("oauth2.googleapis.com"), "/token", {} /*extraHeaders*/, {{CURLOPT_POSTFIELDS, postBuf.c_str()}},
+ [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); },
+ nullptr /*readRequest*/, nullptr /*receiveHeader*/, timeoutSec); //throw SysError
JsonValue jresponse;
try { jresponse = parseJson(response); }
@@ -683,33 +700,27 @@ GdriveAccessToken gdriveRefreshAccess(const std::string& refreshToken) //throw S
}
-void gdriveRevokeAccess(const std::string& accessToken) //throw SysError
+void gdriveRevokeAccess(const GdriveAccess& access) //throw SysError
{
//https://developers.google.com/identity/protocols/OAuth2InstalledApp#tokenrevoke
- const std::shared_ptr<HttpSessionManager> mgr = globalHttpSessionManager.get();
- if (!mgr)
- throw SysError(formatSystemError("gdriveRevokeAccess", L"", L"Function call not allowed during init/shutdown."));
-
- HttpSession::Result httpResult;
std::string response;
-
- mgr->access(HttpSessionId(Zstr("accounts.google.com")), [&](HttpSession& session) //throw SysError
- {
- httpResult = session.perform("/o/oauth2/revoke?token=" + accessToken, {"Content-Type: application/x-www-form-urlencoded"}, {} /*extraOptions*/,
- [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); }, nullptr /*readRequest*/, nullptr /*receiveHeader*/); //throw SysError
- });
+ const HttpSession::Result httpResult = googleHttpsRequest(Zstr("oauth2.googleapis.com"), "/revoke?token=" + access.token,
+ {"Content-Type: application/x-www-form-urlencoded"}, {{ CURLOPT_POSTFIELDS, ""}},
+ [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); },
+ nullptr /*readRequest*/, nullptr /*receiveHeader*/, access.timeoutSec); //throw SysError
if (httpResult.statusCode != 200)
throw SysError(formatGdriveErrorRaw(response));
}
-int64_t gdriveGetMyDriveFreeSpace(const std::string& accessToken) //throw SysError; returns < 0 if not available
+int64_t gdriveGetMyDriveFreeSpace(const GdriveAccess& access) //throw SysError; returns < 0 if not available
{
//https://developers.google.com/drive/api/v3/reference/about
std::string response;
- gdriveHttpsRequest("/drive/v3/about?fields=storageQuota", {"Authorization: Bearer " + accessToken}, {} /*extraOptions*/, //throw SysError
- [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); }, nullptr /*readRequest*/, nullptr /*receiveHeader*/);
+ gdriveHttpsRequest("/drive/v3/about?fields=storageQuota", {} /*extraHeaders*/, {} /*extraOptions*/,
+ [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); },
+ nullptr /*readRequest*/, nullptr /*receiveHeader*/, access); //throw SysError
JsonValue jresponse;
try { jresponse = parseJson(response); }
@@ -740,7 +751,7 @@ struct DriveDetails
std::string driveId;
Zstring driveName;
};
-std::vector<DriveDetails> getSharedDrives(const std::string& accessToken) //throw SysError
+std::vector<DriveDetails> getSharedDrives(const GdriveAccess& access) //throw SysError
{
//https://developers.google.com/drive/api/v3/reference/drives/list
std::vector<DriveDetails> sharedDrives;
@@ -757,8 +768,9 @@ std::vector<DriveDetails> getSharedDrives(const std::string& accessToken) //thro
queryParams += '&' + xWwwFormUrlEncode({{"pageToken", *nextPageToken}});
std::string response;
- gdriveHttpsRequest("/drive/v3/drives?" + queryParams, {"Authorization: Bearer " + accessToken}, {} /*extraOptions*/, //throw SysError
- [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); }, nullptr /*readRequest*/, nullptr /*receiveHeader*/);
+ gdriveHttpsRequest("/drive/v3/drives?" + queryParams, {} /*extraHeaders*/, {} /*extraOptions*/,
+ [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); },
+ nullptr /*readRequest*/, nullptr /*receiveHeader*/, access); //throw SysError
JsonValue jresponse;
try { jresponse = parseJson(response); }
@@ -871,7 +883,7 @@ GdriveItemDetails extractItemDetails(const JsonValue& jvalue) //throw SysError
}
-GdriveItemDetails getItemDetails(const std::string& itemId, const std::string& accessToken) //throw SysError
+GdriveItemDetails getItemDetails(const std::string& itemId, const GdriveAccess& access) //throw SysError
{
//https://developers.google.com/drive/api/v3/reference/files/get
const std::string& queryParams = xWwwFormUrlEncode(
@@ -880,8 +892,9 @@ GdriveItemDetails getItemDetails(const std::string& itemId, const std::string& a
{"supportsAllDrives", "true"},
});
std::string response;
- gdriveHttpsRequest("/drive/v3/files/" + itemId + '?' + queryParams, {"Authorization: Bearer " + accessToken}, {} /*extraOptions*/, //throw SysError
- [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); }, nullptr /*readRequest*/, nullptr /*receiveHeader*/);
+ gdriveHttpsRequest("/drive/v3/files/" + itemId + '?' + queryParams, {} /*extraHeaders*/, {} /*extraOptions*/,
+ [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); },
+ nullptr /*readRequest*/, nullptr /*receiveHeader*/, access); //throw SysError
try
{
const JsonValue jvalue = parseJson(response); //throw JsonParsingError
@@ -904,7 +917,7 @@ struct GdriveItem
std::string itemId;
GdriveItemDetails details;
};
-std::vector<GdriveItem> readFolderContent(const std::string& folderId, const std::string& accessToken) //throw SysError
+std::vector<GdriveItem> readFolderContent(const std::string& folderId, const GdriveAccess& access) //throw SysError
{
//https://developers.google.com/drive/api/v3/reference/files/list
std::vector<GdriveItem> childItems;
@@ -926,8 +939,9 @@ std::vector<GdriveItem> readFolderContent(const std::string& folderId, const std
queryParams += '&' + xWwwFormUrlEncode({{"pageToken", *nextPageToken}});
std::string response;
- gdriveHttpsRequest("/drive/v3/files?" + queryParams, {"Authorization: Bearer " + accessToken}, {} /*extraOptions*/, //throw SysError
- [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); }, nullptr /*readRequest*/, nullptr /*receiveHeader*/);
+ gdriveHttpsRequest("/drive/v3/files?" + queryParams, {} /*extraHeaders*/, {} /*extraOptions*/,
+ [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); },
+ nullptr /*readRequest*/, nullptr /*receiveHeader*/, access); //throw SysError
JsonValue jresponse;
try { jresponse = parseJson(response); }
@@ -973,7 +987,7 @@ struct ChangesDelta
std::vector<FileChange> fileChanges;
std::vector<DriveChange> driveChanges;
};
-ChangesDelta getChangesDelta(const std::string& sharedDriveId /*empty for "My Drive"*/, const std::string& startPageToken, const std::string& accessToken) //throw SysError
+ChangesDelta getChangesDelta(const std::string& sharedDriveId /*empty for "My Drive"*/, const std::string& startPageToken, const GdriveAccess& access) //throw SysError
{
//https://developers.google.com/drive/api/v3/reference/changes/list
ChangesDelta delta;
@@ -996,8 +1010,9 @@ ChangesDelta getChangesDelta(const std::string& sharedDriveId /*empty for "My Dr
queryParams += '&' + xWwwFormUrlEncode({{"driveId", sharedDriveId}}); //only allowed for shared drives!
std::string response;
- gdriveHttpsRequest("/drive/v3/changes?" + queryParams, {"Authorization: Bearer " + accessToken}, {} /*extraOptions*/, //throw SysError
- [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); }, nullptr /*readRequest*/, nullptr /*receiveHeader*/);
+ gdriveHttpsRequest("/drive/v3/changes?" + queryParams, {} /*extraHeaders*/, {} /*extraOptions*/,
+ [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); },
+ nullptr /*readRequest*/, nullptr /*receiveHeader*/, access); //throw SysError
JsonValue jresponse;
try { jresponse = parseJson(response); }
@@ -1078,7 +1093,7 @@ ChangesDelta getChangesDelta(const std::string& sharedDriveId /*empty for "My Dr
}
-std::string /*startPageToken*/ getChangesCurrentToken(const std::string& sharedDriveId /*empty for "My Drive"*/, const std::string& accessToken) //throw SysError
+std::string /*startPageToken*/ getChangesCurrentToken(const std::string& sharedDriveId /*empty for "My Drive"*/, const GdriveAccess& access) //throw SysError
{
//https://developers.google.com/drive/api/v3/reference/changes/getStartPageToken
std::string queryParams = xWwwFormUrlEncode(
@@ -1089,8 +1104,9 @@ std::string /*startPageToken*/ getChangesCurrentToken(const std::string& sharedD
queryParams += '&' + xWwwFormUrlEncode({{"driveId", sharedDriveId}}); //only allowed for shared drives!
std::string response;
- gdriveHttpsRequest("/drive/v3/changes/startPageToken?" + queryParams, {"Authorization: Bearer " + accessToken}, {} /*extraOptions*/, //throw SysError
- [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); }, nullptr /*readRequest*/, nullptr /*receiveHeader*/);
+ gdriveHttpsRequest("/drive/v3/changes/startPageToken?" + queryParams, {} /*extraHeaders*/, {} /*extraOptions*/,
+ [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); },
+ nullptr /*readRequest*/, nullptr /*receiveHeader*/, access); //throw SysError
JsonValue jresponse;
try { jresponse = parseJson(response); }
@@ -1106,7 +1122,7 @@ std::string /*startPageToken*/ getChangesCurrentToken(const std::string& sharedD
//- if item is a folder: deletes recursively!!!
//- even deletes a hardlink with multiple parents => use gdriveUnlinkParent() first
-void gdriveDeleteItem(const std::string& itemId, const std::string& accessToken) //throw SysError
+void gdriveDeleteItem(const std::string& itemId, const GdriveAccess& access) //throw SysError
{
//https://developers.google.com/drive/api/v3/reference/files/delete
const std::string& queryParams = xWwwFormUrlEncode(
@@ -1114,8 +1130,9 @@ void gdriveDeleteItem(const std::string& itemId, const std::string& accessToken)
{"supportsAllDrives", "true"},
});
std::string response;
- const HttpSession::Result httpResult = gdriveHttpsRequest("/drive/v3/files/" + itemId + '?' + queryParams, {"Authorization: Bearer " + accessToken}, //throw SysError
- {{CURLOPT_CUSTOMREQUEST, "DELETE"}}, [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); }, nullptr /*readRequest*/, nullptr /*receiveHeader*/);
+ const HttpSession::Result httpResult = gdriveHttpsRequest("/drive/v3/files/" + itemId + '?' + queryParams,
+ {} /*extraHeaders*/, {{CURLOPT_CUSTOMREQUEST, "DELETE"}}, [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); },
+ nullptr /*readRequest*/, nullptr /*receiveHeader*/, access); //throw SysError
if (response.empty() && httpResult.statusCode == 204)
return; //"If successful, this method returns an empty response body"
@@ -1125,7 +1142,7 @@ void gdriveDeleteItem(const std::string& itemId, const std::string& accessToken)
//item is NOT deleted when last parent is removed: it is just not accessible via the "My Drive" hierarchy but still adds to quota! => use for hard links only!
-void gdriveUnlinkParent(const std::string& itemId, const std::string& parentId, const std::string& accessToken) //throw SysError
+void gdriveUnlinkParent(const std::string& itemId, const std::string& parentId, const GdriveAccess& access) //throw SysError
{
//https://developers.google.com/drive/api/v3/reference/files/update
const std::string& queryParams = xWwwFormUrlEncode(
@@ -1135,10 +1152,9 @@ void gdriveUnlinkParent(const std::string& itemId, const std::string& parentId,
{"fields", "id,parents"}, //for test if operation was successful
});
std::string response;
- const HttpSession::Result httpResult = gdriveHttpsRequest("/drive/v3/files/" + itemId + '?' + queryParams, //throw SysError
- {"Authorization: Bearer " + accessToken, "Content-Type: application/json; charset=UTF-8"},
- {{CURLOPT_CUSTOMREQUEST, "PATCH"}, { CURLOPT_POSTFIELDS, "{}"}},
- [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); }, nullptr /*readRequest*/, nullptr /*receiveHeader*/);
+ const HttpSession::Result httpResult = gdriveHttpsRequest("/drive/v3/files/" + itemId + '?' + queryParams,
+ {"Content-Type: application/json; charset=UTF-8"}, {{CURLOPT_CUSTOMREQUEST, "PATCH"}, { CURLOPT_POSTFIELDS, "{}"}},
+ [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); }, nullptr /*readRequest*/, nullptr /*receiveHeader*/, access); //throw SysError
if (response.empty() && httpResult.statusCode == 204)
return; //removing last parent of item not owned by us returns "204 No Content" (instead of 200 + file body)
@@ -1162,7 +1178,7 @@ void gdriveUnlinkParent(const std::string& itemId, const std::string& parentId,
//- if item is a folder: trashes recursively!!!
//- a hardlink with multiple parents will NOT be accessible anymore via any of its path aliases!
-void gdriveMoveToTrash(const std::string& itemId, const std::string& accessToken) //throw SysError
+void gdriveMoveToTrash(const std::string& itemId, const GdriveAccess& access) //throw SysError
{
//https://developers.google.com/drive/api/v3/reference/files/update
const std::string& queryParams = xWwwFormUrlEncode(
@@ -1173,9 +1189,9 @@ void gdriveMoveToTrash(const std::string& itemId, const std::string& accessToken
const std::string postBuf = R"({ "trashed": true })";
std::string response;
- gdriveHttpsRequest("/drive/v3/files/" + itemId + '?' + queryParams, {"Authorization: Bearer " + accessToken, "Content-Type: application/json; charset=UTF-8"}, //throw SysError
- {{CURLOPT_CUSTOMREQUEST, "PATCH"}, {CURLOPT_POSTFIELDS, postBuf.c_str()}},
- [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); }, nullptr /*readRequest*/, nullptr /*receiveHeader*/);
+ gdriveHttpsRequest("/drive/v3/files/" + itemId + '?' + queryParams,
+ {"Content-Type: application/json; charset=UTF-8"}, {{CURLOPT_CUSTOMREQUEST, "PATCH"}, {CURLOPT_POSTFIELDS, postBuf.c_str()}},
+ [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); }, nullptr /*readRequest*/, nullptr /*receiveHeader*/, access); //throw SysError
JsonValue jresponse;
try { jresponse = parseJson(response); /*throw JsonParsingError*/ }
@@ -1188,7 +1204,7 @@ void gdriveMoveToTrash(const std::string& itemId, const std::string& accessToken
//folder name already existing? will (happily) create duplicate => caller must check!
-std::string /*folderId*/ gdriveCreateFolderPlain(const Zstring& folderName, const std::string& parentId, const std::string& accessToken) //throw SysError
+std::string /*folderId*/ gdriveCreateFolderPlain(const Zstring& folderName, const std::string& parentId, const GdriveAccess& access) //throw SysError
{
//https://developers.google.com/drive/api/v3/folder#creating_a_folder
const std::string& queryParams = xWwwFormUrlEncode(
@@ -1203,9 +1219,9 @@ std::string /*folderId*/ gdriveCreateFolderPlain(const Zstring& folderName, cons
const std::string& postBuf = serializeJson(postParams, "" /*lineBreak*/, "" /*indent*/);
std::string response;
- gdriveHttpsRequest("/drive/v3/files?" + queryParams, {"Authorization: Bearer " + accessToken, "Content-Type: application/json; charset=UTF-8"},
- {{CURLOPT_POSTFIELDS, postBuf.c_str()}},
- [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); }, nullptr /*readRequest*/, nullptr /*receiveHeader*/); //throw SysError
+ gdriveHttpsRequest("/drive/v3/files?" + queryParams,
+ {"Content-Type: application/json; charset=UTF-8"}, {{CURLOPT_POSTFIELDS, postBuf.c_str()}},
+ [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); }, nullptr /*readRequest*/, nullptr /*receiveHeader*/, access); //throw SysError
JsonValue jresponse;
try { jresponse = parseJson(response); }
@@ -1219,7 +1235,7 @@ std::string /*folderId*/ gdriveCreateFolderPlain(const Zstring& folderName, cons
//shortcut name already existing? will (happily) create duplicate => caller must check!
-std::string /*shortcutId*/ gdriveCreateShortcutPlain(const Zstring& shortcutName, const std::string& parentId, const std::string& targetId, const std::string& accessToken) //throw SysError
+std::string /*shortcutId*/ gdriveCreateShortcutPlain(const Zstring& shortcutName, const std::string& parentId, const std::string& targetId, const GdriveAccess& access) //throw SysError
{
/* https://developers.google.com/drive/api/v3/shortcuts
- targetMimeType is determined automatically (ignored if passed)
@@ -1240,9 +1256,9 @@ std::string /*shortcutId*/ gdriveCreateShortcutPlain(const Zstring& shortcutName
const std::string& postBuf = serializeJson(postParams, "" /*lineBreak*/, "" /*indent*/);
std::string response;
- gdriveHttpsRequest("/drive/v3/files?" + queryParams, {"Authorization: Bearer " + accessToken, "Content-Type: application/json; charset=UTF-8"},
- {{CURLOPT_POSTFIELDS, postBuf.c_str()}},
- [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); }, nullptr /*readRequest*/, nullptr /*receiveHeader*/); //throw SysError
+ gdriveHttpsRequest("/drive/v3/files?" + queryParams, {"Content-Type: application/json; charset=UTF-8"},
+ {{CURLOPT_POSTFIELDS, postBuf.c_str()}}, [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); },
+ nullptr /*readRequest*/, nullptr /*receiveHeader*/, access); //throw SysError
JsonValue jresponse;
try { jresponse = parseJson(response); }
@@ -1257,7 +1273,7 @@ std::string /*shortcutId*/ gdriveCreateShortcutPlain(const Zstring& shortcutName
//target name already existing? will (happily) create duplicate items => caller must check!
//can copy files + shortcuts (but fails for folders) + Google-specific file types (.gdoc, .gsheet, .gslides)
-std::string /*fileId*/ gdriveCopyFile(const std::string& fileId, const std::string& parentIdTo, const Zstring& newName, time_t newModTime, const std::string& accessToken) //throw SysError
+std::string /*fileId*/ gdriveCopyFile(const std::string& fileId, const std::string& parentIdTo, const Zstring& newName, time_t newModTime, const GdriveAccess& access) //throw SysError
{
//https://developers.google.com/drive/api/v3/reference/files/copy
const std::string queryParams = xWwwFormUrlEncode(
@@ -1280,9 +1296,10 @@ std::string /*fileId*/ gdriveCopyFile(const std::string& fileId, const std::stri
const std::string& postBuf = serializeJson(postParams, "" /*lineBreak*/, "" /*indent*/);
std::string response;
- gdriveHttpsRequest("/drive/v3/files/" + fileId + "/copy?" + queryParams, //throw SysError
- {"Authorization: Bearer " + accessToken, "Content-Type: application/json; charset=UTF-8"}, {{CURLOPT_POSTFIELDS, postBuf.c_str()}},
- [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); }, nullptr /*readRequest*/, nullptr /*receiveHeader*/);
+ gdriveHttpsRequest("/drive/v3/files/" + fileId + "/copy?" + queryParams,
+ {"Content-Type: application/json; charset=UTF-8"}, {{CURLOPT_POSTFIELDS, postBuf.c_str()}},
+ [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); },
+ nullptr /*readRequest*/, nullptr /*receiveHeader*/, access); //throw SysError
JsonValue jresponse;
try { jresponse = parseJson(response); /*throw JsonParsingError*/ }
@@ -1299,7 +1316,7 @@ std::string /*fileId*/ gdriveCopyFile(const std::string& fileId, const std::stri
//target name already existing? will (happily) create duplicate items => caller must check!
void gdriveMoveAndRenameItem(const std::string& itemId, const std::string& parentIdFrom, const std::string& parentIdTo,
- const Zstring& newName, time_t newModTime, const std::string& accessToken) //throw SysError
+ const Zstring& newName, time_t newModTime, const GdriveAccess& access) //throw SysError
{
//https://developers.google.com/drive/api/v3/folder#moving_files_between_folders
std::string queryParams = xWwwFormUrlEncode(
@@ -1328,10 +1345,10 @@ void gdriveMoveAndRenameItem(const std::string& itemId, const std::string& paren
const std::string& postBuf = serializeJson(postParams, "" /*lineBreak*/, "" /*indent*/);
std::string response;
- gdriveHttpsRequest("/drive/v3/files/" + itemId + '?' + queryParams, //throw SysError
- {"Authorization: Bearer " + accessToken, "Content-Type: application/json; charset=UTF-8"},
- {{CURLOPT_CUSTOMREQUEST, "PATCH"}, {CURLOPT_POSTFIELDS, postBuf.c_str()}},
- [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); }, nullptr /*readRequest*/, nullptr /*receiveHeader*/);
+ gdriveHttpsRequest("/drive/v3/files/" + itemId + '?' + queryParams,
+ {"Content-Type: application/json; charset=UTF-8"}, {{CURLOPT_CUSTOMREQUEST, "PATCH"}, {CURLOPT_POSTFIELDS, postBuf.c_str()}},
+ [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); },
+ nullptr /*readRequest*/, nullptr /*receiveHeader*/, access); //throw SysError
JsonValue jresponse;
try { jresponse = parseJson(response); /*throw JsonParsingError*/ }
@@ -1350,7 +1367,7 @@ void gdriveMoveAndRenameItem(const std::string& itemId, const std::string& paren
#if 0
-void setModTime(const std::string& itemId, time_t modTime, const std::string& accessToken) //throw SysError
+void setModTime(const std::string& itemId, time_t modTime, const GdriveAccess& access) //throw SysError
{
//https://developers.google.com/drive/api/v3/reference/files/update
//RFC 3339 date-time: e.g. "2018-09-29T08:39:12.053Z"
@@ -1366,9 +1383,10 @@ void setModTime(const std::string& itemId, time_t modTime, const std::string& ac
const std::string postBuf = R"({ "modifiedTime": ")" + modTimeRfc + "\" }";
std::string response;
- gdriveHttpsRequest("/drive/v3/files/" + itemId + '?' + queryParams, {"Authorization: Bearer " + accessToken, "Content-Type: application/json; charset=UTF-8"}, //throw SysError
- {{CURLOPT_CUSTOMREQUEST, "PATCH"}, {CURLOPT_POSTFIELDS, postBuf.c_str()}},
- [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); }, nullptr /*readRequest*/, nullptr /*receiveHeader*/);
+ gdriveHttpsRequest("/drive/v3/files/" + itemId + '?' + queryParams,
+ {"Content-Type: application/json; charset=UTF-8"}, {{CURLOPT_CUSTOMREQUEST, "PATCH"}, {CURLOPT_POSTFIELDS, postBuf.c_str()}},
+ [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); },
+ nullptr /*readRequest*/, nullptr /*receiveHeader*/, access); //throw SysError
JsonValue jresponse;
try { jresponse = parseJson(response); /*throw JsonParsingError*/ }
@@ -1383,7 +1401,7 @@ void setModTime(const std::string& itemId, time_t modTime, const std::string& ac
DEFINE_NEW_SYS_ERROR(SysErrorAbusiveFile)
void gdriveDownloadFileImpl(const std::string& fileId, const std::function<void(const void* buffer, size_t bytesToWrite)>& writeBlock /*throw X*/, //throw SysError, SysErrorAbusiveFile, X
- bool acknowledgeAbuse, const std::string& accessToken)
+ bool acknowledgeAbuse, const GdriveAccess& access)
{
//https://developers.google.com/drive/api/v3/manage-downloads
//doesn't work for Google-specific file types (.gdoc, .gsheet, .gslides)
@@ -1401,9 +1419,8 @@ void gdriveDownloadFileImpl(const std::string& fileId, const std::function<void(
std::string responseHead; //save front part of the response in case we get an error
bool headFlushed = false;
- const HttpSession::Result httpResult = gdriveHttpsRequest("/drive/v3/files/" + fileId + '?' + queryParams, //throw SysError, X
- {"Authorization: Bearer " + accessToken}, {} /*extraOptions*/,
- [&](std::span<const char> buf)
+ const HttpSession::Result httpResult = gdriveHttpsRequest("/drive/v3/files/" + fileId + '?' + queryParams, {} /*extraHeaders*/, {} /*extraOptions*/,
+ [&](std::span<const char> buf)
{
if (responseHead.size() < 10000) //don't access writeBlock() in case of error! (=> support acknowledgeAbuse retry handling)
responseHead.append(buf.data(), buf.size());
@@ -1417,7 +1434,7 @@ void gdriveDownloadFileImpl(const std::string& fileId, const std::function<void(
writeBlock(buf.data(), buf.size()); //throw X
}
- }, nullptr /*readRequest*/, nullptr /*receiveHeader*/);
+ }, nullptr /*readRequest*/, nullptr /*receiveHeader*/, access); //throw SysError, X
if (httpResult.statusCode / 100 != 2)
{
@@ -1440,15 +1457,15 @@ void gdriveDownloadFileImpl(const std::string& fileId, const std::function<void(
void gdriveDownloadFile(const std::string& fileId, const std::function<void(const void* buffer, size_t bytesToWrite)>& writeBlock /*throw X*/, //throw SysError, X
- const std::string& accessToken)
+ const GdriveAccess& access)
{
try
{
- gdriveDownloadFileImpl(fileId, writeBlock /*throw X*/, false /*acknowledgeAbuse*/, accessToken); //throw SysError, SysErrorAbusiveFile, X
+ gdriveDownloadFileImpl(fileId, writeBlock /*throw X*/, false /*acknowledgeAbuse*/, access); //throw SysError, SysErrorAbusiveFile, X
}
catch (SysErrorAbusiveFile&)
{
- gdriveDownloadFileImpl(fileId, writeBlock /*throw X*/, true /*acknowledgeAbuse*/, accessToken); //throw SysError, (SysErrorAbusiveFile), X
+ gdriveDownloadFileImpl(fileId, writeBlock /*throw X*/, true /*acknowledgeAbuse*/, access); //throw SysError, (SysErrorAbusiveFile), X
}
}
@@ -1459,7 +1476,7 @@ void gdriveDownloadFile(const std::string& fileId, const std::function<void(cons
//upload "small files" (5 MB or less; enforced by Google?) in a single round-trip
std::string /*itemId*/ gdriveUploadSmallFile(const Zstring& fileName, const std::string& parentId, uint64_t streamSize, std::optional<time_t> modTime, //throw SysError, X
const std::function<size_t(void* buffer, size_t bytesToRead)>& readBlock /*throw X*/, //returning 0 signals EOF: Posix read() semantics
- const std::string& accessToken)
+ const GdriveAccess& access)
{
//https://developers.google.com/drive/api/v3/folder#inserting_a_file_in_a_folder
//https://developers.google.com/drive/api/v3/manage-uploads#http_1
@@ -1535,14 +1552,14 @@ TODO:
{"uploadType", "multipart"},
});
std::string response;
- const HttpSession::Result httpResult = gdriveHttpsRequest("/upload/drive/v3/files?" + queryParams, //throw SysError, X
+ const HttpSession::Result httpResult = gdriveHttpsRequest("/upload/drive/v3/files?" + queryParams,
{
- "Authorization: Bearer " + accessToken,
"Content-Type: multipart/related; boundary=" + boundaryString,
"Content-Length: " + numberTo<std::string>(postBufHead.size() + streamSize + postBufTail.size())
},
{{CURLOPT_POST, 1}}, //otherwise HttpSession::perform() will PUT
- [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); }, readMultipartBlock, nullptr /*receiveHeader*/);
+ [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); }, readMultipartBlock,
+ nullptr /*receiveHeader*/, access); //throw SysError, X
JsonValue jresponse;
try { jresponse = parseJson(response); }
@@ -1561,7 +1578,7 @@ TODO:
//note: Google Drive upload is already transactional!
std::string /*itemId*/ gdriveUploadFile(const Zstring& fileName, const std::string& parentId, std::optional<time_t> modTime, //throw SysError, X
const std::function<size_t(void* buffer, size_t bytesToRead)>& readBlock /*throw X*/, //returning 0 signals EOF: Posix read() semantics
- const std::string& accessToken)
+ const GdriveAccess& access)
{
//https://developers.google.com/drive/api/v3/folder#inserting_a_file_in_a_folder
//https://developers.google.com/drive/api/v3/manage-uploads#resumable
@@ -1602,10 +1619,10 @@ std::string /*itemId*/ gdriveUploadFile(const Zstring& fileName, const std::stri
};
std::string response;
- const HttpSession::Result httpResult = gdriveHttpsRequest("/upload/drive/v3/files?" + queryParams, //throw SysError
- {"Authorization: Bearer " + accessToken, "Content-Type: application/json; charset=UTF-8"},
- {{CURLOPT_POSTFIELDS, postBuf.c_str()}},
- [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); }, nullptr /*readRequest*/, onHeaderData);
+ const HttpSession::Result httpResult = gdriveHttpsRequest("/upload/drive/v3/files?" + queryParams,
+ {"Content-Type: application/json; charset=UTF-8"}, {{CURLOPT_POSTFIELDS, postBuf.c_str()}},
+ [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); },
+ nullptr /*readRequest*/, onHeaderData, access); //throw SysError
if (httpResult.statusCode != 200)
throw SysError(formatGdriveErrorRaw(response));
@@ -1624,9 +1641,10 @@ std::string /*itemId*/ gdriveUploadFile(const Zstring& fileName, const std::stri
auto readBlockAsGzip = [&](std::span<char> buf) { return gzipStream.read(buf.data(), buf.size()); }; //throw SysError, X
//returns "bytesToRead" bytes unless end of stream! => fits into "0 signals EOF: Posix read() semantics"
- std::string response;
- gdriveHttpsRequest(uploadUrlRelative, { "Content-Encoding: gzip" }, {} /*extraOptions*/, //throw SysError, X
- [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); }, readBlockAsGzip, nullptr /*receiveHeader*/);
+ std::string response; //don't need "Authorization: Bearer":
+ googleHttpsRequest(GOOGLE_REST_API_SERVER, uploadUrlRelative, { "Content-Encoding: gzip" }, {} /*extraOptions*/,
+ [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); }, readBlockAsGzip,
+ nullptr /*receiveHeader*/, access.timeoutSec); //throw SysError, X
JsonValue jresponse;
try { jresponse = parseJson(response); }
@@ -1641,7 +1659,7 @@ std::string /*itemId*/ gdriveUploadFile(const Zstring& fileName, const std::stri
//instead of the "root" alias Google uses an actual ID in file metadata
-std::string /*itemId*/ getMyDriveId(const std::string& accessToken) //throw SysError
+std::string /*itemId*/ getMyDriveId(const GdriveAccess& access) //throw SysError
{
//https://developers.google.com/drive/api/v3/reference/files/get
const std::string& queryParams = xWwwFormUrlEncode(
@@ -1650,8 +1668,9 @@ std::string /*itemId*/ getMyDriveId(const std::string& accessToken) //throw SysE
{"fields", "id"},
});
std::string response;
- gdriveHttpsRequest("/drive/v3/files/root?" + queryParams, {"Authorization: Bearer " + accessToken}, {} /*extraOptions*/, //throw SysError
- [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); }, nullptr /*readRequest*/, nullptr /*receiveHeader*/);
+ gdriveHttpsRequest("/drive/v3/files/root?" + queryParams, {} /*extraHeaders*/, {} /*extraOptions*/,
+ [&](std::span<const char> buf) { response.append(buf.data(), buf.size()); },
+ nullptr /*readRequest*/, nullptr /*receiveHeader*/, access); //throw SysError
JsonValue jresponse;
try { jresponse = parseJson(response); }
@@ -1668,7 +1687,9 @@ std::string /*itemId*/ getMyDriveId(const std::string& accessToken) //throw SysE
class GdriveAccessBuffer //per-user-session & drive! => serialize access (perf: amortized fully buffered!)
{
public:
- explicit GdriveAccessBuffer(const GdriveAccessInfo& accessInfo) : accessInfo_(accessInfo) {}
+ //GdriveDrivesBuffer constructor calls GdriveAccessBuffer::getAccessToken()
+ explicit GdriveAccessBuffer(const GdriveAccessInfo& accessInfo) :
+ accessInfo_(accessInfo) {}
GdriveAccessBuffer(MemoryStreamIn<std::string>& stream) //throw SysError
{
@@ -1689,16 +1710,28 @@ public:
writeContainer(stream, accessInfo_.userInfo.email);
}
- std::string getAccessToken() //throw SysError
+ //set *before* calling any of the subsequent functions; see GdrivePersistentSessions::accessUserSession()
+ void setContextTimeout(const std::weak_ptr<int>& timeoutSec) { timeoutSec_ = timeoutSec; }
+
+ GdriveAccess getAccessToken() //throw SysError
{
- if (accessInfo_.accessToken.validUntil <= std::time(nullptr) + std::chrono::seconds(HTTP_SESSION_ACCESS_TIME_OUT).count() + 5 /*some leeway*/) //expired/will expire
- accessInfo_.accessToken = gdriveRefreshAccess(accessInfo_.refreshToken); //throw SysError
+ const int timeoutSec = getTimeoutSec();
+
+ if (accessInfo_.accessToken.validUntil <= std::time(nullptr) + timeoutSec + 5 /*some leeway*/) //expired/will expire
+ {
+ GdriveAccessToken token = gdriveRefreshAccess(accessInfo_.refreshToken, timeoutSec); //throw SysError
+
+ //"there are limits on the number of refresh tokens that will be issued"
+ //Google Drive access token is usually valid for one hour => fail on pathologic user-defined time out:
+ if (token.validUntil <= std::time(nullptr) + 2 * timeoutSec)
+ throw SysError(_("Please set up a shorter time out for Google Drive.") + L" [" + _P("1 sec", "%x sec", timeoutSec) + L']');
- assert(accessInfo_.accessToken.validUntil > std::time(nullptr) + std::chrono::seconds(HTTP_SESSION_ACCESS_TIME_OUT).count());
- return accessInfo_.accessToken.value;
+ accessInfo_.accessToken = std::move(token);
+ }
+
+ return {accessInfo_.accessToken.value, timeoutSec};
}
- //const std::wstring& getUserDisplayName() const { return accessInfo_.userInfo.displayName; }
const std::string& getUserEmail() const { return accessInfo_.userInfo.email; }
void update(const GdriveAccessInfo& accessInfo)
@@ -1712,7 +1745,18 @@ private:
GdriveAccessBuffer (const GdriveAccessBuffer&) = delete;
GdriveAccessBuffer& operator=(const GdriveAccessBuffer&) = delete;
+ int getTimeoutSec() const
+ {
+ const std::shared_ptr<int> timeoutSec = timeoutSec_.lock();
+ assert(timeoutSec);
+ if (!timeoutSec)
+ throw std::runtime_error(std::string(__FILE__) + '[' + numberTo<std::string>(__LINE__) + "] GdriveAccessBuffer: Timeout duration was not set.");
+
+ return *timeoutSec;
+ }
+
GdriveAccessInfo accessInfo_;
+ std::weak_ptr<int> timeoutSec_;
};
@@ -2395,17 +2439,19 @@ public:
}
}
- std::string addUserSession(const std::string& gdriveLoginHint, const std::function<void()>& updateGui /*throw X*/) //throw SysError, X
+ std::string addUserSession(const std::string& gdriveLoginHint, const std::function<void()>& updateGui /*throw X*/, int timeoutSec) //throw SysError, X
{
- const GdriveAccessInfo accessInfo = gdriveAuthorizeAccess(gdriveLoginHint, updateGui); //throw SysError, X
+ const GdriveAccessInfo accessInfo = gdriveAuthorizeAccess(gdriveLoginHint, updateGui, timeoutSec); //throw SysError, X
- accessUserSession(accessInfo.userInfo.email, [&](std::optional<UserSession>& userSession) //throw SysError
+ accessUserSession(accessInfo.userInfo.email, timeoutSec, [&](std::optional<UserSession>& userSession) //throw SysError
{
if (userSession)
userSession->accessBuf.ref().update(accessInfo); //redundant?
else
{
+ const std::shared_ptr<int> timeoutSec2 = std::make_shared<int>(timeoutSec); //context option: valid only for duration of this call!
auto accessBuf = makeSharedRef<GdriveAccessBuffer>(accessInfo);
+ accessBuf.ref().setContextTimeout(timeoutSec2); //[!] used by GdriveDrivesBuffer()!
auto drivesBuf = makeSharedRef<GdriveDrivesBuffer>(accessBuf.ref()); //throw SysError
userSession = {accessBuf, drivesBuf};
}
@@ -2414,11 +2460,11 @@ public:
return accessInfo.userInfo.email;
}
- void removeUserSession(const std::string& accountEmail) //throw SysError
+ void removeUserSession(const std::string& accountEmail, int timeoutSec) //throw SysError
{
try
{
- accessUserSession(accountEmail, [&](std::optional<UserSession>& userSession) //throw SysError
+ accessUserSession(accountEmail, timeoutSec, [&](std::optional<UserSession>& userSession) //throw SysError
{
if (userSession)
gdriveRevokeAccess(userSession->accessBuf.ref().getAccessToken()); //throw SysError
@@ -2444,7 +2490,7 @@ public:
catch (const FileError& e) { throw SysError(replaceCpy(e.toString(), L"\n\n", L'\n')); } //file access errors should be further enriched by context info => SysError
- accessUserSession(accountEmail, [&](std::optional<UserSession>& userSession) //throw SysError
+ accessUserSession(accountEmail, timeoutSec, [&](std::optional<UserSession>& userSession) //throw SysError
{
userSession.reset();
});
@@ -2488,11 +2534,11 @@ public:
return emails;
}
- std::vector<Zstring /*sharedDriveName*/> listSharedDrives(const std::string& accountEmail) //throw SysError
+ std::vector<Zstring /*sharedDriveName*/> listSharedDrives(const std::string& accountEmail, int timeoutSec) //throw SysError
{
std::vector<Zstring> sharedDriveNames;
- accessUserSession(accountEmail, [&](std::optional<UserSession>& userSession) //throw SysError
+ accessUserSession(accountEmail, timeoutSec, [&](std::optional<UserSession>& userSession) //throw SysError
{
if (!userSession)
throw SysError(replaceCpy(_("Please authorize access to user account %x."), L"%x", utfTo<std::wstring>(accountEmail)));
@@ -2504,27 +2550,27 @@ public:
struct AsyncAccessInfo
{
- std::string accessToken; //don't allow (long-running) web requests while holding the global session lock!
+ GdriveAccess access; //don't allow (long-running) web requests while holding the global session lock!
GdriveFileState::FileStateDelta stateDelta;
};
//perf: amortized fully buffered!
AsyncAccessInfo accessGlobalFileState(const GdriveLogin& login, const std::function<void(GdriveFileState& fileState)>& useFileState /*throw X*/) //throw SysError, X
{
- std::string accessToken;
+ GdriveAccess access;
GdriveFileState::FileStateDelta stateDelta;
- accessUserSession(login.email, [&](std::optional<UserSession>& userSession) //throw SysError
+ accessUserSession(login.email, login.timeoutSec, [&](std::optional<UserSession>& userSession) //throw SysError
{
if (!userSession)
throw SysError(replaceCpy(_("Please authorize access to user account %x."), L"%x", utfTo<std::wstring>(login.email)));
GdriveFileState* fileState = nullptr;
- accessToken = userSession->accessBuf.ref().getAccessToken(); //throw SysError
+ access = userSession->accessBuf.ref().getAccessToken(); //throw SysError
std::tie(fileState, stateDelta) = userSession->drivesBuf.ref().prepareAccess(login.sharedDriveName); //throw SysError
useFileState(*fileState); //throw X
});
- return {accessToken, stateDelta};
+ return {access, stateDelta};
}
private:
@@ -2541,7 +2587,7 @@ private:
return appendSeparator(configDirPath_) + utfTo<Zstring>(accountEmail) + Zstr(".db");
}
- void accessUserSession(const std::string& accountEmail, const std::function<void(std::optional<UserSession>& userSession)>& useSession /*throw X*/) //throw SysError, X
+ void accessUserSession(const std::string& accountEmail, int timeoutSec, const std::function<void(std::optional<UserSession>& userSession)>& useSession /*throw X*/) //throw SysError, X
{
Protected<SessionHolder>* protectedSession = nullptr; //pointers remain stable, thanks to std::map<>
globalSessions_.access([&](GlobalSessions& sessions) { protectedSession = &sessions[accountEmail]; });
@@ -2551,10 +2597,15 @@ private:
if (!holder.dbWasLoaded) //let's NOT load the DB files under the globalSessions_ lock, but the session-specific one!
try
{
- holder.session = loadSession(getDbFilePath(accountEmail)); //throw SysError
+ holder.session = loadSession(getDbFilePath(accountEmail), timeoutSec); //throw SysError
}
catch (const FileError& e) { throw SysError(replaceCpy(e.toString(), L"\n\n", L'\n')); } //GdrivePersistentSessions errors should be further enriched with context info => SysError
holder.dbWasLoaded = true;
+
+ const std::shared_ptr<int> timeoutSec2 = std::make_shared<int>(timeoutSec); //context option: valid only for duration of this call!
+ if (holder.session)
+ holder.session->accessBuf.ref().setContextTimeout(timeoutSec2);
+
useSession(holder.session); //throw X
});
}
@@ -2578,7 +2629,7 @@ private:
setFileContent(dbFilePath, streamOut.ref(), nullptr /*notifyUnbufferedIO*/); //throw FileError
}
- static std::optional<UserSession> loadSession(const Zstring& dbFilePath) //throw FileError
+ static std::optional<UserSession> loadSession(const Zstring& dbFilePath, int timeoutSec) //throw FileError
{
std::string byteStream;
try
@@ -2600,6 +2651,8 @@ private:
char tmp[sizeof(DB_FILE_DESCR)] = {};
readArray(streamIn, &tmp, sizeof(tmp)); //throw SysErrorUnexpectedEos
+ const std::shared_ptr<int> timeoutSec2 = std::make_shared<int>(timeoutSec); //context option: valid only for duration of this call!
+
//TODO: remove migration code at some time! 2020-07-03
if (!std::equal(std::begin(tmp), std::end(tmp), std::begin(DB_FILE_DESCR)))
{
@@ -2621,6 +2674,7 @@ private:
//version 1 + 2: fully discard old state due to missing "ownedByMe" attribute + shortcut support
//version 3: fully discard old state due to revamped shared drive handling
auto accessBuf = makeSharedRef<GdriveAccessBuffer>(streamIn2); //throw SysError
+ accessBuf.ref().setContextTimeout(timeoutSec2); //not used by GdriveDrivesBuffer(), but let's be consistent
auto drivesBuf = makeSharedRef<GdriveDrivesBuffer>(accessBuf.ref()); //throw SysError
return UserSession{accessBuf, drivesBuf};
}
@@ -2637,6 +2691,7 @@ private:
MemoryStreamIn streamInBody(decompress(std::string(byteStream.begin() + streamIn.pos(), byteStream.end()))); //throw SysError
auto accessBuf = makeSharedRef<GdriveAccessBuffer>(streamInBody); //throw SysError
+ accessBuf.ref().setContextTimeout(timeoutSec2); //not used by GdriveDrivesBuffer(), but let's be consistent
auto drivesBuf = [&]
{
//TODO: remove migration code at some time! 2021-05-15
@@ -2713,7 +2768,7 @@ struct GetDirDetails
if (!childItemsBuf)
{
- childItemsBuf = readFolderContent(folderId, aai.accessToken); //throw SysError
+ childItemsBuf = readFolderContent(folderId, aai.access); //throw SysError
//buffer new file state ASAP => make sure accessGlobalFileState() has amortized constant access (despite the occasional internal readFolderContent() on non-leaf folders)
accessGlobalFileState(folderPath_.gdriveLogin, [&](GdriveFileState& fileState) //throw SysError
@@ -2757,7 +2812,7 @@ struct GetShortcutTargetDetails
});
if (!targetDetailsBuf)
{
- targetDetailsBuf = getItemDetails(shortcutDetails_.targetId, aai.accessToken); //throw SysError
+ targetDetailsBuf = getItemDetails(shortcutDetails_.targetId, aai.access); //throw SysError
//buffer new file state ASAP
accessGlobalFileState(shortcutPath_.gdriveLogin, [&](GdriveFileState& fileState) //throw SysError
@@ -2881,14 +2936,14 @@ struct InputStreamGdrive : public AFS::InputStream
setCurrentThreadName(Zstr("Istream[Gdrive] ") + utfTo<Zstring>(getGdriveDisplayPath(gdrivePath)));
try
{
- std::string accessToken;
+ GdriveAccess access;
std::string fileId;
try
{
- accessToken = accessGlobalFileState(gdrivePath.gdriveLogin, [&](GdriveFileState& fileState) //throw SysError
+ access = accessGlobalFileState(gdrivePath.gdriveLogin, [&](GdriveFileState& fileState) //throw SysError
{
fileId = fileState.getItemId(gdrivePath.itemPath, true /*followLeafShortcut*/); //throw SysError
- }).accessToken;
+ }).access;
}
catch (const SysError& e) { throw FileError(replaceCpy(_("Cannot open file %x."), L"%x", fmtPath(getGdriveDisplayPath(gdrivePath))), e.toString()); }
@@ -2899,7 +2954,7 @@ struct InputStreamGdrive : public AFS::InputStream
return asyncStreamOut->write(buffer, bytesToWrite); //throw ThreadStopRequest
};
- gdriveDownloadFile(fileId, writeBlock, accessToken); //throw SysError, ThreadStopRequest
+ gdriveDownloadFile(fileId, writeBlock, access); //throw SysError, ThreadStopRequest
}
catch (const SysError& e) { throw FileError(replaceCpy(_("Cannot read file %x."), L"%x", fmtPath(getGdriveDisplayPath(gdrivePath))), e.toString()); }
@@ -3005,8 +3060,8 @@ struct OutputStreamGdrive : public AFS::OutputStreamImpl
//for whatever reason, gdriveUploadFile() is slightly faster than gdriveUploadSmallFile()! despite its two roundtrips! even when file sizes are 0!
//=> 1. issue likely on Google's side => 2. persists even after having fixed "Expect: 100-continue"
const std::string fileIdNew = //streamSize && *streamSize < 5 * 1024 * 1024 ?
- //gdriveUploadSmallFile(fileName, parentId, *streamSize, modTime, readBlock, aai.accessToken) : //throw SysError, ThreadStopRequest
- gdriveUploadFile (fileName, parentId, modTime, readBlock, aai.accessToken); //throw SysError, ThreadStopRequest
+ //gdriveUploadSmallFile(fileName, parentId, *streamSize, modTime, readBlock, aai.access) : //throw SysError, ThreadStopRequest
+ gdriveUploadFile (fileName, parentId, modTime, readBlock, aai.access); //throw SysError, ThreadStopRequest
assert(asyncStreamIn->getTotalBytesRead() == asyncStreamIn->getTotalBytesWritten());
//already existing: creates duplicate
@@ -3202,7 +3257,7 @@ private:
});
//already existing: creates duplicate
- const std::string folderIdNew = gdriveCreateFolderPlain(folderName, parentId, aai.accessToken); //throw SysError
+ const std::string folderIdNew = gdriveCreateFolderPlain(folderName, parentId, aai.access); //throw SysError
//buffer new file state ASAP (don't wait GDRIVE_SYNC_INTERVAL)
accessGlobalFileState(gdriveLogin_, [&](GdriveFileState& fileState) //throw SysError
@@ -3233,7 +3288,7 @@ private:
if (parentIdToUnlink)
{
- gdriveUnlinkParent(itemId, *parentIdToUnlink, aai.accessToken); //throw SysError
+ gdriveUnlinkParent(itemId, *parentIdToUnlink, aai.access); //throw SysError
//buffer new file state ASAP (don't wait GDRIVE_SYNC_INTERVAL)
accessGlobalFileState(gdriveLogin_, [&](GdriveFileState& fileState) //throw SysError
@@ -3244,9 +3299,9 @@ private:
else
{
if (permanent)
- gdriveDeleteItem(itemId, aai.accessToken); //throw SysError
+ gdriveDeleteItem(itemId, aai.access); //throw SysError
else
- gdriveMoveToTrash(itemId, aai.accessToken); //throw SysError
+ gdriveMoveToTrash(itemId, aai.access); //throw SysError
//buffer new file state ASAP (don't wait GDRIVE_SYNC_INTERVAL)
accessGlobalFileState(gdriveLogin_, [&](GdriveFileState& fileState) //throw SysError
@@ -3408,7 +3463,7 @@ private:
});
//already existing: creates duplicate
- const std::string fileIdTrg = gdriveCopyFile(itemIdSrc, parentIdTrg, itemNameNew, itemDetailsSrc.modTime, aaiTrg.accessToken); //throw SysError
+ const std::string fileIdTrg = gdriveCopyFile(itemIdSrc, parentIdTrg, itemNameNew, itemDetailsSrc.modTime, aaiTrg.access); //throw SysError
//buffer new file state ASAP (don't wait GDRIVE_SYNC_INTERVAL)
accessGlobalFileState(fsTarget.gdriveLogin_, [&](GdriveFileState& fileState) //throw SysError
@@ -3485,7 +3540,7 @@ private:
});
//already existing: creates duplicate
- const std::string shortcutIdNew = gdriveCreateShortcutPlain(shortcutName, parentId, targetId, aaiTrg.accessToken); //throw SysError
+ const std::string shortcutIdNew = gdriveCreateShortcutPlain(shortcutName, parentId, targetId, aaiTrg.access); //throw SysError
//buffer new file state ASAP (don't wait GDRIVE_SYNC_INTERVAL)
accessGlobalFileState(fsTarget.gdriveLogin_, [&](GdriveFileState& fileState) //throw SysError
@@ -3560,7 +3615,7 @@ private:
return; //nothing to do
//already existing: creates duplicate
- gdriveMoveAndRenameItem(itemId, parentIdFrom, parentIdTo, itemNameNew, itemDetails.modTime, aai.accessToken); //throw SysError
+ gdriveMoveAndRenameItem(itemId, parentIdFrom, parentIdTo, itemNameNew, itemDetails.modTime, aai.access); //throw SysError
//buffer new file state ASAP (don't wait GDRIVE_SYNC_INTERVAL)
accessGlobalFileState(gdriveLogin_, [&](GdriveFileState& fileState) //throw SysError
@@ -3589,14 +3644,14 @@ private:
for (const std::string& accountEmail : gps->listAccounts()) //throw SysError
if (equalAsciiNoCase(accountEmail, gdriveLogin_.email))
return;
- gps->addUserSession(gdriveLogin_.email /*gdriveLoginHint*/, nullptr /*updateGui*/); //throw SysError
+ gps->addUserSession(gdriveLogin_.email /*gdriveLoginHint*/, nullptr /*updateGui*/, gdriveLogin_.timeoutSec); //throw SysError
//error messages will be lost after time out in dir_exist_async.h! However:
//The most-likely-to-fail parts (web access) are reported by gdriveAuthorizeAccess() via the browser!
}
catch (const SysError& e) { throw FileError(replaceCpy(_("Unable to connect to %x."), L"%x", fmtPath(getDisplayPath(AfsPath()))), e.toString()); }
}
- int getAccessTimeout() const override { return static_cast<int>(std::chrono::seconds(HTTP_SESSION_ACCESS_TIME_OUT).count()); } //returns "0" if no timeout in force
+ int getAccessTimeout() const override { return gdriveLogin_.timeoutSec; } //returns "0" if no timeout in force
bool hasNativeTransactionalCopy() const override { return true; }
//----------------------------------------------------------------------------------------------------------------
@@ -3608,8 +3663,8 @@ private:
try
{
- const std::string& accessToken = accessGlobalFileState(gdriveLogin_, [](GdriveFileState& fileState) {}).accessToken; //throw SysError
- return gdriveGetMyDriveFreeSpace(accessToken); //throw SysError; returns < 0 if not available
+ const GdriveAccess& access = accessGlobalFileState(gdriveLogin_, [](GdriveFileState& fileState) {}).access; //throw SysError
+ return gdriveGetMyDriveFreeSpace(access); //throw SysError; returns < 0 if not available
}
catch (const SysError& e) { throw FileError(replaceCpy(_("Cannot determine free disk space for %x."), L"%x", fmtPath(getDisplayPath(afsPath))), e.toString()); }
}
@@ -3643,6 +3698,27 @@ private:
const GdriveLogin gdriveLogin_;
};
//===========================================================================================================================
+
+//expects "clean" input data
+Zstring concatenateGdriveFolderPathPhrase(const GdrivePath& gdrivePath) //noexcept
+{
+ Zstring emailAndDrive = utfTo<Zstring>(gdrivePath.gdriveLogin.email);
+ if (!gdrivePath.gdriveLogin.sharedDriveName.empty())
+ emailAndDrive += Zstr(':') + gdrivePath.gdriveLogin.sharedDriveName;
+
+ Zstring options;
+ if (gdrivePath.gdriveLogin.timeoutSec != GdriveLogin().timeoutSec)
+ options += Zstr("|timeout=") + numberTo<Zstring>(gdrivePath.gdriveLogin.timeoutSec);
+
+ Zstring itemPath;
+ if (!gdrivePath.itemPath.value.empty())
+ itemPath += FILE_NAME_SEPARATOR + gdrivePath.itemPath.value;
+
+ if (endsWith(itemPath, Zstr(' ')) && options.empty()) //path phrase concept must survive trimming!
+ itemPath += FILE_NAME_SEPARATOR;
+
+ return Zstring(gdrivePrefix) + FILE_NAME_SEPARATOR + emailAndDrive + itemPath + options;
+}
}
@@ -3673,12 +3749,12 @@ void fff::gdriveTeardown()
}
-std::string fff::gdriveAddUser(const std::function<void()>& updateGui /*throw X*/) //throw FileError, X
+std::string fff::gdriveAddUser(const std::function<void()>& updateGui /*throw X*/, int timeoutSec) //throw FileError, X
{
try
{
if (const std::shared_ptr<GdrivePersistentSessions> gps = globalGdriveSessions.get())
- return gps->addUserSession("" /*gdriveLoginHint*/, updateGui); //throw SysError, X
+ return gps->addUserSession("" /*gdriveLoginHint*/, updateGui, timeoutSec); //throw SysError, X
throw SysError(formatSystemError("gdriveAddUser", L"", L"Function call not allowed during init/shutdown."));
}
@@ -3686,12 +3762,12 @@ std::string fff::gdriveAddUser(const std::function<void()>& updateGui /*throw X*
}
-void fff::gdriveRemoveUser(const std::string& accountEmail) //throw FileError
+void fff::gdriveRemoveUser(const std::string& accountEmail, int timeoutSec) //throw FileError
{
try
{
if (const std::shared_ptr<GdrivePersistentSessions> gps = globalGdriveSessions.get())
- return gps->removeUserSession(accountEmail); //throw SysError
+ return gps->removeUserSession(accountEmail, timeoutSec); //throw SysError
throw SysError(formatSystemError("gdriveRemoveUser", L"", L"Function call not allowed during init/shutdown."));
}
@@ -3712,12 +3788,12 @@ std::vector<std::string /*account email*/> fff::gdriveListAccounts() //throw Fil
}
-std::vector<Zstring /*sharedDriveName*/> fff::gdriveListSharedDrives(const std::string& accountEmail) //throw FileError
+std::vector<Zstring /*sharedDriveName*/> fff::gdriveListSharedDrives(const std::string& accountEmail, int timeoutSec) //throw FileError
{
try
{
if (const std::shared_ptr<GdrivePersistentSessions> gps = globalGdriveSessions.get())
- return gps->listSharedDrives(accountEmail); //throw SysError
+ return gps->listSharedDrives(accountEmail, timeoutSec); //throw SysError
throw SysError(formatSystemError("gdriveListSharedDrives", L"", L"Function call not allowed during init/shutdown."));
}
@@ -3731,6 +3807,8 @@ AfsDevice fff::condenseToGdriveDevice(const GdriveLogin& login) //noexcept
GdriveLogin loginTmp = login;
trim(loginTmp.email);
+ loginTmp.timeoutSec = std::max(1, loginTmp.timeoutSec);
+
return makeSharedRef<GdriveFileSystem>(loginTmp);
}
@@ -3762,23 +3840,35 @@ bool fff::acceptsItemPathPhraseGdrive(const Zstring& itemPathPhrase) //noexcept
}
-//e.g.: gdrive:/john@gmail.com:SharedDrive/folder/file.txt
+/* syntax: gdrive:\<email>[:<shared drive>]\<relative-path>[|option_name=value]
+
+ e.g.: gdrive:\john@gmail.com\folder\file.txt
+ gdrive:\john@gmail.com:SharedDrive\folder\file.txt|option_name=value */
AbstractPath fff::createItemPathGdrive(const Zstring& itemPathPhrase) //noexcept
{
- Zstring path = itemPathPhrase;
- path = expandMacros(path); //expand before trimming!
- trim(path);
+ Zstring pathPhrase = expandMacros(itemPathPhrase); //expand before trimming!
+ trim(pathPhrase);
- if (startsWithAsciiNoCase(path, gdrivePrefix))
- path = path.c_str() + strLength(gdrivePrefix);
+ if (startsWithAsciiNoCase(pathPhrase, gdrivePrefix))
+ pathPhrase = pathPhrase.c_str() + strLength(gdrivePrefix);
+ trim(pathPhrase, true, false, [](Zchar c) { return c == Zstr('/') || c == Zstr('\\'); });
- const AfsPath& sanPath = sanitizeDeviceRelativePath(path); //Win/macOS compatibility: let's ignore slash/backslash differences
+ const Zstring fullPath = beforeFirst(pathPhrase, Zstr('|'), IfNotFoundReturn::all);
+ const Zstring options = afterFirst(pathPhrase, Zstr('|'), IfNotFoundReturn::none);
- const Zstring& accountEmailAndDrive = beforeFirst(sanPath.value, FILE_NAME_SEPARATOR, IfNotFoundReturn::all);
- const AfsPath afsPath (afterFirst(sanPath.value, FILE_NAME_SEPARATOR, IfNotFoundReturn::none));
+ auto it = std::find_if(fullPath.begin(), fullPath.end(), [](Zchar c) { return c == '/' || c == '\\'; });
+ const Zstring emailAndDrive(fullPath.begin(), it);
+ const AfsPath afsPath = sanitizeDeviceRelativePath({it, fullPath.end()});
- const Zstring& accountEmail = beforeFirst(accountEmailAndDrive, Zstr(':'), IfNotFoundReturn::all);
- const Zstring& sharedDrive = afterFirst (accountEmailAndDrive, Zstr(':'), IfNotFoundReturn::none);
+ GdriveLogin login;
+ login.email = utfTo<std::string>(beforeFirst(emailAndDrive, Zstr(':'), IfNotFoundReturn::all));
+ login.sharedDriveName = afterFirst (emailAndDrive, Zstr(':'), IfNotFoundReturn::none);
+
+ for (const Zstring& optPhrase : split(options, Zstr("|"), SplitOnEmpty::skip))
+ if (startsWith(optPhrase, Zstr("timeout=")))
+ login.timeoutSec = stringTo<int>(afterFirst(optPhrase, Zstr("="), IfNotFoundReturn::none));
+ else
+ assert(false);
- return AbstractPath(makeSharedRef<GdriveFileSystem>(GdriveLogin{utfTo<std::string>(accountEmail), sharedDrive}), afsPath);
+ return AbstractPath(makeSharedRef<GdriveFileSystem>(login), afsPath);
}
diff --git a/FreeFileSync/Source/afs/gdrive.h b/FreeFileSync/Source/afs/gdrive.h
index 75bb4a80..de32c191 100644
--- a/FreeFileSync/Source/afs/gdrive.h
+++ b/FreeFileSync/Source/afs/gdrive.h
@@ -20,19 +20,21 @@ void gdriveTeardown();
//-------------------------------------------------------
-std::string /*account email*/ gdriveAddUser(const std::function<void()>& updateGui /*throw X*/); //throw FileError, X
-void gdriveRemoveUser(const std::string& accountEmail); //throw FileError
+std::string /*account email*/ gdriveAddUser(const std::function<void()>& updateGui /*throw X*/, int timeoutSec); //throw FileError, X
+void gdriveRemoveUser(const std::string& accountEmail, int timeoutSec); //throw FileError
std::vector<std::string /*account email*/> gdriveListAccounts(); //throw FileError
-std::vector<Zstring /*sharedDriveName*/> gdriveListSharedDrives(const std::string& accountEmail); //throw FileError
+std::vector<Zstring /*sharedDriveName*/> gdriveListSharedDrives(const std::string& accountEmail, int timeoutSec); //throw FileError
struct GdriveLogin
{
std::string email;
Zstring sharedDriveName; //empty for "My Drive"
+ int timeoutSec = 15; //Gdrive can "hang" for 20 seconds when "scanning for viruses": https://freefilesync.org/forum/viewtopic.php?t=9116
};
-AfsDevice condenseToGdriveDevice(const GdriveLogin& login); //noexcept; potentially messy user input
-GdriveLogin extractGdriveLogin(const AfsDevice& afsDevice); //noexcept
+
+AfsDevice condenseToGdriveDevice(const GdriveLogin& login); //noexcept; potentially messy user input
+GdriveLogin extractGdriveLogin(const AfsDevice& afsDevice); //noexcept
//return empty, if not a Google Drive path
Zstring getGoogleDriveFolderUrl(const AbstractPath& folderPath); //throw FileError
diff --git a/FreeFileSync/Source/afs/sftp.cpp b/FreeFileSync/Source/afs/sftp.cpp
index 0b522b1a..3bcbe40e 100644
--- a/FreeFileSync/Source/afs/sftp.cpp
+++ b/FreeFileSync/Source/afs/sftp.cpp
@@ -24,45 +24,8 @@ using namespace fff;
using AFS = AbstractFileSystem;
-namespace fff
-{
-std::weak_ordering operator<=>(const SshSessionId& lhs, const SshSessionId& rhs)
-{
- //exactly the type of case insensitive comparison we need for server names!
- if (const std::weak_ordering cmp = compareAsciiNoCase(lhs.server, rhs.server); //https://docs.microsoft.com/en-us/windows/win32/api/ws2tcpip/nf-ws2tcpip-getaddrinfow#IDNs
- std::is_neq(cmp))
- return cmp;
-
- if (const std::strong_ordering cmp = std::tie(lhs.port, lhs.username, lhs.authType, lhs.allowZlib) <=> //username: case sensitive!
- std::tie(rhs.port, rhs.username, rhs.authType, rhs.allowZlib);
- std::is_neq(cmp))
- return cmp;
-
- switch (lhs.authType)
- {
- case SftpAuthType::password:
- return lhs.password <=> rhs.password; //case sensitive!
-
- case SftpAuthType::keyFile:
- if (const std::strong_ordering cmp = lhs.password <=> rhs.password; //case sensitive!
- std::is_neq(cmp))
- return cmp;
-
- return lhs.privateKeyFilePath <=> rhs.privateKeyFilePath; //case sensitive!
-
- case SftpAuthType::agent:
- return std::weak_ordering::equivalent;
- }
- assert(false);
- return std::weak_ordering::equivalent;
-}
-}
-
-
namespace
{
-Zstring concatenateSftpFolderPathPhrase(const SftpLogin& login, const AfsPath& afsPath); //noexcept
-
/*
SFTP specification version 3 (implemented by libssh2): https://filezilla-project.org/specs/draft-ietf-secsh-filexfer-02.txt
@@ -136,6 +99,56 @@ SFTP_OPTIMAL_BLOCK_SIZE_READ: SFTP_OPTIMAL_BLOCK_SIZE_WRITE:
DSL maximum download speed: 5,96 MB/s DSL maximum upload speed: 1220 KB/s
=> libssh2_sftp_read/libssh2_sftp_write may take quite long for 16x and larger => use smallest multiple that fills bandwidth! */
+}
+
+
+namespace fff
+{
+inline
+int getEffectivePort(int portOption)
+{
+ if (portOption > 0)
+ return portOption;
+ return DEFAULT_PORT_SFTP;
+}
+
+
+std::weak_ordering operator<=>(const SshSessionId& lhs, const SshSessionId& rhs)
+{
+ //exactly the type of case insensitive comparison we need for server names!
+ if (const std::weak_ordering cmp = compareAsciiNoCase(lhs.server, rhs.server); //https://docs.microsoft.com/en-us/windows/win32/api/ws2tcpip/nf-ws2tcpip-getaddrinfow#IDNs
+ std::is_neq(cmp))
+ return cmp;
+
+ const int portLhs = getEffectivePort(lhs.port);
+ const int portRhs = getEffectivePort(rhs.port);
+
+ if (const std::strong_ordering cmp = std::tie(portLhs, lhs.username, lhs.authType, lhs.allowZlib) <=> //username: case sensitive!
+ std::tie(portRhs, rhs.username, rhs.authType, rhs.allowZlib);
+ std::is_neq(cmp))
+ return cmp;
+
+ switch (lhs.authType)
+ {
+ case SftpAuthType::password:
+ return lhs.password <=> rhs.password; //case sensitive!
+
+ case SftpAuthType::keyFile:
+ return std::tie(lhs.password, lhs.privateKeyFilePath) <=> //case sensitive!
+ std::tie(rhs.password, rhs.privateKeyFilePath); //
+
+ case SftpAuthType::agent:
+ return std::weak_ordering::equivalent;
+ }
+ assert(false);
+ return std::weak_ordering::equivalent;
+}
+}
+
+
+namespace
+{
+Zstring concatenateSftpFolderPathPhrase(const SftpLogin& login, const AfsPath& afsPath); //noexcept
std::string getLibssh2Path(const AfsPath& afsPath)
@@ -147,13 +160,20 @@ std::string getLibssh2Path(const AfsPath& afsPath)
std::wstring getSftpDisplayPath(const SshSessionId& sessionId, const AfsPath& afsPath)
{
Zstring displayPath = Zstring(sftpPrefix) + Zstr("//");
+
if (!sessionId.username.empty()) //show username! consider AFS::compareDeviceSameAfsType()
displayPath += sessionId.username + Zstr('@');
+
displayPath += sessionId.server;
- const Zstring relPath = getServerRelPath(afsPath);
+ if (const int port = getEffectivePort(sessionId.port);
+ port != DEFAULT_PORT_SFTP)
+ displayPath += Zstr(':') + numberTo<Zstring>(port);
+
+ const Zstring& relPath = getServerRelPath(afsPath);
if (relPath != Zstr("/"))
displayPath += relPath;
+
return utfTo<std::wstring>(displayPath);
}
@@ -183,9 +203,7 @@ public:
{
ZEN_ON_SCOPE_FAIL(cleanup()); //destructor call would lead to member double clean-up!!!
- Zstring serviceName = Zstr("ssh"); //SFTP default port: 22, see %WINDIR%\system32\drivers\etc\services
- if (sessionId_.port > 0)
- serviceName = numberTo<Zstring>(sessionId_.port);
+ const Zstring& serviceName = numberTo<Zstring>(getEffectivePort(sessionId_.port));
socket_ = std::make_unique<Socket>(sessionId_.server, serviceName); //throw SysError
@@ -554,7 +572,7 @@ public:
{
if (sshSession.sftpChannels_.empty())
return msg;
- return msg + L' ' + replaceCpy(_("Failed to open SFTP channel number %x."), L"%x", numberTo<std::wstring>(sshSession.sftpChannels_.size() + 1));
+ return msg + L' ' + replaceCpy(_("Failed to open SFTP channel number %x."), L"%x", formatNumber(sshSession.sftpChannels_.size() + 1));
};
std::optional<SysError> firstSysError;
@@ -1512,11 +1530,13 @@ private:
std::is_neq(cmp))
return cmp;
- //port does NOT create a *different* data source!!! -> same thing for password!
+ //port DOES create a *different* data source! https://freefilesync.org/forum/viewtopic.php?t=9047
+ const int portLhs = getEffectivePort(lhs.port);
+ const int portRhs = getEffectivePort(rhs.port);
//consider username: different users may have different views and folder access rights!
-
- return lhs.username <=> rhs.username; //case sensitive!
+ return std::tie(portLhs, lhs.username) <=> //username: case sensitive!
+ std::tie(portRhs, rhs.username);
}
//----------------------------------------------------------------------------------------------------------------
@@ -1820,10 +1840,18 @@ private:
//expects "clean" login data
Zstring concatenateSftpFolderPathPhrase(const SftpLogin& login, const AfsPath& afsPath) //noexcept
{
+ Zstring username;
+ if (!login.username.empty())
+ username = encodeFtpUsername(login.username) + Zstr("@");
+
Zstring port;
if (login.port > 0)
port = Zstr(':') + numberTo<Zstring>(login.port);
+ Zstring relPath = getServerRelPath(afsPath);
+ if (relPath == Zstr("/"))
+ relPath.clear();
+
const SftpLogin loginDefault;
Zstring options;
@@ -1854,7 +1882,7 @@ Zstring concatenateSftpFolderPathPhrase(const SftpLogin& login, const AfsPath& a
if (!login.password.empty()) //password always last => visually truncated by folder input field
options += Zstr("|pass64=") + encodePasswordBase64(login.password);
- return Zstring(sftpPrefix) + Zstr("//") + encodeFtpUsername(login.username) + Zstr("@") + login.server + port + getServerRelPath(afsPath) + options;
+ return Zstring(sftpPrefix) + Zstr("//") + username + login.server + port + relPath + options;
}
}
@@ -1934,7 +1962,7 @@ int fff::getServerMaxChannelsPerConnection(const SftpLogin& login) //throw FileE
if (std::chrono::steady_clock::now() > timeoutTime)
throw SysError(_P("Operation timed out after 1 second.", "Operation timed out after %x seconds.",
std::chrono::seconds(SFTP_CHANNEL_LIMIT_DETECTION_TIME_OUT).count()) + L' ' +
- replaceCpy(_("Failed to open SFTP channel number %x."), L"%x", numberTo<std::wstring>(exSession->getSftpChannelCount() + 1)));
+ replaceCpy(_("Failed to open SFTP channel number %x."), L"%x", formatNumber(exSession->getSftpChannelCount() + 1)));
}
}
catch (const SysError& e)
@@ -1952,10 +1980,10 @@ bool fff::acceptsItemPathPhraseSftp(const Zstring& itemPathPhrase) //noexcept
}
-//syntax: sftp://[<user>[:<password>]@]<server>[:port]/<relative-path>[|option_name=value]
-//
-// e.g. sftp://user001:secretpassword@private.example.com:222/mydirectory/
-// sftp://user001@private.example.com/mydirectory|con=2|cpc=10|keyfile=%AppData%\id_rsa|pass64=c2VjcmV0cGFzc3dvcmQ
+/* syntax: sftp://[<user>[:<password>]@]<server>[:port]/<relative-path>[|option_name=value]
+
+ e.g. sftp://user001:secretpassword@private.example.com:222/mydirectory/
+ sftp://user001@private.example.com/mydirectory|con=2|cpc=10|keyfile=%AppData%\id_rsa|pass64=c2VjcmV0cGFzc3dvcmQ */
AbstractPath fff::createItemPathSftp(const Zstring& itemPathPhrase) //noexcept
{
Zstring pathPhrase = expandMacros(itemPathPhrase); //expand before trimming!
@@ -1969,8 +1997,8 @@ AbstractPath fff::createItemPathSftp(const Zstring& itemPathPhrase) //noexcept
const Zstring fullPathOpt = afterFirst(pathPhrase, Zstr('@'), IfNotFoundReturn::all);
SftpLogin login;
- login.username = decodeFtpUsername(beforeFirst(credentials, Zstr(':'), IfNotFoundReturn::all)); //support standard FTP syntax, even though ':'
- login.password = afterFirst(credentials, Zstr(':'), IfNotFoundReturn::none); //is not used by our concatenateSftpFolderPathPhrase()!
+ login.username = decodeFtpUsername(beforeFirst(credentials, Zstr(':'), IfNotFoundReturn::all)); //support standard FTP syntax, even though
+ login.password = afterFirst(credentials, Zstr(':'), IfNotFoundReturn::none); //concatenateSftpFolderPathPhrase() uses "pass64" instead
const Zstring fullPath = beforeFirst(fullPathOpt, Zstr('|'), IfNotFoundReturn::all);
const Zstring options = afterFirst(fullPathOpt, Zstr('|'), IfNotFoundReturn::none);
@@ -1985,27 +2013,24 @@ AbstractPath fff::createItemPathSftp(const Zstring& itemPathPhrase) //noexcept
assert(login.allowZlib == false);
- if (!options.empty())
- {
- for (const Zstring& optPhrase : split(options, Zstr("|"), SplitOnEmpty::skip))
- if (startsWith(optPhrase, Zstr("timeout=")))
- login.timeoutSec = stringTo<int>(afterFirst(optPhrase, Zstr("="), IfNotFoundReturn::none));
- else if (startsWith(optPhrase, Zstr("chan=")))
- login.traverserChannelsPerConnection = stringTo<int>(afterFirst(optPhrase, Zstr("="), IfNotFoundReturn::none));
- else if (startsWith(optPhrase, Zstr("keyfile=")))
- {
- login.authType = SftpAuthType::keyFile;
- login.privateKeyFilePath = afterFirst(optPhrase, Zstr("="), IfNotFoundReturn::none);
- }
- else if (optPhrase == Zstr("agent"))
- login.authType = SftpAuthType::agent;
- else if (startsWith(optPhrase, Zstr("pass64=")))
- login.password = decodePasswordBase64(afterFirst(optPhrase, Zstr("="), IfNotFoundReturn::none));
- else if (optPhrase == Zstr("zlib"))
- login.allowZlib = true;
- else
- assert(false);
- } //fix "-Wdangling-else"
+ for (const Zstring& optPhrase : split(options, Zstr("|"), SplitOnEmpty::skip))
+ if (startsWith(optPhrase, Zstr("timeout=")))
+ login.timeoutSec = stringTo<int>(afterFirst(optPhrase, Zstr("="), IfNotFoundReturn::none));
+ else if (startsWith(optPhrase, Zstr("chan=")))
+ login.traverserChannelsPerConnection = stringTo<int>(afterFirst(optPhrase, Zstr("="), IfNotFoundReturn::none));
+ else if (startsWith(optPhrase, Zstr("keyfile=")))
+ {
+ login.authType = SftpAuthType::keyFile;
+ login.privateKeyFilePath = afterFirst(optPhrase, Zstr("="), IfNotFoundReturn::none);
+ }
+ else if (optPhrase == Zstr("agent"))
+ login.authType = SftpAuthType::agent;
+ else if (startsWith(optPhrase, Zstr("pass64=")))
+ login.password = decodePasswordBase64(afterFirst(optPhrase, Zstr("="), IfNotFoundReturn::none));
+ else if (optPhrase == Zstr("zlib"))
+ login.allowZlib = true;
+ else
+ assert(false);
return AbstractPath(makeSharedRef<SftpFileSystem>(login), serverRelPath);
}
diff --git a/FreeFileSync/Source/afs/sftp.h b/FreeFileSync/Source/afs/sftp.h
index a7c1d45a..abb4b3bc 100644
--- a/FreeFileSync/Source/afs/sftp.h
+++ b/FreeFileSync/Source/afs/sftp.h
@@ -38,6 +38,9 @@ struct SshSessionId
Zstring privateKeyFilePath; //authType == keyFile: use PEM-encoded private key (protected by password) for authentication
bool allowZlib = false;
};
+const int DEFAULT_PORT_SFTP = 22;
+ //SFTP default port: 22, see %WINDIR%\system32\drivers\etc\services
+ //=> we could use the "ssh" alias, but let's be explicit
struct SftpLogin : SshSessionId
{
diff --git a/FreeFileSync/Source/base/status_handler_impl.h b/FreeFileSync/Source/base/status_handler_impl.h
index ded4b252..487e8605 100644
--- a/FreeFileSync/Source/base/status_handler_impl.h
+++ b/FreeFileSync/Source/base/status_handler_impl.h
@@ -213,7 +213,7 @@ private:
const ThreadStatus* ts = getThreadStatus(); //call while holding "lockCurrentStatus_" lock!!
return ts ? ts->taskIdx : static_cast<size_t>(-2);
}();
- return totalThreadCount_ > 1 ? L'[' + zen::numberTo<std::wstring>(taskIdx + 1) + L"] " : L"";
+ return totalThreadCount_ > 1 ? L'[' + zen::formatNumber(taskIdx + 1) + L"] " : L"";
}
#endif
diff --git a/FreeFileSync/Source/config.h b/FreeFileSync/Source/config.h
index 7de0d8e6..c32023ef 100644
--- a/FreeFileSync/Source/config.h
+++ b/FreeFileSync/Source/config.h
@@ -151,7 +151,7 @@ struct XmlGlobalSettings
//---------------------------------------------------------------------
//Shared (GUI/BATCH) settings
- wxLanguage programLanguage = getSystemLanguage();
+ wxLanguage programLanguage = getDefaultLanguage();
bool failSafeFileCopy = true;
bool copyLockedFiles = false; //safer default: avoid copies of partially written files
bool copyFilePermissions = false;
diff --git a/FreeFileSync/Source/localization.cpp b/FreeFileSync/Source/localization.cpp
index fc32e440..8891c956 100644
--- a/FreeFileSync/Source/localization.cpp
+++ b/FreeFileSync/Source/localization.cpp
@@ -426,8 +426,9 @@ public:
else
layoutDir_ = wxLayout_LeftToRight;
- //use sys-lang to preserve sub-language-specific rules (e.g. German Swiss number punctuation)
- //beneficial even for Arabic locale: support user-specific date settings (instead of Hijri calendar year 1441 = Gregorian 2019)
+ /* use wxLANGUAGE_DEFAULT to preserve sub-language-specific rules (e.g. number and date format)
+ - beneficial even for Arabic locale: use user-specific date settings instead of Hijri calendar year 1441 (= Gregorian 2019)
+ - note when testing: format_unit.cpp::formatNumber() always uses LOCALE_NAME_USER_DEFAULT => test date format instead */
if (!locale_)
{
//wxWidgets shows a modal dialog on error during wxLocale::Init() -> at least we can shut it up!
@@ -435,33 +436,40 @@ public:
ZEN_ON_SCOPE_EXIT(delete wxLog::SetActiveTarget(oldLogTarget));
//locale_.reset(); //avoid global locale lifetime overlap! wxWidgets cannot handle this and will crash!
- locale_ = std::make_unique<wxLocale>(sysLng_, wxLOCALE_DONT_LOAD_DEFAULT /*we're not using wxwin.mo*/);
+ locale_ = std::make_unique<wxLocale>(wxLANGUAGE_DEFAULT, wxLOCALE_DONT_LOAD_DEFAULT /*we're not using wxwin.mo*/);
+ //wxLANGUAGE_DEFAULT => internally calls std::setlocale(LC_ALL, "" /*== user-preferred locale*/) on Windows/Linux (but not macOS)
+ /* => exactly what's needed on Windows/Linux
+
+ but not needed on macOS; even detrimental:
+ - breaks wxWidgets file drag and drop! https://freefilesync.org/forum/viewtopic.php?t=8215
+ - even wxWidgets knows: "under macOS C locale must not be changed, as doing this exposes bugs in the system"
+ https://docs.wxwidgets.org/trunk/classwx_u_i_locale.html
+
+ reproduce: - std::setlocale(LC_ALL, "");
+ - double-click the app (*)
+ - drag and drop folder named "アアアア"
+ - wxFileDropTarget::OnDropFiles() called with empty file array!
+
+ *) CAVEAT: context matters! this yields a different user-preferred locale than running Contents/MacOS/FreeFileSync_main!!!
+ e.g. 1. locale after wxLocale creation is "en_US"
+ 2. call std::setlocale(LC_ALL, ""):
+ a) app was double-clicked: locale is "C" => drag/drop FAILS!
+ b) run Contents/MacOS/FreeFileSync_main: locale is "en_US.UTF-8" => drag/drop works! */
assert(locale_->IsOk());
//const char* currentLocale = std::setlocale(LC_ALL, nullptr);
-
- //call std::setlocale()?
- //Linux: wxWidgets overwrites the default locale "C" with a locale matching sysLng_, e.g. "en_US.UTF-8"
- // which may be *different* from actual user-preferred locale as set up in "Region & Language/Formats"! => fix:
-
- //Windows: apparently needed: https://freefilesync.org/forum/viewtopic.php?t=8455
- [[maybe_unused]] const char* newLocale = std::setlocale(LC_ALL, "" /*== user-preferred locale*/);
- assert(newLocale);
-
}
}
void tearDown() { locale_.reset(); lng_ = wxLANGUAGE_UNKNOWN; layoutDir_ = wxLayout_Default; }
- wxLanguage getSysLanguage() const { return sysLng_; }
- wxLanguage getLanguage () const { return lng_; }
+ wxLanguage getLanguage () const { return lng_; }
wxLayoutDirection getLayoutDirection() const { return layoutDir_; }
private:
wxWidgetsLocale() {}
~wxWidgetsLocale() { assert(!locale_); }
- const wxLanguage sysLng_ = static_cast<wxLanguage>(wxLocale::GetSystemLanguage());
wxLanguage lng_ = wxLANGUAGE_UNKNOWN;
wxLayoutDirection layoutDir_ = wxLayout_Default;
std::unique_ptr<wxLocale> locale_;
@@ -483,7 +491,7 @@ void fff::localizationInit(const Zstring& zipPath) //throw FileError
{
assert(globalTranslations.empty());
globalTranslations = loadTranslations(zipPath); //throw FileError
- setLanguage(getSystemLanguage()); //throw FileError
+ setLanguage(getDefaultLanguage()); //throw FileError
}
@@ -528,8 +536,8 @@ void fff::setLanguage(wxLanguage lng) //throw FileError
{
throw FileError(replaceCpy(replaceCpy(replaceCpy(_("Error parsing file %x, row %y, column %z."),
L"%x", fmtPath(lngFileName)),
- L"%y", numberTo<std::wstring>(e.row + 1)),
- L"%z", numberTo<std::wstring>(e.col + 1))
+ L"%y", formatNumber(e.row + 1)),
+ L"%z", formatNumber(e.col + 1))
+ L"\n\n" + e.msg);
}
catch (plural::ParsingError&)
@@ -555,10 +563,12 @@ void fff::setLanguage(wxLanguage lng) //throw FileError
}
-wxLanguage fff::getSystemLanguage()
+wxLanguage fff::getDefaultLanguage()
{
- static const wxLanguage sysLng = mapLanguageDialect(wxWidgetsLocale::getInstance().getSysLanguage());
- return sysLng;
+ static const wxLanguage defaultLng = static_cast<wxLanguage>(wxLocale::GetSystemLanguage());
+ //uses GetUserDefaultUILanguage(): https://github.com/wxWidgets/wxWidgets/commit/9600c29ff2ca13ef66b76eabadaac5ec8654b792
+
+ return defaultLng;
}
diff --git a/FreeFileSync/Source/localization.h b/FreeFileSync/Source/localization.h
index 15315bba..f7161541 100644
--- a/FreeFileSync/Source/localization.h
+++ b/FreeFileSync/Source/localization.h
@@ -26,7 +26,7 @@ struct TranslationInfo
};
const std::vector<TranslationInfo>& getAvailableTranslations();
-wxLanguage getSystemLanguage();
+wxLanguage getDefaultLanguage();
wxLanguage getLanguage();
wxLayoutDirection getLayoutDirection();
diff --git a/FreeFileSync/Source/log_file.cpp b/FreeFileSync/Source/log_file.cpp
index 32d8e267..abc39f3b 100644
--- a/FreeFileSync/Source/log_file.cpp
+++ b/FreeFileSync/Source/log_file.cpp
@@ -98,7 +98,7 @@ std::string generateLogHeaderTxt(const ProcessSummary& s, const ErrorLog& log, i
}
-std::string generateLogFooterTxt(const std::wstring& logFilePath, int logItemsTotal, int logPreviewItemsMax) //throw FileError
+std::string generateLogFooterTxt(const std::wstring& logFilePath /*optional*/, int logItemsTotal, int logPreviewItemsMax) //throw FileError
{
const ComputerModel cm = getComputerModel(); //throw FileError
@@ -107,14 +107,16 @@ std::string generateLogFooterTxt(const std::wstring& logFilePath, int logItemsTo
output += " [...] " + utfTo<std::string>(replaceCpy(_P("Showing %y of 1 item", "Showing %y of %x items", logItemsTotal), //%x used as plural form placeholder!
L"%y", formatNumber(logPreviewItemsMax))) + '\n';
- return output += '\n' + std::string(SEPARATION_LINE_LEN, '_') + '\n' +
+ output += '\n' + std::string(SEPARATION_LINE_LEN, '_') + '\n' +
- utfTo<std::string>(getOsDescription() + /*throw FileError*/ +
- L" - " + utfTo<std::wstring>(getUserDescription()) /*throw FileError*/ +
- (!cm.model .empty() ? L" - " + cm.model : L"") +
- (!cm.vendor.empty() ? L" - " + cm.vendor : L"") + L'\n' +
+ utfTo<std::string>(getOsDescription() + /*throw FileError*/ +
+ L" - " + utfTo<std::wstring>(getUserDescription()) /*throw FileError*/ +
+ (!cm.model .empty() ? L" - " + cm.model : L"") +
+ (!cm.vendor.empty() ? L" - " + cm.vendor : L"")) + '\n';
+ if (!logFilePath.empty())
+ output += utfTo<std::string>(_("Log file:") + L' ' + logFilePath) + '\n';
- _("Log file:") + L' ' + logFilePath) + '\n';
+ return output;
}
@@ -327,7 +329,7 @@ std::string generateLogHeaderHtml(const ProcessSummary& s, const ErrorLog& log,
}
-std::string generateLogFooterHtml(const std::wstring& logFilePath, int logItemsTotal, int logPreviewItemsMax) //throw FileError
+std::string generateLogFooterHtml(const std::wstring& logFilePath /*optional*/, int logItemsTotal, int logPreviewItemsMax) //throw FileError
{
const std::string osImage = "os-linux.png";
const ComputerModel cm = getComputerModel(); //throw FileError
@@ -340,7 +342,7 @@ std::string generateLogFooterHtml(const std::wstring& logFilePath, int logItemsT
htmlTxt(replaceCpy(_P("Showing %y of 1 item", "Showing %y of %x items", logItemsTotal), //%x used as plural form placeholder!
L"%y", formatNumber(logPreviewItemsMax))) + "</div>\n";
- return output += R"( <br>
+ output += R"( <br>
<div style="border-bottom:1px solid #AAA; margin:5px 0;"></div>
<div style="font-size:small;">
@@ -349,14 +351,20 @@ std::string generateLogFooterHtml(const std::wstring& logFilePath, int logItemsT
" &ndash; " + htmlTxt(getUserDescription()) /*throw FileError*/ +
(!cm.model .empty() ? " &ndash; " + htmlTxt(cm.model ) : "") +
(!cm.vendor.empty() ? " &ndash; " + htmlTxt(cm.vendor) : "") + R"(</span>
- </div>
+ </div>)";
+
+ if (!logFilePath.empty())
+ output += R"(
<div style="font-size:small;">
<img src="https://freefilesync.org/images/log/log.png" width="24" height="24" alt=")" + htmlTxt(_("Log file:")) + R"(" style="vertical-align:middle;">
<span style="font-family: Consolas,'Courier New',Courier,monospace; vertical-align:middle;">)" + htmlTxt(logFilePath) + R"(</span>
- </div>
+ </div>)";
+
+ output += R"(
</body>
</html>
)";
+ return output;
}
//-> Astyle fucks up! => no INDENT-ON
@@ -365,7 +373,6 @@ std::string generateLogFooterHtml(const std::wstring& logFilePath, int logItemsT
void streamToLogFile(const ProcessSummary& summary, //throw FileError
const ErrorLog& log,
AFS::OutputStream& streamOut,
- const AbstractPath& logFilePath,
LogFileFormat logFormat)
{
const int logItemsTotal = log.end() - log.begin();
@@ -387,8 +394,9 @@ void streamToLogFile(const ProcessSummary& summary, //throw FileError
}
buffer += logFormat == LogFileFormat::html ?
- generateLogFooterHtml(AFS::getDisplayPath(logFilePath), logItemsTotal, logPreviewItemsMax) : //throw FileError
- generateLogFooterTxt (AFS::getDisplayPath(logFilePath), logItemsTotal, logPreviewItemsMax); //throw FileError
+ generateLogFooterHtml(std::wstring() /*logFilePath*/, logItemsTotal, logPreviewItemsMax) : //throw FileError
+ generateLogFooterTxt (std::wstring() /*logFilePath*/, logItemsTotal, logPreviewItemsMax); //throw FileError
+ //=> log file path is irrelevant, except when sending email!
//don't forget to flush:
streamOut.write(&buffer[0], buffer.size()); //throw FileError, X
@@ -424,8 +432,8 @@ void saveNewLogFile(const AbstractPath& logFilePath, //throw FileError, X
//already existing: undefined behavior! (e.g. fail/overwrite/auto-rename)
std::unique_ptr<AFS::OutputStream> logFileStream = AFS::getOutputStream(logFilePath, std::nullopt /*streamSize*/, std::nullopt /*modTime*/, notifyUnbufferedIO); //throw FileError
- streamToLogFile(summary, log, *logFileStream, logFilePath, logFormat); //throw FileError, X
- logFileStream->finalize(); //throw FileError, X
+ streamToLogFile(summary, log, *logFileStream, logFormat); //throw FileError, X
+ logFileStream->finalize(); //throw FileError, X
}
diff --git a/FreeFileSync/Source/parse_lng.h b/FreeFileSync/Source/parse_lng.h
index 4ab4e0f7..60ec04e8 100644
--- a/FreeFileSync/Source/parse_lng.h
+++ b/FreeFileSync/Source/parse_lng.h
@@ -541,8 +541,8 @@ private:
//check for invalid number of plural forms
if (pluralInfo.getCount() != translation.size())
throw ParsingError({replaceCpy(replaceCpy<std::wstring>(L"Invalid number of plural forms; actual: %x, expected: %y",
- L"%x", numberTo<std::wstring>(translation.size())),
- L"%y", numberTo<std::wstring>(pluralInfo.getCount())), scn_.posRow(), scn_.posCol()});
+ L"%x", formatNumber(translation.size())),
+ L"%y", formatNumber(pluralInfo.getCount())), scn_.posRow(), scn_.posCol()});
//check for duplicate plural form translations (catch copy & paste errors for single-number form translations)
for (auto it = translation.begin(); it != translation.end(); ++it)
@@ -551,7 +551,7 @@ private:
auto it2 = std::find(it + 1, translation.end(), *it);
if (it2 != translation.end())
throw ParsingError({replaceCpy<std::wstring>(L"Duplicate plural form translation at index position %x",
- L"%x", numberTo<std::wstring>(it2 - translation.begin())), scn_.posRow(), scn_.posCol()});
+ L"%x", formatNumber(it2 - translation.begin())), scn_.posRow(), scn_.posCol()});
}
for (size_t pos = 0; pos < translation.size(); ++pos)
@@ -565,14 +565,14 @@ private:
if (!contains(translation[pos], "%x") &&
!contains(translation[pos], numberTo<std::string>(firstNumber)))
throw ParsingError({replaceCpy<std::wstring>(replaceCpy<std::wstring>(L"Plural form translation at index position %y needs to use the decimal number %z or the %x placeholder",
- L"%y", numberTo<std::wstring>(pos)), L"%z", numberTo<std::wstring>(firstNumber)), scn_.posRow(), scn_.posCol()});
+ L"%y", formatNumber(pos)), L"%z", formatNumber(firstNumber)), scn_.posRow(), scn_.posCol()});
}
}
else
{
//ensure the placeholder is used when needed
if (!contains(translation[pos], "%x"))
- throw ParsingError({replaceCpy<std::wstring>(L"Plural form at index position %y is missing the %x placeholder", L"%y", numberTo<std::wstring>(pos)), scn_.posRow(), scn_.posCol()});
+ throw ParsingError({replaceCpy<std::wstring>(L"Plural form at index position %y is missing the %x placeholder", L"%y", formatNumber(pos)), scn_.posRow(), scn_.posCol()});
}
auto checkSecondaryPlaceholder = [&](const std::string& placeholder)
diff --git a/FreeFileSync/Source/ui/batch_status_handler.cpp b/FreeFileSync/Source/ui/batch_status_handler.cpp
index b78ccae2..048461f2 100644
--- a/FreeFileSync/Source/ui/batch_status_handler.cpp
+++ b/FreeFileSync/Source/ui/batch_status_handler.cpp
@@ -37,7 +37,7 @@ BatchStatusHandler::BatchStatusHandler(bool showProgress,
soundFileSyncComplete_(soundFileSyncComplete),
soundFileAlertPending_(soundFileAlertPending),
progressDlg_(SyncProgressDialog::create(progressDlgSize, dlgMaximize, [this] { userRequestAbort(); }, *this, nullptr /*parentWindow*/, showProgress, autoCloseDialog,
-{jobName}, startTime, ignoreErrors, autoRetryCount, [&]
+{jobName}, std::chrono::system_clock::to_time_t(startTime), ignoreErrors, autoRetryCount, [&]
{
switch (postSyncAction)
{
@@ -70,9 +70,8 @@ BatchStatusHandler::Result BatchStatusHandler::reportResults(const Zstring& post
const std::set<AbstractPath>& logFilePathsToKeep,
const std::string& emailNotifyAddress, ResultsNotification emailNotifyCondition) //noexcept!!
{
- const auto totalTime = std::chrono::duration_cast<std::chrono::milliseconds>(std::chrono::system_clock::now() - startTime_);
-
- progressDlg_->timerSetStatus(false /*active*/); //keep correct summary window stats considering count down timer, system sleep
+ //keep correct summary window stats considering count down timer, system sleep
+ const std::chrono::milliseconds totalTime = progressDlg_->pauseAndGetTotalTime();
//determine post-sync status irrespective of further errors during tear-down
const SyncResult syncResult = [&]
@@ -324,7 +323,7 @@ ProcessCallback::Response BatchStatusHandler::reportError(const ErrorInfo& error
errorLog_.logMsg(errorInfo.msg + L"\n-> " + _("Automatic retry"), MSG_TYPE_INFO);
delayAndCountDown(errorInfo.failTime + autoRetryDelay_,
[&, statusPrefix = _("Automatic retry") +
- (errorInfo.retryNumber == 0 ? L"" : L' ' + numberTo<std::wstring>(errorInfo.retryNumber + 1)) + L" | ",
+ (errorInfo.retryNumber == 0 ? L"" : L' ' + formatNumber(errorInfo.retryNumber + 1)) + L" | ",
statusPostfix = L" | " + _("Error") + L": " + replaceCpy(errorInfo.msg, L'\n', L' ')](const std::wstring& timeRemMsg)
{ this->updateStatus(statusPrefix + timeRemMsg + statusPostfix); }); //throw AbortProcess
return ProcessCallback::retry;
diff --git a/FreeFileSync/Source/ui/gui_generated.cpp b/FreeFileSync/Source/ui/gui_generated.cpp
index f5a555a1..83dd284e 100644
--- a/FreeFileSync/Source/ui/gui_generated.cpp
+++ b/FreeFileSync/Source/ui/gui_generated.cpp
@@ -11,1194 +11,1194 @@
MainDialogGenerated::MainDialogGenerated( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxFrame( parent, id, title, pos, size, style )
{
- this->SetSizeHints( wxDefaultSize, wxDefaultSize );
+ this->SetSizeHints( wxDefaultSize, wxDefaultSize );
- m_menubar = new wxMenuBar( 0 );
- m_menuFile = new wxMenu();
- m_menuItemNew = new wxMenuItem( m_menuFile, wxID_NEW, wxString( _("&New") ) + wxT('\t') + wxT("Ctrl+N"), wxEmptyString, wxITEM_NORMAL );
- m_menuFile->Append( m_menuItemNew );
+ m_menubar = new wxMenuBar( 0 );
+ m_menuFile = new wxMenu();
+ m_menuItemNew = new wxMenuItem( m_menuFile, wxID_NEW, wxString( _("&New") ) + wxT('\t') + wxT("Ctrl+N"), wxEmptyString, wxITEM_NORMAL );
+ m_menuFile->Append( m_menuItemNew );
- m_menuItemLoad = new wxMenuItem( m_menuFile, wxID_OPEN, wxString( _("&Open...") ) + wxT('\t') + wxT("Ctrl+O"), wxEmptyString, wxITEM_NORMAL );
- m_menuFile->Append( m_menuItemLoad );
+ m_menuItemLoad = new wxMenuItem( m_menuFile, wxID_OPEN, wxString( _("&Open...") ) + wxT('\t') + wxT("Ctrl+O"), wxEmptyString, wxITEM_NORMAL );
+ m_menuFile->Append( m_menuItemLoad );
- m_menuFile->AppendSeparator();
+ m_menuFile->AppendSeparator();
- m_menuItemSave = new wxMenuItem( m_menuFile, wxID_SAVE, wxString( _("&Save") ) + wxT('\t') + wxT("Ctrl+S"), wxEmptyString, wxITEM_NORMAL );
- m_menuFile->Append( m_menuItemSave );
+ m_menuItemSave = new wxMenuItem( m_menuFile, wxID_SAVE, wxString( _("&Save") ) + wxT('\t') + wxT("Ctrl+S"), wxEmptyString, wxITEM_NORMAL );
+ m_menuFile->Append( m_menuItemSave );
- m_menuItemSaveAs = new wxMenuItem( m_menuFile, wxID_SAVEAS, wxString( _("Save &as...") ), wxEmptyString, wxITEM_NORMAL );
- m_menuFile->Append( m_menuItemSaveAs );
+ m_menuItemSaveAs = new wxMenuItem( m_menuFile, wxID_SAVEAS, wxString( _("Save &as...") ) , wxEmptyString, wxITEM_NORMAL );
+ m_menuFile->Append( m_menuItemSaveAs );
- m_menuItemSaveAsBatch = new wxMenuItem( m_menuFile, wxID_ANY, wxString( _("Save as &batch job...") ), wxEmptyString, wxITEM_NORMAL );
- m_menuFile->Append( m_menuItemSaveAsBatch );
+ m_menuItemSaveAsBatch = new wxMenuItem( m_menuFile, wxID_ANY, wxString( _("Save as &batch job...") ) , wxEmptyString, wxITEM_NORMAL );
+ m_menuFile->Append( m_menuItemSaveAsBatch );
- m_menuFile->AppendSeparator();
+ m_menuFile->AppendSeparator();
- m_menuItemQuit = new wxMenuItem( m_menuFile, wxID_EXIT, wxString( _("E&xit") ), wxEmptyString, wxITEM_NORMAL );
- m_menuFile->Append( m_menuItemQuit );
+ m_menuItemQuit = new wxMenuItem( m_menuFile, wxID_EXIT, wxString( _("E&xit") ) , wxEmptyString, wxITEM_NORMAL );
+ m_menuFile->Append( m_menuItemQuit );
- m_menubar->Append( m_menuFile, _("&File") );
+ m_menubar->Append( m_menuFile, _("&File") );
- m_menuActions = new wxMenu();
- m_menuItemShowLog = new wxMenuItem( m_menuActions, wxID_ANY, wxString( _("Show &log") ) + wxT('\t') + wxT("F4"), wxEmptyString, wxITEM_NORMAL );
- m_menuActions->Append( m_menuItemShowLog );
+ m_menuActions = new wxMenu();
+ m_menuItemShowLog = new wxMenuItem( m_menuActions, wxID_ANY, wxString( _("Show &log") ) + wxT('\t') + wxT("F4"), wxEmptyString, wxITEM_NORMAL );
+ m_menuActions->Append( m_menuItemShowLog );
- m_menuActions->AppendSeparator();
+ m_menuActions->AppendSeparator();
- m_menuItemCompare = new wxMenuItem( m_menuActions, wxID_ANY, wxString( _("Start &comparison") ) + wxT('\t') + wxT("F5"), wxEmptyString, wxITEM_NORMAL );
- m_menuActions->Append( m_menuItemCompare );
+ m_menuItemCompare = new wxMenuItem( m_menuActions, wxID_ANY, wxString( _("Start &comparison") ) + wxT('\t') + wxT("F5"), wxEmptyString, wxITEM_NORMAL );
+ m_menuActions->Append( m_menuItemCompare );
- m_menuActions->AppendSeparator();
+ m_menuActions->AppendSeparator();
- m_menuItemCompSettings = new wxMenuItem( m_menuActions, wxID_ANY, wxString( _("C&omparison settings") ) + wxT('\t') + wxT("F6"), wxEmptyString, wxITEM_NORMAL );
- m_menuActions->Append( m_menuItemCompSettings );
+ m_menuItemCompSettings = new wxMenuItem( m_menuActions, wxID_ANY, wxString( _("C&omparison settings") ) + wxT('\t') + wxT("F6"), wxEmptyString, wxITEM_NORMAL );
+ m_menuActions->Append( m_menuItemCompSettings );
- m_menuItemFilter = new wxMenuItem( m_menuActions, wxID_ANY, wxString( _("&Filter settings") ) + wxT('\t') + wxT("F7"), wxEmptyString, wxITEM_NORMAL );
- m_menuActions->Append( m_menuItemFilter );
+ m_menuItemFilter = new wxMenuItem( m_menuActions, wxID_ANY, wxString( _("&Filter settings") ) + wxT('\t') + wxT("F7"), wxEmptyString, wxITEM_NORMAL );
+ m_menuActions->Append( m_menuItemFilter );
- m_menuItemSyncSettings = new wxMenuItem( m_menuActions, wxID_ANY, wxString( _("S&ynchronization settings") ) + wxT('\t') + wxT("F8"), wxEmptyString, wxITEM_NORMAL );
- m_menuActions->Append( m_menuItemSyncSettings );
+ m_menuItemSyncSettings = new wxMenuItem( m_menuActions, wxID_ANY, wxString( _("S&ynchronization settings") ) + wxT('\t') + wxT("F8"), wxEmptyString, wxITEM_NORMAL );
+ m_menuActions->Append( m_menuItemSyncSettings );
- m_menuActions->AppendSeparator();
+ m_menuActions->AppendSeparator();
- m_menuItemSynchronize = new wxMenuItem( m_menuActions, wxID_ANY, wxString( _("Start &synchronization") ) + wxT('\t') + wxT("F9"), wxEmptyString, wxITEM_NORMAL );
- m_menuActions->Append( m_menuItemSynchronize );
+ m_menuItemSynchronize = new wxMenuItem( m_menuActions, wxID_ANY, wxString( _("Start &synchronization") ) + wxT('\t') + wxT("F9"), wxEmptyString, wxITEM_NORMAL );
+ m_menuActions->Append( m_menuItemSynchronize );
- m_menubar->Append( m_menuActions, _("&Actions") );
+ m_menubar->Append( m_menuActions, _("&Actions") );
- m_menuTools = new wxMenu();
- m_menuItemOptions = new wxMenuItem( m_menuTools, wxID_PREFERENCES, wxString( _("&Preferences") ) + wxT('\t') + wxT("Ctrl+,"), wxEmptyString, wxITEM_NORMAL );
- m_menuTools->Append( m_menuItemOptions );
+ m_menuTools = new wxMenu();
+ m_menuItemOptions = new wxMenuItem( m_menuTools, wxID_PREFERENCES, wxString( _("&Preferences") ) + wxT('\t') + wxT("Ctrl+,"), wxEmptyString, wxITEM_NORMAL );
+ m_menuTools->Append( m_menuItemOptions );
- m_menuLanguages = new wxMenu();
- wxMenuItem* m_menuLanguagesItem = new wxMenuItem( m_menuTools, wxID_ANY, _("&Language"), wxEmptyString, wxITEM_NORMAL, m_menuLanguages );
- m_menuTools->Append( m_menuLanguagesItem );
+ m_menuLanguages = new wxMenu();
+ wxMenuItem* m_menuLanguagesItem = new wxMenuItem( m_menuTools, wxID_ANY, _("&Language"), wxEmptyString, wxITEM_NORMAL, m_menuLanguages );
+ m_menuTools->Append( m_menuLanguagesItem );
- m_menuTools->AppendSeparator();
+ m_menuTools->AppendSeparator();
- m_menuItemFind = new wxMenuItem( m_menuTools, wxID_FIND, wxString( _("&Find...") ) + wxT('\t') + wxT("Ctrl+F"), wxEmptyString, wxITEM_NORMAL );
- m_menuTools->Append( m_menuItemFind );
+ m_menuItemFind = new wxMenuItem( m_menuTools, wxID_FIND, wxString( _("&Find...") ) + wxT('\t') + wxT("Ctrl+F"), wxEmptyString, wxITEM_NORMAL );
+ m_menuTools->Append( m_menuItemFind );
- m_menuItemExportList = new wxMenuItem( m_menuTools, wxID_ANY, wxString( _("&Export file list...") ), wxEmptyString, wxITEM_NORMAL );
- m_menuTools->Append( m_menuItemExportList );
+ m_menuItemExportList = new wxMenuItem( m_menuTools, wxID_ANY, wxString( _("&Export file list...") ) , wxEmptyString, wxITEM_NORMAL );
+ m_menuTools->Append( m_menuItemExportList );
- m_menuTools->AppendSeparator();
+ m_menuTools->AppendSeparator();
- m_menuItemResetLayout = new wxMenuItem( m_menuTools, wxID_ANY, wxString( _("&Reset layout") ), wxEmptyString, wxITEM_NORMAL );
- m_menuTools->Append( m_menuItemResetLayout );
+ m_menuItemResetLayout = new wxMenuItem( m_menuTools, wxID_ANY, wxString( _("&Reset layout") ) , wxEmptyString, wxITEM_NORMAL );
+ m_menuTools->Append( m_menuItemResetLayout );
- m_menuItemShowMain = new wxMenuItem( m_menuTools, wxID_ANY, wxString( _("dummy") ), wxEmptyString, wxITEM_NORMAL );
- m_menuTools->Append( m_menuItemShowMain );
+ m_menuItemShowMain = new wxMenuItem( m_menuTools, wxID_ANY, wxString( _("dummy") ) , wxEmptyString, wxITEM_NORMAL );
+ m_menuTools->Append( m_menuItemShowMain );
- m_menuItemShowFolders = new wxMenuItem( m_menuTools, wxID_ANY, wxString( _("dummy") ), wxEmptyString, wxITEM_NORMAL );
- m_menuTools->Append( m_menuItemShowFolders );
+ m_menuItemShowFolders = new wxMenuItem( m_menuTools, wxID_ANY, wxString( _("dummy") ) , wxEmptyString, wxITEM_NORMAL );
+ m_menuTools->Append( m_menuItemShowFolders );
- m_menuItemShowViewFilter = new wxMenuItem( m_menuTools, wxID_ANY, wxString( _("dummy") ), wxEmptyString, wxITEM_NORMAL );
- m_menuTools->Append( m_menuItemShowViewFilter );
+ m_menuItemShowViewFilter = new wxMenuItem( m_menuTools, wxID_ANY, wxString( _("dummy") ) , wxEmptyString, wxITEM_NORMAL );
+ m_menuTools->Append( m_menuItemShowViewFilter );
- m_menuItemShowConfig = new wxMenuItem( m_menuTools, wxID_ANY, wxString( _("dummy") ), wxEmptyString, wxITEM_NORMAL );
- m_menuTools->Append( m_menuItemShowConfig );
+ m_menuItemShowConfig = new wxMenuItem( m_menuTools, wxID_ANY, wxString( _("dummy") ) , wxEmptyString, wxITEM_NORMAL );
+ m_menuTools->Append( m_menuItemShowConfig );
- m_menuItemShowOverview = new wxMenuItem( m_menuTools, wxID_ANY, wxString( _("dummy") ), wxEmptyString, wxITEM_NORMAL );
- m_menuTools->Append( m_menuItemShowOverview );
+ m_menuItemShowOverview = new wxMenuItem( m_menuTools, wxID_ANY, wxString( _("dummy") ) , wxEmptyString, wxITEM_NORMAL );
+ m_menuTools->Append( m_menuItemShowOverview );
- m_menubar->Append( m_menuTools, _("&Tools") );
+ m_menubar->Append( m_menuTools, _("&Tools") );
- m_menuHelp = new wxMenu();
- m_menuItemHelp = new wxMenuItem( m_menuHelp, wxID_HELP, wxString( _("&View help") ) + wxT('\t') + wxT("F1"), wxEmptyString, wxITEM_NORMAL );
- m_menuHelp->Append( m_menuItemHelp );
+ m_menuHelp = new wxMenu();
+ m_menuItemHelp = new wxMenuItem( m_menuHelp, wxID_HELP, wxString( _("&View help") ) + wxT('\t') + wxT("F1"), wxEmptyString, wxITEM_NORMAL );
+ m_menuHelp->Append( m_menuItemHelp );
- m_menuHelp->AppendSeparator();
+ m_menuHelp->AppendSeparator();
- m_menuItemCheckVersionNow = new wxMenuItem( m_menuHelp, wxID_ANY, wxString( _("&Check for updates now") ), wxEmptyString, wxITEM_NORMAL );
- m_menuHelp->Append( m_menuItemCheckVersionNow );
+ m_menuItemCheckVersionNow = new wxMenuItem( m_menuHelp, wxID_ANY, wxString( _("&Check for updates now") ) , wxEmptyString, wxITEM_NORMAL );
+ m_menuHelp->Append( m_menuItemCheckVersionNow );
- m_menuItemCheckVersionAuto = new wxMenuItem( m_menuHelp, wxID_ANY, wxString( _("Check &automatically once a week") ), wxEmptyString, wxITEM_CHECK );
- m_menuHelp->Append( m_menuItemCheckVersionAuto );
- m_menuItemCheckVersionAuto->Check( true );
+ m_menuItemCheckVersionAuto = new wxMenuItem( m_menuHelp, wxID_ANY, wxString( _("Check &automatically once a week") ) , wxEmptyString, wxITEM_CHECK );
+ m_menuHelp->Append( m_menuItemCheckVersionAuto );
+ m_menuItemCheckVersionAuto->Check( true );
- m_menuHelp->AppendSeparator();
+ m_menuHelp->AppendSeparator();
- m_menuItemAbout = new wxMenuItem( m_menuHelp, wxID_ABOUT, wxString( _("&About") ) + wxT('\t') + wxT("Shift+F1"), wxEmptyString, wxITEM_NORMAL );
- m_menuHelp->Append( m_menuItemAbout );
+ m_menuItemAbout = new wxMenuItem( m_menuHelp, wxID_ABOUT, wxString( _("&About") ) + wxT('\t') + wxT("Shift+F1"), wxEmptyString, wxITEM_NORMAL );
+ m_menuHelp->Append( m_menuItemAbout );
- m_menubar->Append( m_menuHelp, _("&Help") );
+ m_menubar->Append( m_menuHelp, _("&Help") );
- this->SetMenuBar( m_menubar );
+ this->SetMenuBar( m_menubar );
- bSizerPanelHolder = new wxBoxSizer( wxVERTICAL );
+ bSizerPanelHolder = new wxBoxSizer( wxVERTICAL );
- m_panelTopButtons = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panelTopButtons->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ m_panelTopButtons = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panelTopButtons->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- wxBoxSizer* bSizer1791;
- bSizer1791 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer1791;
+ bSizer1791 = new wxBoxSizer( wxVERTICAL );
- bSizerTopButtons = new wxBoxSizer( wxHORIZONTAL );
+ bSizerTopButtons = new wxBoxSizer( wxHORIZONTAL );
- wxBoxSizer* bSizer261;
- bSizer261 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer261;
+ bSizer261 = new wxBoxSizer( wxHORIZONTAL );
- bSizer261->Add( 0, 0, 1, 0, 5 );
+ bSizer261->Add( 0, 0, 1, 0, 5 );
- m_bpButtonCmpConfig = new wxBitmapButton( m_panelTopButtons, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- m_bpButtonCmpConfig->SetToolTip( _("dummy") );
+ m_bpButtonCmpConfig = new wxBitmapButton( m_panelTopButtons, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ m_bpButtonCmpConfig->SetToolTip( _("dummy") );
- bSizer261->Add( m_bpButtonCmpConfig, 0, wxEXPAND, 5 );
+ bSizer261->Add( m_bpButtonCmpConfig, 0, wxEXPAND, 5 );
- bSizer261->Add( 4, 0, 0, 0, 5 );
+ bSizer261->Add( 4, 0, 0, 0, 5 );
- m_buttonCancel = new wxButton( m_panelTopButtons, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- m_buttonCancel->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- m_buttonCancel->Enable( false );
- m_buttonCancel->Hide();
+ m_buttonCancel = new wxButton( m_panelTopButtons, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ m_buttonCancel->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_buttonCancel->Enable( false );
+ m_buttonCancel->Hide();
- bSizer261->Add( m_buttonCancel, 0, wxEXPAND, 5 );
+ bSizer261->Add( m_buttonCancel, 0, wxEXPAND, 5 );
- m_buttonCompare = new zen::BitmapTextButton( m_panelTopButtons, wxID_ANY, _("Compare"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- m_buttonCompare->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- m_buttonCompare->SetToolTip( _("dummy") );
+ m_buttonCompare = new zen::BitmapTextButton( m_panelTopButtons, wxID_ANY, _("Compare"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ m_buttonCompare->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_buttonCompare->SetToolTip( _("dummy") );
- bSizer261->Add( m_buttonCompare, 0, wxEXPAND, 5 );
+ bSizer261->Add( m_buttonCompare, 0, wxEXPAND, 5 );
- m_bpButtonCmpContext = new wxBitmapButton( m_panelTopButtons, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- bSizer261->Add( m_bpButtonCmpContext, 0, wxEXPAND, 5 );
+ m_bpButtonCmpContext = new wxBitmapButton( m_panelTopButtons, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ bSizer261->Add( m_bpButtonCmpContext, 0, wxEXPAND, 5 );
- bSizer261->Add( 0, 0, 1, 0, 5 );
+ bSizer261->Add( 0, 0, 1, 0, 5 );
- bSizerTopButtons->Add( bSizer261, 1, wxEXPAND, 5 );
+ bSizerTopButtons->Add( bSizer261, 1, wxEXPAND, 5 );
- bSizerTopButtons->Add( 5, 2, 0, 0, 5 );
+ bSizerTopButtons->Add( 5, 2, 0, 0, 5 );
- wxBoxSizer* bSizer199;
- bSizer199 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer199;
+ bSizer199 = new wxBoxSizer( wxHORIZONTAL );
- bSizer199->Add( 0, 0, 1, 0, 5 );
+ bSizer199->Add( 0, 0, 1, 0, 5 );
- m_bpButtonFilter = new wxBitmapButton( m_panelTopButtons, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0|wxFULL_REPAINT_ON_RESIZE );
- m_bpButtonFilter->SetToolTip( _("dummy") );
+ m_bpButtonFilter = new wxBitmapButton( m_panelTopButtons, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0|wxFULL_REPAINT_ON_RESIZE );
+ m_bpButtonFilter->SetToolTip( _("dummy") );
- bSizer199->Add( m_bpButtonFilter, 0, wxEXPAND, 5 );
+ bSizer199->Add( m_bpButtonFilter, 0, wxEXPAND, 5 );
- m_bpButtonFilterContext = new wxBitmapButton( m_panelTopButtons, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- bSizer199->Add( m_bpButtonFilterContext, 0, wxEXPAND, 5 );
+ m_bpButtonFilterContext = new wxBitmapButton( m_panelTopButtons, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ bSizer199->Add( m_bpButtonFilterContext, 0, wxEXPAND, 5 );
- bSizer199->Add( 0, 0, 1, 0, 5 );
+ bSizer199->Add( 0, 0, 1, 0, 5 );
- bSizerTopButtons->Add( bSizer199, 0, wxEXPAND, 5 );
+ bSizerTopButtons->Add( bSizer199, 0, wxEXPAND, 5 );
- bSizerTopButtons->Add( 5, 2, 0, 0, 5 );
+ bSizerTopButtons->Add( 5, 2, 0, 0, 5 );
- wxBoxSizer* bSizer262;
- bSizer262 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer262;
+ bSizer262 = new wxBoxSizer( wxHORIZONTAL );
- bSizer262->Add( 0, 0, 1, 0, 5 );
+ bSizer262->Add( 0, 0, 1, 0, 5 );
- m_bpButtonSyncConfig = new wxBitmapButton( m_panelTopButtons, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- m_bpButtonSyncConfig->SetToolTip( _("dummy") );
+ m_bpButtonSyncConfig = new wxBitmapButton( m_panelTopButtons, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ m_bpButtonSyncConfig->SetToolTip( _("dummy") );
- bSizer262->Add( m_bpButtonSyncConfig, 0, wxEXPAND, 5 );
+ bSizer262->Add( m_bpButtonSyncConfig, 0, wxEXPAND, 5 );
- bSizer262->Add( 4, 0, 0, 0, 5 );
+ bSizer262->Add( 4, 0, 0, 0, 5 );
- m_buttonSync = new zen::BitmapTextButton( m_panelTopButtons, wxID_ANY, _("Synchronize"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- m_buttonSync->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- m_buttonSync->SetToolTip( _("dummy") );
+ m_buttonSync = new zen::BitmapTextButton( m_panelTopButtons, wxID_ANY, _("Synchronize"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ m_buttonSync->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_buttonSync->SetToolTip( _("dummy") );
- bSizer262->Add( m_buttonSync, 0, wxEXPAND, 5 );
+ bSizer262->Add( m_buttonSync, 0, wxEXPAND, 5 );
- m_bpButtonSyncContext = new wxBitmapButton( m_panelTopButtons, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- bSizer262->Add( m_bpButtonSyncContext, 0, wxEXPAND, 5 );
+ m_bpButtonSyncContext = new wxBitmapButton( m_panelTopButtons, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ bSizer262->Add( m_bpButtonSyncContext, 0, wxEXPAND, 5 );
- bSizer262->Add( 0, 0, 1, 0, 5 );
+ bSizer262->Add( 0, 0, 1, 0, 5 );
- bSizerTopButtons->Add( bSizer262, 1, wxEXPAND, 5 );
+ bSizerTopButtons->Add( bSizer262, 1, wxEXPAND, 5 );
- bSizer1791->Add( bSizerTopButtons, 1, wxEXPAND, 5 );
+ bSizer1791->Add( bSizerTopButtons, 1, wxEXPAND, 5 );
- m_panelTopButtons->SetSizer( bSizer1791 );
- m_panelTopButtons->Layout();
- bSizer1791->Fit( m_panelTopButtons );
- bSizerPanelHolder->Add( m_panelTopButtons, 0, wxEXPAND, 5 );
+ m_panelTopButtons->SetSizer( bSizer1791 );
+ m_panelTopButtons->Layout();
+ bSizer1791->Fit( m_panelTopButtons );
+ bSizerPanelHolder->Add( m_panelTopButtons, 0, wxEXPAND, 5 );
- m_panelDirectoryPairs = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL|wxBORDER_STATIC );
- wxBoxSizer* bSizer1601;
- bSizer1601 = new wxBoxSizer( wxVERTICAL );
+ m_panelDirectoryPairs = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL|wxBORDER_STATIC );
+ wxBoxSizer* bSizer1601;
+ bSizer1601 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer91;
- bSizer91 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer91;
+ bSizer91 = new wxBoxSizer( wxHORIZONTAL );
- m_panelTopLeft = new wxPanel( m_panelDirectoryPairs, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panelTopLeft->SetMinSize( wxSize( 1, -1 ) );
+ m_panelTopLeft = new wxPanel( m_panelDirectoryPairs, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panelTopLeft->SetMinSize( wxSize( 1,-1 ) );
- wxFlexGridSizer* fgSizer8;
- fgSizer8 = new wxFlexGridSizer( 0, 2, 0, 0 );
- fgSizer8->AddGrowableCol( 1 );
- fgSizer8->SetFlexibleDirection( wxBOTH );
- fgSizer8->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_ALL );
+ wxFlexGridSizer* fgSizer8;
+ fgSizer8 = new wxFlexGridSizer( 0, 2, 0, 0 );
+ fgSizer8->AddGrowableCol( 1 );
+ fgSizer8->SetFlexibleDirection( wxBOTH );
+ fgSizer8->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_ALL );
- fgSizer8->Add( 0, 0, 1, wxEXPAND, 5 );
+ fgSizer8->Add( 0, 0, 1, wxEXPAND, 5 );
- m_staticTextResolvedPathL = new wxStaticText( m_panelTopLeft, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextResolvedPathL->Wrap( -1 );
- fgSizer8->Add( m_staticTextResolvedPathL, 0, wxALIGN_CENTER_VERTICAL|wxALL, 2 );
+ m_staticTextResolvedPathL = new wxStaticText( m_panelTopLeft, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextResolvedPathL->Wrap( -1 );
+ fgSizer8->Add( m_staticTextResolvedPathL, 0, wxALIGN_CENTER_VERTICAL|wxALL, 2 );
- wxBoxSizer* bSizer159;
- bSizer159 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer159;
+ bSizer159 = new wxBoxSizer( wxHORIZONTAL );
- m_bpButtonAddPair = new wxBitmapButton( m_panelTopLeft, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- m_bpButtonAddPair->SetToolTip( _("Add folder pair") );
+ m_bpButtonAddPair = new wxBitmapButton( m_panelTopLeft, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ m_bpButtonAddPair->SetToolTip( _("Add folder pair") );
- bSizer159->Add( m_bpButtonAddPair, 0, wxEXPAND, 5 );
+ bSizer159->Add( m_bpButtonAddPair, 0, wxEXPAND, 5 );
- m_bpButtonRemovePair = new wxBitmapButton( m_panelTopLeft, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- m_bpButtonRemovePair->SetToolTip( _("Remove folder pair") );
+ m_bpButtonRemovePair = new wxBitmapButton( m_panelTopLeft, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ m_bpButtonRemovePair->SetToolTip( _("Remove folder pair") );
- bSizer159->Add( m_bpButtonRemovePair, 0, wxEXPAND, 5 );
+ bSizer159->Add( m_bpButtonRemovePair, 0, wxEXPAND, 5 );
- fgSizer8->Add( bSizer159, 0, wxEXPAND, 5 );
+ fgSizer8->Add( bSizer159, 0, wxEXPAND, 5 );
- wxBoxSizer* bSizer182;
- bSizer182 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer182;
+ bSizer182 = new wxBoxSizer( wxHORIZONTAL );
- m_folderPathLeft = new fff::FolderHistoryBox( m_panelTopLeft, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 );
- bSizer182->Add( m_folderPathLeft, 1, wxALIGN_CENTER_VERTICAL, 5 );
+ m_folderPathLeft = new fff::FolderHistoryBox( m_panelTopLeft, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 );
+ bSizer182->Add( m_folderPathLeft, 1, wxALIGN_CENTER_VERTICAL, 5 );
- m_buttonSelectFolderLeft = new wxButton( m_panelTopLeft, wxID_ANY, _("Browse"), wxDefaultPosition, wxDefaultSize, 0 );
- m_buttonSelectFolderLeft->SetToolTip( _("Select a folder") );
+ m_buttonSelectFolderLeft = new wxButton( m_panelTopLeft, wxID_ANY, _("Browse"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_buttonSelectFolderLeft->SetToolTip( _("Select a folder") );
- bSizer182->Add( m_buttonSelectFolderLeft, 0, wxEXPAND, 5 );
+ bSizer182->Add( m_buttonSelectFolderLeft, 0, wxEXPAND, 5 );
- m_bpButtonSelectAltFolderLeft = new wxBitmapButton( m_panelTopLeft, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- m_bpButtonSelectAltFolderLeft->SetToolTip( _("Access online storage") );
+ m_bpButtonSelectAltFolderLeft = new wxBitmapButton( m_panelTopLeft, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ m_bpButtonSelectAltFolderLeft->SetToolTip( _("Access online storage") );
- bSizer182->Add( m_bpButtonSelectAltFolderLeft, 0, wxEXPAND, 5 );
+ bSizer182->Add( m_bpButtonSelectAltFolderLeft, 0, wxEXPAND, 5 );
- fgSizer8->Add( bSizer182, 0, wxEXPAND, 5 );
+ fgSizer8->Add( bSizer182, 0, wxEXPAND, 5 );
- m_panelTopLeft->SetSizer( fgSizer8 );
- m_panelTopLeft->Layout();
- fgSizer8->Fit( m_panelTopLeft );
- bSizer91->Add( m_panelTopLeft, 1, wxLEFT|wxALIGN_BOTTOM, 5 );
+ m_panelTopLeft->SetSizer( fgSizer8 );
+ m_panelTopLeft->Layout();
+ fgSizer8->Fit( m_panelTopLeft );
+ bSizer91->Add( m_panelTopLeft, 1, wxLEFT|wxALIGN_BOTTOM, 5 );
- m_panelTopCenter = new wxPanel( m_panelDirectoryPairs, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- wxBoxSizer* bSizer1771;
- bSizer1771 = new wxBoxSizer( wxVERTICAL );
+ m_panelTopCenter = new wxPanel( m_panelDirectoryPairs, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ wxBoxSizer* bSizer1771;
+ bSizer1771 = new wxBoxSizer( wxVERTICAL );
- m_bpButtonSwapSides = new wxBitmapButton( m_panelTopCenter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- m_bpButtonSwapSides->SetToolTip( _("dummy") );
+ m_bpButtonSwapSides = new wxBitmapButton( m_panelTopCenter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ m_bpButtonSwapSides->SetToolTip( _("dummy") );
- bSizer1771->Add( m_bpButtonSwapSides, 0, wxEXPAND, 5 );
+ bSizer1771->Add( m_bpButtonSwapSides, 0, wxEXPAND, 5 );
- wxBoxSizer* bSizer160;
- bSizer160 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer160;
+ bSizer160 = new wxBoxSizer( wxHORIZONTAL );
- m_bpButtonLocalCompCfg = new wxBitmapButton( m_panelTopCenter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- m_bpButtonLocalCompCfg->SetToolTip( _("dummy") );
+ m_bpButtonLocalCompCfg = new wxBitmapButton( m_panelTopCenter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ m_bpButtonLocalCompCfg->SetToolTip( _("dummy") );
- bSizer160->Add( m_bpButtonLocalCompCfg, 0, wxEXPAND, 5 );
+ bSizer160->Add( m_bpButtonLocalCompCfg, 0, wxEXPAND, 5 );
- m_bpButtonLocalFilter = new wxBitmapButton( m_panelTopCenter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- m_bpButtonLocalFilter->SetToolTip( _("dummy") );
+ m_bpButtonLocalFilter = new wxBitmapButton( m_panelTopCenter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ m_bpButtonLocalFilter->SetToolTip( _("dummy") );
- bSizer160->Add( m_bpButtonLocalFilter, 0, wxEXPAND, 5 );
+ bSizer160->Add( m_bpButtonLocalFilter, 0, wxEXPAND, 5 );
- m_bpButtonLocalSyncCfg = new wxBitmapButton( m_panelTopCenter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- m_bpButtonLocalSyncCfg->SetToolTip( _("dummy") );
+ m_bpButtonLocalSyncCfg = new wxBitmapButton( m_panelTopCenter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ m_bpButtonLocalSyncCfg->SetToolTip( _("dummy") );
- bSizer160->Add( m_bpButtonLocalSyncCfg, 0, wxEXPAND, 5 );
+ bSizer160->Add( m_bpButtonLocalSyncCfg, 0, wxEXPAND, 5 );
- bSizer1771->Add( bSizer160, 1, wxALIGN_CENTER_HORIZONTAL, 5 );
+ bSizer1771->Add( bSizer160, 1, wxALIGN_CENTER_HORIZONTAL, 5 );
- m_panelTopCenter->SetSizer( bSizer1771 );
- m_panelTopCenter->Layout();
- bSizer1771->Fit( m_panelTopCenter );
- bSizer91->Add( m_panelTopCenter, 0, wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
+ m_panelTopCenter->SetSizer( bSizer1771 );
+ m_panelTopCenter->Layout();
+ bSizer1771->Fit( m_panelTopCenter );
+ bSizer91->Add( m_panelTopCenter, 0, wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
- m_panelTopRight = new wxPanel( m_panelDirectoryPairs, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panelTopRight->SetMinSize( wxSize( 1, -1 ) );
+ m_panelTopRight = new wxPanel( m_panelDirectoryPairs, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panelTopRight->SetMinSize( wxSize( 1,-1 ) );
- wxBoxSizer* bSizer183;
- bSizer183 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer183;
+ bSizer183 = new wxBoxSizer( wxVERTICAL );
- m_staticTextResolvedPathR = new wxStaticText( m_panelTopRight, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextResolvedPathR->Wrap( -1 );
- bSizer183->Add( m_staticTextResolvedPathR, 0, wxALL, 2 );
+ m_staticTextResolvedPathR = new wxStaticText( m_panelTopRight, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextResolvedPathR->Wrap( -1 );
+ bSizer183->Add( m_staticTextResolvedPathR, 0, wxALL, 2 );
- wxBoxSizer* bSizer179;
- bSizer179 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer179;
+ bSizer179 = new wxBoxSizer( wxHORIZONTAL );
- m_folderPathRight = new fff::FolderHistoryBox( m_panelTopRight, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 );
- bSizer179->Add( m_folderPathRight, 1, wxALIGN_CENTER_VERTICAL, 5 );
+ m_folderPathRight = new fff::FolderHistoryBox( m_panelTopRight, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 );
+ bSizer179->Add( m_folderPathRight, 1, wxALIGN_CENTER_VERTICAL, 5 );
- m_buttonSelectFolderRight = new wxButton( m_panelTopRight, wxID_ANY, _("Browse"), wxDefaultPosition, wxDefaultSize, 0 );
- m_buttonSelectFolderRight->SetToolTip( _("Select a folder") );
+ m_buttonSelectFolderRight = new wxButton( m_panelTopRight, wxID_ANY, _("Browse"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_buttonSelectFolderRight->SetToolTip( _("Select a folder") );
- bSizer179->Add( m_buttonSelectFolderRight, 0, wxEXPAND, 5 );
+ bSizer179->Add( m_buttonSelectFolderRight, 0, wxEXPAND, 5 );
- m_bpButtonSelectAltFolderRight = new wxBitmapButton( m_panelTopRight, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- m_bpButtonSelectAltFolderRight->SetToolTip( _("Access online storage") );
+ m_bpButtonSelectAltFolderRight = new wxBitmapButton( m_panelTopRight, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ m_bpButtonSelectAltFolderRight->SetToolTip( _("Access online storage") );
- bSizer179->Add( m_bpButtonSelectAltFolderRight, 0, wxEXPAND, 5 );
+ bSizer179->Add( m_bpButtonSelectAltFolderRight, 0, wxEXPAND, 5 );
- bSizer183->Add( bSizer179, 0, wxEXPAND, 5 );
+ bSizer183->Add( bSizer179, 0, wxEXPAND, 5 );
- m_panelTopRight->SetSizer( bSizer183 );
- m_panelTopRight->Layout();
- bSizer183->Fit( m_panelTopRight );
- bSizer91->Add( m_panelTopRight, 1, wxRIGHT|wxALIGN_BOTTOM, 5 );
+ m_panelTopRight->SetSizer( bSizer183 );
+ m_panelTopRight->Layout();
+ bSizer183->Fit( m_panelTopRight );
+ bSizer91->Add( m_panelTopRight, 1, wxRIGHT|wxALIGN_BOTTOM, 5 );
- bSizer1601->Add( bSizer91, 0, wxEXPAND, 5 );
+ bSizer1601->Add( bSizer91, 0, wxEXPAND, 5 );
- m_scrolledWindowFolderPairs = new wxScrolledWindow( m_panelDirectoryPairs, wxID_ANY, wxDefaultPosition, wxSize( -1, -1 ), wxHSCROLL|wxVSCROLL );
- m_scrolledWindowFolderPairs->SetScrollRate( 5, 5 );
- m_scrolledWindowFolderPairs->SetMinSize( wxSize( -1, 0 ) );
+ m_scrolledWindowFolderPairs = new wxScrolledWindow( m_panelDirectoryPairs, wxID_ANY, wxDefaultPosition, wxSize( -1,-1 ), wxHSCROLL|wxVSCROLL );
+ m_scrolledWindowFolderPairs->SetScrollRate( 5, 5 );
+ m_scrolledWindowFolderPairs->SetMinSize( wxSize( -1,0 ) );
- bSizerAddFolderPairs = new wxBoxSizer( wxVERTICAL );
+ bSizerAddFolderPairs = new wxBoxSizer( wxVERTICAL );
- m_scrolledWindowFolderPairs->SetSizer( bSizerAddFolderPairs );
- m_scrolledWindowFolderPairs->Layout();
- bSizerAddFolderPairs->Fit( m_scrolledWindowFolderPairs );
- bSizer1601->Add( m_scrolledWindowFolderPairs, 1, wxEXPAND, 5 );
+ m_scrolledWindowFolderPairs->SetSizer( bSizerAddFolderPairs );
+ m_scrolledWindowFolderPairs->Layout();
+ bSizerAddFolderPairs->Fit( m_scrolledWindowFolderPairs );
+ bSizer1601->Add( m_scrolledWindowFolderPairs, 1, wxEXPAND, 5 );
- m_panelDirectoryPairs->SetSizer( bSizer1601 );
- m_panelDirectoryPairs->Layout();
- bSizer1601->Fit( m_panelDirectoryPairs );
- bSizerPanelHolder->Add( m_panelDirectoryPairs, 0, wxEXPAND, 5 );
+ m_panelDirectoryPairs->SetSizer( bSizer1601 );
+ m_panelDirectoryPairs->Layout();
+ bSizer1601->Fit( m_panelDirectoryPairs );
+ bSizerPanelHolder->Add( m_panelDirectoryPairs, 0, wxEXPAND, 5 );
- m_gridOverview = new zen::Grid( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxHSCROLL|wxVSCROLL );
- m_gridOverview->SetScrollRate( 5, 5 );
- bSizerPanelHolder->Add( m_gridOverview, 0, 0, 5 );
+ m_gridOverview = new zen::Grid( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxHSCROLL|wxVSCROLL );
+ m_gridOverview->SetScrollRate( 5, 5 );
+ bSizerPanelHolder->Add( m_gridOverview, 0, 0, 5 );
- m_panelCenter = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- wxBoxSizer* bSizer1711;
- bSizer1711 = new wxBoxSizer( wxVERTICAL );
+ m_panelCenter = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ wxBoxSizer* bSizer1711;
+ bSizer1711 = new wxBoxSizer( wxVERTICAL );
- m_splitterMain = new fff::TripleSplitter( m_panelCenter, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- wxBoxSizer* bSizer1781;
- bSizer1781 = new wxBoxSizer( wxHORIZONTAL );
+ m_splitterMain = new fff::TripleSplitter( m_panelCenter, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ wxBoxSizer* bSizer1781;
+ bSizer1781 = new wxBoxSizer( wxHORIZONTAL );
- m_gridMainL = new zen::Grid( m_splitterMain, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxHSCROLL|wxVSCROLL );
- m_gridMainL->SetScrollRate( 5, 5 );
- bSizer1781->Add( m_gridMainL, 1, wxEXPAND, 5 );
+ m_gridMainL = new zen::Grid( m_splitterMain, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxHSCROLL|wxVSCROLL );
+ m_gridMainL->SetScrollRate( 5, 5 );
+ bSizer1781->Add( m_gridMainL, 1, wxEXPAND, 5 );
- m_gridMainC = new zen::Grid( m_splitterMain, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxHSCROLL|wxVSCROLL );
- m_gridMainC->SetScrollRate( 5, 5 );
- bSizer1781->Add( m_gridMainC, 0, wxEXPAND, 5 );
+ m_gridMainC = new zen::Grid( m_splitterMain, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxHSCROLL|wxVSCROLL );
+ m_gridMainC->SetScrollRate( 5, 5 );
+ bSizer1781->Add( m_gridMainC, 0, wxEXPAND, 5 );
- m_gridMainR = new zen::Grid( m_splitterMain, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxHSCROLL|wxVSCROLL );
- m_gridMainR->SetScrollRate( 5, 5 );
- bSizer1781->Add( m_gridMainR, 1, wxEXPAND, 5 );
+ m_gridMainR = new zen::Grid( m_splitterMain, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxHSCROLL|wxVSCROLL );
+ m_gridMainR->SetScrollRate( 5, 5 );
+ bSizer1781->Add( m_gridMainR, 1, wxEXPAND, 5 );
- m_splitterMain->SetSizer( bSizer1781 );
- m_splitterMain->Layout();
- bSizer1781->Fit( m_splitterMain );
- bSizer1711->Add( m_splitterMain, 1, wxEXPAND, 5 );
+ m_splitterMain->SetSizer( bSizer1781 );
+ m_splitterMain->Layout();
+ bSizer1781->Fit( m_splitterMain );
+ bSizer1711->Add( m_splitterMain, 1, wxEXPAND, 5 );
- m_panelStatusBar = new wxPanel( m_panelCenter, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL|wxBORDER_STATIC );
- wxBoxSizer* bSizer451;
- bSizer451 = new wxBoxSizer( wxHORIZONTAL );
+ m_panelStatusBar = new wxPanel( m_panelCenter, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL|wxBORDER_STATIC );
+ wxBoxSizer* bSizer451;
+ bSizer451 = new wxBoxSizer( wxHORIZONTAL );
- bSizerFileStatus = new wxBoxSizer( wxHORIZONTAL );
+ bSizerFileStatus = new wxBoxSizer( wxHORIZONTAL );
- bSizerStatusLeft = new wxBoxSizer( wxHORIZONTAL );
+ bSizerStatusLeft = new wxBoxSizer( wxHORIZONTAL );
- wxBoxSizer* bSizer53;
- bSizer53 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer53;
+ bSizer53 = new wxBoxSizer( wxHORIZONTAL );
- bSizer53->Add( 0, 0, 1, wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer53->Add( 0, 0, 1, wxALIGN_CENTER_VERTICAL, 5 );
- bSizerStatusLeftDirectories = new wxBoxSizer( wxHORIZONTAL );
+ bSizerStatusLeftDirectories = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapSmallDirectoryLeft = new wxStaticBitmap( m_panelStatusBar, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizerStatusLeftDirectories->Add( m_bitmapSmallDirectoryLeft, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_bitmapSmallDirectoryLeft = new wxStaticBitmap( m_panelStatusBar, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizerStatusLeftDirectories->Add( m_bitmapSmallDirectoryLeft, 0, wxALIGN_CENTER_VERTICAL, 5 );
- bSizerStatusLeftDirectories->Add( 2, 0, 0, 0, 5 );
+ bSizerStatusLeftDirectories->Add( 2, 0, 0, 0, 5 );
- m_staticTextStatusLeftDirs = new wxStaticText( m_panelStatusBar, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextStatusLeftDirs->Wrap( -1 );
- bSizerStatusLeftDirectories->Add( m_staticTextStatusLeftDirs, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ m_staticTextStatusLeftDirs = new wxStaticText( m_panelStatusBar, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextStatusLeftDirs->Wrap( -1 );
+ bSizerStatusLeftDirectories->Add( m_staticTextStatusLeftDirs, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
- bSizer53->Add( bSizerStatusLeftDirectories, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer53->Add( bSizerStatusLeftDirectories, 0, wxALIGN_CENTER_VERTICAL, 5 );
- bSizerStatusLeftFiles = new wxBoxSizer( wxHORIZONTAL );
+ bSizerStatusLeftFiles = new wxBoxSizer( wxHORIZONTAL );
- bSizerStatusLeftFiles->Add( 10, 0, 0, 0, 5 );
+ bSizerStatusLeftFiles->Add( 10, 0, 0, 0, 5 );
- m_bitmapSmallFileLeft = new wxStaticBitmap( m_panelStatusBar, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizerStatusLeftFiles->Add( m_bitmapSmallFileLeft, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_bitmapSmallFileLeft = new wxStaticBitmap( m_panelStatusBar, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizerStatusLeftFiles->Add( m_bitmapSmallFileLeft, 0, wxALIGN_CENTER_VERTICAL, 5 );
- bSizerStatusLeftFiles->Add( 2, 0, 0, 0, 5 );
+ bSizerStatusLeftFiles->Add( 2, 0, 0, 0, 5 );
- m_staticTextStatusLeftFiles = new wxStaticText( m_panelStatusBar, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextStatusLeftFiles->Wrap( -1 );
- bSizerStatusLeftFiles->Add( m_staticTextStatusLeftFiles, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ m_staticTextStatusLeftFiles = new wxStaticText( m_panelStatusBar, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextStatusLeftFiles->Wrap( -1 );
+ bSizerStatusLeftFiles->Add( m_staticTextStatusLeftFiles, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- bSizerStatusLeftFiles->Add( 4, 0, 0, 0, 5 );
+ bSizerStatusLeftFiles->Add( 4, 0, 0, 0, 5 );
- m_staticTextStatusLeftBytes = new wxStaticText( m_panelStatusBar, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextStatusLeftBytes->Wrap( -1 );
- bSizerStatusLeftFiles->Add( m_staticTextStatusLeftBytes, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_staticTextStatusLeftBytes = new wxStaticText( m_panelStatusBar, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextStatusLeftBytes->Wrap( -1 );
+ bSizerStatusLeftFiles->Add( m_staticTextStatusLeftBytes, 0, wxALIGN_CENTER_VERTICAL, 5 );
- bSizer53->Add( bSizerStatusLeftFiles, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer53->Add( bSizerStatusLeftFiles, 0, wxALIGN_CENTER_VERTICAL, 5 );
- bSizer53->Add( 0, 0, 1, wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer53->Add( 0, 0, 1, wxALIGN_CENTER_VERTICAL, 5 );
- bSizerStatusLeft->Add( bSizer53, 1, wxEXPAND, 5 );
+ bSizerStatusLeft->Add( bSizer53, 1, wxEXPAND, 5 );
- m_staticline9 = new wxStaticLine( m_panelStatusBar, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
- bSizerStatusLeft->Add( m_staticline9, 0, wxEXPAND|wxTOP, 2 );
+ m_staticline9 = new wxStaticLine( m_panelStatusBar, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
+ bSizerStatusLeft->Add( m_staticline9, 0, wxEXPAND|wxTOP, 2 );
- bSizerFileStatus->Add( bSizerStatusLeft, 1, wxEXPAND, 5 );
+ bSizerFileStatus->Add( bSizerStatusLeft, 1, wxEXPAND, 5 );
- bSizerFileStatus->Add( 26, 0, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ bSizerFileStatus->Add( 26, 0, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_staticTextStatusCenter = new wxStaticText( m_panelStatusBar, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextStatusCenter->Wrap( -1 );
- bSizerFileStatus->Add( m_staticTextStatusCenter, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ m_staticTextStatusCenter = new wxStaticText( m_panelStatusBar, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextStatusCenter->Wrap( -1 );
+ bSizerFileStatus->Add( m_staticTextStatusCenter, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- bSizerFileStatus->Add( 26, 0, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ bSizerFileStatus->Add( 26, 0, 0, wxALIGN_CENTER_VERTICAL, 5 );
- bSizerStatusRight = new wxBoxSizer( wxHORIZONTAL );
+ bSizerStatusRight = new wxBoxSizer( wxHORIZONTAL );
- m_staticline10 = new wxStaticLine( m_panelStatusBar, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
- bSizerStatusRight->Add( m_staticline10, 0, wxEXPAND|wxTOP, 2 );
+ m_staticline10 = new wxStaticLine( m_panelStatusBar, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
+ bSizerStatusRight->Add( m_staticline10, 0, wxEXPAND|wxTOP, 2 );
- wxBoxSizer* bSizer52;
- bSizer52 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer52;
+ bSizer52 = new wxBoxSizer( wxHORIZONTAL );
- bSizer52->Add( 0, 0, 1, wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer52->Add( 0, 0, 1, wxALIGN_CENTER_VERTICAL, 5 );
- bSizerStatusRightDirectories = new wxBoxSizer( wxHORIZONTAL );
+ bSizerStatusRightDirectories = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapSmallDirectoryRight = new wxStaticBitmap( m_panelStatusBar, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizerStatusRightDirectories->Add( m_bitmapSmallDirectoryRight, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_bitmapSmallDirectoryRight = new wxStaticBitmap( m_panelStatusBar, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizerStatusRightDirectories->Add( m_bitmapSmallDirectoryRight, 0, wxALIGN_CENTER_VERTICAL, 5 );
- bSizerStatusRightDirectories->Add( 2, 0, 0, 0, 5 );
+ bSizerStatusRightDirectories->Add( 2, 0, 0, 0, 5 );
- m_staticTextStatusRightDirs = new wxStaticText( m_panelStatusBar, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextStatusRightDirs->Wrap( -1 );
- bSizerStatusRightDirectories->Add( m_staticTextStatusRightDirs, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ m_staticTextStatusRightDirs = new wxStaticText( m_panelStatusBar, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextStatusRightDirs->Wrap( -1 );
+ bSizerStatusRightDirectories->Add( m_staticTextStatusRightDirs, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- bSizer52->Add( bSizerStatusRightDirectories, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer52->Add( bSizerStatusRightDirectories, 0, wxALIGN_CENTER_VERTICAL, 5 );
- bSizerStatusRightFiles = new wxBoxSizer( wxHORIZONTAL );
+ bSizerStatusRightFiles = new wxBoxSizer( wxHORIZONTAL );
- bSizerStatusRightFiles->Add( 10, 0, 0, 0, 5 );
+ bSizerStatusRightFiles->Add( 10, 0, 0, 0, 5 );
- m_bitmapSmallFileRight = new wxStaticBitmap( m_panelStatusBar, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizerStatusRightFiles->Add( m_bitmapSmallFileRight, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_bitmapSmallFileRight = new wxStaticBitmap( m_panelStatusBar, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizerStatusRightFiles->Add( m_bitmapSmallFileRight, 0, wxALIGN_CENTER_VERTICAL, 5 );
- bSizerStatusRightFiles->Add( 2, 0, 0, 0, 5 );
+ bSizerStatusRightFiles->Add( 2, 0, 0, 0, 5 );
- m_staticTextStatusRightFiles = new wxStaticText( m_panelStatusBar, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextStatusRightFiles->Wrap( -1 );
- bSizerStatusRightFiles->Add( m_staticTextStatusRightFiles, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ m_staticTextStatusRightFiles = new wxStaticText( m_panelStatusBar, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextStatusRightFiles->Wrap( -1 );
+ bSizerStatusRightFiles->Add( m_staticTextStatusRightFiles, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- bSizerStatusRightFiles->Add( 4, 0, 0, 0, 5 );
+ bSizerStatusRightFiles->Add( 4, 0, 0, 0, 5 );
- m_staticTextStatusRightBytes = new wxStaticText( m_panelStatusBar, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextStatusRightBytes->Wrap( -1 );
- bSizerStatusRightFiles->Add( m_staticTextStatusRightBytes, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_staticTextStatusRightBytes = new wxStaticText( m_panelStatusBar, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextStatusRightBytes->Wrap( -1 );
+ bSizerStatusRightFiles->Add( m_staticTextStatusRightBytes, 0, wxALIGN_CENTER_VERTICAL, 5 );
- bSizer52->Add( bSizerStatusRightFiles, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer52->Add( bSizerStatusRightFiles, 0, wxALIGN_CENTER_VERTICAL, 5 );
- bSizer52->Add( 0, 0, 1, wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer52->Add( 0, 0, 1, wxALIGN_CENTER_VERTICAL, 5 );
- bSizerStatusRight->Add( bSizer52, 1, wxEXPAND, 5 );
+ bSizerStatusRight->Add( bSizer52, 1, wxEXPAND, 5 );
- bSizerFileStatus->Add( bSizerStatusRight, 1, wxEXPAND, 5 );
+ bSizerFileStatus->Add( bSizerStatusRight, 1, wxEXPAND, 5 );
- bSizer451->Add( bSizerFileStatus, 1, wxEXPAND, 5 );
+ bSizer451->Add( bSizerFileStatus, 1, wxEXPAND, 5 );
- m_staticTextFullStatus = new wxStaticText( m_panelStatusBar, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextFullStatus->Wrap( -1 );
- m_staticTextFullStatus->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_staticTextFullStatus = new wxStaticText( m_panelStatusBar, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextFullStatus->Wrap( -1 );
+ m_staticTextFullStatus->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- bSizer451->Add( m_staticTextFullStatus, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
+ bSizer451->Add( m_staticTextFullStatus, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
- m_panelStatusBar->SetSizer( bSizer451 );
- m_panelStatusBar->Layout();
- bSizer451->Fit( m_panelStatusBar );
- bSizer1711->Add( m_panelStatusBar, 0, wxEXPAND, 5 );
+ m_panelStatusBar->SetSizer( bSizer451 );
+ m_panelStatusBar->Layout();
+ bSizer451->Fit( m_panelStatusBar );
+ bSizer1711->Add( m_panelStatusBar, 0, wxEXPAND, 5 );
- m_panelCenter->SetSizer( bSizer1711 );
- m_panelCenter->Layout();
- bSizer1711->Fit( m_panelCenter );
- bSizerPanelHolder->Add( m_panelCenter, 1, wxEXPAND, 5 );
+ m_panelCenter->SetSizer( bSizer1711 );
+ m_panelCenter->Layout();
+ bSizer1711->Fit( m_panelCenter );
+ bSizerPanelHolder->Add( m_panelCenter, 1, wxEXPAND, 5 );
- m_panelSearch = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- wxBoxSizer* bSizer1713;
- bSizer1713 = new wxBoxSizer( wxHORIZONTAL );
+ m_panelSearch = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ wxBoxSizer* bSizer1713;
+ bSizer1713 = new wxBoxSizer( wxHORIZONTAL );
- m_bpButtonHideSearch = new wxBitmapButton( m_panelSearch, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- m_bpButtonHideSearch->SetToolTip( _("Close search bar") );
+ m_bpButtonHideSearch = new wxBitmapButton( m_panelSearch, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ m_bpButtonHideSearch->SetToolTip( _("Close search bar") );
- bSizer1713->Add( m_bpButtonHideSearch, 0, wxRIGHT|wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer1713->Add( m_bpButtonHideSearch, 0, wxRIGHT|wxALIGN_CENTER_VERTICAL, 5 );
- m_staticText101 = new wxStaticText( m_panelSearch, wxID_ANY, _("Find:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText101->Wrap( -1 );
- bSizer1713->Add( m_staticText101, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_staticText101 = new wxStaticText( m_panelSearch, wxID_ANY, _("Find:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText101->Wrap( -1 );
+ bSizer1713->Add( m_staticText101, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_textCtrlSearchTxt = new wxTextCtrl( m_panelSearch, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( -1, -1 ), wxTE_PROCESS_ENTER|wxWANTS_CHARS );
- bSizer1713->Add( m_textCtrlSearchTxt, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
+ m_textCtrlSearchTxt = new wxTextCtrl( m_panelSearch, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( -1,-1 ), wxTE_PROCESS_ENTER|wxWANTS_CHARS );
+ bSizer1713->Add( m_textCtrlSearchTxt, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
- m_checkBoxMatchCase = new wxCheckBox( m_panelSearch, wxID_ANY, _("Match case"), wxDefaultPosition, wxDefaultSize, 0 );
- bSizer1713->Add( m_checkBoxMatchCase, 1, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
+ m_checkBoxMatchCase = new wxCheckBox( m_panelSearch, wxID_ANY, _("Match case"), wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer1713->Add( m_checkBoxMatchCase, 1, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
- m_panelSearch->SetSizer( bSizer1713 );
- m_panelSearch->Layout();
- bSizer1713->Fit( m_panelSearch );
- bSizerPanelHolder->Add( m_panelSearch, 0, 0, 5 );
+ m_panelSearch->SetSizer( bSizer1713 );
+ m_panelSearch->Layout();
+ bSizer1713->Fit( m_panelSearch );
+ bSizerPanelHolder->Add( m_panelSearch, 0, 0, 5 );
- m_panelLog = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panelLog->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ m_panelLog = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panelLog->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- bSizerLog = new wxBoxSizer( wxVERTICAL );
+ bSizerLog = new wxBoxSizer( wxVERTICAL );
- bSizer42 = new wxBoxSizer( wxHORIZONTAL );
+ bSizer42 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapSyncResult = new wxStaticBitmap( m_panelLog, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), 0 );
- bSizer42->Add( m_bitmapSyncResult, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
+ m_bitmapSyncResult = new wxStaticBitmap( m_panelLog, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ bSizer42->Add( m_bitmapSyncResult, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
- m_staticTextSyncResult = new wxStaticText( m_panelLog, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextSyncResult->Wrap( -1 );
- m_staticTextSyncResult->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_staticTextSyncResult = new wxStaticText( m_panelLog, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextSyncResult->Wrap( -1 );
+ m_staticTextSyncResult->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- bSizer42->Add( m_staticTextSyncResult, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 10 );
+ bSizer42->Add( m_staticTextSyncResult, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 10 );
- bSizer42->Add( 10, 0, 0, 0, 5 );
+ bSizer42->Add( 10, 0, 0, 0, 5 );
- ffgSizer11 = new wxFlexGridSizer( 2, 0, 5, 5 );
- ffgSizer11->SetFlexibleDirection( wxBOTH );
- ffgSizer11->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
+ ffgSizer11 = new wxFlexGridSizer( 2, 0, 5, 5 );
+ ffgSizer11->SetFlexibleDirection( wxBOTH );
+ ffgSizer11->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
- m_staticTextProcessed = new wxStaticText( m_panelLog, wxID_ANY, _("Processed:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextProcessed->Wrap( -1 );
- ffgSizer11->Add( m_staticTextProcessed, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxRIGHT, 5 );
+ m_staticTextProcessed = new wxStaticText( m_panelLog, wxID_ANY, _("Processed:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextProcessed->Wrap( -1 );
+ ffgSizer11->Add( m_staticTextProcessed, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxRIGHT, 5 );
- m_staticTextRemaining = new wxStaticText( m_panelLog, wxID_ANY, _("Remaining:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextRemaining->Wrap( -1 );
- ffgSizer11->Add( m_staticTextRemaining, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
+ m_staticTextRemaining = new wxStaticText( m_panelLog, wxID_ANY, _("Remaining:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextRemaining->Wrap( -1 );
+ ffgSizer11->Add( m_staticTextRemaining, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
- bSizer42->Add( ffgSizer11, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM, 10 );
+ bSizer42->Add( ffgSizer11, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM, 10 );
- m_panelItemStats = new wxPanel( m_panelLog, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 );
- m_panelItemStats->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
+ m_panelItemStats = new wxPanel( m_panelLog, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 );
+ m_panelItemStats->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
- wxBoxSizer* bSizer291;
- bSizer291 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer291;
+ bSizer291 = new wxBoxSizer( wxVERTICAL );
- ffgSizer111 = new wxFlexGridSizer( 0, 2, 5, 5 );
- ffgSizer111->SetFlexibleDirection( wxBOTH );
- ffgSizer111->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
+ ffgSizer111 = new wxFlexGridSizer( 0, 2, 5, 5 );
+ ffgSizer111->SetFlexibleDirection( wxBOTH );
+ ffgSizer111->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
- wxBoxSizer* bSizer293;
- bSizer293 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer293;
+ bSizer293 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapItemStat = new wxStaticBitmap( m_panelItemStats, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer293->Add( m_bitmapItemStat, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
+ m_bitmapItemStat = new wxStaticBitmap( m_panelItemStats, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer293->Add( m_bitmapItemStat, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
- bSizer293->Add( 0, 0, 1, 0, 5 );
+ bSizer293->Add( 0, 0, 1, 0, 5 );
- m_staticTextItemsProcessed = new wxStaticText( m_panelItemStats, wxID_ANY, _("dummy"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- m_staticTextItemsProcessed->Wrap( -1 );
- m_staticTextItemsProcessed->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_staticTextItemsProcessed = new wxStaticText( m_panelItemStats, wxID_ANY, _("dummy"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ m_staticTextItemsProcessed->Wrap( -1 );
+ m_staticTextItemsProcessed->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- bSizer293->Add( m_staticTextItemsProcessed, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer293->Add( m_staticTextItemsProcessed, 0, wxALIGN_CENTER_VERTICAL, 5 );
- ffgSizer111->Add( bSizer293, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
+ ffgSizer111->Add( bSizer293, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
- m_staticTextBytesProcessed = new wxStaticText( m_panelItemStats, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextBytesProcessed->Wrap( -1 );
- ffgSizer111->Add( m_staticTextBytesProcessed, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT, 5 );
+ m_staticTextBytesProcessed = new wxStaticText( m_panelItemStats, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextBytesProcessed->Wrap( -1 );
+ ffgSizer111->Add( m_staticTextBytesProcessed, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT, 5 );
- m_staticTextItemsRemaining = new wxStaticText( m_panelItemStats, wxID_ANY, _("dummy"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- m_staticTextItemsRemaining->Wrap( -1 );
- m_staticTextItemsRemaining->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_staticTextItemsRemaining = new wxStaticText( m_panelItemStats, wxID_ANY, _("dummy"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ m_staticTextItemsRemaining->Wrap( -1 );
+ m_staticTextItemsRemaining->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- ffgSizer111->Add( m_staticTextItemsRemaining, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5 );
+ ffgSizer111->Add( m_staticTextItemsRemaining, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5 );
- m_staticTextBytesRemaining = new wxStaticText( m_panelItemStats, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextBytesRemaining->Wrap( -1 );
- ffgSizer111->Add( m_staticTextBytesRemaining, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5 );
+ m_staticTextBytesRemaining = new wxStaticText( m_panelItemStats, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextBytesRemaining->Wrap( -1 );
+ ffgSizer111->Add( m_staticTextBytesRemaining, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5 );
- bSizer291->Add( ffgSizer111, 0, wxALL, 5 );
+ bSizer291->Add( ffgSizer111, 0, wxALL, 5 );
- m_panelItemStats->SetSizer( bSizer291 );
- m_panelItemStats->Layout();
- bSizer291->Fit( m_panelItemStats );
- bSizer42->Add( m_panelItemStats, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 10 );
+ m_panelItemStats->SetSizer( bSizer291 );
+ m_panelItemStats->Layout();
+ bSizer291->Fit( m_panelItemStats );
+ bSizer42->Add( m_panelItemStats, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 10 );
- m_panelTimeStats = new wxPanel( m_panelLog, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 );
- m_panelTimeStats->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
+ m_panelTimeStats = new wxPanel( m_panelLog, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 );
+ m_panelTimeStats->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
- wxBoxSizer* bSizer292;
- bSizer292 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer292;
+ bSizer292 = new wxBoxSizer( wxVERTICAL );
- ffgSizer112 = new wxFlexGridSizer( 0, 1, 5, 5 );
- ffgSizer112->SetFlexibleDirection( wxBOTH );
- ffgSizer112->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
+ ffgSizer112 = new wxFlexGridSizer( 0, 1, 5, 5 );
+ ffgSizer112->SetFlexibleDirection( wxBOTH );
+ ffgSizer112->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
- wxBoxSizer* bSizer294;
- bSizer294 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer294;
+ bSizer294 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapTimeStat = new wxStaticBitmap( m_panelTimeStats, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer294->Add( m_bitmapTimeStat, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
+ m_bitmapTimeStat = new wxStaticBitmap( m_panelTimeStats, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer294->Add( m_bitmapTimeStat, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
- bSizer294->Add( 0, 0, 1, 0, 5 );
+ bSizer294->Add( 0, 0, 1, 0, 5 );
- m_staticTextTimeElapsed = new wxStaticText( m_panelTimeStats, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextTimeElapsed->Wrap( -1 );
- m_staticTextTimeElapsed->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_staticTextTimeElapsed = new wxStaticText( m_panelTimeStats, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextTimeElapsed->Wrap( -1 );
+ m_staticTextTimeElapsed->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- bSizer294->Add( m_staticTextTimeElapsed, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer294->Add( m_staticTextTimeElapsed, 0, wxALIGN_CENTER_VERTICAL, 5 );
- ffgSizer112->Add( bSizer294, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
+ ffgSizer112->Add( bSizer294, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
- bSizer292->Add( ffgSizer112, 0, wxALL, 5 );
+ bSizer292->Add( ffgSizer112, 0, wxALL, 5 );
- m_panelTimeStats->SetSizer( bSizer292 );
- m_panelTimeStats->Layout();
- bSizer292->Fit( m_panelTimeStats );
- bSizer42->Add( m_panelTimeStats, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 10 );
+ m_panelTimeStats->SetSizer( bSizer292 );
+ m_panelTimeStats->Layout();
+ bSizer292->Fit( m_panelTimeStats );
+ bSizer42->Add( m_panelTimeStats, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 10 );
- bSizerLog->Add( bSizer42, 0, wxLEFT, 5 );
+ bSizerLog->Add( bSizer42, 0, wxLEFT, 5 );
- m_staticline70 = new wxStaticLine( m_panelLog, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizerLog->Add( m_staticline70, 0, wxEXPAND, 5 );
+ m_staticline70 = new wxStaticLine( m_panelLog, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizerLog->Add( m_staticline70, 0, wxEXPAND, 5 );
- m_panelLog->SetSizer( bSizerLog );
- m_panelLog->Layout();
- bSizerLog->Fit( m_panelLog );
- bSizerPanelHolder->Add( m_panelLog, 0, 0, 5 );
+ m_panelLog->SetSizer( bSizerLog );
+ m_panelLog->Layout();
+ bSizerLog->Fit( m_panelLog );
+ bSizerPanelHolder->Add( m_panelLog, 0, 0, 5 );
- m_panelConfig = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panelConfig->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ m_panelConfig = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panelConfig->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- bSizerConfig = new wxBoxSizer( wxHORIZONTAL );
+ bSizerConfig = new wxBoxSizer( wxHORIZONTAL );
- bSizerCfgHistoryButtons = new wxBoxSizer( wxHORIZONTAL );
+ bSizerCfgHistoryButtons = new wxBoxSizer( wxHORIZONTAL );
- wxBoxSizer* bSizer17611;
- bSizer17611 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer17611;
+ bSizer17611 = new wxBoxSizer( wxVERTICAL );
- m_bpButtonNew = new wxBitmapButton( m_panelConfig, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- m_bpButtonNew->SetToolTip( _("dummy") );
+ m_bpButtonNew = new wxBitmapButton( m_panelConfig, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ m_bpButtonNew->SetToolTip( _("dummy") );
- bSizer17611->Add( m_bpButtonNew, 0, wxEXPAND, 5 );
+ bSizer17611->Add( m_bpButtonNew, 0, wxEXPAND, 5 );
- m_staticText951 = new wxStaticText( m_panelConfig, wxID_ANY, _("New"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText951->Wrap( -1 );
- bSizer17611->Add( m_staticText951, 0, wxALIGN_CENTER_HORIZONTAL|wxRIGHT|wxLEFT, 2 );
+ m_staticText951 = new wxStaticText( m_panelConfig, wxID_ANY, _("New"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText951->Wrap( -1 );
+ bSizer17611->Add( m_staticText951, 0, wxALIGN_CENTER_HORIZONTAL|wxRIGHT|wxLEFT, 2 );
- bSizerCfgHistoryButtons->Add( bSizer17611, 0, 0, 5 );
+ bSizerCfgHistoryButtons->Add( bSizer17611, 0, 0, 5 );
- wxBoxSizer* bSizer1761;
- bSizer1761 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer1761;
+ bSizer1761 = new wxBoxSizer( wxVERTICAL );
- m_bpButtonOpen = new wxBitmapButton( m_panelConfig, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- m_bpButtonOpen->SetToolTip( _("dummy") );
+ m_bpButtonOpen = new wxBitmapButton( m_panelConfig, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ m_bpButtonOpen->SetToolTip( _("dummy") );
- bSizer1761->Add( m_bpButtonOpen, 0, wxEXPAND, 5 );
+ bSizer1761->Add( m_bpButtonOpen, 0, wxEXPAND, 5 );
- m_staticText95 = new wxStaticText( m_panelConfig, wxID_ANY, _("Open..."), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText95->Wrap( -1 );
- bSizer1761->Add( m_staticText95, 0, wxALIGN_CENTER_HORIZONTAL|wxRIGHT|wxLEFT, 2 );
+ m_staticText95 = new wxStaticText( m_panelConfig, wxID_ANY, _("Open..."), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText95->Wrap( -1 );
+ bSizer1761->Add( m_staticText95, 0, wxALIGN_CENTER_HORIZONTAL|wxRIGHT|wxLEFT, 2 );
- bSizerCfgHistoryButtons->Add( bSizer1761, 0, 0, 5 );
+ bSizerCfgHistoryButtons->Add( bSizer1761, 0, 0, 5 );
- wxBoxSizer* bSizer175;
- bSizer175 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer175;
+ bSizer175 = new wxBoxSizer( wxVERTICAL );
- m_bpButtonSave = new wxBitmapButton( m_panelConfig, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- m_bpButtonSave->SetToolTip( _("dummy") );
+ m_bpButtonSave = new wxBitmapButton( m_panelConfig, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ m_bpButtonSave->SetToolTip( _("dummy") );
- bSizer175->Add( m_bpButtonSave, 0, wxEXPAND, 5 );
+ bSizer175->Add( m_bpButtonSave, 0, wxEXPAND, 5 );
- m_staticText961 = new wxStaticText( m_panelConfig, wxID_ANY, _("Save"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText961->Wrap( -1 );
- bSizer175->Add( m_staticText961, 0, wxALIGN_CENTER_HORIZONTAL|wxRIGHT|wxLEFT, 2 );
+ m_staticText961 = new wxStaticText( m_panelConfig, wxID_ANY, _("Save"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText961->Wrap( -1 );
+ bSizer175->Add( m_staticText961, 0, wxALIGN_CENTER_HORIZONTAL|wxRIGHT|wxLEFT, 2 );
- bSizerCfgHistoryButtons->Add( bSizer175, 0, 0, 5 );
+ bSizerCfgHistoryButtons->Add( bSizer175, 0, 0, 5 );
- wxBoxSizer* bSizer174;
- bSizer174 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer174;
+ bSizer174 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer1772;
- bSizer1772 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer1772;
+ bSizer1772 = new wxBoxSizer( wxHORIZONTAL );
- m_bpButtonSaveAs = new wxBitmapButton( m_panelConfig, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- m_bpButtonSaveAs->SetToolTip( _("dummy") );
+ m_bpButtonSaveAs = new wxBitmapButton( m_panelConfig, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ m_bpButtonSaveAs->SetToolTip( _("dummy") );
- bSizer1772->Add( m_bpButtonSaveAs, 1, 0, 5 );
+ bSizer1772->Add( m_bpButtonSaveAs, 1, 0, 5 );
- m_bpButtonSaveAsBatch = new wxBitmapButton( m_panelConfig, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- m_bpButtonSaveAsBatch->SetToolTip( _("dummy") );
+ m_bpButtonSaveAsBatch = new wxBitmapButton( m_panelConfig, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ m_bpButtonSaveAsBatch->SetToolTip( _("dummy") );
- bSizer1772->Add( m_bpButtonSaveAsBatch, 1, 0, 5 );
+ bSizer1772->Add( m_bpButtonSaveAsBatch, 1, 0, 5 );
- bSizer174->Add( bSizer1772, 0, wxEXPAND, 5 );
+ bSizer174->Add( bSizer1772, 0, wxEXPAND, 5 );
- m_staticText97 = new wxStaticText( m_panelConfig, wxID_ANY, _("Save as..."), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText97->Wrap( -1 );
- bSizer174->Add( m_staticText97, 0, wxALIGN_CENTER_HORIZONTAL|wxRIGHT|wxLEFT, 2 );
+ m_staticText97 = new wxStaticText( m_panelConfig, wxID_ANY, _("Save as..."), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText97->Wrap( -1 );
+ bSizer174->Add( m_staticText97, 0, wxALIGN_CENTER_HORIZONTAL|wxRIGHT|wxLEFT, 2 );
- bSizerCfgHistoryButtons->Add( bSizer174, 0, 0, 5 );
+ bSizerCfgHistoryButtons->Add( bSizer174, 0, 0, 5 );
- bSizerConfig->Add( bSizerCfgHistoryButtons, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ bSizerConfig->Add( bSizerCfgHistoryButtons, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- m_staticline81 = new wxStaticLine( m_panelConfig, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizerConfig->Add( m_staticline81, 0, wxEXPAND|wxTOP, 5 );
+ m_staticline81 = new wxStaticLine( m_panelConfig, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizerConfig->Add( m_staticline81, 0, wxEXPAND|wxTOP, 5 );
- m_gridCfgHistory = new zen::Grid( m_panelConfig, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxHSCROLL|wxVSCROLL );
- m_gridCfgHistory->SetScrollRate( 5, 5 );
- bSizerConfig->Add( m_gridCfgHistory, 1, wxEXPAND, 5 );
+ m_gridCfgHistory = new zen::Grid( m_panelConfig, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxHSCROLL|wxVSCROLL );
+ m_gridCfgHistory->SetScrollRate( 5, 5 );
+ bSizerConfig->Add( m_gridCfgHistory, 1, wxEXPAND, 5 );
- m_panelConfig->SetSizer( bSizerConfig );
- m_panelConfig->Layout();
- bSizerConfig->Fit( m_panelConfig );
- bSizerPanelHolder->Add( m_panelConfig, 0, 0, 5 );
+ m_panelConfig->SetSizer( bSizerConfig );
+ m_panelConfig->Layout();
+ bSizerConfig->Fit( m_panelConfig );
+ bSizerPanelHolder->Add( m_panelConfig, 0, 0, 5 );
- m_panelViewFilter = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panelViewFilter->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ m_panelViewFilter = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panelViewFilter->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- bSizerViewFilter = new wxBoxSizer( wxHORIZONTAL );
+ bSizerViewFilter = new wxBoxSizer( wxHORIZONTAL );
- m_bpButtonToggleLog = new wxBitmapButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|0 );
- bSizerViewFilter->Add( m_bpButtonToggleLog, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ m_bpButtonToggleLog = new wxBitmapButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|0 );
+ bSizerViewFilter->Add( m_bpButtonToggleLog, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
- bSizerViewFilter->Add( 0, 0, 1, wxEXPAND, 5 );
+ bSizerViewFilter->Add( 0, 0, 1, wxEXPAND, 5 );
- m_bpButtonViewType = new zen::ToggleButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- bSizerViewFilter->Add( m_bpButtonViewType, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
+ m_bpButtonViewType = new zen::ToggleButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ bSizerViewFilter->Add( m_bpButtonViewType, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
- wxBoxSizer* bSizer300;
- bSizer300 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer300;
+ bSizer300 = new wxBoxSizer( wxHORIZONTAL );
- m_bpButtonShowExcluded = new zen::ToggleButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- bSizer300->Add( m_bpButtonShowExcluded, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL|wxRIGHT, 5 );
+ m_bpButtonShowExcluded = new zen::ToggleButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ bSizer300->Add( m_bpButtonShowExcluded, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL|wxRIGHT, 5 );
- m_bpButtonShowDeleteLeft = new zen::ToggleButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- bSizer300->Add( m_bpButtonShowDeleteLeft, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ m_bpButtonShowDeleteLeft = new zen::ToggleButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ bSizer300->Add( m_bpButtonShowDeleteLeft, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
- m_bpButtonShowUpdateLeft = new zen::ToggleButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- bSizer300->Add( m_bpButtonShowUpdateLeft, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ m_bpButtonShowUpdateLeft = new zen::ToggleButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ bSizer300->Add( m_bpButtonShowUpdateLeft, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
- m_bpButtonShowCreateLeft = new zen::ToggleButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- bSizer300->Add( m_bpButtonShowCreateLeft, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ m_bpButtonShowCreateLeft = new zen::ToggleButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ bSizer300->Add( m_bpButtonShowCreateLeft, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
- m_bpButtonShowLeftOnly = new zen::ToggleButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- bSizer300->Add( m_bpButtonShowLeftOnly, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ m_bpButtonShowLeftOnly = new zen::ToggleButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ bSizer300->Add( m_bpButtonShowLeftOnly, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
- m_bpButtonShowLeftNewer = new zen::ToggleButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- bSizer300->Add( m_bpButtonShowLeftNewer, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ m_bpButtonShowLeftNewer = new zen::ToggleButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ bSizer300->Add( m_bpButtonShowLeftNewer, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
- m_bpButtonShowEqual = new zen::ToggleButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- bSizer300->Add( m_bpButtonShowEqual, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ m_bpButtonShowEqual = new zen::ToggleButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ bSizer300->Add( m_bpButtonShowEqual, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
- m_bpButtonShowDoNothing = new zen::ToggleButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- bSizer300->Add( m_bpButtonShowDoNothing, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ m_bpButtonShowDoNothing = new zen::ToggleButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ bSizer300->Add( m_bpButtonShowDoNothing, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
- m_bpButtonShowDifferent = new zen::ToggleButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- bSizer300->Add( m_bpButtonShowDifferent, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ m_bpButtonShowDifferent = new zen::ToggleButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ bSizer300->Add( m_bpButtonShowDifferent, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
- m_bpButtonShowRightNewer = new zen::ToggleButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- bSizer300->Add( m_bpButtonShowRightNewer, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ m_bpButtonShowRightNewer = new zen::ToggleButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ bSizer300->Add( m_bpButtonShowRightNewer, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
- m_bpButtonShowRightOnly = new zen::ToggleButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- bSizer300->Add( m_bpButtonShowRightOnly, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ m_bpButtonShowRightOnly = new zen::ToggleButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ bSizer300->Add( m_bpButtonShowRightOnly, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
- m_bpButtonShowCreateRight = new zen::ToggleButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- bSizer300->Add( m_bpButtonShowCreateRight, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ m_bpButtonShowCreateRight = new zen::ToggleButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ bSizer300->Add( m_bpButtonShowCreateRight, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
- m_bpButtonShowUpdateRight = new zen::ToggleButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- bSizer300->Add( m_bpButtonShowUpdateRight, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ m_bpButtonShowUpdateRight = new zen::ToggleButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ bSizer300->Add( m_bpButtonShowUpdateRight, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
- m_bpButtonShowDeleteRight = new zen::ToggleButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- bSizer300->Add( m_bpButtonShowDeleteRight, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ m_bpButtonShowDeleteRight = new zen::ToggleButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ bSizer300->Add( m_bpButtonShowDeleteRight, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
- m_bpButtonShowConflict = new zen::ToggleButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- bSizer300->Add( m_bpButtonShowConflict, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ m_bpButtonShowConflict = new zen::ToggleButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ bSizer300->Add( m_bpButtonShowConflict, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
- m_bpButtonViewFilterContext = new wxBitmapButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- bSizer300->Add( m_bpButtonViewFilterContext, 0, wxEXPAND, 5 );
+ m_bpButtonViewFilterContext = new wxBitmapButton( m_panelViewFilter, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ bSizer300->Add( m_bpButtonViewFilterContext, 0, wxEXPAND, 5 );
- bSizerViewFilter->Add( bSizer300, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ bSizerViewFilter->Add( bSizer300, 0, wxALIGN_CENTER_VERTICAL, 5 );
- bSizerViewFilter->Add( 0, 0, 1, wxEXPAND, 5 );
+ bSizerViewFilter->Add( 0, 0, 1, wxEXPAND, 5 );
- m_staticText96 = new wxStaticText( m_panelViewFilter, wxID_ANY, _("Statistics:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText96->Wrap( -1 );
- bSizerViewFilter->Add( m_staticText96, 0, wxALL|wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ m_staticText96 = new wxStaticText( m_panelViewFilter, wxID_ANY, _("Statistics:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText96->Wrap( -1 );
+ bSizerViewFilter->Add( m_staticText96, 0, wxALL|wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
- m_panelStatistics = new wxPanel( m_panelViewFilter, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL|wxBORDER_SUNKEN );
- m_panelStatistics->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ m_panelStatistics = new wxPanel( m_panelViewFilter, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL|wxBORDER_SUNKEN );
+ m_panelStatistics->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- bSizer1801 = new wxBoxSizer( wxVERTICAL );
+ bSizer1801 = new wxBoxSizer( wxVERTICAL );
- bSizerStatistics = new wxBoxSizer( wxHORIZONTAL );
+ bSizerStatistics = new wxBoxSizer( wxHORIZONTAL );
- wxBoxSizer* bSizer173;
- bSizer173 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer173;
+ bSizer173 = new wxBoxSizer( wxVERTICAL );
- m_bitmapDeleteLeft = new wxStaticBitmap( m_panelStatistics, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- m_bitmapDeleteLeft->SetToolTip( _("Number of files and folders that will be deleted") );
+ m_bitmapDeleteLeft = new wxStaticBitmap( m_panelStatistics, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ m_bitmapDeleteLeft->SetToolTip( _("Number of files and folders that will be deleted") );
- bSizer173->Add( m_bitmapDeleteLeft, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer173->Add( m_bitmapDeleteLeft, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- bSizer173->Add( 5, 2, 0, 0, 5 );
+ bSizer173->Add( 5, 2, 0, 0, 5 );
- bSizer173->Add( 0, 0, 1, wxEXPAND, 5 );
+ bSizer173->Add( 0, 0, 1, wxEXPAND, 5 );
- m_staticTextDeleteLeft = new wxStaticText( m_panelStatistics, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextDeleteLeft->Wrap( -1 );
- m_staticTextDeleteLeft->SetToolTip( _("Number of files and folders that will be deleted") );
+ m_staticTextDeleteLeft = new wxStaticText( m_panelStatistics, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextDeleteLeft->Wrap( -1 );
+ m_staticTextDeleteLeft->SetToolTip( _("Number of files and folders that will be deleted") );
- bSizer173->Add( m_staticTextDeleteLeft, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer173->Add( m_staticTextDeleteLeft, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- bSizerStatistics->Add( bSizer173, 0, wxEXPAND, 5 );
+ bSizerStatistics->Add( bSizer173, 0, wxEXPAND, 5 );
- bSizerStatistics->Add( 5, 5, 0, 0, 5 );
+ bSizerStatistics->Add( 5, 5, 0, 0, 5 );
- wxBoxSizer* bSizer172;
- bSizer172 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer172;
+ bSizer172 = new wxBoxSizer( wxVERTICAL );
- m_bitmapUpdateLeft = new wxStaticBitmap( m_panelStatistics, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- m_bitmapUpdateLeft->SetToolTip( _("Number of files that will be updated") );
+ m_bitmapUpdateLeft = new wxStaticBitmap( m_panelStatistics, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ m_bitmapUpdateLeft->SetToolTip( _("Number of files that will be updated") );
- bSizer172->Add( m_bitmapUpdateLeft, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer172->Add( m_bitmapUpdateLeft, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- bSizer172->Add( 5, 2, 0, 0, 5 );
+ bSizer172->Add( 5, 2, 0, 0, 5 );
- bSizer172->Add( 0, 0, 1, wxEXPAND, 5 );
+ bSizer172->Add( 0, 0, 1, wxEXPAND, 5 );
- m_staticTextUpdateLeft = new wxStaticText( m_panelStatistics, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextUpdateLeft->Wrap( -1 );
- m_staticTextUpdateLeft->SetToolTip( _("Number of files that will be updated") );
+ m_staticTextUpdateLeft = new wxStaticText( m_panelStatistics, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextUpdateLeft->Wrap( -1 );
+ m_staticTextUpdateLeft->SetToolTip( _("Number of files that will be updated") );
- bSizer172->Add( m_staticTextUpdateLeft, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ bSizer172->Add( m_staticTextUpdateLeft, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
- bSizerStatistics->Add( bSizer172, 0, wxEXPAND, 5 );
+ bSizerStatistics->Add( bSizer172, 0, wxEXPAND, 5 );
- bSizerStatistics->Add( 5, 5, 0, 0, 5 );
+ bSizerStatistics->Add( 5, 5, 0, 0, 5 );
- wxBoxSizer* bSizer1712;
- bSizer1712 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer1712;
+ bSizer1712 = new wxBoxSizer( wxVERTICAL );
- m_bitmapCreateLeft = new wxStaticBitmap( m_panelStatistics, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- m_bitmapCreateLeft->SetToolTip( _("Number of files and folders that will be created") );
+ m_bitmapCreateLeft = new wxStaticBitmap( m_panelStatistics, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ m_bitmapCreateLeft->SetToolTip( _("Number of files and folders that will be created") );
- bSizer1712->Add( m_bitmapCreateLeft, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ bSizer1712->Add( m_bitmapCreateLeft, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
- bSizer1712->Add( 5, 2, 0, 0, 5 );
+ bSizer1712->Add( 5, 2, 0, 0, 5 );
- bSizer1712->Add( 0, 0, 1, wxEXPAND, 5 );
+ bSizer1712->Add( 0, 0, 1, wxEXPAND, 5 );
- m_staticTextCreateLeft = new wxStaticText( m_panelStatistics, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextCreateLeft->Wrap( -1 );
- m_staticTextCreateLeft->SetToolTip( _("Number of files and folders that will be created") );
+ m_staticTextCreateLeft = new wxStaticText( m_panelStatistics, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextCreateLeft->Wrap( -1 );
+ m_staticTextCreateLeft->SetToolTip( _("Number of files and folders that will be created") );
- bSizer1712->Add( m_staticTextCreateLeft, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ bSizer1712->Add( m_staticTextCreateLeft, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
- bSizerStatistics->Add( bSizer1712, 0, wxEXPAND, 5 );
+ bSizerStatistics->Add( bSizer1712, 0, wxEXPAND, 5 );
- bSizerStatistics->Add( 5, 5, 0, 0, 5 );
+ bSizerStatistics->Add( 5, 5, 0, 0, 5 );
- bSizerData = new wxBoxSizer( wxVERTICAL );
+ bSizerData = new wxBoxSizer( wxVERTICAL );
- m_bitmapData = new wxStaticBitmap( m_panelStatistics, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- m_bitmapData->SetToolTip( _("Total bytes to copy") );
+ m_bitmapData = new wxStaticBitmap( m_panelStatistics, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ m_bitmapData->SetToolTip( _("Total bytes to copy") );
- bSizerData->Add( m_bitmapData, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ bSizerData->Add( m_bitmapData, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
- bSizerData->Add( 5, 2, 0, 0, 5 );
+ bSizerData->Add( 5, 2, 0, 0, 5 );
- bSizerData->Add( 0, 0, 1, wxEXPAND, 5 );
+ bSizerData->Add( 0, 0, 1, wxEXPAND, 5 );
- m_staticTextData = new wxStaticText( m_panelStatistics, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextData->Wrap( -1 );
- m_staticTextData->SetToolTip( _("Total bytes to copy") );
+ m_staticTextData = new wxStaticText( m_panelStatistics, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextData->Wrap( -1 );
+ m_staticTextData->SetToolTip( _("Total bytes to copy") );
- bSizerData->Add( m_staticTextData, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ bSizerData->Add( m_staticTextData, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- bSizerStatistics->Add( bSizerData, 0, wxEXPAND, 5 );
+ bSizerStatistics->Add( bSizerData, 0, wxEXPAND, 5 );
- bSizerStatistics->Add( 5, 5, 0, 0, 5 );
+ bSizerStatistics->Add( 5, 5, 0, 0, 5 );
- wxBoxSizer* bSizer178;
- bSizer178 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer178;
+ bSizer178 = new wxBoxSizer( wxVERTICAL );
- m_bitmapCreateRight = new wxStaticBitmap( m_panelStatistics, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- m_bitmapCreateRight->SetToolTip( _("Number of files and folders that will be created") );
+ m_bitmapCreateRight = new wxStaticBitmap( m_panelStatistics, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ m_bitmapCreateRight->SetToolTip( _("Number of files and folders that will be created") );
- bSizer178->Add( m_bitmapCreateRight, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ bSizer178->Add( m_bitmapCreateRight, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
- bSizer178->Add( 5, 2, 0, 0, 5 );
+ bSizer178->Add( 5, 2, 0, 0, 5 );
- bSizer178->Add( 0, 0, 1, wxEXPAND, 5 );
+ bSizer178->Add( 0, 0, 1, wxEXPAND, 5 );
- m_staticTextCreateRight = new wxStaticText( m_panelStatistics, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextCreateRight->Wrap( -1 );
- m_staticTextCreateRight->SetToolTip( _("Number of files and folders that will be created") );
+ m_staticTextCreateRight = new wxStaticText( m_panelStatistics, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextCreateRight->Wrap( -1 );
+ m_staticTextCreateRight->SetToolTip( _("Number of files and folders that will be created") );
- bSizer178->Add( m_staticTextCreateRight, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer178->Add( m_staticTextCreateRight, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- bSizerStatistics->Add( bSizer178, 0, wxEXPAND, 5 );
+ bSizerStatistics->Add( bSizer178, 0, wxEXPAND, 5 );
- bSizerStatistics->Add( 5, 5, 0, 0, 5 );
+ bSizerStatistics->Add( 5, 5, 0, 0, 5 );
- wxBoxSizer* bSizer177;
- bSizer177 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer177;
+ bSizer177 = new wxBoxSizer( wxVERTICAL );
- m_bitmapUpdateRight = new wxStaticBitmap( m_panelStatistics, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- m_bitmapUpdateRight->SetToolTip( _("Number of files that will be updated") );
+ m_bitmapUpdateRight = new wxStaticBitmap( m_panelStatistics, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ m_bitmapUpdateRight->SetToolTip( _("Number of files that will be updated") );
- bSizer177->Add( m_bitmapUpdateRight, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ bSizer177->Add( m_bitmapUpdateRight, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
- bSizer177->Add( 5, 2, 0, 0, 5 );
+ bSizer177->Add( 5, 2, 0, 0, 5 );
- bSizer177->Add( 0, 0, 1, wxEXPAND, 5 );
+ bSizer177->Add( 0, 0, 1, wxEXPAND, 5 );
- m_staticTextUpdateRight = new wxStaticText( m_panelStatistics, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextUpdateRight->Wrap( -1 );
- m_staticTextUpdateRight->SetToolTip( _("Number of files that will be updated") );
+ m_staticTextUpdateRight = new wxStaticText( m_panelStatistics, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextUpdateRight->Wrap( -1 );
+ m_staticTextUpdateRight->SetToolTip( _("Number of files that will be updated") );
- bSizer177->Add( m_staticTextUpdateRight, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer177->Add( m_staticTextUpdateRight, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- bSizerStatistics->Add( bSizer177, 0, wxEXPAND, 5 );
+ bSizerStatistics->Add( bSizer177, 0, wxEXPAND, 5 );
- bSizerStatistics->Add( 5, 5, 0, 0, 5 );
+ bSizerStatistics->Add( 5, 5, 0, 0, 5 );
- wxBoxSizer* bSizer176;
- bSizer176 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer176;
+ bSizer176 = new wxBoxSizer( wxVERTICAL );
- m_bitmapDeleteRight = new wxStaticBitmap( m_panelStatistics, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- m_bitmapDeleteRight->SetToolTip( _("Number of files and folders that will be deleted") );
+ m_bitmapDeleteRight = new wxStaticBitmap( m_panelStatistics, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ m_bitmapDeleteRight->SetToolTip( _("Number of files and folders that will be deleted") );
- bSizer176->Add( m_bitmapDeleteRight, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer176->Add( m_bitmapDeleteRight, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- bSizer176->Add( 5, 2, 0, 0, 5 );
+ bSizer176->Add( 5, 2, 0, 0, 5 );
- bSizer176->Add( 0, 0, 1, wxEXPAND, 5 );
+ bSizer176->Add( 0, 0, 1, wxEXPAND, 5 );
- m_staticTextDeleteRight = new wxStaticText( m_panelStatistics, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextDeleteRight->Wrap( -1 );
- m_staticTextDeleteRight->SetToolTip( _("Number of files and folders that will be deleted") );
+ m_staticTextDeleteRight = new wxStaticText( m_panelStatistics, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextDeleteRight->Wrap( -1 );
+ m_staticTextDeleteRight->SetToolTip( _("Number of files and folders that will be deleted") );
- bSizer176->Add( m_staticTextDeleteRight, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer176->Add( m_staticTextDeleteRight, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- bSizerStatistics->Add( bSizer176, 0, wxEXPAND, 5 );
+ bSizerStatistics->Add( bSizer176, 0, wxEXPAND, 5 );
- bSizer1801->Add( bSizerStatistics, 0, wxALL, 4 );
+ bSizer1801->Add( bSizerStatistics, 0, wxALL, 4 );
- m_panelStatistics->SetSizer( bSizer1801 );
- m_panelStatistics->Layout();
- bSizer1801->Fit( m_panelStatistics );
- bSizerViewFilter->Add( m_panelStatistics, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ m_panelStatistics->SetSizer( bSizer1801 );
+ m_panelStatistics->Layout();
+ bSizer1801->Fit( m_panelStatistics );
+ bSizerViewFilter->Add( m_panelStatistics, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
- m_panelViewFilter->SetSizer( bSizerViewFilter );
- m_panelViewFilter->Layout();
- bSizerViewFilter->Fit( m_panelViewFilter );
- bSizerPanelHolder->Add( m_panelViewFilter, 0, 0, 5 );
+ m_panelViewFilter->SetSizer( bSizerViewFilter );
+ m_panelViewFilter->Layout();
+ bSizerViewFilter->Fit( m_panelViewFilter );
+ bSizerPanelHolder->Add( m_panelViewFilter, 0, 0, 5 );
- this->SetSizer( bSizerPanelHolder );
- this->Layout();
- bSizerPanelHolder->Fit( this );
+ this->SetSizer( bSizerPanelHolder );
+ this->Layout();
+ bSizerPanelHolder->Fit( this );
- // Connect Events
- this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( MainDialogGenerated::onClose ) );
- m_menuFile->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onConfigNew ), this, m_menuItemNew->GetId());
- m_menuFile->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onConfigLoad ), this, m_menuItemLoad->GetId());
- m_menuFile->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onConfigSave ), this, m_menuItemSave->GetId());
- m_menuFile->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onConfigSaveAs ), this, m_menuItemSaveAs->GetId());
- m_menuFile->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onSaveAsBatchJob ), this, m_menuItemSaveAsBatch->GetId());
- m_menuFile->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuQuit ), this, m_menuItemQuit->GetId());
- m_menuActions->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onToggleLog ), this, m_menuItemShowLog->GetId());
- m_menuActions->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onCompare ), this, m_menuItemCompare->GetId());
- m_menuActions->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onCmpSettings ), this, m_menuItemCompSettings->GetId());
- m_menuActions->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onConfigureFilter ), this, m_menuItemFilter->GetId());
- m_menuActions->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onSyncSettings ), this, m_menuItemSyncSettings->GetId());
- m_menuActions->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onStartSync ), this, m_menuItemSynchronize->GetId());
- m_menuTools->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuOptions ), this, m_menuItemOptions->GetId());
- m_menuTools->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuFindItem ), this, m_menuItemFind->GetId());
- m_menuTools->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuExportFileList ), this, m_menuItemExportList->GetId());
- m_menuTools->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuResetLayout ), this, m_menuItemResetLayout->GetId());
- m_menuHelp->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onShowHelp ), this, m_menuItemHelp->GetId());
- m_menuHelp->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuCheckVersion ), this, m_menuItemCheckVersionNow->GetId());
- m_menuHelp->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuCheckVersionAutomatically ), this, m_menuItemCheckVersionAuto->GetId());
- m_menuHelp->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuAbout ), this, m_menuItemAbout->GetId());
- m_bpButtonCmpConfig->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onCmpSettings ), NULL, this );
- m_bpButtonCmpConfig->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onCompSettingsContextMouse ), NULL, this );
- m_buttonCompare->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onCompare ), NULL, this );
- m_buttonCompare->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onCompSettingsContextMouse ), NULL, this );
- m_bpButtonCmpContext->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onCompSettingsContext ), NULL, this );
- m_bpButtonCmpContext->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onCompSettingsContextMouse ), NULL, this );
- m_bpButtonFilter->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onConfigureFilter ), NULL, this );
- m_bpButtonFilter->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onGlobalFilterContextMouse ), NULL, this );
- m_bpButtonFilterContext->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onGlobalFilterContext ), NULL, this );
- m_bpButtonFilterContext->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onGlobalFilterContextMouse ), NULL, this );
- m_bpButtonSyncConfig->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onSyncSettings ), NULL, this );
- m_bpButtonSyncConfig->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onSyncSettingsContextMouse ), NULL, this );
- m_buttonSync->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onStartSync ), NULL, this );
- m_buttonSync->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onSyncSettingsContextMouse ), NULL, this );
- m_bpButtonSyncContext->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onSyncSettingsContext ), NULL, this );
- m_bpButtonSyncContext->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onSyncSettingsContextMouse ), NULL, this );
- m_bpButtonAddPair->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onTopFolderPairAdd ), NULL, this );
- m_bpButtonRemovePair->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onTopFolderPairRemove ), NULL, this );
- m_bpButtonSwapSides->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onSwapSides ), NULL, this );
- m_bpButtonSwapSides->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onSwapSidesMouse ), NULL, this );
- m_bpButtonLocalCompCfg->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onTopLocalCompCfg ), NULL, this );
- m_bpButtonLocalFilter->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onTopLocalFilterCfg ), NULL, this );
- m_bpButtonLocalSyncCfg->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onTopLocalSyncCfg ), NULL, this );
- m_bpButtonHideSearch->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onHideSearchPanel ), NULL, this );
- m_textCtrlSearchTxt->Connect( wxEVT_COMMAND_TEXT_ENTER, wxCommandEventHandler( MainDialogGenerated::onSearchGridEnter ), NULL, this );
- m_bpButtonNew->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onConfigNew ), NULL, this );
- m_bpButtonOpen->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onConfigLoad ), NULL, this );
- m_bpButtonSave->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onConfigSave ), NULL, this );
- m_bpButtonSaveAs->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onConfigSaveAs ), NULL, this );
- m_bpButtonSaveAsBatch->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onSaveAsBatchJob ), NULL, this );
- m_bpButtonToggleLog->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onToggleLog ), NULL, this );
- m_bpButtonViewType->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onToggleViewType ), NULL, this );
- m_bpButtonViewType->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onViewTypeContextMouse ), NULL, this );
- m_bpButtonShowExcluded->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onToggleViewButton ), NULL, this );
- m_bpButtonShowExcluded->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onViewFilterContextMouse ), NULL, this );
- m_bpButtonShowDeleteLeft->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onToggleViewButton ), NULL, this );
- m_bpButtonShowDeleteLeft->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onViewFilterContextMouse ), NULL, this );
- m_bpButtonShowUpdateLeft->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onToggleViewButton ), NULL, this );
- m_bpButtonShowUpdateLeft->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onViewFilterContextMouse ), NULL, this );
- m_bpButtonShowCreateLeft->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onToggleViewButton ), NULL, this );
- m_bpButtonShowCreateLeft->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onViewFilterContextMouse ), NULL, this );
- m_bpButtonShowLeftOnly->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onToggleViewButton ), NULL, this );
- m_bpButtonShowLeftOnly->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onViewFilterContextMouse ), NULL, this );
- m_bpButtonShowLeftNewer->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onToggleViewButton ), NULL, this );
- m_bpButtonShowLeftNewer->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onViewFilterContextMouse ), NULL, this );
- m_bpButtonShowEqual->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onToggleViewButton ), NULL, this );
- m_bpButtonShowEqual->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onViewFilterContextMouse ), NULL, this );
- m_bpButtonShowDoNothing->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onToggleViewButton ), NULL, this );
- m_bpButtonShowDoNothing->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onViewFilterContextMouse ), NULL, this );
- m_bpButtonShowDifferent->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onToggleViewButton ), NULL, this );
- m_bpButtonShowDifferent->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onViewFilterContextMouse ), NULL, this );
- m_bpButtonShowRightNewer->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onToggleViewButton ), NULL, this );
- m_bpButtonShowRightNewer->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onViewFilterContextMouse ), NULL, this );
- m_bpButtonShowRightOnly->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onToggleViewButton ), NULL, this );
- m_bpButtonShowRightOnly->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onViewFilterContextMouse ), NULL, this );
- m_bpButtonShowCreateRight->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onToggleViewButton ), NULL, this );
- m_bpButtonShowCreateRight->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onViewFilterContextMouse ), NULL, this );
- m_bpButtonShowUpdateRight->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onToggleViewButton ), NULL, this );
- m_bpButtonShowUpdateRight->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onViewFilterContextMouse ), NULL, this );
- m_bpButtonShowDeleteRight->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onToggleViewButton ), NULL, this );
- m_bpButtonShowDeleteRight->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onViewFilterContextMouse ), NULL, this );
- m_bpButtonShowConflict->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onToggleViewButton ), NULL, this );
- m_bpButtonShowConflict->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onViewFilterContextMouse ), NULL, this );
- m_bpButtonViewFilterContext->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onViewFilterContext ), NULL, this );
- m_bpButtonViewFilterContext->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onViewFilterContextMouse ), NULL, this );
+ // Connect Events
+ this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( MainDialogGenerated::onClose ) );
+ m_menuFile->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onConfigNew ), this, m_menuItemNew->GetId());
+ m_menuFile->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onConfigLoad ), this, m_menuItemLoad->GetId());
+ m_menuFile->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onConfigSave ), this, m_menuItemSave->GetId());
+ m_menuFile->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onConfigSaveAs ), this, m_menuItemSaveAs->GetId());
+ m_menuFile->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onSaveAsBatchJob ), this, m_menuItemSaveAsBatch->GetId());
+ m_menuFile->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuQuit ), this, m_menuItemQuit->GetId());
+ m_menuActions->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onToggleLog ), this, m_menuItemShowLog->GetId());
+ m_menuActions->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onCompare ), this, m_menuItemCompare->GetId());
+ m_menuActions->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onCmpSettings ), this, m_menuItemCompSettings->GetId());
+ m_menuActions->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onConfigureFilter ), this, m_menuItemFilter->GetId());
+ m_menuActions->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onSyncSettings ), this, m_menuItemSyncSettings->GetId());
+ m_menuActions->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onStartSync ), this, m_menuItemSynchronize->GetId());
+ m_menuTools->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuOptions ), this, m_menuItemOptions->GetId());
+ m_menuTools->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuFindItem ), this, m_menuItemFind->GetId());
+ m_menuTools->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuExportFileList ), this, m_menuItemExportList->GetId());
+ m_menuTools->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuResetLayout ), this, m_menuItemResetLayout->GetId());
+ m_menuHelp->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onShowHelp ), this, m_menuItemHelp->GetId());
+ m_menuHelp->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuCheckVersion ), this, m_menuItemCheckVersionNow->GetId());
+ m_menuHelp->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuCheckVersionAutomatically ), this, m_menuItemCheckVersionAuto->GetId());
+ m_menuHelp->Bind(wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainDialogGenerated::onMenuAbout ), this, m_menuItemAbout->GetId());
+ m_bpButtonCmpConfig->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onCmpSettings ), NULL, this );
+ m_bpButtonCmpConfig->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onCompSettingsContextMouse ), NULL, this );
+ m_buttonCompare->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onCompare ), NULL, this );
+ m_buttonCompare->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onCompSettingsContextMouse ), NULL, this );
+ m_bpButtonCmpContext->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onCompSettingsContext ), NULL, this );
+ m_bpButtonCmpContext->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onCompSettingsContextMouse ), NULL, this );
+ m_bpButtonFilter->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onConfigureFilter ), NULL, this );
+ m_bpButtonFilter->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onGlobalFilterContextMouse ), NULL, this );
+ m_bpButtonFilterContext->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onGlobalFilterContext ), NULL, this );
+ m_bpButtonFilterContext->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onGlobalFilterContextMouse ), NULL, this );
+ m_bpButtonSyncConfig->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onSyncSettings ), NULL, this );
+ m_bpButtonSyncConfig->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onSyncSettingsContextMouse ), NULL, this );
+ m_buttonSync->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onStartSync ), NULL, this );
+ m_buttonSync->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onSyncSettingsContextMouse ), NULL, this );
+ m_bpButtonSyncContext->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onSyncSettingsContext ), NULL, this );
+ m_bpButtonSyncContext->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onSyncSettingsContextMouse ), NULL, this );
+ m_bpButtonAddPair->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onTopFolderPairAdd ), NULL, this );
+ m_bpButtonRemovePair->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onTopFolderPairRemove ), NULL, this );
+ m_bpButtonSwapSides->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onSwapSides ), NULL, this );
+ m_bpButtonSwapSides->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onSwapSidesMouse ), NULL, this );
+ m_bpButtonLocalCompCfg->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onTopLocalCompCfg ), NULL, this );
+ m_bpButtonLocalFilter->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onTopLocalFilterCfg ), NULL, this );
+ m_bpButtonLocalSyncCfg->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onTopLocalSyncCfg ), NULL, this );
+ m_bpButtonHideSearch->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onHideSearchPanel ), NULL, this );
+ m_textCtrlSearchTxt->Connect( wxEVT_COMMAND_TEXT_ENTER, wxCommandEventHandler( MainDialogGenerated::onSearchGridEnter ), NULL, this );
+ m_bpButtonNew->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onConfigNew ), NULL, this );
+ m_bpButtonOpen->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onConfigLoad ), NULL, this );
+ m_bpButtonSave->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onConfigSave ), NULL, this );
+ m_bpButtonSaveAs->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onConfigSaveAs ), NULL, this );
+ m_bpButtonSaveAsBatch->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onSaveAsBatchJob ), NULL, this );
+ m_bpButtonToggleLog->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onToggleLog ), NULL, this );
+ m_bpButtonViewType->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onToggleViewType ), NULL, this );
+ m_bpButtonViewType->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onViewTypeContextMouse ), NULL, this );
+ m_bpButtonShowExcluded->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onToggleViewButton ), NULL, this );
+ m_bpButtonShowExcluded->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onViewFilterContextMouse ), NULL, this );
+ m_bpButtonShowDeleteLeft->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onToggleViewButton ), NULL, this );
+ m_bpButtonShowDeleteLeft->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onViewFilterContextMouse ), NULL, this );
+ m_bpButtonShowUpdateLeft->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onToggleViewButton ), NULL, this );
+ m_bpButtonShowUpdateLeft->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onViewFilterContextMouse ), NULL, this );
+ m_bpButtonShowCreateLeft->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onToggleViewButton ), NULL, this );
+ m_bpButtonShowCreateLeft->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onViewFilterContextMouse ), NULL, this );
+ m_bpButtonShowLeftOnly->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onToggleViewButton ), NULL, this );
+ m_bpButtonShowLeftOnly->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onViewFilterContextMouse ), NULL, this );
+ m_bpButtonShowLeftNewer->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onToggleViewButton ), NULL, this );
+ m_bpButtonShowLeftNewer->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onViewFilterContextMouse ), NULL, this );
+ m_bpButtonShowEqual->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onToggleViewButton ), NULL, this );
+ m_bpButtonShowEqual->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onViewFilterContextMouse ), NULL, this );
+ m_bpButtonShowDoNothing->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onToggleViewButton ), NULL, this );
+ m_bpButtonShowDoNothing->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onViewFilterContextMouse ), NULL, this );
+ m_bpButtonShowDifferent->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onToggleViewButton ), NULL, this );
+ m_bpButtonShowDifferent->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onViewFilterContextMouse ), NULL, this );
+ m_bpButtonShowRightNewer->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onToggleViewButton ), NULL, this );
+ m_bpButtonShowRightNewer->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onViewFilterContextMouse ), NULL, this );
+ m_bpButtonShowRightOnly->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onToggleViewButton ), NULL, this );
+ m_bpButtonShowRightOnly->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onViewFilterContextMouse ), NULL, this );
+ m_bpButtonShowCreateRight->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onToggleViewButton ), NULL, this );
+ m_bpButtonShowCreateRight->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onViewFilterContextMouse ), NULL, this );
+ m_bpButtonShowUpdateRight->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onToggleViewButton ), NULL, this );
+ m_bpButtonShowUpdateRight->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onViewFilterContextMouse ), NULL, this );
+ m_bpButtonShowDeleteRight->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onToggleViewButton ), NULL, this );
+ m_bpButtonShowDeleteRight->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onViewFilterContextMouse ), NULL, this );
+ m_bpButtonShowConflict->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onToggleViewButton ), NULL, this );
+ m_bpButtonShowConflict->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onViewFilterContextMouse ), NULL, this );
+ m_bpButtonViewFilterContext->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainDialogGenerated::onViewFilterContext ), NULL, this );
+ m_bpButtonViewFilterContext->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MainDialogGenerated::onViewFilterContextMouse ), NULL, this );
}
MainDialogGenerated::~MainDialogGenerated()
@@ -1207,97 +1207,97 @@ MainDialogGenerated::~MainDialogGenerated()
FolderPairPanelGenerated::FolderPairPanelGenerated( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style, const wxString& name ) : wxPanel( parent, id, pos, size, style, name )
{
- wxBoxSizer* bSizer74;
- bSizer74 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer74;
+ bSizer74 = new wxBoxSizer( wxHORIZONTAL );
- m_panelLeft = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panelLeft->SetMinSize( wxSize( 1, -1 ) );
+ m_panelLeft = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panelLeft->SetMinSize( wxSize( 1,-1 ) );
- wxBoxSizer* bSizer134;
- bSizer134 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer134;
+ bSizer134 = new wxBoxSizer( wxHORIZONTAL );
- m_bpButtonFolderPairOptions = new wxBitmapButton( m_panelLeft, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- m_bpButtonFolderPairOptions->SetToolTip( _("Arrange folder pair") );
+ m_bpButtonFolderPairOptions = new wxBitmapButton( m_panelLeft, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ m_bpButtonFolderPairOptions->SetToolTip( _("Arrange folder pair") );
- bSizer134->Add( m_bpButtonFolderPairOptions, 0, wxEXPAND, 5 );
+ bSizer134->Add( m_bpButtonFolderPairOptions, 0, wxEXPAND, 5 );
- m_bpButtonRemovePair = new wxBitmapButton( m_panelLeft, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- m_bpButtonRemovePair->SetToolTip( _("Remove folder pair") );
+ m_bpButtonRemovePair = new wxBitmapButton( m_panelLeft, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ m_bpButtonRemovePair->SetToolTip( _("Remove folder pair") );
- bSizer134->Add( m_bpButtonRemovePair, 0, wxEXPAND, 5 );
+ bSizer134->Add( m_bpButtonRemovePair, 0, wxEXPAND, 5 );
- m_folderPathLeft = new fff::FolderHistoryBox( m_panelLeft, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 );
- bSizer134->Add( m_folderPathLeft, 1, wxALIGN_CENTER_VERTICAL, 5 );
+ m_folderPathLeft = new fff::FolderHistoryBox( m_panelLeft, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 );
+ bSizer134->Add( m_folderPathLeft, 1, wxALIGN_CENTER_VERTICAL, 5 );
- m_buttonSelectFolderLeft = new wxButton( m_panelLeft, wxID_ANY, _("Browse"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- m_buttonSelectFolderLeft->SetToolTip( _("Select a folder") );
+ m_buttonSelectFolderLeft = new wxButton( m_panelLeft, wxID_ANY, _("Browse"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ m_buttonSelectFolderLeft->SetToolTip( _("Select a folder") );
- bSizer134->Add( m_buttonSelectFolderLeft, 0, wxEXPAND, 5 );
+ bSizer134->Add( m_buttonSelectFolderLeft, 0, wxEXPAND, 5 );
- m_bpButtonSelectAltFolderLeft = new wxBitmapButton( m_panelLeft, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- m_bpButtonSelectAltFolderLeft->SetToolTip( _("Access online storage") );
+ m_bpButtonSelectAltFolderLeft = new wxBitmapButton( m_panelLeft, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ m_bpButtonSelectAltFolderLeft->SetToolTip( _("Access online storage") );
- bSizer134->Add( m_bpButtonSelectAltFolderLeft, 0, wxEXPAND, 5 );
+ bSizer134->Add( m_bpButtonSelectAltFolderLeft, 0, wxEXPAND, 5 );
- m_panelLeft->SetSizer( bSizer134 );
- m_panelLeft->Layout();
- bSizer134->Fit( m_panelLeft );
- bSizer74->Add( m_panelLeft, 0, wxLEFT|wxEXPAND, 5 );
+ m_panelLeft->SetSizer( bSizer134 );
+ m_panelLeft->Layout();
+ bSizer134->Fit( m_panelLeft );
+ bSizer74->Add( m_panelLeft, 0, wxLEFT|wxEXPAND, 5 );
- m_panel20 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- wxBoxSizer* bSizer95;
- bSizer95 = new wxBoxSizer( wxHORIZONTAL );
+ m_panel20 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ wxBoxSizer* bSizer95;
+ bSizer95 = new wxBoxSizer( wxHORIZONTAL );
- m_bpButtonLocalCompCfg = new wxBitmapButton( m_panel20, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- m_bpButtonLocalCompCfg->SetToolTip( _("dummy") );
+ m_bpButtonLocalCompCfg = new wxBitmapButton( m_panel20, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ m_bpButtonLocalCompCfg->SetToolTip( _("dummy") );
- bSizer95->Add( m_bpButtonLocalCompCfg, 0, wxEXPAND, 5 );
+ bSizer95->Add( m_bpButtonLocalCompCfg, 0, wxEXPAND, 5 );
- m_bpButtonLocalFilter = new wxBitmapButton( m_panel20, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- m_bpButtonLocalFilter->SetToolTip( _("dummy") );
+ m_bpButtonLocalFilter = new wxBitmapButton( m_panel20, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ m_bpButtonLocalFilter->SetToolTip( _("dummy") );
- bSizer95->Add( m_bpButtonLocalFilter, 0, wxEXPAND, 5 );
+ bSizer95->Add( m_bpButtonLocalFilter, 0, wxEXPAND, 5 );
- m_bpButtonLocalSyncCfg = new wxBitmapButton( m_panel20, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- m_bpButtonLocalSyncCfg->SetToolTip( _("dummy") );
+ m_bpButtonLocalSyncCfg = new wxBitmapButton( m_panel20, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ m_bpButtonLocalSyncCfg->SetToolTip( _("dummy") );
- bSizer95->Add( m_bpButtonLocalSyncCfg, 0, wxEXPAND, 5 );
+ bSizer95->Add( m_bpButtonLocalSyncCfg, 0, wxEXPAND, 5 );
- m_panel20->SetSizer( bSizer95 );
- m_panel20->Layout();
- bSizer95->Fit( m_panel20 );
- bSizer74->Add( m_panel20, 0, wxRIGHT|wxLEFT|wxEXPAND, 5 );
+ m_panel20->SetSizer( bSizer95 );
+ m_panel20->Layout();
+ bSizer95->Fit( m_panel20 );
+ bSizer74->Add( m_panel20, 0, wxRIGHT|wxLEFT|wxEXPAND, 5 );
- m_panelRight = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panelRight->SetMinSize( wxSize( 1, -1 ) );
+ m_panelRight = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panelRight->SetMinSize( wxSize( 1,-1 ) );
- wxBoxSizer* bSizer135;
- bSizer135 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer135;
+ bSizer135 = new wxBoxSizer( wxHORIZONTAL );
- m_folderPathRight = new fff::FolderHistoryBox( m_panelRight, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 );
- bSizer135->Add( m_folderPathRight, 1, wxALIGN_CENTER_VERTICAL, 5 );
+ m_folderPathRight = new fff::FolderHistoryBox( m_panelRight, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 );
+ bSizer135->Add( m_folderPathRight, 1, wxALIGN_CENTER_VERTICAL, 5 );
- m_buttonSelectFolderRight = new wxButton( m_panelRight, wxID_ANY, _("Browse"), wxDefaultPosition, wxDefaultSize, 0 );
- m_buttonSelectFolderRight->SetToolTip( _("Select a folder") );
+ m_buttonSelectFolderRight = new wxButton( m_panelRight, wxID_ANY, _("Browse"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_buttonSelectFolderRight->SetToolTip( _("Select a folder") );
- bSizer135->Add( m_buttonSelectFolderRight, 0, wxEXPAND, 5 );
+ bSizer135->Add( m_buttonSelectFolderRight, 0, wxEXPAND, 5 );
- m_bpButtonSelectAltFolderRight = new wxBitmapButton( m_panelRight, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- m_bpButtonSelectAltFolderRight->SetToolTip( _("Access online storage") );
+ m_bpButtonSelectAltFolderRight = new wxBitmapButton( m_panelRight, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ m_bpButtonSelectAltFolderRight->SetToolTip( _("Access online storage") );
- bSizer135->Add( m_bpButtonSelectAltFolderRight, 0, wxEXPAND, 5 );
+ bSizer135->Add( m_bpButtonSelectAltFolderRight, 0, wxEXPAND, 5 );
- m_panelRight->SetSizer( bSizer135 );
- m_panelRight->Layout();
- bSizer135->Fit( m_panelRight );
- bSizer74->Add( m_panelRight, 1, wxRIGHT|wxEXPAND, 5 );
+ m_panelRight->SetSizer( bSizer135 );
+ m_panelRight->Layout();
+ bSizer135->Fit( m_panelRight );
+ bSizer74->Add( m_panelRight, 1, wxRIGHT|wxEXPAND, 5 );
- this->SetSizer( bSizer74 );
- this->Layout();
+ this->SetSizer( bSizer74 );
+ this->Layout();
}
FolderPairPanelGenerated::~FolderPairPanelGenerated()
@@ -1306,1259 +1306,1259 @@ FolderPairPanelGenerated::~FolderPairPanelGenerated()
ConfigDlgGenerated::ConfigDlgGenerated( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style )
{
- this->SetSizeHints( wxDefaultSize, wxDefaultSize );
- this->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
+ this->SetSizeHints( wxDefaultSize, wxDefaultSize );
+ this->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
- wxBoxSizer* bSizer7;
- bSizer7 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer7;
+ bSizer7 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer190;
- bSizer190 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer190;
+ bSizer190 = new wxBoxSizer( wxHORIZONTAL );
- wxBoxSizer* bSizer1911;
- bSizer1911 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer1911;
+ bSizer1911 = new wxBoxSizer( wxVERTICAL );
- m_staticTextFolderPairLabel = new wxStaticText( this, wxID_ANY, _("Folder pair:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextFolderPairLabel->Wrap( -1 );
- bSizer1911->Add( m_staticTextFolderPairLabel, 0, wxALL, 5 );
+ m_staticTextFolderPairLabel = new wxStaticText( this, wxID_ANY, _("Folder pair:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextFolderPairLabel->Wrap( -1 );
+ bSizer1911->Add( m_staticTextFolderPairLabel, 0, wxALL, 5 );
- m_listBoxFolderPair = new wxListBox( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, NULL, wxLB_NEEDED_SB );
- bSizer1911->Add( m_listBoxFolderPair, 1, 0, 5 );
+ m_listBoxFolderPair = new wxListBox( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, NULL, wxLB_NEEDED_SB );
+ bSizer1911->Add( m_listBoxFolderPair, 1, 0, 5 );
- bSizer190->Add( bSizer1911, 0, wxEXPAND|wxLEFT, 5 );
+ bSizer190->Add( bSizer1911, 0, wxEXPAND|wxLEFT, 5 );
- m_notebook = new wxNotebook( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 );
- m_panelCompSettingsTab = new wxPanel( m_notebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panelCompSettingsTab->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ m_notebook = new wxNotebook( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 );
+ m_panelCompSettingsTab = new wxPanel( m_notebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panelCompSettingsTab->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- wxBoxSizer* bSizer275;
- bSizer275 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer275;
+ bSizer275 = new wxBoxSizer( wxVERTICAL );
- bSizerHeaderCompSettings = new wxBoxSizer( wxVERTICAL );
+ bSizerHeaderCompSettings = new wxBoxSizer( wxVERTICAL );
- m_staticTextMainCompSettings = new wxStaticText( m_panelCompSettingsTab, wxID_ANY, _("Main settings:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextMainCompSettings->Wrap( -1 );
- bSizerHeaderCompSettings->Add( m_staticTextMainCompSettings, 0, wxALL, 10 );
+ m_staticTextMainCompSettings = new wxStaticText( m_panelCompSettingsTab, wxID_ANY, _("Main settings:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextMainCompSettings->Wrap( -1 );
+ bSizerHeaderCompSettings->Add( m_staticTextMainCompSettings, 0, wxALL, 10 );
- m_checkBoxUseLocalCmpOptions = new wxCheckBox( m_panelCompSettingsTab, wxID_ANY, _("Use local settings:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_checkBoxUseLocalCmpOptions->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ m_checkBoxUseLocalCmpOptions = new wxCheckBox( m_panelCompSettingsTab, wxID_ANY, _("Use local settings:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_checkBoxUseLocalCmpOptions->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- bSizerHeaderCompSettings->Add( m_checkBoxUseLocalCmpOptions, 0, wxALL|wxEXPAND, 10 );
+ bSizerHeaderCompSettings->Add( m_checkBoxUseLocalCmpOptions, 0, wxALL|wxEXPAND, 10 );
- m_staticlineCompHeader = new wxStaticLine( m_panelCompSettingsTab, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizerHeaderCompSettings->Add( m_staticlineCompHeader, 0, wxEXPAND, 5 );
+ m_staticlineCompHeader = new wxStaticLine( m_panelCompSettingsTab, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizerHeaderCompSettings->Add( m_staticlineCompHeader, 0, wxEXPAND, 5 );
- bSizer275->Add( bSizerHeaderCompSettings, 0, wxEXPAND, 5 );
+ bSizer275->Add( bSizerHeaderCompSettings, 0, wxEXPAND, 5 );
- m_panelComparisonSettings = new wxPanel( m_panelCompSettingsTab, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panelComparisonSettings->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ m_panelComparisonSettings = new wxPanel( m_panelCompSettingsTab, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panelComparisonSettings->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- wxBoxSizer* bSizer2561;
- bSizer2561 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer2561;
+ bSizer2561 = new wxBoxSizer( wxHORIZONTAL );
- wxBoxSizer* bSizer159;
- bSizer159 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer159;
+ bSizer159 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer178;
- bSizer178 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer178;
+ bSizer178 = new wxBoxSizer( wxHORIZONTAL );
- wxBoxSizer* bSizer182;
- bSizer182 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer182;
+ bSizer182 = new wxBoxSizer( wxVERTICAL );
- m_staticText91 = new wxStaticText( m_panelComparisonSettings, wxID_ANY, _("Select a variant:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText91->Wrap( -1 );
- bSizer182->Add( m_staticText91, 0, wxALL, 5 );
+ m_staticText91 = new wxStaticText( m_panelComparisonSettings, wxID_ANY, _("Select a variant:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText91->Wrap( -1 );
+ bSizer182->Add( m_staticText91, 0, wxALL, 5 );
- wxGridSizer* gSizer2;
- gSizer2 = new wxGridSizer( 0, 1, 0, 0 );
+ wxGridSizer* gSizer2;
+ gSizer2 = new wxGridSizer( 0, 1, 0, 0 );
- m_buttonByTimeSize = new zen::ToggleButton( m_panelComparisonSettings, wxID_ANY, _("File time and size"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
+ m_buttonByTimeSize = new zen::ToggleButton( m_panelComparisonSettings, wxID_ANY, _("File time and size"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
- m_buttonByTimeSize->SetDefault();
- m_buttonByTimeSize->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- m_buttonByTimeSize->SetToolTip( _("dummy") );
+ m_buttonByTimeSize->SetDefault();
+ m_buttonByTimeSize->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_buttonByTimeSize->SetToolTip( _("dummy") );
- gSizer2->Add( m_buttonByTimeSize, 0, wxEXPAND, 5 );
+ gSizer2->Add( m_buttonByTimeSize, 0, wxEXPAND, 5 );
- m_buttonByContent = new zen::ToggleButton( m_panelComparisonSettings, wxID_ANY, _("File content"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
+ m_buttonByContent = new zen::ToggleButton( m_panelComparisonSettings, wxID_ANY, _("File content"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
- m_buttonByContent->SetDefault();
- m_buttonByContent->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- m_buttonByContent->SetToolTip( _("dummy") );
+ m_buttonByContent->SetDefault();
+ m_buttonByContent->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_buttonByContent->SetToolTip( _("dummy") );
- gSizer2->Add( m_buttonByContent, 0, wxEXPAND, 5 );
+ gSizer2->Add( m_buttonByContent, 0, wxEXPAND, 5 );
- m_buttonBySize = new zen::ToggleButton( m_panelComparisonSettings, wxID_ANY, _("File size"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
+ m_buttonBySize = new zen::ToggleButton( m_panelComparisonSettings, wxID_ANY, _("File size"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
- m_buttonBySize->SetDefault();
- m_buttonBySize->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- m_buttonBySize->SetToolTip( _("dummy") );
+ m_buttonBySize->SetDefault();
+ m_buttonBySize->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_buttonBySize->SetToolTip( _("dummy") );
- gSizer2->Add( m_buttonBySize, 0, wxEXPAND, 5 );
+ gSizer2->Add( m_buttonBySize, 0, wxEXPAND, 5 );
- bSizer182->Add( gSizer2, 0, wxBOTTOM|wxRIGHT|wxLEFT, 5 );
+ bSizer182->Add( gSizer2, 0, wxBOTTOM|wxRIGHT|wxLEFT, 5 );
- bSizer178->Add( bSizer182, 0, wxALL, 5 );
+ bSizer178->Add( bSizer182, 0, wxALL, 5 );
- wxBoxSizer* bSizer2371;
- bSizer2371 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer2371;
+ bSizer2371 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapCompVariant = new wxStaticBitmap( m_panelComparisonSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), 0 );
- bSizer2371->Add( m_bitmapCompVariant, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
+ m_bitmapCompVariant = new wxStaticBitmap( m_panelComparisonSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ bSizer2371->Add( m_bitmapCompVariant, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
- m_staticTextCompVarDescription = new wxStaticText( m_panelComparisonSettings, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextCompVarDescription->Wrap( -1 );
- m_staticTextCompVarDescription->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
+ m_staticTextCompVarDescription = new wxStaticText( m_panelComparisonSettings, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextCompVarDescription->Wrap( -1 );
+ m_staticTextCompVarDescription->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
- bSizer2371->Add( m_staticTextCompVarDescription, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer2371->Add( m_staticTextCompVarDescription, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
- bSizer178->Add( bSizer2371, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
+ bSizer178->Add( bSizer2371, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
- bSizer159->Add( bSizer178, 0, wxEXPAND, 5 );
+ bSizer159->Add( bSizer178, 0, wxEXPAND, 5 );
- m_staticline33 = new wxStaticLine( m_panelComparisonSettings, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer159->Add( m_staticline33, 0, wxEXPAND, 5 );
+ m_staticline33 = new wxStaticLine( m_panelComparisonSettings, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer159->Add( m_staticline33, 0, wxEXPAND, 5 );
- wxBoxSizer* bSizer1734;
- bSizer1734 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer1734;
+ bSizer1734 = new wxBoxSizer( wxHORIZONTAL );
- bSizer1734->Add( 0, 0, 1, 0, 5 );
+ bSizer1734->Add( 0, 0, 1, 0, 5 );
- wxBoxSizer* bSizer1721;
- bSizer1721 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer1721;
+ bSizer1721 = new wxBoxSizer( wxVERTICAL );
- m_checkBoxSymlinksInclude = new wxCheckBox( m_panelComparisonSettings, wxID_ANY, _("Include &symbolic links:"), wxDefaultPosition, wxDefaultSize, 0 );
- bSizer1721->Add( m_checkBoxSymlinksInclude, 0, wxALL, 5 );
+ m_checkBoxSymlinksInclude = new wxCheckBox( m_panelComparisonSettings, wxID_ANY, _("Include &symbolic links:"), wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer1721->Add( m_checkBoxSymlinksInclude, 0, wxALL, 5 );
- wxBoxSizer* bSizer176;
- bSizer176 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer176;
+ bSizer176 = new wxBoxSizer( wxVERTICAL );
- m_radioBtnSymlinksFollow = new wxRadioButton( m_panelComparisonSettings, wxID_ANY, _("&Follow"), wxDefaultPosition, wxDefaultSize, wxRB_GROUP );
- m_radioBtnSymlinksFollow->SetValue( true );
- bSizer176->Add( m_radioBtnSymlinksFollow, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
+ m_radioBtnSymlinksFollow = new wxRadioButton( m_panelComparisonSettings, wxID_ANY, _("&Follow"), wxDefaultPosition, wxDefaultSize, wxRB_GROUP );
+ m_radioBtnSymlinksFollow->SetValue( true );
+ bSizer176->Add( m_radioBtnSymlinksFollow, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
- m_radioBtnSymlinksDirect = new wxRadioButton( m_panelComparisonSettings, wxID_ANY, _("&Direct"), wxDefaultPosition, wxDefaultSize, 0 );
- bSizer176->Add( m_radioBtnSymlinksDirect, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
+ m_radioBtnSymlinksDirect = new wxRadioButton( m_panelComparisonSettings, wxID_ANY, _("&Direct"), wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer176->Add( m_radioBtnSymlinksDirect, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
- bSizer1721->Add( bSizer176, 0, wxLEFT|wxEXPAND, 15 );
+ bSizer1721->Add( bSizer176, 0, wxLEFT|wxEXPAND, 15 );
- bSizer1721->Add( 0, 0, 1, wxEXPAND, 5 );
+ bSizer1721->Add( 0, 0, 1, wxEXPAND, 5 );
- m_hyperlink24 = new wxHyperlinkCtrl( m_panelComparisonSettings, wxID_ANY, _("More information"), wxT("https://freefilesync.org/manual.php?topic=comparison-settings"), wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE );
- m_hyperlink24->SetToolTip( _("https://freefilesync.org/manual.php?topic=comparison-settings") );
+ m_hyperlink24 = new wxHyperlinkCtrl( m_panelComparisonSettings, wxID_ANY, _("More information"), wxT("https://freefilesync.org/manual.php?topic=comparison-settings"), wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE );
+ m_hyperlink24->SetToolTip( _("https://freefilesync.org/manual.php?topic=comparison-settings") );
- bSizer1721->Add( m_hyperlink24, 0, wxBOTTOM|wxRIGHT|wxLEFT, 5 );
+ bSizer1721->Add( m_hyperlink24, 0, wxBOTTOM|wxRIGHT|wxLEFT, 5 );
- bSizer1734->Add( bSizer1721, 0, wxALL|wxEXPAND, 5 );
+ bSizer1734->Add( bSizer1721, 0, wxALL|wxEXPAND, 5 );
- bSizer1734->Add( 0, 0, 1, 0, 5 );
+ bSizer1734->Add( 0, 0, 1, 0, 5 );
- m_staticline44 = new wxStaticLine( m_panelComparisonSettings, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
- bSizer1734->Add( m_staticline44, 0, wxEXPAND, 5 );
+ m_staticline44 = new wxStaticLine( m_panelComparisonSettings, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
+ bSizer1734->Add( m_staticline44, 0, wxEXPAND, 5 );
- bSizer1734->Add( 0, 0, 1, 0, 5 );
+ bSizer1734->Add( 0, 0, 1, 0, 5 );
- wxBoxSizer* bSizer1733;
- bSizer1733 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer1733;
+ bSizer1733 = new wxBoxSizer( wxVERTICAL );
- m_staticText112 = new wxStaticText( m_panelComparisonSettings, wxID_ANY, _("&Ignore time shift [hh:mm]"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText112->Wrap( -1 );
- bSizer1733->Add( m_staticText112, 0, wxALL, 5 );
+ m_staticText112 = new wxStaticText( m_panelComparisonSettings, wxID_ANY, _("&Ignore time shift [hh:mm]"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText112->Wrap( -1 );
+ bSizer1733->Add( m_staticText112, 0, wxALL, 5 );
- m_textCtrlTimeShift = new wxTextCtrl( m_panelComparisonSettings, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
- m_textCtrlTimeShift->SetToolTip( _("List of file time offsets to ignore") );
+ m_textCtrlTimeShift = new wxTextCtrl( m_panelComparisonSettings, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
+ m_textCtrlTimeShift->SetToolTip( _("List of file time offsets to ignore") );
- bSizer1733->Add( m_textCtrlTimeShift, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND, 5 );
+ bSizer1733->Add( m_textCtrlTimeShift, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND, 5 );
- wxBoxSizer* bSizer197;
- bSizer197 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer197;
+ bSizer197 = new wxBoxSizer( wxHORIZONTAL );
- m_staticText1381 = new wxStaticText( m_panelComparisonSettings, wxID_ANY, _("Example:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText1381->Wrap( -1 );
- m_staticText1381->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
+ m_staticText1381 = new wxStaticText( m_panelComparisonSettings, wxID_ANY, _("Example:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText1381->Wrap( -1 );
+ m_staticText1381->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
- bSizer197->Add( m_staticText1381, 0, wxBOTTOM|wxRIGHT|wxLEFT, 5 );
+ bSizer197->Add( m_staticText1381, 0, wxBOTTOM|wxRIGHT|wxLEFT, 5 );
- m_staticText13811 = new wxStaticText( m_panelComparisonSettings, wxID_ANY, _("1, 2, 4:30"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText13811->Wrap( -1 );
- m_staticText13811->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
+ m_staticText13811 = new wxStaticText( m_panelComparisonSettings, wxID_ANY, _("1, 2, 4:30"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText13811->Wrap( -1 );
+ m_staticText13811->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
- bSizer197->Add( m_staticText13811, 0, wxBOTTOM|wxRIGHT, 5 );
+ bSizer197->Add( m_staticText13811, 0, wxBOTTOM|wxRIGHT, 5 );
- bSizer1733->Add( bSizer197, 0, 0, 5 );
+ bSizer1733->Add( bSizer197, 0, 0, 5 );
- bSizer1733->Add( 0, 0, 1, wxEXPAND, 5 );
+ bSizer1733->Add( 0, 0, 1, wxEXPAND, 5 );
- m_hyperlink241 = new wxHyperlinkCtrl( m_panelComparisonSettings, wxID_ANY, _("Handle daylight saving time"), wxT("https://freefilesync.org/manual.php?topic=daylight-saving-time"), wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE );
- m_hyperlink241->SetToolTip( _("https://freefilesync.org/manual.php?topic=daylight-saving-time") );
+ m_hyperlink241 = new wxHyperlinkCtrl( m_panelComparisonSettings, wxID_ANY, _("Handle daylight saving time"), wxT("https://freefilesync.org/manual.php?topic=daylight-saving-time"), wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE );
+ m_hyperlink241->SetToolTip( _("https://freefilesync.org/manual.php?topic=daylight-saving-time") );
- bSizer1733->Add( m_hyperlink241, 0, wxBOTTOM|wxRIGHT|wxLEFT, 5 );
+ bSizer1733->Add( m_hyperlink241, 0, wxBOTTOM|wxRIGHT|wxLEFT, 5 );
- bSizer1734->Add( bSizer1733, 0, wxALL|wxEXPAND, 5 );
+ bSizer1734->Add( bSizer1733, 0, wxALL|wxEXPAND, 5 );
- bSizer1734->Add( 0, 0, 1, 0, 5 );
+ bSizer1734->Add( 0, 0, 1, 0, 5 );
- bSizer159->Add( bSizer1734, 0, wxEXPAND, 5 );
+ bSizer159->Add( bSizer1734, 0, wxEXPAND, 5 );
- m_staticline331 = new wxStaticLine( m_panelComparisonSettings, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer159->Add( m_staticline331, 0, wxEXPAND, 5 );
+ m_staticline331 = new wxStaticLine( m_panelComparisonSettings, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer159->Add( m_staticline331, 0, wxEXPAND, 5 );
- bSizerCompMisc = new wxBoxSizer( wxVERTICAL );
+ bSizerCompMisc = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer2781;
- bSizer2781 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer2781;
+ bSizer2781 = new wxBoxSizer( wxHORIZONTAL );
- wxFlexGridSizer* fgSizer61;
- fgSizer61 = new wxFlexGridSizer( 0, 2, 5, 5 );
- fgSizer61->SetFlexibleDirection( wxBOTH );
- fgSizer61->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
+ wxFlexGridSizer* fgSizer61;
+ fgSizer61 = new wxFlexGridSizer( 0, 2, 5, 5 );
+ fgSizer61->SetFlexibleDirection( wxBOTH );
+ fgSizer61->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
- m_bitmapIgnoreErrors = new wxStaticBitmap( m_panelComparisonSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- fgSizer61->Add( m_bitmapIgnoreErrors, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ m_bitmapIgnoreErrors = new wxStaticBitmap( m_panelComparisonSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ fgSizer61->Add( m_bitmapIgnoreErrors, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- m_checkBoxIgnoreErrors = new wxCheckBox( m_panelComparisonSettings, wxID_ANY, _("Ignore errors"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- fgSizer61->Add( m_checkBoxIgnoreErrors, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
+ m_checkBoxIgnoreErrors = new wxCheckBox( m_panelComparisonSettings, wxID_ANY, _("Ignore errors"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ fgSizer61->Add( m_checkBoxIgnoreErrors, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
- m_bitmapRetryErrors = new wxStaticBitmap( m_panelComparisonSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- fgSizer61->Add( m_bitmapRetryErrors, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ m_bitmapRetryErrors = new wxStaticBitmap( m_panelComparisonSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ fgSizer61->Add( m_bitmapRetryErrors, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
- m_checkBoxAutoRetry = new wxCheckBox( m_panelComparisonSettings, wxID_ANY, _("Automatic retry"), wxDefaultPosition, wxDefaultSize, 0 );
- fgSizer61->Add( m_checkBoxAutoRetry, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
+ m_checkBoxAutoRetry = new wxCheckBox( m_panelComparisonSettings, wxID_ANY, _("Automatic retry"), wxDefaultPosition, wxDefaultSize, 0 );
+ fgSizer61->Add( m_checkBoxAutoRetry, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
- bSizer2781->Add( fgSizer61, 0, wxALIGN_CENTER_VERTICAL|wxALL, 10 );
+ bSizer2781->Add( fgSizer61, 0, wxALIGN_CENTER_VERTICAL|wxALL, 10 );
- fgSizerAutoRetry = new wxFlexGridSizer( 0, 2, 5, 10 );
- fgSizerAutoRetry->SetFlexibleDirection( wxBOTH );
- fgSizerAutoRetry->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
+ fgSizerAutoRetry = new wxFlexGridSizer( 0, 2, 5, 10 );
+ fgSizerAutoRetry->SetFlexibleDirection( wxBOTH );
+ fgSizerAutoRetry->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
- m_staticText96 = new wxStaticText( m_panelComparisonSettings, wxID_ANY, _("Retry count:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText96->Wrap( -1 );
- fgSizerAutoRetry->Add( m_staticText96, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_staticText96 = new wxStaticText( m_panelComparisonSettings, wxID_ANY, _("Retry count:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText96->Wrap( -1 );
+ fgSizerAutoRetry->Add( m_staticText96, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_staticTextAutoRetryDelay = new wxStaticText( m_panelComparisonSettings, wxID_ANY, _("Delay (in seconds):"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextAutoRetryDelay->Wrap( -1 );
- fgSizerAutoRetry->Add( m_staticTextAutoRetryDelay, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_staticTextAutoRetryDelay = new wxStaticText( m_panelComparisonSettings, wxID_ANY, _("Delay (in seconds):"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextAutoRetryDelay->Wrap( -1 );
+ fgSizerAutoRetry->Add( m_staticTextAutoRetryDelay, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_spinCtrlAutoRetryCount = new wxSpinCtrl( m_panelComparisonSettings, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( -1, -1 ), wxSP_ARROW_KEYS, 1, 2000000000, 1 );
- fgSizerAutoRetry->Add( m_spinCtrlAutoRetryCount, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_spinCtrlAutoRetryCount = new wxSpinCtrl( m_panelComparisonSettings, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( -1,-1 ), wxSP_ARROW_KEYS, 1, 2000000000, 1 );
+ fgSizerAutoRetry->Add( m_spinCtrlAutoRetryCount, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_spinCtrlAutoRetryDelay = new wxSpinCtrl( m_panelComparisonSettings, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( -1, -1 ), wxSP_ARROW_KEYS, 0, 2000000000, 0 );
- fgSizerAutoRetry->Add( m_spinCtrlAutoRetryDelay, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_spinCtrlAutoRetryDelay = new wxSpinCtrl( m_panelComparisonSettings, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( -1,-1 ), wxSP_ARROW_KEYS, 0, 2000000000, 0 );
+ fgSizerAutoRetry->Add( m_spinCtrlAutoRetryDelay, 0, wxALIGN_CENTER_VERTICAL, 5 );
- bSizer2781->Add( fgSizerAutoRetry, 0, wxTOP|wxBOTTOM|wxRIGHT|wxALIGN_CENTER_VERTICAL, 10 );
+ bSizer2781->Add( fgSizerAutoRetry, 0, wxTOP|wxBOTTOM|wxRIGHT|wxALIGN_CENTER_VERTICAL, 10 );
- bSizerCompMisc->Add( bSizer2781, 0, wxEXPAND, 5 );
+ bSizerCompMisc->Add( bSizer2781, 0, wxEXPAND, 5 );
- m_staticline3311 = new wxStaticLine( m_panelComparisonSettings, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizerCompMisc->Add( m_staticline3311, 0, wxEXPAND, 5 );
+ m_staticline3311 = new wxStaticLine( m_panelComparisonSettings, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizerCompMisc->Add( m_staticline3311, 0, wxEXPAND, 5 );
- bSizer159->Add( bSizerCompMisc, 0, wxEXPAND, 5 );
+ bSizer159->Add( bSizerCompMisc, 0, wxEXPAND, 5 );
- bSizer2561->Add( bSizer159, 0, wxEXPAND, 5 );
+ bSizer2561->Add( bSizer159, 0, wxEXPAND, 5 );
- m_staticline751 = new wxStaticLine( m_panelComparisonSettings, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
- bSizer2561->Add( m_staticline751, 0, wxEXPAND, 5 );
+ m_staticline751 = new wxStaticLine( m_panelComparisonSettings, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
+ bSizer2561->Add( m_staticline751, 0, wxEXPAND, 5 );
- bSizerPerformance = new wxBoxSizer( wxVERTICAL );
+ bSizerPerformance = new wxBoxSizer( wxVERTICAL );
- m_panel57 = new wxPanel( m_panelComparisonSettings, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panel57->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
+ m_panel57 = new wxPanel( m_panelComparisonSettings, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panel57->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
- wxBoxSizer* bSizer2191;
- bSizer2191 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer2191;
+ bSizer2191 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapPerf = new wxStaticBitmap( m_panel57, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer2191->Add( m_bitmapPerf, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
+ m_bitmapPerf = new wxStaticBitmap( m_panel57, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer2191->Add( m_bitmapPerf, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
- m_staticText13611 = new wxStaticText( m_panel57, wxID_ANY, _("Performance improvements:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText13611->Wrap( -1 );
- bSizer2191->Add( m_staticText13611, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 10 );
+ m_staticText13611 = new wxStaticText( m_panel57, wxID_ANY, _("Performance improvements:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText13611->Wrap( -1 );
+ bSizer2191->Add( m_staticText13611, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 10 );
- m_panel57->SetSizer( bSizer2191 );
- m_panel57->Layout();
- bSizer2191->Fit( m_panel57 );
- bSizerPerformance->Add( m_panel57, 0, wxEXPAND, 5 );
+ m_panel57->SetSizer( bSizer2191 );
+ m_panel57->Layout();
+ bSizer2191->Fit( m_panel57 );
+ bSizerPerformance->Add( m_panel57, 0, wxEXPAND, 5 );
- wxStaticLine* m_staticline75;
- m_staticline75 = new wxStaticLine( m_panelComparisonSettings, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizerPerformance->Add( m_staticline75, 0, wxEXPAND, 5 );
+ wxStaticLine* m_staticline75;
+ m_staticline75 = new wxStaticLine( m_panelComparisonSettings, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizerPerformance->Add( m_staticline75, 0, wxEXPAND, 5 );
- m_hyperlinkPerfDeRequired = new wxHyperlinkCtrl( m_panelComparisonSettings, wxID_ANY, _("Requires FreeFileSync Donation Edition"), wxT("https://freefilesync.org/faq.php#donation-edition"), wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE );
- m_hyperlinkPerfDeRequired->SetToolTip( _("https://freefilesync.org/faq.php#donation-edition") );
+ m_hyperlinkPerfDeRequired = new wxHyperlinkCtrl( m_panelComparisonSettings, wxID_ANY, _("Requires FreeFileSync Donation Edition"), wxT("https://freefilesync.org/faq.php#donation-edition"), wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE );
+ m_hyperlinkPerfDeRequired->SetToolTip( _("https://freefilesync.org/faq.php#donation-edition") );
- bSizerPerformance->Add( m_hyperlinkPerfDeRequired, 0, wxALL, 10 );
+ bSizerPerformance->Add( m_hyperlinkPerfDeRequired, 0, wxALL, 10 );
- bSizer260 = new wxBoxSizer( wxVERTICAL );
+ bSizer260 = new wxBoxSizer( wxVERTICAL );
- m_staticTextPerfParallelOps = new wxStaticText( m_panelComparisonSettings, wxID_ANY, _("Parallel file operations:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextPerfParallelOps->Wrap( -1 );
- bSizer260->Add( m_staticTextPerfParallelOps, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
+ m_staticTextPerfParallelOps = new wxStaticText( m_panelComparisonSettings, wxID_ANY, _("Parallel file operations:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextPerfParallelOps->Wrap( -1 );
+ bSizer260->Add( m_staticTextPerfParallelOps, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
- m_scrolledWindowPerf = new wxScrolledWindow( m_panelComparisonSettings, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxHSCROLL|wxVSCROLL );
- m_scrolledWindowPerf->SetScrollRate( 5, 5 );
- m_scrolledWindowPerf->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ m_scrolledWindowPerf = new wxScrolledWindow( m_panelComparisonSettings, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxHSCROLL|wxVSCROLL );
+ m_scrolledWindowPerf->SetScrollRate( 5, 5 );
+ m_scrolledWindowPerf->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- fgSizerPerf = new wxFlexGridSizer( 0, 2, 5, 5 );
- fgSizerPerf->SetFlexibleDirection( wxBOTH );
- fgSizerPerf->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
+ fgSizerPerf = new wxFlexGridSizer( 0, 2, 5, 5 );
+ fgSizerPerf->SetFlexibleDirection( wxBOTH );
+ fgSizerPerf->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
- m_scrolledWindowPerf->SetSizer( fgSizerPerf );
- m_scrolledWindowPerf->Layout();
- fgSizerPerf->Fit( m_scrolledWindowPerf );
- bSizer260->Add( m_scrolledWindowPerf, 1, wxALL|wxEXPAND, 5 );
+ m_scrolledWindowPerf->SetSizer( fgSizerPerf );
+ m_scrolledWindowPerf->Layout();
+ fgSizerPerf->Fit( m_scrolledWindowPerf );
+ bSizer260->Add( m_scrolledWindowPerf, 1, wxALL|wxEXPAND, 5 );
- bSizerPerformance->Add( bSizer260, 1, wxALL|wxEXPAND, 5 );
+ bSizerPerformance->Add( bSizer260, 1, wxALL|wxEXPAND, 5 );
- m_hyperlink1711 = new wxHyperlinkCtrl( m_panelComparisonSettings, wxID_ANY, _("How to get best performance?"), wxT("https://freefilesync.org/manual.php?topic=performance"), wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE );
- m_hyperlink1711->SetToolTip( _("https://freefilesync.org/manual.php?topic=performance") );
+ m_hyperlink1711 = new wxHyperlinkCtrl( m_panelComparisonSettings, wxID_ANY, _("How to get best performance?"), wxT("https://freefilesync.org/manual.php?topic=performance"), wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE );
+ m_hyperlink1711->SetToolTip( _("https://freefilesync.org/manual.php?topic=performance") );
- bSizerPerformance->Add( m_hyperlink1711, 0, wxBOTTOM|wxRIGHT|wxLEFT, 10 );
+ bSizerPerformance->Add( m_hyperlink1711, 0, wxBOTTOM|wxRIGHT|wxLEFT, 10 );
- bSizer2561->Add( bSizerPerformance, 1, wxEXPAND, 5 );
+ bSizer2561->Add( bSizerPerformance, 1, wxEXPAND, 5 );
- m_panelComparisonSettings->SetSizer( bSizer2561 );
- m_panelComparisonSettings->Layout();
- bSizer2561->Fit( m_panelComparisonSettings );
- bSizer275->Add( m_panelComparisonSettings, 1, wxEXPAND, 5 );
+ m_panelComparisonSettings->SetSizer( bSizer2561 );
+ m_panelComparisonSettings->Layout();
+ bSizer2561->Fit( m_panelComparisonSettings );
+ bSizer275->Add( m_panelComparisonSettings, 1, wxEXPAND, 5 );
- m_panelCompSettingsTab->SetSizer( bSizer275 );
- m_panelCompSettingsTab->Layout();
- bSizer275->Fit( m_panelCompSettingsTab );
- m_notebook->AddPage( m_panelCompSettingsTab, _("dummy"), false );
- m_panelFilterSettingsTab = new wxPanel( m_notebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panelFilterSettingsTab->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ m_panelCompSettingsTab->SetSizer( bSizer275 );
+ m_panelCompSettingsTab->Layout();
+ bSizer275->Fit( m_panelCompSettingsTab );
+ m_notebook->AddPage( m_panelCompSettingsTab, _("dummy"), false );
+ m_panelFilterSettingsTab = new wxPanel( m_notebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panelFilterSettingsTab->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- wxBoxSizer* bSizer278;
- bSizer278 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer278;
+ bSizer278 = new wxBoxSizer( wxVERTICAL );
- bSizerHeaderFilterSettings = new wxBoxSizer( wxVERTICAL );
+ bSizerHeaderFilterSettings = new wxBoxSizer( wxVERTICAL );
- m_staticTextMainFilterSettings = new wxStaticText( m_panelFilterSettingsTab, wxID_ANY, _("Main settings:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextMainFilterSettings->Wrap( -1 );
- bSizerHeaderFilterSettings->Add( m_staticTextMainFilterSettings, 0, wxALL, 10 );
+ m_staticTextMainFilterSettings = new wxStaticText( m_panelFilterSettingsTab, wxID_ANY, _("Main settings:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextMainFilterSettings->Wrap( -1 );
+ bSizerHeaderFilterSettings->Add( m_staticTextMainFilterSettings, 0, wxALL, 10 );
- m_staticTextLocalFilterSettings = new wxStaticText( m_panelFilterSettingsTab, wxID_ANY, _("Local settings:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextLocalFilterSettings->Wrap( -1 );
- bSizerHeaderFilterSettings->Add( m_staticTextLocalFilterSettings, 0, wxALL, 10 );
+ m_staticTextLocalFilterSettings = new wxStaticText( m_panelFilterSettingsTab, wxID_ANY, _("Local settings:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextLocalFilterSettings->Wrap( -1 );
+ bSizerHeaderFilterSettings->Add( m_staticTextLocalFilterSettings, 0, wxALL, 10 );
- m_staticlineFilterHeader = new wxStaticLine( m_panelFilterSettingsTab, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizerHeaderFilterSettings->Add( m_staticlineFilterHeader, 0, wxEXPAND, 5 );
+ m_staticlineFilterHeader = new wxStaticLine( m_panelFilterSettingsTab, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizerHeaderFilterSettings->Add( m_staticlineFilterHeader, 0, wxEXPAND, 5 );
- bSizer278->Add( bSizerHeaderFilterSettings, 0, wxEXPAND, 5 );
+ bSizer278->Add( bSizerHeaderFilterSettings, 0, wxEXPAND, 5 );
- wxBoxSizer* bSizer301;
- bSizer301 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer301;
+ bSizer301 = new wxBoxSizer( wxHORIZONTAL );
- wxBoxSizer* bSizer166;
- bSizer166 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer166;
+ bSizer166 = new wxBoxSizer( wxVERTICAL );
- bSizer166->Add( 0, 10, 0, 0, 5 );
+ bSizer166->Add( 0, 10, 0, 0, 5 );
- wxBoxSizer* bSizer1661;
- bSizer1661 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer1661;
+ bSizer1661 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapInclude = new wxStaticBitmap( m_panelFilterSettingsTab, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), 0 );
- bSizer1661->Add( m_bitmapInclude, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL|wxALL, 5 );
+ m_bitmapInclude = new wxStaticBitmap( m_panelFilterSettingsTab, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ bSizer1661->Add( m_bitmapInclude, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL|wxALL, 5 );
- wxBoxSizer* bSizer1731;
- bSizer1731 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer1731;
+ bSizer1731 = new wxBoxSizer( wxVERTICAL );
- m_staticText78 = new wxStaticText( m_panelFilterSettingsTab, wxID_ANY, _("Include:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText78->Wrap( -1 );
- bSizer1731->Add( m_staticText78, 0, 0, 5 );
+ m_staticText78 = new wxStaticText( m_panelFilterSettingsTab, wxID_ANY, _("Include:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText78->Wrap( -1 );
+ bSizer1731->Add( m_staticText78, 0, 0, 5 );
- m_textCtrlInclude = new wxTextCtrl( m_panelFilterSettingsTab, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( -1, -1 ), wxTE_MULTILINE );
- bSizer1731->Add( m_textCtrlInclude, 1, wxEXPAND|wxTOP, 5 );
+ m_textCtrlInclude = new wxTextCtrl( m_panelFilterSettingsTab, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( -1,-1 ), wxTE_MULTILINE );
+ bSizer1731->Add( m_textCtrlInclude, 1, wxEXPAND|wxTOP, 5 );
- bSizer1661->Add( bSizer1731, 1, wxEXPAND, 5 );
+ bSizer1661->Add( bSizer1731, 1, wxEXPAND, 5 );
- bSizer166->Add( bSizer1661, 3, wxEXPAND|wxLEFT, 5 );
+ bSizer166->Add( bSizer1661, 3, wxEXPAND|wxLEFT, 5 );
- bSizer166->Add( 0, 10, 0, 0, 5 );
+ bSizer166->Add( 0, 10, 0, 0, 5 );
- wxBoxSizer* bSizer1651;
- bSizer1651 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer1651;
+ bSizer1651 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapExclude = new wxStaticBitmap( m_panelFilterSettingsTab, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), 0 );
- bSizer1651->Add( m_bitmapExclude, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 5 );
+ m_bitmapExclude = new wxStaticBitmap( m_panelFilterSettingsTab, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ bSizer1651->Add( m_bitmapExclude, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 5 );
- wxBoxSizer* bSizer1742;
- bSizer1742 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer1742;
+ bSizer1742 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer189;
- bSizer189 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer189;
+ bSizer189 = new wxBoxSizer( wxHORIZONTAL );
- m_staticText77 = new wxStaticText( m_panelFilterSettingsTab, wxID_ANY, _("Exclude:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText77->Wrap( -1 );
- bSizer189->Add( m_staticText77, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_staticText77 = new wxStaticText( m_panelFilterSettingsTab, wxID_ANY, _("Exclude:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText77->Wrap( -1 );
+ bSizer189->Add( m_staticText77, 0, wxALIGN_CENTER_VERTICAL, 5 );
- bSizer189->Add( 0, 0, 1, wxEXPAND, 5 );
+ bSizer189->Add( 0, 0, 1, wxEXPAND, 5 );
- m_hyperlink171 = new wxHyperlinkCtrl( m_panelFilterSettingsTab, wxID_ANY, _("Show examples"), wxT("https://freefilesync.org/manual.php?topic=exclude-files"), wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE );
- m_hyperlink171->SetToolTip( _("https://freefilesync.org/manual.php?topic=exclude-files") );
+ m_hyperlink171 = new wxHyperlinkCtrl( m_panelFilterSettingsTab, wxID_ANY, _("Show examples"), wxT("https://freefilesync.org/manual.php?topic=exclude-files"), wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE );
+ m_hyperlink171->SetToolTip( _("https://freefilesync.org/manual.php?topic=exclude-files") );
- bSizer189->Add( m_hyperlink171, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
+ bSizer189->Add( m_hyperlink171, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
- bSizer1742->Add( bSizer189, 0, wxEXPAND, 5 );
+ bSizer1742->Add( bSizer189, 0, wxEXPAND, 5 );
- m_textCtrlExclude = new wxTextCtrl( m_panelFilterSettingsTab, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( -1, -1 ), wxTE_MULTILINE );
- bSizer1742->Add( m_textCtrlExclude, 1, wxEXPAND|wxTOP, 5 );
+ m_textCtrlExclude = new wxTextCtrl( m_panelFilterSettingsTab, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( -1,-1 ), wxTE_MULTILINE );
+ bSizer1742->Add( m_textCtrlExclude, 1, wxEXPAND|wxTOP, 5 );
- bSizer1651->Add( bSizer1742, 1, wxEXPAND, 5 );
+ bSizer1651->Add( bSizer1742, 1, wxEXPAND, 5 );
- bSizer166->Add( bSizer1651, 5, wxEXPAND|wxLEFT, 5 );
+ bSizer166->Add( bSizer1651, 5, wxEXPAND|wxLEFT, 5 );
- bSizer301->Add( bSizer166, 1, wxEXPAND, 5 );
+ bSizer301->Add( bSizer166, 1, wxEXPAND, 5 );
- m_staticline24 = new wxStaticLine( m_panelFilterSettingsTab, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
- bSizer301->Add( m_staticline24, 0, wxEXPAND, 5 );
+ m_staticline24 = new wxStaticLine( m_panelFilterSettingsTab, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
+ bSizer301->Add( m_staticline24, 0, wxEXPAND, 5 );
- wxBoxSizer* bSizer160;
- bSizer160 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer160;
+ bSizer160 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer168;
- bSizer168 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer168;
+ bSizer168 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapFilterSize = new wxStaticBitmap( m_panelFilterSettingsTab, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), 0 );
- bSizer168->Add( m_bitmapFilterSize, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL|wxALL, 5 );
+ m_bitmapFilterSize = new wxStaticBitmap( m_panelFilterSettingsTab, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ bSizer168->Add( m_bitmapFilterSize, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL|wxALL, 5 );
- wxBoxSizer* bSizer158;
- bSizer158 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer158;
+ bSizer158 = new wxBoxSizer( wxVERTICAL );
- m_staticText80 = new wxStaticText( m_panelFilterSettingsTab, wxID_ANY, _("File size:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText80->Wrap( -1 );
- bSizer158->Add( m_staticText80, 0, wxBOTTOM, 5 );
+ m_staticText80 = new wxStaticText( m_panelFilterSettingsTab, wxID_ANY, _("File size:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText80->Wrap( -1 );
+ bSizer158->Add( m_staticText80, 0, wxBOTTOM, 5 );
- wxBoxSizer* bSizer162;
- bSizer162 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer162;
+ bSizer162 = new wxBoxSizer( wxVERTICAL );
- m_staticText101 = new wxStaticText( m_panelFilterSettingsTab, wxID_ANY, _("Minimum:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText101->Wrap( -1 );
- bSizer162->Add( m_staticText101, 0, wxBOTTOM, 2 );
+ m_staticText101 = new wxStaticText( m_panelFilterSettingsTab, wxID_ANY, _("Minimum:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText101->Wrap( -1 );
+ bSizer162->Add( m_staticText101, 0, wxBOTTOM, 2 );
- m_spinCtrlMinSize = new wxSpinCtrl( m_panelFilterSettingsTab, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 0, 2000000000, 0 );
- bSizer162->Add( m_spinCtrlMinSize, 0, wxEXPAND, 5 );
+ m_spinCtrlMinSize = new wxSpinCtrl( m_panelFilterSettingsTab, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 0, 2000000000, 0 );
+ bSizer162->Add( m_spinCtrlMinSize, 0, wxEXPAND, 5 );
- wxArrayString m_choiceUnitMinSizeChoices;
- m_choiceUnitMinSize = new wxChoice( m_panelFilterSettingsTab, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_choiceUnitMinSizeChoices, 0 );
- m_choiceUnitMinSize->SetSelection( 0 );
- bSizer162->Add( m_choiceUnitMinSize, 0, wxEXPAND, 5 );
+ wxArrayString m_choiceUnitMinSizeChoices;
+ m_choiceUnitMinSize = new wxChoice( m_panelFilterSettingsTab, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_choiceUnitMinSizeChoices, 0 );
+ m_choiceUnitMinSize->SetSelection( 0 );
+ bSizer162->Add( m_choiceUnitMinSize, 0, wxEXPAND, 5 );
- bSizer158->Add( bSizer162, 0, wxBOTTOM|wxEXPAND, 5 );
+ bSizer158->Add( bSizer162, 0, wxBOTTOM|wxEXPAND, 5 );
- wxBoxSizer* bSizer163;
- bSizer163 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer163;
+ bSizer163 = new wxBoxSizer( wxVERTICAL );
- m_staticText102 = new wxStaticText( m_panelFilterSettingsTab, wxID_ANY, _("Maximum:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText102->Wrap( -1 );
- bSizer163->Add( m_staticText102, 0, wxBOTTOM, 2 );
+ m_staticText102 = new wxStaticText( m_panelFilterSettingsTab, wxID_ANY, _("Maximum:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText102->Wrap( -1 );
+ bSizer163->Add( m_staticText102, 0, wxBOTTOM, 2 );
- m_spinCtrlMaxSize = new wxSpinCtrl( m_panelFilterSettingsTab, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 0, 2000000000, 0 );
- bSizer163->Add( m_spinCtrlMaxSize, 0, wxEXPAND, 5 );
+ m_spinCtrlMaxSize = new wxSpinCtrl( m_panelFilterSettingsTab, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 0, 2000000000, 0 );
+ bSizer163->Add( m_spinCtrlMaxSize, 0, wxEXPAND, 5 );
- wxArrayString m_choiceUnitMaxSizeChoices;
- m_choiceUnitMaxSize = new wxChoice( m_panelFilterSettingsTab, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_choiceUnitMaxSizeChoices, 0 );
- m_choiceUnitMaxSize->SetSelection( 0 );
- bSizer163->Add( m_choiceUnitMaxSize, 0, wxEXPAND, 5 );
+ wxArrayString m_choiceUnitMaxSizeChoices;
+ m_choiceUnitMaxSize = new wxChoice( m_panelFilterSettingsTab, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_choiceUnitMaxSizeChoices, 0 );
+ m_choiceUnitMaxSize->SetSelection( 0 );
+ bSizer163->Add( m_choiceUnitMaxSize, 0, wxEXPAND, 5 );
- bSizer158->Add( bSizer163, 0, wxEXPAND, 5 );
+ bSizer158->Add( bSizer163, 0, wxEXPAND, 5 );
- bSizer168->Add( bSizer158, 1, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
+ bSizer168->Add( bSizer158, 1, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
- bSizer160->Add( bSizer168, 2, wxEXPAND|wxALL, 5 );
+ bSizer160->Add( bSizer168, 2, wxEXPAND|wxALL, 5 );
- m_staticline23 = new wxStaticLine( m_panelFilterSettingsTab, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer160->Add( m_staticline23, 0, wxEXPAND, 5 );
+ m_staticline23 = new wxStaticLine( m_panelFilterSettingsTab, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer160->Add( m_staticline23, 0, wxEXPAND, 5 );
- wxBoxSizer* bSizer167;
- bSizer167 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer167;
+ bSizer167 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapFilterDate = new wxStaticBitmap( m_panelFilterSettingsTab, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), 0 );
- bSizer167->Add( m_bitmapFilterDate, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 5 );
+ m_bitmapFilterDate = new wxStaticBitmap( m_panelFilterSettingsTab, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ bSizer167->Add( m_bitmapFilterDate, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 5 );
- wxBoxSizer* bSizer165;
- bSizer165 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer165;
+ bSizer165 = new wxBoxSizer( wxVERTICAL );
- m_staticText79 = new wxStaticText( m_panelFilterSettingsTab, wxID_ANY, _("Time span:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText79->Wrap( -1 );
- bSizer165->Add( m_staticText79, 0, wxBOTTOM, 5 );
+ m_staticText79 = new wxStaticText( m_panelFilterSettingsTab, wxID_ANY, _("Time span:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText79->Wrap( -1 );
+ bSizer165->Add( m_staticText79, 0, wxBOTTOM, 5 );
- wxArrayString m_choiceUnitTimespanChoices;
- m_choiceUnitTimespan = new wxChoice( m_panelFilterSettingsTab, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_choiceUnitTimespanChoices, 0 );
- m_choiceUnitTimespan->SetSelection( 0 );
- bSizer165->Add( m_choiceUnitTimespan, 0, wxEXPAND, 5 );
+ wxArrayString m_choiceUnitTimespanChoices;
+ m_choiceUnitTimespan = new wxChoice( m_panelFilterSettingsTab, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_choiceUnitTimespanChoices, 0 );
+ m_choiceUnitTimespan->SetSelection( 0 );
+ bSizer165->Add( m_choiceUnitTimespan, 0, wxEXPAND, 5 );
- m_spinCtrlTimespan = new wxSpinCtrl( m_panelFilterSettingsTab, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 0, 2000000000, 0 );
- bSizer165->Add( m_spinCtrlTimespan, 0, wxEXPAND, 5 );
+ m_spinCtrlTimespan = new wxSpinCtrl( m_panelFilterSettingsTab, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 0, 2000000000, 0 );
+ bSizer165->Add( m_spinCtrlTimespan, 0, wxEXPAND, 5 );
- bSizer167->Add( bSizer165, 1, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
+ bSizer167->Add( bSizer165, 1, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
- bSizer160->Add( bSizer167, 1, wxEXPAND|wxALL, 5 );
+ bSizer160->Add( bSizer167, 1, wxEXPAND|wxALL, 5 );
- m_staticline231 = new wxStaticLine( m_panelFilterSettingsTab, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer160->Add( m_staticline231, 0, wxEXPAND, 5 );
+ m_staticline231 = new wxStaticLine( m_panelFilterSettingsTab, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer160->Add( m_staticline231, 0, wxEXPAND, 5 );
- bSizer301->Add( bSizer160, 0, wxEXPAND, 5 );
+ bSizer301->Add( bSizer160, 0, wxEXPAND, 5 );
- bSizer278->Add( bSizer301, 1, wxEXPAND, 5 );
+ bSizer278->Add( bSizer301, 1, wxEXPAND, 5 );
- wxBoxSizer* bSizer302;
- bSizer302 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer302;
+ bSizer302 = new wxBoxSizer( wxHORIZONTAL );
- m_staticTextFilterDescr = new wxStaticText( m_panelFilterSettingsTab, wxID_ANY, _("Select filter rules to exclude certain files from synchronization. Enter file paths relative to their corresponding folder pair."), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- m_staticTextFilterDescr->Wrap( -1 );
- m_staticTextFilterDescr->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
+ m_staticTextFilterDescr = new wxStaticText( m_panelFilterSettingsTab, wxID_ANY, _("Select filter rules to exclude certain files from synchronization. Enter file paths relative to their corresponding folder pair."), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ m_staticTextFilterDescr->Wrap( -1 );
+ m_staticTextFilterDescr->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
- bSizer302->Add( m_staticTextFilterDescr, 1, wxALL|wxALIGN_CENTER_VERTICAL, 10 );
+ bSizer302->Add( m_staticTextFilterDescr, 1, wxALL|wxALIGN_CENTER_VERTICAL, 10 );
- wxBoxSizer* bSizer303;
- bSizer303 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer303;
+ bSizer303 = new wxBoxSizer( wxHORIZONTAL );
- m_buttonDefault = new wxButton( m_panelFilterSettingsTab, wxID_ANY, _("&Default"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- bSizer303->Add( m_buttonDefault, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_buttonDefault = new wxButton( m_panelFilterSettingsTab, wxID_ANY, _("&Default"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ bSizer303->Add( m_buttonDefault, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_bpButtonDefaultContext = new wxBitmapButton( m_panelFilterSettingsTab, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- bSizer303->Add( m_bpButtonDefaultContext, 0, wxEXPAND, 5 );
+ m_bpButtonDefaultContext = new wxBitmapButton( m_panelFilterSettingsTab, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ bSizer303->Add( m_bpButtonDefaultContext, 0, wxEXPAND, 5 );
- bSizer302->Add( bSizer303, 0, wxTOP|wxBOTTOM|wxLEFT|wxALIGN_CENTER_VERTICAL, 10 );
+ bSizer302->Add( bSizer303, 0, wxTOP|wxBOTTOM|wxLEFT|wxALIGN_CENTER_VERTICAL, 10 );
- m_buttonClear = new wxButton( m_panelFilterSettingsTab, wxID_ANY, _("C&lear"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- bSizer302->Add( m_buttonClear, 0, wxALL|wxALIGN_CENTER_VERTICAL, 10 );
+ m_buttonClear = new wxButton( m_panelFilterSettingsTab, wxID_ANY, _("C&lear"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ bSizer302->Add( m_buttonClear, 0, wxALL|wxALIGN_CENTER_VERTICAL, 10 );
- bSizer278->Add( bSizer302, 0, wxEXPAND, 5 );
+ bSizer278->Add( bSizer302, 0, wxEXPAND, 5 );
- m_panelFilterSettingsTab->SetSizer( bSizer278 );
- m_panelFilterSettingsTab->Layout();
- bSizer278->Fit( m_panelFilterSettingsTab );
- m_notebook->AddPage( m_panelFilterSettingsTab, _("dummy"), true );
- m_panelSyncSettingsTab = new wxPanel( m_notebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panelSyncSettingsTab->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ m_panelFilterSettingsTab->SetSizer( bSizer278 );
+ m_panelFilterSettingsTab->Layout();
+ bSizer278->Fit( m_panelFilterSettingsTab );
+ m_notebook->AddPage( m_panelFilterSettingsTab, _("dummy"), true );
+ m_panelSyncSettingsTab = new wxPanel( m_notebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panelSyncSettingsTab->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- wxBoxSizer* bSizer276;
- bSizer276 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer276;
+ bSizer276 = new wxBoxSizer( wxVERTICAL );
- bSizerHeaderSyncSettings = new wxBoxSizer( wxVERTICAL );
+ bSizerHeaderSyncSettings = new wxBoxSizer( wxVERTICAL );
- m_staticTextMainSyncSettings = new wxStaticText( m_panelSyncSettingsTab, wxID_ANY, _("Main settings:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextMainSyncSettings->Wrap( -1 );
- bSizerHeaderSyncSettings->Add( m_staticTextMainSyncSettings, 0, wxALL, 10 );
+ m_staticTextMainSyncSettings = new wxStaticText( m_panelSyncSettingsTab, wxID_ANY, _("Main settings:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextMainSyncSettings->Wrap( -1 );
+ bSizerHeaderSyncSettings->Add( m_staticTextMainSyncSettings, 0, wxALL, 10 );
- m_checkBoxUseLocalSyncOptions = new wxCheckBox( m_panelSyncSettingsTab, wxID_ANY, _("Use local settings:"), wxDefaultPosition, wxDefaultSize, 0 );
- bSizerHeaderSyncSettings->Add( m_checkBoxUseLocalSyncOptions, 0, wxALL|wxEXPAND, 10 );
+ m_checkBoxUseLocalSyncOptions = new wxCheckBox( m_panelSyncSettingsTab, wxID_ANY, _("Use local settings:"), wxDefaultPosition, wxDefaultSize, 0 );
+ bSizerHeaderSyncSettings->Add( m_checkBoxUseLocalSyncOptions, 0, wxALL|wxEXPAND, 10 );
- m_staticlineSyncHeader = new wxStaticLine( m_panelSyncSettingsTab, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizerHeaderSyncSettings->Add( m_staticlineSyncHeader, 0, wxEXPAND, 5 );
+ m_staticlineSyncHeader = new wxStaticLine( m_panelSyncSettingsTab, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizerHeaderSyncSettings->Add( m_staticlineSyncHeader, 0, wxEXPAND, 5 );
- bSizer276->Add( bSizerHeaderSyncSettings, 0, wxEXPAND, 5 );
+ bSizer276->Add( bSizerHeaderSyncSettings, 0, wxEXPAND, 5 );
- m_panelSyncSettings = new wxPanel( m_panelSyncSettingsTab, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panelSyncSettings->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ m_panelSyncSettings = new wxPanel( m_panelSyncSettingsTab, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panelSyncSettings->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- wxBoxSizer* bSizer232;
- bSizer232 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer232;
+ bSizer232 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer237;
- bSizer237 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer237;
+ bSizer237 = new wxBoxSizer( wxHORIZONTAL );
- wxBoxSizer* bSizer235;
- bSizer235 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer235;
+ bSizer235 = new wxBoxSizer( wxVERTICAL );
- m_staticText86 = new wxStaticText( m_panelSyncSettings, wxID_ANY, _("Select a variant:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText86->Wrap( -1 );
- bSizer235->Add( m_staticText86, 0, wxALL, 5 );
+ m_staticText86 = new wxStaticText( m_panelSyncSettings, wxID_ANY, _("Select a variant:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText86->Wrap( -1 );
+ bSizer235->Add( m_staticText86, 0, wxALL, 5 );
- wxGridSizer* gSizer1;
- gSizer1 = new wxGridSizer( 0, 1, 0, 0 );
+ wxGridSizer* gSizer1;
+ gSizer1 = new wxGridSizer( 0, 1, 0, 0 );
- m_buttonTwoWay = new zen::ToggleButton( m_panelSyncSettings, wxID_ANY, _("Two way"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
+ m_buttonTwoWay = new zen::ToggleButton( m_panelSyncSettings, wxID_ANY, _("Two way"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
- m_buttonTwoWay->SetDefault();
- m_buttonTwoWay->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- m_buttonTwoWay->SetToolTip( _("dummy") );
+ m_buttonTwoWay->SetDefault();
+ m_buttonTwoWay->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_buttonTwoWay->SetToolTip( _("dummy") );
- gSizer1->Add( m_buttonTwoWay, 0, wxEXPAND, 5 );
+ gSizer1->Add( m_buttonTwoWay, 0, wxEXPAND, 5 );
- m_buttonMirror = new zen::ToggleButton( m_panelSyncSettings, wxID_ANY, _("Mirror"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
+ m_buttonMirror = new zen::ToggleButton( m_panelSyncSettings, wxID_ANY, _("Mirror"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
- m_buttonMirror->SetDefault();
- m_buttonMirror->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- m_buttonMirror->SetToolTip( _("dummy") );
+ m_buttonMirror->SetDefault();
+ m_buttonMirror->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_buttonMirror->SetToolTip( _("dummy") );
- gSizer1->Add( m_buttonMirror, 0, wxEXPAND, 5 );
+ gSizer1->Add( m_buttonMirror, 0, wxEXPAND, 5 );
- m_buttonUpdate = new zen::ToggleButton( m_panelSyncSettings, wxID_ANY, _("Update"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
+ m_buttonUpdate = new zen::ToggleButton( m_panelSyncSettings, wxID_ANY, _("Update"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
- m_buttonUpdate->SetDefault();
- m_buttonUpdate->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- m_buttonUpdate->SetToolTip( _("dummy") );
+ m_buttonUpdate->SetDefault();
+ m_buttonUpdate->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_buttonUpdate->SetToolTip( _("dummy") );
- gSizer1->Add( m_buttonUpdate, 0, wxEXPAND, 5 );
+ gSizer1->Add( m_buttonUpdate, 0, wxEXPAND, 5 );
- m_buttonCustom = new zen::ToggleButton( m_panelSyncSettings, wxID_ANY, _("Custom"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
+ m_buttonCustom = new zen::ToggleButton( m_panelSyncSettings, wxID_ANY, _("Custom"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
- m_buttonCustom->SetDefault();
- m_buttonCustom->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- m_buttonCustom->SetToolTip( _("dummy") );
+ m_buttonCustom->SetDefault();
+ m_buttonCustom->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_buttonCustom->SetToolTip( _("dummy") );
- gSizer1->Add( m_buttonCustom, 0, wxEXPAND, 5 );
+ gSizer1->Add( m_buttonCustom, 0, wxEXPAND, 5 );
- bSizer235->Add( gSizer1, 0, wxBOTTOM|wxRIGHT|wxLEFT, 5 );
+ bSizer235->Add( gSizer1, 0, wxBOTTOM|wxRIGHT|wxLEFT, 5 );
- bSizer237->Add( bSizer235, 0, wxALL, 5 );
+ bSizer237->Add( bSizer235, 0, wxALL, 5 );
- bSizer237->Add( 10, 0, 0, 0, 5 );
+ bSizer237->Add( 10, 0, 0, 0, 5 );
- wxBoxSizer* bSizer238;
- bSizer238 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer238;
+ bSizer238 = new wxBoxSizer( wxVERTICAL );
- bSizer238->Add( 0, 0, 1, wxEXPAND, 5 );
+ bSizer238->Add( 0, 0, 1, wxEXPAND, 5 );
- bSizerSyncDirHolder = new wxBoxSizer( wxHORIZONTAL );
+ bSizerSyncDirHolder = new wxBoxSizer( wxHORIZONTAL );
- bSizerSyncDirections = new wxBoxSizer( wxVERTICAL );
+ bSizerSyncDirections = new wxBoxSizer( wxVERTICAL );
- m_staticText184 = new wxStaticText( m_panelSyncSettings, wxID_ANY, _("Difference"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText184->Wrap( -1 );
- bSizerSyncDirections->Add( m_staticText184, 0, wxALIGN_CENTER_HORIZONTAL, 5 );
+ m_staticText184 = new wxStaticText( m_panelSyncSettings, wxID_ANY, _("Difference"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText184->Wrap( -1 );
+ bSizerSyncDirections->Add( m_staticText184, 0, wxALIGN_CENTER_HORIZONTAL, 5 );
- ffgSizer11 = new wxFlexGridSizer( 2, 0, 5, 5 );
- ffgSizer11->SetFlexibleDirection( wxBOTH );
- ffgSizer11->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
+ ffgSizer11 = new wxFlexGridSizer( 2, 0, 5, 5 );
+ ffgSizer11->SetFlexibleDirection( wxBOTH );
+ ffgSizer11->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
- m_bitmapLeftOnly = new wxStaticBitmap( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), 0 );
- m_bitmapLeftOnly->SetToolTip( _("Item exists on left side only") );
+ m_bitmapLeftOnly = new wxStaticBitmap( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ m_bitmapLeftOnly->SetToolTip( _("Item exists on left side only") );
- ffgSizer11->Add( m_bitmapLeftOnly, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ ffgSizer11->Add( m_bitmapLeftOnly, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- m_bitmapLeftNewer = new wxStaticBitmap( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), 0 );
- m_bitmapLeftNewer->SetToolTip( _("Left side is newer") );
+ m_bitmapLeftNewer = new wxStaticBitmap( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ m_bitmapLeftNewer->SetToolTip( _("Left side is newer") );
- ffgSizer11->Add( m_bitmapLeftNewer, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ ffgSizer11->Add( m_bitmapLeftNewer, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- m_bitmapDifferent = new wxStaticBitmap( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), 0 );
- m_bitmapDifferent->SetToolTip( _("Items have different content") );
+ m_bitmapDifferent = new wxStaticBitmap( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ m_bitmapDifferent->SetToolTip( _("Items have different content") );
- ffgSizer11->Add( m_bitmapDifferent, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ ffgSizer11->Add( m_bitmapDifferent, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- m_bitmapConflict = new wxStaticBitmap( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), 0 );
- m_bitmapConflict->SetToolTip( _("Conflict/item cannot be categorized") );
+ m_bitmapConflict = new wxStaticBitmap( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ m_bitmapConflict->SetToolTip( _("Conflict/item cannot be categorized") );
- ffgSizer11->Add( m_bitmapConflict, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ ffgSizer11->Add( m_bitmapConflict, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- m_bitmapRightNewer = new wxStaticBitmap( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), 0 );
- m_bitmapRightNewer->SetToolTip( _("Right side is newer") );
+ m_bitmapRightNewer = new wxStaticBitmap( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ m_bitmapRightNewer->SetToolTip( _("Right side is newer") );
- ffgSizer11->Add( m_bitmapRightNewer, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ ffgSizer11->Add( m_bitmapRightNewer, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- m_bitmapRightOnly = new wxStaticBitmap( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), 0 );
- m_bitmapRightOnly->SetToolTip( _("Item exists on right side only") );
+ m_bitmapRightOnly = new wxStaticBitmap( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ m_bitmapRightOnly->SetToolTip( _("Item exists on right side only") );
- ffgSizer11->Add( m_bitmapRightOnly, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ ffgSizer11->Add( m_bitmapRightOnly, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- m_bpButtonLeftOnly = new wxBitmapButton( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- ffgSizer11->Add( m_bpButtonLeftOnly, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ m_bpButtonLeftOnly = new wxBitmapButton( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ ffgSizer11->Add( m_bpButtonLeftOnly, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- m_bpButtonLeftNewer = new wxBitmapButton( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- ffgSizer11->Add( m_bpButtonLeftNewer, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ m_bpButtonLeftNewer = new wxBitmapButton( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ ffgSizer11->Add( m_bpButtonLeftNewer, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- m_bpButtonDifferent = new wxBitmapButton( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- ffgSizer11->Add( m_bpButtonDifferent, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ m_bpButtonDifferent = new wxBitmapButton( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ ffgSizer11->Add( m_bpButtonDifferent, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- m_bpButtonConflict = new wxBitmapButton( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- ffgSizer11->Add( m_bpButtonConflict, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ m_bpButtonConflict = new wxBitmapButton( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ ffgSizer11->Add( m_bpButtonConflict, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- m_bpButtonRightNewer = new wxBitmapButton( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- ffgSizer11->Add( m_bpButtonRightNewer, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ m_bpButtonRightNewer = new wxBitmapButton( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ ffgSizer11->Add( m_bpButtonRightNewer, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- m_bpButtonRightOnly = new wxBitmapButton( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- ffgSizer11->Add( m_bpButtonRightOnly, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ m_bpButtonRightOnly = new wxBitmapButton( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ ffgSizer11->Add( m_bpButtonRightOnly, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- bSizerSyncDirections->Add( ffgSizer11, 0, 0, 5 );
+ bSizerSyncDirections->Add( ffgSizer11, 0, 0, 5 );
- m_staticText120 = new wxStaticText( m_panelSyncSettings, wxID_ANY, _("Action"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText120->Wrap( -1 );
- bSizerSyncDirections->Add( m_staticText120, 0, wxALIGN_CENTER_HORIZONTAL|wxTOP, 5 );
+ m_staticText120 = new wxStaticText( m_panelSyncSettings, wxID_ANY, _("Action"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText120->Wrap( -1 );
+ bSizerSyncDirections->Add( m_staticText120, 0, wxALIGN_CENTER_HORIZONTAL|wxTOP, 5 );
- bSizerSyncDirHolder->Add( bSizerSyncDirections, 0, 0, 5 );
+ bSizerSyncDirHolder->Add( bSizerSyncDirections, 0, 0, 5 );
- bSizerDatabase = new wxBoxSizer( wxVERTICAL );
+ bSizerDatabase = new wxBoxSizer( wxVERTICAL );
- m_bitmapDatabase = new wxStaticBitmap( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), 0 );
- bSizerDatabase->Add( m_bitmapDatabase, 0, wxALIGN_CENTER_HORIZONTAL, 5 );
+ m_bitmapDatabase = new wxStaticBitmap( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ bSizerDatabase->Add( m_bitmapDatabase, 0, wxALIGN_CENTER_HORIZONTAL, 5 );
- bSizerDatabase->Add( 0, 3, 0, 0, 5 );
+ bSizerDatabase->Add( 0, 3, 0, 0, 5 );
- m_staticText145 = new wxStaticText( m_panelSyncSettings, wxID_ANY, _("sync.ffs_db"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText145->Wrap( -1 );
- m_staticText145->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_SWISS, wxFONTSTYLE_ITALIC, wxFONTWEIGHT_NORMAL, false, wxT("Arial") ) );
- m_staticText145->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
+ m_staticText145 = new wxStaticText( m_panelSyncSettings, wxID_ANY, _("sync.ffs_db"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText145->Wrap( -1 );
+ m_staticText145->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_SWISS, wxFONTSTYLE_ITALIC, wxFONTWEIGHT_NORMAL, false, wxT("Arial") ) );
+ m_staticText145->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
- bSizerDatabase->Add( m_staticText145, 0, wxALIGN_CENTER_HORIZONTAL, 5 );
+ bSizerDatabase->Add( m_staticText145, 0, wxALIGN_CENTER_HORIZONTAL, 5 );
- bSizerSyncDirHolder->Add( bSizerDatabase, 0, wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
+ bSizerSyncDirHolder->Add( bSizerDatabase, 0, wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
- m_staticTextSyncVarDescription = new wxStaticText( m_panelSyncSettings, wxID_ANY, _("dummy"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- m_staticTextSyncVarDescription->Wrap( -1 );
- m_staticTextSyncVarDescription->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
+ m_staticTextSyncVarDescription = new wxStaticText( m_panelSyncSettings, wxID_ANY, _("dummy"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ m_staticTextSyncVarDescription->Wrap( -1 );
+ m_staticTextSyncVarDescription->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
- bSizerSyncDirHolder->Add( m_staticTextSyncVarDescription, 0, wxALL|wxALIGN_CENTER_VERTICAL, 10 );
+ bSizerSyncDirHolder->Add( m_staticTextSyncVarDescription, 0, wxALL|wxALIGN_CENTER_VERTICAL, 10 );
- bSizer238->Add( bSizerSyncDirHolder, 0, wxTOP|wxBOTTOM|wxRIGHT, 10 );
+ bSizer238->Add( bSizerSyncDirHolder, 0, wxTOP|wxBOTTOM|wxRIGHT, 10 );
- bSizer238->Add( 0, 0, 1, wxEXPAND, 5 );
+ bSizer238->Add( 0, 0, 1, wxEXPAND, 5 );
- m_staticline431 = new wxStaticLine( m_panelSyncSettings, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer238->Add( m_staticline431, 0, wxEXPAND, 5 );
+ m_staticline431 = new wxStaticLine( m_panelSyncSettings, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer238->Add( m_staticline431, 0, wxEXPAND, 5 );
- wxBoxSizer* bSizer201;
- bSizer201 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer201;
+ bSizer201 = new wxBoxSizer( wxHORIZONTAL );
- m_staticline72 = new wxStaticLine( m_panelSyncSettings, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
- bSizer201->Add( m_staticline72, 0, wxEXPAND, 5 );
+ m_staticline72 = new wxStaticLine( m_panelSyncSettings, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
+ bSizer201->Add( m_staticline72, 0, wxEXPAND, 5 );
- wxBoxSizer* bSizer249;
- bSizer249 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer249;
+ bSizer249 = new wxBoxSizer( wxHORIZONTAL );
- m_checkBoxDetectMove = new wxCheckBox( m_panelSyncSettings, wxID_ANY, _("Detect moved files"), wxDefaultPosition, wxDefaultSize, 0 );
- m_checkBoxDetectMove->SetToolTip( _("- Not supported by all file systems\n- Requires and creates database files\n- Detection not available for first sync") );
+ m_checkBoxDetectMove = new wxCheckBox( m_panelSyncSettings, wxID_ANY, _("Detect moved files"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_checkBoxDetectMove->SetToolTip( _("- Not supported by all file systems\n- Requires and creates database files\n- Detection not available for first sync") );
- bSizer249->Add( m_checkBoxDetectMove, 0, wxALL|wxEXPAND, 5 );
+ bSizer249->Add( m_checkBoxDetectMove, 0, wxALL|wxEXPAND, 5 );
- m_hyperlink242 = new wxHyperlinkCtrl( m_panelSyncSettings, wxID_ANY, _("More information"), wxT("https://freefilesync.org/manual.php?topic=synchronization-settings"), wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE );
- m_hyperlink242->SetToolTip( _("https://freefilesync.org/manual.php?topic=synchronization-settings") );
+ m_hyperlink242 = new wxHyperlinkCtrl( m_panelSyncSettings, wxID_ANY, _("More information"), wxT("https://freefilesync.org/manual.php?topic=synchronization-settings"), wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE );
+ m_hyperlink242->SetToolTip( _("https://freefilesync.org/manual.php?topic=synchronization-settings") );
- bSizer249->Add( m_hyperlink242, 0, wxTOP|wxBOTTOM|wxRIGHT, 5 );
+ bSizer249->Add( m_hyperlink242, 0, wxTOP|wxBOTTOM|wxRIGHT, 5 );
- bSizer201->Add( bSizer249, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer201->Add( bSizer249, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
- bSizer238->Add( bSizer201, 0, 0, 5 );
+ bSizer238->Add( bSizer201, 0, 0, 5 );
- bSizer237->Add( bSizer238, 1, wxEXPAND, 5 );
+ bSizer237->Add( bSizer238, 1, wxEXPAND, 5 );
- bSizer232->Add( bSizer237, 0, wxEXPAND, 5 );
+ bSizer232->Add( bSizer237, 0, wxEXPAND, 5 );
- m_staticline54 = new wxStaticLine( m_panelSyncSettings, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer232->Add( m_staticline54, 0, wxEXPAND, 5 );
+ m_staticline54 = new wxStaticLine( m_panelSyncSettings, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer232->Add( m_staticline54, 0, wxEXPAND, 5 );
- bSizer2361 = new wxBoxSizer( wxHORIZONTAL );
+ bSizer2361 = new wxBoxSizer( wxHORIZONTAL );
- wxBoxSizer* bSizer202;
- bSizer202 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer202;
+ bSizer202 = new wxBoxSizer( wxVERTICAL );
- m_staticText87 = new wxStaticText( m_panelSyncSettings, wxID_ANY, _("Delete files:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText87->Wrap( -1 );
- bSizer202->Add( m_staticText87, 0, wxALL, 5 );
+ m_staticText87 = new wxStaticText( m_panelSyncSettings, wxID_ANY, _("Delete files:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText87->Wrap( -1 );
+ bSizer202->Add( m_staticText87, 0, wxALL, 5 );
- wxBoxSizer* bSizer234;
- bSizer234 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer234;
+ bSizer234 = new wxBoxSizer( wxVERTICAL );
- m_buttonRecycler = new zen::ToggleButton( m_panelSyncSettings, wxID_ANY, _("&Recycle bin"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
+ m_buttonRecycler = new zen::ToggleButton( m_panelSyncSettings, wxID_ANY, _("&Recycle bin"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
- m_buttonRecycler->SetDefault();
- m_buttonRecycler->SetToolTip( _("dummy") );
+ m_buttonRecycler->SetDefault();
+ m_buttonRecycler->SetToolTip( _("dummy") );
- bSizer234->Add( m_buttonRecycler, 0, wxEXPAND, 5 );
+ bSizer234->Add( m_buttonRecycler, 0, wxEXPAND, 5 );
- m_buttonPermanent = new zen::ToggleButton( m_panelSyncSettings, wxID_ANY, _("&Permanent"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
+ m_buttonPermanent = new zen::ToggleButton( m_panelSyncSettings, wxID_ANY, _("&Permanent"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
- m_buttonPermanent->SetDefault();
- m_buttonPermanent->SetToolTip( _("dummy") );
+ m_buttonPermanent->SetDefault();
+ m_buttonPermanent->SetToolTip( _("dummy") );
- bSizer234->Add( m_buttonPermanent, 0, wxEXPAND, 5 );
+ bSizer234->Add( m_buttonPermanent, 0, wxEXPAND, 5 );
- m_buttonVersioning = new zen::ToggleButton( m_panelSyncSettings, wxID_ANY, _("&Versioning"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
+ m_buttonVersioning = new zen::ToggleButton( m_panelSyncSettings, wxID_ANY, _("&Versioning"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
- m_buttonVersioning->SetDefault();
- m_buttonVersioning->SetToolTip( _("dummy") );
+ m_buttonVersioning->SetDefault();
+ m_buttonVersioning->SetToolTip( _("dummy") );
- bSizer234->Add( m_buttonVersioning, 0, wxEXPAND, 5 );
+ bSizer234->Add( m_buttonVersioning, 0, wxEXPAND, 5 );
- bSizer202->Add( bSizer234, 0, wxBOTTOM|wxRIGHT|wxLEFT, 5 );
+ bSizer202->Add( bSizer234, 0, wxBOTTOM|wxRIGHT|wxLEFT, 5 );
- bSizer2361->Add( bSizer202, 0, wxALL, 5 );
+ bSizer2361->Add( bSizer202, 0, wxALL, 5 );
- bSizerVersioningHolder = new wxBoxSizer( wxVERTICAL );
+ bSizerVersioningHolder = new wxBoxSizer( wxVERTICAL );
- bSizerVersioningHolder->Add( 0, 0, 1, wxEXPAND, 5 );
+ bSizerVersioningHolder->Add( 0, 0, 1, wxEXPAND, 5 );
- wxBoxSizer* bSizer2331;
- bSizer2331 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer2331;
+ bSizer2331 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapDeletionType = new wxStaticBitmap( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer2331->Add( m_bitmapDeletionType, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
+ m_bitmapDeletionType = new wxStaticBitmap( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer2331->Add( m_bitmapDeletionType, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
- m_staticTextDeletionTypeDescription = new wxStaticText( m_panelSyncSettings, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextDeletionTypeDescription->Wrap( -1 );
- m_staticTextDeletionTypeDescription->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
+ m_staticTextDeletionTypeDescription = new wxStaticText( m_panelSyncSettings, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextDeletionTypeDescription->Wrap( -1 );
+ m_staticTextDeletionTypeDescription->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
- bSizer2331->Add( m_staticTextDeletionTypeDescription, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
+ bSizer2331->Add( m_staticTextDeletionTypeDescription, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
- bSizerVersioningHolder->Add( bSizer2331, 0, wxALL|wxEXPAND, 5 );
+ bSizerVersioningHolder->Add( bSizer2331, 0, wxALL|wxEXPAND, 5 );
- m_panelVersioning = new wxPanel( m_panelSyncSettings, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panelVersioning->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ m_panelVersioning = new wxPanel( m_panelSyncSettings, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panelVersioning->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- wxBoxSizer* bSizer191;
- bSizer191 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer191;
+ bSizer191 = new wxBoxSizer( wxVERTICAL );
- bSizer191->Add( 0, 5, 0, 0, 5 );
+ bSizer191->Add( 0, 5, 0, 0, 5 );
- wxBoxSizer* bSizer252;
- bSizer252 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer252;
+ bSizer252 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapVersioning = new wxStaticBitmap( m_panelVersioning, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer252->Add( m_bitmapVersioning, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
+ m_bitmapVersioning = new wxStaticBitmap( m_panelVersioning, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer252->Add( m_bitmapVersioning, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
- wxBoxSizer* bSizer253;
- bSizer253 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer253;
+ bSizer253 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer254;
- bSizer254 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer254;
+ bSizer254 = new wxBoxSizer( wxHORIZONTAL );
- m_staticText155 = new wxStaticText( m_panelVersioning, wxID_ANY, _("Move files to a user-defined folder"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText155->Wrap( -1 );
- m_staticText155->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
+ m_staticText155 = new wxStaticText( m_panelVersioning, wxID_ANY, _("Move files to a user-defined folder"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText155->Wrap( -1 );
+ m_staticText155->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
- bSizer254->Add( m_staticText155, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
+ bSizer254->Add( m_staticText155, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
- bSizer254->Add( 0, 0, 1, wxEXPAND, 5 );
+ bSizer254->Add( 0, 0, 1, wxEXPAND, 5 );
- m_hyperlink243 = new wxHyperlinkCtrl( m_panelVersioning, wxID_ANY, _("Show examples"), wxT("https://freefilesync.org/manual.php?topic=versioning"), wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE );
- m_hyperlink243->SetToolTip( _("https://freefilesync.org/manual.php?topic=versioning") );
+ m_hyperlink243 = new wxHyperlinkCtrl( m_panelVersioning, wxID_ANY, _("Show examples"), wxT("https://freefilesync.org/manual.php?topic=versioning"), wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE );
+ m_hyperlink243->SetToolTip( _("https://freefilesync.org/manual.php?topic=versioning") );
- bSizer254->Add( m_hyperlink243, 0, wxLEFT|wxALIGN_BOTTOM, 5 );
+ bSizer254->Add( m_hyperlink243, 0, wxLEFT|wxALIGN_BOTTOM, 5 );
- bSizer253->Add( bSizer254, 0, wxEXPAND|wxBOTTOM, 5 );
+ bSizer253->Add( bSizer254, 0, wxEXPAND|wxBOTTOM, 5 );
- wxBoxSizer* bSizer156;
- bSizer156 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer156;
+ bSizer156 = new wxBoxSizer( wxHORIZONTAL );
- m_versioningFolderPath = new fff::FolderHistoryBox( m_panelVersioning, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 );
- bSizer156->Add( m_versioningFolderPath, 1, wxALIGN_CENTER_VERTICAL, 5 );
+ m_versioningFolderPath = new fff::FolderHistoryBox( m_panelVersioning, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 );
+ bSizer156->Add( m_versioningFolderPath, 1, wxALIGN_CENTER_VERTICAL, 5 );
- m_buttonSelectVersioningFolder = new wxButton( m_panelVersioning, wxID_ANY, _("Browse"), wxDefaultPosition, wxDefaultSize, 0 );
- m_buttonSelectVersioningFolder->SetToolTip( _("Select a folder") );
+ m_buttonSelectVersioningFolder = new wxButton( m_panelVersioning, wxID_ANY, _("Browse"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_buttonSelectVersioningFolder->SetToolTip( _("Select a folder") );
- bSizer156->Add( m_buttonSelectVersioningFolder, 0, wxEXPAND, 5 );
+ bSizer156->Add( m_buttonSelectVersioningFolder, 0, wxEXPAND, 5 );
- m_bpButtonSelectVersioningAltFolder = new wxBitmapButton( m_panelVersioning, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- m_bpButtonSelectVersioningAltFolder->SetToolTip( _("Access online storage") );
+ m_bpButtonSelectVersioningAltFolder = new wxBitmapButton( m_panelVersioning, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ m_bpButtonSelectVersioningAltFolder->SetToolTip( _("Access online storage") );
- bSizer156->Add( m_bpButtonSelectVersioningAltFolder, 0, wxEXPAND, 5 );
+ bSizer156->Add( m_bpButtonSelectVersioningAltFolder, 0, wxEXPAND, 5 );
- bSizer253->Add( bSizer156, 0, wxEXPAND, 5 );
+ bSizer253->Add( bSizer156, 0, wxEXPAND, 5 );
- bSizer252->Add( bSizer253, 1, wxRIGHT, 5 );
+ bSizer252->Add( bSizer253, 1, wxRIGHT, 5 );
- bSizer191->Add( bSizer252, 0, wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 5 );
+ bSizer191->Add( bSizer252, 0, wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 5 );
- wxBoxSizer* bSizer198;
- bSizer198 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer198;
+ bSizer198 = new wxBoxSizer( wxHORIZONTAL );
- wxBoxSizer* bSizer255;
- bSizer255 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer255;
+ bSizer255 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer256;
- bSizer256 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer256;
+ bSizer256 = new wxBoxSizer( wxHORIZONTAL );
- m_staticText93 = new wxStaticText( m_panelVersioning, wxID_ANY, _("Naming convention:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText93->Wrap( -1 );
- bSizer256->Add( m_staticText93, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
+ m_staticText93 = new wxStaticText( m_panelVersioning, wxID_ANY, _("Naming convention:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText93->Wrap( -1 );
+ bSizer256->Add( m_staticText93, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
- wxArrayString m_choiceVersioningStyleChoices;
- m_choiceVersioningStyle = new wxChoice( m_panelVersioning, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_choiceVersioningStyleChoices, 0 );
- m_choiceVersioningStyle->SetSelection( 0 );
- bSizer256->Add( m_choiceVersioningStyle, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ wxArrayString m_choiceVersioningStyleChoices;
+ m_choiceVersioningStyle = new wxChoice( m_panelVersioning, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_choiceVersioningStyleChoices, 0 );
+ m_choiceVersioningStyle->SetSelection( 0 );
+ bSizer256->Add( m_choiceVersioningStyle, 0, wxALIGN_CENTER_VERTICAL, 5 );
- bSizer255->Add( bSizer256, 0, wxALL, 5 );
+ bSizer255->Add( bSizer256, 0, wxALL, 5 );
- wxBoxSizer* bSizer257;
- bSizer257 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer257;
+ bSizer257 = new wxBoxSizer( wxHORIZONTAL );
- m_staticTextNamingCvtPart1 = new wxStaticText( m_panelVersioning, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextNamingCvtPart1->Wrap( -1 );
- m_staticTextNamingCvtPart1->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
+ m_staticTextNamingCvtPart1 = new wxStaticText( m_panelVersioning, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextNamingCvtPart1->Wrap( -1 );
+ m_staticTextNamingCvtPart1->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
- bSizer257->Add( m_staticTextNamingCvtPart1, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer257->Add( m_staticTextNamingCvtPart1, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_staticTextNamingCvtPart2Bold = new wxStaticText( m_panelVersioning, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextNamingCvtPart2Bold->Wrap( -1 );
- m_staticTextNamingCvtPart2Bold->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- m_staticTextNamingCvtPart2Bold->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
+ m_staticTextNamingCvtPart2Bold = new wxStaticText( m_panelVersioning, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextNamingCvtPart2Bold->Wrap( -1 );
+ m_staticTextNamingCvtPart2Bold->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_staticTextNamingCvtPart2Bold->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
- bSizer257->Add( m_staticTextNamingCvtPart2Bold, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer257->Add( m_staticTextNamingCvtPart2Bold, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_staticTextNamingCvtPart3 = new wxStaticText( m_panelVersioning, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextNamingCvtPart3->Wrap( -1 );
- m_staticTextNamingCvtPart3->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
+ m_staticTextNamingCvtPart3 = new wxStaticText( m_panelVersioning, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextNamingCvtPart3->Wrap( -1 );
+ m_staticTextNamingCvtPart3->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
- bSizer257->Add( m_staticTextNamingCvtPart3, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer257->Add( m_staticTextNamingCvtPart3, 0, wxALIGN_CENTER_VERTICAL, 5 );
- bSizer255->Add( bSizer257, 0, wxBOTTOM|wxRIGHT|wxLEFT, 5 );
+ bSizer255->Add( bSizer257, 0, wxBOTTOM|wxRIGHT|wxLEFT, 5 );
- bSizer198->Add( bSizer255, 0, wxALL, 5 );
+ bSizer198->Add( bSizer255, 0, wxALL, 5 );
- m_staticline69 = new wxStaticLine( m_panelVersioning, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
- bSizer198->Add( m_staticline69, 0, wxEXPAND, 5 );
+ m_staticline69 = new wxStaticLine( m_panelVersioning, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
+ bSizer198->Add( m_staticline69, 0, wxEXPAND, 5 );
- wxBoxSizer* bSizer258;
- bSizer258 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer258;
+ bSizer258 = new wxBoxSizer( wxVERTICAL );
- m_staticTextLimitVersions = new wxStaticText( m_panelVersioning, wxID_ANY, _("Limit file versions:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextLimitVersions->Wrap( -1 );
- bSizer258->Add( m_staticTextLimitVersions, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
+ m_staticTextLimitVersions = new wxStaticText( m_panelVersioning, wxID_ANY, _("Limit file versions:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextLimitVersions->Wrap( -1 );
+ bSizer258->Add( m_staticTextLimitVersions, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
- fgSizer15 = new wxFlexGridSizer( 0, 3, 5, 10 );
- fgSizer15->SetFlexibleDirection( wxBOTH );
- fgSizer15->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
+ fgSizer15 = new wxFlexGridSizer( 0, 3, 5, 10 );
+ fgSizer15->SetFlexibleDirection( wxBOTH );
+ fgSizer15->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
- m_checkBoxVersionMaxDays = new wxCheckBox( m_panelVersioning, wxID_ANY, _("Last x days:"), wxDefaultPosition, wxDefaultSize, 0 );
- fgSizer15->Add( m_checkBoxVersionMaxDays, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_checkBoxVersionMaxDays = new wxCheckBox( m_panelVersioning, wxID_ANY, _("Last x days:"), wxDefaultPosition, wxDefaultSize, 0 );
+ fgSizer15->Add( m_checkBoxVersionMaxDays, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_checkBoxVersionCountMin = new wxCheckBox( m_panelVersioning, wxID_ANY, _("Minimum:"), wxDefaultPosition, wxDefaultSize, 0 );
- fgSizer15->Add( m_checkBoxVersionCountMin, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_checkBoxVersionCountMin = new wxCheckBox( m_panelVersioning, wxID_ANY, _("Minimum:"), wxDefaultPosition, wxDefaultSize, 0 );
+ fgSizer15->Add( m_checkBoxVersionCountMin, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_checkBoxVersionCountMax = new wxCheckBox( m_panelVersioning, wxID_ANY, _("Maximum:"), wxDefaultPosition, wxDefaultSize, 0 );
- fgSizer15->Add( m_checkBoxVersionCountMax, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_checkBoxVersionCountMax = new wxCheckBox( m_panelVersioning, wxID_ANY, _("Maximum:"), wxDefaultPosition, wxDefaultSize, 0 );
+ fgSizer15->Add( m_checkBoxVersionCountMax, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_spinCtrlVersionMaxDays = new wxSpinCtrl( m_panelVersioning, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( -1, -1 ), wxSP_ARROW_KEYS, 1, 2000000000, 1 );
- fgSizer15->Add( m_spinCtrlVersionMaxDays, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_spinCtrlVersionMaxDays = new wxSpinCtrl( m_panelVersioning, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( -1,-1 ), wxSP_ARROW_KEYS, 1, 2000000000, 1 );
+ fgSizer15->Add( m_spinCtrlVersionMaxDays, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_spinCtrlVersionCountMin = new wxSpinCtrl( m_panelVersioning, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( -1, -1 ), wxSP_ARROW_KEYS, 1, 2000000000, 1 );
- fgSizer15->Add( m_spinCtrlVersionCountMin, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_spinCtrlVersionCountMin = new wxSpinCtrl( m_panelVersioning, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( -1,-1 ), wxSP_ARROW_KEYS, 1, 2000000000, 1 );
+ fgSizer15->Add( m_spinCtrlVersionCountMin, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_spinCtrlVersionCountMax = new wxSpinCtrl( m_panelVersioning, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 1, 2000000000, 1 );
- fgSizer15->Add( m_spinCtrlVersionCountMax, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_spinCtrlVersionCountMax = new wxSpinCtrl( m_panelVersioning, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 1, 2000000000, 1 );
+ fgSizer15->Add( m_spinCtrlVersionCountMax, 0, wxALIGN_CENTER_VERTICAL, 5 );
- bSizer258->Add( fgSizer15, 0, wxALL, 5 );
+ bSizer258->Add( fgSizer15, 0, wxALL, 5 );
- bSizer198->Add( bSizer258, 0, wxALL, 5 );
+ bSizer198->Add( bSizer258, 0, wxALL, 5 );
- bSizer191->Add( bSizer198, 0, wxEXPAND, 5 );
+ bSizer191->Add( bSizer198, 0, wxEXPAND, 5 );
- m_panelVersioning->SetSizer( bSizer191 );
- m_panelVersioning->Layout();
- bSizer191->Fit( m_panelVersioning );
- bSizerVersioningHolder->Add( m_panelVersioning, 0, wxEXPAND, 5 );
+ m_panelVersioning->SetSizer( bSizer191 );
+ m_panelVersioning->Layout();
+ bSizer191->Fit( m_panelVersioning );
+ bSizerVersioningHolder->Add( m_panelVersioning, 0, wxEXPAND, 5 );
- bSizerVersioningHolder->Add( 0, 0, 1, wxEXPAND, 5 );
+ bSizerVersioningHolder->Add( 0, 0, 1, wxEXPAND, 5 );
- bSizer2361->Add( bSizerVersioningHolder, 1, wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer2361->Add( bSizerVersioningHolder, 1, wxALIGN_CENTER_VERTICAL, 5 );
- bSizer232->Add( bSizer2361, 0, wxEXPAND, 5 );
+ bSizer232->Add( bSizer2361, 0, wxEXPAND, 5 );
- m_staticline582 = new wxStaticLine( m_panelSyncSettings, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer232->Add( m_staticline582, 0, wxEXPAND, 5 );
+ m_staticline582 = new wxStaticLine( m_panelSyncSettings, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer232->Add( m_staticline582, 0, wxEXPAND, 5 );
- bSizerSyncMisc = new wxBoxSizer( wxHORIZONTAL );
+ bSizerSyncMisc = new wxBoxSizer( wxHORIZONTAL );
- wxBoxSizer* bSizer292;
- bSizer292 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer292;
+ bSizer292 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer287;
- bSizer287 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer287;
+ bSizer287 = new wxBoxSizer( wxHORIZONTAL );
- wxBoxSizer* bSizer290;
- bSizer290 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer290;
+ bSizer290 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer291;
- bSizer291 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer291;
+ bSizer291 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapEmail = new wxStaticBitmap( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer291->Add( m_bitmapEmail, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_bitmapEmail = new wxStaticBitmap( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer291->Add( m_bitmapEmail, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_checkBoxSendEmail = new wxCheckBox( m_panelSyncSettings, wxID_ANY, _("Send email notification:"), wxDefaultPosition, wxDefaultSize, 0 );
- bSizer291->Add( m_checkBoxSendEmail, 0, wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
+ m_checkBoxSendEmail = new wxCheckBox( m_panelSyncSettings, wxID_ANY, _("Send email notification:"), wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer291->Add( m_checkBoxSendEmail, 0, wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
- bSizer290->Add( bSizer291, 0, 0, 5 );
+ bSizer290->Add( bSizer291, 0, 0, 5 );
- m_comboBoxEmail = new fff::CommandBox( m_panelSyncSettings, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 );
- bSizer290->Add( m_comboBoxEmail, 0, wxEXPAND|wxTOP, 5 );
+ m_comboBoxEmail = new fff::CommandBox( m_panelSyncSettings, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 );
+ bSizer290->Add( m_comboBoxEmail, 0, wxEXPAND|wxTOP, 5 );
- bSizer287->Add( bSizer290, 1, wxRIGHT, 5 );
+ bSizer287->Add( bSizer290, 1, wxRIGHT, 5 );
- wxBoxSizer* bSizer289;
- bSizer289 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer289;
+ bSizer289 = new wxBoxSizer( wxVERTICAL );
- m_bpButtonEmailAlways = new wxBitmapButton( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|0 );
- bSizer289->Add( m_bpButtonEmailAlways, 0, 0, 5 );
+ m_bpButtonEmailAlways = new wxBitmapButton( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|0 );
+ bSizer289->Add( m_bpButtonEmailAlways, 0, 0, 5 );
- m_bpButtonEmailErrorWarning = new wxBitmapButton( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|0 );
- bSizer289->Add( m_bpButtonEmailErrorWarning, 0, 0, 5 );
+ m_bpButtonEmailErrorWarning = new wxBitmapButton( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|0 );
+ bSizer289->Add( m_bpButtonEmailErrorWarning, 0, 0, 5 );
- m_bpButtonEmailErrorOnly = new wxBitmapButton( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|0 );
- bSizer289->Add( m_bpButtonEmailErrorOnly, 0, 0, 5 );
+ m_bpButtonEmailErrorOnly = new wxBitmapButton( m_panelSyncSettings, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|0 );
+ bSizer289->Add( m_bpButtonEmailErrorOnly, 0, 0, 5 );
- bSizer287->Add( bSizer289, 0, wxLEFT, 5 );
+ bSizer287->Add( bSizer289, 0, wxLEFT, 5 );
- bSizer292->Add( bSizer287, 0, wxEXPAND, 5 );
+ bSizer292->Add( bSizer287, 0, wxEXPAND, 5 );
- m_hyperlinkPerfDeRequired2 = new wxHyperlinkCtrl( m_panelSyncSettings, wxID_ANY, _("Requires FreeFileSync Donation Edition"), wxT("https://freefilesync.org/faq.php#donation-edition"), wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE );
- m_hyperlinkPerfDeRequired2->SetToolTip( _("https://freefilesync.org/faq.php#donation-edition") );
+ m_hyperlinkPerfDeRequired2 = new wxHyperlinkCtrl( m_panelSyncSettings, wxID_ANY, _("Requires FreeFileSync Donation Edition"), wxT("https://freefilesync.org/faq.php#donation-edition"), wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE );
+ m_hyperlinkPerfDeRequired2->SetToolTip( _("https://freefilesync.org/faq.php#donation-edition") );
- bSizer292->Add( m_hyperlinkPerfDeRequired2, 0, wxALL, 5 );
+ bSizer292->Add( m_hyperlinkPerfDeRequired2, 0, wxALL, 5 );
- bSizerSyncMisc->Add( bSizer292, 0, wxEXPAND|wxALL, 10 );
+ bSizerSyncMisc->Add( bSizer292, 0, wxEXPAND|wxALL, 10 );
- m_staticline57 = new wxStaticLine( m_panelSyncSettings, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
- bSizerSyncMisc->Add( m_staticline57, 0, wxEXPAND, 5 );
+ m_staticline57 = new wxStaticLine( m_panelSyncSettings, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
+ bSizerSyncMisc->Add( m_staticline57, 0, wxEXPAND, 5 );
- wxBoxSizer* bSizer293;
- bSizer293 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer293;
+ bSizer293 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer2372;
- bSizer2372 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer2372;
+ bSizer2372 = new wxBoxSizer( wxHORIZONTAL );
- m_panelLogfile = new wxPanel( m_panelSyncSettings, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panelLogfile->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ m_panelLogfile = new wxPanel( m_panelSyncSettings, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panelLogfile->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- wxBoxSizer* bSizer1912;
- bSizer1912 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer1912;
+ bSizer1912 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer279;
- bSizer279 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer279;
+ bSizer279 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapLogFile = new wxStaticBitmap( m_panelLogfile, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer279->Add( m_bitmapLogFile, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_bitmapLogFile = new wxStaticBitmap( m_panelLogfile, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer279->Add( m_bitmapLogFile, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_checkBoxOverrideLogPath = new wxCheckBox( m_panelLogfile, wxID_ANY, _("&Override default log path:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_checkBoxOverrideLogPath->SetValue(true);
- bSizer279->Add( m_checkBoxOverrideLogPath, 1, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
+ m_checkBoxOverrideLogPath = new wxCheckBox( m_panelLogfile, wxID_ANY, _("&Override default log path:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_checkBoxOverrideLogPath->SetValue(true);
+ bSizer279->Add( m_checkBoxOverrideLogPath, 1, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
- m_buttonSelectLogFolder = new wxButton( m_panelLogfile, wxID_ANY, _("Browse"), wxDefaultPosition, wxDefaultSize, 0 );
- m_buttonSelectLogFolder->SetToolTip( _("Select a folder") );
+ m_buttonSelectLogFolder = new wxButton( m_panelLogfile, wxID_ANY, _("Browse"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_buttonSelectLogFolder->SetToolTip( _("Select a folder") );
- bSizer279->Add( m_buttonSelectLogFolder, 0, wxEXPAND, 5 );
+ bSizer279->Add( m_buttonSelectLogFolder, 0, wxEXPAND, 5 );
- m_bpButtonSelectAltLogFolder = new wxBitmapButton( m_panelLogfile, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- m_bpButtonSelectAltLogFolder->SetToolTip( _("Access online storage") );
+ m_bpButtonSelectAltLogFolder = new wxBitmapButton( m_panelLogfile, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ m_bpButtonSelectAltLogFolder->SetToolTip( _("Access online storage") );
- bSizer279->Add( m_bpButtonSelectAltLogFolder, 0, wxEXPAND, 5 );
+ bSizer279->Add( m_bpButtonSelectAltLogFolder, 0, wxEXPAND, 5 );
- bSizer1912->Add( bSizer279, 0, wxEXPAND, 5 );
+ bSizer1912->Add( bSizer279, 0, wxEXPAND, 5 );
- m_logFolderPath = new fff::FolderHistoryBox( m_panelLogfile, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 );
- bSizer1912->Add( m_logFolderPath, 0, wxEXPAND|wxTOP, 5 );
+ m_logFolderPath = new fff::FolderHistoryBox( m_panelLogfile, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 );
+ bSizer1912->Add( m_logFolderPath, 0, wxEXPAND|wxTOP, 5 );
- m_panelLogfile->SetSizer( bSizer1912 );
- m_panelLogfile->Layout();
- bSizer1912->Fit( m_panelLogfile );
- bSizer2372->Add( m_panelLogfile, 1, 0, 5 );
+ m_panelLogfile->SetSizer( bSizer1912 );
+ m_panelLogfile->Layout();
+ bSizer1912->Fit( m_panelLogfile );
+ bSizer2372->Add( m_panelLogfile, 1, 0, 5 );
- bSizer293->Add( bSizer2372, 0, wxALL|wxEXPAND, 10 );
+ bSizer293->Add( bSizer2372, 0, wxALL|wxEXPAND, 10 );
- m_staticline80 = new wxStaticLine( m_panelSyncSettings, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer293->Add( m_staticline80, 0, wxEXPAND, 5 );
+ m_staticline80 = new wxStaticLine( m_panelSyncSettings, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer293->Add( m_staticline80, 0, wxEXPAND, 5 );
- wxBoxSizer* bSizer247;
- bSizer247 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer247;
+ bSizer247 = new wxBoxSizer( wxHORIZONTAL );
- m_staticTextPostSync = new wxStaticText( m_panelSyncSettings, wxID_ANY, _("Run a command:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextPostSync->Wrap( -1 );
- bSizer247->Add( m_staticTextPostSync, 0, wxRIGHT|wxALIGN_CENTER_VERTICAL, 5 );
+ m_staticTextPostSync = new wxStaticText( m_panelSyncSettings, wxID_ANY, _("Run a command:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextPostSync->Wrap( -1 );
+ bSizer247->Add( m_staticTextPostSync, 0, wxRIGHT|wxALIGN_CENTER_VERTICAL, 5 );
- wxArrayString m_choicePostSyncConditionChoices;
- m_choicePostSyncCondition = new wxChoice( m_panelSyncSettings, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_choicePostSyncConditionChoices, 0 );
- m_choicePostSyncCondition->SetSelection( 0 );
- bSizer247->Add( m_choicePostSyncCondition, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ wxArrayString m_choicePostSyncConditionChoices;
+ m_choicePostSyncCondition = new wxChoice( m_panelSyncSettings, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_choicePostSyncConditionChoices, 0 );
+ m_choicePostSyncCondition->SetSelection( 0 );
+ bSizer247->Add( m_choicePostSyncCondition, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_comboBoxPostSyncCommand = new fff::CommandBox( m_panelSyncSettings, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 );
- bSizer247->Add( m_comboBoxPostSyncCommand, 1, wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
+ m_comboBoxPostSyncCommand = new fff::CommandBox( m_panelSyncSettings, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 );
+ bSizer247->Add( m_comboBoxPostSyncCommand, 1, wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
- bSizer293->Add( bSizer247, 0, wxALL|wxEXPAND, 10 );
+ bSizer293->Add( bSizer247, 0, wxALL|wxEXPAND, 10 );
- bSizerSyncMisc->Add( bSizer293, 1, 0, 5 );
+ bSizerSyncMisc->Add( bSizer293, 1, 0, 5 );
- bSizer232->Add( bSizerSyncMisc, 1, wxEXPAND, 5 );
+ bSizer232->Add( bSizerSyncMisc, 1, wxEXPAND, 5 );
- m_panelSyncSettings->SetSizer( bSizer232 );
- m_panelSyncSettings->Layout();
- bSizer232->Fit( m_panelSyncSettings );
- bSizer276->Add( m_panelSyncSettings, 1, wxEXPAND, 5 );
+ m_panelSyncSettings->SetSizer( bSizer232 );
+ m_panelSyncSettings->Layout();
+ bSizer232->Fit( m_panelSyncSettings );
+ bSizer276->Add( m_panelSyncSettings, 1, wxEXPAND, 5 );
- m_panelSyncSettingsTab->SetSizer( bSizer276 );
- m_panelSyncSettingsTab->Layout();
- bSizer276->Fit( m_panelSyncSettingsTab );
- m_notebook->AddPage( m_panelSyncSettingsTab, _("dummy"), false );
+ m_panelSyncSettingsTab->SetSizer( bSizer276 );
+ m_panelSyncSettingsTab->Layout();
+ bSizer276->Fit( m_panelSyncSettingsTab );
+ m_notebook->AddPage( m_panelSyncSettingsTab, _("dummy"), false );
- bSizer190->Add( m_notebook, 1, wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 5 );
+ bSizer190->Add( m_notebook, 1, wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 5 );
- bSizer7->Add( bSizer190, 1, wxEXPAND, 5 );
+ bSizer7->Add( bSizer190, 1, wxEXPAND, 5 );
- bSizerStdButtons = new wxBoxSizer( wxHORIZONTAL );
+ bSizerStdButtons = new wxBoxSizer( wxHORIZONTAL );
- m_buttonOkay = new wxButton( this, wxID_OK, _("OK"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
+ m_buttonOkay = new wxButton( this, wxID_OK, _("OK"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
- m_buttonOkay->SetDefault();
- m_buttonOkay->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_buttonOkay->SetDefault();
+ m_buttonOkay->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- bSizerStdButtons->Add( m_buttonOkay, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
+ bSizerStdButtons->Add( m_buttonOkay, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
- m_buttonCancel = new wxButton( this, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- bSizerStdButtons->Add( m_buttonCancel, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
+ m_buttonCancel = new wxButton( this, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ bSizerStdButtons->Add( m_buttonCancel, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
- bSizer7->Add( bSizerStdButtons, 0, wxALIGN_RIGHT, 5 );
+ bSizer7->Add( bSizerStdButtons, 0, wxALIGN_RIGHT, 5 );
- this->SetSizer( bSizer7 );
- this->Layout();
- bSizer7->Fit( this );
+ this->SetSizer( bSizer7 );
+ this->Layout();
+ bSizer7->Fit( this );
- this->Centre( wxBOTH );
+ this->Centre( wxBOTH );
- // Connect Events
- this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( ConfigDlgGenerated::onClose ) );
- m_listBoxFolderPair->Connect( wxEVT_KEY_DOWN, wxKeyEventHandler( ConfigDlgGenerated::onListBoxKeyEvent ), NULL, this );
- m_listBoxFolderPair->Connect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( ConfigDlgGenerated::onSelectFolderPair ), NULL, this );
- m_checkBoxUseLocalCmpOptions->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onToggleLocalCompSettings ), NULL, this );
- m_buttonByTimeSize->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onCompByTimeSize ), NULL, this );
- m_buttonByTimeSize->Connect( wxEVT_LEFT_DCLICK, wxMouseEventHandler( ConfigDlgGenerated::onCompByTimeSizeDouble ), NULL, this );
- m_buttonByContent->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onCompByContent ), NULL, this );
- m_buttonByContent->Connect( wxEVT_LEFT_DCLICK, wxMouseEventHandler( ConfigDlgGenerated::onCompByContentDouble ), NULL, this );
- m_buttonBySize->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onCompBySize ), NULL, this );
- m_buttonBySize->Connect( wxEVT_LEFT_DCLICK, wxMouseEventHandler( ConfigDlgGenerated::onCompBySizeDouble ), NULL, this );
- m_checkBoxSymlinksInclude->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onChangeCompOption ), NULL, this );
- m_checkBoxIgnoreErrors->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onToggleIgnoreErrors ), NULL, this );
- m_checkBoxAutoRetry->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onToggleAutoRetry ), NULL, this );
- m_textCtrlInclude->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( ConfigDlgGenerated::onChangeFilterOption ), NULL, this );
- m_textCtrlExclude->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( ConfigDlgGenerated::onChangeFilterOption ), NULL, this );
- m_choiceUnitMinSize->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( ConfigDlgGenerated::onChangeFilterOption ), NULL, this );
- m_choiceUnitMaxSize->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( ConfigDlgGenerated::onChangeFilterOption ), NULL, this );
- m_choiceUnitTimespan->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( ConfigDlgGenerated::onChangeFilterOption ), NULL, this );
- m_buttonDefault->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onFilterDefault ), NULL, this );
- m_buttonDefault->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( ConfigDlgGenerated::onFilterDefaultContextMouse ), NULL, this );
- m_bpButtonDefaultContext->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onFilterDefaultContext ), NULL, this );
- m_bpButtonDefaultContext->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( ConfigDlgGenerated::onFilterDefaultContextMouse ), NULL, this );
- m_buttonClear->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onFilterClear ), NULL, this );
- m_checkBoxUseLocalSyncOptions->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onToggleLocalSyncSettings ), NULL, this );
- m_buttonTwoWay->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onSyncTwoWay ), NULL, this );
- m_buttonTwoWay->Connect( wxEVT_LEFT_DCLICK, wxMouseEventHandler( ConfigDlgGenerated::onSyncTwoWayDouble ), NULL, this );
- m_buttonMirror->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onSyncMirror ), NULL, this );
- m_buttonMirror->Connect( wxEVT_LEFT_DCLICK, wxMouseEventHandler( ConfigDlgGenerated::onSyncMirrorDouble ), NULL, this );
- m_buttonUpdate->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onSyncUpdate ), NULL, this );
- m_buttonUpdate->Connect( wxEVT_LEFT_DCLICK, wxMouseEventHandler( ConfigDlgGenerated::onSyncUpdateDouble ), NULL, this );
- m_buttonCustom->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onSyncCustom ), NULL, this );
- m_buttonCustom->Connect( wxEVT_LEFT_DCLICK, wxMouseEventHandler( ConfigDlgGenerated::onSyncCustomDouble ), NULL, this );
- m_bpButtonLeftOnly->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onExLeftSideOnly ), NULL, this );
- m_bpButtonLeftNewer->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onLeftNewer ), NULL, this );
- m_bpButtonDifferent->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onDifferent ), NULL, this );
- m_bpButtonConflict->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onConflict ), NULL, this );
- m_bpButtonRightNewer->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onRightNewer ), NULL, this );
- m_bpButtonRightOnly->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onExRightSideOnly ), NULL, this );
- m_checkBoxDetectMove->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onToggleDetectMovedFiles ), NULL, this );
- m_buttonRecycler->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onDeletionRecycler ), NULL, this );
- m_buttonPermanent->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onDeletionPermanent ), NULL, this );
- m_buttonVersioning->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onDeletionVersioning ), NULL, this );
- m_choiceVersioningStyle->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( ConfigDlgGenerated::onChanegVersioningStyle ), NULL, this );
- m_checkBoxVersionMaxDays->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onToggleVersioningLimit ), NULL, this );
- m_checkBoxVersionCountMin->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onToggleVersioningLimit ), NULL, this );
- m_checkBoxVersionCountMax->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onToggleVersioningLimit ), NULL, this );
- m_checkBoxSendEmail->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onToggleMiscEmail ), NULL, this );
- m_bpButtonEmailAlways->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onEmailAlways ), NULL, this );
- m_bpButtonEmailErrorWarning->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onEmailErrorWarning ), NULL, this );
- m_bpButtonEmailErrorOnly->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onEmailErrorOnly ), NULL, this );
- m_checkBoxOverrideLogPath->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onToggleMiscOption ), NULL, this );
- m_buttonOkay->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onOkay ), NULL, this );
- m_buttonCancel->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onCancel ), NULL, this );
+ // Connect Events
+ this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( ConfigDlgGenerated::onClose ) );
+ m_listBoxFolderPair->Connect( wxEVT_KEY_DOWN, wxKeyEventHandler( ConfigDlgGenerated::onListBoxKeyEvent ), NULL, this );
+ m_listBoxFolderPair->Connect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( ConfigDlgGenerated::onSelectFolderPair ), NULL, this );
+ m_checkBoxUseLocalCmpOptions->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onToggleLocalCompSettings ), NULL, this );
+ m_buttonByTimeSize->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onCompByTimeSize ), NULL, this );
+ m_buttonByTimeSize->Connect( wxEVT_LEFT_DCLICK, wxMouseEventHandler( ConfigDlgGenerated::onCompByTimeSizeDouble ), NULL, this );
+ m_buttonByContent->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onCompByContent ), NULL, this );
+ m_buttonByContent->Connect( wxEVT_LEFT_DCLICK, wxMouseEventHandler( ConfigDlgGenerated::onCompByContentDouble ), NULL, this );
+ m_buttonBySize->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onCompBySize ), NULL, this );
+ m_buttonBySize->Connect( wxEVT_LEFT_DCLICK, wxMouseEventHandler( ConfigDlgGenerated::onCompBySizeDouble ), NULL, this );
+ m_checkBoxSymlinksInclude->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onChangeCompOption ), NULL, this );
+ m_checkBoxIgnoreErrors->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onToggleIgnoreErrors ), NULL, this );
+ m_checkBoxAutoRetry->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onToggleAutoRetry ), NULL, this );
+ m_textCtrlInclude->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( ConfigDlgGenerated::onChangeFilterOption ), NULL, this );
+ m_textCtrlExclude->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( ConfigDlgGenerated::onChangeFilterOption ), NULL, this );
+ m_choiceUnitMinSize->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( ConfigDlgGenerated::onChangeFilterOption ), NULL, this );
+ m_choiceUnitMaxSize->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( ConfigDlgGenerated::onChangeFilterOption ), NULL, this );
+ m_choiceUnitTimespan->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( ConfigDlgGenerated::onChangeFilterOption ), NULL, this );
+ m_buttonDefault->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onFilterDefault ), NULL, this );
+ m_buttonDefault->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( ConfigDlgGenerated::onFilterDefaultContextMouse ), NULL, this );
+ m_bpButtonDefaultContext->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onFilterDefaultContext ), NULL, this );
+ m_bpButtonDefaultContext->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( ConfigDlgGenerated::onFilterDefaultContextMouse ), NULL, this );
+ m_buttonClear->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onFilterClear ), NULL, this );
+ m_checkBoxUseLocalSyncOptions->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onToggleLocalSyncSettings ), NULL, this );
+ m_buttonTwoWay->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onSyncTwoWay ), NULL, this );
+ m_buttonTwoWay->Connect( wxEVT_LEFT_DCLICK, wxMouseEventHandler( ConfigDlgGenerated::onSyncTwoWayDouble ), NULL, this );
+ m_buttonMirror->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onSyncMirror ), NULL, this );
+ m_buttonMirror->Connect( wxEVT_LEFT_DCLICK, wxMouseEventHandler( ConfigDlgGenerated::onSyncMirrorDouble ), NULL, this );
+ m_buttonUpdate->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onSyncUpdate ), NULL, this );
+ m_buttonUpdate->Connect( wxEVT_LEFT_DCLICK, wxMouseEventHandler( ConfigDlgGenerated::onSyncUpdateDouble ), NULL, this );
+ m_buttonCustom->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onSyncCustom ), NULL, this );
+ m_buttonCustom->Connect( wxEVT_LEFT_DCLICK, wxMouseEventHandler( ConfigDlgGenerated::onSyncCustomDouble ), NULL, this );
+ m_bpButtonLeftOnly->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onExLeftSideOnly ), NULL, this );
+ m_bpButtonLeftNewer->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onLeftNewer ), NULL, this );
+ m_bpButtonDifferent->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onDifferent ), NULL, this );
+ m_bpButtonConflict->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onConflict ), NULL, this );
+ m_bpButtonRightNewer->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onRightNewer ), NULL, this );
+ m_bpButtonRightOnly->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onExRightSideOnly ), NULL, this );
+ m_checkBoxDetectMove->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onToggleDetectMovedFiles ), NULL, this );
+ m_buttonRecycler->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onDeletionRecycler ), NULL, this );
+ m_buttonPermanent->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onDeletionPermanent ), NULL, this );
+ m_buttonVersioning->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onDeletionVersioning ), NULL, this );
+ m_choiceVersioningStyle->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( ConfigDlgGenerated::onChanegVersioningStyle ), NULL, this );
+ m_checkBoxVersionMaxDays->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onToggleVersioningLimit ), NULL, this );
+ m_checkBoxVersionCountMin->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onToggleVersioningLimit ), NULL, this );
+ m_checkBoxVersionCountMax->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onToggleVersioningLimit ), NULL, this );
+ m_checkBoxSendEmail->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onToggleMiscEmail ), NULL, this );
+ m_bpButtonEmailAlways->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onEmailAlways ), NULL, this );
+ m_bpButtonEmailErrorWarning->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onEmailErrorWarning ), NULL, this );
+ m_bpButtonEmailErrorOnly->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onEmailErrorOnly ), NULL, this );
+ m_checkBoxOverrideLogPath->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onToggleMiscOption ), NULL, this );
+ m_buttonOkay->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onOkay ), NULL, this );
+ m_buttonCancel->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ConfigDlgGenerated::onCancel ), NULL, this );
}
ConfigDlgGenerated::~ConfigDlgGenerated()
@@ -2567,515 +2567,537 @@ ConfigDlgGenerated::~ConfigDlgGenerated()
CloudSetupDlgGenerated::CloudSetupDlgGenerated( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style )
{
- this->SetSizeHints( wxDefaultSize, wxDefaultSize );
- this->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
+ this->SetSizeHints( wxDefaultSize, wxDefaultSize );
+ this->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
- wxBoxSizer* bSizer134;
- bSizer134 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer134;
+ bSizer134 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer72;
- bSizer72 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer72;
+ bSizer72 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapCloud = new wxStaticBitmap( this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer72->Add( m_bitmapCloud, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 10 );
+ m_bitmapCloud = new wxStaticBitmap( this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer72->Add( m_bitmapCloud, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 10 );
- wxBoxSizer* bSizer272;
- bSizer272 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer272;
+ bSizer272 = new wxBoxSizer( wxVERTICAL );
- m_staticText136 = new wxStaticText( this, wxID_ANY, _("Connection type:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText136->Wrap( -1 );
- bSizer272->Add( m_staticText136, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
+ m_staticText136 = new wxStaticText( this, wxID_ANY, _("Connection type:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText136->Wrap( -1 );
+ bSizer272->Add( m_staticText136, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
- wxBoxSizer* bSizer231;
- bSizer231 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer231;
+ bSizer231 = new wxBoxSizer( wxHORIZONTAL );
- m_toggleBtnGdrive = new wxToggleButton( this, wxID_ANY, _("Google Drive"), wxDefaultPosition, wxDefaultSize, 0 );
- m_toggleBtnGdrive->SetValue( true );
- m_toggleBtnGdrive->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_toggleBtnGdrive = new wxToggleButton( this, wxID_ANY, _("Google Drive"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_toggleBtnGdrive->SetValue( true );
+ m_toggleBtnGdrive->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- bSizer231->Add( m_toggleBtnGdrive, 0, wxTOP|wxBOTTOM|wxLEFT|wxEXPAND, 5 );
+ bSizer231->Add( m_toggleBtnGdrive, 0, wxTOP|wxBOTTOM|wxLEFT|wxEXPAND, 5 );
- m_toggleBtnSftp = new wxToggleButton( this, wxID_ANY, _("SFTP"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- m_toggleBtnSftp->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_toggleBtnSftp = new wxToggleButton( this, wxID_ANY, _("SFTP"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ m_toggleBtnSftp->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- bSizer231->Add( m_toggleBtnSftp, 0, wxTOP|wxBOTTOM|wxLEFT|wxEXPAND, 5 );
+ bSizer231->Add( m_toggleBtnSftp, 0, wxTOP|wxBOTTOM|wxLEFT|wxEXPAND, 5 );
- m_toggleBtnFtp = new wxToggleButton( this, wxID_ANY, _("FTP"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- m_toggleBtnFtp->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_toggleBtnFtp = new wxToggleButton( this, wxID_ANY, _("FTP"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ m_toggleBtnFtp->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- bSizer231->Add( m_toggleBtnFtp, 0, wxALL|wxEXPAND, 5 );
+ bSizer231->Add( m_toggleBtnFtp, 0, wxALL|wxEXPAND, 5 );
- bSizer272->Add( bSizer231, 0, 0, 5 );
+ bSizer272->Add( bSizer231, 0, 0, 5 );
- bSizer72->Add( bSizer272, 0, wxALL, 5 );
+ bSizer72->Add( bSizer272, 0, wxALL, 5 );
- bSizer134->Add( bSizer72, 0, wxEXPAND, 5 );
+ bSizer134->Add( bSizer72, 0, wxEXPAND, 5 );
- m_staticline371 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxSize( -1, -1 ), wxLI_HORIZONTAL );
- bSizer134->Add( m_staticline371, 0, wxEXPAND, 5 );
+ m_staticline371 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxSize( -1,-1 ), wxLI_HORIZONTAL );
+ bSizer134->Add( m_staticline371, 0, wxEXPAND, 5 );
- m_panel41 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panel41->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ m_panel41 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panel41->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- wxBoxSizer* bSizer185;
- bSizer185 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer185;
+ bSizer185 = new wxBoxSizer( wxVERTICAL );
- bSizerGdrive = new wxBoxSizer( wxVERTICAL );
+ bSizerGdrive = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer284;
- bSizer284 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer284;
+ bSizer284 = new wxBoxSizer( wxHORIZONTAL );
- wxBoxSizer* bSizer307;
- bSizer307 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer307;
+ bSizer307 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer306;
- bSizer306 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer306;
+ bSizer306 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapGdriveUser = new wxStaticBitmap( m_panel41, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer306->Add( m_bitmapGdriveUser, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
+ m_bitmapGdriveUser = new wxStaticBitmap( m_panel41, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer306->Add( m_bitmapGdriveUser, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
- m_staticText166 = new wxStaticText( m_panel41, wxID_ANY, _("Connected user accounts:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText166->Wrap( -1 );
- bSizer306->Add( m_staticText166, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_staticText166 = new wxStaticText( m_panel41, wxID_ANY, _("Connected user accounts:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText166->Wrap( -1 );
+ bSizer306->Add( m_staticText166, 0, wxALIGN_CENTER_VERTICAL, 5 );
- bSizer307->Add( bSizer306, 0, wxALL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ bSizer307->Add( bSizer306, 0, wxALL|wxALIGN_CENTER_HORIZONTAL, 5 );
- m_listBoxGdriveUsers = new wxListBox( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, NULL, wxLB_NEEDED_SB|wxLB_SINGLE|wxLB_SORT );
- bSizer307->Add( m_listBoxGdriveUsers, 1, wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND, 5 );
+ m_listBoxGdriveUsers = new wxListBox( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, NULL, wxLB_NEEDED_SB|wxLB_SINGLE|wxLB_SORT );
+ bSizer307->Add( m_listBoxGdriveUsers, 1, wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND, 5 );
- wxBoxSizer* bSizer3002;
- bSizer3002 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer3002;
+ bSizer3002 = new wxBoxSizer( wxHORIZONTAL );
- m_buttonGdriveAddUser = new zen::BitmapTextButton( m_panel41, wxID_ANY, _("&Add connection"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- bSizer3002->Add( m_buttonGdriveAddUser, 1, wxALIGN_CENTER_VERTICAL, 5 );
+ m_buttonGdriveAddUser = new zen::BitmapTextButton( m_panel41, wxID_ANY, _("&Add connection"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ bSizer3002->Add( m_buttonGdriveAddUser, 1, wxALIGN_CENTER_VERTICAL, 5 );
- m_buttonGdriveRemoveUser = new zen::BitmapTextButton( m_panel41, wxID_ANY, _("&Disconnect"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- bSizer3002->Add( m_buttonGdriveRemoveUser, 1, wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
+ m_buttonGdriveRemoveUser = new zen::BitmapTextButton( m_panel41, wxID_ANY, _("&Disconnect"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ bSizer3002->Add( m_buttonGdriveRemoveUser, 1, wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
- bSizer307->Add( bSizer3002, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxALIGN_CENTER_HORIZONTAL, 5 );
+ bSizer307->Add( bSizer3002, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxALIGN_CENTER_HORIZONTAL, 5 );
- bSizer284->Add( bSizer307, 0, wxALL|wxEXPAND, 5 );
+ bSizer284->Add( bSizer307, 0, wxALL|wxEXPAND, 5 );
- m_staticline841 = new wxStaticLine( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
- bSizer284->Add( m_staticline841, 0, wxEXPAND, 5 );
+ m_staticline841 = new wxStaticLine( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
+ bSizer284->Add( m_staticline841, 0, wxEXPAND, 5 );
- wxBoxSizer* bSizer3041;
- bSizer3041 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer3041;
+ bSizer3041 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer305;
- bSizer305 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer305;
+ bSizer305 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapGdriveDrive = new wxStaticBitmap( m_panel41, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer305->Add( m_bitmapGdriveDrive, 0, wxRIGHT|wxALIGN_CENTER_VERTICAL, 5 );
+ m_bitmapGdriveDrive = new wxStaticBitmap( m_panel41, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer305->Add( m_bitmapGdriveDrive, 0, wxRIGHT|wxALIGN_CENTER_VERTICAL, 5 );
- m_staticText186 = new wxStaticText( m_panel41, wxID_ANY, _("Select drive:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText186->Wrap( -1 );
- bSizer305->Add( m_staticText186, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_staticText186 = new wxStaticText( m_panel41, wxID_ANY, _("Select drive:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText186->Wrap( -1 );
+ bSizer305->Add( m_staticText186, 0, wxALIGN_CENTER_VERTICAL, 5 );
- bSizer3041->Add( bSizer305, 0, wxALL, 5 );
+ bSizer3041->Add( bSizer305, 0, wxALL, 5 );
- m_listBoxGdriveDrives = new wxListBox( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, NULL, wxLB_NEEDED_SB|wxLB_SINGLE|wxLB_SORT );
- bSizer3041->Add( m_listBoxGdriveDrives, 1, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
+ m_listBoxGdriveDrives = new wxListBox( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0, NULL, wxLB_NEEDED_SB|wxLB_SINGLE|wxLB_SORT );
+ bSizer3041->Add( m_listBoxGdriveDrives, 1, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
- bSizer284->Add( bSizer3041, 1, wxALL|wxEXPAND, 5 );
+ bSizer284->Add( bSizer3041, 1, wxALL|wxEXPAND, 5 );
- bSizerGdrive->Add( bSizer284, 1, wxEXPAND, 5 );
+ bSizerGdrive->Add( bSizer284, 1, wxEXPAND, 5 );
- m_staticline73 = new wxStaticLine( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizerGdrive->Add( m_staticline73, 0, wxEXPAND, 5 );
+ m_staticline73 = new wxStaticLine( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizerGdrive->Add( m_staticline73, 0, wxEXPAND, 5 );
- bSizer185->Add( bSizerGdrive, 1, wxEXPAND, 5 );
+ bSizer185->Add( bSizerGdrive, 1, wxEXPAND, 5 );
- bSizerServer = new wxBoxSizer( wxVERTICAL );
+ bSizerServer = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer276;
- bSizer276 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer276;
+ bSizer276 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapServer = new wxStaticBitmap( m_panel41, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer276->Add( m_bitmapServer, 0, wxTOP|wxBOTTOM|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
+ m_bitmapServer = new wxStaticBitmap( m_panel41, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer276->Add( m_bitmapServer, 0, wxTOP|wxBOTTOM|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
- m_staticText12311 = new wxStaticText( m_panel41, wxID_ANY, _("Server name or IP address:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText12311->Wrap( -1 );
- bSizer276->Add( m_staticText12311, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 );
+ m_staticText12311 = new wxStaticText( m_panel41, wxID_ANY, _("Server name or IP address:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText12311->Wrap( -1 );
+ bSizer276->Add( m_staticText12311, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 );
- m_textCtrlServer = new wxTextCtrl( m_panel41, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( -1, -1 ), 0 );
- bSizer276->Add( m_textCtrlServer, 1, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
+ m_textCtrlServer = new wxTextCtrl( m_panel41, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ bSizer276->Add( m_textCtrlServer, 1, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
- m_staticText1233 = new wxStaticText( m_panel41, wxID_ANY, _("Port:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText1233->Wrap( -1 );
- bSizer276->Add( m_staticText1233, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 );
+ m_staticText1233 = new wxStaticText( m_panel41, wxID_ANY, _("Port:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText1233->Wrap( -1 );
+ bSizer276->Add( m_staticText1233, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 );
- m_textCtrlPort = new wxTextCtrl( m_panel41, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( -1, -1 ), 0 );
- bSizer276->Add( m_textCtrlPort, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
+ m_textCtrlPort = new wxTextCtrl( m_panel41, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ bSizer276->Add( m_textCtrlPort, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
- bSizerServer->Add( bSizer276, 0, wxALL|wxEXPAND, 5 );
+ bSizerServer->Add( bSizer276, 0, wxALL|wxEXPAND, 5 );
- m_staticline58 = new wxStaticLine( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizerServer->Add( m_staticline58, 0, wxEXPAND, 5 );
+ m_staticline58 = new wxStaticLine( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizerServer->Add( m_staticline58, 0, wxEXPAND, 5 );
- bSizer185->Add( bSizerServer, 0, wxEXPAND, 5 );
+ bSizer185->Add( bSizerServer, 0, wxEXPAND, 5 );
- bSizerAuth = new wxBoxSizer( wxVERTICAL );
+ bSizerAuth = new wxBoxSizer( wxVERTICAL );
- bSizerAuthInner = new wxBoxSizer( wxHORIZONTAL );
+ bSizerAuthInner = new wxBoxSizer( wxHORIZONTAL );
- bSizerFtpEncrypt = new wxBoxSizer( wxHORIZONTAL );
+ bSizerFtpEncrypt = new wxBoxSizer( wxHORIZONTAL );
- wxBoxSizer* bSizer2181;
- bSizer2181 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer2181;
+ bSizer2181 = new wxBoxSizer( wxVERTICAL );
- m_staticText1251 = new wxStaticText( m_panel41, wxID_ANY, _("Encryption:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText1251->Wrap( -1 );
- bSizer2181->Add( m_staticText1251, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
+ m_staticText1251 = new wxStaticText( m_panel41, wxID_ANY, _("Encryption:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText1251->Wrap( -1 );
+ bSizer2181->Add( m_staticText1251, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
- m_radioBtnEncryptNone = new wxRadioButton( m_panel41, wxID_ANY, _("&Disabled"), wxDefaultPosition, wxDefaultSize, wxRB_GROUP );
- m_radioBtnEncryptNone->SetValue( true );
- bSizer2181->Add( m_radioBtnEncryptNone, 0, wxEXPAND|wxALL, 5 );
+ m_radioBtnEncryptNone = new wxRadioButton( m_panel41, wxID_ANY, _("&Disabled"), wxDefaultPosition, wxDefaultSize, wxRB_GROUP );
+ m_radioBtnEncryptNone->SetValue( true );
+ bSizer2181->Add( m_radioBtnEncryptNone, 0, wxEXPAND|wxALL, 5 );
- m_radioBtnEncryptSsl = new wxRadioButton( m_panel41, wxID_ANY, _("&Explicit SSL/TLS"), wxDefaultPosition, wxDefaultSize, 0 );
- bSizer2181->Add( m_radioBtnEncryptSsl, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND, 5 );
+ m_radioBtnEncryptSsl = new wxRadioButton( m_panel41, wxID_ANY, _("&Explicit SSL/TLS"), wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer2181->Add( m_radioBtnEncryptSsl, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND, 5 );
- bSizerFtpEncrypt->Add( bSizer2181, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
+ bSizerFtpEncrypt->Add( bSizer2181, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
- m_staticline5721 = new wxStaticLine( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
- bSizerFtpEncrypt->Add( m_staticline5721, 0, wxEXPAND, 5 );
+ m_staticline5721 = new wxStaticLine( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
+ bSizerFtpEncrypt->Add( m_staticline5721, 0, wxEXPAND, 5 );
- bSizerAuthInner->Add( bSizerFtpEncrypt, 0, wxEXPAND, 5 );
+ bSizerAuthInner->Add( bSizerFtpEncrypt, 0, wxEXPAND, 5 );
- bSizerSftpAuth = new wxBoxSizer( wxHORIZONTAL );
+ bSizerSftpAuth = new wxBoxSizer( wxHORIZONTAL );
- wxBoxSizer* bSizer218;
- bSizer218 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer218;
+ bSizer218 = new wxBoxSizer( wxVERTICAL );
- m_staticText125 = new wxStaticText( m_panel41, wxID_ANY, _("Authentication:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText125->Wrap( -1 );
- bSizer218->Add( m_staticText125, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
+ m_staticText125 = new wxStaticText( m_panel41, wxID_ANY, _("Authentication:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText125->Wrap( -1 );
+ bSizer218->Add( m_staticText125, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
- m_radioBtnPassword = new wxRadioButton( m_panel41, wxID_ANY, _("&Password"), wxDefaultPosition, wxDefaultSize, wxRB_GROUP );
- m_radioBtnPassword->SetValue( true );
- bSizer218->Add( m_radioBtnPassword, 0, wxEXPAND|wxALL, 5 );
+ m_radioBtnPassword = new wxRadioButton( m_panel41, wxID_ANY, _("&Password"), wxDefaultPosition, wxDefaultSize, wxRB_GROUP );
+ m_radioBtnPassword->SetValue( true );
+ bSizer218->Add( m_radioBtnPassword, 0, wxEXPAND|wxALL, 5 );
- m_radioBtnKeyfile = new wxRadioButton( m_panel41, wxID_ANY, _("&Key file"), wxDefaultPosition, wxDefaultSize, 0 );
- bSizer218->Add( m_radioBtnKeyfile, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND, 5 );
+ m_radioBtnKeyfile = new wxRadioButton( m_panel41, wxID_ANY, _("&Key file"), wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer218->Add( m_radioBtnKeyfile, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND, 5 );
- m_radioBtnAgent = new wxRadioButton( m_panel41, wxID_ANY, _("&SSH agent"), wxDefaultPosition, wxDefaultSize, 0 );
- bSizer218->Add( m_radioBtnAgent, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
+ m_radioBtnAgent = new wxRadioButton( m_panel41, wxID_ANY, _("&SSH agent"), wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer218->Add( m_radioBtnAgent, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
- bSizerSftpAuth->Add( bSizer218, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
+ bSizerSftpAuth->Add( bSizer218, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
- m_staticline572 = new wxStaticLine( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
- bSizerSftpAuth->Add( m_staticline572, 0, wxEXPAND, 5 );
+ m_staticline572 = new wxStaticLine( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
+ bSizerSftpAuth->Add( m_staticline572, 0, wxEXPAND, 5 );
- bSizerAuthInner->Add( bSizerSftpAuth, 0, wxEXPAND, 5 );
+ bSizerAuthInner->Add( bSizerSftpAuth, 0, wxEXPAND, 5 );
- m_panelAuth = new wxPanel( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panelAuth->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ m_panelAuth = new wxPanel( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panelAuth->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- wxBoxSizer* bSizer221;
- bSizer221 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer221;
+ bSizer221 = new wxBoxSizer( wxVERTICAL );
- wxFlexGridSizer* fgSizer161;
- fgSizer161 = new wxFlexGridSizer( 0, 2, 0, 0 );
- fgSizer161->AddGrowableCol( 1 );
- fgSizer161->SetFlexibleDirection( wxBOTH );
- fgSizer161->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
+ wxFlexGridSizer* fgSizer161;
+ fgSizer161 = new wxFlexGridSizer( 0, 2, 0, 0 );
+ fgSizer161->AddGrowableCol( 1 );
+ fgSizer161->SetFlexibleDirection( wxBOTH );
+ fgSizer161->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
- m_staticText123 = new wxStaticText( m_panelAuth, wxID_ANY, _("User name:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText123->Wrap( -1 );
- fgSizer161->Add( m_staticText123, 0, wxALIGN_RIGHT|wxTOP|wxBOTTOM|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
+ m_staticText123 = new wxStaticText( m_panelAuth, wxID_ANY, _("User name:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText123->Wrap( -1 );
+ fgSizer161->Add( m_staticText123, 0, wxALIGN_RIGHT|wxTOP|wxBOTTOM|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
- m_textCtrlUserName = new wxTextCtrl( m_panelAuth, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
- fgSizer161->Add( m_textCtrlUserName, 0, wxALL|wxEXPAND|wxALIGN_CENTER_VERTICAL, 5 );
+ m_textCtrlUserName = new wxTextCtrl( m_panelAuth, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
+ fgSizer161->Add( m_textCtrlUserName, 0, wxALL|wxEXPAND|wxALIGN_CENTER_VERTICAL, 5 );
- m_staticTextKeyfile = new wxStaticText( m_panelAuth, wxID_ANY, _("Private key file:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextKeyfile->Wrap( -1 );
- fgSizer161->Add( m_staticTextKeyfile, 0, wxTOP|wxBOTTOM|wxLEFT|wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT, 5 );
+ m_staticTextKeyfile = new wxStaticText( m_panelAuth, wxID_ANY, _("Private key file:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextKeyfile->Wrap( -1 );
+ fgSizer161->Add( m_staticTextKeyfile, 0, wxTOP|wxBOTTOM|wxLEFT|wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT, 5 );
- bSizerKeyFile = new wxBoxSizer( wxHORIZONTAL );
+ bSizerKeyFile = new wxBoxSizer( wxHORIZONTAL );
- m_textCtrlKeyfilePath = new wxTextCtrl( m_panelAuth, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
- bSizerKeyFile->Add( m_textCtrlKeyfilePath, 1, wxALIGN_CENTER_VERTICAL, 5 );
+ m_textCtrlKeyfilePath = new wxTextCtrl( m_panelAuth, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizerKeyFile->Add( m_textCtrlKeyfilePath, 1, wxALIGN_CENTER_VERTICAL, 5 );
- m_buttonSelectKeyfile = new wxButton( m_panelAuth, wxID_ANY, _("Browse"), wxDefaultPosition, wxDefaultSize, 0 );
- m_buttonSelectKeyfile->SetToolTip( _("Select a folder") );
+ m_buttonSelectKeyfile = new wxButton( m_panelAuth, wxID_ANY, _("Browse"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_buttonSelectKeyfile->SetToolTip( _("Select a folder") );
- bSizerKeyFile->Add( m_buttonSelectKeyfile, 0, wxEXPAND, 5 );
+ bSizerKeyFile->Add( m_buttonSelectKeyfile, 0, wxEXPAND, 5 );
- fgSizer161->Add( bSizerKeyFile, 0, wxALL|wxEXPAND, 5 );
+ fgSizer161->Add( bSizerKeyFile, 0, wxALL|wxEXPAND, 5 );
- m_staticTextPassword = new wxStaticText( m_panelAuth, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextPassword->Wrap( -1 );
- fgSizer161->Add( m_staticTextPassword, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 );
+ m_staticTextPassword = new wxStaticText( m_panelAuth, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextPassword->Wrap( -1 );
+ fgSizer161->Add( m_staticTextPassword, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 );
- bSizerPassword = new wxBoxSizer( wxHORIZONTAL );
+ bSizerPassword = new wxBoxSizer( wxHORIZONTAL );
- m_textCtrlPasswordVisible = new wxTextCtrl( m_panelAuth, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
- bSizerPassword->Add( m_textCtrlPasswordVisible, 1, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 );
+ m_textCtrlPasswordVisible = new wxTextCtrl( m_panelAuth, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizerPassword->Add( m_textCtrlPasswordVisible, 1, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 );
- m_textCtrlPasswordHidden = new wxTextCtrl( m_panelAuth, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_PASSWORD );
- bSizerPassword->Add( m_textCtrlPasswordHidden, 1, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 );
+ m_textCtrlPasswordHidden = new wxTextCtrl( m_panelAuth, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_PASSWORD );
+ bSizerPassword->Add( m_textCtrlPasswordHidden, 1, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 );
- m_checkBoxShowPassword = new wxCheckBox( m_panelAuth, wxID_ANY, _("&Show password"), wxDefaultPosition, wxDefaultSize, 0 );
- bSizerPassword->Add( m_checkBoxShowPassword, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
+ m_checkBoxShowPassword = new wxCheckBox( m_panelAuth, wxID_ANY, _("&Show password"), wxDefaultPosition, wxDefaultSize, 0 );
+ bSizerPassword->Add( m_checkBoxShowPassword, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
- fgSizer161->Add( bSizerPassword, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
+ fgSizer161->Add( bSizerPassword, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
- bSizer221->Add( fgSizer161, 0, wxALL|wxEXPAND, 5 );
+ bSizer221->Add( fgSizer161, 0, wxALL|wxEXPAND, 5 );
- m_panelAuth->SetSizer( bSizer221 );
- m_panelAuth->Layout();
- bSizer221->Fit( m_panelAuth );
- bSizerAuthInner->Add( m_panelAuth, 1, wxALIGN_CENTER_VERTICAL, 5 );
+ m_panelAuth->SetSizer( bSizer221 );
+ m_panelAuth->Layout();
+ bSizer221->Fit( m_panelAuth );
+ bSizerAuthInner->Add( m_panelAuth, 1, wxALIGN_CENTER_VERTICAL, 5 );
- bSizerAuth->Add( bSizerAuthInner, 0, wxEXPAND, 5 );
+ bSizerAuth->Add( bSizerAuthInner, 0, wxEXPAND, 5 );
- m_staticline581 = new wxStaticLine( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizerAuth->Add( m_staticline581, 0, wxEXPAND, 5 );
+ m_staticline581 = new wxStaticLine( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizerAuth->Add( m_staticline581, 0, wxEXPAND, 5 );
- bSizer185->Add( bSizerAuth, 0, wxEXPAND, 5 );
+ bSizer185->Add( bSizerAuth, 0, wxEXPAND, 5 );
- wxBoxSizer* bSizer269;
- bSizer269 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer269;
+ bSizer269 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer270;
- bSizer270 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer3051;
+ bSizer3051 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapServerDir = new wxStaticBitmap( m_panel41, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer270->Add( m_bitmapServerDir, 0, wxTOP|wxBOTTOM|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
+ wxBoxSizer* bSizer270;
+ bSizer270 = new wxBoxSizer( wxHORIZONTAL );
- m_staticText1232 = new wxStaticText( m_panel41, wxID_ANY, _("Directory on server:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText1232->Wrap( -1 );
- bSizer270->Add( m_staticText1232, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
+ m_bitmapServerDir = new wxStaticBitmap( m_panel41, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer270->Add( m_bitmapServerDir, 0, wxTOP|wxBOTTOM|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
+ m_staticText1232 = new wxStaticText( m_panel41, wxID_ANY, _("Directory on server:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText1232->Wrap( -1 );
+ bSizer270->Add( m_staticText1232, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
- bSizer269->Add( bSizer270, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
- wxBoxSizer* bSizer217;
- bSizer217 = new wxBoxSizer( wxHORIZONTAL );
+ bSizer3051->Add( bSizer270, 0, wxTOP|wxRIGHT|wxLEFT|wxALIGN_BOTTOM, 5 );
- m_textCtrlServerPath = new wxTextCtrl( m_panel41, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer217->Add( m_textCtrlServerPath, 1, wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
- m_buttonSelectFolder = new wxButton( m_panel41, wxID_ANY, _("Browse"), wxDefaultPosition, wxDefaultSize, 0 );
- m_buttonSelectFolder->SetToolTip( _("Select a folder") );
+ bSizer3051->Add( 0, 0, 1, 0, 5 );
- bSizer217->Add( m_buttonSelectFolder, 0, wxRIGHT|wxEXPAND, 5 );
+ wxBoxSizer* bSizer3031;
+ bSizer3031 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer303;
+ bSizer303 = new wxBoxSizer( wxHORIZONTAL );
- bSizer269->Add( bSizer217, 0, wxRIGHT|wxLEFT|wxEXPAND, 5 );
+ m_staticline83 = new wxStaticLine( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
+ bSizer303->Add( m_staticline83, 0, wxEXPAND, 5 );
- wxBoxSizer* bSizer298;
- bSizer298 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer3042;
+ bSizer3042 = new wxBoxSizer( wxHORIZONTAL );
+ m_staticTextTimeout = new wxStaticText( m_panel41, wxID_ANY, _("Access timeout (in seconds):"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextTimeout->Wrap( -1 );
+ bSizer3042->Add( m_staticTextTimeout, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 );
- bSizer298->Add( 0, 10, 0, 0, 5 );
+ m_spinCtrlTimeout = new wxSpinCtrl( m_panel41, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( -1,-1 ), wxSP_ARROW_KEYS, 1, 2000000000, 1 );
+ bSizer3042->Add( m_spinCtrlTimeout, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
- bSizerAccessTimeout = new wxBoxSizer( wxHORIZONTAL );
- m_staticTextTimeout = new wxStaticText( m_panel41, wxID_ANY, _("Access timeout (in seconds):"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextTimeout->Wrap( -1 );
- bSizerAccessTimeout->Add( m_staticTextTimeout, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 );
+ bSizer303->Add( bSizer3042, 0, wxALL, 5 );
- m_spinCtrlTimeout = new wxSpinCtrl( m_panel41, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( -1, -1 ), wxSP_ARROW_KEYS, 1, 2000000000, 1 );
- bSizerAccessTimeout->Add( m_spinCtrlTimeout, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer3031->Add( bSizer303, 0, wxALIGN_RIGHT, 5 );
- bSizer298->Add( bSizerAccessTimeout, 0, wxALL, 5 );
+ m_staticline82 = new wxStaticLine( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer3031->Add( m_staticline82, 0, wxEXPAND, 5 );
- bSizer269->Add( bSizer298, 0, 0, 5 );
+ bSizer3051->Add( bSizer3031, 0, wxBOTTOM, 10 );
- bSizer185->Add( bSizer269, 0, wxEXPAND, 5 );
+ bSizer269->Add( bSizer3051, 0, wxEXPAND, 5 );
+ wxBoxSizer* bSizer217;
+ bSizer217 = new wxBoxSizer( wxHORIZONTAL );
- m_panel41->SetSizer( bSizer185 );
- m_panel41->Layout();
- bSizer185->Fit( m_panel41 );
- bSizer134->Add( m_panel41, 1, wxEXPAND, 5 );
+ m_textCtrlServerPath = new wxTextCtrl( m_panel41, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer217->Add( m_textCtrlServerPath, 1, wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
- m_staticline571 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer134->Add( m_staticline571, 0, wxEXPAND, 5 );
+ m_buttonSelectFolder = new wxButton( m_panel41, wxID_ANY, _("Browse"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_buttonSelectFolder->SetToolTip( _("Select a folder") );
- wxBoxSizer* bSizer219;
- bSizer219 = new wxBoxSizer( wxHORIZONTAL );
+ bSizer217->Add( m_buttonSelectFolder, 0, wxRIGHT|wxEXPAND, 5 );
- bSizer219->Add( 5, 0, 0, 0, 5 );
+ bSizer269->Add( bSizer217, 0, wxRIGHT|wxLEFT|wxEXPAND, 5 );
- m_bitmapPerf = new wxStaticBitmap( this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer219->Add( m_bitmapPerf, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
- m_staticText1361 = new wxStaticText( this, wxID_ANY, _("Performance improvements:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText1361->Wrap( -1 );
- bSizer219->Add( m_staticText1361, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 10 );
+ bSizer269->Add( 0, 10, 0, 0, 5 );
- bSizer219->Add( 0, 0, 1, wxEXPAND, 5 );
+ bSizer185->Add( bSizer269, 0, wxEXPAND, 5 );
- m_hyperlink171 = new wxHyperlinkCtrl( this, wxID_ANY, _("How to get best performance?"), wxT("https://freefilesync.org/manual.php?topic=ftp-setup"), wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE );
- m_hyperlink171->SetToolTip( _("https://freefilesync.org/manual.php?topic=ftp-setup") );
- bSizer219->Add( m_hyperlink171, 0, wxALL|wxALIGN_CENTER_VERTICAL, 10 );
+ m_panel41->SetSizer( bSizer185 );
+ m_panel41->Layout();
+ bSizer185->Fit( m_panel41 );
+ bSizer134->Add( m_panel41, 1, wxEXPAND, 5 );
+ m_staticline571 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer134->Add( m_staticline571, 0, wxEXPAND, 5 );
- bSizer134->Add( bSizer219, 0, wxEXPAND, 5 );
+ wxBoxSizer* bSizer219;
+ bSizer219 = new wxBoxSizer( wxHORIZONTAL );
- m_staticline57 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer134->Add( m_staticline57, 0, wxEXPAND, 5 );
- m_panel411 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panel411->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ bSizer219->Add( 5, 0, 0, 0, 5 );
- wxBoxSizer* bSizer1851;
- bSizer1851 = new wxBoxSizer( wxVERTICAL );
+ m_bitmapPerf = new wxStaticBitmap( this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer219->Add( m_bitmapPerf, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
- wxFlexGridSizer* fgSizer1611;
- fgSizer1611 = new wxFlexGridSizer( 0, 2, 0, 0 );
- fgSizer1611->AddGrowableCol( 1 );
- fgSizer1611->SetFlexibleDirection( wxBOTH );
- fgSizer1611->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
+ m_staticText1361 = new wxStaticText( this, wxID_ANY, _("Performance improvements:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText1361->Wrap( -1 );
+ bSizer219->Add( m_staticText1361, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 10 );
- bSizerConnectionsLabel = new wxBoxSizer( wxVERTICAL );
- m_staticTextConnectionsLabel = new wxStaticText( m_panel411, wxID_ANY, _("Parallel file operations:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextConnectionsLabel->Wrap( -1 );
- bSizerConnectionsLabel->Add( m_staticTextConnectionsLabel, 0, 0, 5 );
+ bSizer219->Add( 0, 0, 1, wxEXPAND, 5 );
- m_staticTextConnectionsLabelSub = new wxStaticText( m_panel411, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextConnectionsLabelSub->Wrap( -1 );
- bSizerConnectionsLabel->Add( m_staticTextConnectionsLabelSub, 0, wxALIGN_RIGHT, 5 );
+ m_hyperlink171 = new wxHyperlinkCtrl( this, wxID_ANY, _("How to get best performance?"), wxT("https://freefilesync.org/manual.php?topic=ftp-setup"), wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE );
+ m_hyperlink171->SetToolTip( _("https://freefilesync.org/manual.php?topic=ftp-setup") );
+ bSizer219->Add( m_hyperlink171, 0, wxALL|wxALIGN_CENTER_VERTICAL, 10 );
- fgSizer1611->Add( bSizerConnectionsLabel, 0, wxTOP|wxBOTTOM|wxLEFT|wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5 );
- wxBoxSizer* bSizer300;
- bSizer300 = new wxBoxSizer( wxHORIZONTAL );
+ bSizer134->Add( bSizer219, 0, wxEXPAND, 5 );
- m_spinCtrlConnectionCount = new wxSpinCtrl( m_panel411, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( -1, -1 ), wxSP_ARROW_KEYS, 1, 2000000000, 1 );
- bSizer300->Add( m_spinCtrlConnectionCount, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
+ m_staticline57 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer134->Add( m_staticline57, 0, wxEXPAND, 5 );
- m_staticTextConnectionCountDescr = new wxStaticText( m_panel411, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextConnectionCountDescr->Wrap( -1 );
- m_staticTextConnectionCountDescr->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
+ m_panel411 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panel411->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- bSizer300->Add( m_staticTextConnectionCountDescr, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
+ wxBoxSizer* bSizer1851;
+ bSizer1851 = new wxBoxSizer( wxVERTICAL );
- m_hyperlinkDeRequired = new wxHyperlinkCtrl( m_panel411, wxID_ANY, _("Requires FreeFileSync Donation Edition"), wxT("https://freefilesync.org/faq.php#donation-edition"), wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE );
- m_hyperlinkDeRequired->SetToolTip( _("https://freefilesync.org/faq.php#donation-edition") );
+ wxFlexGridSizer* fgSizer1611;
+ fgSizer1611 = new wxFlexGridSizer( 0, 2, 0, 0 );
+ fgSizer1611->AddGrowableCol( 1 );
+ fgSizer1611->SetFlexibleDirection( wxBOTH );
+ fgSizer1611->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
- bSizer300->Add( m_hyperlinkDeRequired, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
+ bSizerConnectionsLabel = new wxBoxSizer( wxVERTICAL );
+ m_staticTextConnectionsLabel = new wxStaticText( m_panel411, wxID_ANY, _("Parallel file operations:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextConnectionsLabel->Wrap( -1 );
+ bSizerConnectionsLabel->Add( m_staticTextConnectionsLabel, 0, 0, 5 );
- fgSizer1611->Add( bSizer300, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_staticTextConnectionsLabelSub = new wxStaticText( m_panel411, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextConnectionsLabelSub->Wrap( -1 );
+ bSizerConnectionsLabel->Add( m_staticTextConnectionsLabelSub, 0, wxALIGN_RIGHT, 5 );
- m_staticTextChannelCountSftp = new wxStaticText( m_panel411, wxID_ANY, _("SFTP channels per connection:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextChannelCountSftp->Wrap( -1 );
- fgSizer1611->Add( m_staticTextChannelCountSftp, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxTOP|wxBOTTOM|wxLEFT, 5 );
- wxBoxSizer* bSizer3001;
- bSizer3001 = new wxBoxSizer( wxHORIZONTAL );
+ fgSizer1611->Add( bSizerConnectionsLabel, 0, wxTOP|wxBOTTOM|wxLEFT|wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5 );
- m_spinCtrlChannelCountSftp = new wxSpinCtrl( m_panel411, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( -1, -1 ), wxSP_ARROW_KEYS, 1, 2000000000, 1 );
- bSizer3001->Add( m_spinCtrlChannelCountSftp, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
+ wxBoxSizer* bSizer300;
+ bSizer300 = new wxBoxSizer( wxHORIZONTAL );
- m_buttonChannelCountSftp = new wxButton( m_panel411, wxID_ANY, _("Detect server limit"), wxDefaultPosition, wxDefaultSize, 0 );
- bSizer3001->Add( m_buttonChannelCountSftp, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
+ m_spinCtrlConnectionCount = new wxSpinCtrl( m_panel411, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( -1,-1 ), wxSP_ARROW_KEYS, 1, 2000000000, 1 );
+ bSizer300->Add( m_spinCtrlConnectionCount, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
+ m_staticTextConnectionCountDescr = new wxStaticText( m_panel411, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextConnectionCountDescr->Wrap( -1 );
+ m_staticTextConnectionCountDescr->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
- fgSizer1611->Add( bSizer3001, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer300->Add( m_staticTextConnectionCountDescr, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
+ m_hyperlinkDeRequired = new wxHyperlinkCtrl( m_panel411, wxID_ANY, _("Requires FreeFileSync Donation Edition"), wxT("https://freefilesync.org/faq.php#donation-edition"), wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE );
+ m_hyperlinkDeRequired->SetToolTip( _("https://freefilesync.org/faq.php#donation-edition") );
- fgSizer1611->Add( 0, 0, 0, 0, 5 );
+ bSizer300->Add( m_hyperlinkDeRequired, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
- wxBoxSizer* bSizer304;
- bSizer304 = new wxBoxSizer( wxHORIZONTAL );
- m_checkBoxAllowZlib = new wxCheckBox( m_panel411, wxID_ANY, _("Enable &compression"), wxDefaultPosition, wxDefaultSize, 0 );
- bSizer304->Add( m_checkBoxAllowZlib, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
+ fgSizer1611->Add( bSizer300, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_staticTextZlibDescr = new wxStaticText( m_panel411, wxID_ANY, _("(zlib)"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextZlibDescr->Wrap( -1 );
- m_staticTextZlibDescr->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
+ m_staticTextChannelCountSftp = new wxStaticText( m_panel411, wxID_ANY, _("SFTP channels per connection:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextChannelCountSftp->Wrap( -1 );
+ fgSizer1611->Add( m_staticTextChannelCountSftp, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxTOP|wxBOTTOM|wxLEFT, 5 );
- bSizer304->Add( m_staticTextZlibDescr, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
+ wxBoxSizer* bSizer3001;
+ bSizer3001 = new wxBoxSizer( wxHORIZONTAL );
+ m_spinCtrlChannelCountSftp = new wxSpinCtrl( m_panel411, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( -1,-1 ), wxSP_ARROW_KEYS, 1, 2000000000, 1 );
+ bSizer3001->Add( m_spinCtrlChannelCountSftp, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
- fgSizer1611->Add( bSizer304, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_buttonChannelCountSftp = new wxButton( m_panel411, wxID_ANY, _("Detect server limit"), wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer3001->Add( m_buttonChannelCountSftp, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
- bSizer1851->Add( fgSizer1611, 0, wxALL, 5 );
+ fgSizer1611->Add( bSizer3001, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_panel411->SetSizer( bSizer1851 );
- m_panel411->Layout();
- bSizer1851->Fit( m_panel411 );
- bSizer134->Add( m_panel411, 0, wxEXPAND, 5 );
+ fgSizer1611->Add( 0, 0, 0, 0, 5 );
- m_staticline12 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer134->Add( m_staticline12, 0, wxEXPAND, 5 );
+ wxBoxSizer* bSizer304;
+ bSizer304 = new wxBoxSizer( wxHORIZONTAL );
- bSizerStdButtons = new wxBoxSizer( wxHORIZONTAL );
+ m_checkBoxAllowZlib = new wxCheckBox( m_panel411, wxID_ANY, _("Enable &compression"), wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer304->Add( m_checkBoxAllowZlib, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
- m_buttonOkay = new wxButton( this, wxID_OK, _("OK"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
+ m_staticTextZlibDescr = new wxStaticText( m_panel411, wxID_ANY, _("(zlib)"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextZlibDescr->Wrap( -1 );
+ m_staticTextZlibDescr->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
- m_buttonOkay->SetDefault();
- m_buttonOkay->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ bSizer304->Add( m_staticTextZlibDescr, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
- bSizerStdButtons->Add( m_buttonOkay, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
- m_buttonCancel = new wxButton( this, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- bSizerStdButtons->Add( m_buttonCancel, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
+ fgSizer1611->Add( bSizer304, 0, wxALIGN_CENTER_VERTICAL, 5 );
- bSizer134->Add( bSizerStdButtons, 0, wxALIGN_RIGHT, 5 );
+ bSizer1851->Add( fgSizer1611, 0, wxALL, 5 );
- this->SetSizer( bSizer134 );
- this->Layout();
- bSizer134->Fit( this );
+ m_panel411->SetSizer( bSizer1851 );
+ m_panel411->Layout();
+ bSizer1851->Fit( m_panel411 );
+ bSizer134->Add( m_panel411, 0, wxEXPAND, 5 );
- this->Centre( wxBOTH );
+ m_staticline12 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer134->Add( m_staticline12, 0, wxEXPAND, 5 );
- // Connect Events
- this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( CloudSetupDlgGenerated::onClose ) );
- m_toggleBtnGdrive->Connect( wxEVT_COMMAND_TOGGLEBUTTON_CLICKED, wxCommandEventHandler( CloudSetupDlgGenerated::onConnectionGdrive ), NULL, this );
- m_toggleBtnSftp->Connect( wxEVT_COMMAND_TOGGLEBUTTON_CLICKED, wxCommandEventHandler( CloudSetupDlgGenerated::onConnectionSftp ), NULL, this );
- m_toggleBtnFtp->Connect( wxEVT_COMMAND_TOGGLEBUTTON_CLICKED, wxCommandEventHandler( CloudSetupDlgGenerated::onConnectionFtp ), NULL, this );
- m_listBoxGdriveUsers->Connect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( CloudSetupDlgGenerated::onGdriveUserSelect ), NULL, this );
- m_buttonGdriveAddUser->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( CloudSetupDlgGenerated::onGdriveUserAdd ), NULL, this );
- m_buttonGdriveRemoveUser->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( CloudSetupDlgGenerated::onGdriveUserRemove ), NULL, this );
- m_radioBtnPassword->Connect( wxEVT_COMMAND_RADIOBUTTON_SELECTED, wxCommandEventHandler( CloudSetupDlgGenerated::onAuthPassword ), NULL, this );
- m_radioBtnKeyfile->Connect( wxEVT_COMMAND_RADIOBUTTON_SELECTED, wxCommandEventHandler( CloudSetupDlgGenerated::onAuthKeyfile ), NULL, this );
- m_radioBtnAgent->Connect( wxEVT_COMMAND_RADIOBUTTON_SELECTED, wxCommandEventHandler( CloudSetupDlgGenerated::onAuthAgent ), NULL, this );
- m_buttonSelectKeyfile->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( CloudSetupDlgGenerated::onSelectKeyfile ), NULL, this );
- m_checkBoxShowPassword->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( CloudSetupDlgGenerated::onToggleShowPassword ), NULL, this );
- m_buttonSelectFolder->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( CloudSetupDlgGenerated::onBrowseCloudFolder ), NULL, this );
- m_buttonChannelCountSftp->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( CloudSetupDlgGenerated::onDetectServerChannelLimit ), NULL, this );
- m_buttonOkay->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( CloudSetupDlgGenerated::onOkay ), NULL, this );
- m_buttonCancel->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( CloudSetupDlgGenerated::onCancel ), NULL, this );
+ bSizerStdButtons = new wxBoxSizer( wxHORIZONTAL );
+
+ m_buttonOkay = new wxButton( this, wxID_OK, _("OK"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+
+ m_buttonOkay->SetDefault();
+ m_buttonOkay->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+
+ bSizerStdButtons->Add( m_buttonOkay, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
+
+ m_buttonCancel = new wxButton( this, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ bSizerStdButtons->Add( m_buttonCancel, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
+
+
+ bSizer134->Add( bSizerStdButtons, 0, wxALIGN_RIGHT, 5 );
+
+
+ this->SetSizer( bSizer134 );
+ this->Layout();
+ bSizer134->Fit( this );
+
+ this->Centre( wxBOTH );
+
+ // Connect Events
+ this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( CloudSetupDlgGenerated::onClose ) );
+ m_toggleBtnGdrive->Connect( wxEVT_COMMAND_TOGGLEBUTTON_CLICKED, wxCommandEventHandler( CloudSetupDlgGenerated::onConnectionGdrive ), NULL, this );
+ m_toggleBtnSftp->Connect( wxEVT_COMMAND_TOGGLEBUTTON_CLICKED, wxCommandEventHandler( CloudSetupDlgGenerated::onConnectionSftp ), NULL, this );
+ m_toggleBtnFtp->Connect( wxEVT_COMMAND_TOGGLEBUTTON_CLICKED, wxCommandEventHandler( CloudSetupDlgGenerated::onConnectionFtp ), NULL, this );
+ m_listBoxGdriveUsers->Connect( wxEVT_COMMAND_LISTBOX_SELECTED, wxCommandEventHandler( CloudSetupDlgGenerated::onGdriveUserSelect ), NULL, this );
+ m_buttonGdriveAddUser->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( CloudSetupDlgGenerated::onGdriveUserAdd ), NULL, this );
+ m_buttonGdriveRemoveUser->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( CloudSetupDlgGenerated::onGdriveUserRemove ), NULL, this );
+ m_radioBtnPassword->Connect( wxEVT_COMMAND_RADIOBUTTON_SELECTED, wxCommandEventHandler( CloudSetupDlgGenerated::onAuthPassword ), NULL, this );
+ m_radioBtnKeyfile->Connect( wxEVT_COMMAND_RADIOBUTTON_SELECTED, wxCommandEventHandler( CloudSetupDlgGenerated::onAuthKeyfile ), NULL, this );
+ m_radioBtnAgent->Connect( wxEVT_COMMAND_RADIOBUTTON_SELECTED, wxCommandEventHandler( CloudSetupDlgGenerated::onAuthAgent ), NULL, this );
+ m_buttonSelectKeyfile->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( CloudSetupDlgGenerated::onSelectKeyfile ), NULL, this );
+ m_checkBoxShowPassword->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( CloudSetupDlgGenerated::onToggleShowPassword ), NULL, this );
+ m_buttonSelectFolder->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( CloudSetupDlgGenerated::onBrowseCloudFolder ), NULL, this );
+ m_buttonChannelCountSftp->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( CloudSetupDlgGenerated::onDetectServerChannelLimit ), NULL, this );
+ m_buttonOkay->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( CloudSetupDlgGenerated::onOkay ), NULL, this );
+ m_buttonCancel->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( CloudSetupDlgGenerated::onCancel ), NULL, this );
}
CloudSetupDlgGenerated::~CloudSetupDlgGenerated()
@@ -3084,61 +3106,61 @@ CloudSetupDlgGenerated::~CloudSetupDlgGenerated()
AbstractFolderPickerGenerated::AbstractFolderPickerGenerated( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style )
{
- this->SetSizeHints( wxDefaultSize, wxDefaultSize );
- this->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
+ this->SetSizeHints( wxDefaultSize, wxDefaultSize );
+ this->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
- wxBoxSizer* bSizer134;
- bSizer134 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer134;
+ bSizer134 = new wxBoxSizer( wxVERTICAL );
- m_panel41 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panel41->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ m_panel41 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panel41->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- wxBoxSizer* bSizer185;
- bSizer185 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer185;
+ bSizer185 = new wxBoxSizer( wxVERTICAL );
- m_staticTextStatus = new wxStaticText( m_panel41, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextStatus->Wrap( -1 );
- bSizer185->Add( m_staticTextStatus, 0, wxALL, 5 );
+ m_staticTextStatus = new wxStaticText( m_panel41, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextStatus->Wrap( -1 );
+ bSizer185->Add( m_staticTextStatus, 0, wxALL, 5 );
- m_treeCtrlFileSystem = new wxTreeCtrl( m_panel41, wxID_ANY, wxDefaultPosition, wxSize( -1, -1 ), wxTR_FULL_ROW_HIGHLIGHT|wxTR_HAS_BUTTONS|wxTR_LINES_AT_ROOT|wxTR_NO_LINES|wxBORDER_NONE );
- bSizer185->Add( m_treeCtrlFileSystem, 1, wxEXPAND, 5 );
+ m_treeCtrlFileSystem = new wxTreeCtrl( m_panel41, wxID_ANY, wxDefaultPosition, wxSize( -1,-1 ), wxTR_FULL_ROW_HIGHLIGHT|wxTR_HAS_BUTTONS|wxTR_LINES_AT_ROOT|wxTR_NO_LINES|wxBORDER_NONE );
+ bSizer185->Add( m_treeCtrlFileSystem, 1, wxEXPAND, 5 );
- m_panel41->SetSizer( bSizer185 );
- m_panel41->Layout();
- bSizer185->Fit( m_panel41 );
- bSizer134->Add( m_panel41, 1, wxEXPAND, 5 );
+ m_panel41->SetSizer( bSizer185 );
+ m_panel41->Layout();
+ bSizer185->Fit( m_panel41 );
+ bSizer134->Add( m_panel41, 1, wxEXPAND, 5 );
- m_staticline12 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer134->Add( m_staticline12, 0, wxEXPAND, 5 );
+ m_staticline12 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer134->Add( m_staticline12, 0, wxEXPAND, 5 );
- bSizerStdButtons = new wxBoxSizer( wxHORIZONTAL );
+ bSizerStdButtons = new wxBoxSizer( wxHORIZONTAL );
- m_buttonOkay = new wxButton( this, wxID_OK, _("Select Folder"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
+ m_buttonOkay = new wxButton( this, wxID_OK, _("Select Folder"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
- m_buttonOkay->SetDefault();
- m_buttonOkay->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_buttonOkay->SetDefault();
+ m_buttonOkay->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- bSizerStdButtons->Add( m_buttonOkay, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
+ bSizerStdButtons->Add( m_buttonOkay, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
- m_buttonCancel = new wxButton( this, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- bSizerStdButtons->Add( m_buttonCancel, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
+ m_buttonCancel = new wxButton( this, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ bSizerStdButtons->Add( m_buttonCancel, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
- bSizer134->Add( bSizerStdButtons, 0, wxALIGN_RIGHT, 5 );
+ bSizer134->Add( bSizerStdButtons, 0, wxALIGN_RIGHT, 5 );
- this->SetSizer( bSizer134 );
- this->Layout();
- bSizer134->Fit( this );
+ this->SetSizer( bSizer134 );
+ this->Layout();
+ bSizer134->Fit( this );
- this->Centre( wxBOTH );
+ this->Centre( wxBOTH );
- // Connect Events
- this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( AbstractFolderPickerGenerated::onClose ) );
- m_treeCtrlFileSystem->Connect( wxEVT_COMMAND_TREE_ITEM_EXPANDING, wxTreeEventHandler( AbstractFolderPickerGenerated::onExpandNode ), NULL, this );
- m_buttonOkay->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( AbstractFolderPickerGenerated::onOkay ), NULL, this );
- m_buttonCancel->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( AbstractFolderPickerGenerated::onCancel ), NULL, this );
+ // Connect Events
+ this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( AbstractFolderPickerGenerated::onClose ) );
+ m_treeCtrlFileSystem->Connect( wxEVT_COMMAND_TREE_ITEM_EXPANDING, wxTreeEventHandler( AbstractFolderPickerGenerated::onExpandNode ), NULL, this );
+ m_buttonOkay->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( AbstractFolderPickerGenerated::onOkay ), NULL, this );
+ m_buttonCancel->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( AbstractFolderPickerGenerated::onCancel ), NULL, this );
}
AbstractFolderPickerGenerated::~AbstractFolderPickerGenerated()
@@ -3147,225 +3169,225 @@ AbstractFolderPickerGenerated::~AbstractFolderPickerGenerated()
SyncConfirmationDlgGenerated::SyncConfirmationDlgGenerated( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style )
{
- this->SetSizeHints( wxDefaultSize, wxDefaultSize );
- this->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
+ this->SetSizeHints( wxDefaultSize, wxDefaultSize );
+ this->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
- wxBoxSizer* bSizer134;
- bSizer134 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer134;
+ bSizer134 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer72;
- bSizer72 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer72;
+ bSizer72 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapSync = new wxStaticBitmap( this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer72->Add( m_bitmapSync, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 10 );
+ m_bitmapSync = new wxStaticBitmap( this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer72->Add( m_bitmapSync, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 10 );
- m_staticTextCaption = new wxStaticText( this, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextCaption->Wrap( -1 );
- bSizer72->Add( m_staticTextCaption, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 10 );
+ m_staticTextCaption = new wxStaticText( this, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextCaption->Wrap( -1 );
+ bSizer72->Add( m_staticTextCaption, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 10 );
- bSizer134->Add( bSizer72, 0, 0, 5 );
+ bSizer134->Add( bSizer72, 0, 0, 5 );
- m_staticline371 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer134->Add( m_staticline371, 0, wxEXPAND, 5 );
+ m_staticline371 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer134->Add( m_staticline371, 0, wxEXPAND, 5 );
- m_panelStatistics = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 );
- m_panelStatistics->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ m_panelStatistics = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 );
+ m_panelStatistics->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- wxBoxSizer* bSizer185;
- bSizer185 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer185;
+ bSizer185 = new wxBoxSizer( wxHORIZONTAL );
- bSizer185->Add( 40, 0, 0, 0, 5 );
+ bSizer185->Add( 40, 0, 0, 0, 5 );
- bSizer185->Add( 0, 0, 1, 0, 5 );
+ bSizer185->Add( 0, 0, 1, 0, 5 );
- m_staticline38 = new wxStaticLine( m_panelStatistics, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
- bSizer185->Add( m_staticline38, 0, wxEXPAND, 5 );
+ m_staticline38 = new wxStaticLine( m_panelStatistics, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
+ bSizer185->Add( m_staticline38, 0, wxEXPAND, 5 );
- wxBoxSizer* bSizer162;
- bSizer162 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer162;
+ bSizer162 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer182;
- bSizer182 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer182;
+ bSizer182 = new wxBoxSizer( wxHORIZONTAL );
- m_staticText84 = new wxStaticText( m_panelStatistics, wxID_ANY, _("Variant:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText84->Wrap( -1 );
- bSizer182->Add( m_staticText84, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 );
+ m_staticText84 = new wxStaticText( m_panelStatistics, wxID_ANY, _("Variant:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText84->Wrap( -1 );
+ bSizer182->Add( m_staticText84, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 );
- bSizer182->Add( 0, 0, 1, wxEXPAND, 5 );
+ bSizer182->Add( 0, 0, 1, wxEXPAND, 5 );
- m_staticTextSyncVar = new wxStaticText( m_panelStatistics, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextSyncVar->Wrap( -1 );
- m_staticTextSyncVar->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_staticTextSyncVar = new wxStaticText( m_panelStatistics, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextSyncVar->Wrap( -1 );
+ m_staticTextSyncVar->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- bSizer182->Add( m_staticTextSyncVar, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
+ bSizer182->Add( m_staticTextSyncVar, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
- m_bitmapSyncVar = new wxStaticBitmap( m_panelStatistics, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer182->Add( m_bitmapSyncVar, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
+ m_bitmapSyncVar = new wxStaticBitmap( m_panelStatistics, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer182->Add( m_bitmapSyncVar, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
- bSizer182->Add( 0, 0, 1, wxEXPAND, 5 );
+ bSizer182->Add( 0, 0, 1, wxEXPAND, 5 );
- bSizer162->Add( bSizer182, 0, wxALL|wxEXPAND, 5 );
+ bSizer162->Add( bSizer182, 0, wxALL|wxEXPAND, 5 );
- m_staticline14 = new wxStaticLine( m_panelStatistics, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer162->Add( m_staticline14, 0, wxEXPAND, 5 );
+ m_staticline14 = new wxStaticLine( m_panelStatistics, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer162->Add( m_staticline14, 0, wxEXPAND, 5 );
- wxBoxSizer* bSizer181;
- bSizer181 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer181;
+ bSizer181 = new wxBoxSizer( wxVERTICAL );
- m_staticText83 = new wxStaticText( m_panelStatistics, wxID_ANY, _("Statistics:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText83->Wrap( -1 );
- bSizer181->Add( m_staticText83, 0, wxALL, 5 );
+ m_staticText83 = new wxStaticText( m_panelStatistics, wxID_ANY, _("Statistics:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText83->Wrap( -1 );
+ bSizer181->Add( m_staticText83, 0, wxALL, 5 );
- wxFlexGridSizer* fgSizer11;
- fgSizer11 = new wxFlexGridSizer( 2, 7, 2, 5 );
- fgSizer11->SetFlexibleDirection( wxBOTH );
- fgSizer11->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
+ wxFlexGridSizer* fgSizer11;
+ fgSizer11 = new wxFlexGridSizer( 2, 7, 2, 5 );
+ fgSizer11->SetFlexibleDirection( wxBOTH );
+ fgSizer11->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
- m_bitmapDeleteLeft = new wxStaticBitmap( m_panelStatistics, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- m_bitmapDeleteLeft->SetToolTip( _("Number of files and folders that will be deleted") );
+ m_bitmapDeleteLeft = new wxStaticBitmap( m_panelStatistics, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ m_bitmapDeleteLeft->SetToolTip( _("Number of files and folders that will be deleted") );
- fgSizer11->Add( m_bitmapDeleteLeft, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ fgSizer11->Add( m_bitmapDeleteLeft, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- m_bitmapUpdateLeft = new wxStaticBitmap( m_panelStatistics, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- m_bitmapUpdateLeft->SetToolTip( _("Number of files that will be updated") );
+ m_bitmapUpdateLeft = new wxStaticBitmap( m_panelStatistics, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ m_bitmapUpdateLeft->SetToolTip( _("Number of files that will be updated") );
- fgSizer11->Add( m_bitmapUpdateLeft, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ fgSizer11->Add( m_bitmapUpdateLeft, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- m_bitmapCreateLeft = new wxStaticBitmap( m_panelStatistics, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- m_bitmapCreateLeft->SetToolTip( _("Number of files and folders that will be created") );
+ m_bitmapCreateLeft = new wxStaticBitmap( m_panelStatistics, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ m_bitmapCreateLeft->SetToolTip( _("Number of files and folders that will be created") );
- fgSizer11->Add( m_bitmapCreateLeft, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ fgSizer11->Add( m_bitmapCreateLeft, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
- m_bitmapData = new wxStaticBitmap( m_panelStatistics, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- m_bitmapData->SetToolTip( _("Total bytes to copy") );
+ m_bitmapData = new wxStaticBitmap( m_panelStatistics, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ m_bitmapData->SetToolTip( _("Total bytes to copy") );
- fgSizer11->Add( m_bitmapData, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ fgSizer11->Add( m_bitmapData, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
- m_bitmapCreateRight = new wxStaticBitmap( m_panelStatistics, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- m_bitmapCreateRight->SetToolTip( _("Number of files and folders that will be created") );
+ m_bitmapCreateRight = new wxStaticBitmap( m_panelStatistics, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ m_bitmapCreateRight->SetToolTip( _("Number of files and folders that will be created") );
- fgSizer11->Add( m_bitmapCreateRight, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ fgSizer11->Add( m_bitmapCreateRight, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
- m_bitmapUpdateRight = new wxStaticBitmap( m_panelStatistics, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- m_bitmapUpdateRight->SetToolTip( _("Number of files that will be updated") );
+ m_bitmapUpdateRight = new wxStaticBitmap( m_panelStatistics, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ m_bitmapUpdateRight->SetToolTip( _("Number of files that will be updated") );
- fgSizer11->Add( m_bitmapUpdateRight, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ fgSizer11->Add( m_bitmapUpdateRight, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
- m_bitmapDeleteRight = new wxStaticBitmap( m_panelStatistics, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- m_bitmapDeleteRight->SetToolTip( _("Number of files and folders that will be deleted") );
+ m_bitmapDeleteRight = new wxStaticBitmap( m_panelStatistics, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ m_bitmapDeleteRight->SetToolTip( _("Number of files and folders that will be deleted") );
- fgSizer11->Add( m_bitmapDeleteRight, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ fgSizer11->Add( m_bitmapDeleteRight, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- m_staticTextDeleteLeft = new wxStaticText( m_panelStatistics, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextDeleteLeft->Wrap( -1 );
- m_staticTextDeleteLeft->SetToolTip( _("Number of files and folders that will be deleted") );
+ m_staticTextDeleteLeft = new wxStaticText( m_panelStatistics, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextDeleteLeft->Wrap( -1 );
+ m_staticTextDeleteLeft->SetToolTip( _("Number of files and folders that will be deleted") );
- fgSizer11->Add( m_staticTextDeleteLeft, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ fgSizer11->Add( m_staticTextDeleteLeft, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- m_staticTextUpdateLeft = new wxStaticText( m_panelStatistics, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextUpdateLeft->Wrap( -1 );
- m_staticTextUpdateLeft->SetToolTip( _("Number of files that will be updated") );
+ m_staticTextUpdateLeft = new wxStaticText( m_panelStatistics, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextUpdateLeft->Wrap( -1 );
+ m_staticTextUpdateLeft->SetToolTip( _("Number of files that will be updated") );
- fgSizer11->Add( m_staticTextUpdateLeft, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ fgSizer11->Add( m_staticTextUpdateLeft, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
- m_staticTextCreateLeft = new wxStaticText( m_panelStatistics, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextCreateLeft->Wrap( -1 );
- m_staticTextCreateLeft->SetToolTip( _("Number of files and folders that will be created") );
+ m_staticTextCreateLeft = new wxStaticText( m_panelStatistics, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextCreateLeft->Wrap( -1 );
+ m_staticTextCreateLeft->SetToolTip( _("Number of files and folders that will be created") );
- fgSizer11->Add( m_staticTextCreateLeft, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ fgSizer11->Add( m_staticTextCreateLeft, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
- m_staticTextData = new wxStaticText( m_panelStatistics, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextData->Wrap( -1 );
- m_staticTextData->SetToolTip( _("Total bytes to copy") );
+ m_staticTextData = new wxStaticText( m_panelStatistics, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextData->Wrap( -1 );
+ m_staticTextData->SetToolTip( _("Total bytes to copy") );
- fgSizer11->Add( m_staticTextData, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ fgSizer11->Add( m_staticTextData, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- m_staticTextCreateRight = new wxStaticText( m_panelStatistics, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextCreateRight->Wrap( -1 );
- m_staticTextCreateRight->SetToolTip( _("Number of files and folders that will be created") );
+ m_staticTextCreateRight = new wxStaticText( m_panelStatistics, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextCreateRight->Wrap( -1 );
+ m_staticTextCreateRight->SetToolTip( _("Number of files and folders that will be created") );
- fgSizer11->Add( m_staticTextCreateRight, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ fgSizer11->Add( m_staticTextCreateRight, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- m_staticTextUpdateRight = new wxStaticText( m_panelStatistics, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextUpdateRight->Wrap( -1 );
- m_staticTextUpdateRight->SetToolTip( _("Number of files that will be updated") );
+ m_staticTextUpdateRight = new wxStaticText( m_panelStatistics, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextUpdateRight->Wrap( -1 );
+ m_staticTextUpdateRight->SetToolTip( _("Number of files that will be updated") );
- fgSizer11->Add( m_staticTextUpdateRight, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ fgSizer11->Add( m_staticTextUpdateRight, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- m_staticTextDeleteRight = new wxStaticText( m_panelStatistics, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextDeleteRight->Wrap( -1 );
- m_staticTextDeleteRight->SetToolTip( _("Number of files and folders that will be deleted") );
+ m_staticTextDeleteRight = new wxStaticText( m_panelStatistics, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextDeleteRight->Wrap( -1 );
+ m_staticTextDeleteRight->SetToolTip( _("Number of files and folders that will be deleted") );
- fgSizer11->Add( m_staticTextDeleteRight, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ fgSizer11->Add( m_staticTextDeleteRight, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- bSizer181->Add( fgSizer11, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND, 5 );
+ bSizer181->Add( fgSizer11, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND, 5 );
- bSizer162->Add( bSizer181, 0, wxEXPAND|wxALL, 5 );
+ bSizer162->Add( bSizer181, 0, wxEXPAND|wxALL, 5 );
- bSizer185->Add( bSizer162, 0, 0, 5 );
+ bSizer185->Add( bSizer162, 0, 0, 5 );
- m_staticline381 = new wxStaticLine( m_panelStatistics, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
- bSizer185->Add( m_staticline381, 0, wxEXPAND, 5 );
+ m_staticline381 = new wxStaticLine( m_panelStatistics, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
+ bSizer185->Add( m_staticline381, 0, wxEXPAND, 5 );
- bSizer185->Add( 0, 0, 1, 0, 5 );
+ bSizer185->Add( 0, 0, 1, 0, 5 );
- bSizer185->Add( 40, 0, 0, 0, 5 );
+ bSizer185->Add( 40, 0, 0, 0, 5 );
- m_panelStatistics->SetSizer( bSizer185 );
- m_panelStatistics->Layout();
- bSizer185->Fit( m_panelStatistics );
- bSizer134->Add( m_panelStatistics, 0, wxEXPAND, 5 );
+ m_panelStatistics->SetSizer( bSizer185 );
+ m_panelStatistics->Layout();
+ bSizer185->Fit( m_panelStatistics );
+ bSizer134->Add( m_panelStatistics, 0, wxEXPAND, 5 );
- m_staticline12 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer134->Add( m_staticline12, 0, wxEXPAND, 5 );
+ m_staticline12 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer134->Add( m_staticline12, 0, wxEXPAND, 5 );
- wxBoxSizer* bSizer164;
- bSizer164 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer164;
+ bSizer164 = new wxBoxSizer( wxVERTICAL );
- m_checkBoxDontShowAgain = new wxCheckBox( this, wxID_ANY, _("&Don't show this dialog again"), wxDefaultPosition, wxDefaultSize, 0 );
- bSizer164->Add( m_checkBoxDontShowAgain, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 5 );
+ m_checkBoxDontShowAgain = new wxCheckBox( this, wxID_ANY, _("&Don't show this dialog again"), wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer164->Add( m_checkBoxDontShowAgain, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 5 );
- bSizerStdButtons = new wxBoxSizer( wxHORIZONTAL );
+ bSizerStdButtons = new wxBoxSizer( wxHORIZONTAL );
- m_buttonStartSync = new wxButton( this, wxID_OK, _("Start"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
+ m_buttonStartSync = new wxButton( this, wxID_OK, _("Start"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
- m_buttonStartSync->SetDefault();
- m_buttonStartSync->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_buttonStartSync->SetDefault();
+ m_buttonStartSync->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- bSizerStdButtons->Add( m_buttonStartSync, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
+ bSizerStdButtons->Add( m_buttonStartSync, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
- m_buttonCancel = new wxButton( this, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- bSizerStdButtons->Add( m_buttonCancel, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT, 5 );
+ m_buttonCancel = new wxButton( this, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ bSizerStdButtons->Add( m_buttonCancel, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT, 5 );
- bSizer164->Add( bSizerStdButtons, 0, wxALIGN_RIGHT, 5 );
+ bSizer164->Add( bSizerStdButtons, 0, wxALIGN_RIGHT, 5 );
- bSizer134->Add( bSizer164, 1, wxEXPAND, 5 );
+ bSizer134->Add( bSizer164, 1, wxEXPAND, 5 );
- this->SetSizer( bSizer134 );
- this->Layout();
- bSizer134->Fit( this );
+ this->SetSizer( bSizer134 );
+ this->Layout();
+ bSizer134->Fit( this );
- this->Centre( wxBOTH );
+ this->Centre( wxBOTH );
- // Connect Events
- this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( SyncConfirmationDlgGenerated::onClose ) );
- m_buttonStartSync->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( SyncConfirmationDlgGenerated::onStartSync ), NULL, this );
- m_buttonCancel->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( SyncConfirmationDlgGenerated::onCancel ), NULL, this );
+ // Connect Events
+ this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( SyncConfirmationDlgGenerated::onClose ) );
+ m_buttonStartSync->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( SyncConfirmationDlgGenerated::onStartSync ), NULL, this );
+ m_buttonCancel->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( SyncConfirmationDlgGenerated::onCancel ), NULL, this );
}
SyncConfirmationDlgGenerated::~SyncConfirmationDlgGenerated()
@@ -3374,198 +3396,198 @@ SyncConfirmationDlgGenerated::~SyncConfirmationDlgGenerated()
CompareProgressDlgGenerated::CompareProgressDlgGenerated( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style, const wxString& name ) : wxPanel( parent, id, pos, size, style, name )
{
- this->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ this->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- wxBoxSizer* bSizer1811;
- bSizer1811 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer1811;
+ bSizer1811 = new wxBoxSizer( wxVERTICAL );
- bSizer1811->Add( 0, 0, 1, 0, 5 );
+ bSizer1811->Add( 0, 0, 1, 0, 5 );
- m_staticTextStatus = new wxStaticText( this, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextStatus->Wrap( -1 );
- bSizer1811->Add( m_staticTextStatus, 0, wxTOP|wxRIGHT|wxLEFT, 10 );
+ m_staticTextStatus = new wxStaticText( this, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextStatus->Wrap( -1 );
+ bSizer1811->Add( m_staticTextStatus, 0, wxTOP|wxRIGHT|wxLEFT, 10 );
- wxBoxSizer* bSizer199;
- bSizer199 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer199;
+ bSizer199 = new wxBoxSizer( wxHORIZONTAL );
- bSizer199->Add( 10, 0, 0, 0, 5 );
+ bSizer199->Add( 10, 0, 0, 0, 5 );
- ffgSizer11 = new wxFlexGridSizer( 2, 0, 5, 5 );
- ffgSizer11->SetFlexibleDirection( wxBOTH );
- ffgSizer11->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
+ ffgSizer11 = new wxFlexGridSizer( 2, 0, 5, 5 );
+ ffgSizer11->SetFlexibleDirection( wxBOTH );
+ ffgSizer11->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
- m_staticTextProcessed = new wxStaticText( this, wxID_ANY, _("Processed:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextProcessed->Wrap( -1 );
- ffgSizer11->Add( m_staticTextProcessed, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxRIGHT, 5 );
+ m_staticTextProcessed = new wxStaticText( this, wxID_ANY, _("Processed:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextProcessed->Wrap( -1 );
+ ffgSizer11->Add( m_staticTextProcessed, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxRIGHT, 5 );
- m_staticTextRemaining = new wxStaticText( this, wxID_ANY, _("Remaining:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextRemaining->Wrap( -1 );
- ffgSizer11->Add( m_staticTextRemaining, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
+ m_staticTextRemaining = new wxStaticText( this, wxID_ANY, _("Remaining:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextRemaining->Wrap( -1 );
+ ffgSizer11->Add( m_staticTextRemaining, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
- bSizer199->Add( ffgSizer11, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM, 10 );
+ bSizer199->Add( ffgSizer11, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM, 10 );
- m_panelItemStats = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 );
- m_panelItemStats->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
+ m_panelItemStats = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 );
+ m_panelItemStats->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
- wxBoxSizer* bSizer291;
- bSizer291 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer291;
+ bSizer291 = new wxBoxSizer( wxVERTICAL );
- ffgSizer111 = new wxFlexGridSizer( 0, 2, 5, 5 );
- ffgSizer111->SetFlexibleDirection( wxBOTH );
- ffgSizer111->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
+ ffgSizer111 = new wxFlexGridSizer( 0, 2, 5, 5 );
+ ffgSizer111->SetFlexibleDirection( wxBOTH );
+ ffgSizer111->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
- wxBoxSizer* bSizer293;
- bSizer293 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer293;
+ bSizer293 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapItemStat = new wxStaticBitmap( m_panelItemStats, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer293->Add( m_bitmapItemStat, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
+ m_bitmapItemStat = new wxStaticBitmap( m_panelItemStats, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer293->Add( m_bitmapItemStat, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
- bSizer293->Add( 0, 0, 1, 0, 5 );
+ bSizer293->Add( 0, 0, 1, 0, 5 );
- m_staticTextItemsProcessed = new wxStaticText( m_panelItemStats, wxID_ANY, _("dummy"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- m_staticTextItemsProcessed->Wrap( -1 );
- m_staticTextItemsProcessed->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_staticTextItemsProcessed = new wxStaticText( m_panelItemStats, wxID_ANY, _("dummy"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ m_staticTextItemsProcessed->Wrap( -1 );
+ m_staticTextItemsProcessed->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- bSizer293->Add( m_staticTextItemsProcessed, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer293->Add( m_staticTextItemsProcessed, 0, wxALIGN_CENTER_VERTICAL, 5 );
- ffgSizer111->Add( bSizer293, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
+ ffgSizer111->Add( bSizer293, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
- m_staticTextBytesProcessed = new wxStaticText( m_panelItemStats, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextBytesProcessed->Wrap( -1 );
- ffgSizer111->Add( m_staticTextBytesProcessed, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT, 5 );
+ m_staticTextBytesProcessed = new wxStaticText( m_panelItemStats, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextBytesProcessed->Wrap( -1 );
+ ffgSizer111->Add( m_staticTextBytesProcessed, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT, 5 );
- m_staticTextItemsRemaining = new wxStaticText( m_panelItemStats, wxID_ANY, _("dummy"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- m_staticTextItemsRemaining->Wrap( -1 );
- m_staticTextItemsRemaining->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_staticTextItemsRemaining = new wxStaticText( m_panelItemStats, wxID_ANY, _("dummy"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ m_staticTextItemsRemaining->Wrap( -1 );
+ m_staticTextItemsRemaining->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- ffgSizer111->Add( m_staticTextItemsRemaining, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5 );
+ ffgSizer111->Add( m_staticTextItemsRemaining, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5 );
- m_staticTextBytesRemaining = new wxStaticText( m_panelItemStats, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextBytesRemaining->Wrap( -1 );
- ffgSizer111->Add( m_staticTextBytesRemaining, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5 );
+ m_staticTextBytesRemaining = new wxStaticText( m_panelItemStats, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextBytesRemaining->Wrap( -1 );
+ ffgSizer111->Add( m_staticTextBytesRemaining, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5 );
- bSizer291->Add( ffgSizer111, 0, wxALL, 5 );
+ bSizer291->Add( ffgSizer111, 0, wxALL, 5 );
- m_panelItemStats->SetSizer( bSizer291 );
- m_panelItemStats->Layout();
- bSizer291->Fit( m_panelItemStats );
- bSizer199->Add( m_panelItemStats, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 10 );
+ m_panelItemStats->SetSizer( bSizer291 );
+ m_panelItemStats->Layout();
+ bSizer291->Fit( m_panelItemStats );
+ bSizer199->Add( m_panelItemStats, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 10 );
- m_panelTimeStats = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 );
- m_panelTimeStats->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
+ m_panelTimeStats = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 );
+ m_panelTimeStats->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
- wxBoxSizer* bSizer292;
- bSizer292 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer292;
+ bSizer292 = new wxBoxSizer( wxVERTICAL );
- ffgSizer112 = new wxFlexGridSizer( 0, 1, 5, 5 );
- ffgSizer112->SetFlexibleDirection( wxBOTH );
- ffgSizer112->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
+ ffgSizer112 = new wxFlexGridSizer( 0, 1, 5, 5 );
+ ffgSizer112->SetFlexibleDirection( wxBOTH );
+ ffgSizer112->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
- wxBoxSizer* bSizer294;
- bSizer294 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer294;
+ bSizer294 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapTimeStat = new wxStaticBitmap( m_panelTimeStats, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer294->Add( m_bitmapTimeStat, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
+ m_bitmapTimeStat = new wxStaticBitmap( m_panelTimeStats, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer294->Add( m_bitmapTimeStat, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
- bSizer294->Add( 0, 0, 1, 0, 5 );
+ bSizer294->Add( 0, 0, 1, 0, 5 );
- m_staticTextTimeElapsed = new wxStaticText( m_panelTimeStats, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextTimeElapsed->Wrap( -1 );
- m_staticTextTimeElapsed->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_staticTextTimeElapsed = new wxStaticText( m_panelTimeStats, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextTimeElapsed->Wrap( -1 );
+ m_staticTextTimeElapsed->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- bSizer294->Add( m_staticTextTimeElapsed, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer294->Add( m_staticTextTimeElapsed, 0, wxALIGN_CENTER_VERTICAL, 5 );
- ffgSizer112->Add( bSizer294, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
+ ffgSizer112->Add( bSizer294, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
- m_staticTextTimeRemaining = new wxStaticText( m_panelTimeStats, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextTimeRemaining->Wrap( -1 );
- m_staticTextTimeRemaining->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_staticTextTimeRemaining = new wxStaticText( m_panelTimeStats, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextTimeRemaining->Wrap( -1 );
+ m_staticTextTimeRemaining->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- ffgSizer112->Add( m_staticTextTimeRemaining, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT, 5 );
+ ffgSizer112->Add( m_staticTextTimeRemaining, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT, 5 );
- bSizer292->Add( ffgSizer112, 0, wxALL, 5 );
+ bSizer292->Add( ffgSizer112, 0, wxALL, 5 );
- m_panelTimeStats->SetSizer( bSizer292 );
- m_panelTimeStats->Layout();
- bSizer292->Fit( m_panelTimeStats );
- bSizer199->Add( m_panelTimeStats, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 10 );
+ m_panelTimeStats->SetSizer( bSizer292 );
+ m_panelTimeStats->Layout();
+ bSizer292->Fit( m_panelTimeStats );
+ bSizer199->Add( m_panelTimeStats, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 10 );
- bSizerErrorsRetry = new wxBoxSizer( wxHORIZONTAL );
+ bSizerErrorsRetry = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapRetryErrors = new wxStaticBitmap( this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizerErrorsRetry->Add( m_bitmapRetryErrors, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_bitmapRetryErrors = new wxStaticBitmap( this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizerErrorsRetry->Add( m_bitmapRetryErrors, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_staticText1461 = new wxStaticText( this, wxID_ANY, _("Automatic retry"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText1461->Wrap( -1 );
- bSizerErrorsRetry->Add( m_staticText1461, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
+ m_staticText1461 = new wxStaticText( this, wxID_ANY, _("Automatic retry"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText1461->Wrap( -1 );
+ bSizerErrorsRetry->Add( m_staticText1461, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
- m_staticTextRetryCount = new wxStaticText( this, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextRetryCount->Wrap( -1 );
- bSizerErrorsRetry->Add( m_staticTextRetryCount, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_staticTextRetryCount = new wxStaticText( this, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextRetryCount->Wrap( -1 );
+ bSizerErrorsRetry->Add( m_staticTextRetryCount, 0, wxALIGN_CENTER_VERTICAL, 5 );
- bSizer199->Add( bSizerErrorsRetry, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 10 );
+ bSizer199->Add( bSizerErrorsRetry, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 10 );
- bSizerErrorsIgnore = new wxBoxSizer( wxHORIZONTAL );
+ bSizerErrorsIgnore = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapIgnoreErrors = new wxStaticBitmap( this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizerErrorsIgnore->Add( m_bitmapIgnoreErrors, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_bitmapIgnoreErrors = new wxStaticBitmap( this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizerErrorsIgnore->Add( m_bitmapIgnoreErrors, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_staticText146 = new wxStaticText( this, wxID_ANY, _("Ignore errors"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText146->Wrap( -1 );
- bSizerErrorsIgnore->Add( m_staticText146, 0, wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
+ m_staticText146 = new wxStaticText( this, wxID_ANY, _("Ignore errors"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText146->Wrap( -1 );
+ bSizerErrorsIgnore->Add( m_staticText146, 0, wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
- bSizer199->Add( bSizerErrorsIgnore, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 10 );
+ bSizer199->Add( bSizerErrorsIgnore, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 10 );
- bSizerProgressGraph = new wxBoxSizer( wxHORIZONTAL );
+ bSizerProgressGraph = new wxBoxSizer( wxHORIZONTAL );
- ffgSizer113 = new wxFlexGridSizer( 2, 0, 5, 5 );
- ffgSizer113->SetFlexibleDirection( wxBOTH );
- ffgSizer113->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
+ ffgSizer113 = new wxFlexGridSizer( 2, 0, 5, 5 );
+ ffgSizer113->SetFlexibleDirection( wxBOTH );
+ ffgSizer113->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
- wxStaticText* m_staticText99;
- m_staticText99 = new wxStaticText( this, wxID_ANY, _("Bytes:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText99->Wrap( -1 );
- ffgSizer113->Add( m_staticText99, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5 );
+ wxStaticText* m_staticText99;
+ m_staticText99 = new wxStaticText( this, wxID_ANY, _("Bytes:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText99->Wrap( -1 );
+ ffgSizer113->Add( m_staticText99, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5 );
- wxStaticText* m_staticText100;
- m_staticText100 = new wxStaticText( this, wxID_ANY, _("Items:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText100->Wrap( -1 );
- ffgSizer113->Add( m_staticText100, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5 );
+ wxStaticText* m_staticText100;
+ m_staticText100 = new wxStaticText( this, wxID_ANY, _("Items:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText100->Wrap( -1 );
+ ffgSizer113->Add( m_staticText100, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5 );
- bSizerProgressGraph->Add( ffgSizer113, 0, wxALL, 5 );
+ bSizerProgressGraph->Add( ffgSizer113, 0, wxALL, 5 );
- m_panelProgressGraph = new zen::Graph2D( this, wxID_ANY, wxDefaultPosition, wxSize( -1, -1 ), 0 );
- m_panelProgressGraph->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
+ m_panelProgressGraph = new zen::Graph2D( this, wxID_ANY, wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ m_panelProgressGraph->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
- bSizerProgressGraph->Add( m_panelProgressGraph, 1, wxEXPAND, 5 );
+ bSizerProgressGraph->Add( m_panelProgressGraph, 1, wxEXPAND, 5 );
- bSizer199->Add( bSizerProgressGraph, 1, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 10 );
+ bSizer199->Add( bSizerProgressGraph, 1, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 10 );
- bSizer1811->Add( bSizer199, 0, wxEXPAND, 5 );
+ bSizer1811->Add( bSizer199, 0, wxEXPAND, 5 );
- bSizer1811->Add( 0, 0, 1, 0, 5 );
+ bSizer1811->Add( 0, 0, 1, 0, 5 );
- this->SetSizer( bSizer1811 );
- this->Layout();
- bSizer1811->Fit( this );
+ this->SetSizer( bSizer1811 );
+ this->Layout();
+ bSizer1811->Fit( this );
}
CompareProgressDlgGenerated::~CompareProgressDlgGenerated()
@@ -3574,336 +3596,336 @@ CompareProgressDlgGenerated::~CompareProgressDlgGenerated()
SyncProgressPanelGenerated::SyncProgressPanelGenerated( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style, const wxString& name ) : wxPanel( parent, id, pos, size, style, name )
{
- bSizerRoot = new wxBoxSizer( wxVERTICAL );
+ bSizerRoot = new wxBoxSizer( wxVERTICAL );
- m_panel53 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panel53->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ m_panel53 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panel53->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- wxBoxSizer* bSizer301;
- bSizer301 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer301;
+ bSizer301 = new wxBoxSizer( wxVERTICAL );
- bSizer42 = new wxBoxSizer( wxHORIZONTAL );
+ bSizer42 = new wxBoxSizer( wxHORIZONTAL );
- bSizer42->Add( 0, 0, 1, wxEXPAND, 5 );
+ bSizer42->Add( 0, 0, 1, wxEXPAND, 5 );
- m_bitmapStatus = new wxStaticBitmap( m_panel53, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), 0 );
- bSizer42->Add( m_bitmapStatus, 0, wxALIGN_CENTER_VERTICAL|wxALL, 2 );
+ m_bitmapStatus = new wxStaticBitmap( m_panel53, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ bSizer42->Add( m_bitmapStatus, 0, wxALIGN_CENTER_VERTICAL|wxALL, 2 );
- m_staticTextPhase = new wxStaticText( m_panel53, wxID_ANY, _("Synchronizing..."), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextPhase->Wrap( -1 );
- m_staticTextPhase->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_staticTextPhase = new wxStaticText( m_panel53, wxID_ANY, _("Synchronizing..."), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextPhase->Wrap( -1 );
+ m_staticTextPhase->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- bSizer42->Add( m_staticTextPhase, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
+ bSizer42->Add( m_staticTextPhase, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
- wxBoxSizer* bSizer247;
- bSizer247 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer247;
+ bSizer247 = new wxBoxSizer( wxHORIZONTAL );
- bSizer247->Add( 0, 0, 1, 0, 5 );
+ bSizer247->Add( 0, 0, 1, 0, 5 );
- m_bpButtonMinimizeToTray = new wxBitmapButton( m_panel53, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- m_bpButtonMinimizeToTray->SetToolTip( _("Minimize to notification area") );
+ m_bpButtonMinimizeToTray = new wxBitmapButton( m_panel53, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ m_bpButtonMinimizeToTray->SetToolTip( _("Minimize to notification area") );
- bSizer247->Add( m_bpButtonMinimizeToTray, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM, 5 );
+ bSizer247->Add( m_bpButtonMinimizeToTray, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM, 5 );
- bSizer42->Add( bSizer247, 1, wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer42->Add( bSizer247, 1, wxALIGN_CENTER_VERTICAL, 5 );
- bSizer301->Add( bSizer42, 0, wxEXPAND, 5 );
+ bSizer301->Add( bSizer42, 0, wxEXPAND, 5 );
- bSizerStatusText = new wxBoxSizer( wxVERTICAL );
+ bSizerStatusText = new wxBoxSizer( wxVERTICAL );
- m_staticTextStatus = new wxStaticText( m_panel53, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextStatus->Wrap( -1 );
- bSizerStatusText->Add( m_staticTextStatus, 0, wxEXPAND|wxLEFT, 15 );
+ m_staticTextStatus = new wxStaticText( m_panel53, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextStatus->Wrap( -1 );
+ bSizerStatusText->Add( m_staticTextStatus, 0, wxEXPAND|wxLEFT, 15 );
- bSizerStatusText->Add( 0, 10, 0, 0, 5 );
+ bSizerStatusText->Add( 0, 10, 0, 0, 5 );
- bSizer301->Add( bSizerStatusText, 0, wxEXPAND, 5 );
+ bSizer301->Add( bSizerStatusText, 0, wxEXPAND, 5 );
- m_panel53->SetSizer( bSizer301 );
- m_panel53->Layout();
- bSizer301->Fit( m_panel53 );
- bSizerRoot->Add( m_panel53, 0, wxEXPAND, 5 );
+ m_panel53->SetSizer( bSizer301 );
+ m_panel53->Layout();
+ bSizer301->Fit( m_panel53 );
+ bSizerRoot->Add( m_panel53, 0, wxEXPAND, 5 );
- m_panelProgress = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panelProgress->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ m_panelProgress = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panelProgress->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- wxBoxSizer* bSizer173;
- bSizer173 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer173;
+ bSizer173 = new wxBoxSizer( wxHORIZONTAL );
- wxBoxSizer* bSizer161;
- bSizer161 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer161;
+ bSizer161 = new wxBoxSizer( wxVERTICAL );
- m_panelGraphBytes = new zen::Graph2D( m_panelProgress, wxID_ANY, wxDefaultPosition, wxSize( -1, -1 ), 0 );
- m_panelGraphBytes->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ m_panelGraphBytes = new zen::Graph2D( m_panelProgress, wxID_ANY, wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ m_panelGraphBytes->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- bSizer161->Add( m_panelGraphBytes, 1, wxEXPAND|wxLEFT, 10 );
+ bSizer161->Add( m_panelGraphBytes, 1, wxEXPAND|wxLEFT, 10 );
- wxBoxSizer* bSizer232;
- bSizer232 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer232;
+ bSizer232 = new wxBoxSizer( wxHORIZONTAL );
- wxBoxSizer* bSizer233;
- bSizer233 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer233;
+ bSizer233 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer175;
- bSizer175 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer175;
+ bSizer175 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapGraphKeyBytes = new wxStaticBitmap( m_panelProgress, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer175->Add( m_bitmapGraphKeyBytes, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
+ m_bitmapGraphKeyBytes = new wxStaticBitmap( m_panelProgress, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer175->Add( m_bitmapGraphKeyBytes, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
- wxStaticText* m_staticText99;
- m_staticText99 = new wxStaticText( m_panelProgress, wxID_ANY, _("Bytes"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText99->Wrap( -1 );
- bSizer175->Add( m_staticText99, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ wxStaticText* m_staticText99;
+ m_staticText99 = new wxStaticText( m_panelProgress, wxID_ANY, _("Bytes"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText99->Wrap( -1 );
+ bSizer175->Add( m_staticText99, 0, wxALIGN_CENTER_VERTICAL, 5 );
- bSizer233->Add( bSizer175, 0, wxALL, 5 );
+ bSizer233->Add( bSizer175, 0, wxALL, 5 );
- bSizer233->Add( 0, 0, 1, 0, 5 );
+ bSizer233->Add( 0, 0, 1, 0, 5 );
- wxBoxSizer* bSizer174;
- bSizer174 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer174;
+ bSizer174 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapGraphKeyItems = new wxStaticBitmap( m_panelProgress, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer174->Add( m_bitmapGraphKeyItems, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
+ m_bitmapGraphKeyItems = new wxStaticBitmap( m_panelProgress, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer174->Add( m_bitmapGraphKeyItems, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
- wxStaticText* m_staticText100;
- m_staticText100 = new wxStaticText( m_panelProgress, wxID_ANY, _("Items"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText100->Wrap( -1 );
- bSizer174->Add( m_staticText100, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ wxStaticText* m_staticText100;
+ m_staticText100 = new wxStaticText( m_panelProgress, wxID_ANY, _("Items"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText100->Wrap( -1 );
+ bSizer174->Add( m_staticText100, 0, wxALIGN_CENTER_VERTICAL, 5 );
- bSizer233->Add( bSizer174, 0, wxALL, 5 );
+ bSizer233->Add( bSizer174, 0, wxALL, 5 );
- bSizer232->Add( bSizer233, 1, wxEXPAND|wxRIGHT|wxLEFT, 5 );
+ bSizer232->Add( bSizer233, 1, wxEXPAND|wxRIGHT|wxLEFT, 5 );
- ffgSizer11 = new wxFlexGridSizer( 2, 0, 5, 5 );
- ffgSizer11->SetFlexibleDirection( wxBOTH );
- ffgSizer11->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
+ ffgSizer11 = new wxFlexGridSizer( 2, 0, 5, 5 );
+ ffgSizer11->SetFlexibleDirection( wxBOTH );
+ ffgSizer11->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
- m_staticTextProcessed = new wxStaticText( m_panelProgress, wxID_ANY, _("Processed:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextProcessed->Wrap( -1 );
- ffgSizer11->Add( m_staticTextProcessed, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxRIGHT, 5 );
+ m_staticTextProcessed = new wxStaticText( m_panelProgress, wxID_ANY, _("Processed:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextProcessed->Wrap( -1 );
+ ffgSizer11->Add( m_staticTextProcessed, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxRIGHT, 5 );
- m_staticTextRemaining = new wxStaticText( m_panelProgress, wxID_ANY, _("Remaining:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextRemaining->Wrap( -1 );
- ffgSizer11->Add( m_staticTextRemaining, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
+ m_staticTextRemaining = new wxStaticText( m_panelProgress, wxID_ANY, _("Remaining:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextRemaining->Wrap( -1 );
+ ffgSizer11->Add( m_staticTextRemaining, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
- bSizer232->Add( ffgSizer11, 0, wxTOP|wxBOTTOM|wxALIGN_CENTER_VERTICAL, 10 );
+ bSizer232->Add( ffgSizer11, 0, wxTOP|wxBOTTOM|wxALIGN_CENTER_VERTICAL, 10 );
- m_panelItemStats = new wxPanel( m_panelProgress, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 );
- m_panelItemStats->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
+ m_panelItemStats = new wxPanel( m_panelProgress, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 );
+ m_panelItemStats->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
- wxBoxSizer* bSizer291;
- bSizer291 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer291;
+ bSizer291 = new wxBoxSizer( wxVERTICAL );
- ffgSizer111 = new wxFlexGridSizer( 2, 0, 5, 5 );
- ffgSizer111->SetFlexibleDirection( wxBOTH );
- ffgSizer111->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
+ ffgSizer111 = new wxFlexGridSizer( 2, 0, 5, 5 );
+ ffgSizer111->SetFlexibleDirection( wxBOTH );
+ ffgSizer111->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
- wxBoxSizer* bSizer293;
- bSizer293 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer293;
+ bSizer293 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapItemStat = new wxStaticBitmap( m_panelItemStats, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer293->Add( m_bitmapItemStat, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
+ m_bitmapItemStat = new wxStaticBitmap( m_panelItemStats, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer293->Add( m_bitmapItemStat, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
- bSizer293->Add( 0, 0, 1, 0, 5 );
+ bSizer293->Add( 0, 0, 1, 0, 5 );
- m_staticTextItemsProcessed = new wxStaticText( m_panelItemStats, wxID_ANY, _("dummy"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- m_staticTextItemsProcessed->Wrap( -1 );
- m_staticTextItemsProcessed->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_staticTextItemsProcessed = new wxStaticText( m_panelItemStats, wxID_ANY, _("dummy"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ m_staticTextItemsProcessed->Wrap( -1 );
+ m_staticTextItemsProcessed->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- bSizer293->Add( m_staticTextItemsProcessed, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer293->Add( m_staticTextItemsProcessed, 0, wxALIGN_CENTER_VERTICAL, 5 );
- ffgSizer111->Add( bSizer293, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
+ ffgSizer111->Add( bSizer293, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
- m_staticTextBytesProcessed = new wxStaticText( m_panelItemStats, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextBytesProcessed->Wrap( -1 );
- ffgSizer111->Add( m_staticTextBytesProcessed, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT, 5 );
+ m_staticTextBytesProcessed = new wxStaticText( m_panelItemStats, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextBytesProcessed->Wrap( -1 );
+ ffgSizer111->Add( m_staticTextBytesProcessed, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT, 5 );
- m_staticTextItemsRemaining = new wxStaticText( m_panelItemStats, wxID_ANY, _("dummy"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- m_staticTextItemsRemaining->Wrap( -1 );
- m_staticTextItemsRemaining->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_staticTextItemsRemaining = new wxStaticText( m_panelItemStats, wxID_ANY, _("dummy"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ m_staticTextItemsRemaining->Wrap( -1 );
+ m_staticTextItemsRemaining->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- ffgSizer111->Add( m_staticTextItemsRemaining, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5 );
+ ffgSizer111->Add( m_staticTextItemsRemaining, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5 );
- m_staticTextBytesRemaining = new wxStaticText( m_panelItemStats, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextBytesRemaining->Wrap( -1 );
- ffgSizer111->Add( m_staticTextBytesRemaining, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5 );
+ m_staticTextBytesRemaining = new wxStaticText( m_panelItemStats, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextBytesRemaining->Wrap( -1 );
+ ffgSizer111->Add( m_staticTextBytesRemaining, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5 );
- bSizer291->Add( ffgSizer111, 0, wxALL, 5 );
+ bSizer291->Add( ffgSizer111, 0, wxALL, 5 );
- m_panelItemStats->SetSizer( bSizer291 );
- m_panelItemStats->Layout();
- bSizer291->Fit( m_panelItemStats );
- bSizer232->Add( m_panelItemStats, 0, wxTOP|wxBOTTOM|wxRIGHT|wxALIGN_CENTER_VERTICAL, 10 );
+ m_panelItemStats->SetSizer( bSizer291 );
+ m_panelItemStats->Layout();
+ bSizer291->Fit( m_panelItemStats );
+ bSizer232->Add( m_panelItemStats, 0, wxTOP|wxBOTTOM|wxRIGHT|wxALIGN_CENTER_VERTICAL, 10 );
- m_panelTimeStats = new wxPanel( m_panelProgress, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 );
- m_panelTimeStats->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
+ m_panelTimeStats = new wxPanel( m_panelProgress, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 );
+ m_panelTimeStats->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
- wxBoxSizer* bSizer292;
- bSizer292 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer292;
+ bSizer292 = new wxBoxSizer( wxVERTICAL );
- ffgSizer112 = new wxFlexGridSizer( 2, 0, 5, 5 );
- ffgSizer112->SetFlexibleDirection( wxBOTH );
- ffgSizer112->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
+ ffgSizer112 = new wxFlexGridSizer( 2, 0, 5, 5 );
+ ffgSizer112->SetFlexibleDirection( wxBOTH );
+ ffgSizer112->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
- wxBoxSizer* bSizer294;
- bSizer294 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer294;
+ bSizer294 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapTimeStat = new wxStaticBitmap( m_panelTimeStats, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer294->Add( m_bitmapTimeStat, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
+ m_bitmapTimeStat = new wxStaticBitmap( m_panelTimeStats, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer294->Add( m_bitmapTimeStat, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
- bSizer294->Add( 0, 0, 1, 0, 5 );
+ bSizer294->Add( 0, 0, 1, 0, 5 );
- m_staticTextTimeElapsed = new wxStaticText( m_panelTimeStats, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextTimeElapsed->Wrap( -1 );
- m_staticTextTimeElapsed->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_staticTextTimeElapsed = new wxStaticText( m_panelTimeStats, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextTimeElapsed->Wrap( -1 );
+ m_staticTextTimeElapsed->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- bSizer294->Add( m_staticTextTimeElapsed, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer294->Add( m_staticTextTimeElapsed, 0, wxALIGN_CENTER_VERTICAL, 5 );
- ffgSizer112->Add( bSizer294, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
+ ffgSizer112->Add( bSizer294, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
- m_staticTextTimeRemaining = new wxStaticText( m_panelTimeStats, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextTimeRemaining->Wrap( -1 );
- m_staticTextTimeRemaining->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_staticTextTimeRemaining = new wxStaticText( m_panelTimeStats, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextTimeRemaining->Wrap( -1 );
+ m_staticTextTimeRemaining->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- ffgSizer112->Add( m_staticTextTimeRemaining, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT, 5 );
+ ffgSizer112->Add( m_staticTextTimeRemaining, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT, 5 );
- bSizer292->Add( ffgSizer112, 0, wxALL, 5 );
+ bSizer292->Add( ffgSizer112, 0, wxALL, 5 );
- m_panelTimeStats->SetSizer( bSizer292 );
- m_panelTimeStats->Layout();
- bSizer292->Fit( m_panelTimeStats );
- bSizer232->Add( m_panelTimeStats, 0, wxTOP|wxBOTTOM|wxRIGHT|wxALIGN_CENTER_VERTICAL, 10 );
+ m_panelTimeStats->SetSizer( bSizer292 );
+ m_panelTimeStats->Layout();
+ bSizer292->Fit( m_panelTimeStats );
+ bSizer232->Add( m_panelTimeStats, 0, wxTOP|wxBOTTOM|wxRIGHT|wxALIGN_CENTER_VERTICAL, 10 );
- bSizer232->Add( 0, 0, 1, 0, 5 );
+ bSizer232->Add( 0, 0, 1, 0, 5 );
- bSizerDynSpace = new wxBoxSizer( wxVERTICAL );
+ bSizerDynSpace = new wxBoxSizer( wxVERTICAL );
- bSizerDynSpace->Add( 0, 0, 0, 0, 5 );
+ bSizerDynSpace->Add( 0, 0, 0, 0, 5 );
- bSizer232->Add( bSizerDynSpace, 0, 0, 5 );
+ bSizer232->Add( bSizerDynSpace, 0, 0, 5 );
- bSizer161->Add( bSizer232, 0, wxEXPAND, 5 );
+ bSizer161->Add( bSizer232, 0, wxEXPAND, 5 );
- m_panelGraphItems = new zen::Graph2D( m_panelProgress, wxID_ANY, wxDefaultPosition, wxSize( -1, -1 ), 0 );
- m_panelGraphItems->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ m_panelGraphItems = new zen::Graph2D( m_panelProgress, wxID_ANY, wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ m_panelGraphItems->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- bSizer161->Add( m_panelGraphItems, 1, wxEXPAND|wxLEFT, 10 );
+ bSizer161->Add( m_panelGraphItems, 1, wxEXPAND|wxLEFT, 10 );
- bSizerProgressFooter = new wxBoxSizer( wxHORIZONTAL );
+ bSizerProgressFooter = new wxBoxSizer( wxHORIZONTAL );
- bSizerErrorsRetry = new wxBoxSizer( wxHORIZONTAL );
+ bSizerErrorsRetry = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapRetryErrors = new wxStaticBitmap( m_panelProgress, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizerErrorsRetry->Add( m_bitmapRetryErrors, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_bitmapRetryErrors = new wxStaticBitmap( m_panelProgress, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizerErrorsRetry->Add( m_bitmapRetryErrors, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_staticText1461 = new wxStaticText( m_panelProgress, wxID_ANY, _("Automatic retry"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText1461->Wrap( -1 );
- bSizerErrorsRetry->Add( m_staticText1461, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
+ m_staticText1461 = new wxStaticText( m_panelProgress, wxID_ANY, _("Automatic retry"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText1461->Wrap( -1 );
+ bSizerErrorsRetry->Add( m_staticText1461, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
- m_staticTextRetryCount = new wxStaticText( m_panelProgress, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextRetryCount->Wrap( -1 );
- bSizerErrorsRetry->Add( m_staticTextRetryCount, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
+ m_staticTextRetryCount = new wxStaticText( m_panelProgress, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextRetryCount->Wrap( -1 );
+ bSizerErrorsRetry->Add( m_staticTextRetryCount, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
- bSizerProgressFooter->Add( bSizerErrorsRetry, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
+ bSizerProgressFooter->Add( bSizerErrorsRetry, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
- bSizerErrorsIgnore = new wxBoxSizer( wxHORIZONTAL );
+ bSizerErrorsIgnore = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapIgnoreErrors = new wxStaticBitmap( m_panelProgress, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizerErrorsIgnore->Add( m_bitmapIgnoreErrors, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_bitmapIgnoreErrors = new wxStaticBitmap( m_panelProgress, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizerErrorsIgnore->Add( m_bitmapIgnoreErrors, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_staticText146 = new wxStaticText( m_panelProgress, wxID_ANY, _("Ignore errors"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText146->Wrap( -1 );
- bSizerErrorsIgnore->Add( m_staticText146, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
+ m_staticText146 = new wxStaticText( m_panelProgress, wxID_ANY, _("Ignore errors"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText146->Wrap( -1 );
+ bSizerErrorsIgnore->Add( m_staticText146, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
- bSizerProgressFooter->Add( bSizerErrorsIgnore, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
+ bSizerProgressFooter->Add( bSizerErrorsIgnore, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
- bSizerProgressFooter->Add( 0, 0, 1, wxEXPAND, 5 );
+ bSizerProgressFooter->Add( 0, 0, 1, wxEXPAND, 5 );
- m_staticText137 = new wxStaticText( m_panelProgress, wxID_ANY, _("When finished:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText137->Wrap( -1 );
- bSizerProgressFooter->Add( m_staticText137, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
+ m_staticText137 = new wxStaticText( m_panelProgress, wxID_ANY, _("When finished:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText137->Wrap( -1 );
+ bSizerProgressFooter->Add( m_staticText137, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
- wxArrayString m_choicePostSyncActionChoices;
- m_choicePostSyncAction = new wxChoice( m_panelProgress, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_choicePostSyncActionChoices, 0 );
- m_choicePostSyncAction->SetSelection( 0 );
- bSizerProgressFooter->Add( m_choicePostSyncAction, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ wxArrayString m_choicePostSyncActionChoices;
+ m_choicePostSyncAction = new wxChoice( m_panelProgress, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_choicePostSyncActionChoices, 0 );
+ m_choicePostSyncAction->SetSelection( 0 );
+ bSizerProgressFooter->Add( m_choicePostSyncAction, 0, wxALIGN_CENTER_VERTICAL, 5 );
- bSizer161->Add( bSizerProgressFooter, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 10 );
+ bSizer161->Add( bSizerProgressFooter, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 10 );
- bSizer173->Add( bSizer161, 1, wxEXPAND|wxLEFT, 5 );
+ bSizer173->Add( bSizer161, 1, wxEXPAND|wxLEFT, 5 );
- m_panelProgress->SetSizer( bSizer173 );
- m_panelProgress->Layout();
- bSizer173->Fit( m_panelProgress );
- bSizerRoot->Add( m_panelProgress, 1, wxEXPAND, 5 );
+ m_panelProgress->SetSizer( bSizer173 );
+ m_panelProgress->Layout();
+ bSizer173->Fit( m_panelProgress );
+ bSizerRoot->Add( m_panelProgress, 1, wxEXPAND, 5 );
- m_notebookResult = new wxNotebook( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxNB_FIXEDWIDTH );
- m_notebookResult->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ m_notebookResult = new wxNotebook( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxNB_FIXEDWIDTH );
+ m_notebookResult->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- bSizerRoot->Add( m_notebookResult, 1, wxEXPAND, 5 );
+ bSizerRoot->Add( m_notebookResult, 1, wxEXPAND, 5 );
- m_staticlineFooter = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizerRoot->Add( m_staticlineFooter, 0, wxEXPAND, 5 );
+ m_staticlineFooter = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizerRoot->Add( m_staticlineFooter, 0, wxEXPAND, 5 );
- bSizerStdButtons = new wxBoxSizer( wxHORIZONTAL );
+ bSizerStdButtons = new wxBoxSizer( wxHORIZONTAL );
- bSizerStdButtons->Add( 0, 0, 1, wxEXPAND, 5 );
+ bSizerStdButtons->Add( 0, 0, 1, wxEXPAND, 5 );
- m_checkBoxAutoClose = new wxCheckBox( this, wxID_ANY, _("Auto-close"), wxDefaultPosition, wxDefaultSize, 0 );
- bSizerStdButtons->Add( m_checkBoxAutoClose, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 );
+ m_checkBoxAutoClose = new wxCheckBox( this, wxID_ANY, _("Auto-close"), wxDefaultPosition, wxDefaultSize, 0 );
+ bSizerStdButtons->Add( m_checkBoxAutoClose, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 );
- m_buttonClose = new wxButton( this, wxID_OK, _("Close"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
+ m_buttonClose = new wxButton( this, wxID_OK, _("Close"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
- m_buttonClose->SetDefault();
- m_buttonClose->Enable( false );
+ m_buttonClose->SetDefault();
+ m_buttonClose->Enable( false );
- bSizerStdButtons->Add( m_buttonClose, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
+ bSizerStdButtons->Add( m_buttonClose, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
- m_buttonPause = new wxButton( this, wxID_ANY, _("&Pause"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- bSizerStdButtons->Add( m_buttonPause, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
+ m_buttonPause = new wxButton( this, wxID_ANY, _("&Pause"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ bSizerStdButtons->Add( m_buttonPause, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
- m_buttonStop = new wxButton( this, wxID_CANCEL, _("Stop"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- bSizerStdButtons->Add( m_buttonStop, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
+ m_buttonStop = new wxButton( this, wxID_CANCEL, _("Stop"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ bSizerStdButtons->Add( m_buttonStop, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
- bSizerRoot->Add( bSizerStdButtons, 0, wxEXPAND, 5 );
+ bSizerRoot->Add( bSizerStdButtons, 0, wxEXPAND, 5 );
- this->SetSizer( bSizerRoot );
- this->Layout();
- bSizerRoot->Fit( this );
+ this->SetSizer( bSizerRoot );
+ this->Layout();
+ bSizerRoot->Fit( this );
}
SyncProgressPanelGenerated::~SyncProgressPanelGenerated()
@@ -3912,42 +3934,42 @@ SyncProgressPanelGenerated::~SyncProgressPanelGenerated()
LogPanelGenerated::LogPanelGenerated( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style, const wxString& name ) : wxPanel( parent, id, pos, size, style, name )
{
- this->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ this->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- wxBoxSizer* bSizer153;
- bSizer153 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer153;
+ bSizer153 = new wxBoxSizer( wxHORIZONTAL );
- wxBoxSizer* bSizer154;
- bSizer154 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer154;
+ bSizer154 = new wxBoxSizer( wxVERTICAL );
- m_bpButtonErrors = new zen::ToggleButton( this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- bSizer154->Add( m_bpButtonErrors, 0, wxALIGN_CENTER_HORIZONTAL, 5 );
+ m_bpButtonErrors = new zen::ToggleButton( this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ bSizer154->Add( m_bpButtonErrors, 0, wxALIGN_CENTER_HORIZONTAL, 5 );
- m_bpButtonWarnings = new zen::ToggleButton( this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- bSizer154->Add( m_bpButtonWarnings, 0, wxALIGN_CENTER_HORIZONTAL, 5 );
+ m_bpButtonWarnings = new zen::ToggleButton( this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ bSizer154->Add( m_bpButtonWarnings, 0, wxALIGN_CENTER_HORIZONTAL, 5 );
- m_bpButtonInfo = new zen::ToggleButton( this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- bSizer154->Add( m_bpButtonInfo, 0, wxALIGN_CENTER_HORIZONTAL, 5 );
+ m_bpButtonInfo = new zen::ToggleButton( this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ bSizer154->Add( m_bpButtonInfo, 0, wxALIGN_CENTER_HORIZONTAL, 5 );
- bSizer153->Add( bSizer154, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
+ bSizer153->Add( bSizer154, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
- m_staticline13 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
- bSizer153->Add( m_staticline13, 0, wxEXPAND, 5 );
+ m_staticline13 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
+ bSizer153->Add( m_staticline13, 0, wxEXPAND, 5 );
- m_gridMessages = new zen::Grid( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxHSCROLL|wxVSCROLL );
- m_gridMessages->SetScrollRate( 5, 5 );
- bSizer153->Add( m_gridMessages, 1, wxEXPAND, 5 );
+ m_gridMessages = new zen::Grid( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxHSCROLL|wxVSCROLL );
+ m_gridMessages->SetScrollRate( 5, 5 );
+ bSizer153->Add( m_gridMessages, 1, wxEXPAND, 5 );
- this->SetSizer( bSizer153 );
- this->Layout();
- bSizer153->Fit( this );
+ this->SetSizer( bSizer153 );
+ this->Layout();
+ bSizer153->Fit( this );
- // Connect Events
- m_bpButtonErrors->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( LogPanelGenerated::onErrors ), NULL, this );
- m_bpButtonWarnings->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( LogPanelGenerated::onWarnings ), NULL, this );
- m_bpButtonInfo->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( LogPanelGenerated::onInfo ), NULL, this );
+ // Connect Events
+ m_bpButtonErrors->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( LogPanelGenerated::onErrors ), NULL, this );
+ m_bpButtonWarnings->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( LogPanelGenerated::onWarnings ), NULL, this );
+ m_bpButtonInfo->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( LogPanelGenerated::onInfo ), NULL, this );
}
LogPanelGenerated::~LogPanelGenerated()
@@ -3956,173 +3978,173 @@ LogPanelGenerated::~LogPanelGenerated()
BatchDlgGenerated::BatchDlgGenerated( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style )
{
- this->SetSizeHints( wxSize( -1, -1 ), wxDefaultSize );
- this->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
+ this->SetSizeHints( wxSize( -1,-1 ), wxDefaultSize );
+ this->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
- wxBoxSizer* bSizer54;
- bSizer54 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer54;
+ bSizer54 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer72;
- bSizer72 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer72;
+ bSizer72 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapBatchJob = new wxStaticBitmap( this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), 0 );
- bSizer72->Add( m_bitmapBatchJob, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 10 );
+ m_bitmapBatchJob = new wxStaticBitmap( this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ bSizer72->Add( m_bitmapBatchJob, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 10 );
- m_staticTextHeader = new wxStaticText( this, wxID_ANY, _("Create a batch file for unattended synchronization. To start, double-click this file or schedule in a task planner: %x"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextHeader->Wrap( -1 );
- bSizer72->Add( m_staticTextHeader, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 10 );
+ m_staticTextHeader = new wxStaticText( this, wxID_ANY, _("Create a batch file for unattended synchronization. To start, double-click this file or schedule in a task planner: %x"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextHeader->Wrap( -1 );
+ bSizer72->Add( m_staticTextHeader, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 10 );
- bSizer54->Add( bSizer72, 0, 0, 5 );
+ bSizer54->Add( bSizer72, 0, 0, 5 );
- m_staticline18 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer54->Add( m_staticline18, 0, wxEXPAND, 5 );
+ m_staticline18 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer54->Add( m_staticline18, 0, wxEXPAND, 5 );
- m_panel35 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panel35->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ m_panel35 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panel35->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- wxBoxSizer* bSizer172;
- bSizer172 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer172;
+ bSizer172 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer180;
- bSizer180 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer180;
+ bSizer180 = new wxBoxSizer( wxHORIZONTAL );
- wxBoxSizer* bSizer2361;
- bSizer2361 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer2361;
+ bSizer2361 = new wxBoxSizer( wxVERTICAL );
- m_staticText146 = new wxStaticText( m_panel35, wxID_ANY, _("Progress dialog:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText146->Wrap( -1 );
- bSizer2361->Add( m_staticText146, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
+ m_staticText146 = new wxStaticText( m_panel35, wxID_ANY, _("Progress dialog:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText146->Wrap( -1 );
+ bSizer2361->Add( m_staticText146, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
- ffgSizer11 = new wxFlexGridSizer( 0, 2, 5, 5 );
- ffgSizer11->SetFlexibleDirection( wxBOTH );
- ffgSizer11->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
+ ffgSizer11 = new wxFlexGridSizer( 0, 2, 5, 5 );
+ ffgSizer11->SetFlexibleDirection( wxBOTH );
+ ffgSizer11->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
- m_bitmapMinimizeToTray = new wxStaticBitmap( m_panel35, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- ffgSizer11->Add( m_bitmapMinimizeToTray, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_bitmapMinimizeToTray = new wxStaticBitmap( m_panel35, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ ffgSizer11->Add( m_bitmapMinimizeToTray, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_checkBoxRunMinimized = new wxCheckBox( m_panel35, wxID_ANY, _("Run minimized"), wxDefaultPosition, wxDefaultSize, 0 );
- ffgSizer11->Add( m_checkBoxRunMinimized, 0, wxEXPAND|wxALIGN_CENTER_VERTICAL, 5 );
+ m_checkBoxRunMinimized = new wxCheckBox( m_panel35, wxID_ANY, _("Run minimized"), wxDefaultPosition, wxDefaultSize, 0 );
+ ffgSizer11->Add( m_checkBoxRunMinimized, 0, wxEXPAND|wxALIGN_CENTER_VERTICAL, 5 );
- ffgSizer11->Add( 0, 0, 1, wxEXPAND, 5 );
+ ffgSizer11->Add( 0, 0, 1, wxEXPAND, 5 );
- m_checkBoxAutoClose = new wxCheckBox( m_panel35, wxID_ANY, _("Auto-close"), wxDefaultPosition, wxDefaultSize, 0 );
- ffgSizer11->Add( m_checkBoxAutoClose, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
+ m_checkBoxAutoClose = new wxCheckBox( m_panel35, wxID_ANY, _("Auto-close"), wxDefaultPosition, wxDefaultSize, 0 );
+ ffgSizer11->Add( m_checkBoxAutoClose, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
- bSizer2361->Add( ffgSizer11, 0, wxEXPAND|wxALL, 5 );
+ bSizer2361->Add( ffgSizer11, 0, wxEXPAND|wxALL, 5 );
- bSizer180->Add( bSizer2361, 0, wxALL, 5 );
+ bSizer180->Add( bSizer2361, 0, wxALL, 5 );
- m_staticline26 = new wxStaticLine( m_panel35, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
- bSizer180->Add( m_staticline26, 0, wxEXPAND, 5 );
+ m_staticline26 = new wxStaticLine( m_panel35, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
+ bSizer180->Add( m_staticline26, 0, wxEXPAND, 5 );
- wxBoxSizer* bSizer242;
- bSizer242 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer242;
+ bSizer242 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer243;
- bSizer243 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer243;
+ bSizer243 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapIgnoreErrors = new wxStaticBitmap( m_panel35, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer243->Add( m_bitmapIgnoreErrors, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_bitmapIgnoreErrors = new wxStaticBitmap( m_panel35, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer243->Add( m_bitmapIgnoreErrors, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_checkBoxIgnoreErrors = new wxCheckBox( m_panel35, wxID_ANY, _("Ignore errors"), wxDefaultPosition, wxDefaultSize, 0 );
- bSizer243->Add( m_checkBoxIgnoreErrors, 1, wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
+ m_checkBoxIgnoreErrors = new wxCheckBox( m_panel35, wxID_ANY, _("Ignore errors"), wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer243->Add( m_checkBoxIgnoreErrors, 1, wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
- bSizer242->Add( bSizer243, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
+ bSizer242->Add( bSizer243, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
- wxBoxSizer* bSizer246;
- bSizer246 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer246;
+ bSizer246 = new wxBoxSizer( wxVERTICAL );
- m_radioBtnErrorDialogShow = new wxRadioButton( m_panel35, wxID_ANY, _("&Show error message"), wxDefaultPosition, wxDefaultSize, wxRB_GROUP );
- m_radioBtnErrorDialogShow->SetValue( true );
- m_radioBtnErrorDialogShow->SetToolTip( _("Show pop-up on errors or warnings") );
+ m_radioBtnErrorDialogShow = new wxRadioButton( m_panel35, wxID_ANY, _("&Show error message"), wxDefaultPosition, wxDefaultSize, wxRB_GROUP );
+ m_radioBtnErrorDialogShow->SetValue( true );
+ m_radioBtnErrorDialogShow->SetToolTip( _("Show pop-up on errors or warnings") );
- bSizer246->Add( m_radioBtnErrorDialogShow, 0, wxALL|wxEXPAND, 5 );
+ bSizer246->Add( m_radioBtnErrorDialogShow, 0, wxALL|wxEXPAND, 5 );
- m_radioBtnErrorDialogCancel = new wxRadioButton( m_panel35, wxID_ANY, _("&Cancel"), wxDefaultPosition, wxDefaultSize, 0 );
- m_radioBtnErrorDialogCancel->SetToolTip( _("Stop synchronization at first error") );
+ m_radioBtnErrorDialogCancel = new wxRadioButton( m_panel35, wxID_ANY, _("&Cancel"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_radioBtnErrorDialogCancel->SetToolTip( _("Stop synchronization at first error") );
- bSizer246->Add( m_radioBtnErrorDialogCancel, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND, 5 );
+ bSizer246->Add( m_radioBtnErrorDialogCancel, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND, 5 );
- bSizer242->Add( bSizer246, 0, wxALIGN_CENTER_HORIZONTAL|wxLEFT, 15 );
+ bSizer242->Add( bSizer246, 0, wxALIGN_CENTER_HORIZONTAL|wxLEFT, 15 );
- bSizer180->Add( bSizer242, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer180->Add( bSizer242, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
- m_staticline261 = new wxStaticLine( m_panel35, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
- bSizer180->Add( m_staticline261, 0, wxEXPAND, 5 );
+ m_staticline261 = new wxStaticLine( m_panel35, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
+ bSizer180->Add( m_staticline261, 0, wxEXPAND, 5 );
- wxBoxSizer* bSizer247;
- bSizer247 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer247;
+ bSizer247 = new wxBoxSizer( wxVERTICAL );
- m_staticText137 = new wxStaticText( m_panel35, wxID_ANY, _("When finished:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText137->Wrap( -1 );
- bSizer247->Add( m_staticText137, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
+ m_staticText137 = new wxStaticText( m_panel35, wxID_ANY, _("When finished:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText137->Wrap( -1 );
+ bSizer247->Add( m_staticText137, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
- wxArrayString m_choicePostSyncActionChoices;
- m_choicePostSyncAction = new wxChoice( m_panel35, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_choicePostSyncActionChoices, 0 );
- m_choicePostSyncAction->SetSelection( 0 );
- bSizer247->Add( m_choicePostSyncAction, 0, wxALL, 5 );
+ wxArrayString m_choicePostSyncActionChoices;
+ m_choicePostSyncAction = new wxChoice( m_panel35, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_choicePostSyncActionChoices, 0 );
+ m_choicePostSyncAction->SetSelection( 0 );
+ bSizer247->Add( m_choicePostSyncAction, 0, wxALL, 5 );
- bSizer180->Add( bSizer247, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer180->Add( bSizer247, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
- m_staticline262 = new wxStaticLine( m_panel35, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
- bSizer180->Add( m_staticline262, 0, wxEXPAND, 5 );
+ m_staticline262 = new wxStaticLine( m_panel35, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
+ bSizer180->Add( m_staticline262, 0, wxEXPAND, 5 );
- bSizer172->Add( bSizer180, 0, 0, 5 );
+ bSizer172->Add( bSizer180, 0, 0, 5 );
- m_staticline25 = new wxStaticLine( m_panel35, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer172->Add( m_staticline25, 0, wxEXPAND, 5 );
+ m_staticline25 = new wxStaticLine( m_panel35, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer172->Add( m_staticline25, 0, wxEXPAND, 5 );
- m_hyperlink17 = new wxHyperlinkCtrl( m_panel35, wxID_ANY, _("How can I schedule a batch job?"), wxT("https://freefilesync.org/manual.php?topic=schedule-a-batch-job"), wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE );
- m_hyperlink17->SetToolTip( _("https://freefilesync.org/manual.php?topic=schedule-a-batch-job") );
+ m_hyperlink17 = new wxHyperlinkCtrl( m_panel35, wxID_ANY, _("How can I schedule a batch job?"), wxT("https://freefilesync.org/manual.php?topic=schedule-a-batch-job"), wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE );
+ m_hyperlink17->SetToolTip( _("https://freefilesync.org/manual.php?topic=schedule-a-batch-job") );
- bSizer172->Add( m_hyperlink17, 0, wxALL, 10 );
+ bSizer172->Add( m_hyperlink17, 0, wxALL, 10 );
- m_panel35->SetSizer( bSizer172 );
- m_panel35->Layout();
- bSizer172->Fit( m_panel35 );
- bSizer54->Add( m_panel35, 1, wxEXPAND, 5 );
+ m_panel35->SetSizer( bSizer172 );
+ m_panel35->Layout();
+ bSizer172->Fit( m_panel35 );
+ bSizer54->Add( m_panel35, 1, wxEXPAND, 5 );
- m_staticline13 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer54->Add( m_staticline13, 0, wxEXPAND, 5 );
+ m_staticline13 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer54->Add( m_staticline13, 0, wxEXPAND, 5 );
- bSizerStdButtons = new wxBoxSizer( wxHORIZONTAL );
+ bSizerStdButtons = new wxBoxSizer( wxHORIZONTAL );
- m_buttonSaveAs = new wxButton( this, wxID_SAVE, _("Save &as..."), wxDefaultPosition, wxSize( -1, -1 ), 0 );
+ m_buttonSaveAs = new wxButton( this, wxID_SAVE, _("Save &as..."), wxDefaultPosition, wxSize( -1,-1 ), 0 );
- m_buttonSaveAs->SetDefault();
- m_buttonSaveAs->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_buttonSaveAs->SetDefault();
+ m_buttonSaveAs->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- bSizerStdButtons->Add( m_buttonSaveAs, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 5 );
+ bSizerStdButtons->Add( m_buttonSaveAs, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 5 );
- m_buttonCancel = new wxButton( this, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- bSizerStdButtons->Add( m_buttonCancel, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
+ m_buttonCancel = new wxButton( this, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ bSizerStdButtons->Add( m_buttonCancel, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
- bSizer54->Add( bSizerStdButtons, 0, wxALIGN_RIGHT, 5 );
+ bSizer54->Add( bSizerStdButtons, 0, wxALIGN_RIGHT, 5 );
- this->SetSizer( bSizer54 );
- this->Layout();
- bSizer54->Fit( this );
+ this->SetSizer( bSizer54 );
+ this->Layout();
+ bSizer54->Fit( this );
- this->Centre( wxBOTH );
+ this->Centre( wxBOTH );
- // Connect Events
- this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( BatchDlgGenerated::onClose ) );
- m_checkBoxRunMinimized->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( BatchDlgGenerated::onToggleRunMinimized ), NULL, this );
- m_checkBoxIgnoreErrors->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( BatchDlgGenerated::onToggleIgnoreErrors ), NULL, this );
- m_buttonSaveAs->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( BatchDlgGenerated::onSaveBatchJob ), NULL, this );
- m_buttonCancel->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( BatchDlgGenerated::onCancel ), NULL, this );
+ // Connect Events
+ this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( BatchDlgGenerated::onClose ) );
+ m_checkBoxRunMinimized->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( BatchDlgGenerated::onToggleRunMinimized ), NULL, this );
+ m_checkBoxIgnoreErrors->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( BatchDlgGenerated::onToggleIgnoreErrors ), NULL, this );
+ m_buttonSaveAs->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( BatchDlgGenerated::onSaveBatchJob ), NULL, this );
+ m_buttonCancel->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( BatchDlgGenerated::onCancel ), NULL, this );
}
BatchDlgGenerated::~BatchDlgGenerated()
@@ -4131,85 +4153,85 @@ BatchDlgGenerated::~BatchDlgGenerated()
DeleteDlgGenerated::DeleteDlgGenerated( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style )
{
- this->SetSizeHints( wxSize( -1, -1 ), wxDefaultSize );
- this->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
+ this->SetSizeHints( wxSize( -1,-1 ), wxDefaultSize );
+ this->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
- wxBoxSizer* bSizer24;
- bSizer24 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer24;
+ bSizer24 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer72;
- bSizer72 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer72;
+ bSizer72 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapDeleteType = new wxStaticBitmap( this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer72->Add( m_bitmapDeleteType, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 10 );
+ m_bitmapDeleteType = new wxStaticBitmap( this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer72->Add( m_bitmapDeleteType, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 10 );
- m_staticTextHeader = new wxStaticText( this, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextHeader->Wrap( -1 );
- bSizer72->Add( m_staticTextHeader, 0, wxALIGN_CENTER_VERTICAL|wxALL, 10 );
+ m_staticTextHeader = new wxStaticText( this, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextHeader->Wrap( -1 );
+ bSizer72->Add( m_staticTextHeader, 0, wxALIGN_CENTER_VERTICAL|wxALL, 10 );
- bSizer24->Add( bSizer72, 0, 0, 5 );
+ bSizer24->Add( bSizer72, 0, 0, 5 );
- m_staticline91 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer24->Add( m_staticline91, 0, wxEXPAND, 5 );
+ m_staticline91 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer24->Add( m_staticline91, 0, wxEXPAND, 5 );
- m_panel31 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panel31->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ m_panel31 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panel31->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- wxBoxSizer* bSizer185;
- bSizer185 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer185;
+ bSizer185 = new wxBoxSizer( wxHORIZONTAL );
- bSizer185->Add( 60, 0, 0, 0, 5 );
+ bSizer185->Add( 60, 0, 0, 0, 5 );
- m_staticline42 = new wxStaticLine( m_panel31, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
- bSizer185->Add( m_staticline42, 0, wxEXPAND, 5 );
+ m_staticline42 = new wxStaticLine( m_panel31, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
+ bSizer185->Add( m_staticline42, 0, wxEXPAND, 5 );
- m_textCtrlFileList = new wxTextCtrl( m_panel31, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( -1, -1 ), wxTE_DONTWRAP|wxTE_MULTILINE|wxTE_READONLY|wxBORDER_NONE );
- bSizer185->Add( m_textCtrlFileList, 1, wxEXPAND, 5 );
+ m_textCtrlFileList = new wxTextCtrl( m_panel31, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( -1,-1 ), wxTE_DONTWRAP|wxTE_MULTILINE|wxTE_READONLY|wxBORDER_NONE );
+ bSizer185->Add( m_textCtrlFileList, 1, wxEXPAND, 5 );
- m_panel31->SetSizer( bSizer185 );
- m_panel31->Layout();
- bSizer185->Fit( m_panel31 );
- bSizer24->Add( m_panel31, 1, wxEXPAND, 5 );
+ m_panel31->SetSizer( bSizer185 );
+ m_panel31->Layout();
+ bSizer185->Fit( m_panel31 );
+ bSizer24->Add( m_panel31, 1, wxEXPAND, 5 );
- m_staticline9 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer24->Add( m_staticline9, 0, wxEXPAND, 5 );
+ m_staticline9 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer24->Add( m_staticline9, 0, wxEXPAND, 5 );
- bSizerStdButtons = new wxBoxSizer( wxHORIZONTAL );
+ bSizerStdButtons = new wxBoxSizer( wxHORIZONTAL );
- m_checkBoxUseRecycler = new wxCheckBox( this, wxID_ANY, _("&Recycle bin"), wxDefaultPosition, wxDefaultSize, 0 );
- bSizerStdButtons->Add( m_checkBoxUseRecycler, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
+ m_checkBoxUseRecycler = new wxCheckBox( this, wxID_ANY, _("&Recycle bin"), wxDefaultPosition, wxDefaultSize, 0 );
+ bSizerStdButtons->Add( m_checkBoxUseRecycler, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
- bSizerStdButtons->Add( 0, 0, 1, wxEXPAND, 5 );
+ bSizerStdButtons->Add( 0, 0, 1, wxEXPAND, 5 );
- m_buttonOK = new wxButton( this, wxID_OK, _("dummy"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
+ m_buttonOK = new wxButton( this, wxID_OK, _("dummy"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
- m_buttonOK->SetDefault();
- m_buttonOK->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_buttonOK->SetDefault();
+ m_buttonOK->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- bSizerStdButtons->Add( m_buttonOK, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
+ bSizerStdButtons->Add( m_buttonOK, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
- m_buttonCancel = new wxButton( this, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- bSizerStdButtons->Add( m_buttonCancel, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
+ m_buttonCancel = new wxButton( this, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ bSizerStdButtons->Add( m_buttonCancel, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
- bSizer24->Add( bSizerStdButtons, 0, wxEXPAND, 5 );
+ bSizer24->Add( bSizerStdButtons, 0, wxEXPAND, 5 );
- this->SetSizer( bSizer24 );
- this->Layout();
- bSizer24->Fit( this );
+ this->SetSizer( bSizer24 );
+ this->Layout();
+ bSizer24->Fit( this );
- this->Centre( wxBOTH );
+ this->Centre( wxBOTH );
- // Connect Events
- this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( DeleteDlgGenerated::onClose ) );
- m_checkBoxUseRecycler->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DeleteDlgGenerated::onUseRecycler ), NULL, this );
- m_buttonOK->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DeleteDlgGenerated::onOkay ), NULL, this );
- m_buttonCancel->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DeleteDlgGenerated::onCancel ), NULL, this );
+ // Connect Events
+ this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( DeleteDlgGenerated::onClose ) );
+ m_checkBoxUseRecycler->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DeleteDlgGenerated::onUseRecycler ), NULL, this );
+ m_buttonOK->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DeleteDlgGenerated::onOkay ), NULL, this );
+ m_buttonCancel->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DeleteDlgGenerated::onCancel ), NULL, this );
}
DeleteDlgGenerated::~DeleteDlgGenerated()
@@ -4218,120 +4240,120 @@ DeleteDlgGenerated::~DeleteDlgGenerated()
CopyToDlgGenerated::CopyToDlgGenerated( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style )
{
- this->SetSizeHints( wxSize( -1, -1 ), wxDefaultSize );
- this->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
+ this->SetSizeHints( wxSize( -1,-1 ), wxDefaultSize );
+ this->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
- wxBoxSizer* bSizer24;
- bSizer24 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer24;
+ bSizer24 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer72;
- bSizer72 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer72;
+ bSizer72 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapCopyTo = new wxStaticBitmap( this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer72->Add( m_bitmapCopyTo, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 10 );
+ m_bitmapCopyTo = new wxStaticBitmap( this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer72->Add( m_bitmapCopyTo, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 10 );
- m_staticTextHeader = new wxStaticText( this, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextHeader->Wrap( -1 );
- bSizer72->Add( m_staticTextHeader, 0, wxALIGN_CENTER_VERTICAL|wxALL, 10 );
+ m_staticTextHeader = new wxStaticText( this, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextHeader->Wrap( -1 );
+ bSizer72->Add( m_staticTextHeader, 0, wxALIGN_CENTER_VERTICAL|wxALL, 10 );
- bSizer24->Add( bSizer72, 0, 0, 5 );
+ bSizer24->Add( bSizer72, 0, 0, 5 );
- m_staticline91 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer24->Add( m_staticline91, 0, wxEXPAND, 5 );
+ m_staticline91 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer24->Add( m_staticline91, 0, wxEXPAND, 5 );
- m_panel31 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panel31->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ m_panel31 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panel31->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- wxBoxSizer* bSizer242;
- bSizer242 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer242;
+ bSizer242 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer185;
- bSizer185 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer185;
+ bSizer185 = new wxBoxSizer( wxHORIZONTAL );
- bSizer185->Add( 60, 0, 0, 0, 5 );
+ bSizer185->Add( 60, 0, 0, 0, 5 );
- m_staticline42 = new wxStaticLine( m_panel31, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
- bSizer185->Add( m_staticline42, 0, wxEXPAND, 5 );
+ m_staticline42 = new wxStaticLine( m_panel31, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
+ bSizer185->Add( m_staticline42, 0, wxEXPAND, 5 );
- m_textCtrlFileList = new wxTextCtrl( m_panel31, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( -1, -1 ), wxTE_DONTWRAP|wxTE_MULTILINE|wxTE_READONLY|wxBORDER_NONE );
- bSizer185->Add( m_textCtrlFileList, 1, wxEXPAND, 5 );
+ m_textCtrlFileList = new wxTextCtrl( m_panel31, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( -1,-1 ), wxTE_DONTWRAP|wxTE_MULTILINE|wxTE_READONLY|wxBORDER_NONE );
+ bSizer185->Add( m_textCtrlFileList, 1, wxEXPAND, 5 );
- bSizer242->Add( bSizer185, 1, wxEXPAND, 5 );
+ bSizer242->Add( bSizer185, 1, wxEXPAND, 5 );
- wxBoxSizer* bSizer182;
- bSizer182 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer182;
+ bSizer182 = new wxBoxSizer( wxHORIZONTAL );
- m_targetFolderPath = new fff::FolderHistoryBox( m_panel31, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 );
- bSizer182->Add( m_targetFolderPath, 1, wxALIGN_CENTER_VERTICAL, 5 );
+ m_targetFolderPath = new fff::FolderHistoryBox( m_panel31, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, NULL, 0 );
+ bSizer182->Add( m_targetFolderPath, 1, wxALIGN_CENTER_VERTICAL, 5 );
- m_buttonSelectTargetFolder = new wxButton( m_panel31, wxID_ANY, _("Browse"), wxDefaultPosition, wxDefaultSize, 0 );
- m_buttonSelectTargetFolder->SetToolTip( _("Select a folder") );
+ m_buttonSelectTargetFolder = new wxButton( m_panel31, wxID_ANY, _("Browse"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_buttonSelectTargetFolder->SetToolTip( _("Select a folder") );
- bSizer182->Add( m_buttonSelectTargetFolder, 0, wxEXPAND, 5 );
+ bSizer182->Add( m_buttonSelectTargetFolder, 0, wxEXPAND, 5 );
- m_bpButtonSelectAltTargetFolder = new wxBitmapButton( m_panel31, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- m_bpButtonSelectAltTargetFolder->SetToolTip( _("Access online storage") );
+ m_bpButtonSelectAltTargetFolder = new wxBitmapButton( m_panel31, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ m_bpButtonSelectAltTargetFolder->SetToolTip( _("Access online storage") );
- bSizer182->Add( m_bpButtonSelectAltTargetFolder, 0, wxEXPAND, 5 );
+ bSizer182->Add( m_bpButtonSelectAltTargetFolder, 0, wxEXPAND, 5 );
- bSizer242->Add( bSizer182, 0, wxALL|wxEXPAND, 10 );
+ bSizer242->Add( bSizer182, 0, wxALL|wxEXPAND, 10 );
- m_panel31->SetSizer( bSizer242 );
- m_panel31->Layout();
- bSizer242->Fit( m_panel31 );
- bSizer24->Add( m_panel31, 1, wxEXPAND, 5 );
+ m_panel31->SetSizer( bSizer242 );
+ m_panel31->Layout();
+ bSizer242->Fit( m_panel31 );
+ bSizer24->Add( m_panel31, 1, wxEXPAND, 5 );
- m_staticline9 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer24->Add( m_staticline9, 0, wxEXPAND, 5 );
+ m_staticline9 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer24->Add( m_staticline9, 0, wxEXPAND, 5 );
- bSizerStdButtons = new wxBoxSizer( wxHORIZONTAL );
+ bSizerStdButtons = new wxBoxSizer( wxHORIZONTAL );
- wxBoxSizer* bSizer189;
- bSizer189 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer189;
+ bSizer189 = new wxBoxSizer( wxVERTICAL );
- m_checkBoxKeepRelPath = new wxCheckBox( this, wxID_ANY, _("&Keep relative paths"), wxDefaultPosition, wxDefaultSize, 0 );
- m_checkBoxKeepRelPath->SetValue(true);
- bSizer189->Add( m_checkBoxKeepRelPath, 0, wxALL|wxEXPAND, 5 );
+ m_checkBoxKeepRelPath = new wxCheckBox( this, wxID_ANY, _("&Keep relative paths"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_checkBoxKeepRelPath->SetValue(true);
+ bSizer189->Add( m_checkBoxKeepRelPath, 0, wxALL|wxEXPAND, 5 );
- m_checkBoxOverwriteIfExists = new wxCheckBox( this, wxID_ANY, _("&Overwrite existing files"), wxDefaultPosition, wxDefaultSize, 0 );
- m_checkBoxOverwriteIfExists->SetValue(true);
- bSizer189->Add( m_checkBoxOverwriteIfExists, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND, 5 );
+ m_checkBoxOverwriteIfExists = new wxCheckBox( this, wxID_ANY, _("&Overwrite existing files"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_checkBoxOverwriteIfExists->SetValue(true);
+ bSizer189->Add( m_checkBoxOverwriteIfExists, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND, 5 );
- bSizerStdButtons->Add( bSizer189, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ bSizerStdButtons->Add( bSizer189, 0, wxALIGN_CENTER_VERTICAL, 5 );
- bSizerStdButtons->Add( 0, 0, 1, wxEXPAND, 5 );
+ bSizerStdButtons->Add( 0, 0, 1, wxEXPAND, 5 );
- m_buttonOK = new wxButton( this, wxID_OK, _("Copy"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
+ m_buttonOK = new wxButton( this, wxID_OK, _("Copy"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
- m_buttonOK->SetDefault();
- m_buttonOK->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_buttonOK->SetDefault();
+ m_buttonOK->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- bSizerStdButtons->Add( m_buttonOK, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
+ bSizerStdButtons->Add( m_buttonOK, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
- m_buttonCancel = new wxButton( this, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- bSizerStdButtons->Add( m_buttonCancel, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
+ m_buttonCancel = new wxButton( this, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ bSizerStdButtons->Add( m_buttonCancel, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
- bSizer24->Add( bSizerStdButtons, 0, wxEXPAND, 5 );
+ bSizer24->Add( bSizerStdButtons, 0, wxEXPAND, 5 );
- this->SetSizer( bSizer24 );
- this->Layout();
- bSizer24->Fit( this );
+ this->SetSizer( bSizer24 );
+ this->Layout();
+ bSizer24->Fit( this );
- this->Centre( wxBOTH );
+ this->Centre( wxBOTH );
- // Connect Events
- this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( CopyToDlgGenerated::onClose ) );
- m_buttonOK->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( CopyToDlgGenerated::onOkay ), NULL, this );
- m_buttonCancel->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( CopyToDlgGenerated::onCancel ), NULL, this );
+ // Connect Events
+ this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( CopyToDlgGenerated::onClose ) );
+ m_buttonOK->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( CopyToDlgGenerated::onOkay ), NULL, this );
+ m_buttonCancel->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( CopyToDlgGenerated::onCancel ), NULL, this );
}
CopyToDlgGenerated::~CopyToDlgGenerated()
@@ -4340,585 +4362,585 @@ CopyToDlgGenerated::~CopyToDlgGenerated()
OptionsDlgGenerated::OptionsDlgGenerated( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style )
{
- this->SetSizeHints( wxSize( -1, -1 ), wxDefaultSize );
- this->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
+ this->SetSizeHints( wxSize( -1,-1 ), wxDefaultSize );
+ this->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
- wxBoxSizer* bSizer95;
- bSizer95 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer95;
+ bSizer95 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer72;
- bSizer72 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer72;
+ bSizer72 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapSettings = new wxStaticBitmap( this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), 0 );
- bSizer72->Add( m_bitmapSettings, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 10 );
+ m_bitmapSettings = new wxStaticBitmap( this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ bSizer72->Add( m_bitmapSettings, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 10 );
- m_staticText44 = new wxStaticText( this, wxID_ANY, _("The following settings are used for all synchronization jobs."), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- m_staticText44->Wrap( -1 );
- bSizer72->Add( m_staticText44, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 10 );
+ m_staticText44 = new wxStaticText( this, wxID_ANY, _("The following settings are used for all synchronization jobs."), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ m_staticText44->Wrap( -1 );
+ bSizer72->Add( m_staticText44, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 10 );
- bSizer95->Add( bSizer72, 0, 0, 5 );
+ bSizer95->Add( bSizer72, 0, 0, 5 );
- m_staticline20 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer95->Add( m_staticline20, 0, wxEXPAND, 5 );
+ m_staticline20 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer95->Add( m_staticline20, 0, wxEXPAND, 5 );
- m_panel39 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panel39->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ m_panel39 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panel39->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- wxBoxSizer* bSizer166;
- bSizer166 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer166;
+ bSizer166 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer186;
- bSizer186 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer186;
+ bSizer186 = new wxBoxSizer( wxHORIZONTAL );
- wxBoxSizer* bSizer160;
- bSizer160 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer160;
+ bSizer160 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer176;
- bSizer176 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer176;
+ bSizer176 = new wxBoxSizer( wxHORIZONTAL );
- m_checkBoxFailSafe = new wxCheckBox( m_panel39, wxID_ANY, _("Fail-safe file copy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_checkBoxFailSafe->SetValue(true);
- m_checkBoxFailSafe->SetToolTip( _("Copy to a temporary file (*.ffs_tmp) before overwriting target.\nThis guarantees a consistent state even in case of a serious error.") );
+ m_checkBoxFailSafe = new wxCheckBox( m_panel39, wxID_ANY, _("Fail-safe file copy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_checkBoxFailSafe->SetValue(true);
+ m_checkBoxFailSafe->SetToolTip( _("Copy to a temporary file (*.ffs_tmp) before overwriting target.\nThis guarantees a consistent state even in case of a serious error.") );
- bSizer176->Add( m_checkBoxFailSafe, 1, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer176->Add( m_checkBoxFailSafe, 1, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
- m_staticText911 = new wxStaticText( m_panel39, wxID_ANY, _("("), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText911->Wrap( -1 );
- m_staticText911->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
+ m_staticText911 = new wxStaticText( m_panel39, wxID_ANY, _("("), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText911->Wrap( -1 );
+ m_staticText911->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
- bSizer176->Add( m_staticText911, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM, 5 );
+ bSizer176->Add( m_staticText911, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM, 5 );
- m_staticText91 = new wxStaticText( m_panel39, wxID_ANY, _("recommended"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText91->Wrap( -1 );
- m_staticText91->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
+ m_staticText91 = new wxStaticText( m_panel39, wxID_ANY, _("recommended"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText91->Wrap( -1 );
+ m_staticText91->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
- bSizer176->Add( m_staticText91, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM, 5 );
+ bSizer176->Add( m_staticText91, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM, 5 );
- m_staticText9111 = new wxStaticText( m_panel39, wxID_ANY, _(")"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText9111->Wrap( -1 );
- m_staticText9111->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
+ m_staticText9111 = new wxStaticText( m_panel39, wxID_ANY, _(")"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText9111->Wrap( -1 );
+ m_staticText9111->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
- bSizer176->Add( m_staticText9111, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
+ bSizer176->Add( m_staticText9111, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
- bSizer160->Add( bSizer176, 0, wxEXPAND, 5 );
+ bSizer160->Add( bSizer176, 0, wxEXPAND, 5 );
- bSizerLockedFiles = new wxBoxSizer( wxHORIZONTAL );
+ bSizerLockedFiles = new wxBoxSizer( wxHORIZONTAL );
- m_checkBoxCopyLocked = new wxCheckBox( m_panel39, wxID_ANY, _("Copy locked files"), wxDefaultPosition, wxDefaultSize, 0 );
- m_checkBoxCopyLocked->SetValue(true);
- m_checkBoxCopyLocked->SetToolTip( _("Copy shared or locked files using the Volume Shadow Copy Service.") );
+ m_checkBoxCopyLocked = new wxCheckBox( m_panel39, wxID_ANY, _("Copy locked files"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_checkBoxCopyLocked->SetValue(true);
+ m_checkBoxCopyLocked->SetToolTip( _("Copy shared or locked files using the Volume Shadow Copy Service.") );
- bSizerLockedFiles->Add( m_checkBoxCopyLocked, 1, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
+ bSizerLockedFiles->Add( m_checkBoxCopyLocked, 1, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
- m_staticText921 = new wxStaticText( m_panel39, wxID_ANY, _("("), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText921->Wrap( -1 );
- m_staticText921->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
+ m_staticText921 = new wxStaticText( m_panel39, wxID_ANY, _("("), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText921->Wrap( -1 );
+ m_staticText921->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
- bSizerLockedFiles->Add( m_staticText921, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM, 5 );
+ bSizerLockedFiles->Add( m_staticText921, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM, 5 );
- m_staticText92 = new wxStaticText( m_panel39, wxID_ANY, _("requires administrator rights"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText92->Wrap( -1 );
- m_staticText92->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
+ m_staticText92 = new wxStaticText( m_panel39, wxID_ANY, _("requires administrator rights"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText92->Wrap( -1 );
+ m_staticText92->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
- bSizerLockedFiles->Add( m_staticText92, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM, 5 );
+ bSizerLockedFiles->Add( m_staticText92, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM, 5 );
- m_staticText922 = new wxStaticText( m_panel39, wxID_ANY, _(")"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText922->Wrap( -1 );
- m_staticText922->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
+ m_staticText922 = new wxStaticText( m_panel39, wxID_ANY, _(")"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText922->Wrap( -1 );
+ m_staticText922->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
- bSizerLockedFiles->Add( m_staticText922, 0, wxTOP|wxBOTTOM|wxRIGHT|wxALIGN_CENTER_VERTICAL, 5 );
+ bSizerLockedFiles->Add( m_staticText922, 0, wxTOP|wxBOTTOM|wxRIGHT|wxALIGN_CENTER_VERTICAL, 5 );
- bSizer160->Add( bSizerLockedFiles, 0, wxEXPAND, 5 );
+ bSizer160->Add( bSizerLockedFiles, 0, wxEXPAND, 5 );
- wxBoxSizer* bSizer178;
- bSizer178 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer178;
+ bSizer178 = new wxBoxSizer( wxHORIZONTAL );
- m_checkBoxCopyPermissions = new wxCheckBox( m_panel39, wxID_ANY, _("Copy file access permissions"), wxDefaultPosition, wxDefaultSize, 0 );
- m_checkBoxCopyPermissions->SetValue(true);
- m_checkBoxCopyPermissions->SetToolTip( _("Transfer file and folder permissions.") );
+ m_checkBoxCopyPermissions = new wxCheckBox( m_panel39, wxID_ANY, _("Copy file access permissions"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_checkBoxCopyPermissions->SetValue(true);
+ m_checkBoxCopyPermissions->SetToolTip( _("Transfer file and folder permissions.") );
- bSizer178->Add( m_checkBoxCopyPermissions, 1, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
+ bSizer178->Add( m_checkBoxCopyPermissions, 1, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
- m_staticText931 = new wxStaticText( m_panel39, wxID_ANY, _("("), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText931->Wrap( -1 );
- m_staticText931->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
+ m_staticText931 = new wxStaticText( m_panel39, wxID_ANY, _("("), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText931->Wrap( -1 );
+ m_staticText931->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
- bSizer178->Add( m_staticText931, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM, 5 );
+ bSizer178->Add( m_staticText931, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM, 5 );
- m_staticText93 = new wxStaticText( m_panel39, wxID_ANY, _("requires administrator rights"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText93->Wrap( -1 );
- m_staticText93->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
+ m_staticText93 = new wxStaticText( m_panel39, wxID_ANY, _("requires administrator rights"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText93->Wrap( -1 );
+ m_staticText93->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
- bSizer178->Add( m_staticText93, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM, 5 );
+ bSizer178->Add( m_staticText93, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM, 5 );
- m_staticText932 = new wxStaticText( m_panel39, wxID_ANY, _(")"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText932->Wrap( -1 );
- m_staticText932->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
+ m_staticText932 = new wxStaticText( m_panel39, wxID_ANY, _(")"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText932->Wrap( -1 );
+ m_staticText932->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
- bSizer178->Add( m_staticText932, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
+ bSizer178->Add( m_staticText932, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
- bSizer160->Add( bSizer178, 0, wxEXPAND, 5 );
+ bSizer160->Add( bSizer178, 0, wxEXPAND, 5 );
- bSizer186->Add( bSizer160, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
+ bSizer186->Add( bSizer160, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
- m_staticline39 = new wxStaticLine( m_panel39, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
- bSizer186->Add( m_staticline39, 0, wxEXPAND, 5 );
+ m_staticline39 = new wxStaticLine( m_panel39, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
+ bSizer186->Add( m_staticline39, 0, wxEXPAND, 5 );
- wxBoxSizer* bSizer293;
- bSizer293 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer293;
+ bSizer293 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapWarnings = new wxStaticBitmap( m_panel39, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer293->Add( m_bitmapWarnings, 0, wxALL, 5 );
+ m_bitmapWarnings = new wxStaticBitmap( m_panel39, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer293->Add( m_bitmapWarnings, 0, wxALL, 5 );
- wxBoxSizer* bSizer1881;
- bSizer1881 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer1881;
+ bSizer1881 = new wxBoxSizer( wxVERTICAL );
- m_staticTextResetDialogs = new wxStaticText( m_panel39, wxID_ANY, _("Show all permanently hidden dialogs and warning messages again"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextResetDialogs->Wrap( -1 );
- m_staticTextResetDialogs->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
+ m_staticTextResetDialogs = new wxStaticText( m_panel39, wxID_ANY, _("Show all permanently hidden dialogs and warning messages again"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextResetDialogs->Wrap( -1 );
+ m_staticTextResetDialogs->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
- bSizer1881->Add( m_staticTextResetDialogs, 0, 0, 5 );
+ bSizer1881->Add( m_staticTextResetDialogs, 0, 0, 5 );
- wxBoxSizer* bSizer292;
- bSizer292 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer292;
+ bSizer292 = new wxBoxSizer( wxHORIZONTAL );
- m_buttonRestoreDialogs = new wxButton( m_panel39, wxID_ANY, _("&Restore"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- bSizer292->Add( m_buttonRestoreDialogs, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_buttonRestoreDialogs = new wxButton( m_panel39, wxID_ANY, _("&Restore"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ bSizer292->Add( m_buttonRestoreDialogs, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_staticTextAllDialogsShown = new wxStaticText( m_panel39, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextAllDialogsShown->Wrap( -1 );
- bSizer292->Add( m_staticTextAllDialogsShown, 0, wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
+ m_staticTextAllDialogsShown = new wxStaticText( m_panel39, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextAllDialogsShown->Wrap( -1 );
+ bSizer292->Add( m_staticTextAllDialogsShown, 0, wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
- bSizer1881->Add( bSizer292, 0, wxTOP, 5 );
+ bSizer1881->Add( bSizer292, 0, wxTOP, 5 );
- bSizer293->Add( bSizer1881, 0, wxTOP|wxBOTTOM|wxRIGHT, 5 );
+ bSizer293->Add( bSizer1881, 0, wxTOP|wxBOTTOM|wxRIGHT, 5 );
- bSizer186->Add( bSizer293, 0, wxALL, 5 );
+ bSizer186->Add( bSizer293, 0, wxALL, 5 );
- bSizer166->Add( bSizer186, 0, wxEXPAND, 5 );
+ bSizer166->Add( bSizer186, 0, wxEXPAND, 5 );
- m_staticline191 = new wxStaticLine( m_panel39, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer166->Add( m_staticline191, 0, wxEXPAND, 5 );
+ m_staticline191 = new wxStaticLine( m_panel39, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer166->Add( m_staticline191, 0, wxEXPAND, 5 );
- wxBoxSizer* bSizer259;
- bSizer259 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer259;
+ bSizer259 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer258;
- bSizer258 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer258;
+ bSizer258 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapLogFile = new wxStaticBitmap( m_panel39, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer258->Add( m_bitmapLogFile, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
+ m_bitmapLogFile = new wxStaticBitmap( m_panel39, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer258->Add( m_bitmapLogFile, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
- m_staticText163 = new wxStaticText( m_panel39, wxID_ANY, _("Default log path:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText163->Wrap( -1 );
- bSizer258->Add( m_staticText163, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
+ m_staticText163 = new wxStaticText( m_panel39, wxID_ANY, _("Default log path:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText163->Wrap( -1 );
+ bSizer258->Add( m_staticText163, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
- m_hyperlinkLogFolder = new wxHyperlinkCtrl( m_panel39, wxID_ANY, _("dummy"), wxEmptyString, wxDefaultPosition, wxDefaultSize, wxHL_ALIGN_CENTRE|wxBORDER_NONE );
- bSizer258->Add( m_hyperlinkLogFolder, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
+ m_hyperlinkLogFolder = new wxHyperlinkCtrl( m_panel39, wxID_ANY, _("dummy"), wxEmptyString, wxDefaultPosition, wxDefaultSize, wxHL_ALIGN_CENTRE|wxBORDER_NONE );
+ bSizer258->Add( m_hyperlinkLogFolder, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
- bSizer259->Add( bSizer258, 0, wxALL, 5 );
+ bSizer259->Add( bSizer258, 0, wxALL, 5 );
- wxBoxSizer* bSizer299;
- bSizer299 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer299;
+ bSizer299 = new wxBoxSizer( wxVERTICAL );
- m_staticline83 = new wxStaticLine( m_panel39, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer299->Add( m_staticline83, 0, wxEXPAND, 5 );
+ m_staticline83 = new wxStaticLine( m_panel39, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer299->Add( m_staticline83, 0, wxEXPAND, 5 );
- wxBoxSizer* bSizer297;
- bSizer297 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer297;
+ bSizer297 = new wxBoxSizer( wxHORIZONTAL );
- m_staticline82 = new wxStaticLine( m_panel39, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
- bSizer297->Add( m_staticline82, 0, wxEXPAND, 5 );
+ m_staticline82 = new wxStaticLine( m_panel39, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
+ bSizer297->Add( m_staticline82, 0, wxEXPAND, 5 );
- wxBoxSizer* bSizer282;
- bSizer282 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer282;
+ bSizer282 = new wxBoxSizer( wxHORIZONTAL );
- m_checkBoxLogFilesMaxAge = new wxCheckBox( m_panel39, wxID_ANY, _("&Delete logs after x days:"), wxDefaultPosition, wxDefaultSize, 0 );
- bSizer282->Add( m_checkBoxLogFilesMaxAge, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
+ m_checkBoxLogFilesMaxAge = new wxCheckBox( m_panel39, wxID_ANY, _("&Delete logs after x days:"), wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer282->Add( m_checkBoxLogFilesMaxAge, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
- m_spinCtrlLogFilesMaxAge = new wxSpinCtrl( m_panel39, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( -1, -1 ), wxSP_ARROW_KEYS, 1, 2000000000, 1 );
- bSizer282->Add( m_spinCtrlLogFilesMaxAge, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
+ m_spinCtrlLogFilesMaxAge = new wxSpinCtrl( m_panel39, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( -1,-1 ), wxSP_ARROW_KEYS, 1, 2000000000, 1 );
+ bSizer282->Add( m_spinCtrlLogFilesMaxAge, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
- bSizer297->Add( bSizer282, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
+ bSizer297->Add( bSizer282, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
- m_staticline81 = new wxStaticLine( m_panel39, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
- bSizer297->Add( m_staticline81, 0, wxEXPAND, 5 );
+ m_staticline81 = new wxStaticLine( m_panel39, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
+ bSizer297->Add( m_staticline81, 0, wxEXPAND, 5 );
- wxBoxSizer* bSizer296;
- bSizer296 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer296;
+ bSizer296 = new wxBoxSizer( wxHORIZONTAL );
- m_staticText184 = new wxStaticText( m_panel39, wxID_ANY, _("Log file format:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText184->Wrap( -1 );
- bSizer296->Add( m_staticText184, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
+ m_staticText184 = new wxStaticText( m_panel39, wxID_ANY, _("Log file format:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText184->Wrap( -1 );
+ bSizer296->Add( m_staticText184, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
- wxFlexGridSizer* fgSizer251;
- fgSizer251 = new wxFlexGridSizer( 0, 1, 5, 0 );
- fgSizer251->SetFlexibleDirection( wxBOTH );
- fgSizer251->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
+ wxFlexGridSizer* fgSizer251;
+ fgSizer251 = new wxFlexGridSizer( 0, 1, 5, 0 );
+ fgSizer251->SetFlexibleDirection( wxBOTH );
+ fgSizer251->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
- m_radioBtnLogHtml = new wxRadioButton( m_panel39, wxID_ANY, _("&HTML"), wxDefaultPosition, wxDefaultSize, wxRB_GROUP );
- m_radioBtnLogHtml->SetValue( true );
- fgSizer251->Add( m_radioBtnLogHtml, 0, wxEXPAND, 5 );
+ m_radioBtnLogHtml = new wxRadioButton( m_panel39, wxID_ANY, _("&HTML"), wxDefaultPosition, wxDefaultSize, wxRB_GROUP );
+ m_radioBtnLogHtml->SetValue( true );
+ fgSizer251->Add( m_radioBtnLogHtml, 0, wxEXPAND, 5 );
- m_radioBtnLogText = new wxRadioButton( m_panel39, wxID_ANY, _("&Plain text"), wxDefaultPosition, wxDefaultSize, 0 );
- fgSizer251->Add( m_radioBtnLogText, 0, wxEXPAND, 5 );
+ m_radioBtnLogText = new wxRadioButton( m_panel39, wxID_ANY, _("&Plain text"), wxDefaultPosition, wxDefaultSize, 0 );
+ fgSizer251->Add( m_radioBtnLogText, 0, wxEXPAND, 5 );
- bSizer296->Add( fgSizer251, 0, wxTOP|wxBOTTOM|wxRIGHT, 5 );
+ bSizer296->Add( fgSizer251, 0, wxTOP|wxBOTTOM|wxRIGHT, 5 );
- bSizer297->Add( bSizer296, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
+ bSizer297->Add( bSizer296, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
- bSizer299->Add( bSizer297, 0, 0, 5 );
+ bSizer299->Add( bSizer297, 0, 0, 5 );
- bSizer259->Add( bSizer299, 0, wxALIGN_RIGHT|wxLEFT, 15 );
+ bSizer259->Add( bSizer299, 0, wxALIGN_RIGHT|wxLEFT, 15 );
- bSizer166->Add( bSizer259, 0, wxEXPAND, 5 );
+ bSizer166->Add( bSizer259, 0, wxEXPAND, 5 );
- m_staticline361 = new wxStaticLine( m_panel39, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer166->Add( m_staticline361, 0, wxEXPAND, 5 );
+ m_staticline361 = new wxStaticLine( m_panel39, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer166->Add( m_staticline361, 0, wxEXPAND, 5 );
- wxBoxSizer* bSizer288;
- bSizer288 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer288;
+ bSizer288 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer300;
- bSizer300 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer300;
+ bSizer300 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapNotificationSounds = new wxStaticBitmap( m_panel39, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer300->Add( m_bitmapNotificationSounds, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_bitmapNotificationSounds = new wxStaticBitmap( m_panel39, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer300->Add( m_bitmapNotificationSounds, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_staticText851 = new wxStaticText( m_panel39, wxID_ANY, _("Notification sounds:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText851->Wrap( -1 );
- bSizer300->Add( m_staticText851, 0, wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
+ m_staticText851 = new wxStaticText( m_panel39, wxID_ANY, _("Notification sounds:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText851->Wrap( -1 );
+ bSizer300->Add( m_staticText851, 0, wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
- bSizer288->Add( bSizer300, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
+ bSizer288->Add( bSizer300, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
- wxBoxSizer* bSizer301;
- bSizer301 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer301;
+ bSizer301 = new wxBoxSizer( wxHORIZONTAL );
- bSizer301->Add( 15, 0, 0, 0, 5 );
+ bSizer301->Add( 15, 0, 0, 0, 5 );
- ffgSizer11 = new wxFlexGridSizer( 0, 3, 0, 5 );
- ffgSizer11->AddGrowableCol( 2 );
- ffgSizer11->SetFlexibleDirection( wxBOTH );
- ffgSizer11->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
+ ffgSizer11 = new wxFlexGridSizer( 0, 3, 0, 5 );
+ ffgSizer11->AddGrowableCol( 2 );
+ ffgSizer11->SetFlexibleDirection( wxBOTH );
+ ffgSizer11->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
- m_bitmapCompareDone = new wxStaticBitmap( m_panel39, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- ffgSizer11->Add( m_bitmapCompareDone, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_bitmapCompareDone = new wxStaticBitmap( m_panel39, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ ffgSizer11->Add( m_bitmapCompareDone, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_staticText171 = new wxStaticText( m_panel39, wxID_ANY, _("Comparison finished:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText171->Wrap( -1 );
- m_staticText171->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
+ m_staticText171 = new wxStaticText( m_panel39, wxID_ANY, _("Comparison finished:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText171->Wrap( -1 );
+ m_staticText171->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
- ffgSizer11->Add( m_staticText171, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ ffgSizer11->Add( m_staticText171, 0, wxALIGN_CENTER_VERTICAL, 5 );
- wxBoxSizer* bSizer290;
- bSizer290 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer290;
+ bSizer290 = new wxBoxSizer( wxHORIZONTAL );
- m_bpButtonPlayCompareDone = new wxBitmapButton( m_panel39, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|0 );
- bSizer290->Add( m_bpButtonPlayCompareDone, 0, wxEXPAND, 5 );
+ m_bpButtonPlayCompareDone = new wxBitmapButton( m_panel39, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|0 );
+ bSizer290->Add( m_bpButtonPlayCompareDone, 0, wxEXPAND, 5 );
- m_textCtrlSoundPathCompareDone = new wxTextCtrl( m_panel39, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer290->Add( m_textCtrlSoundPathCompareDone, 1, wxALIGN_CENTER_VERTICAL, 5 );
+ m_textCtrlSoundPathCompareDone = new wxTextCtrl( m_panel39, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer290->Add( m_textCtrlSoundPathCompareDone, 1, wxALIGN_CENTER_VERTICAL, 5 );
- m_buttonSelectSoundCompareDone = new wxButton( m_panel39, wxID_ANY, _("Browse"), wxDefaultPosition, wxDefaultSize, 0 );
- m_buttonSelectSoundCompareDone->SetToolTip( _("Select a folder") );
+ m_buttonSelectSoundCompareDone = new wxButton( m_panel39, wxID_ANY, _("Browse"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_buttonSelectSoundCompareDone->SetToolTip( _("Select a folder") );
- bSizer290->Add( m_buttonSelectSoundCompareDone, 0, wxEXPAND, 5 );
+ bSizer290->Add( m_buttonSelectSoundCompareDone, 0, wxEXPAND, 5 );
- ffgSizer11->Add( bSizer290, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
+ ffgSizer11->Add( bSizer290, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
- m_bitmapSyncDone = new wxStaticBitmap( m_panel39, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- ffgSizer11->Add( m_bitmapSyncDone, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_bitmapSyncDone = new wxStaticBitmap( m_panel39, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ ffgSizer11->Add( m_bitmapSyncDone, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_staticText1711 = new wxStaticText( m_panel39, wxID_ANY, _("Synchronization finished:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText1711->Wrap( -1 );
- m_staticText1711->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
+ m_staticText1711 = new wxStaticText( m_panel39, wxID_ANY, _("Synchronization finished:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText1711->Wrap( -1 );
+ m_staticText1711->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
- ffgSizer11->Add( m_staticText1711, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ ffgSizer11->Add( m_staticText1711, 0, wxALIGN_CENTER_VERTICAL, 5 );
- wxBoxSizer* bSizer2901;
- bSizer2901 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer2901;
+ bSizer2901 = new wxBoxSizer( wxHORIZONTAL );
- m_bpButtonPlaySyncDone = new wxBitmapButton( m_panel39, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|0 );
- bSizer2901->Add( m_bpButtonPlaySyncDone, 0, wxEXPAND, 5 );
+ m_bpButtonPlaySyncDone = new wxBitmapButton( m_panel39, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|0 );
+ bSizer2901->Add( m_bpButtonPlaySyncDone, 0, wxEXPAND, 5 );
- m_textCtrlSoundPathSyncDone = new wxTextCtrl( m_panel39, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer2901->Add( m_textCtrlSoundPathSyncDone, 1, wxALIGN_CENTER_VERTICAL, 5 );
+ m_textCtrlSoundPathSyncDone = new wxTextCtrl( m_panel39, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer2901->Add( m_textCtrlSoundPathSyncDone, 1, wxALIGN_CENTER_VERTICAL, 5 );
- m_buttonSelectSoundSyncDone = new wxButton( m_panel39, wxID_ANY, _("Browse"), wxDefaultPosition, wxDefaultSize, 0 );
- m_buttonSelectSoundSyncDone->SetToolTip( _("Select a folder") );
+ m_buttonSelectSoundSyncDone = new wxButton( m_panel39, wxID_ANY, _("Browse"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_buttonSelectSoundSyncDone->SetToolTip( _("Select a folder") );
- bSizer2901->Add( m_buttonSelectSoundSyncDone, 0, wxEXPAND, 5 );
+ bSizer2901->Add( m_buttonSelectSoundSyncDone, 0, wxEXPAND, 5 );
- ffgSizer11->Add( bSizer2901, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
+ ffgSizer11->Add( bSizer2901, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
- m_bitmapAlertPending = new wxStaticBitmap( m_panel39, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- ffgSizer11->Add( m_bitmapAlertPending, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_bitmapAlertPending = new wxStaticBitmap( m_panel39, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ ffgSizer11->Add( m_bitmapAlertPending, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_staticText17111 = new wxStaticText( m_panel39, wxID_ANY, _("Unattended error message:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText17111->Wrap( -1 );
- m_staticText17111->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
+ m_staticText17111 = new wxStaticText( m_panel39, wxID_ANY, _("Unattended error message:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText17111->Wrap( -1 );
+ m_staticText17111->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
- ffgSizer11->Add( m_staticText17111, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ ffgSizer11->Add( m_staticText17111, 0, wxALIGN_CENTER_VERTICAL, 5 );
- wxBoxSizer* bSizer29011;
- bSizer29011 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer29011;
+ bSizer29011 = new wxBoxSizer( wxHORIZONTAL );
- m_bpButtonPlayAlertPending = new wxBitmapButton( m_panel39, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|0 );
- bSizer29011->Add( m_bpButtonPlayAlertPending, 0, wxEXPAND, 5 );
+ m_bpButtonPlayAlertPending = new wxBitmapButton( m_panel39, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|0 );
+ bSizer29011->Add( m_bpButtonPlayAlertPending, 0, wxEXPAND, 5 );
- m_textCtrlSoundPathAlertPending = new wxTextCtrl( m_panel39, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer29011->Add( m_textCtrlSoundPathAlertPending, 1, wxALIGN_CENTER_VERTICAL, 5 );
+ m_textCtrlSoundPathAlertPending = new wxTextCtrl( m_panel39, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer29011->Add( m_textCtrlSoundPathAlertPending, 1, wxALIGN_CENTER_VERTICAL, 5 );
- m_buttonSelectSoundAlertPending = new wxButton( m_panel39, wxID_ANY, _("Browse"), wxDefaultPosition, wxDefaultSize, 0 );
- m_buttonSelectSoundAlertPending->SetToolTip( _("Select a folder") );
+ m_buttonSelectSoundAlertPending = new wxButton( m_panel39, wxID_ANY, _("Browse"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_buttonSelectSoundAlertPending->SetToolTip( _("Select a folder") );
- bSizer29011->Add( m_buttonSelectSoundAlertPending, 0, wxEXPAND, 5 );
+ bSizer29011->Add( m_buttonSelectSoundAlertPending, 0, wxEXPAND, 5 );
- ffgSizer11->Add( bSizer29011, 1, wxEXPAND, 5 );
+ ffgSizer11->Add( bSizer29011, 1, wxEXPAND, 5 );
- bSizer301->Add( ffgSizer11, 1, wxALL, 5 );
+ bSizer301->Add( ffgSizer11, 1, wxALL, 5 );
- bSizer288->Add( bSizer301, 0, wxEXPAND, 5 );
+ bSizer288->Add( bSizer301, 0, wxEXPAND, 5 );
- bSizer166->Add( bSizer288, 0, wxEXPAND|wxALL, 5 );
+ bSizer166->Add( bSizer288, 0, wxEXPAND|wxALL, 5 );
- m_staticline3611 = new wxStaticLine( m_panel39, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer166->Add( m_staticline3611, 0, wxEXPAND, 5 );
+ m_staticline3611 = new wxStaticLine( m_panel39, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer166->Add( m_staticline3611, 0, wxEXPAND, 5 );
- wxBoxSizer* bSizer181;
- bSizer181 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer181;
+ bSizer181 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer289;
- bSizer289 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer289;
+ bSizer289 = new wxBoxSizer( wxHORIZONTAL );
- wxBoxSizer* bSizer2991;
- bSizer2991 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer2991;
+ bSizer2991 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer2971;
- bSizer2971 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer2971;
+ bSizer2971 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapConsole = new wxStaticBitmap( m_panel39, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer2971->Add( m_bitmapConsole, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_bitmapConsole = new wxStaticBitmap( m_panel39, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer2971->Add( m_bitmapConsole, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_staticText85 = new wxStaticText( m_panel39, wxID_ANY, _("Customize context menu:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText85->Wrap( -1 );
- bSizer2971->Add( m_staticText85, 0, wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
+ m_staticText85 = new wxStaticText( m_panel39, wxID_ANY, _("Customize context menu:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText85->Wrap( -1 );
+ bSizer2971->Add( m_staticText85, 0, wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
- bSizer2991->Add( bSizer2971, 0, 0, 5 );
+ bSizer2991->Add( bSizer2971, 0, 0, 5 );
- bSizer2991->Add( 0, 0, 1, wxEXPAND, 5 );
+ bSizer2991->Add( 0, 0, 1, wxEXPAND, 5 );
- wxBoxSizer* bSizer193;
- bSizer193 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer193;
+ bSizer193 = new wxBoxSizer( wxHORIZONTAL );
- m_bpButtonAddRow = new wxBitmapButton( m_panel39, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- bSizer193->Add( m_bpButtonAddRow, 0, wxALIGN_BOTTOM, 5 );
+ m_bpButtonAddRow = new wxBitmapButton( m_panel39, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ bSizer193->Add( m_bpButtonAddRow, 0, wxALIGN_BOTTOM, 5 );
- m_bpButtonRemoveRow = new wxBitmapButton( m_panel39, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), wxBU_AUTODRAW|0 );
- bSizer193->Add( m_bpButtonRemoveRow, 0, wxALIGN_BOTTOM, 5 );
+ m_bpButtonRemoveRow = new wxBitmapButton( m_panel39, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), wxBU_AUTODRAW|0 );
+ bSizer193->Add( m_bpButtonRemoveRow, 0, wxALIGN_BOTTOM, 5 );
- bSizer2991->Add( bSizer193, 0, 0, 5 );
+ bSizer2991->Add( bSizer193, 0, 0, 5 );
- bSizer289->Add( bSizer2991, 1, wxEXPAND, 5 );
+ bSizer289->Add( bSizer2991, 1, wxEXPAND, 5 );
- wxFlexGridSizer* fgSizer25;
- fgSizer25 = new wxFlexGridSizer( 0, 2, 0, 10 );
- fgSizer25->SetFlexibleDirection( wxBOTH );
- fgSizer25->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
+ wxFlexGridSizer* fgSizer25;
+ fgSizer25 = new wxFlexGridSizer( 0, 2, 0, 10 );
+ fgSizer25->SetFlexibleDirection( wxBOTH );
+ fgSizer25->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
- m_staticText174 = new wxStaticText( m_panel39, wxID_ANY, _("%item_path%"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText174->Wrap( -1 );
- m_staticText174->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_MODERN, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxEmptyString ) );
- m_staticText174->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
+ m_staticText174 = new wxStaticText( m_panel39, wxID_ANY, _("%item_path%"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText174->Wrap( -1 );
+ m_staticText174->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_MODERN, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxEmptyString ) );
+ m_staticText174->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
- fgSizer25->Add( m_staticText174, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ fgSizer25->Add( m_staticText174, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_staticText175 = new wxStaticText( m_panel39, wxID_ANY, _("Full file or folder path"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText175->Wrap( -1 );
- m_staticText175->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
+ m_staticText175 = new wxStaticText( m_panel39, wxID_ANY, _("Full file or folder path"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText175->Wrap( -1 );
+ m_staticText175->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
- fgSizer25->Add( m_staticText175, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ fgSizer25->Add( m_staticText175, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_staticText178 = new wxStaticText( m_panel39, wxID_ANY, _("%local_path%"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText178->Wrap( -1 );
- m_staticText178->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_MODERN, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxEmptyString ) );
- m_staticText178->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
+ m_staticText178 = new wxStaticText( m_panel39, wxID_ANY, _("%local_path%"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText178->Wrap( -1 );
+ m_staticText178->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_MODERN, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxEmptyString ) );
+ m_staticText178->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
- fgSizer25->Add( m_staticText178, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ fgSizer25->Add( m_staticText178, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_staticText179 = new wxStaticText( m_panel39, wxID_ANY, _("Temporary local copy for SFTP and MTP storage"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText179->Wrap( -1 );
- m_staticText179->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
+ m_staticText179 = new wxStaticText( m_panel39, wxID_ANY, _("Temporary local copy for SFTP and MTP storage"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText179->Wrap( -1 );
+ m_staticText179->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
- fgSizer25->Add( m_staticText179, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ fgSizer25->Add( m_staticText179, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_staticText189 = new wxStaticText( m_panel39, wxID_ANY, _("%item_name%"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText189->Wrap( -1 );
- m_staticText189->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_MODERN, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxEmptyString ) );
- m_staticText189->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
+ m_staticText189 = new wxStaticText( m_panel39, wxID_ANY, _("%item_name%"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText189->Wrap( -1 );
+ m_staticText189->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_MODERN, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxEmptyString ) );
+ m_staticText189->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
- fgSizer25->Add( m_staticText189, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ fgSizer25->Add( m_staticText189, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_staticText190 = new wxStaticText( m_panel39, wxID_ANY, _("File or folder name"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText190->Wrap( -1 );
- m_staticText190->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
+ m_staticText190 = new wxStaticText( m_panel39, wxID_ANY, _("File or folder name"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText190->Wrap( -1 );
+ m_staticText190->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
- fgSizer25->Add( m_staticText190, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ fgSizer25->Add( m_staticText190, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_staticText176 = new wxStaticText( m_panel39, wxID_ANY, _("%parent_path%"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText176->Wrap( -1 );
- m_staticText176->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_MODERN, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxEmptyString ) );
- m_staticText176->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
+ m_staticText176 = new wxStaticText( m_panel39, wxID_ANY, _("%parent_path%"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText176->Wrap( -1 );
+ m_staticText176->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_MODERN, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxEmptyString ) );
+ m_staticText176->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
- fgSizer25->Add( m_staticText176, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ fgSizer25->Add( m_staticText176, 0, wxALIGN_CENTER_VERTICAL, 5 );
- wxBoxSizer* bSizer298;
- bSizer298 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer298;
+ bSizer298 = new wxBoxSizer( wxHORIZONTAL );
- m_staticText177 = new wxStaticText( m_panel39, wxID_ANY, _("Parent folder path"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText177->Wrap( -1 );
- m_staticText177->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
+ m_staticText177 = new wxStaticText( m_panel39, wxID_ANY, _("Parent folder path"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText177->Wrap( -1 );
+ m_staticText177->SetForegroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_GRAYTEXT ) );
- bSizer298->Add( m_staticText177, 0, wxRIGHT|wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer298->Add( m_staticText177, 0, wxRIGHT|wxALIGN_CENTER_VERTICAL, 5 );
- bSizer298->Add( 0, 0, 1, 0, 5 );
+ bSizer298->Add( 0, 0, 1, 0, 5 );
- m_hyperlink17 = new wxHyperlinkCtrl( m_panel39, wxID_ANY, _("Show examples"), wxT("https://freefilesync.org/manual.php?topic=external-applications"), wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE );
- m_hyperlink17->SetToolTip( _("https://freefilesync.org/manual.php?topic=external-applications") );
+ m_hyperlink17 = new wxHyperlinkCtrl( m_panel39, wxID_ANY, _("Show examples"), wxT("https://freefilesync.org/manual.php?topic=external-applications"), wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE );
+ m_hyperlink17->SetToolTip( _("https://freefilesync.org/manual.php?topic=external-applications") );
- bSizer298->Add( m_hyperlink17, 0, wxLEFT|wxALIGN_BOTTOM, 5 );
+ bSizer298->Add( m_hyperlink17, 0, wxLEFT|wxALIGN_BOTTOM, 5 );
- fgSizer25->Add( bSizer298, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
+ fgSizer25->Add( bSizer298, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
- fgSizer25->Add( 0, 10, 0, 0, 5 );
+ fgSizer25->Add( 0, 10, 0, 0, 5 );
- fgSizer25->Add( 0, 0, 0, 0, 5 );
+ fgSizer25->Add( 0, 0, 0, 0, 5 );
- bSizer289->Add( fgSizer25, 0, wxLEFT, 5 );
+ bSizer289->Add( fgSizer25, 0, wxLEFT, 5 );
- bSizer181->Add( bSizer289, 0, wxEXPAND, 5 );
+ bSizer181->Add( bSizer289, 0, wxEXPAND, 5 );
- m_gridCustomCommand = new wxGrid( m_panel39, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 );
+ m_gridCustomCommand = new wxGrid( m_panel39, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 );
- // Grid
- m_gridCustomCommand->CreateGrid( 3, 2 );
- m_gridCustomCommand->EnableEditing( true );
- m_gridCustomCommand->EnableGridLines( true );
- m_gridCustomCommand->EnableDragGridSize( false );
- m_gridCustomCommand->SetMargins( 0, 0 );
+ // Grid
+ m_gridCustomCommand->CreateGrid( 3, 2 );
+ m_gridCustomCommand->EnableEditing( true );
+ m_gridCustomCommand->EnableGridLines( true );
+ m_gridCustomCommand->EnableDragGridSize( false );
+ m_gridCustomCommand->SetMargins( 0, 0 );
- // Columns
- m_gridCustomCommand->EnableDragColMove( false );
- m_gridCustomCommand->EnableDragColSize( true );
- m_gridCustomCommand->SetColLabelValue( 0, _("Description") );
- m_gridCustomCommand->SetColLabelValue( 1, _("Command line") );
- m_gridCustomCommand->SetColLabelSize( -1 );
- m_gridCustomCommand->SetColLabelAlignment( wxALIGN_CENTER, wxALIGN_CENTER );
+ // Columns
+ m_gridCustomCommand->EnableDragColMove( false );
+ m_gridCustomCommand->EnableDragColSize( true );
+ m_gridCustomCommand->SetColLabelValue( 0, _("Description") );
+ m_gridCustomCommand->SetColLabelValue( 1, _("Command line") );
+ m_gridCustomCommand->SetColLabelSize( -1 );
+ m_gridCustomCommand->SetColLabelAlignment( wxALIGN_CENTER, wxALIGN_CENTER );
- // Rows
- m_gridCustomCommand->EnableDragRowSize( false );
- m_gridCustomCommand->SetRowLabelSize( 1 );
- m_gridCustomCommand->SetRowLabelAlignment( wxALIGN_CENTER, wxALIGN_CENTER );
+ // Rows
+ m_gridCustomCommand->EnableDragRowSize( false );
+ m_gridCustomCommand->SetRowLabelSize( 1 );
+ m_gridCustomCommand->SetRowLabelAlignment( wxALIGN_CENTER, wxALIGN_CENTER );
- // Label Appearance
+ // Label Appearance
- // Cell Defaults
- m_gridCustomCommand->SetDefaultCellAlignment( wxALIGN_LEFT, wxALIGN_TOP );
- bSizer181->Add( m_gridCustomCommand, 1, wxEXPAND, 5 );
+ // Cell Defaults
+ m_gridCustomCommand->SetDefaultCellAlignment( wxALIGN_LEFT, wxALIGN_TOP );
+ bSizer181->Add( m_gridCustomCommand, 1, wxEXPAND, 5 );
- bSizer166->Add( bSizer181, 1, wxEXPAND|wxALL, 10 );
+ bSizer166->Add( bSizer181, 1, wxEXPAND|wxALL, 10 );
- m_panel39->SetSizer( bSizer166 );
- m_panel39->Layout();
- bSizer166->Fit( m_panel39 );
- bSizer95->Add( m_panel39, 1, wxEXPAND, 5 );
+ m_panel39->SetSizer( bSizer166 );
+ m_panel39->Layout();
+ bSizer166->Fit( m_panel39 );
+ bSizer95->Add( m_panel39, 1, wxEXPAND, 5 );
- m_staticline36 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer95->Add( m_staticline36, 0, wxEXPAND, 5 );
+ m_staticline36 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer95->Add( m_staticline36, 0, wxEXPAND, 5 );
- bSizerStdButtons = new wxBoxSizer( wxHORIZONTAL );
+ bSizerStdButtons = new wxBoxSizer( wxHORIZONTAL );
- m_buttonDefault = new wxButton( this, wxID_DEFAULT, _("&Default"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- bSizerStdButtons->Add( m_buttonDefault, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
+ m_buttonDefault = new wxButton( this, wxID_DEFAULT, _("&Default"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ bSizerStdButtons->Add( m_buttonDefault, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
- bSizerStdButtons->Add( 0, 0, 1, 0, 5 );
+ bSizerStdButtons->Add( 0, 0, 1, 0, 5 );
- m_buttonOkay = new wxButton( this, wxID_OK, _("OK"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
+ m_buttonOkay = new wxButton( this, wxID_OK, _("OK"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
- m_buttonOkay->SetDefault();
- m_buttonOkay->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_buttonOkay->SetDefault();
+ m_buttonOkay->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- bSizerStdButtons->Add( m_buttonOkay, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
+ bSizerStdButtons->Add( m_buttonOkay, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
- m_buttonCancel = new wxButton( this, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- bSizerStdButtons->Add( m_buttonCancel, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
+ m_buttonCancel = new wxButton( this, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ bSizerStdButtons->Add( m_buttonCancel, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
- bSizer95->Add( bSizerStdButtons, 0, wxEXPAND, 5 );
+ bSizer95->Add( bSizerStdButtons, 0, wxEXPAND, 5 );
- this->SetSizer( bSizer95 );
- this->Layout();
- bSizer95->Fit( this );
+ this->SetSizer( bSizer95 );
+ this->Layout();
+ bSizer95->Fit( this );
- this->Centre( wxBOTH );
+ this->Centre( wxBOTH );
- // Connect Events
- this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( OptionsDlgGenerated::onClose ) );
- m_buttonRestoreDialogs->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( OptionsDlgGenerated::onRestoreDialogs ), NULL, this );
- m_hyperlinkLogFolder->Connect( wxEVT_COMMAND_HYPERLINK, wxHyperlinkEventHandler( OptionsDlgGenerated::onShowLogFolder ), NULL, this );
- m_checkBoxLogFilesMaxAge->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( OptionsDlgGenerated::onToggleLogfilesLimit ), NULL, this );
- m_bpButtonPlayCompareDone->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( OptionsDlgGenerated::onPlayCompareDone ), NULL, this );
- m_textCtrlSoundPathCompareDone->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( OptionsDlgGenerated::onChangeSoundFilePath ), NULL, this );
- m_buttonSelectSoundCompareDone->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( OptionsDlgGenerated::onSelectSoundCompareDone ), NULL, this );
- m_bpButtonPlaySyncDone->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( OptionsDlgGenerated::onPlaySyncDone ), NULL, this );
- m_textCtrlSoundPathSyncDone->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( OptionsDlgGenerated::onChangeSoundFilePath ), NULL, this );
- m_buttonSelectSoundSyncDone->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( OptionsDlgGenerated::onSelectSoundSyncDone ), NULL, this );
- m_bpButtonPlayAlertPending->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( OptionsDlgGenerated::onPlayAlertPending ), NULL, this );
- m_textCtrlSoundPathAlertPending->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( OptionsDlgGenerated::onChangeSoundFilePath ), NULL, this );
- m_buttonSelectSoundAlertPending->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( OptionsDlgGenerated::onSelectSoundAlertPending ), NULL, this );
- m_bpButtonAddRow->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( OptionsDlgGenerated::onAddRow ), NULL, this );
- m_bpButtonRemoveRow->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( OptionsDlgGenerated::onRemoveRow ), NULL, this );
- m_buttonDefault->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( OptionsDlgGenerated::onDefault ), NULL, this );
- m_buttonOkay->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( OptionsDlgGenerated::onOkay ), NULL, this );
- m_buttonCancel->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( OptionsDlgGenerated::onCancel ), NULL, this );
+ // Connect Events
+ this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( OptionsDlgGenerated::onClose ) );
+ m_buttonRestoreDialogs->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( OptionsDlgGenerated::onRestoreDialogs ), NULL, this );
+ m_hyperlinkLogFolder->Connect( wxEVT_COMMAND_HYPERLINK, wxHyperlinkEventHandler( OptionsDlgGenerated::onShowLogFolder ), NULL, this );
+ m_checkBoxLogFilesMaxAge->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( OptionsDlgGenerated::onToggleLogfilesLimit ), NULL, this );
+ m_bpButtonPlayCompareDone->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( OptionsDlgGenerated::onPlayCompareDone ), NULL, this );
+ m_textCtrlSoundPathCompareDone->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( OptionsDlgGenerated::onChangeSoundFilePath ), NULL, this );
+ m_buttonSelectSoundCompareDone->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( OptionsDlgGenerated::onSelectSoundCompareDone ), NULL, this );
+ m_bpButtonPlaySyncDone->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( OptionsDlgGenerated::onPlaySyncDone ), NULL, this );
+ m_textCtrlSoundPathSyncDone->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( OptionsDlgGenerated::onChangeSoundFilePath ), NULL, this );
+ m_buttonSelectSoundSyncDone->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( OptionsDlgGenerated::onSelectSoundSyncDone ), NULL, this );
+ m_bpButtonPlayAlertPending->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( OptionsDlgGenerated::onPlayAlertPending ), NULL, this );
+ m_textCtrlSoundPathAlertPending->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( OptionsDlgGenerated::onChangeSoundFilePath ), NULL, this );
+ m_buttonSelectSoundAlertPending->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( OptionsDlgGenerated::onSelectSoundAlertPending ), NULL, this );
+ m_bpButtonAddRow->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( OptionsDlgGenerated::onAddRow ), NULL, this );
+ m_bpButtonRemoveRow->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( OptionsDlgGenerated::onRemoveRow ), NULL, this );
+ m_buttonDefault->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( OptionsDlgGenerated::onDefault ), NULL, this );
+ m_buttonOkay->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( OptionsDlgGenerated::onOkay ), NULL, this );
+ m_buttonCancel->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( OptionsDlgGenerated::onCancel ), NULL, this );
}
OptionsDlgGenerated::~OptionsDlgGenerated()
@@ -4927,22 +4949,22 @@ OptionsDlgGenerated::~OptionsDlgGenerated()
TooltipDlgGenerated::TooltipDlgGenerated( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style )
{
- this->SetSizeHints( wxDefaultSize, wxDefaultSize );
+ this->SetSizeHints( wxDefaultSize, wxDefaultSize );
- wxBoxSizer* bSizer158;
- bSizer158 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer158;
+ bSizer158 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapLeft = new wxStaticBitmap( this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer158->Add( m_bitmapLeft, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
+ m_bitmapLeft = new wxStaticBitmap( this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer158->Add( m_bitmapLeft, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
- m_staticTextMain = new wxStaticText( this, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextMain->Wrap( 600 );
- bSizer158->Add( m_staticTextMain, 0, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ m_staticTextMain = new wxStaticText( this, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextMain->Wrap( 600 );
+ bSizer158->Add( m_staticTextMain, 0, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- this->SetSizer( bSizer158 );
- this->Layout();
- bSizer158->Fit( this );
+ this->SetSizer( bSizer158 );
+ this->Layout();
+ bSizer158->Fit( this );
}
TooltipDlgGenerated::~TooltipDlgGenerated()
@@ -4951,61 +4973,61 @@ TooltipDlgGenerated::~TooltipDlgGenerated()
SelectTimespanDlgGenerated::SelectTimespanDlgGenerated( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style )
{
- this->SetSizeHints( wxDefaultSize, wxDefaultSize );
- this->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
+ this->SetSizeHints( wxDefaultSize, wxDefaultSize );
+ this->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
- wxBoxSizer* bSizer96;
- bSizer96 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer96;
+ bSizer96 = new wxBoxSizer( wxVERTICAL );
- m_panel35 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panel35->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ m_panel35 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panel35->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- wxBoxSizer* bSizer98;
- bSizer98 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer98;
+ bSizer98 = new wxBoxSizer( wxHORIZONTAL );
- m_calendarFrom = new wxCalendarCtrl( m_panel35, wxID_ANY, wxDefaultDateTime, wxDefaultPosition, wxDefaultSize, wxCAL_SHOW_HOLIDAYS|wxCAL_SHOW_SURROUNDING_WEEKS|wxBORDER_NONE );
- bSizer98->Add( m_calendarFrom, 0, wxTOP|wxBOTTOM|wxLEFT, 10 );
+ m_calendarFrom = new wxCalendarCtrl( m_panel35, wxID_ANY, wxDefaultDateTime, wxDefaultPosition, wxDefaultSize, wxCAL_SHOW_HOLIDAYS|wxCAL_SHOW_SURROUNDING_WEEKS|wxBORDER_NONE );
+ bSizer98->Add( m_calendarFrom, 0, wxTOP|wxBOTTOM|wxLEFT, 10 );
- m_calendarTo = new wxCalendarCtrl( m_panel35, wxID_ANY, wxDefaultDateTime, wxDefaultPosition, wxDefaultSize, wxCAL_SHOW_HOLIDAYS|wxCAL_SHOW_SURROUNDING_WEEKS|wxBORDER_NONE );
- bSizer98->Add( m_calendarTo, 0, wxALL, 10 );
+ m_calendarTo = new wxCalendarCtrl( m_panel35, wxID_ANY, wxDefaultDateTime, wxDefaultPosition, wxDefaultSize, wxCAL_SHOW_HOLIDAYS|wxCAL_SHOW_SURROUNDING_WEEKS|wxBORDER_NONE );
+ bSizer98->Add( m_calendarTo, 0, wxALL, 10 );
- m_panel35->SetSizer( bSizer98 );
- m_panel35->Layout();
- bSizer98->Fit( m_panel35 );
- bSizer96->Add( m_panel35, 0, wxEXPAND, 5 );
+ m_panel35->SetSizer( bSizer98 );
+ m_panel35->Layout();
+ bSizer98->Fit( m_panel35 );
+ bSizer96->Add( m_panel35, 0, wxEXPAND, 5 );
- m_staticline21 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer96->Add( m_staticline21, 0, wxEXPAND, 5 );
+ m_staticline21 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer96->Add( m_staticline21, 0, wxEXPAND, 5 );
- bSizerStdButtons = new wxBoxSizer( wxHORIZONTAL );
+ bSizerStdButtons = new wxBoxSizer( wxHORIZONTAL );
- m_buttonOkay = new wxButton( this, wxID_OK, _("OK"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
+ m_buttonOkay = new wxButton( this, wxID_OK, _("OK"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
- m_buttonOkay->SetDefault();
- m_buttonOkay->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_buttonOkay->SetDefault();
+ m_buttonOkay->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- bSizerStdButtons->Add( m_buttonOkay, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
+ bSizerStdButtons->Add( m_buttonOkay, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
- m_buttonCancel = new wxButton( this, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- bSizerStdButtons->Add( m_buttonCancel, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
+ m_buttonCancel = new wxButton( this, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ bSizerStdButtons->Add( m_buttonCancel, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
- bSizer96->Add( bSizerStdButtons, 0, wxALIGN_RIGHT, 5 );
+ bSizer96->Add( bSizerStdButtons, 0, wxALIGN_RIGHT, 5 );
- this->SetSizer( bSizer96 );
- this->Layout();
- bSizer96->Fit( this );
+ this->SetSizer( bSizer96 );
+ this->Layout();
+ bSizer96->Fit( this );
- this->Centre( wxBOTH );
+ this->Centre( wxBOTH );
- // Connect Events
- this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( SelectTimespanDlgGenerated::onClose ) );
- m_calendarFrom->Connect( wxEVT_CALENDAR_SEL_CHANGED, wxCalendarEventHandler( SelectTimespanDlgGenerated::onChangeSelectionFrom ), NULL, this );
- m_calendarTo->Connect( wxEVT_CALENDAR_SEL_CHANGED, wxCalendarEventHandler( SelectTimespanDlgGenerated::onChangeSelectionTo ), NULL, this );
- m_buttonOkay->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( SelectTimespanDlgGenerated::onOkay ), NULL, this );
- m_buttonCancel->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( SelectTimespanDlgGenerated::onCancel ), NULL, this );
+ // Connect Events
+ this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( SelectTimespanDlgGenerated::onClose ) );
+ m_calendarFrom->Connect( wxEVT_CALENDAR_SEL_CHANGED, wxCalendarEventHandler( SelectTimespanDlgGenerated::onChangeSelectionFrom ), NULL, this );
+ m_calendarTo->Connect( wxEVT_CALENDAR_SEL_CHANGED, wxCalendarEventHandler( SelectTimespanDlgGenerated::onChangeSelectionTo ), NULL, this );
+ m_buttonOkay->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( SelectTimespanDlgGenerated::onOkay ), NULL, this );
+ m_buttonCancel->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( SelectTimespanDlgGenerated::onCancel ), NULL, this );
}
SelectTimespanDlgGenerated::~SelectTimespanDlgGenerated()
@@ -5014,265 +5036,265 @@ SelectTimespanDlgGenerated::~SelectTimespanDlgGenerated()
AboutDlgGenerated::AboutDlgGenerated( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style )
{
- this->SetSizeHints( wxDefaultSize, wxDefaultSize );
- this->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
+ this->SetSizeHints( wxDefaultSize, wxDefaultSize );
+ this->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
- wxBoxSizer* bSizer31;
- bSizer31 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer31;
+ bSizer31 = new wxBoxSizer( wxVERTICAL );
- m_panel41 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panel41->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ m_panel41 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panel41->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- wxBoxSizer* bSizer174;
- bSizer174 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer174;
+ bSizer174 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapLogoLeft = new wxStaticBitmap( m_panel41, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer174->Add( m_bitmapLogoLeft, 0, wxBOTTOM, 5 );
+ m_bitmapLogoLeft = new wxStaticBitmap( m_panel41, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer174->Add( m_bitmapLogoLeft, 0, wxBOTTOM, 5 );
- m_staticline81 = new wxStaticLine( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
- bSizer174->Add( m_staticline81, 0, wxEXPAND, 5 );
+ m_staticline81 = new wxStaticLine( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
+ bSizer174->Add( m_staticline81, 0, wxEXPAND, 5 );
- bSizerMainSection = new wxBoxSizer( wxVERTICAL );
+ bSizerMainSection = new wxBoxSizer( wxVERTICAL );
- m_staticline82 = new wxStaticLine( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizerMainSection->Add( m_staticline82, 0, wxEXPAND, 5 );
+ m_staticline82 = new wxStaticLine( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizerMainSection->Add( m_staticline82, 0, wxEXPAND, 5 );
- m_bitmapLogo = new wxStaticBitmap( m_panel41, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), 0 );
- bSizerMainSection->Add( m_bitmapLogo, 0, 0, 5 );
+ m_bitmapLogo = new wxStaticBitmap( m_panel41, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ bSizerMainSection->Add( m_bitmapLogo, 0, 0, 5 );
- m_staticline341 = new wxStaticLine( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizerMainSection->Add( m_staticline341, 0, wxEXPAND, 5 );
+ m_staticline341 = new wxStaticLine( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizerMainSection->Add( m_staticline341, 0, wxEXPAND, 5 );
- m_staticTextVersion = new wxStaticText( m_panel41, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextVersion->Wrap( -1 );
- bSizerMainSection->Add( m_staticTextVersion, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 5 );
+ m_staticTextVersion = new wxStaticText( m_panel41, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextVersion->Wrap( -1 );
+ bSizerMainSection->Add( m_staticTextVersion, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 5 );
- m_staticline3411 = new wxStaticLine( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizerMainSection->Add( m_staticline3411, 0, wxEXPAND, 5 );
+ m_staticline3411 = new wxStaticLine( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizerMainSection->Add( m_staticline3411, 0, wxEXPAND, 5 );
- m_panelDonate = new wxPanel( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panelDonate->SetBackgroundColour( wxColour( 153, 170, 187 ) );
+ m_panelDonate = new wxPanel( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panelDonate->SetBackgroundColour( wxColour( 153, 170, 187 ) );
- wxBoxSizer* bSizer183;
- bSizer183 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer183;
+ bSizer183 = new wxBoxSizer( wxVERTICAL );
- m_panel39 = new wxPanel( m_panelDonate, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panel39->SetBackgroundColour( wxColour( 248, 248, 248 ) );
+ m_panel39 = new wxPanel( m_panelDonate, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panel39->SetBackgroundColour( wxColour( 248, 248, 248 ) );
- wxBoxSizer* bSizer184;
- bSizer184 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer184;
+ bSizer184 = new wxBoxSizer( wxHORIZONTAL );
- bSizer184->Add( 0, 0, 1, wxEXPAND, 5 );
+ bSizer184->Add( 0, 0, 1, wxEXPAND, 5 );
- m_bitmapDonate = new wxStaticBitmap( m_panel39, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer184->Add( m_bitmapDonate, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 );
+ m_bitmapDonate = new wxStaticBitmap( m_panel39, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer184->Add( m_bitmapDonate, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 );
- wxBoxSizer* bSizer178;
- bSizer178 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer178;
+ bSizer178 = new wxBoxSizer( wxVERTICAL );
- m_staticTextDonate = new wxStaticText( m_panel39, wxID_ANY, _("If you like FreeFileSync:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextDonate->Wrap( -1 );
- m_staticTextDonate->SetForegroundColour( wxColour( 0, 0, 0 ) );
+ m_staticTextDonate = new wxStaticText( m_panel39, wxID_ANY, _("If you like FreeFileSync:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextDonate->Wrap( -1 );
+ m_staticTextDonate->SetForegroundColour( wxColour( 0, 0, 0 ) );
- bSizer178->Add( m_staticTextDonate, 0, wxALL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ bSizer178->Add( m_staticTextDonate, 0, wxALL|wxALIGN_CENTER_HORIZONTAL, 5 );
- m_buttonDonate = new wxButton( m_panel39, wxID_ANY, _("Support with a donation"), wxDefaultPosition, wxDefaultSize, 0 );
- m_buttonDonate->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- m_buttonDonate->SetToolTip( _("https://freefilesync.org/donate") );
+ m_buttonDonate = new wxButton( m_panel39, wxID_ANY, _("Support with a donation"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_buttonDonate->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_buttonDonate->SetToolTip( _("https://freefilesync.org/donate") );
- bSizer178->Add( m_buttonDonate, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxALIGN_CENTER_HORIZONTAL, 5 );
+ bSizer178->Add( m_buttonDonate, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxALIGN_CENTER_HORIZONTAL, 5 );
- bSizer184->Add( bSizer178, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
+ bSizer184->Add( bSizer178, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
- bSizer184->Add( 0, 0, 1, wxEXPAND, 5 );
+ bSizer184->Add( 0, 0, 1, wxEXPAND, 5 );
- m_panel39->SetSizer( bSizer184 );
- m_panel39->Layout();
- bSizer184->Fit( m_panel39 );
- bSizer183->Add( m_panel39, 0, wxALL|wxEXPAND, 5 );
+ m_panel39->SetSizer( bSizer184 );
+ m_panel39->Layout();
+ bSizer184->Fit( m_panel39 );
+ bSizer183->Add( m_panel39, 0, wxALL|wxEXPAND, 5 );
- m_panelDonate->SetSizer( bSizer183 );
- m_panelDonate->Layout();
- bSizer183->Fit( m_panelDonate );
- bSizerMainSection->Add( m_panelDonate, 0, wxEXPAND|wxALL, 10 );
+ m_panelDonate->SetSizer( bSizer183 );
+ m_panelDonate->Layout();
+ bSizer183->Fit( m_panelDonate );
+ bSizerMainSection->Add( m_panelDonate, 0, wxEXPAND|wxALL, 10 );
- m_panelThankYou = new wxPanel( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panelThankYou->SetBackgroundColour( wxColour( 153, 170, 187 ) );
+ m_panelThankYou = new wxPanel( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panelThankYou->SetBackgroundColour( wxColour( 153, 170, 187 ) );
- wxBoxSizer* bSizer1831;
- bSizer1831 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer1831;
+ bSizer1831 = new wxBoxSizer( wxVERTICAL );
- m_panel391 = new wxPanel( m_panelThankYou, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panel391->SetBackgroundColour( wxColour( 248, 248, 248 ) );
+ m_panel391 = new wxPanel( m_panelThankYou, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panel391->SetBackgroundColour( wxColour( 248, 248, 248 ) );
- wxBoxSizer* bSizer243;
- bSizer243 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer243;
+ bSizer243 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer1841;
- bSizer1841 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer1841;
+ bSizer1841 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapThanks = new wxStaticBitmap( m_panel391, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer1841->Add( m_bitmapThanks, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 );
+ m_bitmapThanks = new wxStaticBitmap( m_panel391, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer1841->Add( m_bitmapThanks, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 );
- m_staticTextThanks = new wxStaticText( m_panel391, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextThanks->Wrap( -1 );
- m_staticTextThanks->SetForegroundColour( wxColour( 0, 0, 0 ) );
+ m_staticTextThanks = new wxStaticText( m_panel391, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextThanks->Wrap( -1 );
+ m_staticTextThanks->SetForegroundColour( wxColour( 0, 0, 0 ) );
- bSizer1841->Add( m_staticTextThanks, 0, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer1841->Add( m_staticTextThanks, 0, wxALL|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
- bSizer243->Add( bSizer1841, 1, wxALIGN_CENTER_HORIZONTAL|wxRIGHT|wxLEFT, 5 );
+ bSizer243->Add( bSizer1841, 1, wxALIGN_CENTER_HORIZONTAL|wxRIGHT|wxLEFT, 5 );
- m_staticTextNoAutoUpdate = new wxStaticText( m_panel391, wxID_ANY, _("The auto updater was disabled by the administrator."), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextNoAutoUpdate->Wrap( -1 );
- m_staticTextNoAutoUpdate->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_ITALIC, wxFONTWEIGHT_NORMAL, false, wxEmptyString ) );
+ m_staticTextNoAutoUpdate = new wxStaticText( m_panel391, wxID_ANY, _("The auto updater was disabled by the administrator."), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextNoAutoUpdate->Wrap( -1 );
+ m_staticTextNoAutoUpdate->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_ITALIC, wxFONTWEIGHT_NORMAL, false, wxEmptyString ) );
- bSizer243->Add( m_staticTextNoAutoUpdate, 0, wxALIGN_CENTER_HORIZONTAL|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
+ bSizer243->Add( m_staticTextNoAutoUpdate, 0, wxALIGN_CENTER_HORIZONTAL|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
- m_buttonShowDonationDetails = new wxButton( m_panel391, wxID_ANY, _("Donation details"), wxDefaultPosition, wxDefaultSize, 0 );
- bSizer243->Add( m_buttonShowDonationDetails, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND, 5 );
+ m_buttonShowDonationDetails = new wxButton( m_panel391, wxID_ANY, _("Donation details"), wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer243->Add( m_buttonShowDonationDetails, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND, 5 );
- m_panel391->SetSizer( bSizer243 );
- m_panel391->Layout();
- bSizer243->Fit( m_panel391 );
- bSizer1831->Add( m_panel391, 0, wxEXPAND|wxALL, 5 );
+ m_panel391->SetSizer( bSizer243 );
+ m_panel391->Layout();
+ bSizer243->Fit( m_panel391 );
+ bSizer1831->Add( m_panel391, 0, wxEXPAND|wxALL, 5 );
- m_panelThankYou->SetSizer( bSizer1831 );
- m_panelThankYou->Layout();
- bSizer1831->Fit( m_panelThankYou );
- bSizerMainSection->Add( m_panelThankYou, 0, wxEXPAND|wxALL, 10 );
+ m_panelThankYou->SetSizer( bSizer1831 );
+ m_panelThankYou->Layout();
+ bSizer1831->Fit( m_panelThankYou );
+ bSizerMainSection->Add( m_panelThankYou, 0, wxEXPAND|wxALL, 10 );
- m_staticline3412 = new wxStaticLine( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizerMainSection->Add( m_staticline3412, 0, wxEXPAND, 5 );
+ m_staticline3412 = new wxStaticLine( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizerMainSection->Add( m_staticline3412, 0, wxEXPAND, 5 );
- wxBoxSizer* bSizer186;
- bSizer186 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer186;
+ bSizer186 = new wxBoxSizer( wxVERTICAL );
- m_staticText94 = new wxStaticText( m_panel41, wxID_ANY, _("Feedback and suggestions are welcome:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText94->Wrap( -1 );
- bSizer186->Add( m_staticText94, 0, wxALIGN_CENTER_HORIZONTAL|wxTOP|wxRIGHT|wxLEFT, 5 );
+ m_staticText94 = new wxStaticText( m_panel41, wxID_ANY, _("Feedback and suggestions are welcome:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText94->Wrap( -1 );
+ bSizer186->Add( m_staticText94, 0, wxALIGN_CENTER_HORIZONTAL|wxTOP|wxRIGHT|wxLEFT, 5 );
- wxBoxSizer* bSizer289;
- bSizer289 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer289;
+ bSizer289 = new wxBoxSizer( wxHORIZONTAL );
- m_bpButtonForum = new wxBitmapButton( m_panel41, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|0 );
- m_bpButtonForum->SetToolTip( _("https://freefilesync.org/forum/") );
+ m_bpButtonForum = new wxBitmapButton( m_panel41, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|0 );
+ m_bpButtonForum->SetToolTip( _("https://freefilesync.org/forum/") );
- bSizer289->Add( m_bpButtonForum, 0, wxALL|wxEXPAND, 5 );
+ bSizer289->Add( m_bpButtonForum, 0, wxALL|wxEXPAND, 5 );
- wxBoxSizer* bSizer290;
- bSizer290 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer290;
+ bSizer290 = new wxBoxSizer( wxVERTICAL );
- m_bpButtonHomepage = new wxBitmapButton( m_panel41, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|0 );
- m_bpButtonHomepage->SetToolTip( _("https://freefilesync.org") );
+ m_bpButtonHomepage = new wxBitmapButton( m_panel41, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|0 );
+ m_bpButtonHomepage->SetToolTip( _("https://freefilesync.org") );
- bSizer290->Add( m_bpButtonHomepage, 1, wxTOP|wxRIGHT|wxEXPAND, 5 );
+ bSizer290->Add( m_bpButtonHomepage, 1, wxTOP|wxRIGHT|wxEXPAND, 5 );
- bSizer290->Add( 0, 5, 0, 0, 5 );
+ bSizer290->Add( 0, 5, 0, 0, 5 );
- m_bpButtonEmail = new wxBitmapButton( m_panel41, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|0 );
- bSizer290->Add( m_bpButtonEmail, 1, wxEXPAND|wxBOTTOM|wxRIGHT, 5 );
+ m_bpButtonEmail = new wxBitmapButton( m_panel41, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|0 );
+ bSizer290->Add( m_bpButtonEmail, 1, wxEXPAND|wxBOTTOM|wxRIGHT, 5 );
- bSizer289->Add( bSizer290, 0, wxEXPAND, 5 );
+ bSizer289->Add( bSizer290, 0, wxEXPAND, 5 );
- bSizer186->Add( bSizer289, 0, wxALIGN_CENTER_HORIZONTAL, 5 );
+ bSizer186->Add( bSizer289, 0, wxALIGN_CENTER_HORIZONTAL, 5 );
- bSizerMainSection->Add( bSizer186, 0, wxALL|wxEXPAND, 5 );
+ bSizerMainSection->Add( bSizer186, 0, wxALL|wxEXPAND, 5 );
- m_staticline34 = new wxStaticLine( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizerMainSection->Add( m_staticline34, 0, wxEXPAND, 5 );
+ m_staticline34 = new wxStaticLine( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizerMainSection->Add( m_staticline34, 0, wxEXPAND, 5 );
- wxBoxSizer* bSizer185;
- bSizer185 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer185;
+ bSizer185 = new wxBoxSizer( wxHORIZONTAL );
- m_staticTextGpl = new wxStaticText( m_panel41, wxID_ANY, _("Published under the GNU General Public License:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextGpl->Wrap( -1 );
- bSizer185->Add( m_staticTextGpl, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
+ m_staticTextGpl = new wxStaticText( m_panel41, wxID_ANY, _("Published under the GNU General Public License:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextGpl->Wrap( -1 );
+ bSizer185->Add( m_staticTextGpl, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
- m_bpButtonGpl = new wxBitmapButton( m_panel41, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|0 );
- m_bpButtonGpl->SetToolTip( _("https://www.gnu.org/licenses/gpl-3.0") );
+ m_bpButtonGpl = new wxBitmapButton( m_panel41, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|0 );
+ m_bpButtonGpl->SetToolTip( _("https://www.gnu.org/licenses/gpl-3.0") );
- bSizer185->Add( m_bpButtonGpl, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
+ bSizer185->Add( m_bpButtonGpl, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
- bSizerMainSection->Add( bSizer185, 0, wxALL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ bSizerMainSection->Add( bSizer185, 0, wxALL|wxALIGN_CENTER_HORIZONTAL, 5 );
- bSizer174->Add( bSizerMainSection, 0, 0, 5 );
+ bSizer174->Add( bSizerMainSection, 0, 0, 5 );
- m_staticline37 = new wxStaticLine( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
- bSizer174->Add( m_staticline37, 0, wxEXPAND, 5 );
+ m_staticline37 = new wxStaticLine( m_panel41, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_VERTICAL );
+ bSizer174->Add( m_staticline37, 0, wxEXPAND, 5 );
- wxBoxSizer* bSizer177;
- bSizer177 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer177;
+ bSizer177 = new wxBoxSizer( wxVERTICAL );
- m_staticTextThanksForLoc = new wxStaticText( m_panel41, wxID_ANY, _("Many thanks for localization:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextThanksForLoc->Wrap( -1 );
- bSizer177->Add( m_staticTextThanksForLoc, 0, wxALL, 5 );
+ m_staticTextThanksForLoc = new wxStaticText( m_panel41, wxID_ANY, _("Many thanks for localization:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextThanksForLoc->Wrap( -1 );
+ bSizer177->Add( m_staticTextThanksForLoc, 0, wxALL, 5 );
- m_scrolledWindowTranslators = new wxScrolledWindow( m_panel41, wxID_ANY, wxDefaultPosition, wxSize( -1, -1 ), wxVSCROLL );
- m_scrolledWindowTranslators->SetScrollRate( 10, 10 );
- m_scrolledWindowTranslators->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ m_scrolledWindowTranslators = new wxScrolledWindow( m_panel41, wxID_ANY, wxDefaultPosition, wxSize( -1,-1 ), wxVSCROLL );
+ m_scrolledWindowTranslators->SetScrollRate( 10, 10 );
+ m_scrolledWindowTranslators->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- fgSizerTranslators = new wxFlexGridSizer( 0, 2, 2, 10 );
- fgSizerTranslators->SetFlexibleDirection( wxBOTH );
- fgSizerTranslators->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
+ fgSizerTranslators = new wxFlexGridSizer( 0, 2, 2, 10 );
+ fgSizerTranslators->SetFlexibleDirection( wxBOTH );
+ fgSizerTranslators->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
- m_scrolledWindowTranslators->SetSizer( fgSizerTranslators );
- m_scrolledWindowTranslators->Layout();
- fgSizerTranslators->Fit( m_scrolledWindowTranslators );
- bSizer177->Add( m_scrolledWindowTranslators, 1, wxEXPAND|wxLEFT, 5 );
+ m_scrolledWindowTranslators->SetSizer( fgSizerTranslators );
+ m_scrolledWindowTranslators->Layout();
+ fgSizerTranslators->Fit( m_scrolledWindowTranslators );
+ bSizer177->Add( m_scrolledWindowTranslators, 1, wxEXPAND|wxLEFT, 5 );
- bSizer174->Add( bSizer177, 0, wxEXPAND|wxLEFT, 5 );
+ bSizer174->Add( bSizer177, 0, wxEXPAND|wxLEFT, 5 );
- m_panel41->SetSizer( bSizer174 );
- m_panel41->Layout();
- bSizer174->Fit( m_panel41 );
- bSizer31->Add( m_panel41, 0, wxEXPAND, 5 );
+ m_panel41->SetSizer( bSizer174 );
+ m_panel41->Layout();
+ bSizer174->Fit( m_panel41 );
+ bSizer31->Add( m_panel41, 0, wxEXPAND, 5 );
- m_staticline36 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer31->Add( m_staticline36, 0, wxEXPAND, 5 );
+ m_staticline36 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer31->Add( m_staticline36, 0, wxEXPAND, 5 );
- bSizerStdButtons = new wxBoxSizer( wxHORIZONTAL );
+ bSizerStdButtons = new wxBoxSizer( wxHORIZONTAL );
- m_buttonClose = new wxButton( this, wxID_OK, _("Close"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
+ m_buttonClose = new wxButton( this, wxID_OK, _("Close"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
- m_buttonClose->SetDefault();
- bSizerStdButtons->Add( m_buttonClose, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
+ m_buttonClose->SetDefault();
+ bSizerStdButtons->Add( m_buttonClose, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
- bSizer31->Add( bSizerStdButtons, 0, wxALIGN_RIGHT, 5 );
+ bSizer31->Add( bSizerStdButtons, 0, wxALIGN_RIGHT, 5 );
- this->SetSizer( bSizer31 );
- this->Layout();
- bSizer31->Fit( this );
+ this->SetSizer( bSizer31 );
+ this->Layout();
+ bSizer31->Fit( this );
- this->Centre( wxBOTH );
+ this->Centre( wxBOTH );
- // Connect Events
- this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( AboutDlgGenerated::onClose ) );
- m_buttonDonate->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( AboutDlgGenerated::onDonate ), NULL, this );
- m_buttonShowDonationDetails->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( AboutDlgGenerated::onShowDonationDetails ), NULL, this );
- m_bpButtonForum->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( AboutDlgGenerated::onOpenForum ), NULL, this );
- m_bpButtonHomepage->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( AboutDlgGenerated::onOpenHomepage ), NULL, this );
- m_bpButtonEmail->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( AboutDlgGenerated::onSendEmail ), NULL, this );
- m_bpButtonGpl->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( AboutDlgGenerated::onShowGpl ), NULL, this );
- m_buttonClose->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( AboutDlgGenerated::onOkay ), NULL, this );
+ // Connect Events
+ this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( AboutDlgGenerated::onClose ) );
+ m_buttonDonate->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( AboutDlgGenerated::onDonate ), NULL, this );
+ m_buttonShowDonationDetails->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( AboutDlgGenerated::onShowDonationDetails ), NULL, this );
+ m_bpButtonForum->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( AboutDlgGenerated::onOpenForum ), NULL, this );
+ m_bpButtonHomepage->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( AboutDlgGenerated::onOpenHomepage ), NULL, this );
+ m_bpButtonEmail->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( AboutDlgGenerated::onSendEmail ), NULL, this );
+ m_bpButtonGpl->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( AboutDlgGenerated::onShowGpl ), NULL, this );
+ m_buttonClose->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( AboutDlgGenerated::onOkay ), NULL, this );
}
AboutDlgGenerated::~AboutDlgGenerated()
@@ -5281,61 +5303,61 @@ AboutDlgGenerated::~AboutDlgGenerated()
DownloadProgressDlgGenerated::DownloadProgressDlgGenerated( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style )
{
- this->SetSizeHints( wxDefaultSize, wxDefaultSize );
+ this->SetSizeHints( wxDefaultSize, wxDefaultSize );
- wxBoxSizer* bSizer24;
- bSizer24 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer24;
+ bSizer24 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer72;
- bSizer72 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer72;
+ bSizer72 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapDownloading = new wxStaticBitmap( this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer72->Add( m_bitmapDownloading, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 10 );
+ m_bitmapDownloading = new wxStaticBitmap( this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer72->Add( m_bitmapDownloading, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 10 );
- m_staticTextHeader = new wxStaticText( this, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextHeader->Wrap( -1 );
- bSizer72->Add( m_staticTextHeader, 0, wxALIGN_CENTER_VERTICAL|wxALL, 10 );
+ m_staticTextHeader = new wxStaticText( this, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextHeader->Wrap( -1 );
+ bSizer72->Add( m_staticTextHeader, 0, wxALIGN_CENTER_VERTICAL|wxALL, 10 );
- bSizer72->Add( 20, 0, 0, 0, 5 );
+ bSizer72->Add( 20, 0, 0, 0, 5 );
- bSizer24->Add( bSizer72, 0, 0, 5 );
+ bSizer24->Add( bSizer72, 0, 0, 5 );
- wxBoxSizer* bSizer212;
- bSizer212 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer212;
+ bSizer212 = new wxBoxSizer( wxVERTICAL );
- m_gaugeProgress = new wxGauge( this, wxID_ANY, 100, wxDefaultPosition, wxDefaultSize, wxGA_HORIZONTAL );
- m_gaugeProgress->SetValue( 0 );
- bSizer212->Add( m_gaugeProgress, 0, wxEXPAND|wxRIGHT|wxLEFT, 5 );
+ m_gaugeProgress = new wxGauge( this, wxID_ANY, 100, wxDefaultPosition, wxDefaultSize, wxGA_HORIZONTAL );
+ m_gaugeProgress->SetValue( 0 );
+ bSizer212->Add( m_gaugeProgress, 0, wxEXPAND|wxRIGHT|wxLEFT, 5 );
- m_staticTextDetails = new wxStaticText( this, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextDetails->Wrap( -1 );
- bSizer212->Add( m_staticTextDetails, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 5 );
+ m_staticTextDetails = new wxStaticText( this, wxID_ANY, _("dummy"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextDetails->Wrap( -1 );
+ bSizer212->Add( m_staticTextDetails, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 5 );
- bSizer24->Add( bSizer212, 0, wxBOTTOM|wxRIGHT|wxLEFT, 5 );
+ bSizer24->Add( bSizer212, 0, wxBOTTOM|wxRIGHT|wxLEFT, 5 );
- m_staticline9 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer24->Add( m_staticline9, 0, wxEXPAND, 5 );
+ m_staticline9 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer24->Add( m_staticline9, 0, wxEXPAND, 5 );
- bSizerStdButtons = new wxBoxSizer( wxHORIZONTAL );
+ bSizerStdButtons = new wxBoxSizer( wxHORIZONTAL );
- m_buttonCancel = new wxButton( this, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
+ m_buttonCancel = new wxButton( this, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
- m_buttonCancel->SetDefault();
- bSizerStdButtons->Add( m_buttonCancel, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
+ m_buttonCancel->SetDefault();
+ bSizerStdButtons->Add( m_buttonCancel, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
- bSizer24->Add( bSizerStdButtons, 0, wxALIGN_RIGHT, 5 );
+ bSizer24->Add( bSizerStdButtons, 0, wxALIGN_RIGHT, 5 );
- this->SetSizer( bSizer24 );
- this->Layout();
- bSizer24->Fit( this );
+ this->SetSizer( bSizer24 );
+ this->Layout();
+ bSizer24->Fit( this );
- // Connect Events
- m_buttonCancel->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DownloadProgressDlgGenerated::onCancel ), NULL, this );
+ // Connect Events
+ m_buttonCancel->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DownloadProgressDlgGenerated::onCancel ), NULL, this );
}
DownloadProgressDlgGenerated::~DownloadProgressDlgGenerated()
@@ -5344,178 +5366,178 @@ DownloadProgressDlgGenerated::~DownloadProgressDlgGenerated()
ActivationDlgGenerated::ActivationDlgGenerated( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style )
{
- this->SetSizeHints( wxSize( -1, -1 ), wxDefaultSize );
- this->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
+ this->SetSizeHints( wxSize( -1,-1 ), wxDefaultSize );
+ this->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
- wxBoxSizer* bSizer54;
- bSizer54 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer54;
+ bSizer54 = new wxBoxSizer( wxVERTICAL );
- m_panel35 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panel35->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ m_panel35 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panel35->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- wxBoxSizer* bSizer172;
- bSizer172 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer172;
+ bSizer172 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer165;
- bSizer165 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer165;
+ bSizer165 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapActivation = new wxStaticBitmap( m_panel35, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1, -1 ), 0 );
- bSizer165->Add( m_bitmapActivation, 0, wxALL, 10 );
+ m_bitmapActivation = new wxStaticBitmap( m_panel35, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ bSizer165->Add( m_bitmapActivation, 0, wxALL, 10 );
- wxBoxSizer* bSizer16;
- bSizer16 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer16;
+ bSizer16 = new wxBoxSizer( wxVERTICAL );
- bSizer16->Add( 0, 10, 0, 0, 5 );
+ bSizer16->Add( 0, 10, 0, 0, 5 );
- m_richTextLastError = new wxRichTextCtrl( m_panel35, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_READONLY|wxBORDER_NONE|wxVSCROLL|wxWANTS_CHARS );
- bSizer16->Add( m_richTextLastError, 1, wxEXPAND, 5 );
+ m_richTextLastError = new wxRichTextCtrl( m_panel35, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_READONLY|wxBORDER_NONE|wxVSCROLL|wxWANTS_CHARS );
+ bSizer16->Add( m_richTextLastError, 1, wxEXPAND, 5 );
- bSizer165->Add( bSizer16, 1, wxEXPAND, 5 );
+ bSizer165->Add( bSizer16, 1, wxEXPAND, 5 );
- bSizer172->Add( bSizer165, 1, wxEXPAND, 5 );
+ bSizer172->Add( bSizer165, 1, wxEXPAND, 5 );
- m_staticline82 = new wxStaticLine( m_panel35, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer172->Add( m_staticline82, 0, wxEXPAND, 5 );
+ m_staticline82 = new wxStaticLine( m_panel35, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer172->Add( m_staticline82, 0, wxEXPAND, 5 );
- m_staticTextMain = new wxStaticText( m_panel35, wxID_ANY, _("Activate the FreeFileSync Donation Edition by one of the following methods:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextMain->Wrap( -1 );
- bSizer172->Add( m_staticTextMain, 0, wxALL, 10 );
+ m_staticTextMain = new wxStaticText( m_panel35, wxID_ANY, _("Activate the FreeFileSync Donation Edition by one of the following methods:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextMain->Wrap( -1 );
+ bSizer172->Add( m_staticTextMain, 0, wxALL, 10 );
- m_panel35->SetSizer( bSizer172 );
- m_panel35->Layout();
- bSizer172->Fit( m_panel35 );
- bSizer54->Add( m_panel35, 1, wxEXPAND, 5 );
+ m_panel35->SetSizer( bSizer172 );
+ m_panel35->Layout();
+ bSizer172->Fit( m_panel35 );
+ bSizer54->Add( m_panel35, 1, wxEXPAND, 5 );
- m_staticline181 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer54->Add( m_staticline181, 0, wxEXPAND|wxBOTTOM, 5 );
+ m_staticline181 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer54->Add( m_staticline181, 0, wxEXPAND|wxBOTTOM, 5 );
- m_staticline18111 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer54->Add( m_staticline18111, 0, wxEXPAND|wxTOP, 5 );
+ m_staticline18111 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer54->Add( m_staticline18111, 0, wxEXPAND|wxTOP, 5 );
- m_panel3511 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panel3511->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ m_panel3511 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panel3511->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- wxBoxSizer* bSizer263;
- bSizer263 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer263;
+ bSizer263 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer234;
- bSizer234 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer234;
+ bSizer234 = new wxBoxSizer( wxHORIZONTAL );
- m_staticTextMain1 = new wxStaticText( m_panel3511, wxID_ANY, _("1."), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextMain1->Wrap( -1 );
- bSizer234->Add( m_staticTextMain1, 0, wxRIGHT|wxALIGN_CENTER_VERTICAL, 5 );
+ m_staticTextMain1 = new wxStaticText( m_panel3511, wxID_ANY, _("1."), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextMain1->Wrap( -1 );
+ bSizer234->Add( m_staticTextMain1, 0, wxRIGHT|wxALIGN_CENTER_VERTICAL, 5 );
- m_staticText136 = new wxStaticText( m_panel3511, wxID_ANY, _("Activate via internet now:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText136->Wrap( -1 );
- bSizer234->Add( m_staticText136, 1, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
+ m_staticText136 = new wxStaticText( m_panel3511, wxID_ANY, _("Activate via internet now:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText136->Wrap( -1 );
+ bSizer234->Add( m_staticText136, 1, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
- m_buttonActivateOnline = new wxButton( m_panel3511, wxID_ANY, _("Activate online"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
+ m_buttonActivateOnline = new wxButton( m_panel3511, wxID_ANY, _("Activate online"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
- m_buttonActivateOnline->SetDefault();
- m_buttonActivateOnline->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_buttonActivateOnline->SetDefault();
+ m_buttonActivateOnline->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- bSizer234->Add( m_buttonActivateOnline, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer234->Add( m_buttonActivateOnline, 0, wxALIGN_CENTER_VERTICAL, 5 );
- bSizer263->Add( bSizer234, 0, wxEXPAND|wxALL, 10 );
+ bSizer263->Add( bSizer234, 0, wxEXPAND|wxALL, 10 );
- m_panel3511->SetSizer( bSizer263 );
- m_panel3511->Layout();
- bSizer263->Fit( m_panel3511 );
- bSizer54->Add( m_panel3511, 0, wxEXPAND, 5 );
+ m_panel3511->SetSizer( bSizer263 );
+ m_panel3511->Layout();
+ bSizer263->Fit( m_panel3511 );
+ bSizer54->Add( m_panel3511, 0, wxEXPAND, 5 );
- m_staticline181111 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer54->Add( m_staticline181111, 0, wxEXPAND|wxBOTTOM, 5 );
+ m_staticline181111 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer54->Add( m_staticline181111, 0, wxEXPAND|wxBOTTOM, 5 );
- m_staticline181112 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer54->Add( m_staticline181112, 0, wxEXPAND|wxTOP, 5 );
+ m_staticline181112 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer54->Add( m_staticline181112, 0, wxEXPAND|wxTOP, 5 );
- m_panel351 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panel351->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ m_panel351 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panel351->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- wxBoxSizer* bSizer266;
- bSizer266 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer266;
+ bSizer266 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer237;
- bSizer237 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer237;
+ bSizer237 = new wxBoxSizer( wxVERTICAL );
- wxBoxSizer* bSizer236;
- bSizer236 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer236;
+ bSizer236 = new wxBoxSizer( wxHORIZONTAL );
- m_staticText175 = new wxStaticText( m_panel351, wxID_ANY, _("2."), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText175->Wrap( -1 );
- bSizer236->Add( m_staticText175, 0, wxRIGHT|wxALIGN_BOTTOM, 5 );
+ m_staticText175 = new wxStaticText( m_panel351, wxID_ANY, _("2."), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText175->Wrap( -1 );
+ bSizer236->Add( m_staticText175, 0, wxRIGHT|wxALIGN_BOTTOM, 5 );
- m_staticText1361 = new wxStaticText( m_panel351, wxID_ANY, _("Retrieve an offline activation key from the following URL:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText1361->Wrap( -1 );
- bSizer236->Add( m_staticText1361, 1, wxRIGHT|wxALIGN_BOTTOM, 5 );
+ m_staticText1361 = new wxStaticText( m_panel351, wxID_ANY, _("Retrieve an offline activation key from the following URL:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText1361->Wrap( -1 );
+ bSizer236->Add( m_staticText1361, 1, wxRIGHT|wxALIGN_BOTTOM, 5 );
- m_buttonCopyUrl = new wxButton( m_panel351, wxID_ANY, _("&Copy to clipboard"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- bSizer236->Add( m_buttonCopyUrl, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_buttonCopyUrl = new wxButton( m_panel351, wxID_ANY, _("&Copy to clipboard"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ bSizer236->Add( m_buttonCopyUrl, 0, wxALIGN_CENTER_VERTICAL, 5 );
- bSizer237->Add( bSizer236, 0, wxEXPAND|wxBOTTOM, 5 );
+ bSizer237->Add( bSizer236, 0, wxEXPAND|wxBOTTOM, 5 );
- m_richTextManualActivationUrl = new wxRichTextCtrl( m_panel351, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_READONLY|wxBORDER_NONE|wxVSCROLL|wxWANTS_CHARS );
- bSizer237->Add( m_richTextManualActivationUrl, 0, wxEXPAND|wxBOTTOM, 5 );
+ m_richTextManualActivationUrl = new wxRichTextCtrl( m_panel351, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_READONLY|wxBORDER_NONE|wxVSCROLL|wxWANTS_CHARS );
+ bSizer237->Add( m_richTextManualActivationUrl, 0, wxEXPAND|wxBOTTOM, 5 );
- wxBoxSizer* bSizer235;
- bSizer235 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer235;
+ bSizer235 = new wxBoxSizer( wxHORIZONTAL );
- m_staticText13611 = new wxStaticText( m_panel351, wxID_ANY, _("Enter activation key:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticText13611->Wrap( -1 );
- bSizer235->Add( m_staticText13611, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
+ m_staticText13611 = new wxStaticText( m_panel351, wxID_ANY, _("Enter activation key:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticText13611->Wrap( -1 );
+ bSizer235->Add( m_staticText13611, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
- m_textCtrlOfflineActivationKey = new wxTextCtrl( m_panel351, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( -1, -1 ), wxTE_PROCESS_ENTER );
- bSizer235->Add( m_textCtrlOfflineActivationKey, 1, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
+ m_textCtrlOfflineActivationKey = new wxTextCtrl( m_panel351, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( -1,-1 ), wxTE_PROCESS_ENTER );
+ bSizer235->Add( m_textCtrlOfflineActivationKey, 1, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
- m_buttonActivateOffline = new wxButton( m_panel351, wxID_ANY, _("Activate offline"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- m_buttonActivateOffline->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_buttonActivateOffline = new wxButton( m_panel351, wxID_ANY, _("Activate offline"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ m_buttonActivateOffline->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- bSizer235->Add( m_buttonActivateOffline, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ bSizer235->Add( m_buttonActivateOffline, 0, wxALIGN_CENTER_VERTICAL, 5 );
- bSizer237->Add( bSizer235, 0, wxEXPAND|wxTOP, 5 );
+ bSizer237->Add( bSizer235, 0, wxEXPAND|wxTOP, 5 );
- bSizer266->Add( bSizer237, 0, wxALL|wxEXPAND, 10 );
+ bSizer266->Add( bSizer237, 0, wxALL|wxEXPAND, 10 );
- m_panel351->SetSizer( bSizer266 );
- m_panel351->Layout();
- bSizer266->Fit( m_panel351 );
- bSizer54->Add( m_panel351, 0, wxEXPAND, 5 );
+ m_panel351->SetSizer( bSizer266 );
+ m_panel351->Layout();
+ bSizer266->Fit( m_panel351 );
+ bSizer54->Add( m_panel351, 0, wxEXPAND, 5 );
- m_staticline13 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer54->Add( m_staticline13, 0, wxEXPAND, 5 );
+ m_staticline13 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer54->Add( m_staticline13, 0, wxEXPAND, 5 );
- bSizerStdButtons = new wxBoxSizer( wxHORIZONTAL );
+ bSizerStdButtons = new wxBoxSizer( wxHORIZONTAL );
- m_buttonCancel = new wxButton( this, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- bSizerStdButtons->Add( m_buttonCancel, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
+ m_buttonCancel = new wxButton( this, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ bSizerStdButtons->Add( m_buttonCancel, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
- bSizer54->Add( bSizerStdButtons, 0, wxALIGN_RIGHT, 5 );
+ bSizer54->Add( bSizerStdButtons, 0, wxALIGN_RIGHT, 5 );
- this->SetSizer( bSizer54 );
- this->Layout();
- bSizer54->Fit( this );
+ this->SetSizer( bSizer54 );
+ this->Layout();
+ bSizer54->Fit( this );
- this->Centre( wxBOTH );
+ this->Centre( wxBOTH );
- // Connect Events
- this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( ActivationDlgGenerated::onClose ) );
- m_buttonActivateOnline->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ActivationDlgGenerated::onActivateOnline ), NULL, this );
- m_buttonCopyUrl->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ActivationDlgGenerated::onCopyUrl ), NULL, this );
- m_textCtrlOfflineActivationKey->Connect( wxEVT_COMMAND_TEXT_ENTER, wxCommandEventHandler( ActivationDlgGenerated::onOfflineActivationEnter ), NULL, this );
- m_buttonActivateOffline->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ActivationDlgGenerated::onActivateOffline ), NULL, this );
- m_buttonCancel->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ActivationDlgGenerated::onCancel ), NULL, this );
+ // Connect Events
+ this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( ActivationDlgGenerated::onClose ) );
+ m_buttonActivateOnline->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ActivationDlgGenerated::onActivateOnline ), NULL, this );
+ m_buttonCopyUrl->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ActivationDlgGenerated::onCopyUrl ), NULL, this );
+ m_textCtrlOfflineActivationKey->Connect( wxEVT_COMMAND_TEXT_ENTER, wxCommandEventHandler( ActivationDlgGenerated::onOfflineActivationEnter ), NULL, this );
+ m_buttonActivateOffline->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ActivationDlgGenerated::onActivateOffline ), NULL, this );
+ m_buttonCancel->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ActivationDlgGenerated::onCancel ), NULL, this );
}
ActivationDlgGenerated::~ActivationDlgGenerated()
@@ -5524,66 +5546,66 @@ ActivationDlgGenerated::~ActivationDlgGenerated()
CfgHighlightDlgGenerated::CfgHighlightDlgGenerated( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style )
{
- this->SetSizeHints( wxDefaultSize, wxDefaultSize );
- this->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
+ this->SetSizeHints( wxDefaultSize, wxDefaultSize );
+ this->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
- wxBoxSizer* bSizer96;
- bSizer96 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer96;
+ bSizer96 = new wxBoxSizer( wxVERTICAL );
- m_panel35 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panel35->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ m_panel35 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panel35->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- wxBoxSizer* bSizer98;
- bSizer98 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer98;
+ bSizer98 = new wxBoxSizer( wxHORIZONTAL );
- wxBoxSizer* bSizer238;
- bSizer238 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer238;
+ bSizer238 = new wxBoxSizer( wxVERTICAL );
- m_staticTextHighlight = new wxStaticText( m_panel35, wxID_ANY, _("Highlight configurations that have not been run for more than the following number of days:"), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextHighlight->Wrap( -1 );
- bSizer238->Add( m_staticTextHighlight, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
+ m_staticTextHighlight = new wxStaticText( m_panel35, wxID_ANY, _("Highlight configurations that have not been run for more than the following number of days:"), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextHighlight->Wrap( -1 );
+ bSizer238->Add( m_staticTextHighlight, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
- m_spinCtrlOverdueDays = new wxSpinCtrl( m_panel35, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( -1, -1 ), wxSP_ARROW_KEYS, 0, 2000000000, 0 );
- bSizer238->Add( m_spinCtrlOverdueDays, 0, wxALL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ m_spinCtrlOverdueDays = new wxSpinCtrl( m_panel35, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( -1,-1 ), wxSP_ARROW_KEYS, 0, 2000000000, 0 );
+ bSizer238->Add( m_spinCtrlOverdueDays, 0, wxALL|wxALIGN_CENTER_HORIZONTAL, 5 );
- bSizer98->Add( bSizer238, 1, wxALL|wxEXPAND, 5 );
+ bSizer98->Add( bSizer238, 1, wxALL|wxEXPAND, 5 );
- m_panel35->SetSizer( bSizer98 );
- m_panel35->Layout();
- bSizer98->Fit( m_panel35 );
- bSizer96->Add( m_panel35, 0, 0, 5 );
+ m_panel35->SetSizer( bSizer98 );
+ m_panel35->Layout();
+ bSizer98->Fit( m_panel35 );
+ bSizer96->Add( m_panel35, 0, 0, 5 );
- m_staticline21 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer96->Add( m_staticline21, 0, wxEXPAND, 5 );
+ m_staticline21 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer96->Add( m_staticline21, 0, wxEXPAND, 5 );
- bSizerStdButtons = new wxBoxSizer( wxHORIZONTAL );
+ bSizerStdButtons = new wxBoxSizer( wxHORIZONTAL );
- m_buttonOkay = new wxButton( this, wxID_OK, _("OK"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
+ m_buttonOkay = new wxButton( this, wxID_OK, _("OK"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
- m_buttonOkay->SetDefault();
- m_buttonOkay->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
+ m_buttonOkay->SetDefault();
+ m_buttonOkay->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_BOLD, false, wxEmptyString ) );
- bSizerStdButtons->Add( m_buttonOkay, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
+ bSizerStdButtons->Add( m_buttonOkay, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
- m_buttonCancel = new wxButton( this, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- bSizerStdButtons->Add( m_buttonCancel, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
+ m_buttonCancel = new wxButton( this, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ bSizerStdButtons->Add( m_buttonCancel, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
- bSizer96->Add( bSizerStdButtons, 0, wxALIGN_RIGHT, 5 );
+ bSizer96->Add( bSizerStdButtons, 0, wxALIGN_RIGHT, 5 );
- this->SetSizer( bSizer96 );
- this->Layout();
- bSizer96->Fit( this );
+ this->SetSizer( bSizer96 );
+ this->Layout();
+ bSizer96->Fit( this );
- this->Centre( wxBOTH );
+ this->Centre( wxBOTH );
- // Connect Events
- this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( CfgHighlightDlgGenerated::onClose ) );
- m_buttonOkay->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( CfgHighlightDlgGenerated::onOkay ), NULL, this );
- m_buttonCancel->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( CfgHighlightDlgGenerated::onCancel ), NULL, this );
+ // Connect Events
+ this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( CfgHighlightDlgGenerated::onClose ) );
+ m_buttonOkay->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( CfgHighlightDlgGenerated::onOkay ), NULL, this );
+ m_buttonCancel->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( CfgHighlightDlgGenerated::onCancel ), NULL, this );
}
CfgHighlightDlgGenerated::~CfgHighlightDlgGenerated()
@@ -5592,106 +5614,106 @@ CfgHighlightDlgGenerated::~CfgHighlightDlgGenerated()
WarnAccessRightsMissingDlgGenerated::WarnAccessRightsMissingDlgGenerated( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style )
{
- this->SetSizeHints( wxSize( -1, -1 ), wxDefaultSize );
- this->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
+ this->SetSizeHints( wxSize( -1,-1 ), wxDefaultSize );
+ this->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
- wxBoxSizer* bSizer330;
- bSizer330 = new wxBoxSizer( wxHORIZONTAL );
+ wxBoxSizer* bSizer330;
+ bSizer330 = new wxBoxSizer( wxHORIZONTAL );
- m_bitmapGrantAccess = new wxStaticBitmap( this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
- bSizer330->Add( m_bitmapGrantAccess, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 10 );
+ m_bitmapGrantAccess = new wxStaticBitmap( this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer330->Add( m_bitmapGrantAccess, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 10 );
- wxBoxSizer* bSizer95;
- bSizer95 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer95;
+ bSizer95 = new wxBoxSizer( wxVERTICAL );
- m_staticTextDescr = new wxStaticText( this, wxID_ANY, _("FreeFileSync requires access rights to avoid \"Operation not permitted\" errors when synchronizing your data (e.g. Mail, Messages, Calendars)."), wxDefaultPosition, wxSize( -1, -1 ), 0 );
- m_staticTextDescr->Wrap( -1 );
- bSizer95->Add( m_staticTextDescr, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 10 );
+ m_staticTextDescr = new wxStaticText( this, wxID_ANY, _("FreeFileSync requires access rights to avoid \"Operation not permitted\" errors when synchronizing your data (e.g. Mail, Messages, Calendars)."), wxDefaultPosition, wxSize( -1,-1 ), 0 );
+ m_staticTextDescr->Wrap( -1 );
+ bSizer95->Add( m_staticTextDescr, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 10 );
- m_staticline20 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer95->Add( m_staticline20, 0, wxEXPAND, 5 );
+ m_staticline20 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer95->Add( m_staticline20, 0, wxEXPAND, 5 );
- m_panel39 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
- m_panel39->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
+ m_panel39 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
+ m_panel39->SetBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOW ) );
- wxBoxSizer* bSizer166;
- bSizer166 = new wxBoxSizer( wxVERTICAL );
+ wxBoxSizer* bSizer166;
+ bSizer166 = new wxBoxSizer( wxVERTICAL );
- ffgSizer11 = new wxFlexGridSizer( 0, 2, 5, 5 );
- ffgSizer11->SetFlexibleDirection( wxBOTH );
- ffgSizer11->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
+ ffgSizer11 = new wxFlexGridSizer( 0, 2, 5, 5 );
+ ffgSizer11->SetFlexibleDirection( wxBOTH );
+ ffgSizer11->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
- m_staticTextStep1 = new wxStaticText( m_panel39, wxID_ANY, _("1."), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextStep1->Wrap( -1 );
- ffgSizer11->Add( m_staticTextStep1, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ m_staticTextStep1 = new wxStaticText( m_panel39, wxID_ANY, _("1."), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextStep1->Wrap( -1 );
+ ffgSizer11->Add( m_staticTextStep1, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
- m_buttonLocateBundle = new wxButton( m_panel39, wxID_ANY, _("Locate the FreeFileSync app"), wxDefaultPosition, wxDefaultSize, 0 );
- ffgSizer11->Add( m_buttonLocateBundle, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
+ m_buttonLocateBundle = new wxButton( m_panel39, wxID_ANY, _("Locate the FreeFileSync app"), wxDefaultPosition, wxDefaultSize, 0 );
+ ffgSizer11->Add( m_buttonLocateBundle, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
- m_staticTextStep2 = new wxStaticText( m_panel39, wxID_ANY, _("2."), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextStep2->Wrap( -1 );
- ffgSizer11->Add( m_staticTextStep2, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ m_staticTextStep2 = new wxStaticText( m_panel39, wxID_ANY, _("2."), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextStep2->Wrap( -1 );
+ ffgSizer11->Add( m_staticTextStep2, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
- m_buttonOpenSecurity = new wxButton( m_panel39, wxID_ANY, _("Open Security && Privacy"), wxDefaultPosition, wxDefaultSize, 0 );
- ffgSizer11->Add( m_buttonOpenSecurity, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
+ m_buttonOpenSecurity = new wxButton( m_panel39, wxID_ANY, _("Open Security && Privacy"), wxDefaultPosition, wxDefaultSize, 0 );
+ ffgSizer11->Add( m_buttonOpenSecurity, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
- m_staticTextStep3 = new wxStaticText( m_panel39, wxID_ANY, _("3."), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextStep3->Wrap( -1 );
- ffgSizer11->Add( m_staticTextStep3, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ m_staticTextStep3 = new wxStaticText( m_panel39, wxID_ANY, _("3."), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextStep3->Wrap( -1 );
+ ffgSizer11->Add( m_staticTextStep3, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
- m_staticTextAllowChanges = new wxStaticText( m_panel39, wxID_ANY, _("Click the lock to allow changes."), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextAllowChanges->Wrap( -1 );
- ffgSizer11->Add( m_staticTextAllowChanges, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_staticTextAllowChanges = new wxStaticText( m_panel39, wxID_ANY, _("Click the lock to allow changes."), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextAllowChanges->Wrap( -1 );
+ ffgSizer11->Add( m_staticTextAllowChanges, 0, wxALIGN_CENTER_VERTICAL, 5 );
- m_staticTextStep4 = new wxStaticText( m_panel39, wxID_ANY, _("4."), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextStep4->Wrap( -1 );
- ffgSizer11->Add( m_staticTextStep4, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
+ m_staticTextStep4 = new wxStaticText( m_panel39, wxID_ANY, _("4."), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextStep4->Wrap( -1 );
+ ffgSizer11->Add( m_staticTextStep4, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
- m_staticTextGrantAccess = new wxStaticText( m_panel39, wxID_ANY, _("Drag FreeFileSync into the panel."), wxDefaultPosition, wxDefaultSize, 0 );
- m_staticTextGrantAccess->Wrap( -1 );
- ffgSizer11->Add( m_staticTextGrantAccess, 0, wxALIGN_CENTER_VERTICAL, 5 );
+ m_staticTextGrantAccess = new wxStaticText( m_panel39, wxID_ANY, _("Drag FreeFileSync into the panel."), wxDefaultPosition, wxDefaultSize, 0 );
+ m_staticTextGrantAccess->Wrap( -1 );
+ ffgSizer11->Add( m_staticTextGrantAccess, 0, wxALIGN_CENTER_VERTICAL, 5 );
- bSizer166->Add( ffgSizer11, 0, wxALL|wxALIGN_CENTER_HORIZONTAL, 10 );
+ bSizer166->Add( ffgSizer11, 0, wxALL|wxALIGN_CENTER_HORIZONTAL, 10 );
- m_panel39->SetSizer( bSizer166 );
- m_panel39->Layout();
- bSizer166->Fit( m_panel39 );
- bSizer95->Add( m_panel39, 1, wxEXPAND, 5 );
+ m_panel39->SetSizer( bSizer166 );
+ m_panel39->Layout();
+ bSizer166->Fit( m_panel39 );
+ bSizer95->Add( m_panel39, 1, wxEXPAND, 5 );
- m_staticline36 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
- bSizer95->Add( m_staticline36, 0, wxEXPAND, 5 );
+ m_staticline36 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
+ bSizer95->Add( m_staticline36, 0, wxEXPAND, 5 );
- m_checkBoxDontShowAgain = new wxCheckBox( this, wxID_ANY, _("&Don't show this dialog again"), wxDefaultPosition, wxDefaultSize, 0 );
- bSizer95->Add( m_checkBoxDontShowAgain, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 5 );
+ m_checkBoxDontShowAgain = new wxCheckBox( this, wxID_ANY, _("&Don't show this dialog again"), wxDefaultPosition, wxDefaultSize, 0 );
+ bSizer95->Add( m_checkBoxDontShowAgain, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 5 );
- bSizerStdButtons = new wxBoxSizer( wxHORIZONTAL );
+ bSizerStdButtons = new wxBoxSizer( wxHORIZONTAL );
- m_buttonClose = new wxButton( this, wxID_OK, _("Close"), wxDefaultPosition, wxSize( -1, -1 ), 0 );
+ m_buttonClose = new wxButton( this, wxID_OK, _("Close"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
- m_buttonClose->SetDefault();
- bSizerStdButtons->Add( m_buttonClose, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
+ m_buttonClose->SetDefault();
+ bSizerStdButtons->Add( m_buttonClose, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
- bSizer95->Add( bSizerStdButtons, 0, wxALIGN_RIGHT, 5 );
+ bSizer95->Add( bSizerStdButtons, 0, wxALIGN_RIGHT, 5 );
- bSizer330->Add( bSizer95, 1, wxEXPAND, 5 );
+ bSizer330->Add( bSizer95, 1, wxEXPAND, 5 );
- this->SetSizer( bSizer330 );
- this->Layout();
- bSizer330->Fit( this );
+ this->SetSizer( bSizer330 );
+ this->Layout();
+ bSizer330->Fit( this );
- this->Centre( wxBOTH );
+ this->Centre( wxBOTH );
- // Connect Events
- this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( WarnAccessRightsMissingDlgGenerated::onClose ) );
- m_buttonLocateBundle->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( WarnAccessRightsMissingDlgGenerated::onShowAppBundle ), NULL, this );
- m_buttonOpenSecurity->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( WarnAccessRightsMissingDlgGenerated::onOpenSecuritySettings ), NULL, this );
- m_checkBoxDontShowAgain->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( WarnAccessRightsMissingDlgGenerated::onCheckBoxClick ), NULL, this );
- m_buttonClose->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( WarnAccessRightsMissingDlgGenerated::onOkay ), NULL, this );
+ // Connect Events
+ this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( WarnAccessRightsMissingDlgGenerated::onClose ) );
+ m_buttonLocateBundle->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( WarnAccessRightsMissingDlgGenerated::onShowAppBundle ), NULL, this );
+ m_buttonOpenSecurity->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( WarnAccessRightsMissingDlgGenerated::onOpenSecuritySettings ), NULL, this );
+ m_checkBoxDontShowAgain->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( WarnAccessRightsMissingDlgGenerated::onCheckBoxClick ), NULL, this );
+ m_buttonClose->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( WarnAccessRightsMissingDlgGenerated::onOkay ), NULL, this );
}
WarnAccessRightsMissingDlgGenerated::~WarnAccessRightsMissingDlgGenerated()
diff --git a/FreeFileSync/Source/ui/gui_generated.h b/FreeFileSync/Source/ui/gui_generated.h
index 21710235..a69eaffe 100644
--- a/FreeFileSync/Source/ui/gui_generated.h
+++ b/FreeFileSync/Source/ui/gui_generated.h
@@ -10,7 +10,7 @@
#include <wx/artprov.h>
#include <wx/xrc/xmlres.h>
#include <wx/intl.h>
-namespace zen { class BitmapTextButton; }
+namespace zen{ class BitmapTextButton; }
#include "wx+/bitmap_button.h"
#include "folder_history_box.h"
@@ -64,228 +64,228 @@ namespace zen { class BitmapTextButton; }
///////////////////////////////////////////////////////////////////////////////
class MainDialogGenerated : public wxFrame
{
-private:
-
-protected:
- wxMenuBar* m_menubar;
- wxMenu* m_menuFile;
- wxMenuItem* m_menuItemNew;
- wxMenuItem* m_menuItemLoad;
- wxMenuItem* m_menuItemSave;
- wxMenuItem* m_menuItemSaveAs;
- wxMenuItem* m_menuItemSaveAsBatch;
- wxMenuItem* m_menuItemQuit;
- wxMenu* m_menuActions;
- wxMenuItem* m_menuItemShowLog;
- wxMenuItem* m_menuItemCompare;
- wxMenuItem* m_menuItemCompSettings;
- wxMenuItem* m_menuItemFilter;
- wxMenuItem* m_menuItemSyncSettings;
- wxMenuItem* m_menuItemSynchronize;
- wxMenu* m_menuTools;
- wxMenuItem* m_menuItemOptions;
- wxMenu* m_menuLanguages;
- wxMenuItem* m_menuItemFind;
- wxMenuItem* m_menuItemExportList;
- wxMenuItem* m_menuItemResetLayout;
- wxMenuItem* m_menuItemShowMain;
- wxMenuItem* m_menuItemShowFolders;
- wxMenuItem* m_menuItemShowViewFilter;
- wxMenuItem* m_menuItemShowConfig;
- wxMenuItem* m_menuItemShowOverview;
- wxMenu* m_menuHelp;
- wxMenuItem* m_menuItemHelp;
- wxMenuItem* m_menuItemCheckVersionNow;
- wxMenuItem* m_menuItemCheckVersionAuto;
- wxMenuItem* m_menuItemAbout;
- wxBoxSizer* bSizerPanelHolder;
- wxPanel* m_panelTopButtons;
- wxBoxSizer* bSizerTopButtons;
- wxBitmapButton* m_bpButtonCmpConfig;
- wxButton* m_buttonCancel;
- zen::BitmapTextButton* m_buttonCompare;
- wxBitmapButton* m_bpButtonCmpContext;
- wxBitmapButton* m_bpButtonFilter;
- wxBitmapButton* m_bpButtonFilterContext;
- wxBitmapButton* m_bpButtonSyncConfig;
- zen::BitmapTextButton* m_buttonSync;
- wxBitmapButton* m_bpButtonSyncContext;
- wxPanel* m_panelDirectoryPairs;
- wxStaticText* m_staticTextResolvedPathL;
- wxBitmapButton* m_bpButtonAddPair;
- wxButton* m_buttonSelectFolderLeft;
- wxPanel* m_panelTopCenter;
- wxBitmapButton* m_bpButtonSwapSides;
- wxStaticText* m_staticTextResolvedPathR;
- wxButton* m_buttonSelectFolderRight;
- wxScrolledWindow* m_scrolledWindowFolderPairs;
- wxBoxSizer* bSizerAddFolderPairs;
- zen::Grid* m_gridOverview;
- wxPanel* m_panelCenter;
- fff::TripleSplitter* m_splitterMain;
- zen::Grid* m_gridMainL;
- zen::Grid* m_gridMainC;
- zen::Grid* m_gridMainR;
- wxPanel* m_panelStatusBar;
- wxBoxSizer* bSizerFileStatus;
- wxBoxSizer* bSizerStatusLeft;
- wxBoxSizer* bSizerStatusLeftDirectories;
- wxStaticBitmap* m_bitmapSmallDirectoryLeft;
- wxStaticText* m_staticTextStatusLeftDirs;
- wxBoxSizer* bSizerStatusLeftFiles;
- wxStaticBitmap* m_bitmapSmallFileLeft;
- wxStaticText* m_staticTextStatusLeftFiles;
- wxStaticText* m_staticTextStatusLeftBytes;
- wxStaticLine* m_staticline9;
- wxStaticText* m_staticTextStatusCenter;
- wxBoxSizer* bSizerStatusRight;
- wxStaticLine* m_staticline10;
- wxBoxSizer* bSizerStatusRightDirectories;
- wxStaticBitmap* m_bitmapSmallDirectoryRight;
- wxStaticText* m_staticTextStatusRightDirs;
- wxBoxSizer* bSizerStatusRightFiles;
- wxStaticBitmap* m_bitmapSmallFileRight;
- wxStaticText* m_staticTextStatusRightFiles;
- wxStaticText* m_staticTextStatusRightBytes;
- wxStaticText* m_staticTextFullStatus;
- wxPanel* m_panelSearch;
- wxBitmapButton* m_bpButtonHideSearch;
- wxStaticText* m_staticText101;
- wxTextCtrl* m_textCtrlSearchTxt;
- wxCheckBox* m_checkBoxMatchCase;
- wxPanel* m_panelLog;
- wxBoxSizer* bSizerLog;
- wxBoxSizer* bSizer42;
- wxFlexGridSizer* ffgSizer11;
- wxFlexGridSizer* ffgSizer111;
- wxFlexGridSizer* ffgSizer112;
- wxStaticLine* m_staticline70;
- wxPanel* m_panelConfig;
- wxBoxSizer* bSizerConfig;
- wxBoxSizer* bSizerCfgHistoryButtons;
- wxBitmapButton* m_bpButtonNew;
- wxStaticText* m_staticText951;
- wxBitmapButton* m_bpButtonOpen;
- wxStaticText* m_staticText95;
- wxBitmapButton* m_bpButtonSave;
- wxStaticText* m_staticText961;
- wxBitmapButton* m_bpButtonSaveAs;
- wxBitmapButton* m_bpButtonSaveAsBatch;
- wxStaticText* m_staticText97;
- wxStaticLine* m_staticline81;
- zen::Grid* m_gridCfgHistory;
- wxPanel* m_panelViewFilter;
- wxBoxSizer* bSizerViewFilter;
- wxBitmapButton* m_bpButtonToggleLog;
- zen::ToggleButton* m_bpButtonViewType;
- zen::ToggleButton* m_bpButtonShowExcluded;
- zen::ToggleButton* m_bpButtonShowDeleteLeft;
- zen::ToggleButton* m_bpButtonShowUpdateLeft;
- zen::ToggleButton* m_bpButtonShowCreateLeft;
- zen::ToggleButton* m_bpButtonShowLeftOnly;
- zen::ToggleButton* m_bpButtonShowLeftNewer;
- zen::ToggleButton* m_bpButtonShowEqual;
- zen::ToggleButton* m_bpButtonShowDoNothing;
- zen::ToggleButton* m_bpButtonShowDifferent;
- zen::ToggleButton* m_bpButtonShowRightNewer;
- zen::ToggleButton* m_bpButtonShowRightOnly;
- zen::ToggleButton* m_bpButtonShowCreateRight;
- zen::ToggleButton* m_bpButtonShowUpdateRight;
- zen::ToggleButton* m_bpButtonShowDeleteRight;
- zen::ToggleButton* m_bpButtonShowConflict;
- wxBitmapButton* m_bpButtonViewFilterContext;
- wxStaticText* m_staticText96;
- wxPanel* m_panelStatistics;
- wxBoxSizer* bSizer1801;
- wxStaticBitmap* m_bitmapDeleteLeft;
- wxStaticText* m_staticTextDeleteLeft;
- wxStaticBitmap* m_bitmapUpdateLeft;
- wxStaticText* m_staticTextUpdateLeft;
- wxStaticBitmap* m_bitmapCreateLeft;
- wxStaticText* m_staticTextCreateLeft;
- wxStaticBitmap* m_bitmapData;
- wxStaticText* m_staticTextData;
- wxStaticBitmap* m_bitmapCreateRight;
- wxStaticText* m_staticTextCreateRight;
- wxStaticBitmap* m_bitmapUpdateRight;
- wxStaticText* m_staticTextUpdateRight;
- wxStaticBitmap* m_bitmapDeleteRight;
- wxStaticText* m_staticTextDeleteRight;
-
- // Virtual event handlers, override them in your derived class
- virtual void onClose( wxCloseEvent& event ) { event.Skip(); }
- virtual void onConfigNew( wxCommandEvent& event ) { event.Skip(); }
- virtual void onConfigLoad( wxCommandEvent& event ) { event.Skip(); }
- virtual void onConfigSave( wxCommandEvent& event ) { event.Skip(); }
- virtual void onConfigSaveAs( wxCommandEvent& event ) { event.Skip(); }
- virtual void onSaveAsBatchJob( wxCommandEvent& event ) { event.Skip(); }
- virtual void onMenuQuit( wxCommandEvent& event ) { event.Skip(); }
- virtual void onToggleLog( wxCommandEvent& event ) { event.Skip(); }
- virtual void onCompare( wxCommandEvent& event ) { event.Skip(); }
- virtual void onCmpSettings( wxCommandEvent& event ) { event.Skip(); }
- virtual void onConfigureFilter( wxCommandEvent& event ) { event.Skip(); }
- virtual void onSyncSettings( wxCommandEvent& event ) { event.Skip(); }
- virtual void onStartSync( wxCommandEvent& event ) { event.Skip(); }
- virtual void onMenuOptions( wxCommandEvent& event ) { event.Skip(); }
- virtual void onMenuFindItem( wxCommandEvent& event ) { event.Skip(); }
- virtual void onMenuExportFileList( wxCommandEvent& event ) { event.Skip(); }
- virtual void onMenuResetLayout( wxCommandEvent& event ) { event.Skip(); }
- virtual void onShowHelp( wxCommandEvent& event ) { event.Skip(); }
- virtual void onMenuCheckVersion( wxCommandEvent& event ) { event.Skip(); }
- virtual void onMenuCheckVersionAutomatically( wxCommandEvent& event ) { event.Skip(); }
- virtual void onMenuAbout( wxCommandEvent& event ) { event.Skip(); }
- virtual void onCompSettingsContextMouse( wxMouseEvent& event ) { event.Skip(); }
- virtual void onCompSettingsContext( wxCommandEvent& event ) { event.Skip(); }
- virtual void onGlobalFilterContextMouse( wxMouseEvent& event ) { event.Skip(); }
- virtual void onGlobalFilterContext( wxCommandEvent& event ) { event.Skip(); }
- virtual void onSyncSettingsContextMouse( wxMouseEvent& event ) { event.Skip(); }
- virtual void onSyncSettingsContext( wxCommandEvent& event ) { event.Skip(); }
- virtual void onTopFolderPairAdd( wxCommandEvent& event ) { event.Skip(); }
- virtual void onTopFolderPairRemove( wxCommandEvent& event ) { event.Skip(); }
- virtual void onSwapSides( wxCommandEvent& event ) { event.Skip(); }
- virtual void onSwapSidesMouse( wxMouseEvent& event ) { event.Skip(); }
- virtual void onTopLocalCompCfg( wxCommandEvent& event ) { event.Skip(); }
- virtual void onTopLocalFilterCfg( wxCommandEvent& event ) { event.Skip(); }
- virtual void onTopLocalSyncCfg( wxCommandEvent& event ) { event.Skip(); }
- virtual void onHideSearchPanel( wxCommandEvent& event ) { event.Skip(); }
- virtual void onSearchGridEnter( wxCommandEvent& event ) { event.Skip(); }
- virtual void onToggleViewType( wxCommandEvent& event ) { event.Skip(); }
- virtual void onViewTypeContextMouse( wxMouseEvent& event ) { event.Skip(); }
- virtual void onToggleViewButton( wxCommandEvent& event ) { event.Skip(); }
- virtual void onViewFilterContextMouse( wxMouseEvent& event ) { event.Skip(); }
- virtual void onViewFilterContext( wxCommandEvent& event ) { event.Skip(); }
-
-
-public:
- wxPanel* m_panelTopLeft;
- wxBitmapButton* m_bpButtonRemovePair;
- fff::FolderHistoryBox* m_folderPathLeft;
- wxBitmapButton* m_bpButtonSelectAltFolderLeft;
- wxBitmapButton* m_bpButtonLocalCompCfg;
- wxBitmapButton* m_bpButtonLocalFilter;
- wxBitmapButton* m_bpButtonLocalSyncCfg;
- wxPanel* m_panelTopRight;
- fff::FolderHistoryBox* m_folderPathRight;
- wxBitmapButton* m_bpButtonSelectAltFolderRight;
- wxStaticBitmap* m_bitmapSyncResult;
- wxStaticText* m_staticTextSyncResult;
- wxStaticText* m_staticTextProcessed;
- wxStaticText* m_staticTextRemaining;
- wxPanel* m_panelItemStats;
- wxStaticBitmap* m_bitmapItemStat;
- wxStaticText* m_staticTextItemsProcessed;
- wxStaticText* m_staticTextBytesProcessed;
- wxStaticText* m_staticTextItemsRemaining;
- wxStaticText* m_staticTextBytesRemaining;
- wxPanel* m_panelTimeStats;
- wxStaticBitmap* m_bitmapTimeStat;
- wxStaticText* m_staticTextTimeElapsed;
- wxBoxSizer* bSizerStatistics;
- wxBoxSizer* bSizerData;
-
- MainDialogGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("dummy"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1, -1 ), long style = wxDEFAULT_FRAME_STYLE|wxTAB_TRAVERSAL );
-
- ~MainDialogGenerated();
+ private:
+
+ protected:
+ wxMenuBar* m_menubar;
+ wxMenu* m_menuFile;
+ wxMenuItem* m_menuItemNew;
+ wxMenuItem* m_menuItemLoad;
+ wxMenuItem* m_menuItemSave;
+ wxMenuItem* m_menuItemSaveAs;
+ wxMenuItem* m_menuItemSaveAsBatch;
+ wxMenuItem* m_menuItemQuit;
+ wxMenu* m_menuActions;
+ wxMenuItem* m_menuItemShowLog;
+ wxMenuItem* m_menuItemCompare;
+ wxMenuItem* m_menuItemCompSettings;
+ wxMenuItem* m_menuItemFilter;
+ wxMenuItem* m_menuItemSyncSettings;
+ wxMenuItem* m_menuItemSynchronize;
+ wxMenu* m_menuTools;
+ wxMenuItem* m_menuItemOptions;
+ wxMenu* m_menuLanguages;
+ wxMenuItem* m_menuItemFind;
+ wxMenuItem* m_menuItemExportList;
+ wxMenuItem* m_menuItemResetLayout;
+ wxMenuItem* m_menuItemShowMain;
+ wxMenuItem* m_menuItemShowFolders;
+ wxMenuItem* m_menuItemShowViewFilter;
+ wxMenuItem* m_menuItemShowConfig;
+ wxMenuItem* m_menuItemShowOverview;
+ wxMenu* m_menuHelp;
+ wxMenuItem* m_menuItemHelp;
+ wxMenuItem* m_menuItemCheckVersionNow;
+ wxMenuItem* m_menuItemCheckVersionAuto;
+ wxMenuItem* m_menuItemAbout;
+ wxBoxSizer* bSizerPanelHolder;
+ wxPanel* m_panelTopButtons;
+ wxBoxSizer* bSizerTopButtons;
+ wxBitmapButton* m_bpButtonCmpConfig;
+ wxButton* m_buttonCancel;
+ zen::BitmapTextButton* m_buttonCompare;
+ wxBitmapButton* m_bpButtonCmpContext;
+ wxBitmapButton* m_bpButtonFilter;
+ wxBitmapButton* m_bpButtonFilterContext;
+ wxBitmapButton* m_bpButtonSyncConfig;
+ zen::BitmapTextButton* m_buttonSync;
+ wxBitmapButton* m_bpButtonSyncContext;
+ wxPanel* m_panelDirectoryPairs;
+ wxStaticText* m_staticTextResolvedPathL;
+ wxBitmapButton* m_bpButtonAddPair;
+ wxButton* m_buttonSelectFolderLeft;
+ wxPanel* m_panelTopCenter;
+ wxBitmapButton* m_bpButtonSwapSides;
+ wxStaticText* m_staticTextResolvedPathR;
+ wxButton* m_buttonSelectFolderRight;
+ wxScrolledWindow* m_scrolledWindowFolderPairs;
+ wxBoxSizer* bSizerAddFolderPairs;
+ zen::Grid* m_gridOverview;
+ wxPanel* m_panelCenter;
+ fff::TripleSplitter* m_splitterMain;
+ zen::Grid* m_gridMainL;
+ zen::Grid* m_gridMainC;
+ zen::Grid* m_gridMainR;
+ wxPanel* m_panelStatusBar;
+ wxBoxSizer* bSizerFileStatus;
+ wxBoxSizer* bSizerStatusLeft;
+ wxBoxSizer* bSizerStatusLeftDirectories;
+ wxStaticBitmap* m_bitmapSmallDirectoryLeft;
+ wxStaticText* m_staticTextStatusLeftDirs;
+ wxBoxSizer* bSizerStatusLeftFiles;
+ wxStaticBitmap* m_bitmapSmallFileLeft;
+ wxStaticText* m_staticTextStatusLeftFiles;
+ wxStaticText* m_staticTextStatusLeftBytes;
+ wxStaticLine* m_staticline9;
+ wxStaticText* m_staticTextStatusCenter;
+ wxBoxSizer* bSizerStatusRight;
+ wxStaticLine* m_staticline10;
+ wxBoxSizer* bSizerStatusRightDirectories;
+ wxStaticBitmap* m_bitmapSmallDirectoryRight;
+ wxStaticText* m_staticTextStatusRightDirs;
+ wxBoxSizer* bSizerStatusRightFiles;
+ wxStaticBitmap* m_bitmapSmallFileRight;
+ wxStaticText* m_staticTextStatusRightFiles;
+ wxStaticText* m_staticTextStatusRightBytes;
+ wxStaticText* m_staticTextFullStatus;
+ wxPanel* m_panelSearch;
+ wxBitmapButton* m_bpButtonHideSearch;
+ wxStaticText* m_staticText101;
+ wxTextCtrl* m_textCtrlSearchTxt;
+ wxCheckBox* m_checkBoxMatchCase;
+ wxPanel* m_panelLog;
+ wxBoxSizer* bSizerLog;
+ wxBoxSizer* bSizer42;
+ wxFlexGridSizer* ffgSizer11;
+ wxFlexGridSizer* ffgSizer111;
+ wxFlexGridSizer* ffgSizer112;
+ wxStaticLine* m_staticline70;
+ wxPanel* m_panelConfig;
+ wxBoxSizer* bSizerConfig;
+ wxBoxSizer* bSizerCfgHistoryButtons;
+ wxBitmapButton* m_bpButtonNew;
+ wxStaticText* m_staticText951;
+ wxBitmapButton* m_bpButtonOpen;
+ wxStaticText* m_staticText95;
+ wxBitmapButton* m_bpButtonSave;
+ wxStaticText* m_staticText961;
+ wxBitmapButton* m_bpButtonSaveAs;
+ wxBitmapButton* m_bpButtonSaveAsBatch;
+ wxStaticText* m_staticText97;
+ wxStaticLine* m_staticline81;
+ zen::Grid* m_gridCfgHistory;
+ wxPanel* m_panelViewFilter;
+ wxBoxSizer* bSizerViewFilter;
+ wxBitmapButton* m_bpButtonToggleLog;
+ zen::ToggleButton* m_bpButtonViewType;
+ zen::ToggleButton* m_bpButtonShowExcluded;
+ zen::ToggleButton* m_bpButtonShowDeleteLeft;
+ zen::ToggleButton* m_bpButtonShowUpdateLeft;
+ zen::ToggleButton* m_bpButtonShowCreateLeft;
+ zen::ToggleButton* m_bpButtonShowLeftOnly;
+ zen::ToggleButton* m_bpButtonShowLeftNewer;
+ zen::ToggleButton* m_bpButtonShowEqual;
+ zen::ToggleButton* m_bpButtonShowDoNothing;
+ zen::ToggleButton* m_bpButtonShowDifferent;
+ zen::ToggleButton* m_bpButtonShowRightNewer;
+ zen::ToggleButton* m_bpButtonShowRightOnly;
+ zen::ToggleButton* m_bpButtonShowCreateRight;
+ zen::ToggleButton* m_bpButtonShowUpdateRight;
+ zen::ToggleButton* m_bpButtonShowDeleteRight;
+ zen::ToggleButton* m_bpButtonShowConflict;
+ wxBitmapButton* m_bpButtonViewFilterContext;
+ wxStaticText* m_staticText96;
+ wxPanel* m_panelStatistics;
+ wxBoxSizer* bSizer1801;
+ wxStaticBitmap* m_bitmapDeleteLeft;
+ wxStaticText* m_staticTextDeleteLeft;
+ wxStaticBitmap* m_bitmapUpdateLeft;
+ wxStaticText* m_staticTextUpdateLeft;
+ wxStaticBitmap* m_bitmapCreateLeft;
+ wxStaticText* m_staticTextCreateLeft;
+ wxStaticBitmap* m_bitmapData;
+ wxStaticText* m_staticTextData;
+ wxStaticBitmap* m_bitmapCreateRight;
+ wxStaticText* m_staticTextCreateRight;
+ wxStaticBitmap* m_bitmapUpdateRight;
+ wxStaticText* m_staticTextUpdateRight;
+ wxStaticBitmap* m_bitmapDeleteRight;
+ wxStaticText* m_staticTextDeleteRight;
+
+ // Virtual event handlers, override them in your derived class
+ virtual void onClose( wxCloseEvent& event ) { event.Skip(); }
+ virtual void onConfigNew( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onConfigLoad( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onConfigSave( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onConfigSaveAs( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onSaveAsBatchJob( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onMenuQuit( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onToggleLog( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onCompare( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onCmpSettings( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onConfigureFilter( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onSyncSettings( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onStartSync( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onMenuOptions( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onMenuFindItem( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onMenuExportFileList( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onMenuResetLayout( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onShowHelp( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onMenuCheckVersion( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onMenuCheckVersionAutomatically( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onMenuAbout( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onCompSettingsContextMouse( wxMouseEvent& event ) { event.Skip(); }
+ virtual void onCompSettingsContext( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onGlobalFilterContextMouse( wxMouseEvent& event ) { event.Skip(); }
+ virtual void onGlobalFilterContext( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onSyncSettingsContextMouse( wxMouseEvent& event ) { event.Skip(); }
+ virtual void onSyncSettingsContext( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onTopFolderPairAdd( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onTopFolderPairRemove( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onSwapSides( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onSwapSidesMouse( wxMouseEvent& event ) { event.Skip(); }
+ virtual void onTopLocalCompCfg( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onTopLocalFilterCfg( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onTopLocalSyncCfg( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onHideSearchPanel( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onSearchGridEnter( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onToggleViewType( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onViewTypeContextMouse( wxMouseEvent& event ) { event.Skip(); }
+ virtual void onToggleViewButton( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onViewFilterContextMouse( wxMouseEvent& event ) { event.Skip(); }
+ virtual void onViewFilterContext( wxCommandEvent& event ) { event.Skip(); }
+
+
+ public:
+ wxPanel* m_panelTopLeft;
+ wxBitmapButton* m_bpButtonRemovePair;
+ fff::FolderHistoryBox* m_folderPathLeft;
+ wxBitmapButton* m_bpButtonSelectAltFolderLeft;
+ wxBitmapButton* m_bpButtonLocalCompCfg;
+ wxBitmapButton* m_bpButtonLocalFilter;
+ wxBitmapButton* m_bpButtonLocalSyncCfg;
+ wxPanel* m_panelTopRight;
+ fff::FolderHistoryBox* m_folderPathRight;
+ wxBitmapButton* m_bpButtonSelectAltFolderRight;
+ wxStaticBitmap* m_bitmapSyncResult;
+ wxStaticText* m_staticTextSyncResult;
+ wxStaticText* m_staticTextProcessed;
+ wxStaticText* m_staticTextRemaining;
+ wxPanel* m_panelItemStats;
+ wxStaticBitmap* m_bitmapItemStat;
+ wxStaticText* m_staticTextItemsProcessed;
+ wxStaticText* m_staticTextBytesProcessed;
+ wxStaticText* m_staticTextItemsRemaining;
+ wxStaticText* m_staticTextBytesRemaining;
+ wxPanel* m_panelTimeStats;
+ wxStaticBitmap* m_bitmapTimeStat;
+ wxStaticText* m_staticTextTimeElapsed;
+ wxBoxSizer* bSizerStatistics;
+ wxBoxSizer* bSizerData;
+
+ MainDialogGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("dummy"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxDEFAULT_FRAME_STYLE|wxTAB_TRAVERSAL );
+
+ ~MainDialogGenerated();
};
@@ -294,29 +294,29 @@ public:
///////////////////////////////////////////////////////////////////////////////
class FolderPairPanelGenerated : public wxPanel
{
-private:
-
-protected:
- wxButton* m_buttonSelectFolderLeft;
- wxButton* m_buttonSelectFolderRight;
-
-public:
- wxPanel* m_panelLeft;
- wxBitmapButton* m_bpButtonFolderPairOptions;
- wxBitmapButton* m_bpButtonRemovePair;
- fff::FolderHistoryBox* m_folderPathLeft;
- wxBitmapButton* m_bpButtonSelectAltFolderLeft;
- wxPanel* m_panel20;
- wxBitmapButton* m_bpButtonLocalCompCfg;
- wxBitmapButton* m_bpButtonLocalFilter;
- wxBitmapButton* m_bpButtonLocalSyncCfg;
- wxPanel* m_panelRight;
- fff::FolderHistoryBox* m_folderPathRight;
- wxBitmapButton* m_bpButtonSelectAltFolderRight;
-
- FolderPairPanelGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 698, 67 ), long style = 0, const wxString& name = wxEmptyString );
-
- ~FolderPairPanelGenerated();
+ private:
+
+ protected:
+ wxButton* m_buttonSelectFolderLeft;
+ wxButton* m_buttonSelectFolderRight;
+
+ public:
+ wxPanel* m_panelLeft;
+ wxBitmapButton* m_bpButtonFolderPairOptions;
+ wxBitmapButton* m_bpButtonRemovePair;
+ fff::FolderHistoryBox* m_folderPathLeft;
+ wxBitmapButton* m_bpButtonSelectAltFolderLeft;
+ wxPanel* m_panel20;
+ wxBitmapButton* m_bpButtonLocalCompCfg;
+ wxBitmapButton* m_bpButtonLocalFilter;
+ wxBitmapButton* m_bpButtonLocalSyncCfg;
+ wxPanel* m_panelRight;
+ fff::FolderHistoryBox* m_folderPathRight;
+ wxBitmapButton* m_bpButtonSelectAltFolderRight;
+
+ FolderPairPanelGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 698,67 ), long style = 0, const wxString& name = wxEmptyString );
+
+ ~FolderPairPanelGenerated();
};
@@ -325,233 +325,233 @@ public:
///////////////////////////////////////////////////////////////////////////////
class ConfigDlgGenerated : public wxDialog
{
-private:
-
-protected:
- wxStaticText* m_staticTextFolderPairLabel;
- wxListBox* m_listBoxFolderPair;
- wxNotebook* m_notebook;
- wxPanel* m_panelCompSettingsTab;
- wxBoxSizer* bSizerHeaderCompSettings;
- wxStaticText* m_staticTextMainCompSettings;
- wxCheckBox* m_checkBoxUseLocalCmpOptions;
- wxStaticLine* m_staticlineCompHeader;
- wxPanel* m_panelComparisonSettings;
- wxStaticText* m_staticText91;
- zen::ToggleButton* m_buttonByTimeSize;
- zen::ToggleButton* m_buttonByContent;
- zen::ToggleButton* m_buttonBySize;
- wxStaticBitmap* m_bitmapCompVariant;
- wxStaticText* m_staticTextCompVarDescription;
- wxStaticLine* m_staticline33;
- wxCheckBox* m_checkBoxSymlinksInclude;
- wxRadioButton* m_radioBtnSymlinksFollow;
- wxRadioButton* m_radioBtnSymlinksDirect;
- wxHyperlinkCtrl* m_hyperlink24;
- wxStaticLine* m_staticline44;
- wxStaticText* m_staticText112;
- wxTextCtrl* m_textCtrlTimeShift;
- wxStaticText* m_staticText1381;
- wxStaticText* m_staticText13811;
- wxHyperlinkCtrl* m_hyperlink241;
- wxStaticLine* m_staticline331;
- wxBoxSizer* bSizerCompMisc;
- wxStaticBitmap* m_bitmapIgnoreErrors;
- wxCheckBox* m_checkBoxIgnoreErrors;
- wxCheckBox* m_checkBoxAutoRetry;
- wxFlexGridSizer* fgSizerAutoRetry;
- wxStaticText* m_staticText96;
- wxStaticText* m_staticTextAutoRetryDelay;
- wxSpinCtrl* m_spinCtrlAutoRetryCount;
- wxSpinCtrl* m_spinCtrlAutoRetryDelay;
- wxStaticLine* m_staticline3311;
- wxStaticLine* m_staticline751;
- wxBoxSizer* bSizerPerformance;
- wxPanel* m_panel57;
- wxStaticBitmap* m_bitmapPerf;
- wxStaticText* m_staticText13611;
- wxHyperlinkCtrl* m_hyperlinkPerfDeRequired;
- wxBoxSizer* bSizer260;
- wxStaticText* m_staticTextPerfParallelOps;
- wxScrolledWindow* m_scrolledWindowPerf;
- wxFlexGridSizer* fgSizerPerf;
- wxHyperlinkCtrl* m_hyperlink1711;
- wxPanel* m_panelFilterSettingsTab;
- wxBoxSizer* bSizerHeaderFilterSettings;
- wxStaticText* m_staticTextMainFilterSettings;
- wxStaticText* m_staticTextLocalFilterSettings;
- wxStaticLine* m_staticlineFilterHeader;
- wxStaticBitmap* m_bitmapInclude;
- wxStaticText* m_staticText78;
- wxTextCtrl* m_textCtrlInclude;
- wxStaticBitmap* m_bitmapExclude;
- wxStaticText* m_staticText77;
- wxHyperlinkCtrl* m_hyperlink171;
- wxTextCtrl* m_textCtrlExclude;
- wxStaticLine* m_staticline24;
- wxStaticBitmap* m_bitmapFilterSize;
- wxStaticText* m_staticText80;
- wxStaticText* m_staticText101;
- wxSpinCtrl* m_spinCtrlMinSize;
- wxChoice* m_choiceUnitMinSize;
- wxStaticText* m_staticText102;
- wxSpinCtrl* m_spinCtrlMaxSize;
- wxChoice* m_choiceUnitMaxSize;
- wxStaticLine* m_staticline23;
- wxStaticBitmap* m_bitmapFilterDate;
- wxStaticText* m_staticText79;
- wxChoice* m_choiceUnitTimespan;
- wxSpinCtrl* m_spinCtrlTimespan;
- wxStaticLine* m_staticline231;
- wxButton* m_buttonDefault;
- wxBitmapButton* m_bpButtonDefaultContext;
- wxButton* m_buttonClear;
- wxPanel* m_panelSyncSettingsTab;
- wxBoxSizer* bSizerHeaderSyncSettings;
- wxStaticText* m_staticTextMainSyncSettings;
- wxCheckBox* m_checkBoxUseLocalSyncOptions;
- wxStaticLine* m_staticlineSyncHeader;
- wxPanel* m_panelSyncSettings;
- wxStaticText* m_staticText86;
- zen::ToggleButton* m_buttonTwoWay;
- zen::ToggleButton* m_buttonMirror;
- zen::ToggleButton* m_buttonUpdate;
- zen::ToggleButton* m_buttonCustom;
- wxBoxSizer* bSizerSyncDirHolder;
- wxBoxSizer* bSizerSyncDirections;
- wxStaticText* m_staticText184;
- wxFlexGridSizer* ffgSizer11;
- wxStaticBitmap* m_bitmapLeftOnly;
- wxStaticBitmap* m_bitmapLeftNewer;
- wxStaticBitmap* m_bitmapDifferent;
- wxStaticBitmap* m_bitmapConflict;
- wxStaticBitmap* m_bitmapRightNewer;
- wxStaticBitmap* m_bitmapRightOnly;
- wxBitmapButton* m_bpButtonLeftOnly;
- wxBitmapButton* m_bpButtonLeftNewer;
- wxBitmapButton* m_bpButtonDifferent;
- wxBitmapButton* m_bpButtonConflict;
- wxBitmapButton* m_bpButtonRightNewer;
- wxBitmapButton* m_bpButtonRightOnly;
- wxStaticText* m_staticText120;
- wxBoxSizer* bSizerDatabase;
- wxStaticBitmap* m_bitmapDatabase;
- wxStaticText* m_staticText145;
- wxStaticText* m_staticTextSyncVarDescription;
- wxStaticLine* m_staticline431;
- wxStaticLine* m_staticline72;
- wxCheckBox* m_checkBoxDetectMove;
- wxHyperlinkCtrl* m_hyperlink242;
- wxStaticLine* m_staticline54;
- wxBoxSizer* bSizer2361;
- wxStaticText* m_staticText87;
- zen::ToggleButton* m_buttonRecycler;
- zen::ToggleButton* m_buttonPermanent;
- zen::ToggleButton* m_buttonVersioning;
- wxBoxSizer* bSizerVersioningHolder;
- wxStaticBitmap* m_bitmapDeletionType;
- wxStaticText* m_staticTextDeletionTypeDescription;
- wxPanel* m_panelVersioning;
- wxStaticBitmap* m_bitmapVersioning;
- wxStaticText* m_staticText155;
- wxHyperlinkCtrl* m_hyperlink243;
- fff::FolderHistoryBox* m_versioningFolderPath;
- wxButton* m_buttonSelectVersioningFolder;
- wxStaticText* m_staticText93;
- wxChoice* m_choiceVersioningStyle;
- wxStaticText* m_staticTextNamingCvtPart1;
- wxStaticText* m_staticTextNamingCvtPart2Bold;
- wxStaticText* m_staticTextNamingCvtPart3;
- wxStaticLine* m_staticline69;
- wxStaticText* m_staticTextLimitVersions;
- wxFlexGridSizer* fgSizer15;
- wxCheckBox* m_checkBoxVersionMaxDays;
- wxCheckBox* m_checkBoxVersionCountMin;
- wxCheckBox* m_checkBoxVersionCountMax;
- wxSpinCtrl* m_spinCtrlVersionMaxDays;
- wxSpinCtrl* m_spinCtrlVersionCountMin;
- wxSpinCtrl* m_spinCtrlVersionCountMax;
- wxStaticLine* m_staticline582;
- wxBoxSizer* bSizerSyncMisc;
- wxStaticBitmap* m_bitmapEmail;
- wxCheckBox* m_checkBoxSendEmail;
- fff::CommandBox* m_comboBoxEmail;
- wxBitmapButton* m_bpButtonEmailAlways;
- wxBitmapButton* m_bpButtonEmailErrorWarning;
- wxBitmapButton* m_bpButtonEmailErrorOnly;
- wxHyperlinkCtrl* m_hyperlinkPerfDeRequired2;
- wxStaticLine* m_staticline57;
- wxPanel* m_panelLogfile;
- wxStaticBitmap* m_bitmapLogFile;
- wxCheckBox* m_checkBoxOverrideLogPath;
- wxButton* m_buttonSelectLogFolder;
- wxStaticLine* m_staticline80;
- wxStaticText* m_staticTextPostSync;
- fff::CommandBox* m_comboBoxPostSyncCommand;
- wxBoxSizer* bSizerStdButtons;
- wxButton* m_buttonOkay;
- wxButton* m_buttonCancel;
-
- // Virtual event handlers, override them in your derived class
- virtual void onClose( wxCloseEvent& event ) { event.Skip(); }
- virtual void onListBoxKeyEvent( wxKeyEvent& event ) { event.Skip(); }
- virtual void onSelectFolderPair( wxCommandEvent& event ) { event.Skip(); }
- virtual void onToggleLocalCompSettings( wxCommandEvent& event ) { event.Skip(); }
- virtual void onCompByTimeSize( wxCommandEvent& event ) { event.Skip(); }
- virtual void onCompByTimeSizeDouble( wxMouseEvent& event ) { event.Skip(); }
- virtual void onCompByContent( wxCommandEvent& event ) { event.Skip(); }
- virtual void onCompByContentDouble( wxMouseEvent& event ) { event.Skip(); }
- virtual void onCompBySize( wxCommandEvent& event ) { event.Skip(); }
- virtual void onCompBySizeDouble( wxMouseEvent& event ) { event.Skip(); }
- virtual void onChangeCompOption( wxCommandEvent& event ) { event.Skip(); }
- virtual void onToggleIgnoreErrors( wxCommandEvent& event ) { event.Skip(); }
- virtual void onToggleAutoRetry( wxCommandEvent& event ) { event.Skip(); }
- virtual void onChangeFilterOption( wxCommandEvent& event ) { event.Skip(); }
- virtual void onFilterDefault( wxCommandEvent& event ) { event.Skip(); }
- virtual void onFilterDefaultContextMouse( wxMouseEvent& event ) { event.Skip(); }
- virtual void onFilterDefaultContext( wxCommandEvent& event ) { event.Skip(); }
- virtual void onFilterClear( wxCommandEvent& event ) { event.Skip(); }
- virtual void onToggleLocalSyncSettings( wxCommandEvent& event ) { event.Skip(); }
- virtual void onSyncTwoWay( wxCommandEvent& event ) { event.Skip(); }
- virtual void onSyncTwoWayDouble( wxMouseEvent& event ) { event.Skip(); }
- virtual void onSyncMirror( wxCommandEvent& event ) { event.Skip(); }
- virtual void onSyncMirrorDouble( wxMouseEvent& event ) { event.Skip(); }
- virtual void onSyncUpdate( wxCommandEvent& event ) { event.Skip(); }
- virtual void onSyncUpdateDouble( wxMouseEvent& event ) { event.Skip(); }
- virtual void onSyncCustom( wxCommandEvent& event ) { event.Skip(); }
- virtual void onSyncCustomDouble( wxMouseEvent& event ) { event.Skip(); }
- virtual void onExLeftSideOnly( wxCommandEvent& event ) { event.Skip(); }
- virtual void onLeftNewer( wxCommandEvent& event ) { event.Skip(); }
- virtual void onDifferent( wxCommandEvent& event ) { event.Skip(); }
- virtual void onConflict( wxCommandEvent& event ) { event.Skip(); }
- virtual void onRightNewer( wxCommandEvent& event ) { event.Skip(); }
- virtual void onExRightSideOnly( wxCommandEvent& event ) { event.Skip(); }
- virtual void onToggleDetectMovedFiles( wxCommandEvent& event ) { event.Skip(); }
- virtual void onDeletionRecycler( wxCommandEvent& event ) { event.Skip(); }
- virtual void onDeletionPermanent( wxCommandEvent& event ) { event.Skip(); }
- virtual void onDeletionVersioning( wxCommandEvent& event ) { event.Skip(); }
- virtual void onChanegVersioningStyle( wxCommandEvent& event ) { event.Skip(); }
- virtual void onToggleVersioningLimit( wxCommandEvent& event ) { event.Skip(); }
- virtual void onToggleMiscEmail( wxCommandEvent& event ) { event.Skip(); }
- virtual void onEmailAlways( wxCommandEvent& event ) { event.Skip(); }
- virtual void onEmailErrorWarning( wxCommandEvent& event ) { event.Skip(); }
- virtual void onEmailErrorOnly( wxCommandEvent& event ) { event.Skip(); }
- virtual void onToggleMiscOption( wxCommandEvent& event ) { event.Skip(); }
- virtual void onOkay( wxCommandEvent& event ) { event.Skip(); }
- virtual void onCancel( wxCommandEvent& event ) { event.Skip(); }
-
-
-public:
- wxStaticBitmap* m_bitmapRetryErrors;
- wxStaticText* m_staticTextFilterDescr;
- wxBitmapButton* m_bpButtonSelectVersioningAltFolder;
- wxBitmapButton* m_bpButtonSelectAltLogFolder;
- fff::FolderHistoryBox* m_logFolderPath;
- wxChoice* m_choicePostSyncCondition;
-
- ConfigDlgGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Synchronization Settings"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1, -1 ), long style = wxDEFAULT_DIALOG_STYLE|wxMAXIMIZE_BOX|wxRESIZE_BORDER );
-
- ~ConfigDlgGenerated();
+ private:
+
+ protected:
+ wxStaticText* m_staticTextFolderPairLabel;
+ wxListBox* m_listBoxFolderPair;
+ wxNotebook* m_notebook;
+ wxPanel* m_panelCompSettingsTab;
+ wxBoxSizer* bSizerHeaderCompSettings;
+ wxStaticText* m_staticTextMainCompSettings;
+ wxCheckBox* m_checkBoxUseLocalCmpOptions;
+ wxStaticLine* m_staticlineCompHeader;
+ wxPanel* m_panelComparisonSettings;
+ wxStaticText* m_staticText91;
+ zen::ToggleButton* m_buttonByTimeSize;
+ zen::ToggleButton* m_buttonByContent;
+ zen::ToggleButton* m_buttonBySize;
+ wxStaticBitmap* m_bitmapCompVariant;
+ wxStaticText* m_staticTextCompVarDescription;
+ wxStaticLine* m_staticline33;
+ wxCheckBox* m_checkBoxSymlinksInclude;
+ wxRadioButton* m_radioBtnSymlinksFollow;
+ wxRadioButton* m_radioBtnSymlinksDirect;
+ wxHyperlinkCtrl* m_hyperlink24;
+ wxStaticLine* m_staticline44;
+ wxStaticText* m_staticText112;
+ wxTextCtrl* m_textCtrlTimeShift;
+ wxStaticText* m_staticText1381;
+ wxStaticText* m_staticText13811;
+ wxHyperlinkCtrl* m_hyperlink241;
+ wxStaticLine* m_staticline331;
+ wxBoxSizer* bSizerCompMisc;
+ wxStaticBitmap* m_bitmapIgnoreErrors;
+ wxCheckBox* m_checkBoxIgnoreErrors;
+ wxCheckBox* m_checkBoxAutoRetry;
+ wxFlexGridSizer* fgSizerAutoRetry;
+ wxStaticText* m_staticText96;
+ wxStaticText* m_staticTextAutoRetryDelay;
+ wxSpinCtrl* m_spinCtrlAutoRetryCount;
+ wxSpinCtrl* m_spinCtrlAutoRetryDelay;
+ wxStaticLine* m_staticline3311;
+ wxStaticLine* m_staticline751;
+ wxBoxSizer* bSizerPerformance;
+ wxPanel* m_panel57;
+ wxStaticBitmap* m_bitmapPerf;
+ wxStaticText* m_staticText13611;
+ wxHyperlinkCtrl* m_hyperlinkPerfDeRequired;
+ wxBoxSizer* bSizer260;
+ wxStaticText* m_staticTextPerfParallelOps;
+ wxScrolledWindow* m_scrolledWindowPerf;
+ wxFlexGridSizer* fgSizerPerf;
+ wxHyperlinkCtrl* m_hyperlink1711;
+ wxPanel* m_panelFilterSettingsTab;
+ wxBoxSizer* bSizerHeaderFilterSettings;
+ wxStaticText* m_staticTextMainFilterSettings;
+ wxStaticText* m_staticTextLocalFilterSettings;
+ wxStaticLine* m_staticlineFilterHeader;
+ wxStaticBitmap* m_bitmapInclude;
+ wxStaticText* m_staticText78;
+ wxTextCtrl* m_textCtrlInclude;
+ wxStaticBitmap* m_bitmapExclude;
+ wxStaticText* m_staticText77;
+ wxHyperlinkCtrl* m_hyperlink171;
+ wxTextCtrl* m_textCtrlExclude;
+ wxStaticLine* m_staticline24;
+ wxStaticBitmap* m_bitmapFilterSize;
+ wxStaticText* m_staticText80;
+ wxStaticText* m_staticText101;
+ wxSpinCtrl* m_spinCtrlMinSize;
+ wxChoice* m_choiceUnitMinSize;
+ wxStaticText* m_staticText102;
+ wxSpinCtrl* m_spinCtrlMaxSize;
+ wxChoice* m_choiceUnitMaxSize;
+ wxStaticLine* m_staticline23;
+ wxStaticBitmap* m_bitmapFilterDate;
+ wxStaticText* m_staticText79;
+ wxChoice* m_choiceUnitTimespan;
+ wxSpinCtrl* m_spinCtrlTimespan;
+ wxStaticLine* m_staticline231;
+ wxButton* m_buttonDefault;
+ wxBitmapButton* m_bpButtonDefaultContext;
+ wxButton* m_buttonClear;
+ wxPanel* m_panelSyncSettingsTab;
+ wxBoxSizer* bSizerHeaderSyncSettings;
+ wxStaticText* m_staticTextMainSyncSettings;
+ wxCheckBox* m_checkBoxUseLocalSyncOptions;
+ wxStaticLine* m_staticlineSyncHeader;
+ wxPanel* m_panelSyncSettings;
+ wxStaticText* m_staticText86;
+ zen::ToggleButton* m_buttonTwoWay;
+ zen::ToggleButton* m_buttonMirror;
+ zen::ToggleButton* m_buttonUpdate;
+ zen::ToggleButton* m_buttonCustom;
+ wxBoxSizer* bSizerSyncDirHolder;
+ wxBoxSizer* bSizerSyncDirections;
+ wxStaticText* m_staticText184;
+ wxFlexGridSizer* ffgSizer11;
+ wxStaticBitmap* m_bitmapLeftOnly;
+ wxStaticBitmap* m_bitmapLeftNewer;
+ wxStaticBitmap* m_bitmapDifferent;
+ wxStaticBitmap* m_bitmapConflict;
+ wxStaticBitmap* m_bitmapRightNewer;
+ wxStaticBitmap* m_bitmapRightOnly;
+ wxBitmapButton* m_bpButtonLeftOnly;
+ wxBitmapButton* m_bpButtonLeftNewer;
+ wxBitmapButton* m_bpButtonDifferent;
+ wxBitmapButton* m_bpButtonConflict;
+ wxBitmapButton* m_bpButtonRightNewer;
+ wxBitmapButton* m_bpButtonRightOnly;
+ wxStaticText* m_staticText120;
+ wxBoxSizer* bSizerDatabase;
+ wxStaticBitmap* m_bitmapDatabase;
+ wxStaticText* m_staticText145;
+ wxStaticText* m_staticTextSyncVarDescription;
+ wxStaticLine* m_staticline431;
+ wxStaticLine* m_staticline72;
+ wxCheckBox* m_checkBoxDetectMove;
+ wxHyperlinkCtrl* m_hyperlink242;
+ wxStaticLine* m_staticline54;
+ wxBoxSizer* bSizer2361;
+ wxStaticText* m_staticText87;
+ zen::ToggleButton* m_buttonRecycler;
+ zen::ToggleButton* m_buttonPermanent;
+ zen::ToggleButton* m_buttonVersioning;
+ wxBoxSizer* bSizerVersioningHolder;
+ wxStaticBitmap* m_bitmapDeletionType;
+ wxStaticText* m_staticTextDeletionTypeDescription;
+ wxPanel* m_panelVersioning;
+ wxStaticBitmap* m_bitmapVersioning;
+ wxStaticText* m_staticText155;
+ wxHyperlinkCtrl* m_hyperlink243;
+ fff::FolderHistoryBox* m_versioningFolderPath;
+ wxButton* m_buttonSelectVersioningFolder;
+ wxStaticText* m_staticText93;
+ wxChoice* m_choiceVersioningStyle;
+ wxStaticText* m_staticTextNamingCvtPart1;
+ wxStaticText* m_staticTextNamingCvtPart2Bold;
+ wxStaticText* m_staticTextNamingCvtPart3;
+ wxStaticLine* m_staticline69;
+ wxStaticText* m_staticTextLimitVersions;
+ wxFlexGridSizer* fgSizer15;
+ wxCheckBox* m_checkBoxVersionMaxDays;
+ wxCheckBox* m_checkBoxVersionCountMin;
+ wxCheckBox* m_checkBoxVersionCountMax;
+ wxSpinCtrl* m_spinCtrlVersionMaxDays;
+ wxSpinCtrl* m_spinCtrlVersionCountMin;
+ wxSpinCtrl* m_spinCtrlVersionCountMax;
+ wxStaticLine* m_staticline582;
+ wxBoxSizer* bSizerSyncMisc;
+ wxStaticBitmap* m_bitmapEmail;
+ wxCheckBox* m_checkBoxSendEmail;
+ fff::CommandBox* m_comboBoxEmail;
+ wxBitmapButton* m_bpButtonEmailAlways;
+ wxBitmapButton* m_bpButtonEmailErrorWarning;
+ wxBitmapButton* m_bpButtonEmailErrorOnly;
+ wxHyperlinkCtrl* m_hyperlinkPerfDeRequired2;
+ wxStaticLine* m_staticline57;
+ wxPanel* m_panelLogfile;
+ wxStaticBitmap* m_bitmapLogFile;
+ wxCheckBox* m_checkBoxOverrideLogPath;
+ wxButton* m_buttonSelectLogFolder;
+ wxStaticLine* m_staticline80;
+ wxStaticText* m_staticTextPostSync;
+ fff::CommandBox* m_comboBoxPostSyncCommand;
+ wxBoxSizer* bSizerStdButtons;
+ wxButton* m_buttonOkay;
+ wxButton* m_buttonCancel;
+
+ // Virtual event handlers, override them in your derived class
+ virtual void onClose( wxCloseEvent& event ) { event.Skip(); }
+ virtual void onListBoxKeyEvent( wxKeyEvent& event ) { event.Skip(); }
+ virtual void onSelectFolderPair( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onToggleLocalCompSettings( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onCompByTimeSize( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onCompByTimeSizeDouble( wxMouseEvent& event ) { event.Skip(); }
+ virtual void onCompByContent( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onCompByContentDouble( wxMouseEvent& event ) { event.Skip(); }
+ virtual void onCompBySize( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onCompBySizeDouble( wxMouseEvent& event ) { event.Skip(); }
+ virtual void onChangeCompOption( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onToggleIgnoreErrors( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onToggleAutoRetry( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onChangeFilterOption( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onFilterDefault( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onFilterDefaultContextMouse( wxMouseEvent& event ) { event.Skip(); }
+ virtual void onFilterDefaultContext( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onFilterClear( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onToggleLocalSyncSettings( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onSyncTwoWay( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onSyncTwoWayDouble( wxMouseEvent& event ) { event.Skip(); }
+ virtual void onSyncMirror( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onSyncMirrorDouble( wxMouseEvent& event ) { event.Skip(); }
+ virtual void onSyncUpdate( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onSyncUpdateDouble( wxMouseEvent& event ) { event.Skip(); }
+ virtual void onSyncCustom( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onSyncCustomDouble( wxMouseEvent& event ) { event.Skip(); }
+ virtual void onExLeftSideOnly( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onLeftNewer( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onDifferent( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onConflict( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onRightNewer( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onExRightSideOnly( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onToggleDetectMovedFiles( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onDeletionRecycler( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onDeletionPermanent( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onDeletionVersioning( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onChanegVersioningStyle( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onToggleVersioningLimit( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onToggleMiscEmail( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onEmailAlways( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onEmailErrorWarning( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onEmailErrorOnly( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onToggleMiscOption( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onOkay( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onCancel( wxCommandEvent& event ) { event.Skip(); }
+
+
+ public:
+ wxStaticBitmap* m_bitmapRetryErrors;
+ wxStaticText* m_staticTextFilterDescr;
+ wxBitmapButton* m_bpButtonSelectVersioningAltFolder;
+ wxBitmapButton* m_bpButtonSelectAltLogFolder;
+ fff::FolderHistoryBox* m_logFolderPath;
+ wxChoice* m_choicePostSyncCondition;
+
+ ConfigDlgGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Synchronization Settings"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxDEFAULT_DIALOG_STYLE|wxMAXIMIZE_BOX|wxRESIZE_BORDER );
+
+ ~ConfigDlgGenerated();
};
@@ -560,113 +560,114 @@ public:
///////////////////////////////////////////////////////////////////////////////
class CloudSetupDlgGenerated : public wxDialog
{
-private:
-
-protected:
- wxStaticBitmap* m_bitmapCloud;
- wxStaticText* m_staticText136;
- wxToggleButton* m_toggleBtnGdrive;
- wxToggleButton* m_toggleBtnSftp;
- wxToggleButton* m_toggleBtnFtp;
- wxStaticLine* m_staticline371;
- wxPanel* m_panel41;
- wxBoxSizer* bSizerGdrive;
- wxStaticBitmap* m_bitmapGdriveUser;
- wxStaticText* m_staticText166;
- wxListBox* m_listBoxGdriveUsers;
- zen::BitmapTextButton* m_buttonGdriveAddUser;
- zen::BitmapTextButton* m_buttonGdriveRemoveUser;
- wxStaticLine* m_staticline841;
- wxStaticBitmap* m_bitmapGdriveDrive;
- wxStaticText* m_staticText186;
- wxListBox* m_listBoxGdriveDrives;
- wxStaticLine* m_staticline73;
- wxBoxSizer* bSizerServer;
- wxStaticBitmap* m_bitmapServer;
- wxStaticText* m_staticText12311;
- wxTextCtrl* m_textCtrlServer;
- wxStaticText* m_staticText1233;
- wxTextCtrl* m_textCtrlPort;
- wxStaticLine* m_staticline58;
- wxBoxSizer* bSizerAuth;
- wxBoxSizer* bSizerAuthInner;
- wxBoxSizer* bSizerFtpEncrypt;
- wxStaticText* m_staticText1251;
- wxRadioButton* m_radioBtnEncryptNone;
- wxRadioButton* m_radioBtnEncryptSsl;
- wxStaticLine* m_staticline5721;
- wxBoxSizer* bSizerSftpAuth;
- wxStaticText* m_staticText125;
- wxRadioButton* m_radioBtnPassword;
- wxRadioButton* m_radioBtnKeyfile;
- wxRadioButton* m_radioBtnAgent;
- wxStaticLine* m_staticline572;
- wxPanel* m_panelAuth;
- wxStaticText* m_staticText123;
- wxTextCtrl* m_textCtrlUserName;
- wxStaticText* m_staticTextKeyfile;
- wxBoxSizer* bSizerKeyFile;
- wxTextCtrl* m_textCtrlKeyfilePath;
- wxButton* m_buttonSelectKeyfile;
- wxStaticText* m_staticTextPassword;
- wxBoxSizer* bSizerPassword;
- wxTextCtrl* m_textCtrlPasswordVisible;
- wxTextCtrl* m_textCtrlPasswordHidden;
- wxCheckBox* m_checkBoxShowPassword;
- wxStaticLine* m_staticline581;
- wxStaticBitmap* m_bitmapServerDir;
- wxStaticText* m_staticText1232;
- wxTextCtrl* m_textCtrlServerPath;
- wxButton* m_buttonSelectFolder;
- wxBoxSizer* bSizerAccessTimeout;
- wxStaticText* m_staticTextTimeout;
- wxSpinCtrl* m_spinCtrlTimeout;
- wxStaticLine* m_staticline571;
- wxStaticBitmap* m_bitmapPerf;
- wxStaticText* m_staticText1361;
- wxHyperlinkCtrl* m_hyperlink171;
- wxStaticLine* m_staticline57;
- wxPanel* m_panel411;
- wxBoxSizer* bSizerConnectionsLabel;
- wxStaticText* m_staticTextConnectionsLabel;
- wxStaticText* m_staticTextConnectionsLabelSub;
- wxSpinCtrl* m_spinCtrlConnectionCount;
- wxStaticText* m_staticTextConnectionCountDescr;
- wxHyperlinkCtrl* m_hyperlinkDeRequired;
- wxStaticText* m_staticTextChannelCountSftp;
- wxSpinCtrl* m_spinCtrlChannelCountSftp;
- wxButton* m_buttonChannelCountSftp;
- wxCheckBox* m_checkBoxAllowZlib;
- wxStaticText* m_staticTextZlibDescr;
- wxStaticLine* m_staticline12;
- wxBoxSizer* bSizerStdButtons;
- wxButton* m_buttonOkay;
- wxButton* m_buttonCancel;
-
- // Virtual event handlers, override them in your derived class
- virtual void onClose( wxCloseEvent& event ) { event.Skip(); }
- virtual void onConnectionGdrive( wxCommandEvent& event ) { event.Skip(); }
- virtual void onConnectionSftp( wxCommandEvent& event ) { event.Skip(); }
- virtual void onConnectionFtp( wxCommandEvent& event ) { event.Skip(); }
- virtual void onGdriveUserSelect( wxCommandEvent& event ) { event.Skip(); }
- virtual void onGdriveUserAdd( wxCommandEvent& event ) { event.Skip(); }
- virtual void onGdriveUserRemove( wxCommandEvent& event ) { event.Skip(); }
- virtual void onAuthPassword( wxCommandEvent& event ) { event.Skip(); }
- virtual void onAuthKeyfile( wxCommandEvent& event ) { event.Skip(); }
- virtual void onAuthAgent( wxCommandEvent& event ) { event.Skip(); }
- virtual void onSelectKeyfile( wxCommandEvent& event ) { event.Skip(); }
- virtual void onToggleShowPassword( wxCommandEvent& event ) { event.Skip(); }
- virtual void onBrowseCloudFolder( wxCommandEvent& event ) { event.Skip(); }
- virtual void onDetectServerChannelLimit( wxCommandEvent& event ) { event.Skip(); }
- virtual void onOkay( wxCommandEvent& event ) { event.Skip(); }
- virtual void onCancel( wxCommandEvent& event ) { event.Skip(); }
-
-
-public:
-
- CloudSetupDlgGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Access Online Storage"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1, -1 ), long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER );
-
- ~CloudSetupDlgGenerated();
+ private:
+
+ protected:
+ wxStaticBitmap* m_bitmapCloud;
+ wxStaticText* m_staticText136;
+ wxToggleButton* m_toggleBtnGdrive;
+ wxToggleButton* m_toggleBtnSftp;
+ wxToggleButton* m_toggleBtnFtp;
+ wxStaticLine* m_staticline371;
+ wxPanel* m_panel41;
+ wxBoxSizer* bSizerGdrive;
+ wxStaticBitmap* m_bitmapGdriveUser;
+ wxStaticText* m_staticText166;
+ wxListBox* m_listBoxGdriveUsers;
+ zen::BitmapTextButton* m_buttonGdriveAddUser;
+ zen::BitmapTextButton* m_buttonGdriveRemoveUser;
+ wxStaticLine* m_staticline841;
+ wxStaticBitmap* m_bitmapGdriveDrive;
+ wxStaticText* m_staticText186;
+ wxListBox* m_listBoxGdriveDrives;
+ wxStaticLine* m_staticline73;
+ wxBoxSizer* bSizerServer;
+ wxStaticBitmap* m_bitmapServer;
+ wxStaticText* m_staticText12311;
+ wxTextCtrl* m_textCtrlServer;
+ wxStaticText* m_staticText1233;
+ wxTextCtrl* m_textCtrlPort;
+ wxStaticLine* m_staticline58;
+ wxBoxSizer* bSizerAuth;
+ wxBoxSizer* bSizerAuthInner;
+ wxBoxSizer* bSizerFtpEncrypt;
+ wxStaticText* m_staticText1251;
+ wxRadioButton* m_radioBtnEncryptNone;
+ wxRadioButton* m_radioBtnEncryptSsl;
+ wxStaticLine* m_staticline5721;
+ wxBoxSizer* bSizerSftpAuth;
+ wxStaticText* m_staticText125;
+ wxRadioButton* m_radioBtnPassword;
+ wxRadioButton* m_radioBtnKeyfile;
+ wxRadioButton* m_radioBtnAgent;
+ wxStaticLine* m_staticline572;
+ wxPanel* m_panelAuth;
+ wxStaticText* m_staticText123;
+ wxTextCtrl* m_textCtrlUserName;
+ wxStaticText* m_staticTextKeyfile;
+ wxBoxSizer* bSizerKeyFile;
+ wxTextCtrl* m_textCtrlKeyfilePath;
+ wxButton* m_buttonSelectKeyfile;
+ wxStaticText* m_staticTextPassword;
+ wxBoxSizer* bSizerPassword;
+ wxTextCtrl* m_textCtrlPasswordVisible;
+ wxTextCtrl* m_textCtrlPasswordHidden;
+ wxCheckBox* m_checkBoxShowPassword;
+ wxStaticLine* m_staticline581;
+ wxStaticBitmap* m_bitmapServerDir;
+ wxStaticText* m_staticText1232;
+ wxStaticLine* m_staticline83;
+ wxStaticText* m_staticTextTimeout;
+ wxSpinCtrl* m_spinCtrlTimeout;
+ wxStaticLine* m_staticline82;
+ wxTextCtrl* m_textCtrlServerPath;
+ wxButton* m_buttonSelectFolder;
+ wxStaticLine* m_staticline571;
+ wxStaticBitmap* m_bitmapPerf;
+ wxStaticText* m_staticText1361;
+ wxHyperlinkCtrl* m_hyperlink171;
+ wxStaticLine* m_staticline57;
+ wxPanel* m_panel411;
+ wxBoxSizer* bSizerConnectionsLabel;
+ wxStaticText* m_staticTextConnectionsLabel;
+ wxStaticText* m_staticTextConnectionsLabelSub;
+ wxSpinCtrl* m_spinCtrlConnectionCount;
+ wxStaticText* m_staticTextConnectionCountDescr;
+ wxHyperlinkCtrl* m_hyperlinkDeRequired;
+ wxStaticText* m_staticTextChannelCountSftp;
+ wxSpinCtrl* m_spinCtrlChannelCountSftp;
+ wxButton* m_buttonChannelCountSftp;
+ wxCheckBox* m_checkBoxAllowZlib;
+ wxStaticText* m_staticTextZlibDescr;
+ wxStaticLine* m_staticline12;
+ wxBoxSizer* bSizerStdButtons;
+ wxButton* m_buttonOkay;
+ wxButton* m_buttonCancel;
+
+ // Virtual event handlers, override them in your derived class
+ virtual void onClose( wxCloseEvent& event ) { event.Skip(); }
+ virtual void onConnectionGdrive( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onConnectionSftp( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onConnectionFtp( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onGdriveUserSelect( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onGdriveUserAdd( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onGdriveUserRemove( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onAuthPassword( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onAuthKeyfile( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onAuthAgent( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onSelectKeyfile( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onToggleShowPassword( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onBrowseCloudFolder( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onDetectServerChannelLimit( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onOkay( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onCancel( wxCommandEvent& event ) { event.Skip(); }
+
+
+ public:
+
+ CloudSetupDlgGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Access Online Storage"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER );
+
+ ~CloudSetupDlgGenerated();
};
@@ -675,29 +676,29 @@ public:
///////////////////////////////////////////////////////////////////////////////
class AbstractFolderPickerGenerated : public wxDialog
{
-private:
+ private:
-protected:
- wxPanel* m_panel41;
- wxStaticText* m_staticTextStatus;
- wxTreeCtrl* m_treeCtrlFileSystem;
- wxStaticLine* m_staticline12;
- wxBoxSizer* bSizerStdButtons;
- wxButton* m_buttonOkay;
- wxButton* m_buttonCancel;
+ protected:
+ wxPanel* m_panel41;
+ wxStaticText* m_staticTextStatus;
+ wxTreeCtrl* m_treeCtrlFileSystem;
+ wxStaticLine* m_staticline12;
+ wxBoxSizer* bSizerStdButtons;
+ wxButton* m_buttonOkay;
+ wxButton* m_buttonCancel;
- // Virtual event handlers, override them in your derived class
- virtual void onClose( wxCloseEvent& event ) { event.Skip(); }
- virtual void onExpandNode( wxTreeEvent& event ) { event.Skip(); }
- virtual void onOkay( wxCommandEvent& event ) { event.Skip(); }
- virtual void onCancel( wxCommandEvent& event ) { event.Skip(); }
+ // Virtual event handlers, override them in your derived class
+ virtual void onClose( wxCloseEvent& event ) { event.Skip(); }
+ virtual void onExpandNode( wxTreeEvent& event ) { event.Skip(); }
+ virtual void onOkay( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onCancel( wxCommandEvent& event ) { event.Skip(); }
-public:
+ public:
- AbstractFolderPickerGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Select a folder"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1, -1 ), long style = wxDEFAULT_DIALOG_STYLE|wxMAXIMIZE_BOX|wxRESIZE_BORDER );
+ AbstractFolderPickerGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Select a folder"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxDEFAULT_DIALOG_STYLE|wxMAXIMIZE_BOX|wxRESIZE_BORDER );
- ~AbstractFolderPickerGenerated();
+ ~AbstractFolderPickerGenerated();
};
@@ -706,51 +707,51 @@ public:
///////////////////////////////////////////////////////////////////////////////
class SyncConfirmationDlgGenerated : public wxDialog
{
-private:
-
-protected:
- wxStaticBitmap* m_bitmapSync;
- wxStaticText* m_staticTextCaption;
- wxStaticLine* m_staticline371;
- wxPanel* m_panelStatistics;
- wxStaticLine* m_staticline38;
- wxStaticText* m_staticText84;
- wxStaticText* m_staticTextSyncVar;
- wxStaticBitmap* m_bitmapSyncVar;
- wxStaticLine* m_staticline14;
- wxStaticText* m_staticText83;
- wxStaticBitmap* m_bitmapDeleteLeft;
- wxStaticBitmap* m_bitmapUpdateLeft;
- wxStaticBitmap* m_bitmapCreateLeft;
- wxStaticBitmap* m_bitmapData;
- wxStaticBitmap* m_bitmapCreateRight;
- wxStaticBitmap* m_bitmapUpdateRight;
- wxStaticBitmap* m_bitmapDeleteRight;
- wxStaticText* m_staticTextDeleteLeft;
- wxStaticText* m_staticTextUpdateLeft;
- wxStaticText* m_staticTextCreateLeft;
- wxStaticText* m_staticTextData;
- wxStaticText* m_staticTextCreateRight;
- wxStaticText* m_staticTextUpdateRight;
- wxStaticText* m_staticTextDeleteRight;
- wxStaticLine* m_staticline381;
- wxStaticLine* m_staticline12;
- wxCheckBox* m_checkBoxDontShowAgain;
- wxBoxSizer* bSizerStdButtons;
- wxButton* m_buttonStartSync;
- wxButton* m_buttonCancel;
-
- // Virtual event handlers, override them in your derived class
- virtual void onClose( wxCloseEvent& event ) { event.Skip(); }
- virtual void onStartSync( wxCommandEvent& event ) { event.Skip(); }
- virtual void onCancel( wxCommandEvent& event ) { event.Skip(); }
-
-
-public:
-
- SyncConfirmationDlgGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = wxEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE );
-
- ~SyncConfirmationDlgGenerated();
+ private:
+
+ protected:
+ wxStaticBitmap* m_bitmapSync;
+ wxStaticText* m_staticTextCaption;
+ wxStaticLine* m_staticline371;
+ wxPanel* m_panelStatistics;
+ wxStaticLine* m_staticline38;
+ wxStaticText* m_staticText84;
+ wxStaticText* m_staticTextSyncVar;
+ wxStaticBitmap* m_bitmapSyncVar;
+ wxStaticLine* m_staticline14;
+ wxStaticText* m_staticText83;
+ wxStaticBitmap* m_bitmapDeleteLeft;
+ wxStaticBitmap* m_bitmapUpdateLeft;
+ wxStaticBitmap* m_bitmapCreateLeft;
+ wxStaticBitmap* m_bitmapData;
+ wxStaticBitmap* m_bitmapCreateRight;
+ wxStaticBitmap* m_bitmapUpdateRight;
+ wxStaticBitmap* m_bitmapDeleteRight;
+ wxStaticText* m_staticTextDeleteLeft;
+ wxStaticText* m_staticTextUpdateLeft;
+ wxStaticText* m_staticTextCreateLeft;
+ wxStaticText* m_staticTextData;
+ wxStaticText* m_staticTextCreateRight;
+ wxStaticText* m_staticTextUpdateRight;
+ wxStaticText* m_staticTextDeleteRight;
+ wxStaticLine* m_staticline381;
+ wxStaticLine* m_staticline12;
+ wxCheckBox* m_checkBoxDontShowAgain;
+ wxBoxSizer* bSizerStdButtons;
+ wxButton* m_buttonStartSync;
+ wxButton* m_buttonCancel;
+
+ // Virtual event handlers, override them in your derived class
+ virtual void onClose( wxCloseEvent& event ) { event.Skip(); }
+ virtual void onStartSync( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onCancel( wxCommandEvent& event ) { event.Skip(); }
+
+
+ public:
+
+ SyncConfirmationDlgGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = wxEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE );
+
+ ~SyncConfirmationDlgGenerated();
};
@@ -759,41 +760,41 @@ public:
///////////////////////////////////////////////////////////////////////////////
class CompareProgressDlgGenerated : public wxPanel
{
-private:
-
-protected:
- wxStaticText* m_staticTextStatus;
- wxFlexGridSizer* ffgSizer11;
- wxFlexGridSizer* ffgSizer111;
- wxFlexGridSizer* ffgSizer112;
- wxStaticText* m_staticText1461;
- wxStaticText* m_staticTextRetryCount;
- wxStaticText* m_staticText146;
- wxBoxSizer* bSizerProgressGraph;
- wxFlexGridSizer* ffgSizer113;
- zen::Graph2D* m_panelProgressGraph;
-
-public:
- wxStaticText* m_staticTextProcessed;
- wxStaticText* m_staticTextRemaining;
- wxPanel* m_panelItemStats;
- wxStaticBitmap* m_bitmapItemStat;
- wxStaticText* m_staticTextItemsProcessed;
- wxStaticText* m_staticTextBytesProcessed;
- wxStaticText* m_staticTextItemsRemaining;
- wxStaticText* m_staticTextBytesRemaining;
- wxPanel* m_panelTimeStats;
- wxStaticBitmap* m_bitmapTimeStat;
- wxStaticText* m_staticTextTimeElapsed;
- wxStaticText* m_staticTextTimeRemaining;
- wxBoxSizer* bSizerErrorsRetry;
- wxStaticBitmap* m_bitmapRetryErrors;
- wxBoxSizer* bSizerErrorsIgnore;
- wxStaticBitmap* m_bitmapIgnoreErrors;
-
- CompareProgressDlgGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1, -1 ), long style = wxBORDER_RAISED, const wxString& name = wxEmptyString );
-
- ~CompareProgressDlgGenerated();
+ private:
+
+ protected:
+ wxStaticText* m_staticTextStatus;
+ wxFlexGridSizer* ffgSizer11;
+ wxFlexGridSizer* ffgSizer111;
+ wxFlexGridSizer* ffgSizer112;
+ wxStaticText* m_staticText1461;
+ wxStaticText* m_staticTextRetryCount;
+ wxStaticText* m_staticText146;
+ wxBoxSizer* bSizerProgressGraph;
+ wxFlexGridSizer* ffgSizer113;
+ zen::Graph2D* m_panelProgressGraph;
+
+ public:
+ wxStaticText* m_staticTextProcessed;
+ wxStaticText* m_staticTextRemaining;
+ wxPanel* m_panelItemStats;
+ wxStaticBitmap* m_bitmapItemStat;
+ wxStaticText* m_staticTextItemsProcessed;
+ wxStaticText* m_staticTextBytesProcessed;
+ wxStaticText* m_staticTextItemsRemaining;
+ wxStaticText* m_staticTextBytesRemaining;
+ wxPanel* m_panelTimeStats;
+ wxStaticBitmap* m_bitmapTimeStat;
+ wxStaticText* m_staticTextTimeElapsed;
+ wxStaticText* m_staticTextTimeRemaining;
+ wxBoxSizer* bSizerErrorsRetry;
+ wxStaticBitmap* m_bitmapRetryErrors;
+ wxBoxSizer* bSizerErrorsIgnore;
+ wxStaticBitmap* m_bitmapIgnoreErrors;
+
+ CompareProgressDlgGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxBORDER_RAISED, const wxString& name = wxEmptyString );
+
+ ~CompareProgressDlgGenerated();
};
@@ -802,61 +803,61 @@ public:
///////////////////////////////////////////////////////////////////////////////
class SyncProgressPanelGenerated : public wxPanel
{
-private:
-
-protected:
- wxPanel* m_panel53;
- wxBoxSizer* bSizer42;
- wxFlexGridSizer* ffgSizer11;
- wxFlexGridSizer* ffgSizer111;
- wxFlexGridSizer* ffgSizer112;
- wxStaticText* m_staticText1461;
- wxStaticText* m_staticText146;
- wxStaticText* m_staticText137;
-
-public:
- wxBoxSizer* bSizerRoot;
- wxStaticBitmap* m_bitmapStatus;
- wxStaticText* m_staticTextPhase;
- wxBitmapButton* m_bpButtonMinimizeToTray;
- wxBoxSizer* bSizerStatusText;
- wxStaticText* m_staticTextStatus;
- wxPanel* m_panelProgress;
- zen::Graph2D* m_panelGraphBytes;
- wxStaticBitmap* m_bitmapGraphKeyBytes;
- wxStaticBitmap* m_bitmapGraphKeyItems;
- wxStaticText* m_staticTextProcessed;
- wxStaticText* m_staticTextRemaining;
- wxPanel* m_panelItemStats;
- wxStaticBitmap* m_bitmapItemStat;
- wxStaticText* m_staticTextItemsProcessed;
- wxStaticText* m_staticTextBytesProcessed;
- wxStaticText* m_staticTextItemsRemaining;
- wxStaticText* m_staticTextBytesRemaining;
- wxPanel* m_panelTimeStats;
- wxStaticBitmap* m_bitmapTimeStat;
- wxStaticText* m_staticTextTimeElapsed;
- wxStaticText* m_staticTextTimeRemaining;
- wxBoxSizer* bSizerDynSpace;
- zen::Graph2D* m_panelGraphItems;
- wxBoxSizer* bSizerProgressFooter;
- wxBoxSizer* bSizerErrorsRetry;
- wxStaticBitmap* m_bitmapRetryErrors;
- wxStaticText* m_staticTextRetryCount;
- wxBoxSizer* bSizerErrorsIgnore;
- wxStaticBitmap* m_bitmapIgnoreErrors;
- wxChoice* m_choicePostSyncAction;
- wxNotebook* m_notebookResult;
- wxStaticLine* m_staticlineFooter;
- wxBoxSizer* bSizerStdButtons;
- wxCheckBox* m_checkBoxAutoClose;
- wxButton* m_buttonClose;
- wxButton* m_buttonPause;
- wxButton* m_buttonStop;
-
- SyncProgressPanelGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1, -1 ), long style = wxTAB_TRAVERSAL, const wxString& name = wxEmptyString );
-
- ~SyncProgressPanelGenerated();
+ private:
+
+ protected:
+ wxPanel* m_panel53;
+ wxBoxSizer* bSizer42;
+ wxFlexGridSizer* ffgSizer11;
+ wxFlexGridSizer* ffgSizer111;
+ wxFlexGridSizer* ffgSizer112;
+ wxStaticText* m_staticText1461;
+ wxStaticText* m_staticText146;
+ wxStaticText* m_staticText137;
+
+ public:
+ wxBoxSizer* bSizerRoot;
+ wxStaticBitmap* m_bitmapStatus;
+ wxStaticText* m_staticTextPhase;
+ wxBitmapButton* m_bpButtonMinimizeToTray;
+ wxBoxSizer* bSizerStatusText;
+ wxStaticText* m_staticTextStatus;
+ wxPanel* m_panelProgress;
+ zen::Graph2D* m_panelGraphBytes;
+ wxStaticBitmap* m_bitmapGraphKeyBytes;
+ wxStaticBitmap* m_bitmapGraphKeyItems;
+ wxStaticText* m_staticTextProcessed;
+ wxStaticText* m_staticTextRemaining;
+ wxPanel* m_panelItemStats;
+ wxStaticBitmap* m_bitmapItemStat;
+ wxStaticText* m_staticTextItemsProcessed;
+ wxStaticText* m_staticTextBytesProcessed;
+ wxStaticText* m_staticTextItemsRemaining;
+ wxStaticText* m_staticTextBytesRemaining;
+ wxPanel* m_panelTimeStats;
+ wxStaticBitmap* m_bitmapTimeStat;
+ wxStaticText* m_staticTextTimeElapsed;
+ wxStaticText* m_staticTextTimeRemaining;
+ wxBoxSizer* bSizerDynSpace;
+ zen::Graph2D* m_panelGraphItems;
+ wxBoxSizer* bSizerProgressFooter;
+ wxBoxSizer* bSizerErrorsRetry;
+ wxStaticBitmap* m_bitmapRetryErrors;
+ wxStaticText* m_staticTextRetryCount;
+ wxBoxSizer* bSizerErrorsIgnore;
+ wxStaticBitmap* m_bitmapIgnoreErrors;
+ wxChoice* m_choicePostSyncAction;
+ wxNotebook* m_notebookResult;
+ wxStaticLine* m_staticlineFooter;
+ wxBoxSizer* bSizerStdButtons;
+ wxCheckBox* m_checkBoxAutoClose;
+ wxButton* m_buttonClose;
+ wxButton* m_buttonPause;
+ wxButton* m_buttonStop;
+
+ SyncProgressPanelGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxTAB_TRAVERSAL, const wxString& name = wxEmptyString );
+
+ ~SyncProgressPanelGenerated();
};
@@ -865,26 +866,26 @@ public:
///////////////////////////////////////////////////////////////////////////////
class LogPanelGenerated : public wxPanel
{
-private:
+ private:
-protected:
- zen::ToggleButton* m_bpButtonErrors;
- zen::ToggleButton* m_bpButtonWarnings;
- zen::ToggleButton* m_bpButtonInfo;
- wxStaticLine* m_staticline13;
+ protected:
+ zen::ToggleButton* m_bpButtonErrors;
+ zen::ToggleButton* m_bpButtonWarnings;
+ zen::ToggleButton* m_bpButtonInfo;
+ wxStaticLine* m_staticline13;
- // Virtual event handlers, override them in your derived class
- virtual void onErrors( wxCommandEvent& event ) { event.Skip(); }
- virtual void onWarnings( wxCommandEvent& event ) { event.Skip(); }
- virtual void onInfo( wxCommandEvent& event ) { event.Skip(); }
+ // Virtual event handlers, override them in your derived class
+ virtual void onErrors( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onWarnings( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onInfo( wxCommandEvent& event ) { event.Skip(); }
-public:
- zen::Grid* m_gridMessages;
+ public:
+ zen::Grid* m_gridMessages;
- LogPanelGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxTAB_TRAVERSAL, const wxString& name = wxEmptyString );
+ LogPanelGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxTAB_TRAVERSAL, const wxString& name = wxEmptyString );
- ~LogPanelGenerated();
+ ~LogPanelGenerated();
};
@@ -893,47 +894,47 @@ public:
///////////////////////////////////////////////////////////////////////////////
class BatchDlgGenerated : public wxDialog
{
-private:
-
-protected:
- wxStaticBitmap* m_bitmapBatchJob;
- wxStaticText* m_staticTextHeader;
- wxStaticLine* m_staticline18;
- wxPanel* m_panel35;
- wxStaticText* m_staticText146;
- wxFlexGridSizer* ffgSizer11;
- wxStaticBitmap* m_bitmapMinimizeToTray;
- wxCheckBox* m_checkBoxRunMinimized;
- wxStaticLine* m_staticline26;
- wxStaticBitmap* m_bitmapIgnoreErrors;
- wxCheckBox* m_checkBoxIgnoreErrors;
- wxRadioButton* m_radioBtnErrorDialogShow;
- wxRadioButton* m_radioBtnErrorDialogCancel;
- wxStaticLine* m_staticline261;
- wxStaticText* m_staticText137;
- wxStaticLine* m_staticline262;
- wxStaticLine* m_staticline25;
- wxHyperlinkCtrl* m_hyperlink17;
- wxStaticLine* m_staticline13;
- wxBoxSizer* bSizerStdButtons;
- wxButton* m_buttonSaveAs;
- wxButton* m_buttonCancel;
-
- // Virtual event handlers, override them in your derived class
- virtual void onClose( wxCloseEvent& event ) { event.Skip(); }
- virtual void onToggleRunMinimized( wxCommandEvent& event ) { event.Skip(); }
- virtual void onToggleIgnoreErrors( wxCommandEvent& event ) { event.Skip(); }
- virtual void onSaveBatchJob( wxCommandEvent& event ) { event.Skip(); }
- virtual void onCancel( wxCommandEvent& event ) { event.Skip(); }
-
-
-public:
- wxCheckBox* m_checkBoxAutoClose;
- wxChoice* m_choicePostSyncAction;
-
- BatchDlgGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Save as a Batch Job"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER );
-
- ~BatchDlgGenerated();
+ private:
+
+ protected:
+ wxStaticBitmap* m_bitmapBatchJob;
+ wxStaticText* m_staticTextHeader;
+ wxStaticLine* m_staticline18;
+ wxPanel* m_panel35;
+ wxStaticText* m_staticText146;
+ wxFlexGridSizer* ffgSizer11;
+ wxStaticBitmap* m_bitmapMinimizeToTray;
+ wxCheckBox* m_checkBoxRunMinimized;
+ wxStaticLine* m_staticline26;
+ wxStaticBitmap* m_bitmapIgnoreErrors;
+ wxCheckBox* m_checkBoxIgnoreErrors;
+ wxRadioButton* m_radioBtnErrorDialogShow;
+ wxRadioButton* m_radioBtnErrorDialogCancel;
+ wxStaticLine* m_staticline261;
+ wxStaticText* m_staticText137;
+ wxStaticLine* m_staticline262;
+ wxStaticLine* m_staticline25;
+ wxHyperlinkCtrl* m_hyperlink17;
+ wxStaticLine* m_staticline13;
+ wxBoxSizer* bSizerStdButtons;
+ wxButton* m_buttonSaveAs;
+ wxButton* m_buttonCancel;
+
+ // Virtual event handlers, override them in your derived class
+ virtual void onClose( wxCloseEvent& event ) { event.Skip(); }
+ virtual void onToggleRunMinimized( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onToggleIgnoreErrors( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onSaveBatchJob( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onCancel( wxCommandEvent& event ) { event.Skip(); }
+
+
+ public:
+ wxCheckBox* m_checkBoxAutoClose;
+ wxChoice* m_choicePostSyncAction;
+
+ BatchDlgGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Save as a Batch Job"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER );
+
+ ~BatchDlgGenerated();
};
@@ -942,33 +943,33 @@ public:
///////////////////////////////////////////////////////////////////////////////
class DeleteDlgGenerated : public wxDialog
{
-private:
+ private:
-protected:
- wxStaticBitmap* m_bitmapDeleteType;
- wxStaticText* m_staticTextHeader;
- wxStaticLine* m_staticline91;
- wxPanel* m_panel31;
- wxStaticLine* m_staticline42;
- wxTextCtrl* m_textCtrlFileList;
- wxStaticLine* m_staticline9;
- wxBoxSizer* bSizerStdButtons;
- wxCheckBox* m_checkBoxUseRecycler;
- wxButton* m_buttonOK;
- wxButton* m_buttonCancel;
+ protected:
+ wxStaticBitmap* m_bitmapDeleteType;
+ wxStaticText* m_staticTextHeader;
+ wxStaticLine* m_staticline91;
+ wxPanel* m_panel31;
+ wxStaticLine* m_staticline42;
+ wxTextCtrl* m_textCtrlFileList;
+ wxStaticLine* m_staticline9;
+ wxBoxSizer* bSizerStdButtons;
+ wxCheckBox* m_checkBoxUseRecycler;
+ wxButton* m_buttonOK;
+ wxButton* m_buttonCancel;
- // Virtual event handlers, override them in your derived class
- virtual void onClose( wxCloseEvent& event ) { event.Skip(); }
- virtual void onUseRecycler( wxCommandEvent& event ) { event.Skip(); }
- virtual void onOkay( wxCommandEvent& event ) { event.Skip(); }
- virtual void onCancel( wxCommandEvent& event ) { event.Skip(); }
+ // Virtual event handlers, override them in your derived class
+ virtual void onClose( wxCloseEvent& event ) { event.Skip(); }
+ virtual void onUseRecycler( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onOkay( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onCancel( wxCommandEvent& event ) { event.Skip(); }
-public:
+ public:
- DeleteDlgGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Delete Items"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1, -1 ), long style = wxDEFAULT_DIALOG_STYLE|wxMAXIMIZE_BOX|wxRESIZE_BORDER );
+ DeleteDlgGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Delete Items"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxDEFAULT_DIALOG_STYLE|wxMAXIMIZE_BOX|wxRESIZE_BORDER );
- ~DeleteDlgGenerated();
+ ~DeleteDlgGenerated();
};
@@ -977,36 +978,36 @@ public:
///////////////////////////////////////////////////////////////////////////////
class CopyToDlgGenerated : public wxDialog
{
-private:
+ private:
-protected:
- wxStaticBitmap* m_bitmapCopyTo;
- wxStaticText* m_staticTextHeader;
- wxStaticLine* m_staticline91;
- wxPanel* m_panel31;
- wxStaticLine* m_staticline42;
- wxTextCtrl* m_textCtrlFileList;
- wxButton* m_buttonSelectTargetFolder;
- wxStaticLine* m_staticline9;
- wxBoxSizer* bSizerStdButtons;
- wxCheckBox* m_checkBoxKeepRelPath;
- wxCheckBox* m_checkBoxOverwriteIfExists;
- wxButton* m_buttonOK;
- wxButton* m_buttonCancel;
+ protected:
+ wxStaticBitmap* m_bitmapCopyTo;
+ wxStaticText* m_staticTextHeader;
+ wxStaticLine* m_staticline91;
+ wxPanel* m_panel31;
+ wxStaticLine* m_staticline42;
+ wxTextCtrl* m_textCtrlFileList;
+ wxButton* m_buttonSelectTargetFolder;
+ wxStaticLine* m_staticline9;
+ wxBoxSizer* bSizerStdButtons;
+ wxCheckBox* m_checkBoxKeepRelPath;
+ wxCheckBox* m_checkBoxOverwriteIfExists;
+ wxButton* m_buttonOK;
+ wxButton* m_buttonCancel;
- // Virtual event handlers, override them in your derived class
- virtual void onClose( wxCloseEvent& event ) { event.Skip(); }
- virtual void onOkay( wxCommandEvent& event ) { event.Skip(); }
- virtual void onCancel( wxCommandEvent& event ) { event.Skip(); }
+ // Virtual event handlers, override them in your derived class
+ virtual void onClose( wxCloseEvent& event ) { event.Skip(); }
+ virtual void onOkay( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onCancel( wxCommandEvent& event ) { event.Skip(); }
-public:
- fff::FolderHistoryBox* m_targetFolderPath;
- wxBitmapButton* m_bpButtonSelectAltTargetFolder;
+ public:
+ fff::FolderHistoryBox* m_targetFolderPath;
+ wxBitmapButton* m_bpButtonSelectAltTargetFolder;
- CopyToDlgGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Copy Items"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1, -1 ), long style = wxDEFAULT_DIALOG_STYLE|wxMAXIMIZE_BOX|wxRESIZE_BORDER );
+ CopyToDlgGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Copy Items"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxDEFAULT_DIALOG_STYLE|wxMAXIMIZE_BOX|wxRESIZE_BORDER );
- ~CopyToDlgGenerated();
+ ~CopyToDlgGenerated();
};
@@ -1015,107 +1016,107 @@ public:
///////////////////////////////////////////////////////////////////////////////
class OptionsDlgGenerated : public wxDialog
{
-private:
-
-protected:
- wxStaticBitmap* m_bitmapSettings;
- wxStaticText* m_staticText44;
- wxStaticLine* m_staticline20;
- wxPanel* m_panel39;
- wxCheckBox* m_checkBoxFailSafe;
- wxStaticText* m_staticText911;
- wxStaticText* m_staticText91;
- wxStaticText* m_staticText9111;
- wxBoxSizer* bSizerLockedFiles;
- wxCheckBox* m_checkBoxCopyLocked;
- wxStaticText* m_staticText921;
- wxStaticText* m_staticText92;
- wxStaticText* m_staticText922;
- wxCheckBox* m_checkBoxCopyPermissions;
- wxStaticText* m_staticText931;
- wxStaticText* m_staticText93;
- wxStaticText* m_staticText932;
- wxStaticLine* m_staticline39;
- wxStaticBitmap* m_bitmapWarnings;
- wxStaticText* m_staticTextResetDialogs;
- wxButton* m_buttonRestoreDialogs;
- wxStaticText* m_staticTextAllDialogsShown;
- wxStaticLine* m_staticline191;
- wxStaticBitmap* m_bitmapLogFile;
- wxStaticText* m_staticText163;
- wxHyperlinkCtrl* m_hyperlinkLogFolder;
- wxStaticLine* m_staticline83;
- wxStaticLine* m_staticline82;
- wxCheckBox* m_checkBoxLogFilesMaxAge;
- wxSpinCtrl* m_spinCtrlLogFilesMaxAge;
- wxStaticLine* m_staticline81;
- wxStaticText* m_staticText184;
- wxRadioButton* m_radioBtnLogHtml;
- wxRadioButton* m_radioBtnLogText;
- wxStaticLine* m_staticline361;
- wxStaticBitmap* m_bitmapNotificationSounds;
- wxStaticText* m_staticText851;
- wxFlexGridSizer* ffgSizer11;
- wxStaticBitmap* m_bitmapCompareDone;
- wxStaticText* m_staticText171;
- wxBitmapButton* m_bpButtonPlayCompareDone;
- wxTextCtrl* m_textCtrlSoundPathCompareDone;
- wxButton* m_buttonSelectSoundCompareDone;
- wxStaticBitmap* m_bitmapSyncDone;
- wxStaticText* m_staticText1711;
- wxBitmapButton* m_bpButtonPlaySyncDone;
- wxTextCtrl* m_textCtrlSoundPathSyncDone;
- wxButton* m_buttonSelectSoundSyncDone;
- wxStaticBitmap* m_bitmapAlertPending;
- wxStaticText* m_staticText17111;
- wxBitmapButton* m_bpButtonPlayAlertPending;
- wxTextCtrl* m_textCtrlSoundPathAlertPending;
- wxButton* m_buttonSelectSoundAlertPending;
- wxStaticLine* m_staticline3611;
- wxStaticBitmap* m_bitmapConsole;
- wxStaticText* m_staticText85;
- wxBitmapButton* m_bpButtonAddRow;
- wxBitmapButton* m_bpButtonRemoveRow;
- wxStaticText* m_staticText174;
- wxStaticText* m_staticText175;
- wxStaticText* m_staticText178;
- wxStaticText* m_staticText179;
- wxStaticText* m_staticText189;
- wxStaticText* m_staticText190;
- wxStaticText* m_staticText176;
- wxStaticText* m_staticText177;
- wxHyperlinkCtrl* m_hyperlink17;
- wxGrid* m_gridCustomCommand;
- wxStaticLine* m_staticline36;
- wxBoxSizer* bSizerStdButtons;
- wxButton* m_buttonDefault;
- wxButton* m_buttonOkay;
- wxButton* m_buttonCancel;
-
- // Virtual event handlers, override them in your derived class
- virtual void onClose( wxCloseEvent& event ) { event.Skip(); }
- virtual void onRestoreDialogs( wxCommandEvent& event ) { event.Skip(); }
- virtual void onShowLogFolder( wxHyperlinkEvent& event ) { event.Skip(); }
- virtual void onToggleLogfilesLimit( wxCommandEvent& event ) { event.Skip(); }
- virtual void onPlayCompareDone( wxCommandEvent& event ) { event.Skip(); }
- virtual void onChangeSoundFilePath( wxCommandEvent& event ) { event.Skip(); }
- virtual void onSelectSoundCompareDone( wxCommandEvent& event ) { event.Skip(); }
- virtual void onPlaySyncDone( wxCommandEvent& event ) { event.Skip(); }
- virtual void onSelectSoundSyncDone( wxCommandEvent& event ) { event.Skip(); }
- virtual void onPlayAlertPending( wxCommandEvent& event ) { event.Skip(); }
- virtual void onSelectSoundAlertPending( wxCommandEvent& event ) { event.Skip(); }
- virtual void onAddRow( wxCommandEvent& event ) { event.Skip(); }
- virtual void onRemoveRow( wxCommandEvent& event ) { event.Skip(); }
- virtual void onDefault( wxCommandEvent& event ) { event.Skip(); }
- virtual void onOkay( wxCommandEvent& event ) { event.Skip(); }
- virtual void onCancel( wxCommandEvent& event ) { event.Skip(); }
-
-
-public:
-
- OptionsDlgGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Options"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER );
-
- ~OptionsDlgGenerated();
+ private:
+
+ protected:
+ wxStaticBitmap* m_bitmapSettings;
+ wxStaticText* m_staticText44;
+ wxStaticLine* m_staticline20;
+ wxPanel* m_panel39;
+ wxCheckBox* m_checkBoxFailSafe;
+ wxStaticText* m_staticText911;
+ wxStaticText* m_staticText91;
+ wxStaticText* m_staticText9111;
+ wxBoxSizer* bSizerLockedFiles;
+ wxCheckBox* m_checkBoxCopyLocked;
+ wxStaticText* m_staticText921;
+ wxStaticText* m_staticText92;
+ wxStaticText* m_staticText922;
+ wxCheckBox* m_checkBoxCopyPermissions;
+ wxStaticText* m_staticText931;
+ wxStaticText* m_staticText93;
+ wxStaticText* m_staticText932;
+ wxStaticLine* m_staticline39;
+ wxStaticBitmap* m_bitmapWarnings;
+ wxStaticText* m_staticTextResetDialogs;
+ wxButton* m_buttonRestoreDialogs;
+ wxStaticText* m_staticTextAllDialogsShown;
+ wxStaticLine* m_staticline191;
+ wxStaticBitmap* m_bitmapLogFile;
+ wxStaticText* m_staticText163;
+ wxHyperlinkCtrl* m_hyperlinkLogFolder;
+ wxStaticLine* m_staticline83;
+ wxStaticLine* m_staticline82;
+ wxCheckBox* m_checkBoxLogFilesMaxAge;
+ wxSpinCtrl* m_spinCtrlLogFilesMaxAge;
+ wxStaticLine* m_staticline81;
+ wxStaticText* m_staticText184;
+ wxRadioButton* m_radioBtnLogHtml;
+ wxRadioButton* m_radioBtnLogText;
+ wxStaticLine* m_staticline361;
+ wxStaticBitmap* m_bitmapNotificationSounds;
+ wxStaticText* m_staticText851;
+ wxFlexGridSizer* ffgSizer11;
+ wxStaticBitmap* m_bitmapCompareDone;
+ wxStaticText* m_staticText171;
+ wxBitmapButton* m_bpButtonPlayCompareDone;
+ wxTextCtrl* m_textCtrlSoundPathCompareDone;
+ wxButton* m_buttonSelectSoundCompareDone;
+ wxStaticBitmap* m_bitmapSyncDone;
+ wxStaticText* m_staticText1711;
+ wxBitmapButton* m_bpButtonPlaySyncDone;
+ wxTextCtrl* m_textCtrlSoundPathSyncDone;
+ wxButton* m_buttonSelectSoundSyncDone;
+ wxStaticBitmap* m_bitmapAlertPending;
+ wxStaticText* m_staticText17111;
+ wxBitmapButton* m_bpButtonPlayAlertPending;
+ wxTextCtrl* m_textCtrlSoundPathAlertPending;
+ wxButton* m_buttonSelectSoundAlertPending;
+ wxStaticLine* m_staticline3611;
+ wxStaticBitmap* m_bitmapConsole;
+ wxStaticText* m_staticText85;
+ wxBitmapButton* m_bpButtonAddRow;
+ wxBitmapButton* m_bpButtonRemoveRow;
+ wxStaticText* m_staticText174;
+ wxStaticText* m_staticText175;
+ wxStaticText* m_staticText178;
+ wxStaticText* m_staticText179;
+ wxStaticText* m_staticText189;
+ wxStaticText* m_staticText190;
+ wxStaticText* m_staticText176;
+ wxStaticText* m_staticText177;
+ wxHyperlinkCtrl* m_hyperlink17;
+ wxGrid* m_gridCustomCommand;
+ wxStaticLine* m_staticline36;
+ wxBoxSizer* bSizerStdButtons;
+ wxButton* m_buttonDefault;
+ wxButton* m_buttonOkay;
+ wxButton* m_buttonCancel;
+
+ // Virtual event handlers, override them in your derived class
+ virtual void onClose( wxCloseEvent& event ) { event.Skip(); }
+ virtual void onRestoreDialogs( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onShowLogFolder( wxHyperlinkEvent& event ) { event.Skip(); }
+ virtual void onToggleLogfilesLimit( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onPlayCompareDone( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onChangeSoundFilePath( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onSelectSoundCompareDone( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onPlaySyncDone( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onSelectSoundSyncDone( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onPlayAlertPending( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onSelectSoundAlertPending( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onAddRow( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onRemoveRow( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onDefault( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onOkay( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onCancel( wxCommandEvent& event ) { event.Skip(); }
+
+
+ public:
+
+ OptionsDlgGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Options"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER );
+
+ ~OptionsDlgGenerated();
};
@@ -1124,17 +1125,17 @@ public:
///////////////////////////////////////////////////////////////////////////////
class TooltipDlgGenerated : public wxDialog
{
-private:
+ private:
-protected:
+ protected:
-public:
- wxStaticBitmap* m_bitmapLeft;
- wxStaticText* m_staticTextMain;
+ public:
+ wxStaticBitmap* m_bitmapLeft;
+ wxStaticText* m_staticTextMain;
- TooltipDlgGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = wxEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE );
+ TooltipDlgGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = wxEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE );
- ~TooltipDlgGenerated();
+ ~TooltipDlgGenerated();
};
@@ -1143,30 +1144,30 @@ public:
///////////////////////////////////////////////////////////////////////////////
class SelectTimespanDlgGenerated : public wxDialog
{
-private:
+ private:
-protected:
- wxPanel* m_panel35;
- wxCalendarCtrl* m_calendarFrom;
- wxCalendarCtrl* m_calendarTo;
- wxStaticLine* m_staticline21;
- wxBoxSizer* bSizerStdButtons;
- wxButton* m_buttonOkay;
- wxButton* m_buttonCancel;
+ protected:
+ wxPanel* m_panel35;
+ wxCalendarCtrl* m_calendarFrom;
+ wxCalendarCtrl* m_calendarTo;
+ wxStaticLine* m_staticline21;
+ wxBoxSizer* bSizerStdButtons;
+ wxButton* m_buttonOkay;
+ wxButton* m_buttonCancel;
- // Virtual event handlers, override them in your derived class
- virtual void onClose( wxCloseEvent& event ) { event.Skip(); }
- virtual void onChangeSelectionFrom( wxCalendarEvent& event ) { event.Skip(); }
- virtual void onChangeSelectionTo( wxCalendarEvent& event ) { event.Skip(); }
- virtual void onOkay( wxCommandEvent& event ) { event.Skip(); }
- virtual void onCancel( wxCommandEvent& event ) { event.Skip(); }
+ // Virtual event handlers, override them in your derived class
+ virtual void onClose( wxCloseEvent& event ) { event.Skip(); }
+ virtual void onChangeSelectionFrom( wxCalendarEvent& event ) { event.Skip(); }
+ virtual void onChangeSelectionTo( wxCalendarEvent& event ) { event.Skip(); }
+ virtual void onOkay( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onCancel( wxCommandEvent& event ) { event.Skip(); }
-public:
+ public:
- SelectTimespanDlgGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Select Time Span"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE );
+ SelectTimespanDlgGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Select Time Span"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE );
- ~SelectTimespanDlgGenerated();
+ ~SelectTimespanDlgGenerated();
};
@@ -1175,61 +1176,61 @@ public:
///////////////////////////////////////////////////////////////////////////////
class AboutDlgGenerated : public wxDialog
{
-private:
-
-protected:
- wxPanel* m_panel41;
- wxStaticBitmap* m_bitmapLogoLeft;
- wxStaticLine* m_staticline81;
- wxBoxSizer* bSizerMainSection;
- wxStaticLine* m_staticline82;
- wxStaticBitmap* m_bitmapLogo;
- wxStaticLine* m_staticline341;
- wxStaticText* m_staticTextVersion;
- wxStaticLine* m_staticline3411;
- wxPanel* m_panelDonate;
- wxPanel* m_panel39;
- wxStaticBitmap* m_bitmapDonate;
- wxStaticText* m_staticTextDonate;
- wxButton* m_buttonDonate;
- wxPanel* m_panelThankYou;
- wxPanel* m_panel391;
- wxStaticBitmap* m_bitmapThanks;
- wxStaticText* m_staticTextThanks;
- wxStaticText* m_staticTextNoAutoUpdate;
- wxButton* m_buttonShowDonationDetails;
- wxStaticLine* m_staticline3412;
- wxStaticText* m_staticText94;
- wxBitmapButton* m_bpButtonForum;
- wxBitmapButton* m_bpButtonHomepage;
- wxBitmapButton* m_bpButtonEmail;
- wxStaticLine* m_staticline34;
- wxStaticText* m_staticTextGpl;
- wxBitmapButton* m_bpButtonGpl;
- wxStaticLine* m_staticline37;
- wxStaticText* m_staticTextThanksForLoc;
- wxScrolledWindow* m_scrolledWindowTranslators;
- wxFlexGridSizer* fgSizerTranslators;
- wxStaticLine* m_staticline36;
- wxBoxSizer* bSizerStdButtons;
- wxButton* m_buttonClose;
-
- // Virtual event handlers, override them in your derived class
- virtual void onClose( wxCloseEvent& event ) { event.Skip(); }
- virtual void onDonate( wxCommandEvent& event ) { event.Skip(); }
- virtual void onShowDonationDetails( wxCommandEvent& event ) { event.Skip(); }
- virtual void onOpenForum( wxCommandEvent& event ) { event.Skip(); }
- virtual void onOpenHomepage( wxCommandEvent& event ) { event.Skip(); }
- virtual void onSendEmail( wxCommandEvent& event ) { event.Skip(); }
- virtual void onShowGpl( wxCommandEvent& event ) { event.Skip(); }
- virtual void onOkay( wxCommandEvent& event ) { event.Skip(); }
-
-
-public:
-
- AboutDlgGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("About"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE );
-
- ~AboutDlgGenerated();
+ private:
+
+ protected:
+ wxPanel* m_panel41;
+ wxStaticBitmap* m_bitmapLogoLeft;
+ wxStaticLine* m_staticline81;
+ wxBoxSizer* bSizerMainSection;
+ wxStaticLine* m_staticline82;
+ wxStaticBitmap* m_bitmapLogo;
+ wxStaticLine* m_staticline341;
+ wxStaticText* m_staticTextVersion;
+ wxStaticLine* m_staticline3411;
+ wxPanel* m_panelDonate;
+ wxPanel* m_panel39;
+ wxStaticBitmap* m_bitmapDonate;
+ wxStaticText* m_staticTextDonate;
+ wxButton* m_buttonDonate;
+ wxPanel* m_panelThankYou;
+ wxPanel* m_panel391;
+ wxStaticBitmap* m_bitmapThanks;
+ wxStaticText* m_staticTextThanks;
+ wxStaticText* m_staticTextNoAutoUpdate;
+ wxButton* m_buttonShowDonationDetails;
+ wxStaticLine* m_staticline3412;
+ wxStaticText* m_staticText94;
+ wxBitmapButton* m_bpButtonForum;
+ wxBitmapButton* m_bpButtonHomepage;
+ wxBitmapButton* m_bpButtonEmail;
+ wxStaticLine* m_staticline34;
+ wxStaticText* m_staticTextGpl;
+ wxBitmapButton* m_bpButtonGpl;
+ wxStaticLine* m_staticline37;
+ wxStaticText* m_staticTextThanksForLoc;
+ wxScrolledWindow* m_scrolledWindowTranslators;
+ wxFlexGridSizer* fgSizerTranslators;
+ wxStaticLine* m_staticline36;
+ wxBoxSizer* bSizerStdButtons;
+ wxButton* m_buttonClose;
+
+ // Virtual event handlers, override them in your derived class
+ virtual void onClose( wxCloseEvent& event ) { event.Skip(); }
+ virtual void onDonate( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onShowDonationDetails( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onOpenForum( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onOpenHomepage( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onSendEmail( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onShowGpl( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onOkay( wxCommandEvent& event ) { event.Skip(); }
+
+
+ public:
+
+ AboutDlgGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("About"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE );
+
+ ~AboutDlgGenerated();
};
@@ -1238,26 +1239,26 @@ public:
///////////////////////////////////////////////////////////////////////////////
class DownloadProgressDlgGenerated : public wxDialog
{
-private:
+ private:
-protected:
- wxStaticBitmap* m_bitmapDownloading;
- wxStaticText* m_staticTextHeader;
- wxGauge* m_gaugeProgress;
- wxStaticText* m_staticTextDetails;
- wxStaticLine* m_staticline9;
- wxBoxSizer* bSizerStdButtons;
- wxButton* m_buttonCancel;
+ protected:
+ wxStaticBitmap* m_bitmapDownloading;
+ wxStaticText* m_staticTextHeader;
+ wxGauge* m_gaugeProgress;
+ wxStaticText* m_staticTextDetails;
+ wxStaticLine* m_staticline9;
+ wxBoxSizer* bSizerStdButtons;
+ wxButton* m_buttonCancel;
- // Virtual event handlers, override them in your derived class
- virtual void onCancel( wxCommandEvent& event ) { event.Skip(); }
+ // Virtual event handlers, override them in your derived class
+ virtual void onCancel( wxCommandEvent& event ) { event.Skip(); }
-public:
+ public:
- DownloadProgressDlgGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = wxEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = 0 );
+ DownloadProgressDlgGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = wxEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = 0 );
- ~DownloadProgressDlgGenerated();
+ ~DownloadProgressDlgGenerated();
};
@@ -1266,48 +1267,48 @@ public:
///////////////////////////////////////////////////////////////////////////////
class ActivationDlgGenerated : public wxDialog
{
-private:
-
-protected:
- wxPanel* m_panel35;
- wxStaticBitmap* m_bitmapActivation;
- wxRichTextCtrl* m_richTextLastError;
- wxStaticLine* m_staticline82;
- wxStaticText* m_staticTextMain;
- wxStaticLine* m_staticline181;
- wxStaticLine* m_staticline18111;
- wxPanel* m_panel3511;
- wxStaticText* m_staticTextMain1;
- wxStaticText* m_staticText136;
- wxButton* m_buttonActivateOnline;
- wxStaticLine* m_staticline181111;
- wxStaticLine* m_staticline181112;
- wxPanel* m_panel351;
- wxStaticText* m_staticText175;
- wxStaticText* m_staticText1361;
- wxButton* m_buttonCopyUrl;
- wxRichTextCtrl* m_richTextManualActivationUrl;
- wxStaticText* m_staticText13611;
- wxTextCtrl* m_textCtrlOfflineActivationKey;
- wxButton* m_buttonActivateOffline;
- wxStaticLine* m_staticline13;
- wxBoxSizer* bSizerStdButtons;
- wxButton* m_buttonCancel;
-
- // Virtual event handlers, override them in your derived class
- virtual void onClose( wxCloseEvent& event ) { event.Skip(); }
- virtual void onActivateOnline( wxCommandEvent& event ) { event.Skip(); }
- virtual void onCopyUrl( wxCommandEvent& event ) { event.Skip(); }
- virtual void onOfflineActivationEnter( wxCommandEvent& event ) { event.Skip(); }
- virtual void onActivateOffline( wxCommandEvent& event ) { event.Skip(); }
- virtual void onCancel( wxCommandEvent& event ) { event.Skip(); }
-
-
-public:
-
- ActivationDlgGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("dummy"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER );
-
- ~ActivationDlgGenerated();
+ private:
+
+ protected:
+ wxPanel* m_panel35;
+ wxStaticBitmap* m_bitmapActivation;
+ wxRichTextCtrl* m_richTextLastError;
+ wxStaticLine* m_staticline82;
+ wxStaticText* m_staticTextMain;
+ wxStaticLine* m_staticline181;
+ wxStaticLine* m_staticline18111;
+ wxPanel* m_panel3511;
+ wxStaticText* m_staticTextMain1;
+ wxStaticText* m_staticText136;
+ wxButton* m_buttonActivateOnline;
+ wxStaticLine* m_staticline181111;
+ wxStaticLine* m_staticline181112;
+ wxPanel* m_panel351;
+ wxStaticText* m_staticText175;
+ wxStaticText* m_staticText1361;
+ wxButton* m_buttonCopyUrl;
+ wxRichTextCtrl* m_richTextManualActivationUrl;
+ wxStaticText* m_staticText13611;
+ wxTextCtrl* m_textCtrlOfflineActivationKey;
+ wxButton* m_buttonActivateOffline;
+ wxStaticLine* m_staticline13;
+ wxBoxSizer* bSizerStdButtons;
+ wxButton* m_buttonCancel;
+
+ // Virtual event handlers, override them in your derived class
+ virtual void onClose( wxCloseEvent& event ) { event.Skip(); }
+ virtual void onActivateOnline( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onCopyUrl( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onOfflineActivationEnter( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onActivateOffline( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onCancel( wxCommandEvent& event ) { event.Skip(); }
+
+
+ public:
+
+ ActivationDlgGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("dummy"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER );
+
+ ~ActivationDlgGenerated();
};
@@ -1316,28 +1317,28 @@ public:
///////////////////////////////////////////////////////////////////////////////
class CfgHighlightDlgGenerated : public wxDialog
{
-private:
+ private:
-protected:
- wxPanel* m_panel35;
- wxStaticText* m_staticTextHighlight;
- wxSpinCtrl* m_spinCtrlOverdueDays;
- wxStaticLine* m_staticline21;
- wxBoxSizer* bSizerStdButtons;
- wxButton* m_buttonOkay;
- wxButton* m_buttonCancel;
+ protected:
+ wxPanel* m_panel35;
+ wxStaticText* m_staticTextHighlight;
+ wxSpinCtrl* m_spinCtrlOverdueDays;
+ wxStaticLine* m_staticline21;
+ wxBoxSizer* bSizerStdButtons;
+ wxButton* m_buttonOkay;
+ wxButton* m_buttonCancel;
- // Virtual event handlers, override them in your derived class
- virtual void onClose( wxCloseEvent& event ) { event.Skip(); }
- virtual void onOkay( wxCommandEvent& event ) { event.Skip(); }
- virtual void onCancel( wxCommandEvent& event ) { event.Skip(); }
+ // Virtual event handlers, override them in your derived class
+ virtual void onClose( wxCloseEvent& event ) { event.Skip(); }
+ virtual void onOkay( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onCancel( wxCommandEvent& event ) { event.Skip(); }
-public:
+ public:
- CfgHighlightDlgGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Highlight Configurations"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE );
+ CfgHighlightDlgGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Highlight Configurations"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE );
- ~CfgHighlightDlgGenerated();
+ ~CfgHighlightDlgGenerated();
};
@@ -1346,40 +1347,40 @@ public:
///////////////////////////////////////////////////////////////////////////////
class WarnAccessRightsMissingDlgGenerated : public wxDialog
{
-private:
-
-protected:
- wxStaticBitmap* m_bitmapGrantAccess;
- wxStaticText* m_staticTextDescr;
- wxStaticLine* m_staticline20;
- wxPanel* m_panel39;
- wxFlexGridSizer* ffgSizer11;
- wxStaticText* m_staticTextStep1;
- wxButton* m_buttonLocateBundle;
- wxStaticText* m_staticTextStep2;
- wxButton* m_buttonOpenSecurity;
- wxStaticText* m_staticTextStep3;
- wxStaticText* m_staticTextAllowChanges;
- wxStaticText* m_staticTextStep4;
- wxStaticText* m_staticTextGrantAccess;
- wxStaticLine* m_staticline36;
- wxCheckBox* m_checkBoxDontShowAgain;
- wxBoxSizer* bSizerStdButtons;
- wxButton* m_buttonClose;
-
- // Virtual event handlers, override them in your derived class
- virtual void onClose( wxCloseEvent& event ) { event.Skip(); }
- virtual void onShowAppBundle( wxCommandEvent& event ) { event.Skip(); }
- virtual void onOpenSecuritySettings( wxCommandEvent& event ) { event.Skip(); }
- virtual void onCheckBoxClick( wxCommandEvent& event ) { event.Skip(); }
- virtual void onOkay( wxCommandEvent& event ) { event.Skip(); }
-
-
-public:
-
- WarnAccessRightsMissingDlgGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Grant Full Disk Access"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE );
-
- ~WarnAccessRightsMissingDlgGenerated();
+ private:
+
+ protected:
+ wxStaticBitmap* m_bitmapGrantAccess;
+ wxStaticText* m_staticTextDescr;
+ wxStaticLine* m_staticline20;
+ wxPanel* m_panel39;
+ wxFlexGridSizer* ffgSizer11;
+ wxStaticText* m_staticTextStep1;
+ wxButton* m_buttonLocateBundle;
+ wxStaticText* m_staticTextStep2;
+ wxButton* m_buttonOpenSecurity;
+ wxStaticText* m_staticTextStep3;
+ wxStaticText* m_staticTextAllowChanges;
+ wxStaticText* m_staticTextStep4;
+ wxStaticText* m_staticTextGrantAccess;
+ wxStaticLine* m_staticline36;
+ wxCheckBox* m_checkBoxDontShowAgain;
+ wxBoxSizer* bSizerStdButtons;
+ wxButton* m_buttonClose;
+
+ // Virtual event handlers, override them in your derived class
+ virtual void onClose( wxCloseEvent& event ) { event.Skip(); }
+ virtual void onShowAppBundle( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onOpenSecuritySettings( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onCheckBoxClick( wxCommandEvent& event ) { event.Skip(); }
+ virtual void onOkay( wxCommandEvent& event ) { event.Skip(); }
+
+
+ public:
+
+ WarnAccessRightsMissingDlgGenerated( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Grant Full Disk Access"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE );
+
+ ~WarnAccessRightsMissingDlgGenerated();
};
diff --git a/FreeFileSync/Source/ui/gui_status_handler.cpp b/FreeFileSync/Source/ui/gui_status_handler.cpp
index 16910b42..a0c1fe10 100644
--- a/FreeFileSync/Source/ui/gui_status_handler.cpp
+++ b/FreeFileSync/Source/ui/gui_status_handler.cpp
@@ -143,7 +143,7 @@ StatusHandlerTemporaryPanel::~StatusHandlerTemporaryPanel()
StatusHandlerTemporaryPanel::Result StatusHandlerTemporaryPanel::reportResults() //noexcept!!
{
- const auto totalTime = std::chrono::duration_cast<std::chrono::milliseconds>(std::chrono::system_clock::now() - startTime_);
+ const std::chrono::milliseconds totalTime = mainDlg_.compareStatus_->pauseAndGetTotalTime();
//determine post-sync status irrespective of further errors during tear-down
const SyncResult syncResult = [&]
@@ -171,7 +171,7 @@ StatusHandlerTemporaryPanel::Result StatusHandlerTemporaryPanel::reportResults()
totalTime
};
- auto errorLogFinal = std::make_shared<const ErrorLog>(std::move(errorLog_));
+ auto errorLogFinal = makeSharedRef<const ErrorLog>(std::move(errorLog_));
errorLog_ = ErrorLog(); //see check in ~StatusHandlerTemporaryPanel()
return {summary, errorLogFinal};
@@ -238,7 +238,7 @@ ProcessCallback::Response StatusHandlerTemporaryPanel::reportError(const ErrorIn
errorLog_.logMsg(errorInfo.msg + L"\n-> " + _("Automatic retry"), MSG_TYPE_INFO);
delayAndCountDown(errorInfo.failTime + autoRetryDelay_,
[&, statusPrefix = _("Automatic retry") +
- (errorInfo.retryNumber == 0 ? L"" : L' ' + numberTo<std::wstring>(errorInfo.retryNumber + 1)) + L" | ",
+ (errorInfo.retryNumber == 0 ? L"" : L' ' + formatNumber(errorInfo.retryNumber + 1)) + L" | ",
statusPostfix = L" | " + _("Error") + L": " + replaceCpy(errorInfo.msg, L'\n', L' ')](const std::wstring& timeRemMsg)
{ this->updateStatus(statusPrefix + timeRemMsg + statusPostfix); }); //throw AbortProcess
return ProcessCallback::retry;
@@ -351,7 +351,8 @@ StatusHandlerFloatingDialog::StatusHandlerFloatingDialog(wxFrame* parentDlg,
const Zstring& soundFileSyncComplete,
const Zstring& soundFileAlertPending,
const wxSize& progressDlgSize, bool dlgMaximize,
- bool autoCloseDialog) :
+ bool autoCloseDialog,
+ const ErrorLog* errorLogStart) :
jobNames_(jobNames),
startTime_(startTime),
autoRetryCount_(autoRetryCount),
@@ -359,7 +360,11 @@ StatusHandlerFloatingDialog::StatusHandlerFloatingDialog(wxFrame* parentDlg,
soundFileSyncComplete_(soundFileSyncComplete),
soundFileAlertPending_(soundFileAlertPending),
progressDlg_(SyncProgressDialog::create(progressDlgSize, dlgMaximize, [this] { userRequestAbort(); }, *this, parentDlg, true /*showProgress*/, autoCloseDialog,
-jobNames, startTime, ignoreErrors, autoRetryCount, PostSyncAction2::none)) {}
+jobNames, std::chrono::system_clock::to_time_t(startTime), ignoreErrors, autoRetryCount, PostSyncAction2::none))
+{
+ if (errorLogStart)
+ errorLog_ = *errorLogStart;
+}
StatusHandlerFloatingDialog::~StatusHandlerFloatingDialog()
@@ -374,9 +379,8 @@ StatusHandlerFloatingDialog::Result StatusHandlerFloatingDialog::reportResults(c
const std::set<AbstractPath>& logFilePathsToKeep,
const std::string& emailNotifyAddress, ResultsNotification emailNotifyCondition)
{
- const auto totalTime = std::chrono::duration_cast<std::chrono::milliseconds>(std::chrono::system_clock::now() - startTime_);
-
- progressDlg_->timerSetStatus(false /*active*/); //keep correct summary window stats considering count down timer, system sleep
+ //keep correct summary window stats considering count down timer, system sleep
+ const std::chrono::milliseconds totalTime = progressDlg_->pauseAndGetTotalTime();
//determine post-sync status irrespective of further errors during tear-down
const SyncResult syncResult = [&]
@@ -602,7 +606,7 @@ ProcessCallback::Response StatusHandlerFloatingDialog::reportError(const ErrorIn
errorLog_.logMsg(errorInfo.msg + L"\n-> " + _("Automatic retry"), MSG_TYPE_INFO);
delayAndCountDown(errorInfo.failTime + autoRetryDelay_,
[&, statusPrefix = _("Automatic retry") +
- (errorInfo.retryNumber == 0 ? L"" : L' ' + numberTo<std::wstring>(errorInfo.retryNumber + 1)) + L" | ",
+ (errorInfo.retryNumber == 0 ? L"" : L' ' + formatNumber(errorInfo.retryNumber + 1)) + L" | ",
statusPostfix = L" | " + _("Error") + L": " + replaceCpy(errorInfo.msg, L'\n', L' ')](const std::wstring& timeRemMsg)
{ this->updateStatus(statusPrefix + timeRemMsg + statusPostfix); }); //throw AbortProcess
return ProcessCallback::retry;
diff --git a/FreeFileSync/Source/ui/gui_status_handler.h b/FreeFileSync/Source/ui/gui_status_handler.h
index 3fe20e97..8d8fc972 100644
--- a/FreeFileSync/Source/ui/gui_status_handler.h
+++ b/FreeFileSync/Source/ui/gui_status_handler.h
@@ -41,7 +41,7 @@ public:
struct Result
{
ProcessSummary summary;
- std::shared_ptr<const zen::ErrorLog> errorLog;
+ zen::SharedRef<const zen::ErrorLog> errorLog;
};
Result reportResults(); //noexcept!!
@@ -56,7 +56,6 @@ private:
const size_t autoRetryCount_;
const std::chrono::seconds autoRetryDelay_;
const Zstring soundFileAlertPending_;
-
const std::chrono::system_clock::time_point startTime_;
const std::chrono::steady_clock::time_point startTimeSteady_ = std::chrono::steady_clock::now();
};
@@ -75,7 +74,8 @@ public:
const Zstring& soundFileSyncComplete,
const Zstring& soundFileAlertPending,
const wxSize& progressDlgSize, bool dlgMaximize,
- bool autoCloseDialog); //noexcept!
+ bool autoCloseDialog,
+ const zen::ErrorLog* errorLogStart /*optional*/); //noexcept!
~StatusHandlerFloatingDialog();
void initNewPhase (int itemsTotal, int64_t bytesTotal, ProcessPhase phaseID) override; //
@@ -114,7 +114,6 @@ private:
const std::chrono::seconds autoRetryDelay_;
const Zstring soundFileSyncComplete_;
const Zstring soundFileAlertPending_;
-
SyncProgressDialog* progressDlg_; //managed to have the same lifetime as this handler!
zen::ErrorLog errorLog_;
};
diff --git a/FreeFileSync/Source/ui/log_panel.cpp b/FreeFileSync/Source/ui/log_panel.cpp
index a0c8863a..b2a656d0 100644
--- a/FreeFileSync/Source/ui/log_panel.cpp
+++ b/FreeFileSync/Source/ui/log_panel.cpp
@@ -150,7 +150,7 @@ namespace
class GridDataMessages : public GridData
{
public:
- GridDataMessages(const SharedRef<const ErrorLog>& log) : msgView_(log) {}
+ explicit GridDataMessages(const SharedRef<const ErrorLog>& log) : msgView_(log) {}
MessageView& getDataView() { return msgView_; }
diff --git a/FreeFileSync/Source/ui/log_panel.h b/FreeFileSync/Source/ui/log_panel.h
index 828d6447..fad3c054 100644
--- a/FreeFileSync/Source/ui/log_panel.h
+++ b/FreeFileSync/Source/ui/log_panel.h
@@ -19,7 +19,7 @@ class MessageView;
class LogPanel : public LogPanelGenerated
{
public:
- LogPanel(wxWindow* parent);
+ explicit LogPanel(wxWindow* parent);
void setLog(const std::shared_ptr<const zen::ErrorLog>& log);
diff --git a/FreeFileSync/Source/ui/main_dlg.cpp b/FreeFileSync/Source/ui/main_dlg.cpp
index 0a4bba6e..d6e443dc 100644
--- a/FreeFileSync/Source/ui/main_dlg.cpp
+++ b/FreeFileSync/Source/ui/main_dlg.cpp
@@ -113,6 +113,17 @@ bool acceptDialogFileDrop(const std::vector<Zstring>& shellItemPaths)
}
+
+XmlGuiConfig getDefaultGuiConfig(const FilterConfig& defaultFilter)
+{
+ XmlGuiConfig defaultCfg;
+
+ //set default file filter: this is only ever relevant when creating new configurations!
+ //a default XmlGuiConfig does not need these user-specific exclusions!
+ defaultCfg.mainCfg.globalFilter = defaultFilter;
+
+ return defaultCfg;
+}
}
//------------------------------------------------------------------
@@ -373,11 +384,7 @@ void MainDialog::create(const Zstring& globalConfigFilePath)
//else: not-existing/access error? => user may click on [Last session] later
}
- XmlGuiConfig guiCfg; //contains default values
-
- //set default file filter: this is only ever relevant when creating new configurations!
- //a default XmlGuiConfig does not need these user-specific exclusions!
- guiCfg.mainCfg.globalFilter = globalSettings.defaultFilter;
+ XmlGuiConfig guiCfg = getDefaultGuiConfig(globalSettings.defaultFilter);
if (!cfgFilePaths.empty())
try
@@ -469,8 +476,9 @@ MainDialog::MainDialog(const Zstring& globalConfigFilePath,
m_bpButtonSyncContext ->SetBitmapLabel(mirrorIfRtl(loadImage("button_arrow_right")));
m_bpButtonViewFilterContext->SetBitmapLabel(mirrorIfRtl(loadImage("button_arrow_right")));
- m_bpButtonNew ->SetBitmapLabel(loadImage("cfg_new"));
+ //m_bpButtonNew ->set dynamically
m_bpButtonOpen ->SetBitmapLabel(loadImage("cfg_load"));
+ //m_bpButtonSave ->set dynamically
m_bpButtonSaveAs ->SetBitmapLabel(generateSaveAsImage("start_sync"));
m_bpButtonSaveAsBatch->SetBitmapLabel(generateSaveAsImage("cfg_batch"));
@@ -1449,7 +1457,7 @@ void MainDialog::copyToAlternateFolder(const std::vector<FileSystemObject*>& sel
catch (AbortProcess&) {}
const StatusHandlerTemporaryPanel::Result r = statusHandler.reportResults(); //noexcept
- setLastOperationLog(r.summary, r.errorLog);
+ setLastOperationLog(r.summary, r.errorLog.ptr());
//updateGui(); -> not needed
}
@@ -1493,7 +1501,7 @@ void MainDialog::deleteSelectedFiles(const std::vector<FileSystemObject*>& selec
catch (AbortProcess&) {}
const StatusHandlerTemporaryPanel::Result r = statusHandler.reportResults(); //noexcept
- setLastOperationLog(r.summary, r.errorLog);
+ setLastOperationLog(r.summary, r.errorLog.ptr());
//remove rows that are empty: just a beautification, invalid rows shouldn't cause issues
filegrid::getDataView(*m_gridMainC).removeInvalidRows();
@@ -1733,7 +1741,7 @@ void MainDialog::openExternalApplication(const Zstring& commandLinePhrase, bool
catch (AbortProcess&) {}
const StatusHandlerTemporaryPanel::Result r = statusHandler.reportResults(); //noexcept
- setLastOperationLog(r.summary, r.errorLog);
+ setLastOperationLog(r.summary, r.errorLog.ptr());
if (r.summary.syncResult == SyncResult::aborted)
return;
@@ -2976,13 +2984,7 @@ std::vector<std::wstring> MainDialog::getJobNames() const
void MainDialog::updateUnsavedCfgStatus()
{
- const Zstring activeCfgFilePath = activeConfigFiles_.size() == 1 && !equalNativePath(activeConfigFiles_[0], lastRunConfigPath_) ? activeConfigFiles_[0] : Zstring();
-
- const bool haveUnsavedCfg = lastSavedCfg_ != getConfig();
-
- //update save config button
- const bool allowSave = haveUnsavedCfg ||
- activeConfigFiles_.size() > 1;
+ const XmlGuiConfig guiCfg = getConfig();
auto makeBrightGrey = [](wxImage img)
{
@@ -2991,6 +2993,19 @@ void MainDialog::updateUnsavedCfgStatus()
return img;
};
+ //update new config button
+ const bool allowNew = guiCfg != getDefaultGuiConfig(globalCfg_.defaultFilter);
+
+ setImage(*m_bpButtonNew, allowNew ? loadImage("cfg_new") : makeBrightGrey(loadImage("cfg_new")));
+ m_bpButtonNew->Enable(allowNew);
+ m_menuItemNew->Enable(allowNew);
+
+ //update save config button
+ const bool haveUnsavedCfg = lastSavedCfg_ != guiCfg;
+
+ const bool allowSave = haveUnsavedCfg ||
+ activeConfigFiles_.size() > 1;
+
setImage(*m_bpButtonSave, allowSave ? loadImage("cfg_save") : makeBrightGrey(loadImage("cfg_save")));
m_bpButtonSave->Enable(allowSave);
m_menuItemSave->Enable(allowSave); //bitmap is automatically greyscaled on Win7 (introducing a crappy looking shift), but not on XP
@@ -2999,6 +3014,7 @@ void MainDialog::updateUnsavedCfgStatus()
wxString title;
if (haveUnsavedCfg)
title += L'*';
+ const Zstring activeCfgFilePath = activeConfigFiles_.size() == 1 && !equalNativePath(activeConfigFiles_[0], lastRunConfigPath_) ? activeConfigFiles_[0] : Zstring();
if (!activeCfgFilePath.empty())
title += utfTo<wxString>(activeCfgFilePath);
@@ -3313,11 +3329,8 @@ void MainDialog::onConfigNew(wxCommandEvent& event)
bool MainDialog::loadConfiguration(const std::vector<Zstring>& filePaths, bool ignoreBrokenConfig) //"false": error/cancel
{
- XmlGuiConfig newGuiCfg; //default values
+ XmlGuiConfig newGuiCfg = getDefaultGuiConfig(globalCfg_.defaultFilter);
std::wstring warningMsg;
- //set default file filter: this is only ever relevant when creating new configurations!
- //a default XmlGuiConfig does not need these user-specific exclusions!
- newGuiCfg.mainCfg.globalFilter = globalCfg_.defaultFilter;
if (!filePaths.empty()) //empty cfg file list means "use default"
try
@@ -3847,79 +3860,80 @@ void MainDialog::showConfigDialog(SyncConfigPanel panelToShow, int localPairInde
globalCfg_.folderHistoryMax,
globalCfg_.sftpKeyFileLastSelected,
globalCfg_.emailHistory, globalCfg_.emailHistoryMax,
- globalCfg_.commandHistory, globalCfg_.commandHistoryMax) != ConfirmationButton::accept)
- return;
-
- assert(localCfgs.size() == localPairCfgOld.size());
+ globalCfg_.commandHistory, globalCfg_.commandHistoryMax) == ConfirmationButton::accept)
+ {
+ assert(localCfgs.size() == localPairCfgOld.size());
- currentCfg_.mainCfg.cmpCfg = globalPairCfg.cmpCfg;
- currentCfg_.mainCfg.syncCfg = globalPairCfg.syncCfg;
- currentCfg_.mainCfg.globalFilter = globalPairCfg.filter;
+ currentCfg_.mainCfg.cmpCfg = globalPairCfg.cmpCfg;
+ currentCfg_.mainCfg.syncCfg = globalPairCfg.syncCfg;
+ currentCfg_.mainCfg.globalFilter = globalPairCfg.filter;
- currentCfg_.mainCfg.deviceParallelOps = globalPairCfg.miscCfg.deviceParallelOps;
- currentCfg_.mainCfg.ignoreErrors = globalPairCfg.miscCfg.ignoreErrors;
- currentCfg_.mainCfg.autoRetryCount = globalPairCfg.miscCfg.autoRetryCount;
- currentCfg_.mainCfg.autoRetryDelay = globalPairCfg.miscCfg.autoRetryDelay;
- currentCfg_.mainCfg.postSyncCommand = globalPairCfg.miscCfg.postSyncCommand;
- currentCfg_.mainCfg.postSyncCondition = globalPairCfg.miscCfg.postSyncCondition;
- currentCfg_.mainCfg.altLogFolderPathPhrase = globalPairCfg.miscCfg.altLogFolderPathPhrase;
- currentCfg_.mainCfg.emailNotifyAddress = globalPairCfg.miscCfg.emailNotifyAddress;
- currentCfg_.mainCfg.emailNotifyCondition = globalPairCfg.miscCfg.emailNotifyCondition;
+ currentCfg_.mainCfg.deviceParallelOps = globalPairCfg.miscCfg.deviceParallelOps;
+ currentCfg_.mainCfg.ignoreErrors = globalPairCfg.miscCfg.ignoreErrors;
+ currentCfg_.mainCfg.autoRetryCount = globalPairCfg.miscCfg.autoRetryCount;
+ currentCfg_.mainCfg.autoRetryDelay = globalPairCfg.miscCfg.autoRetryDelay;
+ currentCfg_.mainCfg.postSyncCommand = globalPairCfg.miscCfg.postSyncCommand;
+ currentCfg_.mainCfg.postSyncCondition = globalPairCfg.miscCfg.postSyncCondition;
+ currentCfg_.mainCfg.altLogFolderPathPhrase = globalPairCfg.miscCfg.altLogFolderPathPhrase;
+ currentCfg_.mainCfg.emailNotifyAddress = globalPairCfg.miscCfg.emailNotifyAddress;
+ currentCfg_.mainCfg.emailNotifyCondition = globalPairCfg.miscCfg.emailNotifyCondition;
- firstFolderPair_->setValues(localCfgs[0]);
+ firstFolderPair_->setValues(localCfgs[0]);
- for (size_t i = 1; i < localCfgs.size(); ++i)
- additionalFolderPairs_[i - 1]->setValues(localCfgs[i]);
+ for (size_t i = 1; i < localCfgs.size(); ++i)
+ additionalFolderPairs_[i - 1]->setValues(localCfgs[i]);
- //------------------------------------------------------------------------------------
+ //------------------------------------------------------------------------------------
- const bool cmpConfigChanged = globalPairCfg.cmpCfg != globalPairCfgOld.cmpCfg || [&]
- {
- for (size_t i = 0; i < localCfgs.size(); ++i)
- if (localCfgs[i].localCmpCfg != localPairCfgOld[i].localCmpCfg)
- return true;
- return false;
- }();
+ const bool cmpConfigChanged = globalPairCfg.cmpCfg != globalPairCfgOld.cmpCfg || [&]
+ {
+ for (size_t i = 0; i < localCfgs.size(); ++i)
+ if (localCfgs[i].localCmpCfg != localPairCfgOld[i].localCmpCfg)
+ return true;
+ return false;
+ }();
- //[!] don't redetermine sync directions if only options for deletion handling or versioning are changed!!!
- const bool syncDirectionsChanged = globalPairCfg.syncCfg.directionCfg != globalPairCfgOld.syncCfg.directionCfg || [&]
- {
- for (size_t i = 0; i < localCfgs.size(); ++i)
- if (static_cast<bool>(localCfgs[i].localSyncCfg) != static_cast<bool>(localPairCfgOld[i].localSyncCfg) ||
- (localCfgs[i].localSyncCfg && localCfgs[i].localSyncCfg->directionCfg != localPairCfgOld[i].localSyncCfg->directionCfg))
- return true;
- return false;
- }();
+ //[!] don't redetermine sync directions if only options for deletion handling or versioning are changed!!!
+ const bool syncDirectionsChanged = globalPairCfg.syncCfg.directionCfg != globalPairCfgOld.syncCfg.directionCfg || [&]
+ {
+ for (size_t i = 0; i < localCfgs.size(); ++i)
+ if (static_cast<bool>(localCfgs[i].localSyncCfg) != static_cast<bool>(localPairCfgOld[i].localSyncCfg) ||
+ (localCfgs[i].localSyncCfg && localCfgs[i].localSyncCfg->directionCfg != localPairCfgOld[i].localSyncCfg->directionCfg))
+ return true;
+ return false;
+ }();
- const bool filterConfigChanged = globalPairCfg.filter != globalPairCfgOld.filter || [&]
- {
- for (size_t i = 0; i < localCfgs.size(); ++i)
- if (localCfgs[i].localFilter != localPairCfgOld[i].localFilter)
- return true;
- return false;
- }();
+ const bool filterConfigChanged = globalPairCfg.filter != globalPairCfgOld.filter || [&]
+ {
+ for (size_t i = 0; i < localCfgs.size(); ++i)
+ if (localCfgs[i].localFilter != localPairCfgOld[i].localFilter)
+ return true;
+ return false;
+ }();
- //const bool miscConfigChanged = globalPairCfg.miscCfg.deviceParallelOps != globalPairCfgOld.miscCfg.deviceParallelOps ||
- // globalPairCfg.miscCfg.ignoreErrors != globalPairCfgOld.miscCfg.ignoreErrors ||
- // globalPairCfg.miscCfg.autoRetryCount != globalPairCfgOld.miscCfg.autoRetryCount ||
- // globalPairCfg.miscCfg.autoRetryDelay != globalPairCfgOld.miscCfg.autoRetryDelay ||
- // globalPairCfg.miscCfg.postSyncCommand != globalPairCfgOld.miscCfg.postSyncCommand ||
- // globalPairCfg.miscCfg.postSyncCondition != globalPairCfgOld.miscCfg.postSyncCondition ||
- // globalPairCfg.miscCfg.altLogFolderPathPhrase != globalPairCfgOld.miscCfg.altLogFolderPathPhrase ||
- // globalPairCfg.miscCfg.emailNotifyAddress != globalPairCfgOld.miscCfg.emailNotifyAddress ||
- // globalPairCfg.miscCfg.emailNotifyCondition != globalPairCfgOld.miscCfg.emailNotifyCondition;
+ //const bool miscConfigChanged = globalPairCfg.miscCfg.deviceParallelOps != globalPairCfgOld.miscCfg.deviceParallelOps ||
+ // globalPairCfg.miscCfg.ignoreErrors != globalPairCfgOld.miscCfg.ignoreErrors ||
+ // globalPairCfg.miscCfg.autoRetryCount != globalPairCfgOld.miscCfg.autoRetryCount ||
+ // globalPairCfg.miscCfg.autoRetryDelay != globalPairCfgOld.miscCfg.autoRetryDelay ||
+ // globalPairCfg.miscCfg.postSyncCommand != globalPairCfgOld.miscCfg.postSyncCommand ||
+ // globalPairCfg.miscCfg.postSyncCondition != globalPairCfgOld.miscCfg.postSyncCondition ||
+ // globalPairCfg.miscCfg.altLogFolderPathPhrase != globalPairCfgOld.miscCfg.altLogFolderPathPhrase ||
+ // globalPairCfg.miscCfg.emailNotifyAddress != globalPairCfgOld.miscCfg.emailNotifyAddress ||
+ // globalPairCfg.miscCfg.emailNotifyCondition != globalPairCfgOld.miscCfg.emailNotifyCondition;
- if (cmpConfigChanged)
- applyCompareConfig(globalPairCfg.cmpCfg.compareVar != globalPairCfgOld.cmpCfg.compareVar /*setDefaultViewType*/);
+ if (cmpConfigChanged)
+ applyCompareConfig(globalPairCfg.cmpCfg.compareVar != globalPairCfgOld.cmpCfg.compareVar /*setDefaultViewType*/);
- if (syncDirectionsChanged)
- applySyncDirections();
+ if (syncDirectionsChanged)
+ applySyncDirections();
- if (filterConfigChanged)
- {
- updateGlobalFilterButton(); //refresh global filter icon
- applyFilterConfig(); //re-apply filter
+ if (filterConfigChanged)
+ {
+ updateGlobalFilterButton(); //refresh global filter icon
+ applyFilterConfig(); //re-apply filter
+ }
}
+ //else: possible but obscure: default filter changed => impact on "New config" enabled/disabled!
updateUnsavedCfgStatus(); //also included by updateGui();
}
@@ -4080,12 +4094,11 @@ void MainDialog::onCompare(wxCommandEvent& event)
clearGrid(); //avoid memory peak by clearing old data first
const auto& guiCfg = getConfig();
- const std::chrono::system_clock::time_point startTime = std::chrono::system_clock::now();
const std::vector<FolderPairCfg>& fpCfgList = extractCompareCfg(guiCfg.mainCfg);
//handle status display and error messages
- StatusHandlerTemporaryPanel statusHandler(*this, startTime,
+ StatusHandlerTemporaryPanel statusHandler(*this, std::chrono::system_clock::now(),
guiCfg.mainCfg.ignoreErrors,
guiCfg.mainCfg.autoRetryCount,
guiCfg.mainCfg.autoRetryDelay,
@@ -4108,9 +4121,10 @@ void MainDialog::onCompare(wxCommandEvent& event)
catch (AbortProcess&) {}
const StatusHandlerTemporaryPanel::Result r = statusHandler.reportResults(); //noexcept
+ errorLogCmp_ = r.errorLog.ptr();
//---------------------------------------------------------------------------
- setLastOperationLog(r.summary, r.errorLog);
+ setLastOperationLog(r.summary, r.errorLog.ptr());
if (r.summary.syncResult == SyncResult::aborted)
return updateGui(); //refresh grid in ANY case! (also on abort)
@@ -4159,7 +4173,7 @@ void MainDialog::onCompare(wxCommandEvent& event)
st.deleteCount() == 0)
{
flashStatusInformation(_("No files to synchronize"));
- updateConfigLastRunStats(std::chrono::system_clock::to_time_t(startTime), r.summary.syncResult, getNullPath() /*logFilePath*/);
+ updateConfigLastRunStats(std::chrono::system_clock::to_time_t(r.summary.startTime), r.summary.syncResult, getNullPath() /*logFilePath*/);
}
}
}
@@ -4220,6 +4234,9 @@ void MainDialog::clearGrid(ptrdiff_t pos)
folderCmp_.erase(folderCmp_.begin() + pos);
}
+ if (folderCmp_.empty())
+ errorLogCmp_.reset();
+
filegrid::setData(*m_gridMainC, folderCmp_);
treegrid::setData(*m_gridOverview, folderCmp_);
updateGui();
@@ -4324,6 +4341,9 @@ void MainDialog::onStartSync(wxCommandEvent& event)
ZEN_ON_SCOPE_EXIT(enableGuiElements());
//run this->enableGuiElements() BEFORE "finalRequest" buf AFTER StatusHandlerFloatingDialog::reportResults()
+ std::shared_ptr<const ErrorLog> errorLogStart;
+ errorLogStart.swap(errorLogCmp_); //"consume" comparison's error log on first sync
+
//class handling status updates and error messages
StatusHandlerFloatingDialog statusHandler(this, getJobNames(), syncStartTime,
guiCfg.mainCfg.ignoreErrors,
@@ -4333,7 +4353,8 @@ void MainDialog::onStartSync(wxCommandEvent& event)
globalCfg_.soundFileAlertPending,
globalCfg_.dpiLayouts[getDpiScalePercent()].progressDlg.dlgSize,
globalCfg_.dpiLayouts[getDpiScalePercent()].progressDlg.isMaximized,
- globalCfg_.progressDlgAutoClose);
+ globalCfg_.progressDlgAutoClose,
+ errorLogStart.get());
try
{
//PERF_START;
@@ -4388,7 +4409,7 @@ void MainDialog::onStartSync(wxCommandEvent& event)
globalCfg_.dpiLayouts[getDpiScalePercent()].progressDlg.isMaximized = r.dlgIsMaximized;
//update last sync stats for the selected cfg files
- updateConfigLastRunStats(std::chrono::system_clock::to_time_t(syncStartTime), r.summary.syncResult, r.logFilePath);
+ updateConfigLastRunStats(std::chrono::system_clock::to_time_t(r.summary.startTime), r.summary.syncResult, r.logFilePath);
//remove empty rows: just a beautification, invalid rows shouldn't cause issues
filegrid::getDataView(*m_gridMainC).removeInvalidRows();
@@ -4568,7 +4589,7 @@ void MainDialog::startSyncForSelecction(const std::vector<FileSystemObject*>& se
const StatusHandlerTemporaryPanel::Result r = statusHandler.reportResults(); //noexcept
- setLastOperationLog(r.summary, r.errorLog);
+ setLastOperationLog(r.summary, r.errorLog.ptr());
} //run updateGui() *after* reverting our temporary exclusions
//remove empty rows: just a beautification, invalid rows shouldn't cause issues
@@ -4832,7 +4853,7 @@ void MainDialog::swapSides()
catch (AbortProcess&) {}
const StatusHandlerTemporaryPanel::Result r = statusHandler.reportResults(); //noexcept
- setLastOperationLog(r.summary, r.errorLog);
+ setLastOperationLog(r.summary, r.errorLog.ptr());
}
updateGui(); //e.g. unsaved changes
@@ -5083,7 +5104,7 @@ void MainDialog::applySyncDirections()
catch (AbortProcess&) {}
const StatusHandlerTemporaryPanel::Result r = statusHandler.reportResults(); //noexcept
- setLastOperationLog(r.summary, r.errorLog);
+ setLastOperationLog(r.summary, r.errorLog.ptr());
}
updateGui(); //e.g. unsaved changes
diff --git a/FreeFileSync/Source/ui/main_dlg.h b/FreeFileSync/Source/ui/main_dlg.h
index 0c9b43ef..18603585 100644
--- a/FreeFileSync/Source/ui/main_dlg.h
+++ b/FreeFileSync/Source/ui/main_dlg.h
@@ -309,6 +309,7 @@ private:
//the prime data structure of this tool *bling*:
FolderComparison folderCmp_; //optional!: sync button not available if empty
+ std::shared_ptr<const zen::ErrorLog> errorLogCmp_;
//folder pairs:
std::unique_ptr<FolderPairFirst> firstFolderPair_; //always bound!!!
diff --git a/FreeFileSync/Source/ui/progress_indicator.cpp b/FreeFileSync/Source/ui/progress_indicator.cpp
index 0a876460..89035258 100644
--- a/FreeFileSync/Source/ui/progress_indicator.cpp
+++ b/FreeFileSync/Source/ui/progress_indicator.cpp
@@ -153,6 +153,12 @@ public:
}
bool timerIsRunning() const { return !stopWatch_.isPaused(); }
+ std::chrono::milliseconds pauseAndGetTotalTime()
+ {
+ stopWatch_.pause();
+ return std::chrono::duration_cast<std::chrono::milliseconds>(stopWatch_.elapsed());
+ }
+
private:
//void onToggleIgnoreErrors(wxCommandEvent& event) override { updateStaticGui(); }
@@ -244,6 +250,8 @@ void CompareProgressPanel::Impl::init(const Statistics& syncStat, bool ignoreErr
void CompareProgressPanel::Impl::teardown()
{
+assert(stopWatch_.isPaused()); //why wasn't pauseAndGetTotalTime() called?
+
syncStat_ = nullptr;
parentWindow_.SetTitle(parentTitleBackup_);
taskbar_.reset();
@@ -401,14 +409,14 @@ void CompareProgressPanel::Impl::updateProgressGui()
CompareProgressPanel::CompareProgressPanel(wxFrame& parentWindow) : pimpl_(new Impl(parentWindow)) {} //owned by parentWindow
wxWindow* CompareProgressPanel::getAsWindow() { return pimpl_; }
void CompareProgressPanel::init(const Statistics& syncStat, bool ignoreErrors, size_t autoRetryCount) { pimpl_->init(syncStat, ignoreErrors, autoRetryCount); }
-void CompareProgressPanel::teardown() { pimpl_->teardown(); }
-void CompareProgressPanel::initNewPhase() { pimpl_->initNewPhase(); }
-void CompareProgressPanel::updateGui() { pimpl_->updateProgressGui(); }
+void CompareProgressPanel::teardown() { pimpl_->teardown(); }
+void CompareProgressPanel::initNewPhase(){ pimpl_->initNewPhase(); }
+void CompareProgressPanel::updateGui() { pimpl_->updateProgressGui(); }
bool CompareProgressPanel::getOptionIgnoreErrors() const { return pimpl_->getOptionIgnoreErrors(); }
void CompareProgressPanel::setOptionIgnoreErrors(bool ignoreErrors) { pimpl_->setOptionIgnoreErrors(ignoreErrors); }
void CompareProgressPanel::timerSetStatus(bool active) { pimpl_->timerSetStatus(active); }
bool CompareProgressPanel::timerIsRunning() const { return pimpl_->timerIsRunning(); }
-
+std::chrono::milliseconds CompareProgressPanel::pauseAndGetTotalTime() { return pimpl_->pauseAndGetTotalTime(); }
//########################################################################################
namespace
@@ -647,7 +655,7 @@ public:
bool showProgress,
bool autoCloseDialog,
const std::vector<std::wstring>& jobNames,
- const std::chrono::system_clock::time_point& syncStartTime,
+ time_t syncStartTime,
bool ignoreErrors,
size_t autoRetryCount,
PostSyncAction2 postSyncAction);
@@ -674,9 +682,12 @@ public:
stopWatch_.pause();
}
- bool timerIsRunning() const override
+ bool timerIsRunning() const override { return !stopWatch_.isPaused(); }
+
+ std::chrono::milliseconds pauseAndGetTotalTime() override
{
- return !stopWatch_.isPaused();
+ stopWatch_.pause();
+ return std::chrono::duration_cast<std::chrono::milliseconds>(stopWatch_.elapsed());
}
private:
@@ -700,7 +711,7 @@ private:
SyncProgressPanelGenerated& pnl_; //wxPanel containing the GUI controls of *this
- const std::chrono::system_clock::time_point& syncStartTime_;
+ const TimeComp syncStartTime_;
const wxString jobName_;
StopWatch stopWatch_;
@@ -751,13 +762,13 @@ SyncProgressDialogImpl<TopLevelDialog>::SyncProgressDialogImpl(long style, //wxF
bool showProgress,
bool autoCloseDialog,
const std::vector<std::wstring>& jobNames,
- const std::chrono::system_clock::time_point& syncStartTime,
+ time_t syncStartTime,
bool ignoreErrors,
size_t autoRetryCount,
PostSyncAction2 postSyncAction) :
TopLevelDialog(parentFrame, wxID_ANY, wxString(), wxDefaultPosition, wxDefaultSize, style), //title is overwritten anyway in setExternalStatus()
pnl_(*new SyncProgressPanelGenerated(this)), //ownership passed to "this"
- syncStartTime_(syncStartTime),
+ syncStartTime_(getLocalTime(syncStartTime)), //empty string on failure
jobName_([&]
{
std::wstring tmp;
@@ -812,8 +823,6 @@ dlgSizeBuf_(dlgSize)
//this->EnableCloseButton(false); //this is NOT honored on OS X or with ALT+F4 on Windows! -> why disable button at all??
- stopWatch_.restart(); //measure total time
-
try //try to get access to Windows 7/Ubuntu taskbar
{
taskbar_ = std::make_unique<Taskbar>(this); //throw TaskbarNotAvailable
@@ -1024,9 +1033,7 @@ void SyncProgressDialogImpl<TopLevelDialog>::setExternalStatus(const wxString& s
if (!jobName_.empty())
title += L" | " + jobName_;
- const TimeComp tc = getLocalTime(std::chrono::system_clock::to_time_t(syncStartTime_)); //returns empty string on failure
-
- const Zchar* format = [&]
+ const Zchar* format = [&tc = syncStartTime_]
{
if (const TimeComp& tcNow = getLocalTime();
tc.day == tcNow.day &&
@@ -1035,7 +1042,7 @@ void SyncProgressDialogImpl<TopLevelDialog>::setExternalStatus(const wxString& s
return formatTimeTag;
return formatDateTimeTag;
}();
- title += L" | " + utfTo<std::wstring>(formatTime(format, tc));
+ title += L" | " + utfTo<std::wstring>(formatTime(format, syncStartTime_));
//---------------------------------------------------------------------------
@@ -1338,13 +1345,12 @@ void SyncProgressDialogImpl<TopLevelDialog>::showSummary(SyncResult syncResult,
pnl_.m_staticTextTimeRemaining ->Hide();
}
- //generally not interesting anymore (e.g. items > 0 dur to skipped errors)
+ //generally not interesting anymore (e.g. items > 0 due to skipped errors)
pnl_.m_staticTextTimeRemaining->Hide();
const int64_t totalTimeSec = std::chrono::duration_cast<std::chrono::seconds>(stopWatch_.elapsed()).count();
setText(*pnl_.m_staticTextTimeElapsed, wxTimeSpan::Seconds(totalTimeSec).Format(L"%H:%M:%S"));
//totalTimeSec < 3600 ? wxTimeSpan::Seconds(totalTimeSec).Format(L"%M:%S") -> let's use full precision for max. clarity: https://freefilesync.org/forum/viewtopic.php?t=6308
- //maybe also should rename to "Total time"!?
resumeFromSystray(false /*userRequested*/); //if in tray mode...
@@ -1478,6 +1484,8 @@ void SyncProgressDialogImpl<TopLevelDialog>::showSummary(SyncResult syncResult,
template <class TopLevelDialog>
auto SyncProgressDialogImpl<TopLevelDialog>::destroy(bool autoClose, bool restoreParentFrame, SyncResult syncResult, const SharedRef<const ErrorLog>& log) -> Result
{
+ assert(stopWatch_.isPaused()); //why wasn't pauseAndGetTotalTime() called?
+
if (autoClose)
{
assert(syncStat_);
@@ -1655,7 +1663,7 @@ SyncProgressDialog* SyncProgressDialog::create(wxSize dlgSize, bool dlgMaximize,
bool showProgress,
bool autoCloseDialog,
const std::vector<std::wstring>& jobNames,
- const std::chrono::system_clock::time_point& syncStartTime,
+ time_t syncStartTime,
bool ignoreErrors,
size_t autoRetryCount,
PostSyncAction2 postSyncAction)
diff --git a/FreeFileSync/Source/ui/progress_indicator.h b/FreeFileSync/Source/ui/progress_indicator.h
index f4d2d71a..82870296 100644
--- a/FreeFileSync/Source/ui/progress_indicator.h
+++ b/FreeFileSync/Source/ui/progress_indicator.h
@@ -38,6 +38,7 @@ public:
void timerSetStatus(bool active); //start/stop all internal timers!
bool timerIsRunning() const;
+ std::chrono::milliseconds pauseAndGetTotalTime();
private:
class Impl;
@@ -64,11 +65,16 @@ struct SyncProgressDialog
bool showProgress,
bool autoCloseDialog,
const std::vector<std::wstring>& jobNames,
- const std::chrono::system_clock::time_point& syncStartTime,
+ time_t syncStartTime,
bool ignoreErrors,
size_t autoRetryCount,
PostSyncAction2 postSyncAction);
- struct Result { bool autoCloseDialog; wxSize dlgSize; bool dlgIsMaximized; };
+ struct Result
+ {
+ bool autoCloseDialog;
+ wxSize dlgSize;
+ bool dlgIsMaximized;
+ };
virtual Result destroy(bool autoClose, bool restoreParentFrame, SyncResult syncResult, const zen::SharedRef<const zen::ErrorLog>& log) = 0;
//---------------------------------------------------------------------------
@@ -86,6 +92,7 @@ struct SyncProgressDialog
virtual void timerSetStatus(bool active) = 0; //start/stop all internal timers!
virtual bool timerIsRunning() const = 0;
+ virtual std::chrono::milliseconds pauseAndGetTotalTime() = 0;
protected:
~SyncProgressDialog() {}
diff --git a/FreeFileSync/Source/ui/small_dlgs.cpp b/FreeFileSync/Source/ui/small_dlgs.cpp
index 819184ee..722d245b 100644
--- a/FreeFileSync/Source/ui/small_dlgs.cpp
+++ b/FreeFileSync/Source/ui/small_dlgs.cpp
@@ -325,6 +325,7 @@ CloudSetupDlg::CloudSetupDlg(wxWindow* parent, Zstring& folderPathPhrase, Zstrin
}
m_textCtrlServerPath->ChangeValue(utfTo<wxString>(FILE_NAME_SEPARATOR + folderPath.afsPath.value));
+ m_spinCtrlTimeout->SetValue(login.timeoutSec);
}
else if (acceptsItemPathPhraseSftp(folderPathPhrase))
{
@@ -386,11 +387,11 @@ CloudSetupDlg::CloudSetupDlg(wxWindow* parent, Zstring& folderPathPhrase, Zstrin
void CloudSetupDlg::onGdriveUserAdd(wxCommandEvent& event)
{
- guiQueue_.processAsync([]() -> std::variant<std::string /*email*/, FileError>
+ guiQueue_.processAsync([timeoutSec = extractGdriveLogin(getFolderPath().afsDevice).timeoutSec]() -> std::variant<std::string /*email*/, FileError>
{
try
{
- return gdriveAddUser(nullptr /*updateGui*/); //throw FileError
+ return gdriveAddUser(nullptr /*updateGui*/, timeoutSec); //throw FileError
}
catch (const FileError& e) { return e; }
},
@@ -429,7 +430,7 @@ void CloudSetupDlg::onGdriveUserRemove(wxCommandEvent& event)
_("&Disconnect")) != ConfirmationButton::accept)
return;
- gdriveRemoveUser(loginEmail); //throw FileError
+ gdriveRemoveUser(loginEmail, extractGdriveLogin(getFolderPath().afsDevice).timeoutSec); //throw FileError
m_listBoxGdriveUsers->Delete(selPos);
updateGui(); //disable remove user button
m_listBoxGdriveDrives->Clear();
@@ -459,11 +460,12 @@ void CloudSetupDlg::gdriveUpdateDrivesAndSelect(const std::string& accountEmail,
m_listBoxGdriveDrives->Clear();
m_listBoxGdriveDrives->Append(txtLoading_);
- guiQueue_.processAsync([accountEmail]() -> std::variant<std::vector<Zstring /*sharedDriveName*/>, FileError>
+ guiQueue_.processAsync([accountEmail, timeoutSec = extractGdriveLogin(getFolderPath().afsDevice).timeoutSec]() ->
+ std::variant<std::vector<Zstring /*sharedDriveName*/>, FileError>
{
try
{
- return gdriveListSharedDrives(accountEmail); //throw FileError
+ return gdriveListSharedDrives(accountEmail, timeoutSec); //throw FileError
}
catch (const FileError& e) { return e; }
},
@@ -590,8 +592,6 @@ void CloudSetupDlg::updateGui()
m_textCtrlPasswordHidden ->Show(!m_checkBoxShowPassword->GetValue());
}
- bSizerAccessTimeout->Show(type_ == CloudType::ftp || type_ == CloudType::sftp);
-
switch (type_)
{
case CloudType::gdrive:
@@ -603,7 +603,9 @@ void CloudSetupDlg::updateGui()
m_radioBtnKeyfile ->SetValue(false);
m_radioBtnAgent ->SetValue(false);
- switch (sftpAuthType_) //*not* owned by GUI controls
+ m_textCtrlPort->SetHint(numberTo<wxString>(DEFAULT_PORT_SFTP));
+
+ switch (sftpAuthType_) //*not* owned by GUI controls
{
case SftpAuthType::password:
m_radioBtnPassword->SetValue(true);
@@ -620,7 +622,8 @@ void CloudSetupDlg::updateGui()
break;
case CloudType::ftp:
- m_staticTextPassword->SetLabelText(_("Password:"));
+ m_textCtrlPort->SetHint(numberTo<wxString>(DEFAULT_PORT_FTP));
+ m_staticTextPassword->SetLabelText(_("Password:"));
break;
}
@@ -659,6 +662,7 @@ AbstractPath CloudSetupDlg::getFolderPath() const
login.sharedDriveName = utfTo<Zstring>(sharedDriveName);
}
}
+ login.timeoutSec = m_spinCtrlTimeout->GetValue();
return AbstractPath(condenseToGdriveDevice(login), serverRelPath); //noexcept
}
@@ -1720,6 +1724,13 @@ void ActivationDlg::onActivateOnline(wxCommandEvent& event)
void ActivationDlg::onActivateOffline(wxCommandEvent& event)
{
manualActivationKeyOut_ = m_textCtrlOfflineActivationKey->GetValue();
+ if (trimCpy(manualActivationKeyOut_).empty()) //alternative: disable button? => user thinks option is not available!
+ {
+ showNotificationDialog(this, DialogInfoType::info, PopupDialogCfg().setMainInstructions(_("Please enter a key for offline activation.")));
+ m_textCtrlOfflineActivationKey->SetFocus();
+ return;
+ }
+
EndModal(static_cast<int>(ActivationDlgButton::activateOffline));
}
}
diff --git a/FreeFileSync/Source/version/version.h b/FreeFileSync/Source/version/version.h
index 6f9b8a3e..ea21104e 100644
--- a/FreeFileSync/Source/version/version.h
+++ b/FreeFileSync/Source/version/version.h
@@ -3,7 +3,7 @@
namespace fff
{
-const char ffsVersion[] = "11.17"; //internal linkage!
+const char ffsVersion[] = "11.18"; //internal linkage!
const char FFS_VERSION_SEPARATOR = '.';
}
diff --git a/libcurl/curl_wrap.cpp b/libcurl/curl_wrap.cpp
index 88bde50e..1dc523b9 100644
--- a/libcurl/curl_wrap.cpp
+++ b/libcurl/curl_wrap.cpp
@@ -47,10 +47,9 @@ void zen::libcurlTearDown()
}
-HttpSession::HttpSession(const Zstring& server, bool useTls, const Zstring& caCertFilePath, std::chrono::seconds timeOut) : //throw SysError
+HttpSession::HttpSession(const Zstring& server, bool useTls, const Zstring& caCertFilePath) : //throw SysError
serverPrefix_((useTls ? "https://" : "http://") + utfTo<std::string>(server)),
- caCertFilePath_(utfTo<std::string>(caCertFilePath)),
- timeOutSec_(timeOut) {}
+ caCertFilePath_(utfTo<std::string>(caCertFilePath)) {}
HttpSession::~HttpSession()
@@ -64,7 +63,8 @@ HttpSession::Result HttpSession::perform(const std::string& serverRelPath,
const std::vector<std::string>& extraHeaders, const std::vector<CurlOption>& extraOptions,
const std::function<void (std::span<const char> buf)>& writeResponse /*throw X*/, //
const std::function<size_t(std::span< char> buf)>& readRequest /*throw X*/, //optional
- const std::function<void (const std::string_view& header)>& receiveHeader /*throw X*/) //throw SysError, X
+ const std::function<void (const std::string_view& header)>& receiveHeader /*throw X*/,
+ int timeoutSec) //throw SysError, X
{
if (!easyHandle_)
{
@@ -92,10 +92,10 @@ HttpSession::Result HttpSession::perform(const std::string& serverRelPath,
options.emplace_back(CURLOPT_NOSIGNAL, 1); //thread-safety: https://curl.haxx.se/libcurl/c/threadsafe.html
- options.emplace_back(CURLOPT_CONNECTTIMEOUT, timeOutSec_.count());
+ options.emplace_back(CURLOPT_CONNECTTIMEOUT, timeoutSec);
//CURLOPT_TIMEOUT: "Since this puts a hard limit for how long time a request is allowed to take, it has limited use in dynamic use cases with varying transfer times."
- options.emplace_back(CURLOPT_LOW_SPEED_TIME, timeOutSec_.count());
+ options.emplace_back(CURLOPT_LOW_SPEED_TIME, timeoutSec);
options.emplace_back(CURLOPT_LOW_SPEED_LIMIT, 1); //[bytes], can't use "0" which means "inactive", so use some low number
@@ -343,7 +343,7 @@ std::wstring zen::formatCurlStatusCode(CURLcode sc)
ZEN_CHECK_CASE_FOR_CONSTANT(CURLE_SSL_CIPHER);
ZEN_CHECK_CASE_FOR_CONSTANT(CURLE_PEER_FAILED_VERIFICATION);
ZEN_CHECK_CASE_FOR_CONSTANT(CURLE_BAD_CONTENT_ENCODING);
- ZEN_CHECK_CASE_FOR_CONSTANT(CURLE_LDAP_INVALID_URL);
+ ZEN_CHECK_CASE_FOR_CONSTANT(CURLE_OBSOLETE62);
ZEN_CHECK_CASE_FOR_CONSTANT(CURLE_FILESIZE_EXCEEDED);
ZEN_CHECK_CASE_FOR_CONSTANT(CURLE_USE_SSL_FAILED);
ZEN_CHECK_CASE_FOR_CONSTANT(CURLE_SEND_FAIL_REWIND);
@@ -357,7 +357,7 @@ std::wstring zen::formatCurlStatusCode(CURLcode sc)
ZEN_CHECK_CASE_FOR_CONSTANT(CURLE_REMOTE_FILE_EXISTS);
ZEN_CHECK_CASE_FOR_CONSTANT(CURLE_TFTP_NOSUCHUSER);
ZEN_CHECK_CASE_FOR_CONSTANT(CURLE_CONV_FAILED);
- ZEN_CHECK_CASE_FOR_CONSTANT(CURLE_CONV_REQD);
+ ZEN_CHECK_CASE_FOR_CONSTANT(CURLE_OBSOLETE76);
ZEN_CHECK_CASE_FOR_CONSTANT(CURLE_SSL_CACERT_BADFILE);
ZEN_CHECK_CASE_FOR_CONSTANT(CURLE_REMOTE_FILE_NOT_FOUND);
ZEN_CHECK_CASE_FOR_CONSTANT(CURLE_SSH);
diff --git a/libcurl/curl_wrap.h b/libcurl/curl_wrap.h
index ba9fbc13..4c41ade4 100644
--- a/libcurl/curl_wrap.h
+++ b/libcurl/curl_wrap.h
@@ -44,7 +44,7 @@ struct CurlOption
class HttpSession
{
public:
- HttpSession(const Zstring& server, bool useTls, const Zstring& caCertFilePath /*optional*/, std::chrono::seconds timeOut); //throw SysError
+ HttpSession(const Zstring& server, bool useTls, const Zstring& caCertFilePath /*optional*/); //throw SysError
~HttpSession();
struct Result
@@ -56,7 +56,8 @@ public:
const std::vector<std::string>& extraHeaders, const std::vector<CurlOption>& extraOptions,
const std::function<void (std::span<const char> buf)>& writeResponse /*throw X*/, //
const std::function<size_t(std::span< char> buf)>& readRequest /*throw X*/, //optional
- const std::function<void (const std::string_view& header)>& receiveHeader /*throw X*/); //throw SysError, X
+ const std::function<void (const std::string_view& header)>& receiveHeader /*throw X*/,
+ int timeoutSec); //throw SysError, X
std::chrono::steady_clock::time_point getLastUseTime() const { return lastSuccessfulUseTime_; }
@@ -66,7 +67,6 @@ private:
const std::string serverPrefix_;
const std::string caCertFilePath_; //optional
- const std::chrono::seconds timeOutSec_;
CURL* easyHandle_ = nullptr;
std::chrono::steady_clock::time_point lastSuccessfulUseTime_ = std::chrono::steady_clock::now();
};
diff --git a/zen/http.cpp b/zen/http.cpp
index 6ce6c324..24c5aa73 100644
--- a/zen/http.cpp
+++ b/zen/http.cpp
@@ -12,7 +12,7 @@
using namespace zen;
-constexpr std::chrono::seconds HTTP_ACCESS_TIME_OUT(20);
+const int HTTP_ACCESS_TIME_OUT_SEC = 20;
@@ -102,7 +102,7 @@ public:
}
};
- HttpSession httpSession(server, useTls, caCertFilePath, HTTP_ACCESS_TIME_OUT); //throw SysError
+ HttpSession httpSession(server, useTls, caCertFilePath); //throw SysError
auto writeResponse = [&](std::span<const char> buf)
{
@@ -112,11 +112,12 @@ public:
return asyncStreamOut->write(buf.data(), buf.size()); //throw ThreadStopRequest
};
- httpSession.perform(serverRelPath, //throw SysError, ThreadStopRequest
+ httpSession.perform(serverRelPath,
curlHeaders, extraOptions,
writeResponse /*throw ThreadStopRequest*/,
nullptr /*readRequest*/,
- onHeaderData /*throw SysError*/);
+ onHeaderData /*throw SysError*/,
+ HTTP_ACCESS_TIME_OUT_SEC); //throw SysError, ThreadStopRequest
if (!headerReceived)
throw SysError(L"HTTP response is missing header.");
diff --git a/zenXml/zenxml/xml.h b/zenXml/zenxml/xml.h
index 7e50221a..829bb5f3 100644
--- a/zenXml/zenxml/xml.h
+++ b/zenXml/zenxml/xml.h
@@ -68,8 +68,8 @@ XmlDoc loadXml(const Zstring& filePath) //throw FileError
throw FileError(
replaceCpy(replaceCpy(replaceCpy(_("Error parsing file %x, row %y, column %z."),
L"%x", fmtPath(filePath)),
- L"%y", numberTo<std::wstring>(e.row + 1)),
- L"%z", numberTo<std::wstring>(e.col + 1)));
+ L"%y", formatNumber(e.row + 1)),
+ L"%z", formatNumber(e.col + 1)));
}
}
}
bgstack15