Bitcoin Forum
May 06, 2024, 11:08:21 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 2 [3] 4 5 6 7 8 9 10 11 12 13 14 15 »  All
  Print  
Author Topic: Bitcoin-Qt, the future Bitcoin client GUI [user input needed]  (Read 57075 times)
wumpus (OP)
Hero Member
*****
Offline Offline

Activity: 812
Merit: 1022

No Maps for These Territories


View Profile
June 28, 2011, 04:26:32 AM
Last edit: June 28, 2011, 05:33:07 AM by John Smith
 #41

I'm giving that a go now.  It may take some time, though...
Thanks!
This is beautiful.  Once you have this tested on Windows (and have tested it throughly) you should submit a pull request for this.  I think that the mainstream client really ought to use QT (plus your GUI is so much nicer looking).
Yep, integrating this into the original client is planned after some build-system related issues have been sorted out there.
8 connections should be 2 bars, and 16+ should be 4 Tongue
Why the 16+ requirement for 4? The mapping is currently like this;
  • 0 -> No connection
  • 1-3 -> 1 bar
  • 4-6 -> 2 bars
  • 7-9 -> 3 bars
  • 10+ -> 4 bars
Great job!
Suggestion: get rid of the "Sent/Received" tab and keep just "All Transactions", "Sent" and "Received". Generated coins could be considered "received", you just change the Type to make it clear the difference.
This would be an improvement; however, I don't like the tabs at all.

Ideally it would be best to have a more extensive filter system; things like this should be possible
  • show me transactions between 28/04/2010 and 28/06/2010
  • show all transactions larger than 1.00 bitcoins
  • show all transactions received with/sent to address XX

But I'm not entirely sure how to implement this without making it too complex and user-unfriendly. So a query language is out of the question :-)

