Comment créer une page GUI et ajouter des contrôles?

Liez les contrôles de la page à un agent existant ou créez un nouvel agent
Liez les contrôles de la page à un agent existant ou créez un nouvel agent.

Pour créer une nouvelle page dans laquelle naviguera via un bouton Paramètres avancés, suivez ces étapes pour savoir comment.

Pas

  1. 1
    Créez le bouton sur la page requise.
  2. 2
    Créez une nouvelle page HTML avec les contrôles nécessaires qui est liée au bouton précédemment créé.
  3. 3
    Liez les contrôles de la page à un agent existant ou créez un nouvel agent.
    • Ce nouvel ajout était sur la page SEL pour une option permettant d'activer ou de désactiver le blocage des événements SELOEME
    Créez une nouvelle page HTML avec les contrôles nécessaires qui est liée au bouton précédemment créé
    Créez une nouvelle page HTML avec les contrôles nécessaires qui est liée au bouton précédemment créé.
  4. 4
    Dans self.html (//nitrogen_src/src/apps/idracgui/idracgui/web), sous la section html, ajoutez les lignes ci-dessous.
    • <div class="jumpbar-line"> </div>
      <span class="data-area-jump-items"> </span>
      <div class="data-area-options">
      <%writeRes("gen_OtherOptions ", "fr");%>
      <button value="submit" class="inline"onclick="location.href='seladvopt.html';">
      <span><% writeRes("btn_advSettings", "en");%></span>
      </button></div>
    • Les gen_OtherOptions et les btn_advSettings sont des entrées déjà présentes dans le res_en.txt (//nitrogen_src/src/apps/iDracGUI/iDracGUI/src/conf/res_en.txt)
    • Ceux-ci créeront d'autres options: étiquetteront et ajouteront un bouton [Paramètres avancés] à côté. Le location.href = 'seladvopt.html' est le lien vers la nouvelle page HTML à ajouter.
  5. 5
    Créez la nouvelle page HTML (voir src/apps/idracgui/idracgui/web/seladvopt.html pour référence)
    • La fieldList contiendra les nouveaux contrôles sur la page, comme un champ de texte (lecture seule ou R/W), une case à cocher, etc.
      • Dans le champListe entrée faite:
      • fieldList[0] = new CheckboxMapping("OemEventFilteringEnabled", "OemEventFilteringEnabled"); //Ici les deux jetons sont identiques
      • OemEventFilteringEnabled: est l'identifiant avec lequel l'Agent le reconnaîtra.
      • OemEventFilteringEnabled: Cela PEUT être le aim_function_execute("String"...... où string = OemEventFilteringEnabled.
      • Dans ce cas, il est recommandé de ne pas utiliser exactement la même chaîne que pour le pré-existant aim_function_execute, si vous les exécutez individuellement dans les fonctions GET et SET plusieurs fois.
    • la fonction pageRendererCallback(xmlDoc) aura des déclarations de fonction, qui:
      • Appelez la méthode de traitement standard.
      • Modification de l'état activé des champs en fonction des sélections actuelles.
    • la fonction loadPageData chargera les données sur le HTML.
    • la fonction formSubmit soumettra le formulaire.
      • Il peut être nécessaire de valider les données pour différents champs
        • exemple: un champ tel que le débit en bauds peut être compris entre les valeurs x et y, etc.
    • la fonction dependencyChecking (SELOEMDependencyChecking) vérifie:
      • Un privilège comme Peut configurer et basé sur le privilège grise les champs configurables.
      • Si l'utilisateur dispose du Privilège nécessaire, les champs configurables sont affichés non grisés.
      • En dessous se trouve le code HTML réel.
      • REMARQUE: tout nom de fonction modifié par rapport à la norme doit être mis à jour ici.
    • Les éléments suivants sont spécifiques à la nouvelle page, si nous réutilisons le code d'une page existante, nous devons apporter les modifications nécessaires.
    • sys_log_eve_adv_settings qui est la chaîne d'en-tête,
      • sys_log_eve_oemeventfilteringenable qui est l'étiquette d'attribut &
      • btn_retSystemEventLog Le retour à la "Page précédente" doit être ajouté à res_en.txt
      • Le nom de la fonction correcte pour la vérification des dépendances doit être mis à jour
      • Le ou les noms d'ID de liste de champs OemEventFilteringEnabled doivent être mis à jour
        • <input value="1" id="OemEventFilteringEnabled" name="OemEventFilteringEnabled" type="checkbox" class="checkbox" />
        • REMARQUE: Par conséquent, tous les ajouts nécessaires à res_en.txt doivent être effectués.
    Pour créer une nouvelle page dans laquelle naviguera via un bouton Paramètres avancés
    Pour créer une nouvelle page dans laquelle naviguera via un bouton Paramètres avancés, suivez ces étapes pour savoir comment.
  6. 6
    Ajouter un nouvel agent ou marquer avec un agent existant
    • Marquage avec un agent existant
      • Choisissez le bon agent, vous devez être capable de faire
        • preProcessGet: assurez-vous que les identifiants que vous avez ajoutés ont été invoqués
        • ProcessGet: où les données sont «OBTENUES» à partir d'iDRAC (mémoire)
        • postProcessGet: où les modifications des données sont reflétées sur l'interface graphique
        • preProcessSet: Identique à PreProcessGet mais invoqué uniquement lorsqu'une action SET se produit.
        • ProcessSet: définir les données du contrôle GUI dans iDRAC (mémoire)
        • postProcessSet: rien de particulier à faire ici, mais dépend de la fonctionnalité et du code peut être requis ici.
    • Ajout d'un nouvel agent
      • Ajoutez le fichier.h dans src/apps/GUIDataServer/GUI GUIDataServer/include
      • Ajouter le. cc dans src/apps/GUIDataServer/GUI GUIDataServer/src
      • Incluez le fichier.h dans GUIDataHandler.cc et ajoutez les lignes suivantes,
        • SELADV_Agent* selAdvAgent = nouveau SELADV_Agent(ceci);
        • addAgent("OemEventFilteringEnabled", selAdvAgent);
      • En cas d'ajout à un agent préexistant addAgent("OemEventFilteringEnabled", serviceAgent); //serviceAgent est un exemple.
  7. 7
    Comment se déroule la séquence get-set
    • Lorsque la page html est chargée (c'est-à-dire que vous y accédez à l'aide d'onglets, de boutons, etc....)
      • La séquence Get, c'est-à-dire preProcessGet, ProcessGet et postProcessGet, s'exécutera une fois.
      • Lorsqu'un paramètre est modifié et que le bouton Appliquer est cliqué
        • preProcessSet, ProcessSet et postProcessSet se produiront en plus un
        • preProcessGet, ProcessGet et postProcessGet se produiront également.
Les éléments suivants sont spécifiques à la nouvelle page
Les éléments suivants sont spécifiques à la nouvelle page, si nous réutilisons le code d'une page existante, nous devons apporter les modifications nécessaires.

Conseils

  • Voici un journal de débogage du déroulement de la séquence, lorsque l'utilisateur accède à l'onglet, définit ou efface les valeurs:
  • val est l'état du filtre OEMEvent, rc est la valeur de retour aim_execute.
  • SEL OEM EVENT FILTER FILE4
    1.Enter Tab
    GET:
    preProcessGet:1
    ProcessGet-filt val:0, rc = 0
    postProcessGet-filt val:0, rc = 0
    2.Définir manuellement le filtre / Cochez la case et cliquez sur Apply
    SET:
    preProcessSet:1 - - - - - - -Manual Set
    ProcessSet-enable = 1::rc= 0
    GET: - - - - - - - - -Auto Get on APPLY
    preProcessGet:1
    ProcessGet-filt val:1, rc = 0
    postProcessGet -filt val:1, rc = 0
    3. Effacez manuellement le filtre/Décochez la case et cliquez sur Appliquer
    SET:preProcessSet:1 - - - - - - - Manual Clear(Set 0)
    ProcessSet-enable = 0::rc= 0
    GET: Auto Get on APPLY
    preProcessGet:1
    ProcessGet-filt val:0, rc = 0
    postProcessGet-filt val:0, rc = 0
    - - - - - - - - - - - - - - - - - -

En parallèle
  1. Comment ouvrir Hotmail?
  2. Comment réinitialiser un mot de passe Hotmail perdu?
  3. Comment créer un compte Hotmail?
  4. Comment bloquer quelqu'un sur Hotmail?
  5. Comment pirater un compte Hotmail?
  6. Comment envoyer des vidéos via Hotmail?
FacebookTwitterInstagramPinterestLinkedInGoogle+YoutubeRedditDribbbleBehanceGithubCodePenWhatsappEmail