add russian translation and add unicode compatibility (merges pull request #20)
This commit is contained in:
parent
ae8adeb90a
commit
3f0816e3d9
9 changed files with 990 additions and 153 deletions
9
.gitignore
vendored
9
.gitignore
vendored
|
@ -3,3 +3,12 @@ src/bitcoin
|
||||||
src/bitcoind
|
src/bitcoind
|
||||||
.*.swp
|
.*.swp
|
||||||
*.*~*
|
*.*~*
|
||||||
|
#compilation and Qt preprocessor part
|
||||||
|
*.o
|
||||||
|
ui_*.h
|
||||||
|
*.qm
|
||||||
|
moc_*
|
||||||
|
Makefile
|
||||||
|
bitcoin-qt
|
||||||
|
#resources cpp
|
||||||
|
qrc_*.cpp
|
|
@ -152,4 +152,3 @@ CODECFORTR = UTF-8
|
||||||
# for lrelease/lupdate
|
# for lrelease/lupdate
|
||||||
TRANSLATIONS = src/qt/locale/bitcoin_nl.ts src/qt/locale/bitcoin_de.ts \
|
TRANSLATIONS = src/qt/locale/bitcoin_nl.ts src/qt/locale/bitcoin_de.ts \
|
||||||
src/qt/locale/bitcoin_ru.ts
|
src/qt/locale/bitcoin_ru.ts
|
||||||
|
|
||||||
|
|
|
@ -44,7 +44,7 @@ def parse_po(text):
|
||||||
|
|
||||||
return messages
|
return messages
|
||||||
|
|
||||||
files = ['src/base58.h', 'src/bignum.h', 'src/db.cpp', 'src/db.h', 'src/externui.h', 'src/headers.h', 'src/init.cpp', 'src/init.h', 'src/irc.cpp', 'src/irc.h', 'src/key.h', 'src/main.cpp', 'src/main.h', 'src/net.cpp', 'src/net.h', 'src/noui.h', 'src/rpc.cpp', 'src/rpc.h', 'src/script.cpp', 'src/script.h', 'src/serialize.h', 'src/strlcpy.h', 'src/uint256.h', 'src/util.cpp', 'src/util.h']
|
files = ['src/base58.h', 'src/bignum.h', 'src/db.cpp', 'src/db.h', 'src/headers.h', 'src/init.cpp', 'src/init.h', 'src/irc.cpp', 'src/irc.h', 'src/key.h', 'src/main.cpp', 'src/main.h', 'src/net.cpp', 'src/net.h', 'src/noui.h', 'src/script.cpp', 'src/script.h', 'src/serialize.h', 'src/strlcpy.h', 'src/uint256.h', 'src/util.cpp', 'src/util.h']
|
||||||
|
|
||||||
# xgettext -n --keyword=_ $FILES
|
# xgettext -n --keyword=_ $FILES
|
||||||
child = Popen(['xgettext','--output=-','-n','--keyword=_'] + files, stdout=PIPE)
|
child = Popen(['xgettext','--output=-','-n','--keyword=_'] + files, stdout=PIPE)
|
||||||
|
|
12
src/init.cpp
12
src/init.cpp
|
@ -372,21 +372,21 @@ bool AppInit2(int argc, char* argv[])
|
||||||
strErrors = "";
|
strErrors = "";
|
||||||
int64 nStart;
|
int64 nStart;
|
||||||
|
|
||||||
InitMessage("Loading addresses...");
|
InitMessage(_("Loading addresses..."));
|
||||||
printf("Loading addresses...\n");
|
printf("Loading addresses...\n");
|
||||||
nStart = GetTimeMillis();
|
nStart = GetTimeMillis();
|
||||||
if (!LoadAddresses())
|
if (!LoadAddresses())
|
||||||
strErrors += _("Error loading addr.dat \n");
|
strErrors += _("Error loading addr.dat \n");
|
||||||
printf(" addresses %15"PRI64d"ms\n", GetTimeMillis() - nStart);
|
printf(" addresses %15"PRI64d"ms\n", GetTimeMillis() - nStart);
|
||||||
|
|
||||||
InitMessage("Loading block index...");
|
InitMessage(_("Loading block index..."));
|
||||||
printf("Loading block index...\n");
|
printf("Loading block index...\n");
|
||||||
nStart = GetTimeMillis();
|
nStart = GetTimeMillis();
|
||||||
if (!LoadBlockIndex())
|
if (!LoadBlockIndex())
|
||||||
strErrors += _("Error loading blkindex.dat \n");
|
strErrors += _("Error loading blkindex.dat \n");
|
||||||
printf(" block index %15"PRI64d"ms\n", GetTimeMillis() - nStart);
|
printf(" block index %15"PRI64d"ms\n", GetTimeMillis() - nStart);
|
||||||
|
|
||||||
InitMessage("Loading wallet...");
|
InitMessage(_("Loading wallet..."));
|
||||||
printf("Loading wallet...\n");
|
printf("Loading wallet...\n");
|
||||||
nStart = GetTimeMillis();
|
nStart = GetTimeMillis();
|
||||||
bool fFirstRun;
|
bool fFirstRun;
|
||||||
|
@ -417,14 +417,14 @@ bool AppInit2(int argc, char* argv[])
|
||||||
}
|
}
|
||||||
if (pindexBest != pindexRescan)
|
if (pindexBest != pindexRescan)
|
||||||
{
|
{
|
||||||
InitMessage("Rescanning...");
|
InitMessage(_("Rescanning..."));
|
||||||
printf("Rescanning last %i blocks (from block %i)...\n", pindexBest->nHeight - pindexRescan->nHeight, pindexRescan->nHeight);
|
printf("Rescanning last %i blocks (from block %i)...\n", pindexBest->nHeight - pindexRescan->nHeight, pindexRescan->nHeight);
|
||||||
nStart = GetTimeMillis();
|
nStart = GetTimeMillis();
|
||||||
pwalletMain->ScanForWalletTransactions(pindexRescan, true);
|
pwalletMain->ScanForWalletTransactions(pindexRescan, true);
|
||||||
printf(" rescan %15"PRI64d"ms\n", GetTimeMillis() - nStart);
|
printf(" rescan %15"PRI64d"ms\n", GetTimeMillis() - nStart);
|
||||||
}
|
}
|
||||||
|
|
||||||
InitMessage("Done loading");
|
InitMessage(_("Done loading"));
|
||||||
printf("Done loading\n");
|
printf("Done loading\n");
|
||||||
|
|
||||||
//// debug print
|
//// debug print
|
||||||
|
@ -547,7 +547,7 @@ bool AppInit2(int argc, char* argv[])
|
||||||
RandAddSeedPerfmon();
|
RandAddSeedPerfmon();
|
||||||
|
|
||||||
if (!CreateThread(StartNode, NULL))
|
if (!CreateThread(StartNode, NULL))
|
||||||
wxMessageBox("Error: CreateThread(StartNode) failed", "Bitcoin");
|
wxMessageBox(_("Error: CreateThread(StartNode) failed"), "Bitcoin");
|
||||||
|
|
||||||
if (fServer)
|
if (fServer)
|
||||||
CreateThread(ThreadRPCServer, NULL);
|
CreateThread(ThreadRPCServer, NULL);
|
||||||
|
|
|
@ -13,6 +13,7 @@
|
||||||
#include <QApplication>
|
#include <QApplication>
|
||||||
#include <QMessageBox>
|
#include <QMessageBox>
|
||||||
#include <QThread>
|
#include <QThread>
|
||||||
|
#include <QTextCodec>
|
||||||
#include <QLocale>
|
#include <QLocale>
|
||||||
#include <QTranslator>
|
#include <QTranslator>
|
||||||
#include <QSplashScreen>
|
#include <QSplashScreen>
|
||||||
|
@ -111,6 +112,9 @@ std::string _(const char* psz)
|
||||||
|
|
||||||
int main(int argc, char *argv[])
|
int main(int argc, char *argv[])
|
||||||
{
|
{
|
||||||
|
QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF-8"));
|
||||||
|
QTextCodec::setCodecForCStrings(QTextCodec::codecForTr());
|
||||||
|
|
||||||
Q_INIT_RESOURCE(bitcoin);
|
Q_INIT_RESOURCE(bitcoin);
|
||||||
QApplication app(argc, argv);
|
QApplication app(argc, argv);
|
||||||
|
|
||||||
|
@ -148,7 +152,7 @@ int main(int argc, char *argv[])
|
||||||
|
|
||||||
if (QtWin::isCompositionEnabled())
|
if (QtWin::isCompositionEnabled())
|
||||||
{
|
{
|
||||||
#ifdef Q_WS_WIN32
|
#ifdef Q_OS_WIN
|
||||||
// Windows-specific customization
|
// Windows-specific customization
|
||||||
window.setAttribute(Qt::WA_TranslucentBackground);
|
window.setAttribute(Qt::WA_TranslucentBackground);
|
||||||
window.setAttribute(Qt::WA_NoSystemBackground, false);
|
window.setAttribute(Qt::WA_NoSystemBackground, false);
|
||||||
|
|
|
@ -59,16 +59,16 @@ BitcoinGUI::BitcoinGUI(QWidget *parent):
|
||||||
createActions();
|
createActions();
|
||||||
|
|
||||||
// Menus
|
// Menus
|
||||||
QMenu *file = menuBar()->addMenu("&File");
|
QMenu *file = menuBar()->addMenu(tr("&File"));
|
||||||
file->addAction(sendCoinsAction);
|
file->addAction(sendCoinsAction);
|
||||||
file->addAction(receiveCoinsAction);
|
file->addAction(receiveCoinsAction);
|
||||||
file->addSeparator();
|
file->addSeparator();
|
||||||
file->addAction(quitAction);
|
file->addAction(quitAction);
|
||||||
|
|
||||||
QMenu *settings = menuBar()->addMenu("&Settings");
|
QMenu *settings = menuBar()->addMenu(tr("&Settings"));
|
||||||
settings->addAction(optionsAction);
|
settings->addAction(optionsAction);
|
||||||
|
|
||||||
QMenu *help = menuBar()->addMenu("&Help");
|
QMenu *help = menuBar()->addMenu(tr("&Help"));
|
||||||
help->addAction(aboutAction);
|
help->addAction(aboutAction);
|
||||||
|
|
||||||
// Toolbars
|
// Toolbars
|
||||||
|
@ -106,7 +106,7 @@ BitcoinGUI::BitcoinGUI(QWidget *parent):
|
||||||
centralWidget->addWidget(receiveCoinsPage);
|
centralWidget->addWidget(receiveCoinsPage);
|
||||||
centralWidget->addWidget(sendCoinsPage);
|
centralWidget->addWidget(sendCoinsPage);
|
||||||
setCentralWidget(centralWidget);
|
setCentralWidget(centralWidget);
|
||||||
|
|
||||||
// Create status bar
|
// Create status bar
|
||||||
statusBar();
|
statusBar();
|
||||||
|
|
||||||
|
|
|
@ -44,43 +44,174 @@ QT_TRANSLATE_NOOP("bitcoin-core", "This help message\n"),
|
||||||
QT_TRANSLATE_NOOP("bitcoin-core", ""
|
QT_TRANSLATE_NOOP("bitcoin-core", ""
|
||||||
"Cannot obtain a lock on data directory %s. Bitcoin is probably already "
|
"Cannot obtain a lock on data directory %s. Bitcoin is probably already "
|
||||||
"running."),
|
"running."),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Loading addresses..."),
|
||||||
QT_TRANSLATE_NOOP("bitcoin-core", "Error loading addr.dat \n"),
|
QT_TRANSLATE_NOOP("bitcoin-core", "Error loading addr.dat \n"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Loading block index..."),
|
||||||
QT_TRANSLATE_NOOP("bitcoin-core", "Error loading blkindex.dat \n"),
|
QT_TRANSLATE_NOOP("bitcoin-core", "Error loading blkindex.dat \n"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Loading wallet..."),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Error loading wallet.dat: Wallet corrupted \n"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", ""
|
||||||
|
"Error loading wallet.dat: Wallet requires newer version of Bitcoin \n"),
|
||||||
QT_TRANSLATE_NOOP("bitcoin-core", "Error loading wallet.dat \n"),
|
QT_TRANSLATE_NOOP("bitcoin-core", "Error loading wallet.dat \n"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Rescanning..."),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Done loading"),
|
||||||
QT_TRANSLATE_NOOP("bitcoin-core", "Invalid -proxy address"),
|
QT_TRANSLATE_NOOP("bitcoin-core", "Invalid -proxy address"),
|
||||||
QT_TRANSLATE_NOOP("bitcoin-core", "Invalid amount for -paytxfee=<amount>"),
|
QT_TRANSLATE_NOOP("bitcoin-core", "Invalid amount for -paytxfee=<amount>"),
|
||||||
QT_TRANSLATE_NOOP("bitcoin-core", ""
|
QT_TRANSLATE_NOOP("bitcoin-core", ""
|
||||||
"Warning: -paytxfee is set very high. This is the transaction fee you will "
|
"Warning: -paytxfee is set very high. This is the transaction fee you will "
|
||||||
"pay if you send a transaction."),
|
"pay if you send a transaction."),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Error: CreateThread(StartNode) failed"),
|
||||||
QT_TRANSLATE_NOOP("bitcoin-core", "Warning: Disk space is low "),
|
QT_TRANSLATE_NOOP("bitcoin-core", "Warning: Disk space is low "),
|
||||||
QT_TRANSLATE_NOOP("bitcoin-core", ""
|
QT_TRANSLATE_NOOP("bitcoin-core", ""
|
||||||
"Error: This transaction requires a transaction fee of at least %s because of "
|
|
||||||
"its amount, complexity, or use of recently received funds "),
|
|
||||||
QT_TRANSLATE_NOOP("bitcoin-core", "Error: Transaction creation failed "),
|
|
||||||
QT_TRANSLATE_NOOP("bitcoin-core", "Sending..."),
|
|
||||||
QT_TRANSLATE_NOOP("bitcoin-core", ""
|
|
||||||
"Error: The transaction was rejected. This might happen if some of the coins "
|
|
||||||
"in your wallet were already spent, such as if you used a copy of wallet.dat "
|
|
||||||
"and coins were spent in the copy but not marked as spent here."),
|
|
||||||
QT_TRANSLATE_NOOP("bitcoin-core", "Invalid amount"),
|
|
||||||
QT_TRANSLATE_NOOP("bitcoin-core", "Insufficient funds"),
|
|
||||||
QT_TRANSLATE_NOOP("bitcoin-core", "Invalid bitcoin address"),
|
|
||||||
QT_TRANSLATE_NOOP("bitcoin-core", ""
|
|
||||||
"Unable to bind to port %d on this computer. Bitcoin is probably already "
|
"Unable to bind to port %d on this computer. Bitcoin is probably already "
|
||||||
"running."),
|
"running."),
|
||||||
QT_TRANSLATE_NOOP("bitcoin-core", "To use the %s option"),
|
|
||||||
QT_TRANSLATE_NOOP("bitcoin-core", ""
|
QT_TRANSLATE_NOOP("bitcoin-core", ""
|
||||||
"Warning: %s, you must set rpcpassword=<password>\n"
|
"This transaction is over the size limit. You can still send it for a fee of "
|
||||||
"in the configuration file: %s\n"
|
"%s, which goes to the nodes that process your transaction and helps to "
|
||||||
"If the file does not exist, create it with owner-readable-only file "
|
"support the network. Do you want to pay the fee?"),
|
||||||
"permissions.\n"),
|
QT_TRANSLATE_NOOP("bitcoin-core", "Enter the current passphrase to the wallet."),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Passphrase"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Please supply the current wallet decryption passphrase."),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "The passphrase entered for the wallet decryption was incorrect."),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Status"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Date"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Description"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Debit"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Credit"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Open for %d blocks"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Open until %s"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "%d/offline?"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "%d/unconfirmed"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "%d confirmations"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Generated"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Generated (%s matures in %d more blocks)"),
|
||||||
QT_TRANSLATE_NOOP("bitcoin-core", ""
|
QT_TRANSLATE_NOOP("bitcoin-core", ""
|
||||||
"You must set rpcpassword=<password> in the configuration file:\n"
|
"Generated - Warning: This block was not received by any other nodes and will "
|
||||||
"%s\n"
|
"probably not be accepted!"),
|
||||||
"If the file does not exist, create it with owner-readable-only file "
|
QT_TRANSLATE_NOOP("bitcoin-core", "Generated (not accepted)"),
|
||||||
"permissions."),
|
QT_TRANSLATE_NOOP("bitcoin-core", "From: "),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Received with: "),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Payment to yourself"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "To: "),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", " Generating"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "(not connected)"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", " %d connections %d blocks %d transactions"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Wallet already encrypted."),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", ""
|
||||||
|
"Enter the new passphrase to the wallet.\n"
|
||||||
|
"Please use a passphrase of 10 or more random characters, or eight or more "
|
||||||
|
"words."),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Error: The supplied passphrase was too short."),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", ""
|
||||||
|
"WARNING: If you encrypt your wallet and lose your passphrase, you will LOSE "
|
||||||
|
"ALL OF YOUR BITCOINS!\n"
|
||||||
|
"Are you sure you wish to encrypt your wallet?"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Please re-enter your new wallet passphrase."),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Error: the supplied passphrases didn't match."),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Wallet encryption failed."),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", ""
|
||||||
|
"Wallet Encrypted.\n"
|
||||||
|
"Remember that encrypting your wallet cannot fully protect your bitcoins from "
|
||||||
|
"being stolen by malware infecting your computer."),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Wallet is unencrypted, please encrypt it first."),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Enter the new passphrase for the wallet."),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Re-enter the new passphrase for the wallet."),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Wallet Passphrase Changed."),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "New Receiving Address"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", ""
|
||||||
|
"You should use a new address for each payment you receive.\n"
|
||||||
|
"\n"
|
||||||
|
"Label"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "<b>Status:</b> "),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", ", has not been successfully broadcast yet"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", ", broadcast through %d node"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", ", broadcast through %d nodes"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "<b>Date:</b> "),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "<b>Source:</b> Generated<br>"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "<b>From:</b> "),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "unknown"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "<b>To:</b> "),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", " (yours, label: "),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", " (yours)"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "<b>Credit:</b> "),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "(%s matures in %d more blocks)"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "(not accepted)"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "<b>Debit:</b> "),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "<b>Transaction fee:</b> "),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "<b>Net amount:</b> "),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Message:"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Comment:"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", ""
|
||||||
|
"Generated coins must wait 120 blocks before they can be spent. When you "
|
||||||
|
"generated this block, it was broadcast to the network to be added to the "
|
||||||
|
"block chain. If it fails to get into the chain, it will change to \"not "
|
||||||
|
"accepted\" and not be spendable. This may occasionally happen if another "
|
||||||
|
"node generates a block within a few seconds of yours."),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Cannot write autostart/bitcoin.desktop file"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Main"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "&Start Bitcoin on window system startup"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "&Minimize on close"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "version %s"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Error in amount "),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Send Coins"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Amount exceeds your balance "),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Total exceeds your balance when the "),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", " transaction fee is included "),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Payment sent "),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Sending..."),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Invalid address "),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Sending %s to %s"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "CANCELLED"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Cancelled"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Transfer cancelled "),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Error: "),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Insufficient funds"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Connecting..."),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Unable to connect"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Requesting public key..."),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Received public key..."),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Recipient is not accepting transactions sent by IP address"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Transfer was not accepted"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Invalid response received"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Creating transaction..."),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", ""
|
||||||
|
"This transaction requires a transaction fee of at least %s because of its "
|
||||||
|
"amount, complexity, or use of recently received funds"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Transaction creation failed"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Transaction aborted"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Lost connection, transaction cancelled"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Sending payment..."),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", ""
|
||||||
|
"The transaction was rejected. This might happen if some of the coins in "
|
||||||
|
"your wallet were already spent, such as if you used a copy of wallet.dat and "
|
||||||
|
"coins were spent in the copy but not marked as spent here."),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Waiting for confirmation..."),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", ""
|
||||||
|
"The payment was sent, but the recipient was unable to verify it.\n"
|
||||||
|
"The transaction is recorded and will credit to the recipient,\n"
|
||||||
|
"but the comment information will be blank."),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Payment was sent, but an invalid response was received"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Payment completed"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Name"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Address"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Label"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Bitcoin Address"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", ""
|
||||||
|
"This is one of your own addresses for receiving payments and cannot be "
|
||||||
|
"entered in the address book. "),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Edit Address"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Edit Address Label"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Add Address"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Bitcoin"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Bitcoin - Generating"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Bitcoin - (not connected)"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "&Open Bitcoin"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "&Send Bitcoins"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "O&ptions..."),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "E&xit"),
|
||||||
|
QT_TRANSLATE_NOOP("bitcoin-core", "Program has crashed and will terminate. "),
|
||||||
QT_TRANSLATE_NOOP("bitcoin-core", ""
|
QT_TRANSLATE_NOOP("bitcoin-core", ""
|
||||||
"Warning: Please check that your computer's date and time are correct. If "
|
"Warning: Please check that your computer's date and time are correct. If "
|
||||||
"your clock is wrong Bitcoin will not work properly."),
|
"your clock is wrong Bitcoin will not work properly."),
|
||||||
QT_TRANSLATE_NOOP("bitcoin-core", "-beta"),
|
QT_TRANSLATE_NOOP("bitcoin-core", "beta"),
|
||||||
};
|
};
|
File diff suppressed because it is too large
Load diff
|
@ -71,13 +71,13 @@ TransactionView::TransactionView(QWidget *parent) :
|
||||||
|
|
||||||
addressWidget = new QLineEdit(this);
|
addressWidget = new QLineEdit(this);
|
||||||
#if QT_VERSION >= 0x040700
|
#if QT_VERSION >= 0x040700
|
||||||
addressWidget->setPlaceholderText("Enter address or label to search");
|
addressWidget->setPlaceholderText(tr("Enter address or label to search"));
|
||||||
#endif
|
#endif
|
||||||
hlayout->addWidget(addressWidget);
|
hlayout->addWidget(addressWidget);
|
||||||
|
|
||||||
amountWidget = new QLineEdit(this);
|
amountWidget = new QLineEdit(this);
|
||||||
#if QT_VERSION >= 0x040700
|
#if QT_VERSION >= 0x040700
|
||||||
amountWidget->setPlaceholderText("Min amount");
|
amountWidget->setPlaceholderText(tr("Min amount"));
|
||||||
#endif
|
#endif
|
||||||
amountWidget->setMaximumWidth(100);
|
amountWidget->setMaximumWidth(100);
|
||||||
amountWidget->setMinimumWidth(100);
|
amountWidget->setMinimumWidth(100);
|
||||||
|
@ -105,10 +105,10 @@ TransactionView::TransactionView(QWidget *parent) :
|
||||||
transactionView = view;
|
transactionView = view;
|
||||||
|
|
||||||
// Actions
|
// Actions
|
||||||
QAction *copyAddressAction = new QAction("Copy address", this);
|
QAction *copyAddressAction = new QAction(tr("Copy address"), this);
|
||||||
QAction *copyLabelAction = new QAction("Copy label", this);
|
QAction *copyLabelAction = new QAction(tr("Copy label"), this);
|
||||||
QAction *editLabelAction = new QAction("Edit label", this);
|
QAction *editLabelAction = new QAction(tr("Edit label"), this);
|
||||||
QAction *showDetailsAction = new QAction("Show details...", this);
|
QAction *showDetailsAction = new QAction(tr("Show details..."), this);
|
||||||
|
|
||||||
contextMenu = new QMenu();
|
contextMenu = new QMenu();
|
||||||
contextMenu->addAction(copyAddressAction);
|
contextMenu->addAction(copyAddressAction);
|
||||||
|
@ -251,13 +251,13 @@ void TransactionView::exportClicked()
|
||||||
|
|
||||||
// name, column, role
|
// name, column, role
|
||||||
writer.setModel(transactionProxyModel);
|
writer.setModel(transactionProxyModel);
|
||||||
writer.addColumn("Confirmed", 0, TransactionTableModel::ConfirmedRole);
|
writer.addColumn(tr("Confirmed"), 0, TransactionTableModel::ConfirmedRole);
|
||||||
writer.addColumn("Date", 0, TransactionTableModel::DateRole);
|
writer.addColumn(tr("Date"), 0, TransactionTableModel::DateRole);
|
||||||
writer.addColumn("Type", TransactionTableModel::Type, Qt::EditRole);
|
writer.addColumn(tr("Type"), TransactionTableModel::Type, Qt::EditRole);
|
||||||
writer.addColumn("Label", 0, TransactionTableModel::LabelRole);
|
writer.addColumn(tr("Label"), 0, TransactionTableModel::LabelRole);
|
||||||
writer.addColumn("Address", 0, TransactionTableModel::AddressRole);
|
writer.addColumn(tr("Address"), 0, TransactionTableModel::AddressRole);
|
||||||
writer.addColumn("Amount", 0, TransactionTableModel::FormattedAmountRole);
|
writer.addColumn(tr("Amount"), 0, TransactionTableModel::FormattedAmountRole);
|
||||||
writer.addColumn("ID", 0, TransactionTableModel::TxIDRole);
|
writer.addColumn(tr("ID"), 0, TransactionTableModel::TxIDRole);
|
||||||
|
|
||||||
if(!writer.write())
|
if(!writer.write())
|
||||||
{
|
{
|
||||||
|
@ -349,7 +349,7 @@ QWidget *TransactionView::createDateRangeWidget()
|
||||||
QHBoxLayout *layout = new QHBoxLayout(dateRangeWidget);
|
QHBoxLayout *layout = new QHBoxLayout(dateRangeWidget);
|
||||||
layout->setContentsMargins(0,0,0,0);
|
layout->setContentsMargins(0,0,0,0);
|
||||||
layout->addSpacing(23);
|
layout->addSpacing(23);
|
||||||
layout->addWidget(new QLabel("Range:"));
|
layout->addWidget(new QLabel(tr("Range:")));
|
||||||
|
|
||||||
dateFrom = new QDateTimeEdit(this);
|
dateFrom = new QDateTimeEdit(this);
|
||||||
dateFrom->setDisplayFormat("dd/MM/yy");
|
dateFrom->setDisplayFormat("dd/MM/yy");
|
||||||
|
@ -357,7 +357,7 @@ QWidget *TransactionView::createDateRangeWidget()
|
||||||
dateFrom->setMinimumWidth(100);
|
dateFrom->setMinimumWidth(100);
|
||||||
dateFrom->setDate(QDate::currentDate().addDays(-7));
|
dateFrom->setDate(QDate::currentDate().addDays(-7));
|
||||||
layout->addWidget(dateFrom);
|
layout->addWidget(dateFrom);
|
||||||
layout->addWidget(new QLabel("to"));
|
layout->addWidget(new QLabel(tr("to")));
|
||||||
|
|
||||||
dateTo = new QDateTimeEdit(this);
|
dateTo = new QDateTimeEdit(this);
|
||||||
dateTo->setDisplayFormat("dd/MM/yy");
|
dateTo->setDisplayFormat("dd/MM/yy");
|
||||||
|
|
Loading…
Reference in a new issue