Maybe add combo boxes in the header row like in spreadsheets?
I think it would be better to have the type column right-aligned, because of the way it reads. (type's text makes more sense with an adress next to it.)
May be true. Though right-aligned text columns might look weird. I'll give it a try.


Bitcoin Core developer [PGP] Warning: For most, coin loss is a larger risk than coin theft. A disk can die any time. Regularly back up your wallet through FileBackup Wallet to an external storage or the (encrypted!) cloud. Use a separate offline wallet for storing larger amounts.
1715036901
Hero Member
*
Offline Offline

Posts: 1715036901

View Profile Personal Message (Offline)

Ignore
1715036901
Reply with quote  #2

1715036901
Report to moderator
Whoever mines the block which ends up containing your transaction will get its fee.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1715036901
Hero Member
*
Offline Offline

Posts: 1715036901

View Profile Personal Message (Offline)

Ignore
1715036901
Reply with quote  #2

1715036901
Report to moderator
1715036901
Hero Member
*
Offline Offline

Posts: 1715036901

View Profile Personal Message (Offline)

Ignore
1715036901
Reply with quote  #2

1715036901
Report to moderator
kripz
Full Member
***
Offline Offline

Activity: 182
Merit: 100


View Profile
June 28, 2011, 12:55:42 PM
 #42

I was using 0.3.22 prior. made a backup of my wallet. tried this. went back to 0.3.22 and my wallet is corrupt. put my old wallet back and still wont work. now im forced to use this?

 Merged mining, free SMS notifications, PayPal payout and much more.
http://btcstats.net/sig/JZCODg2
dan_a
Newbie
*
Offline Offline

Activity: 48
Merit: 0


View Profile
June 28, 2011, 02:04:48 PM
Last edit: June 28, 2011, 02:47:59 PM by dan_a
 #43

I've had a quick first go at compiling a Windows version, and I'm getting errors (as expected) about missing header files.  Some of them I can guess, but others I could do with pointers as to what I'll need to install.

This list can also work as pointers for people wanting to do their own compilation.

Missing FileSource
openssl/*openssl
db_cxx.hBDB
boost/*libboost
sys/resource.h, net/if.h, ifaddrs.hI think there are Windows equivalents (ref) - can someone confirm?
netdb.h, arpa/inet.h, sys/socket.hUse winsock.h instead
sys/resource.h, net/if.h, ifaddrs.h, netdb.h, arpa/inet.h, sys/socket.hEdit headers.h line 61 (and others) to read "#if defined (WIN32) || defined (WIN64)"

There are many other errors too, but I suspect a lot will go when I've got the right libraries installed.
dan_a
Newbie
*
Offline Offline

Activity: 48
Merit: 0


View Profile
June 28, 2011, 03:44:40 PM
 #44

For anyone else trying to do a Windows build:
Compiling libboost isn't as easy as it could be.  After downloading the sources, edit bootstrap.bat and change the lines
Quote
call .\build.bat > ..\..\..\bjam.log
and
Quote
set toolset=msvc

to read

Quote
call .\build.bat gcc > ..\..\..\bjam.log
and
Quote
set toolset=gcc
wumpus (OP)
Hero Member
*****
Offline Offline

Activity: 812
Merit: 1022

No Maps for These Territories


View Profile
June 28, 2011, 03:53:27 PM
 #45

I was using 0.3.22 prior. made a backup of my wallet. tried this. went back to 0.3.22 and my wallet is corrupt. put my old wallet back and still wont work. now im forced to use this?
This was in the README :/
Quote
Berkely DB version warning

A warning for people using the static binary version of Bitcoin (tl;dr: Berkely DB databases are not forward compatible).

The static binary version of Bitcoin is linked against libdb4.7 or libdb4.8 (see also this Debian issue).

Now the nasty thing is that databases from 5.X are not compatible with 4.X.

If the globally installed development package of Berkely DB installed on your system is 5.X, any source you build yourself will be linked against that. The first time you run with a 5.X version the database will be upgraded, and 4.X cannot open the new format. This means that you cannot go back to the old statically linked version without significant hassle!
You can go back but you'll have to build it from source and link against the same berkelydb...

Bitcoin Core developer [PGP] Warning: For most, coin loss is a larger risk than coin theft. A disk can die any time. Regularly back up your wallet through FileBackup Wallet to an external storage or the (encrypted!) cloud. Use a separate offline wallet for storing larger amounts.
caveden
Legendary
*
Offline Offline

Activity: 1106
Merit: 1004



View Profile
June 28, 2011, 03:58:12 PM
 #46

Nice to see such improvements! Great work!

I'll suggest a change that I think would make some newbies understand bitcoin addresses faster: remove the last selected address from the main window. Make the user always have to click somewhere to open the list of addresses, even if it only has one.

I think that would be good because frequently I've seen people who think that address which is being shown there is the bitcoin addresses of theirs. Like if there were only one, as a bank account number. This happens frequently.

By not having this one address on the main page, they will have to search it somewhere else, and there they will see that there is space for an entire list, with buttons to "create new" and all that.
wumpus (OP)
Hero Member
*****
Offline Offline

Activity: 812
Merit: 1022

No Maps for These Territories


View Profile
June 28, 2011, 04:19:45 PM
 #47

I think that would be good because frequently I've seen people who think that address which is being shown there is the bitcoin addresses of theirs. Like if there were only one, as a bank account number. This happens frequently.
Hm you have a point. On the other hand I think it's very useful to have an address on the main page, and you can quickly copy it and give it to someone.

I propose an alternative: instead of having a "New..." button next to the address, make it an "Add..." button (with tooltip "Add new receiving address"). This makes it clear that the old address is not being replaced.

And maybe change "Your Bitcoin address" to "Current Bitcoin address"?

Or change it to a combo box if there are multiple receiving addresses, so you can directly select which default address you want? That's probably most clear...


Bitcoin Core developer [PGP] Warning: For most, coin loss is a larger risk than coin theft. A disk can die any time. Regularly back up your wallet through FileBackup Wallet to an external storage or the (encrypted!) cloud. Use a separate offline wallet for storing larger amounts.
caveden
Legendary
*
Offline Offline

Activity: 1106
Merit: 1004



View Profile
June 28, 2011, 04:31:19 PM
 #48

Hm you have a point. On the other hand I think it's very useful to have an address on the main page, and you can quickly copy it and give it to someone.

The recommended way to use bitcoin is by creating a new address for each receipt. Somebody following this practice will already have to click a button to generate a new address in a new window. In this window it's already possible to copy it to the clipboard.
I don't think the behavior of not following this practice should be facilitated by the client, as it is today, by making the last address there, available to be copied and reused.

Or change it to a combo box if there are multiple receiving addresses, so you can directly select which default address you want? That's probably most clear...

Wouldn't a combo become too big eventually? Anyway, if it is easy to filter by the address label I suppose that's not a problem.
wumpus (OP)
Hero Member
*****
Offline Offline

Activity: 812
Merit: 1022

No Maps for These Territories


View Profile
June 28, 2011, 04:46:18 PM
Last edit: June 29, 2011, 04:36:29 AM by John Smith
 #49

The recommended way to use bitcoin is by creating a new address for each receipt.
Hmm yeah you're right, the current GUI doesn't really help in the recommended workflow (and that's what a GUI should do). Maybe add "New receiving address", "Your receiving addresses" to the toolbar and drop the address from the main screen then.
Quote
Wouldn't a combo become too big eventually? Anyway, if it is easy to filter by the address label I suppose that's not a problem.
Good point... edit: so, what workflow would you propose?

User wants to receive coins from someone.

1. He clicks "New address"
2. He enters label for address and presses enter/confirms
3. A window appears from which the new address that can be copied to the clipboard/Drap and dropped.
   He is reminded that the address can be found in the 'Received addresses' list later.

Something like that?

Bitcoin Core developer [PGP] Warning: For most, coin loss is a larger risk than coin theft. A disk can die any time. Regularly back up your wallet through FileBackup Wallet to an external storage or the (encrypted!) cloud. Use a separate offline wallet for storing larger amounts.
wumpus (OP)
Hero Member
*****
Offline Offline

Activity: 812
Merit: 1022

No Maps for These Territories


View Profile
June 28, 2011, 06:28:31 PM
Last edit: June 29, 2011, 04:14:30 AM by John Smith
 #50

This is what I mean with a filter row, what'd ya think? Better than tabs isn't it?



This allows building basic filters:
  • Date column: allows selecting "All", "Today", "This week", "This month", "Range..."
  • Type column: allows selecting "Received from", "Sent to", "To yourself", "Generated", "Other"
  • Address column: type whole or partial address
  • Amount column: enter minimum size of transaction

I'm also going to add a "clear filter" broom button to the right.

Note that this is just a prototype still, please let me know your ideas and comments before I start implementing.

Bitcoin Core developer [PGP] Warning: For most, coin loss is a larger risk than coin theft. A disk can die any time. Regularly back up your wallet through FileBackup Wallet to an external storage or the (encrypted!) cloud. Use a separate offline wallet for storing larger amounts.
caveden
Legendary
*
Offline Offline

Activity: 1106
Merit: 1004



View Profile
June 29, 2011, 08:33:54 AM
 #51

so, what workflow would you propose?

User wants to receive coins from someone.

1. He clicks "New address"
2. He enters label for address and presses enter/confirms
3. A window appears from which the new address that can be copied to the clipboard/Drap and dropped.
   He is reminded that the address can be found in the 'Received addresses' list later.

Something like that?

That sounds cool. Maybe the window in step 3 could be the same window of the total list of addresses, with the new one selected.
caveden
Legendary
*
Offline Offline

Activity: 1106
Merit: 1004



View Profile
June 29, 2011, 08:35:36 AM
 #52

This is what I mean with a filter row, what'd ya think? Better than tabs isn't it?

Yes, definitively!

Thank you for your contributions to the project, it's getting better. Smiley
dan_a
Newbie
*
Offline Offline

Activity: 48
Merit: 0


View Profile
June 29, 2011, 10:05:09 AM
 #53

I've hit a problem I haven't been able to solve yet in the Windows build.  Can anyone help?

I have the same problem building that Jaromil has here.

The solution for that is to remove "-l." from configure.ac
What is the equivalent with the QT SDK?
XIU
Member
**
Offline Offline

Activity: 84
Merit: 10


View Profile WWW
June 29, 2011, 12:04:35 PM
 #54

This is what I mean with a filter row, what'd ya think? Better than tabs isn't it?



This allows building basic filters:
  • Date column: allows selecting "All", "Today", "This week", "This month", "Range..."
  • Type column: allows selecting "Received from", "Sent to", "To yourself", "Generated", "Other"
  • Address column: type whole or partial address
  • Amount column: enter minimum size of transaction

I'm also going to add a "clear filter" broom button to the right.

Note that this is just a prototype still, please let me know your ideas and comments before I start implementing.


Nice work, would it be possible to add "BTC" to the balance? And will the amount column also work for the sent (negative) amounts?
wumpus (OP)
Hero Member
*****
Offline Offline

Activity: 812
Merit: 1022

No Maps for These Territories


View Profile
June 29, 2011, 12:29:50 PM
Last edit: June 29, 2011, 12:47:25 PM by John Smith
 #55

That sounds cool. Maybe the window in step 3 could be the same window of the total list of addresses, with the new one selected.
Yeah, indeed, why not.
The solution for that is to remove "-l." from configure.ac
What is the equivalent with the QT SDK?
I'm not sure. It seems to be automatically added. Multiple times, even, looking at makefile  Roll Eyes

INCPATH       = -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4 -Isrc -Isrc/json -Isrc/cryptopp -Isrc/qt -I. -I.

Nice work, would it be possible to add "BTC" to the balance? And will the amount column also work for the sent (negative) amounts?
I've added BTC to the balance. That'd indeed more clear.

Yes, the amount column uses the absolute amount and shows the transactions larger than that. If you want to select on received/sent, you can select with the 'Type' column.

It's not possible to search for transactions smaller than a certain amount. I'm not sure whether this is useful anyway, but it wouldn't fit into this interface to add a lower as well as an upper bound.

Bitcoin Core developer [PGP] Warning: For most, coin loss is a larger risk than coin theft. A disk can die any time. Regularly back up your wallet through FileBackup Wallet to an external storage or the (encrypted!) cloud. Use a separate offline wallet for storing larger amounts.
XIU
Member
**
Offline Offline

Activity: 84
Merit: 10


View Profile WWW
June 29, 2011, 01:02:29 PM
 #56

Nope, was just talking about using absolute values, so that would be perfect Smiley
zwierzak
Newbie
*
Offline Offline

Activity: 24
Merit: 0



View Profile WWW
June 29, 2011, 08:12:42 PM
 #57

Hi,

I made some changes in BitCoin-Qt to support FreeDesktop Notifications (like KNotify in KDE4, libnotify in Gnome or osd-notify in Ubuntu). I think that they are a lot better then standard Qt messages and they're great integrating with system. If you don't read them now they will be stored for later (in KDE4). Only dependency is Qt-DBus, so we don't need in system kdelibs or libnotify. If your system don't support FreeDesktop Notify (you don't have daemon or you are using Windows) it will use at first Qt Tray messages and than QMessageBox.

Known issues:
- text is limited to 105 characters (probably limit in KNotify), so I need to made some possibility to read whole message,
- icons are hardcoded because DBus can't send icons' objects, it's require icon's path, which don't exists when we don't have installed program or we use Qt resources (they are inside binary file). I used Oxygen icons, but in future I will patch it to get icons from default system theme

Future:
- replace QMessageBox with FreeDesktop Notifications, you can add actions to notify, so they can replace QMessageBox in 100%, problem are asynchronous answers

Some screenshots:
http://img199.imageshack.us/img199/8586/bitcoinqt1.png
http://img850.imageshack.us/img850/2773/bitcoinqt2.png
http://img29.imageshack.us/img29/905/bitcoinqt3.png

If you're interested in my fork that go ahead and download it form my GitHub:
https://github.com/zwierzak/bitcoin-qt

When I finish my modification I'm going to push this changes to official repository of BitCoin-Qt, but not now. I must repair most annoying issues. Also I found some crashes in original program, which I will try to fix.

To encourage me to continue my work don't affraid to send some tips to my address:
1L7AeokogyuXGmUrx9SRTNhRPzYcmmghdo
wumpus (OP)
Hero Member
*****
Offline Offline

Activity: 812
Merit: 1022

No Maps for These Territories


View Profile
June 29, 2011, 08:58:20 PM
Last edit: June 29, 2011, 09:14:14 PM by John Smith
 #58

zwierzak: cool. send a pull request once you think it's stable

I'm not sure that replacing *all* message boxes with notifications is a good idea, but for errors and notifications coming from the daemon/network thread it's a good thing.

However, for dialog boxes resulting from direct user interaction I'm not sure replacing it with a notification is how it's supposed to be (for example, in your last screenshot you use a notification to ask for fee confirmation)

Edit: Filter row has been committed now. Everything should work except for "Date -> Range...".

Bitcoin Core developer [PGP] Warning: For most, coin loss is a larger risk than coin theft. A disk can die any time. Regularly back up your wallet through FileBackup Wallet to an external storage or the (encrypted!) cloud. Use a separate offline wallet for storing larger amounts.
zwierzak
Newbie
*
Offline Offline

Activity: 24
Merit: 0



View Profile WWW
June 29, 2011, 10:31:34 PM
 #59

The last screenshot is standard information from your program. I just rewrite all tray->showMessage to my Notification::instance->notify. For now I have biggest problems with this icons. Temporary I have hardcoded them, but in future they need to be get from system directories.

About replacing all QMessageBox into notify, I also think that it isn't good idea. There are sometimes such situations when user must know that program want answer from him. But many messages can be done my path. For example information about changing status of transaction (from unknown to confirmed).
wumpus (OP)
Hero Member
*****
Offline Offline

Activity: 812
Merit: 1022

No Maps for These Territories


View Profile
June 30, 2011, 06:13:16 AM
 #60

The last screenshot is standard information from your program. I just rewrite all tray->showMessage to my Notification::instance->notify. For now I have biggest problems with this icons. Temporary I have hardcoded them, but in future they need to be get from system directories.
Indeed, it should install an icon to the system directories anyway as application icon in the menus. Another reason to switch to an autoconf-based build system with a "make install", I guess.

For now we can just use the system default icons as notification.

Bitcoin Core developer [PGP] Warning: For most, coin loss is a larger risk than coin theft. A disk can die any time. Regularly back up your wallet through FileBackup Wallet to an external storage or the (encrypted!) cloud. Use a separate offline wallet for storing larger amounts.
Pages: « 1 2 [3] 4 5 6 7 8 9 10 11 12 13 14 15 »  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!