AbulEduInstructionV1¶
La classe AbulEduInstructionV1 permet de créer un QGroupBox checkable intégrant un QTextEdit destiné à recevoir une consigne écrite, trois boutons permettant d'enregistrer, de détruire ou de rétablir la valeur par défaut d'une consigne orale (fichier .ogg) et une QFrame destinée à recevoir l'AbulEduControlAudioV1 d'un AbulEduMultiMediaV1
Installation¶
L'installation de la classe AbulEduInstructionV1 se fait dans le dossier lib de votre logiciel, par exemple
git submodule add http://redmine.abuledu.org/ryxeo/leterrier-developpeurs/abuleduinstructionv1.git src/lib/abuleduinstructionv1
Mainteneur de la lib:
git clone ssh://gitolite3@redmine.abuledu.org/repositories-redmine/ryxeo/leterrier-developpeurs/abuleduinstructionv1.git
Modification du fichier.pro¶
Pensez à modifier votre fichier .pro pour ajouter cette nouvelle lib
# AbulEduInstructionV1 include(lib/abuleduslidewidgetcontainerv1/abuleduinstructionv1.pri)
Utilisation¶
Créez dans votre éditeur, de préférence dans une page dédiée aux consignes, autant de QWidget que vous avez de types d'exercice, en leur donnant comme nom abeInstruction+ nom-de-votre-type-d-exercice , et faites une promotion en AbulEduInstructionV1.Dans le code de votre éditeur, pour chacun des AbulEduInstructionV1 que vous aurez créé par promotion
- donnez l'AbulEduMultiMediaV1 que vous aurez créé,
ui->abeInstructionOrthographe->abeInstructionSetMultimedia(m_multiMedia);
- Choisissez le titre,
ui->abeInstructionOrthographe->abeInstructionSetTitle(trUtf8("Consigne de l'exercice Orthographe"));
- Donnez-lui une consigne par défaut en appelant la méthode,
ui->abeInstructionOrthographe->abeInstructionSetDefaultInstruction(trUtf8("Orthographie correctement le mot qui correspond à l'image."), m_abuleduFile->abeFileGetDirectoryTemp().absolutePath() + "/data/instructions/", :/editeur/instructions/consigneorthographe", QString("consigne%1.ogg").arg(abeInstruction->objectName().remove("abeInstruction").toLower()));
- trUtf8("Orthographie correctement le mot qui correspond à l'image.") est la consigne écrite par défaut,
- m_abuleduFile->abeFileGetDirectoryTemp().absolutePath() + "/data/instructions/" est le chemin vers le dossier des consignes sonores dans le répertoire temporaire créé dans l'AbulEduFileV1
- :/editeur/instructions/consigneorthographe" est le chemin de l'instruction sonore par défaut dans le qrc
- QString("consigne%1.ogg").arg(abeInstruction->objectName().remove("abeInstruction").toLower()) , facultatif, est le nom que vous souhaitez que porte votre instruction si vous ne voulez pas du nom par défaut (nom par défaut : objectName() de l'AbulEduInstructionV1 débarrassé de "abeInstruction" + "ConsigneSequence.ogg", dans mon exemple orthographeConsigneSequence.ogg). Ce paramètre supplémentaire permet la compatibilité avec des implémentations plus anciennes.
Voilà. L'essentiel est fait, sauf qu'il vous reste quand même à créer vos consignes par défaut (moi je les mets dans un dossier /data/instructions/)...
Dans la page des consignes vous aurez des QGroupBox checkables, selon que vous voulez ou non utiliser une consigne de séquence.
Le clic sur le micro "normal" fera apparaitre dans la QFrame l'AbulEduControlAudioV1,
la disponibilité du bouton Lecture est ici la preuve qu'une consigne est présente (la consigne par défaut prévue par le développeur si c'est une création de module), vous pouvez la réenregistrer si vous souhaitez.
Un clic sur le micro barré d'une croix rouge la supprime et le dernier micro rétablit l'instruction par défaut.