Bocs a szünetért; "nyaraltam".
A megoldás egyszerűbb mint gondolnád:
connect( findList, SIGNAL( highlighted(const QString&) ), this, SLOT( slotFindList(const QString&) ) );
Tehát az "elem" nem kell.
Idióta dolog, de ez van.
Ez az őskövület signal-slot kezelés a qt legnagyobb hibája (szerintem), és nagyon reménykedtem benne, hogy a qt4-ből kidobják, de nem... Nyilván kompatibilitási okok miatt. Félek tőle sosem kerül ki.
A gondot az okozza, hogy ez az egész signal-slot rendszer nem a C++ keretein belül lett megoldva (egyszerűen azért, mert mikor a Qt fejlesztése kezdődött (1991), még nem is volt C++ szabvány, nem hogy szabvány követő fordító (mondjuk az most sincs. :) )). Ha belenézel a generált moc_* fájlokba, elég csúnya dolgokat láthatsz, és kb fogalmad lesz, hogy hogyan is működik ez az egész. Valójában string manipulációkkal találja meg a connect fv a megfelelő signal-slot párokat. Ezért nem ad fordítás közben hibaüzenetet.
C++-os megoldás persze van (ld libsigc++, boost.signals, stb.), de úgy tűnik a qt-ban ez marad még jó darabig.
"...handing C++ to the average programmer seems roughly comparable to handing a loaded .45 to a chimpanzee."
-- Ted Ts'o