samedi 8 octobre 2011

Médoc et wxWidgets

Il est tentant de vouloir adapter les bibliothèques, au passé souvent chargé, aux concepts et techniques du C++ moderne. Et pourtant, principalement pour les projets assez indépendants, il vaut mieux s'asseoir un peu sur ses principes, et utiliser la bibliothèque de la manière qu'elle a été pensée.

Prenons la bonne vieille wxWidgets, avec laquelle je suis en train de créer mon client lourd Médoc. Elle utilise sa propre classe de chaines de caractères, afin de supporter plusieurs types d'encodage, ses propres tableaux dynamiques en place du bon vieux std::vector, et utilise des macros un peu partout.

J'ai tendance à importer immédiatement quelques utilitaires de base que je garde dans un coin, du genre conversion entre wxString et std::string. Mais pour Médoc, je crois bien pouvoir m'en passer: mes entrées comme mes sorties passant soit par wxWidgets elle-même, soit par des bibliothèques en C pur, il est plus cohérent de simplement utiliser des wxString partout.

Voilà donc, en 300 lignes, un programme qui permet de charger des images dans une liste, et de les afficher en cliquant dessus:



C'est maintenant que ça se gâte: remplacer la liste d'images par une vraie galerie, permettant d'afficher une miniature de l'image, et d'en changer l'ordre par du glisser-déposer.

Aucun commentaire: