Shadoware.Org

Aller au contenu | Aller au menu | Aller à la recherche

Mot-clé - logiciel

Fil des billets - Fil des commentaires

samedi, août 6 2011

qGenConfig - Générateur de classe

Présentation

Ce logiciel permet de générer des objets Qt héritant de QConfig à partir d'un fichier écrit au format XML.

Lors de la sauvegarde de paramètres avec Qt, il faut généralement écrire des choses ainsi :

QSettings settings("MaBoite", "MonLogiciel");
settings.beginGroup("Ma fenêtre");
settings.setValue("Taille", win->size());
settings.setValue("Pleine écran", win->isFullScreen());
settings.endGroup();

Puis pour récupérer les mêmes paramètres, il faut écrire :

QSettings settings("MaBoite", "MonLogiciel");
settings.beginGroup("Ma fenêtre");
QSize size = settings.value("Taille").toSize();
bool fullscreen = settings.value("Pleine écran").toBool();
settings.endGroup();

Si les valeurs doivent être récupérées dans toute l'application et qu'un jour l'un des paramètres change de nom, de type, ou de groupe, il ne sera pas possible d'être sûr que tous les endroits de l'application sont bien modifiés lors de la compilation.

C'est là qu'intervient qGenConfig.

Le but est d'écrire un fichier XML représentant la configuration du logiciel et possédant une certaine structure (des groupes, et des valeurs). Le programme parcourt ensuite ce fichier et génère une classe permettant de lire et d'enregistrer la configuration à l'aide de qGenConfig. Le contenu des données est alors stocké dans une structure C, et permet l'accès facile aux données de configuration. Si une donnée change de type, de nom, ou de groupe, le programme ne compilera plus.

Licence

La licence choisie est la GNU GENERAL PUBLIC LICENSE.

Téléchargement

Il est possible de télécharger l'application sur le dépôt officiel à l'adresse : http://hg.shadoware.org/qgenconfig

mardi, mai 3 2011

XINX v0.10.1

Bonjour à tous,

Je suis heureux de vous annoncer la nouvelle version de XINX. Cette version apporte, en plus de la ré-écriture complète de la gestion du contenu et de la complétion, son petit lot de nouveautés et de corrections.

La version 0.10.1 est beaucoup plus stable que sa grande soeur 0.9. Un soin particulier a été apporté à la recherche des sources d'anomalie possible, ainsi que des fuites mémoires. Ces opérations ont été faites grâce à des outils tels que valgrind, mais aussi grâce aux béta-testeurs (Merci à eux).

De plus l'utilisation des pointeurs intelligents de Qt ont permis de passer plus de temps, sur la gestion des structures et moins de temps sur la gestion de la mémoire, sur des parties du code assez critiques (comme ContentView et CodeCompletion). Ils ont également permis un partage plus facile des structures entre les différents threads avec moins de contrôle de synchronisation.

Liens

Lire la suite...