5.23.3.1. Ajouter des boutons à l'interface utilisateur

[Remarque]Remarque

Le La configuration par défaut est inférieure à /libs/pappserver/webapps/3dfindit-enterprise/custom_config.json et ne contient que quelques réglages par défaut :

{
  "baseApiPath": "",
  "basename": "/webapps/3dfindit-enterprise",
  "erp": true,
  "startRoute": "CadBim",
  "isEnterprise": true
}

Si vous Sauvegarder les modifications (par exemple des boutons supplémentaires) Voir la configuration complète sous « $CADENAS_SITESETUP/3df/custom_config.json ». Si le fichier n’existe pas déjà, configurez-le en conséquence .

Le fichier de configuration contient une section principale avec quelques paramètres par défaut pour 3Dfindit, puis une section "toolbars".

Les boutons de la barre d'outils peuvent être placés aux endroits suivants :

  • Menu principal -> "mainMenu

  • Au-dessus du tableau -> "table

  • Au-dessus de la vue 3D -> "viewer

  • Dans les résultats de recherche à différentes positions ou pour différents événements :

    • Au-dessus des résultats de recherche existants -> "searchResults

    • Au lieu de résultats de recherche inexistants -> "noResults

    • Dans le menu contextuel des résultats de recherche -> "searchResultsContextMenu".

Les boutons eux-mêmes et leur fonctionnalité sont définis dans la section "buttons". Chaque bouton a un type, qui est soit JS soit VBS:

  • Le JS est exécuté directement dans le navigateur. Il ne peut accéder qu'aux fonctions du navigateur, par exemple appeler d'autres pages web ou des API.

  • VBS est exécuté côté serveur et dans l'environnement AppServer.

Chaque bouton a uneicône et unnom.

{
  "baseApiPath": "",
  "basename": "/webapps/3dfindit-enterprise",
  "erp": true,
  "startRoute": "CadBim",
  "isEnterprise": true,

  "toolbars": {
    "mainMenuIcon": "./plugins/img/3dFinditEyeColor.svg",
    "mainMenu": [
      ["customButton1_Group1", "customButton2_Group1", "customButton3_Group1"],
      ["customButton1_Group2", "customButton2_Group2", "customButton3_Group2"]
    ],
    "viewer": ["exampleButton", "exampleVBSButton"],
    "table": ["exampleButton", "exampleVBSButton"],
    
    "noResults": ["customButton1", "customButton2", "customButton3"],
    "searchResults": ["customButton1", "customButton2", "customButton3"],
    "searchResultsContextMenu": ["customButton1", "customButton2", "customButton3"],
  
    "buttons": {
      "exampleButton": {
        "type": "JS",
        "name": {
          "de-DE": "JS Beispiel",
          "en-GB": "JS Example"
        },
        "callback": "onExampleButtonClicked",
        "icon": "images/bell-solid.svg",
        "tooltip": {
          "de-DE": "JS Beispiel",
          "en-GB": "JS Example"
        }
      },
      "exampleVBSButton": {
        "type": "VBS",
        "icon": "images/bell-solid.svg",
        "name": {
          "de-DE": "VBS Beispiel",
          "en-GB": "VBS Example"
        },
        "script": "/plugins/vbb/wstest.vbs",
        "requestFromPdm": "currentuser",
        "tooltip": {
          "de-DE": "VBS Beispiel",
          "en-GB": "VBS Example"
        }
      }
    }
  }
}