I have this class, register it to use as QVariant
class MyTimeLine
{
public:
MyTimeLine(double kStart = 0, double kEnd = 1);
void paint(QPainter *painter, const QRect &rect,
const QPalette &palette)const;
private:
double _kStartTime;
double _kEndTime;
};
Q_DECLARE_METATYPE(MyTimeLine)
Then i convert it in QVariant, and when i want use qvariant_cast and get MyTimeLine object i get object, created by default constructor
myTask->setData(2,Qt::UserRole,
QVariant::fromValue(MyTimeLine(a,b)));
MyTimeLine taskTimeLine = qvariant_cast<MyTimeLine>(index.data());
//taskTimeLine._kStartTime = 0;
//taskTimeLine._kEndTime = 1;