* Fixed download menu.

* Use bold when ElementMenu loses focus.

* Added an exit slot to ElementBase and bind to that from withing the
subclasses.

* Moved peer info to ElementPeerList, accessed by the right
arrow. Download info will be moved to a seperate Element.


git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@752 e378c898-3ddf-0310-93e7-cc216c733640
This commit is contained in:
rakshasa
2006-08-07 16:31:55 +00:00
parent 0b45062eb3
commit ba28df3ff2
24 changed files with 310 additions and 342 deletions
+29 -10
View File
@@ -41,28 +41,47 @@
#include "element_base.h"
namespace display {
class WindowPeerList;
}
namespace ui {
class ElementPeerList : public ElementBase {
public:
typedef display::WindowPeerList WPeerList;
typedef std::list<torrent::Peer> PList;
typedef std::list<torrent::Peer> PList;
ElementPeerList(core::Download* d, PList* l, PList::iterator* f);
typedef enum {
DISPLAY_LIST,
DISPLAY_INFO,
DISPLAY_MAX_SIZE
} Display;
ElementPeerList(core::Download* d);
~ElementPeerList();
void activate(display::Frame* frame, bool focus = true);
void disable();
void activate_display(Display display);
private:
void receive_next();
void receive_prev();
void receive_disconnect_peer();
void receive_peer_connected(torrent::Peer p);
void receive_peer_disconnected(torrent::Peer p);
void receive_snub_peer();
core::Download* m_download;
WPeerList* m_window;
PList* m_list;
PList::iterator* m_focus;
Display m_state;
display::Window* m_window[DISPLAY_MAX_SIZE];
PList m_list;
PList::iterator m_listItr;
sigc::connection m_connPeerConnected;
sigc::connection m_connPeerDisconnected;
};
}