Compare commits

...

222 Commits

Author SHA1 Message Date
luigi1111
b40363cd88 Merge pull request #1432
a412ab7 Submodule: use v0.12.1.0 tag instead of branch
2018-05-27 08:38:04 -05:00
dEBRUYNE-1
a412ab7b80 Submodule: use v0.12.1.0 tag instead of branch 2018-05-27 13:05:50 +02:00
luigi1111
cd46edb23f Merge pull request #1430
08f61e2 update instructions for debian based distros
2018-05-25 13:07:02 -05:00
luigi1111
9d43cf3b44 Merge pull request #1429
acaf0f5 update hebrew translation
2018-05-24 16:16:17 -05:00
pazos
08f61e25de update instructions for debian based distros 2018-05-24 16:33:06 +02:00
erciccione
acaf0f525d update hebrew translation 2018-05-24 10:32:07 +02:00
luigi1111
08c424cbc8 Merge pull request #1427
4a8545c Russian Language GUI Update for v0.12.1
2018-05-23 15:47:28 -05:00
luigi1111
fa560ad0a0 Merge pull request #1422
ccec187 Update Czech translation for 0.12.1
2018-05-22 15:11:28 -05:00
Pavel Ruzicka
ccec187ed6 Update Czech translation for 0.12.1
https://taiga.getmonero.org/project/erciccione-monero-localization/task/284
2018-05-22 20:18:44 +02:00
luigi1111
ddb51583d3 Merge pull request #1428
d06a16f require at least qt 5.7.0 when building the project
2018-05-22 12:26:26 -05:00
luigi1111
fec309b907 Merge pull request #1424
275c3df Fixed wrong argument for retrieving mixins
2018-05-22 12:25:03 -05:00
luigi1111
e91552ab3c Merge pull request #1426 (recovered #1390)
122ed15 update FR translations for v0.12.1
2018-05-22 12:21:05 -05:00
luigi1111
8efddfbb77 Merge pull request #1425
f4e58f1 fix restoreHeightEdit is not defined.
2018-05-22 12:19:48 -05:00
luigi1111
d89ff0fea1 Merge pull request #1423
c691fc1 update slovak translation
2018-05-22 12:18:37 -05:00
luigi1111
ba39119aab Merge pull request #1417
82c9a02 Update monero-core_pt-pt.ts
2018-05-22 12:17:20 -05:00
luigi1111
834e617736 Merge pull request #1414
cc32479 Update monero-core_zh-cn.ts
2018-05-22 12:16:21 -05:00
luigi1111
f63b098b61 Merge pull request #1408
a11eab5 updated Swedish translation of GUI strings
2018-05-22 12:15:24 -05:00
luigi1111
35bf427159 Merge pull request #1391
f6beb48 Upload new updated version danish translation
2018-05-22 12:13:33 -05:00
Ordtrogen Översättning
a11eab5bb7 updated Swedish translation of GUI strings 2018-05-22 18:13:51 +02:00
pazos
d06a16f7da require at least qt 5.7.0 when building the project 2018-05-22 14:31:34 +02:00
cryptochangements34
122ed15e11 update FR translations for v0.12.1
erciccione's review
2018-05-22 13:03:07 +02:00
fero-sk
c691fc1915 update slovak translation 2018-05-22 12:53:56 +02:00
MalMen
82c9a02447 Update monero-core_pt-pt.ts 2018-05-22 12:35:12 +02:00
widdy
f4e58f1aad fix restoreHeightEdit is not defined. 2018-05-22 18:22:29 +08:00
4broaf
cc32479662 Update monero-core_zh-cn.ts 2018-05-22 12:19:33 +02:00
luigi1111
9272767e4e Merge pull request #1418
5ba724b don't scroll to bottom after appending a new log message
2018-05-21 23:17:33 -05:00
luigi1111
3102118e38 Merge pull request #1406
fd03f08 translated and reviewed
2018-05-21 23:11:39 -05:00
luigi1111
5b725a4f20 Merge pull request #1393
d003b25 use regex for value input
2018-05-21 23:10:29 -05:00
luigi1111
82d925a1d8 Merge pull request #1384
8c5b403 Updated Polish Monero GUI translation for v0.12.1
2018-05-21 23:08:04 -05:00
luigi1111
520a4f4260 Merge pull request #1378
63478b1 fix typos in Receive.qml and SharedRingDB.qml
290339a missing <p>
2018-05-21 23:06:22 -05:00
luigi1111
5732245dac Merge pull request #1413
427b161 Update of romanian translation
2018-05-21 23:03:25 -05:00
luigi1111
ee6bcdb7d0 Merge pull request #1411
7dab8e5 Update monero-core_tr.ts
6e3f2f6 Update monero-core_tr.ts
2018-05-21 23:02:26 -05:00
luigi1111
2cb8f9fd2e Merge pull request #1410
7db6695 Translation of new items
9224056 Update monero-core_eo.ts
2018-05-21 23:00:16 -05:00
luigi1111
9ca81e6413 Merge pull request #1409
2539441 Update german strings for v0.12.1.0
2018-05-21 22:58:44 -05:00
luigi1111
56d6e38f85 Merge pull request #1400
25426c5 GUI Refresh for v0.12.1 - Italian translation
2018-05-21 22:56:40 -05:00
luigi1111
562f711e64 Merge pull request #1399
3314dbd Upload a new update version spanish translation
2018-05-21 22:55:44 -05:00
luigi1111
ed64160716 Merge pull request #1397
fa0e444 Update Traditional Chinese translation for v0.12.1
2018-05-21 22:54:45 -05:00
luigi1111
ca0978e094 Merge pull request #1392
a9fe150 0.12.1 Dutch translation update
2018-05-21 22:53:25 -05:00
luigi1111
fdfd387e80 Merge pull request #1386
f37efc4 Updating Serbian translation
2018-05-21 22:52:18 -05:00
luigi1111
6df6ad636c Merge pull request #1385
bcbf50a Update Japanese translations for 0.12.1
e551454 Add missing colon
2018-05-21 22:51:14 -05:00
einsteinsfool
275c3df302 Fixed wrong argument for retrieving mixins 2018-05-22 00:44:38 +02:00
Phillip Jensen
f6beb48f5e Upload new updated version danish translation
Few fixes
2018-05-21 12:24:01 +02:00
ni311
427b161606 Update of romanian translation
update of RO
2018-05-20 22:05:53 +02:00
hrumag
25426c5430 GUI Refresh for v0.12.1 - Italian translation 2018-05-20 19:28:42 +02:00
Keksoj
92240564bc Update monero-core_eo.ts
minor fixes
2018-05-16 22:43:25 +02:00
lh1008
3314dbd79f Upload a new update version spanish translation 2018-05-15 14:25:09 -05:00
rafficer
253944186b Update german strings for v0.12.1.0
German translation round 1

German translation round 2

Fix line break

German translation for v0.12.1.0

Fixed typos according to review

Fixed grammar

Fix typo

