Définition de thèmes

La SPI du contrôleur permet de définir des thèmes sur des instances modifiables implémentant l'interface ThemeSetter ; par exemple, ContentPage et ContentLabel.

Procédure

  1. Obtenez une instance modifiable de la ressource pour laquelle vous voulez définir un thème.
  2. Procurez-vous un objet Theme à partir du modèle ThemeList.
  3. Vérifiez si la ressource implémente l'interface ThemeSetter.
    Utilisez l'opérateur instanceof. Si la ressource n'implémente pas l'interface ThemeSetter, vous ne pouvez pas définir le thème.
  4. Utilisez la méthode setTheme() pour définir le thème.

Exemple

Définition d'un thème pour une page de contenu (traitement d'erreurs omis) :
final Modifiable modifiable = cmController.getModifiableNode(page);

// obtain theme to set from com.ibm.portal.admin.ThemeList
final Theme theme = ...

// set theme
if (modifiable instanceof ThemeSetter) {
    ((ThemeSetter) modifiable).setTheme(theme);
}