EX> // Inclusion du fichier d'entête CM> #include "{{CODE_LOWER}}_step{{NAME_LOWER}}.h" CM> EX> // Pour afficher des messages à la console EX> #include EX> NC> {{INCLUDES}}{{ACTION_INCL}} EX> // Constructeur : appel du constructeur de la classe mère EX> // et initialisation des paramètres (valeurs par défaut) CM> {{CODE_UPPER}}_Step{{NAME}}::{{CODE_UPPER}}_Step{{NAME}}() : SuperClass() CM> { EX> _intParam = 10; EX> _doubleParam = 50.6; EX> _boolParam = true; EX> _listParam = "choix 2"; EX> _choiceParam = 1; EX> _stringParam = ""; NC> {{ATTRIBUTES_INIT}}{{ACTION_INIT}} CM> } CM> EX> // Destructeur CM> {{CODE_UPPER}}_Step{{NAME}}::~{{CODE_UPPER}}_Step{{NAME}}() CM> { NC> {{ACTION_DEL}} CM> } CM> EX> // Description de l'étape (tooltip du menu contextuel) CM> QString {{CODE_UPPER}}_Step{{NAME}}::description() const CM> { EX> return QString(tr("Etape de démonstration des types de paramètres")); NC> return QString(tr({{DESCRIPTION_SHORT}})); CM> } CM> EX> // Description détaillée de l'étape (dans le menu de description) CM> QString {{CODE_UPPER}}_Step{{NAME}}::detailledDescription() const CM> { EX> return QString(tr("Etape de démonstration des types de paramètres\n" EX> "Ces paramètres sont :\n" EX> " - Paramètre entier\n" EX> " - ...")); NC> return QString(tr({{DESCRIPTION_LONG}})); CM> } CM> EX> // Méthode de recopie de l'étape CM> CT_VirtualAbstractStep* {{CODE_UPPER}}_Step{{NAME}}::createNewInstance() const CM> { CM> return new {{CODE_UPPER}}_Step{{NAME}}(); CM> } CM> EX> // Création et affiliation des modèles IN CM> void {{CODE_UPPER}}_Step{{NAME}}::declareInputModels(CT_StepInModelStructureManager& manager) CM> { EX> // Pas de résultat d'entrée nécessaire EX> manager.setNotNeedInputResult(); NC> {{MODEL_IN_INIT}} CM> } CM> EX> // Création et affiliation des modèles OUT CM> void {{CODE_UPPER}}_Step{{NAME}}::declareOutputModels(CT_StepOutModelStructureManager& manager) CM> { EX> // Pas de résultat de sortie ici EX> Q_UNUSED(manager); NC> {{MODEL_OUT_INIT}} CM> } CM> EX> // Création semi-automatique de la boite de dialogue de paramétrage de l'étape CM> void {{CODE_UPPER}}_Step{{NAME}}::fillPostInputConfigurationDialog(CT_StepConfigurableDialog* postInputConfigDialog) CM> { EX> // Ajout de contrôles unitaires de paramètrages à la boite (un par paramètre en général) EX> postInputConfigDialog->addInt("Paramètre entier", "unité", 0, 100, _intParam); EX> postInputConfigDialog->addDouble("Paramètre double", "unité", 0, 100, 2, _doubleParam); EX> postInputConfigDialog->addBool("Paramètre booléen", "labelAfter", "labelCheckBox", _boolParam); EX> postInputConfigDialog->addString("Paramètre chaine de caractère", "", _stringParam); EX> EX> // Paramètre prenant une valeur parmi une liste de choix EX> QStringList liste; EX> liste.append("choix 1"); EX> liste.append("choix 2"); EX> liste.append("choix 3"); EX> postInputConfigDialog->addStringChoice("Paramètre choix dans une liste", "labelAfter", liste, _listParam); EX> EX> // Paramètre prenant une valeur de choix EX> // Création du groupe de valeurs exclusives dans la boite de dialogue (non visible) EX> CT_ButtonGroup &buttonGroup = postInputConfigDialog->addButtonGroup(_choiceParam); EX> EX> // Création des items séléctionnables de façon exclusive (visibles) EX> postInputConfigDialog->addExcludeValue("Valeur exclusive 1", "labelAfter", "labelRadioButton", buttonGroup, 1); EX> postInputConfigDialog->addExcludeValue("Valeur exclusive 2", "labelAfter", "labelRadioButton", buttonGroup, 2); EX> postInputConfigDialog->addExcludeValue("Valeur exclusive 3", "labelAfter", "labelRadioButton", buttonGroup, 3); EX> EX> // Paramètre prenant une valeur "nom de fichier" EX> postInputConfigDialog->addFileChoice("Paramètre nom de Fichier", CT_FileChoiceButton::OneExistingFile, "Tout fichier (*.*)",_fileNameParam); NC> {{CONFIG_DIALOG}} CM> } CM> EX> // Etape de calcul, créant les données des résultats de sortie CM> void {{CODE_UPPER}}_Step{{NAME}}::compute() CM> { EX> // Aucune action, sauf affichage des valeurs de paramètres choisies à la console : EX> qDebug() << "Paramètre entier = " << _intParam; EX> qDebug() << "Paramètre double = " << _doubleParam; EX> qDebug() << "Paramètre booléenne = " << _boolParam; EX> qDebug() << "Paramètre chaine de caractère = " << _stringParam; EX> qDebug() << "Paramètre choix dans une liste = " << _listParam; EX> qDebug() << "Paramètre valeur exclusive = " << _choiceParam; EX> qDebug() << "Paramètre Nom de fichier = " << _fileNameParam; NC> {{ACTION_COMP1}}{{COMPUTE}}{{ACTION_COMP2}} CM> } NC> {{ACTION_FCT}}