Alo Sarv
lead developer

Donate via
MoneyBookers

Latest Builds

version 0.3
tar.gz tar.bz2
Boost 1.33.1 Headers
MLDonkey Downloads Import Module Development
Payment completed
Development in progress.
Developer's Diary
irc.hydranode.com/#hydranode

Friday, March 17, 2006

New builds, networking statistics support in cgcomm, and more

Interestingly, postings which include screenshots seem to gather several times more comments than those without. So here's another screenshot for you screenshot-hungry people :)



As discussed before, the top-right corner will become statistics graph (hopefully should have implementation of that by designer within few days). The bottom part will display module info/overview, but the backend is currently missing, since the time went to implement the network-statistics related core/gui comm protocol parts.

Statistics-fans shouldn't be alarmed about the small space the statistics got in the interface. Thanks to the tab-based approach, we can introduce a separate tab on the Home page which opens on-demand by double-clicking on the graph, or some button, and can display pagefuls of statistics data. This approach avoids cluttering the interface with data the average user isn't interested in, but provides the data for the "mythical power user".

Due to the VS2005 iostreams library memory leak issue, previously mentioned here, the r2805 win32 builds are built with mingw compiler. We'll have to see what to do with the VS2005 problems; one option would be to use STLPort library instead of the VS2005 STL implementation; other would be to patch the issue and rebuild the dlls; frankly, I don't like either approach, but it seems there are no other options.

I've been experimenting somewhat with a layout change, which will affect transfer and library pages. Namely, I'm trying to get rid of the 'action toolbar' (clear/pause/resume/stop buttons), and move those buttons to top-right corner, on same row as the tabs. This has several reasons - gain of ~20px in height (less scrolling and cleaner look), move less-used functionality away from primary location (most p2p users are more accustomed to using right-click menu for those operations), and balance the interface visually (left/right). Initially, it seemed this would require a lot of manual layouting, including taking apart the QTabWidgets and recomposing them manually from QTabBar and whatever they use additionally. However, it turned out QTabWidget has a function, setCornerWidget(QWidget *w), which allows doing exactly what we need. The trouble began when I attempted to put there a larger widget (actually, composite widget) - namely, the space seemed to be limited to ~50px width. So far my attempts of tweaking it have been only partially successful, as can be seen from screenshots below.








New builds from r2805 are up for Windows and Linux, as well as source snapshot in three formats.

Madcat, ZzZz



Comments:
Please put an advanced categorization system for transfers and library windows. I like the category system of emule and their mods, but probably you (and/or your GUI designer, that invisible creature creating one of the best GUIs for a P2P app) know a better manner for doing that ;)

Why categories? Because many of us are hardcore P2P leechers (but sharing a lot too), having 3000+ files on transfering (maybe a lot of them paused because not enough space available) and it can be a nightmare to having all them on the same window.

If you add this feature to Hydranode GUI (please do it!), develop it in a manner for not having the pathetic freeze of eMule when changing category tabs. Why doing only the same as others when it's possible to doing it a lot better? ;)

Put screenshots every new post, please! ;)
 
I don't want to be rude, but the action bar icons (clear-pause-stop-resume-remove) looks a bit ugly. Maybe drawing them differently could look better, please show some different types if possible and then thinking what ones of them are better for Hydranode GUI ;)

The problem of the action bar is that always looks annoying and a bit ugly everywhere you put it in a GUI, maybe appearing dynamically in some cool manner, I don't know how.

You did put the action bar near of the tabs zone, this can be a bit problem for future category tabs (I hope you add them, it's very useful for P2P addicts). Probably you don't thinked on this and considering an important feature, but because only is useful for those guys having terabytes of information downloaded from P2P, like me ;)

I think you (and your anonymous GUI designer, of course) are considering to add only two tabs to "Transfers" section: "Downloads" and "Uploads". It looks nice, but it can be a problem for category tabs, how it can look tabs inside tabs? Do some experiments with your GUI designer about this, please.

Think about doing a simple (but interesting for some egocentric and exhibitionist P2P users ;)) non-GUI stuff, a plugin for Hydranode: a banner plugin. Allow the generation of GIF (even animated could be nice, too), PNG, JPG and, why not, SVG. Not do it, do it simpler of fully depending on what you want. I know a lot of people using *A LOT* their Emule/MLDonkey banner scripts on forums, having this by default on HN could attract to those P2P freaks. Please consider the use of some XML-based skinning support for advanced dynamic generation of those banners (even having different ones at same time, depending on what image is loading in the http image address).

It's quite nice you are doing simple (specially in the non-bloated manner) a P2P GUI, that's a difficult creative task. Thanks a lot for not forgetting the KISS principle ;)
 
anonymous said "Please put an advanced categorization system for transfers and library windows."

Yes, that has been planned since the start.

anonymous said "I don't want to be rude, but the action bar icons (clear-pause-stop-resume-remove) looks a bit ugly."

That's because they are first versions of the icons. "Plan to throw one away; you will, anyhow" - Fred Brooks, "The Mythical Man-Month", Chapter 11. Or, to put it in a different way - "You don't truly understand a problem until you first implement a solution. On the second time, maybe, you can get it right". All interface icons will be redone at least once, since this was the first time myself and the designer made icons at all, so it's all kinda new to us.

anonymous said "I think you (and your anonymous GUI designer, of course) are considering to add only two tabs to "Transfers" section: "Downloads" and "Uploads". It looks nice, but it can be a problem for category tabs, how it can look tabs inside tabs? Do some experiments with your GUI designer about this, please."

We're still debating on how exactly to solve the uploads/downloads views. Initially, we planned the Transfer page to be exclusivly for downloads, and Library page become multi-function page, which among other things provided uploading interface. However, as things evolved, we realized that we're pushing all features that we can't put anywhere else to the library page, so bloat-factor might become an issue with the Library page. In any case, this is still being discussed.

Madcat.
 
I love the overview statistics in the right frame. What about a mini-graph showing u/d in time behind "My Hydranode" in the overview tab?

What about a little icon ain the corner behind close icon to send hydranode gui to tray?

Please comments.
 
palesco said: "What about a mini-graph showing u/d in time behind "My Hydranode" in the overview tab?"

Please read the post before asking. From the post (right below the first image): "As discussed before, the top-right corner will become statistics graph (hopefully should have implementation of that by designer within few days)."

Madcat.
 
Madcat (may he be blessed) sayInterestingly, postings which include screenshots seem to gather several times more comments than those without
It seems that indeed ur sentence has been proved right... :)

as a "mythical power user" I'm happy to know u will implemente tabs it's a very good thing! :)
And also happy one day taht

For the bar, i personaly think that right click menu ( eMule kind ) whould be better, i wouldn't have to choose an item and then move to another location to made the action i want to perform..

anonymous said:Think about doing a simple .. banner plugin
The CGComm have a statistic part, why don't u implement it? :)
Take some code from what alreadya viable i'm sure it's pretty easy!
Come on! c++ is not a kind of dangerous diseas! ;)

stupid things below be warned!
am i the only one who read "NATO fight cam piracy" as a prelude to a SAS team coming to take me for my last download? :)
 
offtopic:
wow, what kind of a maniac should one be to simultaneously download 3000+ files. what do you do with all of them? sell cdrs in a local market? :))
 
Hehe, I don't sell, only personal usage :)
 
Post a Comment



<< Home

This page is powered by Blogger. Isn't yours?