Fixes according to review by erciccione
2018-05-15 19:47:17 +02:00
Lafudoci
fa0e444db0 Update Traditional Chinese translation for v0.12.1 2018-05-16 01:05:25 +08:00
pazos
5ba724b7fa don't scroll to bottom after appending a new log message 2018-05-15 17:31:42 +02:00
xmoreee
6e3f2f6777 Update monero-core_tr.ts
I have changed %50 to 50%.
But  "%50" was correct translation.
May be we need an escape char before % sign.
2018-05-15 15:30:37 +03:00
curumimxara
fd03f083bd translated and reviewed
fixes
2018-05-14 15:51:15 -04:00
einsteinsfool
8c5b403b7c Updated Polish Monero GUI translation for v0.12.1 2018-05-14 16:51:50 +02:00
xmoreee
7dab8e509f Update monero-core_tr.ts 2018-05-13 20:20:45 +03:00
erciccione
290339a22d missing <p> 2018-05-13 17:11:25 +02:00
erciccione
63478b1c48 fix typos in Receive.qml and SharedRingDB.qml 2018-05-13 17:08:36 +02:00
Keksoj
7db6695768 Translation of new items
Almost all new items translated here. Would new an esperanto-speaking peer review but it'll do for now.
2018-05-13 14:29:36 +02:00
ProkhorZ
a9fe150778 0.12.1 Dutch translation update
Update of the NL translation for release 0.12.1. according to issue #1377. Paging @erciccione.
2018-05-13 09:05:46 +02:00
Aleksej Jocic
f37efc48a0 Updating Serbian translation 2018-05-12 11:46:23 +02:00
Takuto Hayashi
e551454fea Add missing colon 2018-05-12 09:51:51 +09:00
Takuto Hayashi
bcbf50a5bf Update Japanese translations for 0.12.1 2018-05-12 09:51:51 +09:00
cryptochangements34
d003b255b9 use regex for value input 2018-05-11 18:56:04 -04:00
luigi1111
06fdf27be2 Merge pull request #1388
78e0ae1 use radio buttons in daemon wizard
2018-05-11 17:48:06 -05:00
cryptochangements34
78e0ae1a4e use radio buttons in daemon wizard 2018-05-11 18:40:10 -04:00
luigi1111
b6a7836447 Merge pull request #1379
827c80d ctrl+tab switch pages in the same order as leftpanel
2bbd5c6 ctrl+shift+tab, switch pages in Leftpanel reverse order
2018-05-11 17:00:26 -05:00
luigi1111
4954491273 Merge pull request #1375
adb47ad minng warning label when daemon not syncd
2018-05-11 16:59:06 -05:00
luigi1111
4c2640d4b3 Merge pull request #1358
341ac18 log qt/qml to easylogging, add --log-file cmdline option
92582a9 delete unused WalletManager functions
c9daab7 don't use cmdline arguments as daemon arguments
7283fe4 use qWarning/qCritical on QrCodeScanner info/errors
15155f2 print logs on console
2018-05-11 16:57:43 -05:00
luigi1111
adc1db585a Merge pull request #1305
5109cb7 ReadMe: Updated Windows/MSYS2 compile instructions
2018-05-11 16:53:37 -05:00
luigi1111
f4ddb6faf9 Merge pull reqeust #1398
01dcfe0 fix typo on Info.plist
34b9a04 replace osx toolbar appname with CFBundleName
2018-05-11 16:51:12 -05:00
luigi1111
da014b07a9 Merge pull request #1387
31ef55d make some daemon wizard wording more clear
2018-05-11 16:48:45 -05:00
luigi1111
ecf4839f01 Merge pull request #1382
bde1d47 fix libpng16 warnings and *some* file permissions -> mogrify *.png
2018-05-11 16:47:34 -05:00
luigi1111
5730c4a29e Merge pull request #1381
6729ae7 don't translate log categories
2018-05-11 16:46:43 -05:00
luigi1111
fe811e2ec2 Merge pull request #1376
8ace062 refresh all language files
2018-05-11 16:45:43 -05:00
pazos
2bbd5c6814 ctrl+shift+tab, switch pages in Leftpanel reverse order 2018-05-11 22:30:40 +02:00
Agent LvM
4a8545c99f Russian Language GUI Update for v0.12.1 2018-05-11 21:04:15 +03:00
Martín Fdez
34b9a04af5 replace osx toolbar appname with CFBundleName 2018-05-10 23:26:59 +02:00
Martín Fdez
01dcfe01bb fix typo on Info.plist 2018-05-10 23:10:53 +02:00
cryptochangements34
31ef55d838 make some daemon wizard wording more clear 2018-05-08 20:47:39 -04:00
pazos
bde1d472d3 fix libpng16 warnings and *some* file permissions -> mogrify *.png 2018-05-08 19:17:24 +02:00
pazos
6729ae7380 don't translate log categories 2018-05-08 19:12:29 +02:00
pazos
827c80d4d8 ctrl+tab switch pages in the same order as leftpanel 2018-05-08 19:00:30 +02:00
pazos
15155f2db8 print logs on console 2018-05-08 18:22:21 +02:00
pazos
7283fe41c2 use qWarning/qCritical on QrCodeScanner info/errors 2018-05-08 18:19:55 +02:00
pazos
c9daab71bf don't use cmdline arguments as daemon arguments 2018-05-08 18:15:26 +02:00
pazos
92582a9785 delete unused WalletManager functions 2018-05-08 18:14:00 +02:00
pazos
341ac18f1a log qt/qml to easylogging, add --log-file cmdline option 2018-05-08 18:13:29 +02:00
cryptochangements34
adb47adf9b minng warning label when daemon not syncd 2018-05-07 21:27:22 -04:00
erciccione
8ace0628a1 refresh all language files 2018-05-07 23:18:22 +02:00
luigi1111
a7e99dc08a Merge pull request #1368
70492cc remove white background from portugal.png and srbija.png
2018-05-07 15:54:18 -05:00
luigi1111
4f7a4a4f70 Merge pull request #1367
894b10e add Info.plist template
2018-05-07 15:53:08 -05:00
luigi1111
b56074bef1 Merge pull request #1366
6147d81 Fix use of persistentSettings.testnet to nettype
2018-05-07 15:51:53 -05:00
luigi1111
ff3987ccab Merge pull request #1362
fe53cdd Brighter backgrounds
7418a10 Improve contrast - brighten up borders
48b9aa4 Brigther left panel
26aabd2 Bottom left panel needs to have a transparent background
2018-05-07 15:50:45 -05:00
luigi1111
6de8e70004 Merge pull request #1359
5a1952f Reordered QR/Tracking sections on the receive page
44ad8a3 Redesigned the tracking section
cb94523 This doesnt belong here
6ff273f First iteration of the subaddress table restyle
0e49e4a Reimplemented create/edit/copy (sub)address icons and buttons
5487383 Variable address truncation (for mobile)
9018ae3 Dynamic page height for the receive page
dc1d5e9 Check the 'to receive amount' with the transaction tracker
229fba2 Introduced 'show advanced options' checkbox
d6427a1 Fixes undefined references to 'bg', was previously moved to main.inactiveOverlay
1541d87 Fixes undefined reference to 's'
178be38 Cursor pointer on link hover for richtexts
bfbe00e Removed obsolete SubaddressTable.qml component
3e5f5f3 Adding editIcon.png
bff2701 Fixes the background for 2 popups
2018-05-07 15:48:38 -05:00
luigi1111
d69176e936 Merge pull request #1299
d8606ea Name of Turkish language and list of languages
2018-05-07 15:43:53 -05:00
erciccione
70492cc169 remove white background from portugal.png and srbija.png 2018-05-03 13:53:08 +02:00
Sander Ferdinand
26aabd2226 Bottom left panel needs to have a transparent background 2018-05-03 12:56:54 +02:00
Sander Ferdinand
48b9aa450d Brigther left panel 2018-05-03 12:53:30 +02:00
Sander Ferdinand
bff27010f3 Fixes the background for 2 popups 2018-05-03 12:35:53 +02:00
Sander Ferdinand
3e5f5f3245 Adding editIcon.png 2018-05-03 12:35:53 +02:00
Sander Ferdinand
bfbe00e11c Removed obsolete SubaddressTable.qml component 2018-05-03 12:35:53 +02:00
Sander Ferdinand
178be387bb Cursor pointer on link hover for richtexts 2018-05-03 12:35:53 +02:00
Sander Ferdinand
1541d87122 Fixes undefined reference to 's' 2018-05-03 12:35:53 +02:00
Sander Ferdinand
d6427a1efb Fixes undefined references to 'bg', was previously moved to main.inactiveOverlay 2018-05-03 12:35:53 +02:00
Sander Ferdinand
229fba2de9 Introduced 'show advanced options' checkbox 2018-05-03 12:35:53 +02:00
Sander Ferdinand
dc1d5e9e0a Check the 'to receive amount' with the transaction tracker 2018-05-03 12:35:53 +02:00
Sander Ferdinand
9018ae3afe Dynamic page height for the receive page 2018-05-03 12:35:53 +02:00
Sander Ferdinand
5487383068 Variable address truncation (for mobile) 2018-05-03 12:35:53 +02:00
Sander Ferdinand
0e49e4ad37 Reimplemented create/edit/copy (sub)address icons and buttons 2018-05-03 12:35:53 +02:00
Sander Ferdinand
6ff273fd32 First iteration of the subaddress table restyle 2018-05-03 12:35:34 +02:00
Sander Ferdinand
cb94523747 This doesnt belong here 2018-05-03 12:35:34 +02:00
Sander Ferdinand
44ad8a3be1 Redesigned the tracking section 2018-05-03 12:35:34 +02:00
Sander Ferdinand
5a1952f7ac Reordered QR/Tracking sections on the receive page 2018-05-03 12:35:34 +02:00
pazos
894b10eeb4 add Info.plist template 2018-05-02 17:27:22 +02:00
Doyle T
6147d81cc5 Fix use of persistentSettings.testnet to nettype 2018-05-02 11:29:47 +10:00
ProkhorZ
d8606ea917 Name of Turkish language and list of languages
1. Change 'Turkish' to 'Türkçe' in the opening screen. I don't speak Turkish, but the language name is pretty obvious.
2. Change wallet_language for Turkish to English, because there's actually not a mnemonics word list in Turkish at the moment, although it's listed here in the comment above.
3. Update that list of available seed languages. Source: https://github.com/monero-project/monero/blob/master/src/mnemonics/electrum-words.cpp
4. Change wallet_language for Catalan to 'English', because there's no Catalan word list. Personally, I think 'Español' would be more useful to speakers of Catalan, but that's a political decision which requires discussion.
2018-05-01 16:44:38 +02:00
luigi1111
7cea134352 Merge pull request #1346
610682c Added component RadioButton; changed 'settings->daemon mode' checkboxes to use them
c409441 Radio buttons for the welcome wizard
2018-04-30 23:15:06 -05:00
luigi1111
08e5154535 Merge pull request #1345
2c73ca2 Added missing translations
2018-04-30 23:12:09 -05:00
luigi1111
aa74e9e026 Merge pull request #1337
l33t

