Пардон, виртуальные методы там все-таки есть, но они к делу не относятся. Как вариант можешь отнаследоваться от QPtrList и добавить пару методов типа:
type* cnext()
{
type* node = (type *)QGList::next();
return node ? node : (type *)QGList::first();
}
type* cprev()
{
type* node = (type *)QGList::prev();
return node ? node : (type *)QGList::last();
}