Project

General

Profile

Brainstorming » History » Revision 32

Revision 31 (Greg Burri, 08/07/2009 11:30 AM) → Revision 32/101 (Greg Burri, 08/07/2009 11:37 AM)

h1. Brainstorming 

 [[Brainstorming version 1.0]] 

 h2. Future versions 

 * Fork Qt and improve http://qt.gitorious.org/qt/qt/blobs/master/src/corelib/io/qfilesystemwatcher.cpp (and dependence files) to 
 ** Watch "recursively" and "passively" 
 ** For the three platforms : Linux/Win/MacOSX 
 * The user can set a flag to active bandwidth and CPU limitation. If activated then downloading, uploading and hashing rates will be reduced. 
 ** This option is available from the trayicon (Core) or in the settings panel (GUI) 
 * The user can dynamically change the number of _downloader_ in the settings window (1 to 10 for example). 
 * Private chat (point-to-point).  
 * Channel chat (each user can join one or more channel and he will receive all the messages broadcasted to the selected channels)  
 * Detect duplicates (files which have the same size, same hash and same name) on the local machine and allow the user to easily remove them.  
 ** [Greg] Compare only the hashes is better because some identical files may have not the same filename. Moreover the size (or the name) is pointless because the hash identify the data. 
 * See by an icon next to the peer name in the peer list when a peer has setted the option to reduced the bandwidth. 
 * An URL is displayed on top of the file browsing windows like : _aybabtu://192.168.1.46/movies/sci-fi_. It's allowed to copy or paste an URL. 
 ** There is a button somewhere to open a blank browsing window. 
 * The users can add some comments or tags associated to theirs sharing. These comments or tags are displayed in the list of peers (new column ? tooltip ?). 
 ** You can switch the peer-list to a tag-list 
 * Search in meta data like ID3tag and in compressed file (zip, etc.). 
 * Free space management. 
 * Preview of video and mp3 files from a peer. Streaming ? 
 * Virtual folder to aggregate some real folders. For example the virtual folder 'Divx' may merge '/mnt/Divx1', '/mnt/Divx2' and '/home/paul/movies'. 
 * Multi languages. (that can be changed dynamically on the fly, available with Qt). 
 * Create a theme with : "Qt Style Sheets":http://doc.trolltech.com/4.5/stylesheet-examples.html. See the interface of _Qt Examples and Demos_. 
 * Automatically detect a running game and set the limitation flag. 
 * Automatically detect CPU/bandwidth usage and set limitation flag. 
 * Protect some sharing by a password / user rights for shares. 
 * Statistics window with real time graphs. (see the statistics of eMule). 
 ** The most uploaded files 
 * IPv6 support. 
 * The user can save favorites (a folder in a peer). The favorites are displayed in a panel below the peer list. 
 * The peer list shows by an icon the OS (Linux/MacOSX/Windows) 
 * Use of a faster malloc lib like "nedmalloc":http://www.nedprod.com/programs/portable/nedmalloc/ or "hoard":http://www.hoard.org/.