Here is a chat conversation between me and SigmundAlpha about this theme…
SigmundAlpha: @Sentinelrv you still around?
Sentinelrv: Yes
SigmundAlpha: @Sentinel, I saw your peerunity client “theme”, but I have a question. If you had full artistic ability, and not contricted to menus, buttons, and standard forms, is that still how you would like to see the new wallet designed?
Sentinelrv: I would like it like that, yes. But Ben is the one that is currently implementing it. I linked him to your post after I saw it. He’s been preoccupied with NuBits though, so I’m not sure how he’s doing with it. I’ll have to get an update from him.
SigmundAlpha: Well, I’m playing around with rebuilding peercoin-qt from the ground up. Completely new UI system, and I’m playing around with rebuilding the backend too (peercoind).
SigmundAlpha: This new UI system can do anything, and I mean anything. Charts, graphs, custom widgets of any sort. I just need a direction. I’m not much of a designer.
Sentinelrv: So you changed how the program works so it displays things differently?
SigmundAlpha: Yeah, I moved the whole thing from Qt’s widget based UI design to their new QML based design. It’s allows for much more freedom.
Sentinelrv: So the qt UI design that Bitcoin is using is actually outdated and there’s a better version?
SigmundAlpha: Basically, yeah
Sentinelrv: And you converted it to that.
Sentinelrv: Would you be able to write me a PM explaining what you’ve done and then I’ll forward it to Ben so we can see what he thinks? Maybe he can use it to finish the theme up.
SigmundAlpha: It’s not connected to a backend yet, but that’s the idea
Sentinelrv: And maybe it will allow us to make better changes in the future.
SigmundAlpha: I’m writing it up now, images and documentation links included, just give me a few minutes.
Sentinelrv: For example charts or graphs like you mentioned. I know Ben had previously written down ideas about Peerunity features that included such things.
Sentinelrv: Question, I’m not really a technical guy. Would changes like this open up any kind of new attack vectors?
Sentinelrv: That you know of?
SigmundAlpha: My work on the backend might, I’m still just learning the ins-and-outs of blockchain networking, but the switch to QML shouldn’t effect that no. Were just talking looks here, not how it interacts with the system or the network with peercoind
SigmundAlpha: @Sentinelrv, sent.
Sentinelrv: Thanks, I’ll send this off to Ben to see what he thinks.
Sentinelrv: I’m not sure if I’m going to get a response right away though.
Sentinelrv: I think he’s the one of the ones helping to test NuBits and they’re heavily involved in that right now.
SigmundAlpha: I’m not expecting one, when I started this conversation, I was really just looking for your opinions on added functionality or design preferences.
Sentinelrv: I just want to make sure, you said you’re not done with it yet right? I’m going to copy over this chat log and send it to him as well.
SigmundAlpha: No, because I don’t know which direction the community wants to go. The standard look, but “themed”, or a new wallet design all together? What extras functionality is expected? Etc? Etc?
Sentinelrv: I beleive all the features for v0.2 have been set, so there shouldn’t be anymore extra functionality besides what’s in this post: http://www.peercointalk.org/index.php?topic=2740.msg28174#msg28174
SigmundAlpha: Er, as long as were on the topic. How do you feel about the splash screen that shows while the block index is loaded?
Sentinelrv: I think what we would do is go with the look everyone likes in my thread and then in future versions we would add to it.
peerchemist: sigmund you play with QML/qt quick?
SigmundAlpha: Well, there is the problem, what I’m suggesting would fundamentally break all the UI work that has been done so far.
SigmundAlpha: @peerchemist: I do now
Sentinelrv: You mean this? Tell me if it doesn’t load: https://fbcdn-sphotos-c-a.akamaihd.net/hphotos-ak-xfp1/v/t1.0-9/10426635_652184921540622_6145386925275288127_n.png?oh=7c7a6493808320a5ffd3580b6dd3044d&oe=5447DC8B&gda=1413460738_5bee7d075f5a2178d795d51230b44b16
SigmundAlpha: Yup, thats it. I’m only asking if it’s something you think should be kept, because it’s something I can just do away with in my client.
Sentinelrv: How hard would it be to redo?
Sentinelrv: It’s the logo we’ve created for peerunity, so I think it should stay, but maybe a color change to go with the new theme.
Sentinelrv: So we implement this new version and it breaks all the UI work. How hard would it be to put back together the way it’s supposed to be?
SigmundAlpha: “Hard”, is relative. If all were doing is keeping the same controls, but colorizing them, I say don’t change at all, there would be no need. But if we were to flip the system so we could add dynamic charts and menus, or list-view style wallet suggest and multi-wallet support, then change would be easier than adapting.
SigmundAlpha: Err, that may have been harder to read then I meant. What I’m saying is if we want to add new controls that don’t already exist on the Qt Widget library, switching to Qt Quick would be easier than writing custom Qt Widgets.
Sentinelrv: Do you know if the design I made can be fitted to the existing qt version or if there are some things that won’t work?
SigmundAlpha: It can, using the Qt Style Sheet http://qt-project.org/doc/qt-5/stylesheet.html
SigmundAlpha: I don’t know about the window frame (the titlebar/window buttons), but everything is just padding and color.
Sentinelrv: I’ve been told that certain designs may be hard to fit because qt is limited in what it can do. I’m not sure if there is anything in my design that wouldn’t work.
SigmundAlpha: If you want the window frame edited like in your mockup, then you would need to redraw them and add window support to the base library, not the easiest thing to do.
Sentinelrv: Yeah, that top part is mainly what I was concerned about.
SigmundAlpha: Yeah, i don’t think that will make it in without a switch to Qt Quick. Everything else would though.
SigmundAlpha: Qt Quick actually has a support library built in for moving and resizing windows, so redrawing the borders with it isn’t as much of a problem.
Sentinelrv: Switching right now would require us to delay v0.2 to figure out what else we would want to change. I’m not sure what we should do. Maybe keeping the Peerunity client the way it is now without the design and then implementing the design changes in v0.3 with the upgrade to qt quick.
SigmundAlpha: I would like to say, however, that a unified look across all PeerUnity projects would greatly help branding. This would include the website, and any wallets.
SigmundAlpha: Your probably right, I’ll just keep doing my thing.
Sentinelrv: You mean you’re going to keep working on it?
SigmundAlpha: Yup, I’m actually working on it as a client-end while I work on my own peercoin backend implementation.
SigmundAlpha: So I can test both at the same time.
Sentinelrv: I’m going to send this chat and your post to Ben to see what he thinks is best. He knows more than me about it, since he’s been working with the client UI recently to implement these changes.
Sentinelrv: He has more experience with what’s possible and what’s not.
That’s the end of the chat, but here is what I asked him to PM me…
[quote=“SigmundAlpha”]QML vs the status quo
The current wallet system, a fork of the original bitcoin-qt, is built using the most basic of widget from Qt’s platform-dependent widget library [http://qt-project.org/doc/qt-5/qtwidgets-index.html]. While it works great for creating a quick interface that looks natural on all desktop environments, it doesn’t lend itself easily to branding, which I believe is the point of theming the existing client.
Instead, I submit that the client be changed over to the QML/JS engine used by Qt, called Qt Quick, which not only offers the controls used by Qt Widgets [http://qt-project.org/doc/qt-5/qtquickcontrols-overview.html], but allows for the creation of completely new controls using basic building blocks [http://qt-project.org/doc/qt-5/gettingstartedqml.html] and JavaScript for animation [http://qt-project.org/doc/qt-5/qtquick-usecase-integratingjs.html]. This allows us to create custom, interesting UIs in less time. For example, pie charts [http://doc.qt.digia.com/QtCharts/images/demos_qmlchart1.png] and line graphs [http://doc.qt.digia.com/QtCharts/images/demos_qmlchart2.png], or creating applications that look similar in style to Spotify [http://cdn1.tnwcdn.com/wp-content/blogs.dir/1/files/2013/12/spotify_windows.jpg].
Ideas, comments, concerns?[/quote]