aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--contrib/gitian.yml37
-rw-r--r--init.cpp65
-rw-r--r--main.cpp146
-rw-r--r--main.h9
-rw-r--r--rpc.cpp79
-rw-r--r--serialize.h2
-rw-r--r--uibase.cpp15
-rw-r--r--uibase.h153
-rw-r--r--uiproject.fbp652
-rw-r--r--util.cpp6
-rw-r--r--util.h1
11 files changed, 758 insertions, 407 deletions
diff --git a/contrib/gitian.yml b/contrib/gitian.yml
new file mode 100644
index 0000000000..92385e50b2
--- /dev/null
+++ b/contrib/gitian.yml
@@ -0,0 +1,37 @@
+---
+name: "bitcoin"
+suites:
+- "lucid"
+architectures:
+- "i386"
+- "amd64"
+packages:
+- "libdb4.8++-dev"
+- "libxxf86vm-dev"
+- "libgtk2.0-dev"
+- "libboost-all-dev"
+- "libssl-dev"
+- "git-core"
+reference_datetime: "2011-01-30 00:00:00"
+remotes:
+- "url": "https://github.com/bitcoin/bitcoin.git"
+ "dir": "bitcoin"
+files:
+- "wxWidgets-2.9.1.tar.bz2"
+script: |
+ INSTDIR="$HOME/install"
+ export LIBRARY_PATH="$INSTDIR/lib"
+ tar xjf wxWidgets-2.9.1.tar.bz2
+ cd wxWidgets-2.9.1
+ ./configure --prefix=$INSTDIR --enable-monolithic --disable-shared
+ perl -i -p -e "s/__TIME__/\"$REFERENCE_TIME\"/;s/__DATE__/\"$REFERENCE_DATE\"/" include/wx/chartype.h
+ make $MAKEOPTS install
+ cd ../bitcoin
+ mkdir -p $OUTDIR/src
+ cp -a . $OUTDIR/src
+ rm -rf $OUTDIR/src/.git
+ mv $OUTDIR/src/locale $OUTDIR
+ cp $OUTDIR/src/license.txt $OUTDIR
+ make -f makefile.unix $MAKEOPTS WXLIBS="-Wl,-Bstatic -l wx_gtk2u-2.9 -Wl,-Bdynamic -l gtk-x11-2.0 -l SM -l Xxf86vm" INCLUDEPATHS="`$INSTDIR/bin/wx-config --cflags`" bitcoin bitcoind
+ mkdir -p $OUTDIR/bin/$GBUILD_BITS
+ cp bitcoin bitcoind $OUTDIR/bin/$GBUILD_BITS
diff --git a/init.cpp b/init.cpp
index f74a143297..3afc8eedc9 100644
--- a/init.cpp
+++ b/init.cpp
@@ -74,32 +74,11 @@ void HandleSIGTERM(int)
#ifndef GUI
int main(int argc, char* argv[])
{
- for (int i = 1; i < argc; i++)
- if (!IsSwitchChar(argv[i][0]))
- fCommandLine = true;
- fDaemon = !fCommandLine;
-
-#ifdef __WXGTK__
- if (!fCommandLine)
- {
- // Daemonize
- pid_t pid = fork();
- if (pid < 0)
- {
- fprintf(stderr, "Error: fork() returned %d errno %d\n", pid, errno);
- return 1;
- }
- if (pid > 0)
- pthread_exit((void*)0);
- }
-#endif
-
- if (!AppInit(argc, argv))
- return 1;
+ bool fRet = false;
+ fRet = AppInit(argc, argv);
- while (!fShutdown)
- Sleep(1000000);
- return 0;
+ if (fRet && fDaemon)
+ pthread_exit((void*)0);
}
#endif
@@ -177,8 +156,10 @@ bool AppInit2(int argc, char* argv[])
" -connect=<ip> \t\t " + _("Connect only to the specified node\n") +
" -nolisten \t " + _("Don't accept connections from outside\n") +
" -paytxfee=<amt> \t " + _("Fee per KB to add to transactions you send\n") +
+#ifdef GUI
" -server \t\t " + _("Accept command line and JSON-RPC commands\n") +
" -daemon \t\t " + _("Run in the background as a daemon and accept commands\n") +
+#endif
" -testnet \t\t " + _("Use the test network\n") +
" -rpcuser=<user> \t " + _("Username for JSON-RPC connections\n") +
" -rpcpassword=<pw>\t " + _("Password for JSON-RPC connections\n") +
@@ -213,6 +194,19 @@ bool AppInit2(int argc, char* argv[])
fDebug = GetBoolArg("-debug");
+ fDaemon = GetBoolArg("-daemon");
+
+ if (fDaemon)
+ fServer = true;
+ else
+ fServer = GetBoolArg("-server");
+
+ /* force fServer and fDaemon when running without GUI */
+#ifndef GUI
+ fServer = true;
+ fDaemon = true;
+#endif
+
fPrintToConsole = GetBoolArg("-printtoconsole");
fPrintToDebugger = GetBoolArg("-printtodebugger");
@@ -220,12 +214,31 @@ bool AppInit2(int argc, char* argv[])
fNoListen = GetBoolArg("-nolisten");
+ for (int i = 1; i < argc; i++)
+ if (!IsSwitchChar(argv[i][0]))
+ fCommandLine = true;
+
if (fCommandLine)
{
int ret = CommandLineRPC(argc, argv);
exit(ret);
}
+#ifndef GUI
+ if (fDaemon)
+ {
+ // Daemonize
+ pid_t pid = fork();
+ if (pid < 0)
+ {
+ fprintf(stderr, "Error: fork() returned %d errno %d\n", pid, errno);
+ return false;
+ }
+ if (pid > 0)
+ return true;
+ }
+#endif
+
if (!fDebug && !pszSetDataDir[0])
ShrinkDebugFile();
printf("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n");
@@ -446,7 +459,7 @@ bool AppInit2(int argc, char* argv[])
if (!CreateThread(StartNode, NULL))
wxMessageBox("Error: CreateThread(StartNode) failed", "Bitcoin");
- if (GetBoolArg("-server") || fDaemon)
+ if (fServer)
CreateThread(ThreadRPCServer, NULL);
#if defined(__WXMSW__) && defined(GUI)
diff --git a/main.cpp b/main.cpp
index a47f3a97b4..298e76ecce 100644
--- a/main.cpp
+++ b/main.cpp
@@ -287,7 +287,7 @@ void EraseOrphanTx(uint256 hash)
//////////////////////////////////////////////////////////////////////////////
//
-// CTransaction
+// CTransaction and CTxIndex
//
bool CTransaction::ReadFromDisk(CTxDB& txdb, COutPoint prevout, CTxIndex& txindexRet)
@@ -678,7 +678,11 @@ bool CTransaction::AcceptToMemoryPool(CTxDB& txdb, bool fCheckInputs, bool* pfMi
// Safety limits
unsigned int nSize = ::GetSerializeSize(*this, SER_NETWORK);
- if (GetSigOpCount() > 2 || nSize < 100)
+ // Checking ECDSA signatures is a CPU bottleneck, so to avoid denial-of-service
+ // attacks disallow transactions with more than one SigOp per 34 bytes.
+ // 34 bytes because a TxOut is:
+ // 20-byte address + 8 byte bitcoin amount + 5 bytes of ops + 1 byte script length
+ if (GetSigOpCount() > nSize / 34 || nSize < 100)
return error("AcceptToMemoryPool() : nonstandard transaction");
// Rather not work on nonstandard transactions
@@ -738,19 +742,29 @@ bool CTransaction::AcceptToMemoryPool(CTxDB& txdb, bool fCheckInputs, bool* pfMi
if (nFees < GetMinFee(1000))
return error("AcceptToMemoryPool() : not enough fees");
- // Limit free transactions per 10 minutes
- if (nFees < CENT && GetBoolArg("-limitfreerelay"))
+ // Continuously rate-limit free transactions
+ // This mitigates 'penny-flooding' -- sending thousands of free transactions just to
+ // be annoying or make other's transactions take longer to confirm.
+ if (nFees < CENT)
{
- static int64 nNextReset;
- static int64 nFreeCount;
- if (GetTime() > nNextReset)
+ static CCriticalSection cs;
+ static double dFreeCount;
+ static int64 nLastTime;
+ int64 nNow = GetTime();
+
+ CRITICAL_BLOCK(cs)
{
- nNextReset = GetTime() + 10 * 60;
- nFreeCount = 0;
+ // Use an exponentially decaying ~10-minute window:
+ dFreeCount *= pow(1.0 - 1.0/600.0, (double)(nNow - nLastTime));
+ nLastTime = nNow;
+ // -limitfreerelay unit is thousand-bytes-per-minute
+ // At default rate it would take over a month to fill 1GB
+ if (dFreeCount > GetArg("-limitfreerelay", 15)*10*1000 && !IsFromMe())
+ return error("AcceptToMemoryPool() : free transaction rejected by rate limiter");
+ if (fDebug)
+ printf("Rate limit dFreeCount: %g => %g\n", dFreeCount, dFreeCount+nSize);
+ dFreeCount += nSize;
}
- if (nFreeCount > 150000 && !IsFromMe())
- return error("AcceptToMemoryPool() : free transaction rejected by rate limiter");
- nFreeCount += nSize;
}
}
@@ -1034,6 +1048,22 @@ void ResendWalletTransactions()
}
}
+int CTxIndex::GetDepthInMainChain() const
+{
+ // Read block header
+ CBlock block;
+ if (!block.ReadFromDisk(pos.nFile, pos.nBlockPos, false))
+ return 0;
+ // Find the block in the index
+ map<uint256, CBlockIndex*>::iterator mi = mapBlockIndex.find(block.GetHash());
+ if (mi == mapBlockIndex.end())
+ return 0;
+ CBlockIndex* pindex = (*mi).second;
+ if (!pindex || !pindex->IsInMainChain())
+ return 0;
+ return 1 + nBestHeight - pindex->nHeight;
+}
+
@@ -3327,18 +3357,7 @@ CBlock* CreateNewBlock(CReserveKey& reservekey)
int64 nValueIn = txPrev.vout[txin.prevout.n].nValue;
// Read block header
- int nConf = 0;
- CBlock block;
- if (block.ReadFromDisk(txindex.pos.nFile, txindex.pos.nBlockPos, false))
- {
- map<uint256, CBlockIndex*>::iterator it = mapBlockIndex.find(block.GetHash());
- if (it != mapBlockIndex.end())
- {
- CBlockIndex* pindex = (*it).second;
- if (pindex->IsInMainChain())
- nConf = 1 + nBestHeight - pindex->nHeight;
- }
- }
+ int nConf = txindex.GetDepthInMainChain();
dPriority += (double)nValueIn * nConf;
@@ -3383,7 +3402,7 @@ CBlock* CreateNewBlock(CReserveKey& reservekey)
continue;
// Transaction fee required depends on block size
- bool fAllowFree = (nBlockSize + nTxSize < 4000 || dPriority > COIN * 144 / 250);
+ bool fAllowFree = (nBlockSize + nTxSize < 4000 || CTransaction::AllowFree(dPriority));
int64 nMinFee = tx.GetMinFee(nBlockSize, fAllowFree);
// Connecting shouldn't fail due to dependency on other memory pool transactions
@@ -3750,16 +3769,16 @@ bool SelectCoinsMinConf(int64 nTargetValue, int nConfMine, int nConfTheirs, set<
int64 n = pcoin->GetCredit();
if (n <= 0)
continue;
- if (n < nTargetValue)
- {
- vValue.push_back(make_pair(n, pcoin));
- nTotalLower += n;
- }
- else if (n == nTargetValue)
+ if (n == nTargetValue)
{
setCoinsRet.insert(pcoin);
return true;
}
+ else if (n < nTargetValue + CENT)
+ {
+ vValue.push_back(make_pair(n, pcoin));
+ nTotalLower += n;
+ }
else if (n < nLowestLarger)
{
nLowestLarger = n;
@@ -3768,7 +3787,14 @@ bool SelectCoinsMinConf(int64 nTargetValue, int nConfMine, int nConfTheirs, set<
}
}
- if (nTotalLower < nTargetValue)
+ if (nTotalLower == nTargetValue || nTotalLower == nTargetValue + CENT)
+ {
+ for (int i = 0; i < vValue.size(); ++i)
+ setCoinsRet.insert(vValue[i].second);
+ return true;
+ }
+
+ if (nTotalLower < nTargetValue + (pcoinLowestLarger ? CENT : 0))
{
if (pcoinLowestLarger == NULL)
return false;
@@ -3776,6 +3802,9 @@ bool SelectCoinsMinConf(int64 nTargetValue, int nConfMine, int nConfTheirs, set<
return true;
}
+ if (nTotalLower >= nTargetValue + CENT)
+ nTargetValue += CENT;
+
// Solve subset sum by stochastic approximation
sort(vValue.rbegin(), vValue.rend());
vector<char> vfIncluded;
@@ -3841,8 +3870,18 @@ bool SelectCoins(int64 nTargetValue, set<CWalletTx*>& setCoinsRet)
-bool CreateTransaction(CScript scriptPubKey, int64 nValue, CWalletTx& wtxNew, CReserveKey& reservekey, int64& nFeeRet)
+bool CreateTransaction(const vector<pair<CScript, int64> >& vecSend, CWalletTx& wtxNew, CReserveKey& reservekey, int64& nFeeRet)
{
+ int64 nValue = 0;
+ foreach (const PAIRTYPE(CScript, int64)& s, vecSend)
+ {
+ if (nValue < 0)
+ return false;
+ nValue += s.second;
+ }
+ if (vecSend.empty() || nValue < 0)
+ return false;
+
CRITICAL_BLOCK(cs_main)
{
// txdb must be opened before the mapWallet lock
@@ -3855,10 +3894,12 @@ bool CreateTransaction(CScript scriptPubKey, int64 nValue, CWalletTx& wtxNew, CR
wtxNew.vin.clear();
wtxNew.vout.clear();
wtxNew.fFromMe = true;
- if (nValue < 0)
- return false;
- int64 nValueOut = nValue;
+
int64 nTotalValue = nValue + nFeeRet;
+ double dPriority = 0;
+ // vouts to the payees
+ foreach (const PAIRTYPE(CScript, int64)& s, vecSend)
+ wtxNew.vout.push_back(CTxOut(s.second, s.first));
// Choose coins to use
set<CWalletTx*> setCoins;
@@ -3866,12 +3907,11 @@ bool CreateTransaction(CScript scriptPubKey, int64 nValue, CWalletTx& wtxNew, CR
return false;
int64 nValueIn = 0;
foreach(CWalletTx* pcoin, setCoins)
- nValueIn += pcoin->GetCredit();
-
- // Fill a vout to the payee
- bool fChangeFirst = GetRand(2);
- if (!fChangeFirst)
- wtxNew.vout.push_back(CTxOut(nValueOut, scriptPubKey));
+ {
+ int64 nCredit = pcoin->GetCredit();
+ nValueIn += nCredit;
+ dPriority += (double)nCredit * pcoin->GetDepthInMainChain();
+ }
// Fill a vout back to self with any change
int64 nChange = nValueIn - nTotalValue;
@@ -3890,19 +3930,18 @@ bool CreateTransaction(CScript scriptPubKey, int64 nValue, CWalletTx& wtxNew, CR
// Fill a vout to ourself, using same address type as the payment
CScript scriptChange;
- if (scriptPubKey.GetBitcoinAddressHash160() != 0)
+ if (vecSend[0].first.GetBitcoinAddressHash160() != 0)
scriptChange.SetBitcoinAddress(vchPubKey);
else
scriptChange << vchPubKey << OP_CHECKSIG;
- wtxNew.vout.push_back(CTxOut(nChange, scriptChange));
+
+ // Insert change txn at random position:
+ vector<CTxOut>::iterator position = wtxNew.vout.begin()+GetRandInt(wtxNew.vout.size());
+ wtxNew.vout.insert(position, CTxOut(nChange, scriptChange));
}
else
reservekey.ReturnKey();
- // Fill a vout to the payee
- if (fChangeFirst)
- wtxNew.vout.push_back(CTxOut(nValueOut, scriptPubKey));
-
// Fill vin
foreach(CWalletTx* pcoin, setCoins)
for (int nOut = 0; nOut < pcoin->vout.size(); nOut++)
@@ -3921,10 +3960,12 @@ bool CreateTransaction(CScript scriptPubKey, int64 nValue, CWalletTx& wtxNew, CR
unsigned int nBytes = ::GetSerializeSize(*(CTransaction*)&wtxNew, SER_NETWORK);
if (nBytes >= MAX_BLOCK_SIZE_GEN/5)
return false;
+ dPriority /= nBytes;
// Check that enough fee is included
int64 nPayFee = nTransactionFee * (1 + (int64)nBytes / 1000);
- int64 nMinFee = wtxNew.GetMinFee();
+ bool fAllowFree = CTransaction::AllowFree(dPriority);
+ int64 nMinFee = wtxNew.GetMinFee(1, fAllowFree);
if (nFeeRet < max(nPayFee, nMinFee))
{
nFeeRet = max(nPayFee, nMinFee);
@@ -3942,6 +3983,13 @@ bool CreateTransaction(CScript scriptPubKey, int64 nValue, CWalletTx& wtxNew, CR
return true;
}
+bool CreateTransaction(CScript scriptPubKey, int64 nValue, CWalletTx& wtxNew, CReserveKey& reservekey, int64& nFeeRet)
+{
+ vector< pair<CScript, int64> > vecSend;
+ vecSend.push_back(make_pair(scriptPubKey, nValue));
+ return CreateTransaction(vecSend, wtxNew, reservekey, nFeeRet);
+}
+
// Call after CreateTransaction unless you want to abort
bool CommitTransaction(CWalletTx& wtxNew, CReserveKey& reservekey)
{
diff --git a/main.h b/main.h
index a7ef336e00..e9d0c00310 100644
--- a/main.h
+++ b/main.h
@@ -77,6 +77,7 @@ bool ProcessMessages(CNode* pfrom);
bool ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv);
bool SendMessages(CNode* pto, bool fSendTrickle);
int64 GetBalance();
+bool CreateTransaction(const vector<pair<CScript, int64> >& vecSend, CWalletTx& wtxNew, CReserveKey& reservekey, int64& nFeeRet);
bool CreateTransaction(CScript scriptPubKey, int64 nValue, CWalletTx& wtxNew, CReserveKey& reservekey, int64& nFeeRet);
bool CommitTransaction(CWalletTx& wtxNew, CReserveKey& reservekey);
bool BroadcastTransaction(CWalletTx& wtxNew);
@@ -574,6 +575,13 @@ public:
return nValueOut;
}
+ static bool AllowFree(double dPriority)
+ {
+ // Large (in bytes) low-priority (new, small-coin) transactions
+ // need a fee.
+ return dPriority > COIN * 144 / 250;
+ }
+
int64 GetMinFee(unsigned int nBlockSize=1, bool fAllowFree=true) const
{
// Base fee is 1 cent per kilobyte
@@ -998,6 +1006,7 @@ public:
{
return !(a == b);
}
+ int GetDepthInMainChain() const;
};
diff --git a/rpc.cpp b/rpc.cpp
index 1c6f228e5b..97710ff6b8 100644
--- a/rpc.cpp
+++ b/rpc.cpp
@@ -381,6 +381,12 @@ Value setaccount(const Array& params, bool fHelp)
"Sets the account associated with the given address.");
string strAddress = params[0].get_str();
+ uint160 hash160;
+ bool isValid = AddressToHash160(strAddress, hash160);
+ if (!isValid)
+ throw JSONRPCError(-5, "Invalid bitcoin address");
+
+
string strAccount;
if (params.size() > 1)
strAccount = AccountFromValue(params[1]);
@@ -762,6 +768,69 @@ Value sendfrom(const Array& params, bool fHelp)
return wtx.GetHash().GetHex();
}
+Value sendmany(const Array& params, bool fHelp)
+{
+ if (fHelp || params.size() < 2 || params.size() > 4)
+ throw runtime_error(
+ "sendmany <fromaccount> {address:amount,...} [minconf=1] [comment]\n"
+ "amounts are double-precision floating point numbers");
+
+ string strAccount = AccountFromValue(params[0]);
+ Object sendTo = params[1].get_obj();
+ int nMinDepth = 1;
+ if (params.size() > 2)
+ nMinDepth = params[2].get_int();
+
+ CWalletTx wtx;
+ wtx.strFromAccount = strAccount;
+ if (params.size() > 3 && params[3].type() != null_type && !params[3].get_str().empty())
+ wtx.mapValue["comment"] = params[3].get_str();
+
+ set<string> setAddress;
+ vector<pair<CScript, int64> > vecSend;
+
+ int64 totalAmount = 0;
+ foreach(const Pair& s, sendTo)
+ {
+ uint160 hash160;
+ string strAddress = s.name_;
+
+ if (setAddress.count(strAddress))
+ throw JSONRPCError(-8, string("Invalid parameter, duplicated address: ")+strAddress);
+ setAddress.insert(strAddress);
+
+ CScript scriptPubKey;
+ if (!scriptPubKey.SetBitcoinAddress(strAddress))
+ throw JSONRPCError(-5, string("Invalid bitcoin address:")+strAddress);
+ int64 nAmount = AmountFromValue(s.value_);
+ totalAmount += nAmount;
+
+ vecSend.push_back(make_pair(scriptPubKey, nAmount));
+ }
+
+ CRITICAL_BLOCK(cs_mapWallet)
+ {
+ // Check funds
+ int64 nBalance = GetAccountBalance(strAccount, nMinDepth);
+ if (totalAmount > nBalance)
+ throw JSONRPCError(-6, "Account has insufficient funds");
+
+ // Send
+ CReserveKey keyChange;
+ int64 nFeeRequired = 0;
+ bool fCreated = CreateTransaction(vecSend, wtx, keyChange, nFeeRequired);
+ if (!fCreated)
+ {
+ if (totalAmount + nFeeRequired > GetBalance())
+ throw JSONRPCError(-6, "Insufficient funds");
+ throw JSONRPCError(-4, "Transaction creation failed");
+ }
+ if (!CommitTransaction(wtx, keyChange))
+ throw JSONRPCError(-4, "Transaction commit failed");
+ }
+
+ return wtx.GetHash().GetHex();
+}
struct tallyitem
@@ -1338,6 +1407,7 @@ pair<string, rpcfn_type> pCallTable[] =
make_pair("getbalance", &getbalance),
make_pair("move", &movecmd),
make_pair("sendfrom", &sendfrom),
+ make_pair("sendmany", &sendmany),
make_pair("gettransaction", &gettransaction),
make_pair("listtransactions", &listtransactions),
make_pair("getwork", &getwork),
@@ -1989,6 +2059,15 @@ int CommandLineRPC(int argc, char *argv[])
if (strMethod == "sendfrom" && n > 3) ConvertTo<boost::int64_t>(params[3]);
if (strMethod == "listtransactions" && n > 1) ConvertTo<boost::int64_t>(params[1]);
if (strMethod == "listaccounts" && n > 0) ConvertTo<boost::int64_t>(params[0]);
+ if (strMethod == "sendmany" && n > 1)
+ {
+ string s = params[1].get_str();
+ Value v;
+ if (!read_string(s, v) || v.type() != obj_type)
+ throw runtime_error("type mismatch");
+ params[1] = v.get_obj();
+ }
+ if (strMethod == "sendmany" && n > 2) ConvertTo<boost::int64_t>(params[2]);
// Execute
Object reply = CallRPC(strMethod, params);
diff --git a/serialize.h b/serialize.h
index 6bf6fbfaab..383c987864 100644
--- a/serialize.h
+++ b/serialize.h
@@ -25,7 +25,7 @@ class CDataStream;
class CAutoFile;
static const unsigned int MAX_SIZE = 0x02000000;
-static const int VERSION = 32002;
+static const int VERSION = 32100;
static const char* pszSubVer = "";
static const bool VERSION_IS_BETA = true;
diff --git a/uibase.cpp b/uibase.cpp
index 5c7ada4b18..71c84f755a 100644
--- a/uibase.cpp
+++ b/uibase.cpp
@@ -1,5 +1,5 @@
///////////////////////////////////////////////////////////////////////////
-// C++ code generated with wxFormBuilder (version Apr 16 2008)
+// C++ code generated with wxFormBuilder (version Dec 21 2009)
// http://www.wxformbuilder.org/
//
// PLEASE DO "NOT" EDIT THIS FILE!
@@ -61,7 +61,6 @@ CMainFrameBase::CMainFrameBase( wxWindow* parent, wxWindowID id, const wxString&
m_toolBar->Realize();
m_statusBar = this->CreateStatusBar( 1, wxST_SIZEGRIP, wxID_ANY );
-
wxBoxSizer* bSizer2;
bSizer2 = new wxBoxSizer( wxVERTICAL );
@@ -355,7 +354,6 @@ COptionsDialogBase::COptionsDialogBase( wxWindow* parent, wxWindowID id, const w
bSizer71 = new wxBoxSizer( wxHORIZONTAL );
m_checkBoxLimitProcessors = new wxCheckBox( m_panelMain, wxID_ANY, _("&Limit coin generation to"), wxDefaultPosition, wxDefaultSize, 0 );
-
bSizer71->Add( m_checkBoxLimitProcessors, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
m_spinCtrlLimitProcessors = new wxSpinCtrl( m_panelMain, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( 48,-1 ), wxSP_ARROW_KEYS, 1, 999, 1 );
@@ -368,22 +366,18 @@ COptionsDialogBase::COptionsDialogBase( wxWindow* parent, wxWindowID id, const w
bSizer69->Add( bSizer71, 0, 0, 5 );
m_checkBoxStartOnSystemStartup = new wxCheckBox( m_panelMain, wxID_ANY, _("&Start Bitcoin on system startup"), wxDefaultPosition, wxDefaultSize, 0 );
-
bSizer69->Add( m_checkBoxStartOnSystemStartup, 0, wxALL, 5 );
m_checkBoxMinimizeToTray = new wxCheckBox( m_panelMain, wxID_ANY, _("&Minimize to the tray instead of the taskbar"), wxDefaultPosition, wxDefaultSize, 0 );
-
bSizer69->Add( m_checkBoxMinimizeToTray, 0, wxALL, 5 );
m_checkBoxMinimizeOnClose = new wxCheckBox( m_panelMain, wxID_ANY, _("M&inimize to the tray on close"), wxDefaultPosition, wxDefaultSize, 0 );
-
bSizer69->Add( m_checkBoxMinimizeOnClose, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
wxBoxSizer* bSizer102;
bSizer102 = new wxBoxSizer( wxHORIZONTAL );
m_checkBoxUseProxy = new wxCheckBox( m_panelMain, wxID_ANY, _("&Connect through socks4 proxy: "), wxDefaultPosition, wxDefaultSize, 0 );
-
bSizer102->Add( m_checkBoxUseProxy, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
bSizer69->Add( bSizer102, 1, wxEXPAND, 5 );
@@ -677,6 +671,11 @@ CSendDialogBase::CSendDialogBase( wxWindow* parent, wxWindowID id, const wxStrin
bSizer21->Add( fgSizer1, 0, wxEXPAND|wxLEFT, 5 );
+ wxBoxSizer* bSizer672;
+ bSizer672 = new wxBoxSizer( wxHORIZONTAL );
+
+ bSizer21->Add( bSizer672, 0, wxEXPAND, 5 );
+
wxBoxSizer* bSizer23;
bSizer23 = new wxBoxSizer( wxHORIZONTAL );
@@ -698,6 +697,7 @@ CSendDialogBase::CSendDialogBase( wxWindow* parent, wxWindowID id, const wxStrin
// Connect Events
m_textCtrlAddress->Connect( wxEVT_KEY_DOWN, wxKeyEventHandler( CSendDialogBase::OnKeyDown ), NULL, this );
+ m_textCtrlAddress->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( CSendDialogBase::OnTextAddress ), NULL, this );
m_buttonPaste->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( CSendDialogBase::OnButtonPaste ), NULL, this );
m_buttonAddress->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( CSendDialogBase::OnButtonAddressBook ), NULL, this );
m_textCtrlAmount->Connect( wxEVT_KEY_DOWN, wxKeyEventHandler( CSendDialogBase::OnKeyDown ), NULL, this );
@@ -710,6 +710,7 @@ CSendDialogBase::~CSendDialogBase()
{
// Disconnect Events
m_textCtrlAddress->Disconnect( wxEVT_KEY_DOWN, wxKeyEventHandler( CSendDialogBase::OnKeyDown ), NULL, this );
+ m_textCtrlAddress->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( CSendDialogBase::OnTextAddress ), NULL, this );
m_buttonPaste->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( CSendDialogBase::OnButtonPaste ), NULL, this );
m_buttonAddress->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( CSendDialogBase::OnButtonAddressBook ), NULL, this );
m_textCtrlAmount->Disconnect( wxEVT_KEY_DOWN, wxKeyEventHandler( CSendDialogBase::OnKeyDown ), NULL, this );
diff --git a/uibase.h b/uibase.h
index 25af62a32b..eff5bd6bf4 100644
--- a/uibase.h
+++ b/uibase.h
@@ -1,5 +1,5 @@
///////////////////////////////////////////////////////////////////////////
-// C++ code generated with wxFormBuilder (version Apr 16 2008)
+// C++ code generated with wxFormBuilder (version Dec 21 2009)
// http://www.wxformbuilder.org/
//
// PLEASE DO "NOT" EDIT THIS FILE!
@@ -93,28 +93,28 @@ class CMainFrameBase : public wxFrame
wxPanel* m_panel93;
// Virtual event handlers, overide them in your derived class
- virtual void OnClose( wxCloseEvent& event ){ event.Skip(); }
- virtual void OnIconize( wxIconizeEvent& event ){ event.Skip(); }
- virtual void OnIdle( wxIdleEvent& event ){ event.Skip(); }
- virtual void OnMouseEvents( wxMouseEvent& event ){ event.Skip(); }
- virtual void OnPaint( wxPaintEvent& event ){ event.Skip(); }
- virtual void OnMenuFileExit( wxCommandEvent& event ){ event.Skip(); }
- virtual void OnMenuOptionsGenerate( wxCommandEvent& event ){ event.Skip(); }
- virtual void OnUpdateUIOptionsGenerate( wxUpdateUIEvent& event ){ event.Skip(); }
- virtual void OnMenuOptionsChangeYourAddress( wxCommandEvent& event ){ event.Skip(); }
- virtual void OnMenuOptionsOptions( wxCommandEvent& event ){ event.Skip(); }
- virtual void OnMenuHelpAbout( wxCommandEvent& event ){ event.Skip(); }
- virtual void OnButtonSend( wxCommandEvent& event ){ event.Skip(); }
- virtual void OnButtonAddressBook( wxCommandEvent& event ){ event.Skip(); }
- virtual void OnKeyDown( wxKeyEvent& event ){ event.Skip(); }
- virtual void OnMouseEventsAddress( wxMouseEvent& event ){ event.Skip(); }
- virtual void OnSetFocusAddress( wxFocusEvent& event ){ event.Skip(); }
- virtual void OnButtonNew( wxCommandEvent& event ){ event.Skip(); }
- virtual void OnButtonCopy( wxCommandEvent& event ){ event.Skip(); }
- virtual void OnNotebookPageChanged( wxNotebookEvent& event ){ event.Skip(); }
- virtual void OnListColBeginDrag( wxListEvent& event ){ event.Skip(); }
- virtual void OnListItemActivated( wxListEvent& event ){ event.Skip(); }
- virtual void OnPaintListCtrl( wxPaintEvent& event ){ event.Skip(); }
+ virtual void OnClose( wxCloseEvent& event ) { event.Skip(); }
+ virtual void OnIconize( wxIconizeEvent& event ) { event.Skip(); }
+ virtual void OnIdle( wxIdleEvent& event ) { event.Skip(); }
+ virtual void OnMouseEvents( wxMouseEvent& event ) { event.Skip(); }
+ virtual void OnPaint( wxPaintEvent& event ) { event.Skip(); }
+ virtual void OnMenuFileExit( wxCommandEvent& event ) { event.Skip(); }
+ virtual void OnMenuOptionsGenerate( wxCommandEvent& event ) { event.Skip(); }
+ virtual void OnUpdateUIOptionsGenerate( wxUpdateUIEvent& event ) { event.Skip(); }
+ virtual void OnMenuOptionsChangeYourAddress( wxCommandEvent& event ) { event.Skip(); }
+ virtual void OnMenuOptionsOptions( wxCommandEvent& event ) { event.Skip(); }
+ virtual void OnMenuHelpAbout( wxCommandEvent& event ) { event.Skip(); }
+ virtual void OnButtonSend( wxCommandEvent& event ) { event.Skip(); }
+ virtual void OnButtonAddressBook( wxCommandEvent& event ) { event.Skip(); }
+ virtual void OnKeyDown( wxKeyEvent& event ) { event.Skip(); }
+ virtual void OnMouseEventsAddress( wxMouseEvent& event ) { event.Skip(); }
+ virtual void OnSetFocusAddress( wxFocusEvent& event ) { event.Skip(); }
+ virtual void OnButtonNew( wxCommandEvent& event ) { event.Skip(); }
+ virtual void OnButtonCopy( wxCommandEvent& event ) { event.Skip(); }
+ virtual void OnNotebookPageChanged( wxNotebookEvent& event ) { event.Skip(); }
+ virtual void OnListColBeginDrag( wxListEvent& event ) { event.Skip(); }
+ virtual void OnListItemActivated( wxListEvent& event ) { event.Skip(); }
+ virtual void OnPaintListCtrl( wxPaintEvent& event ) { event.Skip(); }
public:
@@ -125,6 +125,7 @@ class CMainFrameBase : public wxFrame
wxListCtrl* m_listCtrlSentReceived;
wxListCtrl* m_listCtrlSent;
wxListCtrl* m_listCtrlReceived;
+
CMainFrameBase( wxWindow* parent, wxWindowID id = wxID_MAINFRAME, const wxString& title = _("Bitcoin"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 723,484 ), long style = wxDEFAULT_FRAME_STYLE|wxRESIZE_BORDER|wxTAB_TRAVERSAL );
~CMainFrameBase();
@@ -142,10 +143,11 @@ class CTxDetailsDialogBase : public wxDialog
wxButton* m_buttonOK;
// Virtual event handlers, overide them in your derived class
- virtual void OnButtonOK( wxCommandEvent& event ){ event.Skip(); }
+ virtual void OnButtonOK( wxCommandEvent& event ) { event.Skip(); }
public:
+
CTxDetailsDialogBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Transaction Details"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 620,450 ), long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER );
~CTxDetailsDialogBase();
@@ -188,18 +190,19 @@ class COptionsDialogBase : public wxDialog
wxButton* m_buttonApply;
// Virtual event handlers, overide them in your derived class
- virtual void OnListBox( wxCommandEvent& event ){ event.Skip(); }
- virtual void OnCheckBoxLimitProcessors( wxCommandEvent& event ){ event.Skip(); }
- virtual void OnCheckBoxMinimizeToTray( wxCommandEvent& event ){ event.Skip(); }
- virtual void OnCheckBoxUseProxy( wxCommandEvent& event ){ event.Skip(); }
- virtual void OnKillFocusProxy( wxFocusEvent& event ){ event.Skip(); }
- virtual void OnKillFocusTransactionFee( wxFocusEvent& event ){ event.Skip(); }
- virtual void OnButtonOK( wxCommandEvent& event ){ event.Skip(); }
- virtual void OnButtonCancel( wxCommandEvent& event ){ event.Skip(); }
- virtual void OnButtonApply( wxCommandEvent& event ){ event.Skip(); }
+ virtual void OnListBox( wxCommandEvent& event ) { event.Skip(); }
+ virtual void OnCheckBoxLimitProcessors( wxCommandEvent& event ) { event.Skip(); }
+ virtual void OnCheckBoxMinimizeToTray( wxCommandEvent& event ) { event.Skip(); }
+ virtual void OnCheckBoxUseProxy( wxCommandEvent& event ) { event.Skip(); }
+ virtual void OnKillFocusProxy( wxFocusEvent& event ) { event.Skip(); }
+ virtual void OnKillFocusTransactionFee( wxFocusEvent& event ) { event.Skip(); }
+ virtual void OnButtonOK( wxCommandEvent& event ) { event.Skip(); }
+ virtual void OnButtonCancel( wxCommandEvent& event ) { event.Skip(); }
+ virtual void OnButtonApply( wxCommandEvent& event ) { event.Skip(); }
public:
+
COptionsDialogBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Options"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 540,360 ), long style = wxDEFAULT_DIALOG_STYLE );
~COptionsDialogBase();
@@ -223,11 +226,12 @@ class CAboutDialogBase : public wxDialog
wxButton* m_buttonOK;
// Virtual event handlers, overide them in your derived class
- virtual void OnButtonOK( wxCommandEvent& event ){ event.Skip(); }
+ virtual void OnButtonOK( wxCommandEvent& event ) { event.Skip(); }
public:
wxStaticText* m_staticTextVersion;
+
CAboutDialogBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("About Bitcoin"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 532,333 ), long style = wxDEFAULT_DIALOG_STYLE );
~CAboutDialogBase();
@@ -256,26 +260,23 @@ class CSendDialogBase : public wxDialog
wxChoice* m_choiceTransferType;
- wxStaticText* m_staticTextFrom;
- wxTextCtrl* m_textCtrlFrom;
- wxStaticText* m_staticTextMessage;
- wxTextCtrl* m_textCtrlMessage;
wxButton* m_buttonSend;
wxButton* m_buttonCancel;
// Virtual event handlers, overide them in your derived class
- virtual void OnKeyDown( wxKeyEvent& event ){ event.Skip(); }
- virtual void OnTextAddress( wxCommandEvent& event ){ event.Skip(); }
- virtual void OnButtonPaste( wxCommandEvent& event ){ event.Skip(); }
- virtual void OnButtonAddressBook( wxCommandEvent& event ){ event.Skip(); }
- virtual void OnKillFocusAmount( wxFocusEvent& event ){ event.Skip(); }
- virtual void OnButtonSend( wxCommandEvent& event ){ event.Skip(); }
- virtual void OnButtonCancel( wxCommandEvent& event ){ event.Skip(); }
+ virtual void OnKeyDown( wxKeyEvent& event ) { event.Skip(); }
+ virtual void OnTextAddress( wxCommandEvent& event ) { event.Skip(); }
+ virtual void OnButtonPaste( wxCommandEvent& event ) { event.Skip(); }
+ virtual void OnButtonAddressBook( wxCommandEvent& event ) { event.Skip(); }
+ virtual void OnKillFocusAmount( wxFocusEvent& event ) { event.Skip(); }
+ virtual void OnButtonSend( wxCommandEvent& event ) { event.Skip(); }
+ virtual void OnButtonCancel( wxCommandEvent& event ) { event.Skip(); }
public:
- CSendDialogBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Send Coins"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 675,298 ), long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER );
+
+ CSendDialogBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Send Coins"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 498,157 ), long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER );
~CSendDialogBase();
};
@@ -295,13 +296,14 @@ class CSendingDialogBase : public wxDialog
wxButton* m_buttonCancel;
// Virtual event handlers, overide them in your derived class
- virtual void OnClose( wxCloseEvent& event ){ event.Skip(); }
- virtual void OnPaint( wxPaintEvent& event ){ event.Skip(); }
- virtual void OnButtonOK( wxCommandEvent& event ){ event.Skip(); }
- virtual void OnButtonCancel( wxCommandEvent& event ){ event.Skip(); }
+ virtual void OnClose( wxCloseEvent& event ) { event.Skip(); }
+ virtual void OnPaint( wxPaintEvent& event ) { event.Skip(); }
+ virtual void OnButtonOK( wxCommandEvent& event ) { event.Skip(); }
+ virtual void OnButtonCancel( wxCommandEvent& event ) { event.Skip(); }
public:
+
CSendingDialogBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Sending..."), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 442,151 ), long style = wxDEFAULT_DIALOG_STYLE );
~CSendingDialogBase();
@@ -326,18 +328,19 @@ class CYourAddressDialogBase : public wxDialog
wxButton* m_buttonCancel;
// Virtual event handlers, overide them in your derived class
- virtual void OnClose( wxCloseEvent& event ){ event.Skip(); }
- virtual void OnListEndLabelEdit( wxListEvent& event ){ event.Skip(); }
- virtual void OnListItemActivated( wxListEvent& event ){ event.Skip(); }
- virtual void OnListItemSelected( wxListEvent& event ){ event.Skip(); }
- virtual void OnButtonRename( wxCommandEvent& event ){ event.Skip(); }
- virtual void OnButtonNew( wxCommandEvent& event ){ event.Skip(); }
- virtual void OnButtonCopy( wxCommandEvent& event ){ event.Skip(); }
- virtual void OnButtonOK( wxCommandEvent& event ){ event.Skip(); }
- virtual void OnButtonCancel( wxCommandEvent& event ){ event.Skip(); }
+ virtual void OnClose( wxCloseEvent& event ) { event.Skip(); }
+ virtual void OnListEndLabelEdit( wxListEvent& event ) { event.Skip(); }
+ virtual void OnListItemActivated( wxListEvent& event ) { event.Skip(); }
+ virtual void OnListItemSelected( wxListEvent& event ) { event.Skip(); }
+ virtual void OnButtonRename( wxCommandEvent& event ) { event.Skip(); }
+ virtual void OnButtonNew( wxCommandEvent& event ) { event.Skip(); }
+ virtual void OnButtonCopy( wxCommandEvent& event ) { event.Skip(); }
+ virtual void OnButtonOK( wxCommandEvent& event ) { event.Skip(); }
+ virtual void OnButtonCancel( wxCommandEvent& event ) { event.Skip(); }
public:
+
CYourAddressDialogBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Your Bitcoin Addresses"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 610,390 ), long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER );
~CYourAddressDialogBase();
@@ -369,21 +372,22 @@ class CAddressBookDialogBase : public wxDialog
wxButton* m_buttonOK;
// Virtual event handlers, overide them in your derived class
- virtual void OnClose( wxCloseEvent& event ){ event.Skip(); }
- virtual void OnNotebookPageChanged( wxNotebookEvent& event ){ event.Skip(); }
- virtual void OnListEndLabelEdit( wxListEvent& event ){ event.Skip(); }
- virtual void OnListItemActivated( wxListEvent& event ){ event.Skip(); }
- virtual void OnListItemSelected( wxListEvent& event ){ event.Skip(); }
- virtual void OnButtonDelete( wxCommandEvent& event ){ event.Skip(); }
- virtual void OnButtonCopy( wxCommandEvent& event ){ event.Skip(); }
- virtual void OnButtonEdit( wxCommandEvent& event ){ event.Skip(); }
- virtual void OnButtonNew( wxCommandEvent& event ){ event.Skip(); }
- virtual void OnButtonOK( wxCommandEvent& event ){ event.Skip(); }
- virtual void OnButtonCancel( wxCommandEvent& event ){ event.Skip(); }
+ virtual void OnClose( wxCloseEvent& event ) { event.Skip(); }
+ virtual void OnNotebookPageChanged( wxNotebookEvent& event ) { event.Skip(); }
+ virtual void OnListEndLabelEdit( wxListEvent& event ) { event.Skip(); }
+ virtual void OnListItemActivated( wxListEvent& event ) { event.Skip(); }
+ virtual void OnListItemSelected( wxListEvent& event ) { event.Skip(); }
+ virtual void OnButtonDelete( wxCommandEvent& event ) { event.Skip(); }
+ virtual void OnButtonCopy( wxCommandEvent& event ) { event.Skip(); }
+ virtual void OnButtonEdit( wxCommandEvent& event ) { event.Skip(); }
+ virtual void OnButtonNew( wxCommandEvent& event ) { event.Skip(); }
+ virtual void OnButtonOK( wxCommandEvent& event ) { event.Skip(); }
+ virtual void OnButtonCancel( wxCommandEvent& event ) { event.Skip(); }
public:
wxButton* m_buttonCancel;
+
CAddressBookDialogBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Address Book"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 610,390 ), long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER );
~CAddressBookDialogBase();
@@ -408,13 +412,14 @@ class CGetTextFromUserDialogBase : public wxDialog
wxButton* m_buttonCancel;
// Virtual event handlers, overide them in your derived class
- virtual void OnClose( wxCloseEvent& event ){ event.Skip(); }
- virtual void OnKeyDown( wxKeyEvent& event ){ event.Skip(); }
- virtual void OnButtonOK( wxCommandEvent& event ){ event.Skip(); }
- virtual void OnButtonCancel( wxCommandEvent& event ){ event.Skip(); }
+ virtual void OnClose( wxCloseEvent& event ) { event.Skip(); }
+ virtual void OnKeyDown( wxKeyEvent& event ) { event.Skip(); }
+ virtual void OnButtonOK( wxCommandEvent& event ) { event.Skip(); }
+ virtual void OnButtonCancel( wxCommandEvent& event ) { event.Skip(); }
public:
+
CGetTextFromUserDialogBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = wxEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( 440,138 ), long style = wxDEFAULT_DIALOG_STYLE );
~CGetTextFromUserDialogBase();
diff --git a/uiproject.fbp b/uiproject.fbp
index bf01732ea8..ae712e81f1 100644
--- a/uiproject.fbp
+++ b/uiproject.fbp
@@ -7,6 +7,7 @@
<property name="disconnect_events">1</property>
<property name="encoding">UTF-8</property>
<property name="event_generation">connect</property>
+ <property name="event_handler">impl_virtual</property>
<property name="file">uibase</property>
<property name="first_id">1000</property>
<property name="help_provider">none</property>
@@ -37,6 +38,10 @@
<property name="subclass"></property>
<property name="title">Bitcoin</property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style">wxTAB_TRAVERSAL</property>
@@ -88,6 +93,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -226,6 +235,10 @@
<property name="style">wxTB_FLAT|wxTB_HORZ_TEXT</property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -299,6 +312,10 @@
<property name="style">wxST_SIZEGRIP</property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -372,6 +389,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -423,6 +444,10 @@
<property name="style">wxTE_READONLY</property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="value"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
@@ -479,6 +504,10 @@
<property name="style">wxBU_EXACTFIT</property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -531,6 +560,10 @@
<property name="style">wxBU_EXACTFIT</property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -612,6 +645,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -663,6 +700,10 @@
<property name="style">wxALIGN_RIGHT|wxST_NO_AUTORESIZE</property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -726,6 +767,10 @@
<property name="size">110,-1</property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -779,6 +824,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -827,6 +876,10 @@
<property name="size"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style">wxTAB_TRAVERSAL</property>
@@ -879,6 +932,10 @@
<property name="style">wxLC_NO_SORT_HEADER|wxLC_REPORT|wxLC_SORT_DESCENDING</property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -950,6 +1007,10 @@
<property name="size"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style">wxTAB_TRAVERSAL</property>
@@ -1002,6 +1063,10 @@
<property name="style">wxLC_NO_SORT_HEADER|wxLC_REPORT|wxLC_SORT_DESCENDING</property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -1073,6 +1138,10 @@
<property name="size"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style">wxTAB_TRAVERSAL</property>
@@ -1125,6 +1194,10 @@
<property name="style">wxLC_NO_SORT_HEADER|wxLC_REPORT|wxLC_SORT_DESCENDING</property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -1196,6 +1269,10 @@
<property name="size"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style">wxTAB_TRAVERSAL</property>
@@ -1248,6 +1325,10 @@
<property name="style">wxLC_NO_SORT_HEADER|wxLC_REPORT|wxLC_SORT_DESCENDING</property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -1322,6 +1403,10 @@
<property name="subclass"></property>
<property name="title">Transaction Details</property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -1390,6 +1475,10 @@
<property name="style">wxHW_SCROLLBAR_AUTO</property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -1455,6 +1544,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -1507,6 +1600,10 @@
<property name="subclass"></property>
<property name="title">Options</property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -1576,6 +1673,10 @@
<property name="style">wxLB_NEEDED_SB|wxLB_SINGLE</property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -1628,6 +1729,10 @@
<property name="size"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -1679,6 +1784,10 @@
<property name="size"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style">wxTAB_TRAVERSAL</property>
@@ -1752,6 +1861,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -1805,6 +1918,10 @@
<property name="style">wxSP_ARROW_KEYS</property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="value"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
@@ -1858,6 +1975,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -1912,6 +2033,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -1964,6 +2089,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -2016,6 +2145,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -2077,6 +2210,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -2149,6 +2286,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -2200,6 +2341,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="value"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
@@ -2255,6 +2400,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -2306,6 +2455,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="value"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
@@ -2373,6 +2526,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -2433,6 +2590,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -2484,6 +2645,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="value"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
@@ -2542,6 +2707,10 @@
<property name="size"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style">wxTAB_TRAVERSAL</property>
@@ -2605,6 +2774,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -2656,6 +2829,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -2725,6 +2902,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -2777,6 +2958,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -2829,6 +3014,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -2881,6 +3070,10 @@
<property name="subclass"></property>
<property name="title">About Bitcoin</property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -2940,6 +3133,10 @@
<property name="size"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -3036,6 +3233,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -3087,6 +3288,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -3150,6 +3355,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -3235,6 +3444,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -3270,7 +3483,7 @@
</object>
</object>
</object>
- <object class="Dialog" expanded="0">
+ <object class="Dialog" expanded="1">
<property name="bg"></property>
<property name="center"></property>
<property name="context_help"></property>
@@ -3284,11 +3497,15 @@
<property name="minimum_size"></property>
<property name="name">CSendDialogBase</property>
<property name="pos"></property>
- <property name="size">675,298</property>
+ <property name="size">498,157</property>
<property name="style">wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER</property>
<property name="subclass"></property>
<property name="title">Send Coins</property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -3375,7 +3592,7 @@
<property name="font"></property>
<property name="hidden">0</property>
<property name="id">wxID_ANY</property>
- <property name="label">Enter a Bitcoin address (e.g. 1NS17iag9jJgTHD1VXjvLCEnZuQ3rJED9L) or IP address (e.g. 123.45.6.7)</property>
+ <property name="label">Enter a Bitcoin address (e.g. 1NS17iag9jJgTHD1VXjvLCEnZuQ3rJDE9L)</property>
<property name="maximum_size"></property>
<property name="minimum_size"></property>
<property name="name">m_staticTextInstructions</property>
@@ -3385,6 +3602,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -3454,6 +3675,10 @@
<property name="size">16,16</property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -3504,6 +3729,10 @@
<property name="style">wxALIGN_RIGHT</property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -3566,6 +3795,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="value"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
@@ -3631,6 +3864,10 @@
<property name="style">wxBU_EXACTFIT</property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -3683,6 +3920,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -3738,6 +3979,10 @@
<property name="style">wxALIGN_RIGHT</property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -3789,6 +4034,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="value"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
@@ -3844,6 +4093,10 @@
<property name="style">wxALIGN_RIGHT</property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -3895,6 +4148,10 @@
<property name="size"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -3955,251 +4212,6 @@
<property name="name">bSizer672</property>
<property name="orient">wxHORIZONTAL</property>
<property name="permission">none</property>
- <object class="sizeritem" expanded="1">
- <property name="border">5</property>
- <property name="flag">wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT</property>
- <property name="proportion">1</property>
- <object class="wxBoxSizer" expanded="1">
- <property name="minimum_size"></property>
- <property name="name">bSizer681</property>
- <property name="orient">wxVERTICAL</property>
- <property name="permission">none</property>
- <object class="sizeritem" expanded="1">
- <property name="border">5</property>
- <property name="flag">wxBOTTOM|wxLEFT</property>
- <property name="proportion">0</property>
- <object class="wxStaticText" expanded="1">
- <property name="bg"></property>
- <property name="context_help"></property>
- <property name="enabled">1</property>
- <property name="fg"></property>
- <property name="font"></property>
- <property name="hidden">0</property>
- <property name="id">wxID_ANY</property>
- <property name="label">&amp;From:</property>
- <property name="maximum_size"></property>
- <property name="minimum_size"></property>
- <property name="name">m_staticTextFrom</property>
- <property name="permission">protected</property>
- <property name="pos"></property>
- <property name="size"></property>
- <property name="style"></property>
- <property name="subclass"></property>
- <property name="tooltip"></property>
- <property name="window_extra_style"></property>
- <property name="window_name"></property>
- <property name="window_style"></property>
- <property name="wrap">-1</property>
- <event name="OnChar"></event>
- <event name="OnEnterWindow"></event>
- <event name="OnEraseBackground"></event>
- <event name="OnKeyDown"></event>
- <event name="OnKeyUp"></event>
- <event name="OnKillFocus"></event>
- <event name="OnLeaveWindow"></event>
- <event name="OnLeftDClick"></event>
- <event name="OnLeftDown"></event>
- <event name="OnLeftUp"></event>
- <event name="OnMiddleDClick"></event>
- <event name="OnMiddleDown"></event>
- <event name="OnMiddleUp"></event>
- <event name="OnMotion"></event>
- <event name="OnMouseEvents"></event>
- <event name="OnMouseWheel"></event>
- <event name="OnPaint"></event>
- <event name="OnRightDClick"></event>
- <event name="OnRightDown"></event>
- <event name="OnRightUp"></event>
- <event name="OnSetFocus"></event>
- <event name="OnSize"></event>
- <event name="OnUpdateUI"></event>
- </object>
- </object>
- <object class="sizeritem" expanded="1">
- <property name="border">5</property>
- <property name="flag">wxLEFT|wxEXPAND</property>
- <property name="proportion">0</property>
- <object class="wxTextCtrl" expanded="1">
- <property name="bg"></property>
- <property name="context_help"></property>
- <property name="enabled">1</property>
- <property name="fg"></property>
- <property name="font"></property>
- <property name="hidden">0</property>
- <property name="id">wxID_ANY</property>
- <property name="maximum_size"></property>
- <property name="maxlength">0</property>
- <property name="minimum_size"></property>
- <property name="name">m_textCtrlFrom</property>
- <property name="permission">protected</property>
- <property name="pos"></property>
- <property name="size">-1,-1</property>
- <property name="style"></property>
- <property name="subclass"></property>
- <property name="tooltip"></property>
- <property name="value"></property>
- <property name="window_extra_style"></property>
- <property name="window_name"></property>
- <property name="window_style"></property>
- <event name="OnChar"></event>
- <event name="OnEnterWindow"></event>
- <event name="OnEraseBackground"></event>
- <event name="OnKeyDown">OnKeyDown</event>
- <event name="OnKeyUp"></event>
- <event name="OnKillFocus"></event>
- <event name="OnLeaveWindow"></event>
- <event name="OnLeftDClick"></event>
- <event name="OnLeftDown"></event>
- <event name="OnLeftUp"></event>
- <event name="OnMiddleDClick"></event>
- <event name="OnMiddleDown"></event>
- <event name="OnMiddleUp"></event>
- <event name="OnMotion"></event>
- <event name="OnMouseEvents"></event>
- <event name="OnMouseWheel"></event>
- <event name="OnPaint"></event>
- <event name="OnRightDClick"></event>
- <event name="OnRightDown"></event>
- <event name="OnRightUp"></event>
- <event name="OnSetFocus"></event>
- <event name="OnSize"></event>
- <event name="OnText"></event>
- <event name="OnTextEnter"></event>
- <event name="OnTextMaxLen"></event>
- <event name="OnTextURL"></event>
- <event name="OnUpdateUI"></event>
- </object>
- </object>
- </object>
- </object>
- </object>
- </object>
- <object class="sizeritem" expanded="1">
- <property name="border">5</property>
- <property name="flag">wxEXPAND</property>
- <property name="proportion">1</property>
- <object class="wxBoxSizer" expanded="0">
- <property name="minimum_size"></property>
- <property name="name">bSizer67</property>
- <property name="orient">wxHORIZONTAL</property>
- <property name="permission">none</property>
- <object class="sizeritem" expanded="1">
- <property name="border">5</property>
- <property name="flag">wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT</property>
- <property name="proportion">1</property>
- <object class="wxBoxSizer" expanded="1">
- <property name="minimum_size"></property>
- <property name="name">bSizer68</property>
- <property name="orient">wxVERTICAL</property>
- <property name="permission">none</property>
- <object class="sizeritem" expanded="1">
- <property name="border">5</property>
- <property name="flag">wxTOP|wxBOTTOM|wxLEFT</property>
- <property name="proportion">0</property>
- <object class="wxStaticText" expanded="1">
- <property name="bg"></property>
- <property name="context_help"></property>
- <property name="enabled">1</property>
- <property name="fg"></property>
- <property name="font"></property>
- <property name="hidden">0</property>
- <property name="id">wxID_ANY</property>
- <property name="label">&amp;Message:</property>
- <property name="maximum_size"></property>
- <property name="minimum_size"></property>
- <property name="name">m_staticTextMessage</property>
- <property name="permission">protected</property>
- <property name="pos"></property>
- <property name="size"></property>
- <property name="style"></property>
- <property name="subclass"></property>
- <property name="tooltip"></property>
- <property name="window_extra_style"></property>
- <property name="window_name"></property>
- <property name="window_style"></property>
- <property name="wrap">-1</property>
- <event name="OnChar"></event>
- <event name="OnEnterWindow"></event>
- <event name="OnEraseBackground"></event>
- <event name="OnKeyDown"></event>
- <event name="OnKeyUp"></event>
- <event name="OnKillFocus"></event>
- <event name="OnLeaveWindow"></event>
- <event name="OnLeftDClick"></event>
- <event name="OnLeftDown"></event>
- <event name="OnLeftUp"></event>
- <event name="OnMiddleDClick"></event>
- <event name="OnMiddleDown"></event>
- <event name="OnMiddleUp"></event>
- <event name="OnMotion"></event>
- <event name="OnMouseEvents"></event>
- <event name="OnMouseWheel"></event>
- <event name="OnPaint"></event>
- <event name="OnRightDClick"></event>
- <event name="OnRightDown"></event>
- <event name="OnRightUp"></event>
- <event name="OnSetFocus"></event>
- <event name="OnSize"></event>
- <event name="OnUpdateUI"></event>
- </object>
- </object>
- <object class="sizeritem" expanded="1">
- <property name="border">5</property>
- <property name="flag">wxEXPAND|wxLEFT</property>
- <property name="proportion">1</property>
- <object class="wxTextCtrl" expanded="1">
- <property name="bg"></property>
- <property name="context_help"></property>
- <property name="enabled">1</property>
- <property name="fg"></property>
- <property name="font"></property>
- <property name="hidden">0</property>
- <property name="id">wxID_ANY</property>
- <property name="maximum_size"></property>
- <property name="maxlength">0</property>
- <property name="minimum_size"></property>
- <property name="name">m_textCtrlMessage</property>
- <property name="permission">protected</property>
- <property name="pos"></property>
- <property name="size"></property>
- <property name="style">wxTE_MULTILINE</property>
- <property name="subclass"></property>
- <property name="tooltip"></property>
- <property name="value"></property>
- <property name="window_extra_style"></property>
- <property name="window_name"></property>
- <property name="window_style"></property>
- <event name="OnChar"></event>
- <event name="OnEnterWindow"></event>
- <event name="OnEraseBackground"></event>
- <event name="OnKeyDown">OnKeyDown</event>
- <event name="OnKeyUp"></event>
- <event name="OnKillFocus"></event>
- <event name="OnLeaveWindow"></event>
- <event name="OnLeftDClick"></event>
- <event name="OnLeftDown"></event>
- <event name="OnLeftUp"></event>
- <event name="OnMiddleDClick"></event>
- <event name="OnMiddleDown"></event>
- <event name="OnMiddleUp"></event>
- <event name="OnMotion"></event>
- <event name="OnMouseEvents"></event>
- <event name="OnMouseWheel"></event>
- <event name="OnPaint"></event>
- <event name="OnRightDClick"></event>
- <event name="OnRightDown"></event>
- <event name="OnRightUp"></event>
- <event name="OnSetFocus"></event>
- <event name="OnSize"></event>
- <event name="OnText"></event>
- <event name="OnTextEnter"></event>
- <event name="OnTextMaxLen"></event>
- <event name="OnTextURL"></event>
- <event name="OnUpdateUI"></event>
- </object>
- </object>
- </object>
- </object>
</object>
</object>
<object class="sizeritem" expanded="1">
@@ -4244,6 +4256,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -4296,6 +4312,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -4348,6 +4368,10 @@
<property name="subclass"></property>
<property name="title">Sending...</property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -4408,6 +4432,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -4459,6 +4487,10 @@
<property name="style">wxTE_CENTRE|wxTE_MULTILINE|wxTE_NO_VSCROLL|wxTE_READONLY</property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="value">&#x0A;&#x0A;Connecting...</property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
@@ -4534,6 +4566,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -4586,6 +4622,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -4638,6 +4678,10 @@
<property name="subclass"></property>
<property name="title">Your Bitcoin Addresses</property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -4708,6 +4752,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -4758,6 +4806,10 @@
<property name="style">wxLC_NO_SORT_HEADER|wxLC_REPORT|wxLC_SORT_ASCENDING</property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -4848,6 +4900,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -4900,6 +4956,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -4952,6 +5012,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -5004,6 +5068,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -5056,6 +5124,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -5108,6 +5180,10 @@
<property name="subclass"></property>
<property name="title">Address Book</property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -5168,6 +5244,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -5216,6 +5296,10 @@
<property name="size"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style">wxTAB_TRAVERSAL</property>
@@ -5279,6 +5363,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -5329,6 +5417,10 @@
<property name="style">wxLC_NO_SORT_HEADER|wxLC_REPORT|wxLC_SORT_ASCENDING</property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -5400,6 +5492,10 @@
<property name="size"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style">wxTAB_TRAVERSAL</property>
@@ -5463,6 +5559,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -5523,6 +5623,10 @@
<property name="style">wxLC_NO_SORT_HEADER|wxLC_REPORT|wxLC_SORT_ASCENDING</property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -5618,6 +5722,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -5670,6 +5778,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -5722,6 +5834,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -5774,6 +5890,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -5826,6 +5946,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -5878,6 +6002,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -5930,6 +6058,10 @@
<property name="subclass"></property>
<property name="title"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -6009,6 +6141,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -6060,6 +6196,10 @@
<property name="style">wxTE_PROCESS_ENTER</property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="value"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
@@ -6115,6 +6255,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -6166,6 +6310,10 @@
<property name="style">wxTE_PROCESS_ENTER</property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="value"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
@@ -6253,6 +6401,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
@@ -6305,6 +6457,10 @@
<property name="style"></property>
<property name="subclass"></property>
<property name="tooltip"></property>
+ <property name="validator_data_type"></property>
+ <property name="validator_style">wxFILTER_NONE</property>
+ <property name="validator_type">wxDefaultValidator</property>
+ <property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
diff --git a/util.cpp b/util.cpp
index 8a2f9d525e..26f8e0ac21 100644
--- a/util.cpp
+++ b/util.cpp
@@ -14,6 +14,7 @@ char pszSetDataDir[MAX_PATH] = "";
bool fRequestShutdown = false;
bool fShutdown = false;
bool fDaemon = false;
+bool fServer = false;
bool fCommandLine = false;
string strMiscWarning;
bool fTestNet = false;
@@ -169,8 +170,9 @@ inline int OutputDebugStringF(const char* pszFormat, ...)
}
if (fileout)
{
- //// Debug print useful for profiling
- //fprintf(fileout, " %"PRI64d" ", GetTimeMillis());
+ // Debug print useful for profiling
+ if (GetBoolArg("-logtimestamps"))
+ fprintf(fileout, "%s ", DateTimeStrFormat("%x %H:%M:%S", GetTime()).c_str());
va_list arg_ptr;
va_start(arg_ptr, pszFormat);
ret = vfprintf(fileout, pszFormat, arg_ptr);
diff --git a/util.h b/util.h
index c69bf1ce17..1b780d5520 100644
--- a/util.h
+++ b/util.h
@@ -143,6 +143,7 @@ extern char pszSetDataDir[MAX_PATH];
extern bool fRequestShutdown;
extern bool fShutdown;
extern bool fDaemon;
+extern bool fServer;
extern bool fCommandLine;
extern string strMiscWarning;
extern bool fTestNet;