b846673 Reformat Settings->Debug Info
170ddf1 Removes 'Daemon log path:' from the debug info
199aedf Dialog(s) for changing restore height
ec640dc Cursor pointer on link hover
2018-04-30 23:09:31 -05:00
luigi1111
3c45dcca7a Merge pull request #1294
2d69718 Rename monero-core_rs.ts to monero-core_sr.ts
2018-04-30 23:06:58 -05:00
luigi1111
1eaedb3e8e Merge pull request #1232 2018-04-30 23:05:56 -05:00
Sander Ferdinand
7418a10d28 Improve contrast - brighten up borders 2018-04-30 00:52:48 +02:00
Sander Ferdinand
fe53cddd03 Brighter backgrounds 2018-04-30 00:45:24 +02:00
Sander Ferdinand
ec640dcd1b Cursor pointer on link hover 2018-04-28 18:14:13 +02:00
Aleksej Jocic
2d697187ff Rename monero-core_rs.ts to monero-core_sr.ts 2018-04-28 17:49:45 +02:00
Sander Ferdinand
c40944144a Radio buttons for the welcome wizard 2018-04-28 16:40:01 +02:00
Sander Ferdinand
610682c2be Added component RadioButton; changed 'settings->daemon mode' checkboxes to use them 2018-04-28 15:21:46 +02:00
Sander Ferdinand
199aedf60a Dialog(s) for changing restore height 2018-04-28 15:17:36 +02:00
Sander Ferdinand
170ddf1f6f Removes 'Daemon log path:' from the debug info 2018-04-28 03:28:05 +02:00
Sander Ferdinand
b8466739f9 Reformat Settings->Debug Info 2018-04-28 03:28:05 +02:00
luigi1111
9f0d771f40 Merge pull request #1357
e1359ac refactor platform dependant code
400c385 add minimal cmdline parser
ffeecb6 move monero stuff after app constructor + cmdline parser
1b07cda move screen defs earlier in main function & fix width and height
74233bf force -platform xcb on linux
59a4afe consistency in if/else statements and MACROS
2018-04-27 15:43:58 -05:00
luigi1111
dbcd11563f Merge pull request #1356
df3e5de remove old unused files
73d93c3 remove windows resource file, qmake will generate one for us
2018-04-27 15:40:56 -05:00
luigi1111
19ac2aeb19 Merge pull request #1347
3635b2f Change input address placeholder from '4...' to '4.. / 8..'
2018-04-27 15:38:45 -05:00
luigi1111
37bceb7897 Merge pull request #1344
c13b4cb Redesigned shared ringdb panel
b75eedd Fixes CTRL-A hotkey
1e8f8bf Reformat help tooltips
2018-04-27 15:37:31 -05:00
luigi1111
679d18166f Merge pull request #1341
7d8d477 Redesigned the daemon console pop-up
acefb96 Added 'Windows.js' for dialogs/windows
47f9a17 Modify password dialog and move customdecorations function out of main.qml
4d56ed9 Make the titlebar more modular
7fe9d71 Added daemonConsole component to main.qml
75ccc7a Added Utils.js, for miscellaneous Javascript functions
2018-04-27 15:35:34 -05:00
luigi1111
1deef73237 Merge pull request #1290
791c267 fix Leftpanel overlay
2018-04-27 15:31:53 -05:00
pazos
73d93c3c23 remove windows resource file, qmake will generate one for us 2018-04-26 20:04:55 +02:00
pazos
59a4afef3c consistency in if/else statements and MACROS 2018-04-25 17:11:19 +02:00
Sander Ferdinand
75ccc7a31b Added Utils.js, for miscellaneous Javascript functions 2018-04-25 16:32:12 +02:00
Sander Ferdinand
7fe9d71eb3 Added daemonConsole component to main.qml 2018-04-25 16:32:12 +02:00
Sander Ferdinand
4d56ed9e27 Make the titlebar more modular 2018-04-25 16:32:12 +02:00
Sander Ferdinand
47f9a1765a Modify password dialog and move customdecorations function out of main.qml 2018-04-25 16:31:13 +02:00
Sander Ferdinand
acefb96520 Added 'Windows.js' for dialogs/windows 2018-04-25 16:31:13 +02:00
Sander Ferdinand
7d8d477a19 Redesigned the daemon console pop-up 2018-04-25 16:31:13 +02:00
pazos
74233bf459 force -platform xcb on linux 2018-04-25 15:36:08 +02:00
pazos
1b07cdad1c move screen defs earlier in main function & fix width and height 2018-04-25 15:33:23 +02:00
pazos
ffeecb6234 move monero stuff after app constructor + cmdline parser 2018-04-25 15:29:17 +02:00
pazos
400c385a5c add minimal cmdline parser 2018-04-25 15:26:54 +02:00
pazos
e1359ace86 refactor platform dependant code 2018-04-25 15:23:56 +02:00
pazos
df3e5de3f1 remove old unused files 2018-04-25 15:00:19 +02:00
Sander Ferdinand
1e8f8bf3cd Reformat help tooltips 2018-04-25 14:54:04 +02:00
Sander Ferdinand
3635b2f001 Change input address placeholder from '4...' to '4.. / 8..' 2018-04-25 14:25:02 +02:00
luigi1111
60cefb3820 Merge pull request #1353
eed5005 Settings: do not invoke status command when using remote node
2018-04-24 21:45:57 -05:00
luigi1111
d2f90be148 Merge pull request #1351
0988f54 Removing legacy whatis button from titlebar
2018-04-24 21:44:21 -05:00
luigi1111
8532b240be Merge pull request #1339
544b872 Selection color for inputs
2018-04-24 21:42:19 -05:00
luigi1111
1956f5896d Merge pull request #1286
cd4418d Receive: make tracking optional
a9331a7 Set daemon address to WalletManager (requires #3576)
2018-04-24 21:40:46 -05:00
luigi1111
366534a295 Merge pull request #1017
cfc6abc Embed the translation files in the monero-wallet-gui binary
2018-04-24 21:38:40 -05:00
luigi1111
631560c95a Merge pull request #1336
25e5b35 dynamic panel height for the settings page
2018-04-24 21:35:52 -05:00
stoffu
eed500560d Settings: do not invoke status command when using remote node 2018-04-24 18:41:46 +09:00
Gene Peters
0988f54bd2 Removing legacy whatis button from titlebar 2018-04-23 17:47:35 -07:00
Guillaume LE VAILLANT
cfc6abcfdc Embed the translation files in the monero-wallet-gui binary
If a translation file exists in a "translations" directory located in the same
directory as the binary, it is used in priority (this can be useful when working
on translations as you don't have to recompile the whole program all the time),
and if no such file is found the embedded translation file is used.
2018-04-23 13:56:12 +02:00
luigi1111
5a5d92e6f6 Merge pull request #1323
b38729f fix openalias resolve
2018-04-22 20:04:15 -05:00
luigi1111
d248e45563 Merge pull request #1321
251db80 show correct address in wizard if remote node used
2018-04-22 20:03:00 -05:00
luigi1111
dba28580e9 Merge pull request #1311
28fb9fa update ApplicationName to monero-gui
2018-04-22 20:00:56 -05:00
Sander Ferdinand
b75eedde0a Fixes CTRL-A hotkey 2018-04-22 22:49:11 +02:00
Phillip Jensen
2c73ca216e Added missing translations 2018-04-22 21:10:12 +02:00
Sander Ferdinand
c13b4cb7bd Redesigned shared ringdb panel 2018-04-22 20:07:31 +02:00
lovvskillz
d5b8ce4bec fix some grammar and wording (#11)
* fix some grammar and wording

* remove the space in front of the dots
2018-04-22 18:31:36 +02:00
Rafficer
85aa323a2d Rename "entfernter Node" to "remote-Node" 2018-04-22 18:31:36 +02:00
vadim
b0f54f6d1d fix typo 2018-04-22 18:31:36 +02:00
Rafficer
acb76b867e remove translatorcomment 2018-04-22 18:31:36 +02:00
vadim
977d9873a7 fix unfinished type 2018-04-22 18:31:36 +02:00
Rafficer
ee328592e9 updated empty fields to unfinished 2018-04-22 18:31:35 +02:00
FalconGoat
431feea267 Translating leftover terms 2018-04-22 18:31:35 +02:00
Rafficer
4f62745207 Added new translations 2018-04-22 18:31:35 +02:00
FalconGoat
05bb8beb71 Proof-read some missed entries 2018-04-22 18:31:35 +02:00
FalconGoat
ab42e7b23a Implemented conclusions from today's discussion 2018-04-22 18:31:35 +02:00
FalconGoat
b4a54eb047 Some work done 2018-04-22 18:31:35 +02:00
Rafficer
5279971bd7 second half update 2018-04-22 18:31:35 +02:00
FalconGoat
f86360faf4 Finished 1st run over chunk
Translate all instances of balance to 'Guthaben'
2018-04-22 18:31:34 +02:00
Rafficer
57d8ec5e32 updated/added german translations 2018-04-22 18:31:34 +02:00
FalconGoat
68898636a4 begin translation 2018-04-22 18:29:24 +02:00
cryptochangements34
b38729fc0e fix openalias resolve 2018-04-21 21:48:31 -04:00
Sander Ferdinand
544b872ada Selection color for inputs 2018-04-21 15:26:48 +02:00
Sander Ferdinand
25e5b3528e dynamic panel height for the settings page 2018-04-20 22:42:32 +02:00
luigi1111
72541b6d51 Merge pull request #1329
9c44252 fix black checkmark on sharedringdb page
2018-04-19 11:39:22 -05:00
luigi1111
a7a954bb22 Merge pull request #1322
66f2983 fix typo in daemon setup wizard
2018-04-19 11:38:03 -05:00
luigi1111
d72e9873d1 Merge pull request #1320
f04a9e0 single colour privacy level
2018-04-19 11:37:02 -05:00
luigi1111
46dc634a5c Merge pull request #1315
d074854 replace qDebug for qWarning, lean message
2018-04-19 11:35:20 -05:00
luigi1111
9b8badc00c Merge pull request #1306
67e9109 Implement 'rightIcon' and 'rightIconInactive' image properties for componenent StandardButton
2018-04-19 11:33:11 -05:00
luigi1111
7251254d8f Merge pull request #1287
6ba65d4 Settings: use checkbox instead of button for daemon mode switching
2018-04-19 11:31:47 -05:00
qubenix
9c4425295b fix black checkmark on sharedringdb page
+ changed `checkedBlackIcon.png` to `checkedIcon-black.png` in pages/SharedRingDB.qml
2018-04-18 14:28:19 -06:00
cryptochangements34
f04a9e07e1 single colour privacy level 2018-04-15 09:45:30 -04:00
cryptochangements34
66f29831e1 fix typo in daemon setup wizard 2018-04-14 23:50:05 -04:00
cryptochangements34
251db80609 show correct address in wizard if remote node used 2018-04-14 23:33:51 -04:00
pazos
791c26734f fix Leftpanel overlay 2018-04-13 21:43:15 +02:00
pazos
d074854aae replace qDebug for qWarning, lean message 2018-04-13 19:37:48 +02:00
cryptochangements34
28fb9fa2be update ApplicationName to "monero-gui" 2018-04-12 20:56:11 -04:00
Sander Ferdinand
67e9109c14 Implement 'rightIcon' and 'rightIconInactive' image properties for componenent StandardButton 2018-04-10 22:36:39 +02:00
René Brunner
5109cb7b33 ReadMe: Updated Windows/MSYS2 compile instructions 2018-04-10 21:29:17 +02:00
luigi1111
b4353a31ac Merge pull request #1239
4e6a421 Add Qt Runtime version to settings page
2018-04-08 17:54:20 -05:00
luigi1111
a15f088e8b Merge pull request #1245
84fad36 Add missing newline to transfer confirm dialog
2018-04-08 17:53:13 -05:00
luigi1111
3034348ac8 Merge pull request #1243
9393529 ProgressBar: fix conversion to percentage
2018-04-08 17:50:09 -05:00
luigi1111
4927d9c29e Merge pull request #1258
ffd49c1 Updated README.md with new dependencies for Ubuntu 16.04+:
2018-04-08 17:45:31 -05:00
luigi1111
d71c35ab22 Merge pull request #1263
6ef2a8e Wallet: fix listener leak
2018-04-08 17:43:59 -05:00
luigi1111
11e3380ab1 Merge pull request #1272
4a96678 Fixes a bug where progress bars were not 100% filled visually (slightly off)
2018-04-08 17:42:39 -05:00
luigi1111
3d00c4ae30 Merge pull request #1271
3b76636 Refactoring signal functions
1378ae4 Reset flickable scrollview to 0 Y position
2018-04-08 17:40:11 -05:00
luigi1111
8db58b42af Merge pull request #1270
6ca0713 Fixes blockchain size warnings
2018-04-08 17:39:03 -05:00
luigi1111
8d5690c834 Merge pull request #1269
39ca338 Fixes misaligned symbols/shortcuts and changes Shared RingDB shortcut to 'A'
2018-04-08 17:37:58 -05:00
luigi1111
a8e545891c Merge pull request #1268
0e92a8f Fixes transparent dropdown
2018-04-08 17:36:43 -05:00
stoffu
6ba65d4caa Settings: use checkbox instead of button for daemon mode switching 2018-04-07 14:32:47 +09:00
stoffu
a9331a757f Set daemon address to WalletManager (requires #3576) 2018-04-07 14:10:31 +09:00
stoffu
cd4418dc45 Receive: make tracking optional 2018-04-07 14:09:28 +09:00
Sander Ferdinand
4a96678580 Fixes a bug where progress bars were not 100% filled visually (slightly off) 2018-04-05 11:56:44 +02:00
Sander Ferdinand
1378ae45c3 Reset flickable scrollview to 0 Y position 2018-04-05 11:52:09 +02:00
Sander Ferdinand
3b76636d6b Refactoring signal functions 2018-04-05 10:32:43 +02:00
Sander Ferdinand
6ca0713739 Fixes blockchain size warnings 2018-04-05 09:21:43 +02:00
Sander Ferdinand
39ca338f96 Fixes misaligned symbols/shortcuts and changes Shared RingDB shortcut to 'A' 2018-04-05 08:30:51 +02:00
Sander Ferdinand
0e92a8f723 Fixes transparent dropdown 2018-04-05 08:20:36 +02:00
moneromooo-monero
6ef2a8e21d Wallet: fix listener leak 2018-04-04 16:59:45 +01:00
Michal
ffd49c1777 Updated README.md with new dependencies for Ubuntu 16.04+:
qml-module-qtquick-controls2
    qml-module-qt-labs-folderlistmodel
2018-04-04 11:52:17 +01:00
stoffu
84fad36282 Add missing newline to transfer confirm dialog 2018-04-03 12:29:40 +09:00
stoffu
9393529613 ProgressBar: fix conversion to percentage 2018-04-03 11:51:37 +09:00
Martín Fdez
4e6a4213ff Add Qt Runtime version to settings page 2018-04-01 22:10:30 +02:00
179 changed files with 39921 additions and 32692 deletions

View File

@@ -1,177 +0,0 @@
// Copyright (c) 2014-2018, The Monero Project
//
// All rights reserved.
//
// Redistribution and use in source and binary forms, with or without modification, are
// permitted provided that the following conditions are met:
//
// 1. Redistributions of source code must retain the above copyright notice, this list of
// conditions and the following disclaimer.
//
// 2. Redistributions in binary form must reproduce the above copyright notice, this list
// of conditions and the following disclaimer in the documentation and/or other
// materials provided with the distribution.
//
// 3. Neither the name of the copyright holder nor the names of its contributors may be
// used to endorse or promote products derived from this software without specific
// prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
// THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
// STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
// THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
import QtQuick 2.0
import QtGraphicalEffects 1.0
import "components"
import "pages"
// mbg033 @ 2016-10-08: Not used anymore, to be deleted
Rectangle {
id: root
width: 470
// height: paymentId.y + paymentId.height + 12
height: header.height + header.anchors.topMargin + transferBasic.height
color: "#F0EEEE"
border.width: 1
border.color: "#DBDBDB"
property alias balanceText : balanceText.text;
property alias unlockedBalanceText : availableBalanceText.text;
// repeating signal to the outside world
signal paymentClicked(string address, string paymentId, string amount, int mixinCount,
int priority, string description)
Connections {
target: transferBasic
onPaymentClicked: {
console.log("BasicPanel: paymentClicked")
root.paymentClicked(address, paymentId, amount, mixinCount, priority, description)
}
}
Rectangle {
id: header
anchors.left: parent.left
anchors.right: parent.right
anchors.top: parent.top
anchors.leftMargin: 1
anchors.rightMargin: 1
anchors.topMargin: 30
height: 64
color: "#FFFFFF"
Image {
id: logo
anchors.verticalCenter: parent.verticalCenter
anchors.verticalCenterOffset: -5
anchors.left: parent.left
anchors.leftMargin: 20
source: "images/moneroLogo2.png"
}
Grid {
anchors.verticalCenter: parent.verticalCenter
anchors.right: parent.right
width: 256
columns: 3
Text {
width: 116
height: 20
font.family: "Arial"
font.pixelSize: 12
elide: Text.ElideRight
horizontalAlignment: Text.AlignLeft
verticalAlignment: Text.AlignBottom
color: "#535353"
text: qsTr("Locked Balance:")
}
Text {
id: balanceText
width: 110
height: 20
font.family: "Arial"
font.pixelSize: 18
elide: Text.ElideRight
horizontalAlignment: Text.AlignLeft
verticalAlignment: Text.AlignBottom
color: "#000000"
text: qsTr("78.9239845")
}
Item {
height: 20
width: 20
Image {
anchors.verticalCenter: parent.verticalCenter
anchors.left: parent.left
source: "images/lockIcon.png"
}
}
Text {
width: 116
height: 20
font.family: "Arial"
font.pixelSize: 12
elide: Text.ElideRight
horizontalAlignment: Text.AlignLeft
verticalAlignment: Text.AlignBottom
color: "#535353"
text: qsTr("Available Balance:")
}
Text {
id: availableBalanceText
width: 110
height: 20
font.family: "Arial"
font.pixelSize: 14
elide: Text.ElideRight
horizontalAlignment: Text.AlignLeft
verticalAlignment: Text.AlignBottom
color: "#000000"
text: qsTr("2324.9239845")
}
}
Rectangle {
anchors.left: parent.left
anchors.right: parent.right
anchors.bottom: parent.bottom
height: 1
color: "#DBDBDB"
}
}
Item {
anchors.top: header.bottom
anchors.bottom: parent.bottom
anchors.left: parent.left
anchors.right: parent.right
Transfer {
id : transferBasic
anchors.fill: parent
}
}
// indicate disabled state
// Desaturate {
// anchors.fill: parent
// source: parent
// desaturation: root.enabled ? 0.0 : 1.0
// }
}

View File

@@ -252,7 +252,9 @@ Rectangle {
Flickable {
id:flicker
contentHeight: 500 * scaleRatio
contentHeight: (progressBar.visible)? menuColumn.height + separator.height +
networkStatus.height + progressBar.height + daemonProgressBar.height :
menuColumn.height + separator.height + networkStatus.height
anchors.fill: parent
clip: true
@@ -476,7 +478,7 @@ Rectangle {
anchors.left: parent.left
anchors.right: parent.right
text: qsTr("Shared RingDB") + translationManager.emptyString
symbol: qsTr("S") + translationManager.emptyString
symbol: qsTr("A") + translationManager.emptyString
dotColor: "#FFD781"
under: advancedButton
onClicked: {
@@ -568,15 +570,26 @@ Rectangle {
} // Flickable
Rectangle {
id: separator
anchors.left: parent.left
anchors.right: parent.right
anchors.leftMargin: 0
anchors.rightMargin: 0
anchors.bottom: networkStatus.top;
height: 10 * scaleRatio
color: "transparent"
}
NetworkStatusItem {
id: networkStatus
anchors.left: parent.left
anchors.right: parent.right
anchors.leftMargin: 4
anchors.rightMargin: 4
anchors.leftMargin: 0
anchors.rightMargin: 0
anchors.bottom: (progressBar.visible)? progressBar.top : parent.bottom;
connected: Wallet.ConnectionStatus_Disconnected
height: 58 * scaleRatio
height: 48 * scaleRatio
}
ProgressBar {
@@ -584,7 +597,7 @@ Rectangle {
anchors.left: parent.left
anchors.right: parent.right
anchors.bottom: daemonProgressBar.top
height: 35 * scaleRatio
height: 48 * scaleRatio
syncType: qsTr("Wallet")
visible: networkStatus.connected
}

49
Logger.cpp Normal file
View File

@@ -0,0 +1,49 @@
#include <QCoreApplication>
#include <QStandardPaths>
#include <QFileInfo>
#include <QString>
#include "Logger.h"
#include "wallet/api/wallet2_api.h"
// default log path by OS (should be writable)
static const QString default_name = "monero-wallet-gui.log";
#if defined(Q_OS_ANDROID) || defined(Q_OS_IOS)
static const QString osPath = QStandardPaths::standardLocations(QStandardPaths::AppDataLocation).at(0);
#elif defined(Q_OS_WIN)
static const QString osPath = QCoreApplication::applicationDirPath();
#elif defined(Q_OS_MAC)
static const QString osPath = QStandardPaths::standardLocations(QStandardPaths::HomeLocation).at(0) + "/Library/Logs";
#else // linux + bsd
static const QString osPath = QStandardPaths::standardLocations(QStandardPaths::HomeLocation).at(0);
#endif
// return the absolute path of the logfile
const QString getLogPath(const QString logPath)
{
const QFileInfo fi(logPath);
if(!logPath.isEmpty() && !fi.isDir())
return fi.absoluteFilePath();
else
return osPath + "/" + default_name;
}
// custom messageHandler that foward all messages to easylogging
void messageHandler(QtMsgType type, const QMessageLogContext &context, const QString &message)
{
(void) context; // context isn't used in release builds
const std::string cat = "frontend"; // category displayed in the log
const std::string msg = message.toStdString();
switch(type)
{
case QtDebugMsg: Monero::Wallet::debug(cat, msg); break;
case QtInfoMsg: Monero::Wallet::info(cat, msg); break;
case QtWarningMsg: Monero::Wallet::warning(cat, msg); break;
case QtCriticalMsg: Monero::Wallet::error(cat, msg); break;
case QtFatalMsg: Monero::Wallet::error(cat, msg); break;
}
}

8
Logger.h Normal file
View File

@@ -0,0 +1,8 @@
#ifndef LOGGER_H
#define LOGGER_H
const QString getLogPath(const QString logPath);
void messageHandler(QtMsgType type, const QMessageLogContext &context, const QString &message);
#endif // LOGGER_H

View File

@@ -50,6 +50,7 @@ Rectangle {
property string unlockedBalanceText
property int minHeight: (appWindow.height > 800) ? appWindow.height : 800 * scaleRatio
property alias contentHeight: mainFlickable.contentHeight
property alias flickable: mainFlickable
// property int headerHeight: header.height
property Transfer transferView: Transfer { }
@@ -120,7 +121,7 @@ Rectangle {
}, State {
name: "Receive"
PropertyChanges { target: root; currentView: receiveView }
PropertyChanges { target: mainFlickable; contentHeight: 1000 * scaleRatio }
PropertyChanges { target: mainFlickable; contentHeight: receiveView.receiveHeight + 100 }
}, State {
name: "TxKey"
PropertyChanges { target: root; currentView: txkeyView }
@@ -128,7 +129,7 @@ Rectangle {
}, State {
name: "SharedRingDB"
PropertyChanges { target: root; currentView: sharedringdbView }
PropertyChanges { target: mainFlickable; contentHeight: minHeight }
PropertyChanges { target: mainFlickable; contentHeight: sharedringdbView.panelHeight + 100 }
}, State {
name: "AddressBook"
PropertyChanges { target: root; currentView: addressBookView }
@@ -140,7 +141,7 @@ Rectangle {
}, State {
name: "Settings"
PropertyChanges { target: root; currentView: settingsView }
PropertyChanges { target: mainFlickable; contentHeight: 2000 * scaleRatio }
PropertyChanges { target: mainFlickable; contentHeight: settingsView.settingsHeight + 100 }
}, State {
name: "Mining"
PropertyChanges { target: root; currentView: miningView }

View File

@@ -69,11 +69,11 @@ Packaging for your favorite distribution would be a welcome contribution!
### On Linux:
(Tested on Ubuntu 16.04 x86, 16.10 x64, Gentoo x64 and Linux Mint 18 "Sarah" - Cinnamon x64)
(Tested on Ubuntu 17.10 x64, Ubuntu 18.04 x64 and Gentoo x64)
1. Install Monero dependencies
- For Ubuntu and Mint
- For Debian distributions (Debian, Ubuntu, Mint, Tails...)
`sudo apt install build-essential cmake libboost-all-dev miniupnpc libunbound-dev graphviz doxygen libunwind8-dev pkg-config libssl-dev libzmq3-dev`
@@ -81,27 +81,13 @@ Packaging for your favorite distribution would be a welcome contribution!
`sudo emerge app-arch/xz-utils app-doc/doxygen dev-cpp/gtest dev-libs/boost dev-libs/expat dev-libs/openssl dev-util/cmake media-gfx/graphviz net-dns/unbound net-libs/ldns net-libs/miniupnpc net-libs/zeromq sys-libs/libunwind`
2. Grab an up-to-date copy of the monero-gui repository
2. Install Qt:
`git clone https://github.com/monero-project/monero-gui.git`
*Note*: Qt 5.7 is the minimum version required to build the GUI. This makes **some** distributions (mostly based on debian, like Ubuntu 16.x or Linux Mint 18.x) obsolete. You can still build the GUI if you install an [official Qt release](https://wiki.qt.io/Install_Qt_5_on_Ubuntu), but this is not officially supported.
3. Go into the repository
- For Ubuntu 17.10+
`cd monero-gui`
4. Install the GUI dependencies
- For Ubuntu 16.04 x86
`sudo apt install qtbase5-dev qt5-default qtdeclarative5-dev qml-module-qtquick-controls qml-module-qtquick-xmllistmodel qttools5-dev-tools qml-module-qtquick-dialogs`
- For Ubuntu 16.04+ x64
`sudo apt install qtbase5-dev qt5-default qtdeclarative5-dev qml-module-qtquick-controls qml-module-qtquick-xmllistmodel qttools5-dev-tools qml-module-qtquick-dialogs qml-module-qt-labs-settings libqt5qml-graphicaleffects`
- For Linux Mint 18 "Sarah" - Cinnamon x64
`sudo apt install qml-module-qt-labs-settings qml-module-qtgraphicaleffects`
`sudo apt install qtbase5-dev qt5-default qtdeclarative5-dev qml-module-qtquick-controls qml-module-qtquick-controls2 qml-module-qtquick-dialogs qml-module-qtquick-xmllistmodel qml-module-qt-labs-settings qml-module-qt-labs-folderlistmodel qttools5-dev-tools`
- For Gentoo
@@ -109,7 +95,7 @@ Packaging for your favorite distribution would be a welcome contribution!
- Optional : To build the flag `WITH_SCANNER`
- For Ubuntu and Mint
- For Ubuntu
`sudo apt install qtmultimedia5-dev qml-module-qtmultimedia libzbar-dev`
@@ -119,15 +105,17 @@ Packaging for your favorite distribution would be a welcome contribution!
`emerge dev-qt/qtmultimedia:5 media-gfx/zbar`
5. Build the GUI
- For Ubuntu and Mint
3. Clone repository
`./build.sh`
`git clone https://github.com/monero-project/monero-gui.git`
- For Gentoo
4. Build
`QT_SELECT=5 ./build.sh`
```
cd monero-gui
./build.sh
```
The executable can be found in the build/release/bin folder.
@@ -194,57 +182,47 @@ More info: http://stackoverflow.com/a/35098040/1683164
### On Windows:
1. Install [msys2](http://msys2.github.io/), follow the instructions on that page on how to update packages to the latest versions
The Monero GUI on Windows is 64 bits only; 32-bit Windows GUI builds are not officially supported anymore.
2. Install Monero dependencies as described in [monero documentation](https://github.com/monero-project/monero) into msys2 environment
**As we only build application for x86, install only dependencies for x86 architecture (i686 in package name)**
```
pacman -S mingw-w64-i686-toolchain make mingw-w64-i686-cmake mingw-w64-i686-boost mingw-w64-i686-openssl mingw-w64-i686-zeromq mingw-w64-i686-libsodium
1. Install [MSYS2](https://www.msys2.org/), follow the instructions on that page on how to update system and packages to the latest versions
```
2. Open an 64-bit MSYS2 shell: Use the *MSYS2 MinGW 64-bit* shortcut, or use the `msys2_shell.cmd` batch file with a `-mingw64` parameter
3. Install git into msys2 environment
3. Install MSYS2 packages for Monero dependencies; the needed 64-bit packages have `x86_64` in their names
```
pacman -S mingw-w64-x86_64-toolchain make mingw-w64-x86_64-cmake mingw-w64-x86_64-boost mingw-w64-x86_64-openssl mingw-w64-x86_64-zeromq mingw-w64-x86_64-libsodium
```
You find more details about those dependencies in the [Monero documentation](https://github.com/monero-project/monero). Note that that there is no more need to compile Boost from source; like everything else, you can install it now with a MSYS2 package.
4. Install Qt5
```
pacman -S mingw-w64-x86_64-qt5
```
There is no more need to download some special installer from the Qt website, the standard MSYS2 package for Qt will do in almost all circumstances.
5. Install git
```
pacman -S git
```
4. Install Qt5 from [official site](https://www.qt.io/download-open-source/)
- download unified installer, run and select following options:
- Qt > Qt 5.7 > MinGW 5.3.0 32 bit
- Tools > MinGW 5.3.0
- continue with installation
6. Clone repository
5. Open ```MinGW-w64 Win32 Shell``` shell
```%MSYS_ROOT%\msys2_shell.cmd -mingw32```
Where ```%MSYS_ROOT%``` will be ```c:\msys32``` if your host OS is x86-based or ```c:\msys64``` if your host OS
is x64-based
6. Install the latest version of boost, specifically the required static libraries
```
cd
wget http://sourceforge.net/projects/boost/files/boost/1.63.0/boost_1_63_0.tar.bz2
tar xjf boost_1_63_0.tar.bz2
cd boost_1_63_0
./bootstrap.sh mingw
./b2 --prefix=/mingw32/boost --layout=tagged --without-mpi --without-python toolset=gcc address-model=32 variant=debug,release link=static threading=multi runtime-link=static -j$(nproc) install
```
7. Clone repository
```
cd
git clone https://github.com/monero-project/monero-gui.git
```
8. Build the GUI
7. Build
```
cd monero-gui
export PATH=$(ls -rd /c/Qt/5.[6,7,8]/mingw53_32/bin | head -1):$PATH
./build.sh
cd build
make deploy
```
The executable can be found in the ```.\release\bin``` directory.
The executable can be found in the `.\release\bin` directory.

View File

@@ -25,19 +25,12 @@ bool TranslationManager::setLanguage(const QString &language)
return true;
}
// translations are compiled into app binary
#ifdef Q_OS_MACX
QString dir = qApp->applicationDirPath() + "/../Resources/translations";
#else
QString dir = qApp->applicationDirPath() + "/translations";
#endif
QString filename = "monero-core_" + language;
qDebug("%s: loading translation file '%s' from '%s",
qDebug("%s: loading translation file '%s' from '%s'",
__FUNCTION__, qPrintable(filename), qPrintable(dir));
if (m_translator->load(filename, dir)) {
qDebug("%s: translation for language '%s' loaded successfully",
__FUNCTION__, qPrintable(language));
@@ -45,11 +38,24 @@ bool TranslationManager::setLanguage(const QString &language)
qApp->installTranslator(m_translator);
emit languageChanged();
return true;
} else {
qCritical("%s: error loading translation for language '%s'",
__FUNCTION__, qPrintable(language));
return false;
}
qDebug("%s: couldn't load translation file '%s' from '%s'",
__FUNCTION__, qPrintable(filename), qPrintable(dir));
qDebug("%s: loading embedded translation file '%s'",
__FUNCTION__, qPrintable(filename));
if (m_translator->load(filename, ":")) {
qDebug("%s: embedded translation for language '%s' loaded successfully",
__FUNCTION__, qPrintable(language));
qApp->installTranslator(m_translator);
emit languageChanged();
return true;
}
qCritical("%s: error loading translation for language '%s'",
__FUNCTION__, qPrintable(language));
return false;
}
TranslationManager *TranslationManager::instance()

View File

@@ -1,52 +0,0 @@
#!/bin/bash
# MONERO_URL=https://github.com/monero-project/monero.git
# MONERO_BRANCH=master
CPU_CORE_COUNT=$(grep -c ^processor /proc/cpuinfo 2>/dev/null || sysctl -n hw.ncpu)
pushd $(pwd)
ROOT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
source $ROOT_DIR/utils.sh
INSTALL_DIR=$ROOT_DIR/wallet
MONERO_DIR=$ROOT_DIR/monero
mkdir -p $MONERO_DIR/build/release
pushd $MONERO_DIR/build/release
# reusing function from "utils.sh"
platform=$(get_platform)
pushd $MONERO_DIR/build/release/src/wallet
make -j$CPU_CORE_COUNT
make install -j$CPU_CORE_COUNT
popd
# unbound is one more dependency. can't be merged to the wallet_merged
# since filename conflict (random.c.obj)
# for Linux, we use libunbound shipped with the system, so we don't need to build it
if [ "$platform" != "linux" ]; then
echo "Building libunbound..."
pushd $MONERO_DIR/build/release/external/unbound
# no need to make, it was already built as dependency for libwallet
# make -j$CPU_CORE_COUNT
make install -j$CPU_CORE_COUNT
popd
fi
popd

View File

@@ -57,7 +57,12 @@ RowLayout {
radius: 3
y: 0
color: "transparent"
border.color: checkBox.checked ? Qt.rgba(1, 1, 1, 0.35) : Qt.rgba(1, 1, 1, 0.25)
border.color:
if(checkBox.checked){
return MoneroComponents.Style.inputBorderColorActive;
} else {
return MoneroComponents.Style.inputBorderColorInActive;
}
}
Rectangle {

View File

@@ -27,22 +27,23 @@
// THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
import QtQuick 2.0
import QtQuick.Controls 1.4
import QtQuick.Controls 2.0
import QtQuick.Dialogs 1.2
import QtQuick.Layouts 1.1
import QtQuick.Controls.Styles 1.4
import QtQuick.Window 2.0
import QtQuick.Window 2.2
import "../components" as MoneroComponents
import "../js/Windows.js" as Windows
import "../js/Utils.js" as Utils
Window {
id: root
modality: Qt.ApplicationModal
flags: Qt.Window | Qt.FramelessWindowHint
property alias title: dialogTitle.text
color: "black"
flags: Windows.flags
property alias text: dialogContent.text
property alias content: root.text
property alias okVisible: okButton.visible
property alias textArea: dialogContent
property var icon
@@ -50,15 +51,25 @@ Window {
signal accepted()
signal rejected()
onClosing: {
inactiveOverlay.visible = false;
}
function open() {
show()
inactiveOverlay.visible = true;
show();
}
// TODO: implement without hardcoding sizes
width: 480
height: 280
// background gradient
Image {
anchors.fill: parent
source: "../images/middlePanelBg.jpg"
}
// Make window draggable
MouseArea {
anchors.fill: parent
@@ -70,79 +81,136 @@ Window {
ColumnLayout {
id: mainLayout
spacing: 10
anchors { fill: parent; margins: 35 }
anchors.fill: parent
anchors.topMargin: 20 * scaleRatio
anchors.margins: 35 * scaleRatio
spacing: 20 * scaleRatio
RowLayout {
id: column
//anchors {fill: parent; margins: 16 }
Layout.alignment: Qt.AlignHCenter
id: content
Layout.fillWidth: true
Layout.fillHeight: true
Label {
id: dialogTitle
horizontalAlignment: Text.AlignHCenter
font.pixelSize: 32
font.family: "Arial"
color: "#555555"
}
Flickable {
id: flickable
anchors.fill: parent
}
TextArea.flickable: TextArea {
id : dialogContent
textFormat: TextEdit.RichText
selectByMouse: true
selectByKeyboard: true
anchors.fill: parent
font.family: "Ariel"
font.pixelSize: 14 * scaleRatio
color: MoneroComponents.Style.defaultFontColor
selectionColor: MoneroComponents.Style.dimmedFontColor
wrapMode: TextEdit.Wrap
readOnly: true
background: Rectangle {
color: "transparent"
anchors.fill: parent
border.color: Qt.rgba(255, 255, 255, 0.25);
border.width: 1
radius: 4
}
function logCommand(msg){
msg = log_color(msg, "lime");
textArea.append(msg);
}
function logMessage(msg){
msg = msg.trim();
var color = "white";
if(msg.toLowerCase().indexOf('error') >= 0){
color = "red";
} else if (msg.toLowerCase().indexOf('warning') >= 0){
color = "yellow";
}
RowLayout {
TextArea {
id : dialogContent
Layout.fillWidth: true
Layout.fillHeight: true
font.family: "Arial"
textFormat: TextEdit.AutoText
readOnly: true
font.pixelSize: 12
}
}
// format multi-lines
if(msg.split("\n").length >= 2){
msg = msg.split("\n").join('<br>');
}
// Ok/Cancel buttons
RowLayout {
id: buttons
spacing: 60
Layout.alignment: Qt.AlignHCenter
log(msg, color);
}
function log_color(msg, color){
return "<span style='color: " + color + ";' >" + msg + "</span>";
}
function log(msg, color){
var timestamp = Utils.formatDate(new Date(), {
weekday: undefined,
month: "numeric",
timeZoneName: undefined
});
MoneroComponents.StandardButton {
id: okButton
width: 120
fontSize: 14
text: qsTr("Close") + translationManager.emptyString
onClicked: {
root.close()
root.accepted()
var _timestamp = log_color("[" + timestamp + "]", "#FFFFFF");
var _msg = log_color(msg, color);
textArea.append(_timestamp + " " + _msg);
// scroll to bottom
//if(flickable.contentHeight > content.height){
// flickable.contentY = flickable.contentHeight + 20;
//}
}
}
ScrollBar.vertical: ScrollBar {
// TODO: scrollbar always visible is buggy.
// QT 5.9 introduces `policy: ScrollBar.AlwaysOn`
contentItem.opacity: 1
anchors.top: flickable.top
anchors.left: flickable.right
anchors.leftMargin: 10 * scaleRatio
anchors.bottom: flickable.bottom
}
}
}
RowLayout {
Layout.fillWidth: true
MoneroComponents.LineEdit {
id: sendCommandText
width: 300
Layout.fillWidth: true
placeholderText: qsTr("command + enter (e.g help)") + translationManager.emptyString
onAccepted: {
if(text.length > 0)
daemonManager.sendCommand(text,currentWallet.nettype);
if(text.length > 0) {
textArea.logCommand(">>> " + text)
daemonManager.sendCommand(text, currentWallet.nettype);
}
text = ""
}
}
// Status button
// MoneroComponents.StandardButton {
// id: sendCommandButton
// enabled: sendCommandText.text.length > 0
// fontSize: 14
// text: qsTr("Send command")
// onClicked: {
// daemonManager.sendCommand(sendCommandText.text,currentWallet.testnet);
// }
// }
}
}
// window borders
Rectangle {
anchors.bottom: parent.bottom
anchors.top: parent.top
anchors.left: parent.left
width:1
color: "#2F2F2F"
z: 2
}
Rectangle {
anchors.bottom: parent.bottom
anchors.top: parent.top
anchors.right: parent.right
width:1
color: "#2F2F2F"
z: 2
}
Rectangle {
anchors.bottom: parent.bottom
anchors.right: parent.right
anchors.left: parent.left
height:1
color: "#2F2F2F"
z: 2
}
}

View File

@@ -38,6 +38,8 @@ TextField {
horizontalAlignment: TextInput.AlignLeft
selectByMouse: true
color: MoneroComponents.Style.defaultFontColor
selectionColor: MoneroComponents.Style.dimmedFontColor
selectedTextColor: MoneroComponents.Style.defaultFontColor
background: Rectangle {
color: "transparent"

View File

@@ -46,6 +46,7 @@ Item {
signal rejected()
function open() {
inactiveOverlay.visible = true
leftPanel.enabled = false
middlePanel.enabled = false
titleBar.enabled = false
@@ -56,6 +57,7 @@ Item {
}
function close() {
inactiveOverlay.visible = false
leftPanel.enabled = true
middlePanel.enabled = true
titleBar.enabled = true
@@ -153,12 +155,4 @@ Item {
}
}
}
Rectangle {
id: bg
z: parent.z + 1
anchors.fill: parent
color: "black"
opacity: 0.8
}
}

View File

@@ -47,6 +47,8 @@ TextArea {
horizontalAlignment: TextInput.AlignLeft
selectByMouse: true
color: MoneroComponents.Style.defaultFontColor
selectionColor: MoneroComponents.Style.dimmedFontColor
selectedTextColor: MoneroComponents.Style.defaultFontColor
wrapMode: {
if(wrapAnywhere){
@@ -58,7 +60,7 @@ TextArea {
onTextChanged: {
if(addressValidation){
// js replacement for `RegExpValidator { regExp: /[0-9A-Fa-f]{95}/g }`
textArea.text = textArea.text.replace(/[^a-z0-9]/gi,'');
textArea.text = textArea.text.replace(/[^a-z0-9.@]/gi,'');
var address_ok = TxUtils.checkAddress(textArea.text, appWindow.persistentSettings.nettype);
if(!address_ok) error = true;
else error = false;

View File

@@ -26,7 +26,7 @@
// STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
// THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
import QtQuick 2.0
import QtQuick 2.5
import QtQuick.Layouts 1.1
import "../components" as MoneroComponents
@@ -43,6 +43,7 @@ Item {
property string fontFamily: ""
property alias wrapMode: label.wrapMode
property alias horizontalAlignment: label.horizontalAlignment
property alias hoveredLink: label.hoveredLink
signal linkActivated()
height: label.height * scaleRatio
width: label.width * scaleRatio

View File

@@ -43,7 +43,6 @@ Rectangle {
width: labelButtonText.width + 14
anchors.right: copyButton.left
anchors.rightMargin: 6
visible: isValidOpenAliasAddress(addressLine.text)
Text {
id: labelButtonText

View File

@@ -32,7 +32,7 @@ import "../components" as MoneroComponents
Label {
id: item
fontSize: 17 * scaleRatio
fontSize: 18 * scaleRatio
Rectangle {
anchors.top: item.bottom
@@ -43,4 +43,10 @@ Label {
color: MoneroComponents.Style.dividerColor
opacity: MoneroComponents.Style.dividerOpacity
}
MouseArea {
anchors.fill: parent
acceptedButtons: Qt.NoButton
cursorShape: parent.hoveredLink ? Qt.PointingHandCursor : Qt.ArrowCursor
}
}

View File

@@ -40,7 +40,7 @@ Item {
property bool placeholderFontBold: false
property int placeholderFontSize: 18 * scaleRatio
property string placeholderColor: MoneroComponents.Style.defaultFontColor
property real placeholderOpacity: 0.25
property real placeholderOpacity: 0.35
property alias validator: input.validator
property alias readOnly : input.readOnly
@@ -52,9 +52,9 @@ Item {
property bool copyButton: false
property string borderColor: {
if(input.activeFocus){
return Qt.rgba(255, 255, 255, 0.35);
return MoneroComponents.Style.inputBorderColorActive;
} else {
return Qt.rgba(255, 255, 255, 0.25);
return MoneroComponents.Style.inputBorderColorInActive;
}
}
property bool borderDisabled: false

View File

@@ -112,7 +112,7 @@ ColumnLayout {
anchors.verticalCenter: parent.verticalCenter
anchors.left: parent.left
anchors.leftMargin: 10 * scaleRatio
opacity: 0.25
opacity: 0.35
color: MoneroComponents.Style.defaultFontColor
font.family: MoneroComponents.Style.fontRegular.name
font.pixelSize: 18 * scaleRatio
@@ -125,11 +125,11 @@ ColumnLayout {
border.width: 1
border.color: {
if(multiLine.error && multiLine.text !== ""){
return Qt.rgba(255, 0, 0, 0.45);
return MoneroComponents.Style.inputBorderColorInvalid;
} else if(multiLine.activeFocus){
return Qt.rgba(255, 255, 255, 0.35);
return MoneroComponents.Style.inputBorderColorActive;
} else {
return Qt.rgba(255, 255, 255, 0.25);
return MoneroComponents.Style.inputBorderColorInActive;
}
}
radius: 4

View File

@@ -123,8 +123,10 @@ Rectangle {
Text {
id: symbolText
anchors.centerIn: parent
font.pixelSize: 11 * scaleRatio
anchors.right: parent.right
anchors.rightMargin: 44 * scaleRatio
anchors.verticalCenter: parent.verticalCenter
font.pixelSize: 12 * scaleRatio
font.bold: true
color: button.checked || buttonArea.containsMouse ? "#FFFFFF" : dot.color
visible: appWindow.ctrlPressed

View File

@@ -38,13 +38,7 @@ import "../components" as MoneroComponents
Item {
id: root
visible: false
Rectangle {
id: bg
z: parent.z + 1
anchors.fill: parent
color: "black"
opacity: 0.8
}
z: parent.z + 2
property alias password: passwordInput1.text
@@ -54,6 +48,7 @@ Item {
signal closeCallback()
function open() {
inactiveOverlay.visible = true
leftPanel.enabled = false
middlePanel.enabled = false
titleBar.enabled = false
@@ -65,6 +60,7 @@ Item {
}
function close() {
inactiveOverlay.visible = false
leftPanel.enabled = true
middlePanel.enabled = true
titleBar.enabled = true
@@ -86,7 +82,7 @@ Item {
}
ColumnLayout {
z: bg.z + 1
z: inactiveOverlay.z + 1
id: mainLayout
spacing: 10
anchors { fill: parent; margins: 35 * scaleRatio }

View File

@@ -38,6 +38,7 @@ import "../components" as MoneroComponents
Item {
id: root
visible: false
z: parent.z + 2
property alias password: passwordInput.text
property string walletName
@@ -48,6 +49,7 @@ Item {
signal closeCallback()
function open(walletName) {
inactiveOverlay.visible = true // draw appwindow inactive
root.walletName = walletName ? walletName : ""
leftPanel.enabled = false
middlePanel.enabled = false
@@ -59,6 +61,7 @@ Item {
}
function close() {
inactiveOverlay.visible = false
leftPanel.enabled = true
middlePanel.enabled = true
titleBar.enabled = true
@@ -67,7 +70,7 @@ Item {
}
ColumnLayout {
z: bg.z + 1
z: inactiveOverlay.z + 1
id: mainLayout
spacing: 10
anchors { fill: parent; margins: 35 * scaleRatio }
@@ -166,11 +169,4 @@ Item {
}
}
Rectangle {
id: bg
anchors.fill: parent
color: "black"
opacity: 0.8
}
}

View File

@@ -62,11 +62,7 @@ Item {
//radius: 2
width: row.x
color: {
if(item.fillLevel < 3) return "#FF6C3C"
if(item.fillLevel < 13) return "#AAFFBB"
return "#36B25C"
}
color: "#FF6C3C"
Timer {
interval: 500

View File

@@ -71,11 +71,7 @@ Item {
//radius: 2
width: row.x
color: {
if(item.fillLevel < 5) return "#FF6C3C"
if(item.fillLevel < 13) return "#AAFFBB"
return "#36B25C"
}
color: "#FF6C3C"
Timer {
interval: 500

View File

@@ -42,7 +42,7 @@ Rectangle {
function updateProgress(currentBlock,targetBlock, blocksToSync, statusTxt){
if(targetBlock > 0) {
var remaining = (currentBlock < targetBlock) ? targetBlock - currentBlock : 0
var progressLevel = (blocksToSync > 0 && blocksToSync != remaining) ? (100*(blocksToSync - remaining)/blocksToSync).toFixed(0) : 100*(currentBlock / targetBlock).toFixed(0)
var progressLevel = (blocksToSync > 0 && blocksToSync != remaining) ? (100*(blocksToSync - remaining)/blocksToSync).toFixed(0) : (100*(currentBlock / targetBlock)).toFixed(0)
fillLevel = progressLevel
if(typeof statusTxt != "undefined" && statusTxt != "") {
progressText.text = statusTxt;
@@ -100,7 +100,7 @@ Rectangle {
anchors.bottom: parent.bottom
anchors.left: parent.left
height: bar.height
property int maxWidth: bar.width - 4 * scaleRatio
property int maxWidth: bar.width * scaleRatio
width: (maxWidth * fillLevel) / 100
radius: 8
// could change color based on progressbar status; if(item.fillLevel < 99 )

101
components/RadioButton.qml Normal file
View File

@@ -0,0 +1,101 @@
// Copyright (c) 2014-2018, The Monero Project
//
// All rights reserved.
//
// Redistribution and use in source and binary forms, with or without modification, are
// permitted provided that the following conditions are met:
//
// 1. Redistributions of source code must retain the above copyright notice, this list of
// conditions and the following disclaimer.
//
// 2. Redistributions in binary form must reproduce the above copyright notice, this list
// of conditions and the following disclaimer in the documentation and/or other
// materials provided with the distribution.
//
// 3. Neither the name of the copyright holder nor the names of its contributors may be
// used to endorse or promote products derived from this software without specific
// prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
// THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
// STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
// THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
import QtQuick 2.0
import QtQuick.Layouts 1.1
import "../components" as MoneroComponents
RowLayout {
id: radioButton
property alias text: label.text
property bool checked: false
property int fontSize: 14 * scaleRatio
property alias fontColor: label.color
signal clicked()
height: 26 * scaleRatio
// legacy properties
property var checkedColor: "white"
property var borderColor: checked ? Qt.rgba(1, 1, 1, 0.35) : Qt.rgba(1, 1, 1, 0.25)
function toggle(){
radioButton.checked = !radioButton.checked
radioButton.clicked()
}
RowLayout {
Layout.fillWidth: true
Rectangle {
id: button
anchors.left: parent.left
y: 0
color: "transparent"
border.color: borderColor
width: radioButton.height
height: radioButton.height
radius: radioButton.height
Rectangle {
visible: radioButton.checked
anchors.horizontalCenter: parent.horizontalCenter
anchors.verticalCenter: parent.verticalCenter
color: checkedColor
width: 10 * scaleRatio
height: 10 * scaleRatio
radius: 10
opacity: 0.8
}
MouseArea {
anchors.fill: parent
cursorShape: Qt.PointingHandCursor
onClicked: {
toggle()
}
}
}
Text {
id: label
anchors.left: button.right
anchors.leftMargin: !isMobile ? 10 : 8
color: MoneroComponents.Style.defaultFontColor
font.family: MoneroComponents.Style.fontRegular.name
font.pixelSize: radioButton.fontSize
wrapMode: Text.Wrap
MouseArea {
anchors.fill: parent
cursorShape: Qt.PointingHandCursor
onClicked: {
toggle()
}
}
}
}
}

View File

@@ -48,7 +48,7 @@ GridLayout {
property bool placeholderFontBold: false
property int placeholderFontSize: 18 * scaleRatio
property string placeholderColor: MoneroComponents.Style.defaultFontColor
property real placeholderOpacity: 0.25
property real placeholderOpacity: 0.35
property string lineEditBorderColor: Qt.rgba(0, 0, 0, 0.15)
property string lineEditBackgroundColor: "white"

View File

@@ -34,8 +34,10 @@ import "../components" as MoneroComponents
Item {
id: button
property string rightIcon: ""
property string rightIconInactive: ""
property string icon: ""
property string textColor: button.enabled? MoneroComponents.Style.buttonTextColor: MoneroComponents.Style.buttonTextColorDisabled
property string textAlign: rightIcon !== "" ? "left" : "center"
property bool small: false
property alias text: label.text
property int fontSize: {
@@ -45,9 +47,21 @@ Item {
signal clicked()
// Dynamic height/width
Layout.minimumWidth: (label.contentWidth > 50)? label.contentWidth + 22 : 60
height: small ? 30 * scaleRatio : 36 * scaleRatio
Layout.minimumWidth: {
var _padding = 22;
if(button.rightIcon !== ""){
_padding += 60;
}
var _width = label.contentWidth + _padding;
if(_width <= 50) {
return 60;
}
return _width;
}
height: small ? 30 * scaleRatio : 36 * scaleRatio
function doClick() {
// Android workaround
@@ -87,7 +101,8 @@ Item {
anchors.verticalCenter: parent.verticalCenter
anchors.left: parent.left
anchors.right: parent.right
horizontalAlignment: Text.AlignHCenter
horizontalAlignment: textAlign === "center" ? Text.AlignHCenter : Text.AlignLeft
anchors.leftMargin: textAlign === "center" ? 0 : 11
font.family: MoneroComponents.Style.fontBold.name
font.bold: true
font.pixelSize: buttonArea.pressed ? button.fontSize - 1 : button.fontSize
@@ -101,6 +116,21 @@ Item {
source: parent.icon
}
Image {
visible: parent.rightIcon !== ""
anchors.right: parent.right
anchors.rightMargin: 11 * scaleRatio
anchors.verticalCenter: parent.verticalCenter
width: parent.small ? 16 * scaleRatio : 20 * scaleRatio
height: parent.small ? 16 * scaleRatio : 20 * scaleRatio
source: {
if(parent.rightIconInactive !== "" && !parent.enabled){
return parent.rightIconInactive;
}
return parent.rightIcon;
}
}
MouseArea {
id: buttonArea
anchors.fill: parent

View File

@@ -43,6 +43,7 @@ Item {
property int dropdownHeight: 42
property int fontHeaderSize: 16 * scaleRatio
property int fontItemSize: 14 * scaleRatio
property string colorBorder: MoneroComponents.Style.inputBorderColorInActive
property string colorHeaderBackground: "transparent"
property bool headerBorder: true
property bool headerFontBold: false
@@ -80,7 +81,7 @@ Item {
Rectangle {
color: dropdown.colorHeaderBackground
border.width: dropdown.headerBorder ? 1 : 0
border.color: Qt.rgba(1, 1, 1, 0.25)
border.color: dropdown.colorBorder
radius: 4
anchors.fill: parent
}

View File

@@ -17,6 +17,9 @@ QtObject {
property string inputBoxBackgroundError: "#FFDDDD"
property string inputBoxColor: "white"
property string legacy_placeholderFontColor: "#BABABA"
property string inputBorderColorActive: Qt.rgba(255, 255, 255, 0.38)
property string inputBorderColorInActive: Qt.rgba(255, 255, 255, 0.32)
property string inputBorderColorInvalid: Qt.rgba(255, 0, 0, 0.40)
property string buttonBackgroundColor: "#FA6800"
property string buttonBackgroundColorHover: "#E65E00"
@@ -25,5 +28,5 @@ QtObject {
property string buttonTextColor: "white"
property string buttonTextColorDisabled: "black"
property string dividerColor: "white"
property real dividerOpacity: 0.25
property real dividerOpacity: 0.20
}

View File

@@ -1,160 +0,0 @@
// Copyright (c) 2014-2018, The Monero Project
//
// All rights reserved.
//
// Redistribution and use in source and binary forms, with or without modification, are
// permitted provided that the following conditions are met:
//
// 1. Redistributions of source code must retain the above copyright notice, this list of
// conditions and the following disclaimer.
//
// 2. Redistributions in binary form must reproduce the above copyright notice, this list
// of conditions and the following disclaimer in the documentation and/or other
// materials provided with the distribution.
//
// 3. Neither the name of the copyright holder nor the names of its contributors may be
// used to endorse or promote products derived from this software without specific
// prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
// THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
// STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
// THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
import QtQuick 2.0
import moneroComponents.Clipboard 1.0
import "../components" as MoneroComponents
ListView {
id: listView
clip: true
boundsBehavior: ListView.StopAtBounds
highlightMoveDuration: 0
highlightFollowsCurrentItem: true
anchors.topMargin: 0
spacing: 0
delegate: Rectangle {
id: delegate
height: 80
color: 'transparent';
anchors.topMargin: 0
width: listView.width
clip: true
MoneroComponents.LineEditMulti {
id: addressLine
fontSize: 14
readOnly: true
width: parent.width
anchors.top: parent.top
anchors.left: parent.left
anchors.right: parent.right
anchors.leftMargin: 10
anchors.topMargin: 12
anchors.rightMargin: 54
anchors.bottomMargin: 0
text: address
showingHeader: false
showBorder: false
addressValidation: false
}
MoneroComponents.IconButton {
id: clipboardButton
imageSource: "../images/copyToClipboard.png"
onClicked: {
console.log(addressLine.text + " copied to clipboard");
clipboard.setText(addressLine.text);
appWindow.showStatusMessage(qsTr("Address copied to clipboard"),3);
}
anchors.right: parent.right
anchors.rightMargin: 0
anchors.verticalCenter: parent.verticalCenter
}
Text {
id: indexText
anchors.top: addressLine.bottom
anchors.left: parent.left
anchors.leftMargin: 20
font.family: "Arial"
font.bold: true
font.pixelSize: 12
color: "#444444"
text: "#" + index
}
Text {
id: labelText
anchors.top: addressLine.bottom
anchors.left: indexText.right
anchors.right: parent.right
anchors.leftMargin: 10
font.family: "Arial"
font.bold: true
font.pixelSize: 12
color: MoneroComponents.Style.greyFontColor
text: label
}
MouseArea {
z: 5
anchors.top: parent.top
anchors.left: parent.left
anchors.bottom: parent.bottom
anchors.right: parent.right
anchors.rightMargin: clipboardButton.width
cursorShape: Qt.PointingHandCursor
onClicked: {
listView.currentIndex = index;
}
}
Rectangle {
anchors.left: parent.left
anchors.top: parent.top
anchors.bottom: parent.bottom
width: 1
color: MoneroComponents.Style.grey
z: 6
}
Rectangle {
anchors.right: parent.right
anchors.top: parent.top
anchors.bottom: parent.bottom
width: 1
color: MoneroComponents.Style.grey
z: 6
}
Rectangle {
anchors.right: parent.right
anchors.left: parent.left
anchors.bottom: parent.bottom
color: MoneroComponents.Style.grey
height: 1
z: 6
}
Rectangle {
width: 3
color: 'white'
visible: listView.currentIndex == index
anchors.left: parent.left
anchors.top: parent.top
anchors.bottom: parent.bottom
}
}
}

View File

@@ -5,6 +5,7 @@ import "../components" as MoneroComponents
TextEdit {
color: MoneroComponents.Style.defaultFontColor
font.family: MoneroComponents.Style.fontRegular.name
selectionColor: MoneroComponents.Style.dimmedFontColor
wrapMode: Text.Wrap
readOnly: true
selectByMouse: true

View File

@@ -26,46 +26,62 @@
// STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
// THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
import QtQuick 2.2
import QtQuick 2.5
import QtQuick.Window 2.0
import QtQuick.Layouts 1.1
Rectangle {
id: titleBar
height: {
if(!customDecorations || isMobile){
return 0;
}
if(small) return 38 * scaleRatio;
else return 50 * scaleRatio;
}
y: -height
z: 1
property string title
property int mouseX: 0
property bool containsMouse: false
property alias basicButtonVisible: goToBasicVersionButton.visible
property bool customDecorations: true
property bool customDecorations: persistentSettings.customDecorations
property bool showWhatIsButton: true
property bool showMinimizeButton: false
property bool showMaximizeButton: false
property bool showCloseButton: true
property bool showMoneroLogo: false
property bool small: false
signal closeClicked
signal maximizeClicked
signal minimizeClicked
signal goToBasicVersion(bool yes)
height: customDecorations && !isMobile ? 50 : 0
y: -height
property string title
property alias maximizeButtonVisible: maximizeButton.visible
z: 1
Item {
id: test
// Background gradient
width: parent.width
height: 50
z: 1
height: parent.height
z: parent.z + 1
// use jpg for gradiency
Image {
anchors.fill: parent
height: parent.height
width: parent.width
anchors.fill: titleBar
height: titleBar.height
width: titleBar.width
source: "../images/titlebarGradient.jpg"
}
}
Item{
Item {
id: titlebarlogo
width: 125
height: 50
height: parent.height
anchors.centerIn: parent
visible: customDecorations
z: 1
visible: customDecorations && showMoneroLogo
z: parent.z + 1
Image {
anchors.left: parent.left
@@ -77,6 +93,15 @@ Rectangle {
}
}
Label {
id: titleLabel
visible: !showMoneroLogo && customDecorations && titleBar.title !== ''
anchors.centerIn: parent
fontSize: 18
text: titleBar.title
z: parent.z + 1
}
// collapse left panel
Rectangle {
id: goToBasicVersionButton
@@ -85,10 +110,10 @@ Rectangle {
anchors.top: parent.top
anchors.left: parent.left
color: "transparent"
height: 50 * scaleRatio
height: titleBar.height
width: height
visible: isMobile
z: 2
z: parent.z + 2
Image {
width: 14
@@ -118,36 +143,11 @@ Rectangle {
anchors.top: parent.top
anchors.bottom: parent.bottom
visible: parent.customDecorations
z: 2
Rectangle {
id: whatIsAreaButton
anchors.top: parent.top
anchors.bottom: parent.bottom
width: 42
color: containsMouse ? "#6B0072" : "#00000000"
Image {
anchors.centerIn: parent
width: 9
height: 16
source: "../images/question.png"
}
MouseArea {
id: whatIsArea
anchors.fill: parent
cursorShape: Qt.PointingHandCursor
onEntered: whatIsAreaButton.color = "#262626";
onExited: whatIsAreaButton.color = "transparent";
onClicked: {
}
}
}
z: parent.z + 2
Rectangle {
id: minimizeButton
visible: showMinimizeButton
anchors.top: parent.top
anchors.bottom: parent.bottom
width: 42
@@ -165,14 +165,13 @@ Rectangle {
cursorShape: Qt.PointingHandCursor
onEntered: minimizeButton.color = "#262626";
onExited: minimizeButton.color = "transparent";
onClicked: {
appWindow.visibility = Window.Minimized
}
onClicked: minimizeClicked();
}
}
Rectangle {
id: maximizeButton
visible: showMaximizeButton
anchors.top: parent.top
anchors.bottom: parent.bottom
width: 42
@@ -193,15 +192,13 @@ Rectangle {
cursorShape: Qt.PointingHandCursor
onEntered: maximizeButton.color = "#262626";
onExited: maximizeButton.color = "transparent";
onClicked: {
appWindow.visibility = appWindow.visibility !== Window.FullScreen ? Window.FullScreen :
Window.Windowed
}
onClicked: maximizeClicked();
}
}
Rectangle {
id: closeButton
visible: showCloseButton
anchors.top: parent.top
anchors.bottom: parent.bottom
width: 42
@@ -216,7 +213,7 @@ Rectangle {
MouseArea {
anchors.fill: parent
onClicked: appWindow.close();
onClicked: closeClicked();
hoverEnabled: true
cursorShape: Qt.PointingHandCursor
onEntered: closeButton.color = "#262626";
@@ -225,4 +222,23 @@ Rectangle {
}
}
// window borders
Rectangle {
anchors.bottom: parent.bottom
anchors.right: parent.right
anchors.left: parent.left
height: 1
color: "#2F2F2F"
z: parent.z + 1
}
Rectangle {
anchors.top: parent.top
anchors.right: parent.right
anchors.left: parent.left
visible: titleBar.small
height: 1
color: "#2F2F2F"
z: parent.z + 1
}
}

View File

@@ -34,13 +34,20 @@ filter::filter(QObject *parent) :
QObject(parent)
{
m_tabPressed = false;
m_backtabPressed = false;
}
bool filter::eventFilter(QObject *obj, QEvent *ev) {
switch(ev->type()) {
case QEvent::KeyPress: {
QKeyEvent *ke = static_cast<QKeyEvent*>(ev);
if(ke->key() == Qt::Key_Tab || ke->key() == Qt::Key_Backtab) {
if(ke->key() == Qt::Key_Backtab) {
if(m_backtabPressed)
break;
else m_backtabPressed = true;
}
if(ke->key() == Qt::Key_Tab) {
if(m_tabPressed)
break;
else m_tabPressed = true;
@@ -58,7 +65,7 @@ bool filter::eventFilter(QObject *obj, QEvent *ev) {
sks = ks.toString();
}
#ifndef Q_OS_MAC
if(sks.contains("Alt+Tab") || sks.contains("Alt+Shift+Backtab"))
if(sks.contains("Alt+Tab") || sks.contains("Alt+Backtab"))
break;
#else
sks.replace("Meta", "Ctrl");
@@ -67,7 +74,11 @@ bool filter::eventFilter(QObject *obj, QEvent *ev) {
} break;
case QEvent::KeyRelease: {
QKeyEvent *ke = static_cast<QKeyEvent*>(ev);
if(ke->key() == Qt::Key_Tab || ke->key() == Qt::Key_Backtab)
if(ke->key() == Qt::Key_Backtab)
m_backtabPressed = false;
if(ke->key() == Qt::Key_Tab)
m_tabPressed = false;
QString sks;
@@ -88,7 +99,7 @@ bool filter::eventFilter(QObject *obj, QEvent *ev) {
sks = ks.toString();
}
#ifndef Q_OS_MAC
if(sks.contains("Alt+Tab") || sks.contains("Alt+Shift+Backtab"))
if(sks.contains("Alt+Tab") || sks.contains("Alt+Backtab"))
break;
#else
sks.replace("Meta", "Ctrl");

View File

@@ -36,7 +36,7 @@ class filter : public QObject
Q_OBJECT
private:
bool m_tabPressed;
bool m_backtabPressed;
public:
explicit filter(QObject *parent = 0);

View File

@@ -17,7 +17,7 @@ if [ ! -d $MONERO_DIR/src ]; then
fi
git submodule update --remote
git -C $MONERO_DIR fetch
git -C $MONERO_DIR checkout release-v0.12
git -C $MONERO_DIR checkout v0.12.1.0
# get monero core tag
get_tag

Binary file not shown.

Before

Width:  |  Height:  |  Size: 191 B

After

Width:  |  Height:  |  Size: 324 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 288 B

After

Width:  |  Height:  |  Size: 447 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 287 B

After

Width:  |  Height:  |  Size: 447 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 288 B

After

Width:  |  Height:  |  Size: 447 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 231 B

After

Width:  |  Height:  |  Size: 396 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 21 KiB

BIN
images/checkedBlackIcon.png Executable file → Normal file

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 344 B

BIN
images/checkedIcon-black.png Executable file → Normal file

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 388 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 317 B

After

Width:  |  Height:  |  Size: 460 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 320 B

After

Width:  |  Height:  |  Size: 460 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 280 B

After

Width:  |  Height:  |  Size: 383 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 249 B

After

Width:  |  Height:  |  Size: 408 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 255 B

After

Width:  |  Height:  |  Size: 408 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 306 B

After

Width:  |  Height:  |  Size: 454 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 59 KiB

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 268 B

After

Width:  |  Height:  |  Size: 415 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 334 B

After

Width:  |  Height:  |  Size: 456 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 301 B

After

Width:  |  Height:  |  Size: 448 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 301 B

After

Width:  |  Height:  |  Size: 448 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 301 B

After

Width:  |  Height:  |  Size: 448 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 284 B

After

Width:  |  Height:  |  Size: 364 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 301 B

After

Width:  |  Height:  |  Size: 448 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 384 B

After

Width:  |  Height:  |  Size: 532 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 306 B

After

Width:  |  Height:  |  Size: 454 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 355 B

After

Width:  |  Height:  |  Size: 488 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 477 B

After

Width:  |  Height:  |  Size: 563 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 514 B

After

Width:  |  Height:  |  Size: 707 B

BIN
images/editIcon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 578 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 238 B

After

Width:  |  Height:  |  Size: 360 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 260 B

After

Width:  |  Height:  |  Size: 410 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 308 B

After

Width:  |  Height:  |  Size: 469 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 185 B

After

Width:  |  Height:  |  Size: 335 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 238 B

After

Width:  |  Height:  |  Size: 401 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 234 B

After

Width:  |  Height:  |  Size: 402 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 312 B

After

Width:  |  Height:  |  Size: 469 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 319 B

After

Width:  |  Height:  |  Size: 456 B

BIN
images/historyBorderRadius.png Executable file → Normal file

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 378 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 201 B

After

Width:  |  Height:  |  Size: 367 B

BIN
images/leftPanelBg.jpg Normal file → Executable file

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 362 B

After

Width:  |  Height:  |  Size: 501 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 552 B

After

Width:  |  Height:  |  Size: 701 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 337 B

After

Width:  |  Height:  |  Size: 493 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 560 B

After

Width:  |  Height:  |  Size: 648 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 208 B

After

Width:  |  Height:  |  Size: 380 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 859 B

BIN
images/menuArrow.png Executable file → Normal file

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 856 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 340 B

After

Width:  |  Height:  |  Size: 476 B

BIN
images/middlePanelBg.jpg Normal file → Executable file

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 125 B

After

Width:  |  Height:  |  Size: 293 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 198 B

After

Width:  |  Height:  |  Size: 366 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 792 B

After

Width:  |  Height:  |  Size: 822 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 38 KiB

After

Width:  |  Height:  |  Size: 596 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 304 B

After

Width:  |  Height:  |  Size: 444 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 308 B

After

Width:  |  Height:  |  Size: 466 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 44 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 296 B

After

Width:  |  Height:  |  Size: 455 B

Some files were not shown because too many files have changed in this diff Show More