provide generic interface for dealing with selected items

This commit is contained in:
Andrzej Rybczak
2009-02-16 18:20:45 +01:00
parent 2ec7748acd
commit 43a8e2284e
21 changed files with 172 additions and 106 deletions

View File

@@ -50,10 +50,12 @@ class BasicScreen
virtual MPD::Song *CurrentSong() { return 0; }
bool hasToBeResized;
virtual bool allowsSelection() = 0;
virtual void ReverseSelection() { }
virtual bool Deselect() { return false; }
virtual void GetSelectedSongs(MPD::SongList &) { }
protected:
void Select(List *);
bool hasToBeResized;
};
template <class WindowType> class Screen : public BasicScreen
@@ -78,7 +80,6 @@ template <class WindowType> void *&Screen<WindowType>::Cmp()
return *(void **)(void *)&w;
}
template <class WindowType> WindowType *&Screen<WindowType>::Main()
{
return w;