Cześć, mam klasę dziedziczoną po QItemDelegate, ustawiam w niej comboBox dla pojedynczej kolumny. Obrazowo mówiąc ,powiedzmy, że w comboBox mam opcje A, B, C. Jeśli zmienię z opcji A lub B na opcję C to jest +, jeśli z opcji C na opcję A lub B to jest -, a jeśli z opcji A na B lub odwrotnie do nic się nie dzieje. W sumie muszę wiedzieć jaka opcja jest aktualnie wybrana i na jaką zmieniłem, i tu jest właśnie mój problem. Przy zmianie opcji wysyłam sygnał do slotu:
connect(box,SIGNAL(currentIndexChanged(int)),this,SLOT(send(int)));
Ale jest problem z odczytaniem aktualnej wartości dla konkretnego ComboBoxa, ponieważ nie mam jak wysłać drugiego parametru do tego slotu, ani nawet do innej metody która mogła by mi go przechować w polu klasy, ponieważ jak próbuję zrobić przykładowo w metodzie setEditorData wywołanie:
setIndex(box->currentIndex()); // < --- moja własna metoda
Wywala mi błąd:
passing 'const ItemDelegate' as 'this' argument of 'void ItemDelegate::setIndex(int)' discards qualifiers
Da się to jakoś obejść?