bonsoir ,
mon probleme est tres simple :
j'ai cree une classe personnalisee que j'aimerais enregistrer dans QSettings , dans la methode QSettings::setValue(...) au deuxieme argument elle attend un QVariant .

voila mon code (tres simple a lire ) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include <QtGui/QApplication>
#include<QtGui/QtGui>
 
class personnage {
    private :
        bool estMort;
        int vie;
        short age;
        QString nom;
        QStringList enfants;
    public:
    // ...ici constructeur et  plein de methodes...
};
 
int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
 
    personnage nain;
    // ..ici plein de modifications sur nain ...
 
    QSettings setting("societe","jeu");
 
    setting.setValue("personnage",nain); //probleme ici
 
    return a.exec();
}
bien evidement sa ne marche pas , n'y aurais t'il pas un moyen de conversion de personnage a QVariant directement sans enregistrer attribut par attribut ?
si quelqu'un arrive a faire la conversion qu'il m'indique aussi comment recuperer les information aussi s'il vous plait .
bonne soiree .

edit : j'ai oublié je veux absolument passer par QSettings pas QFile ni QDataStream .