Vous pouvez trouver les widgets par défaut du tableau de bord dans /Library/Widgets. Ils sont écrits en JavaScript, il est donc assez facile d'accéder au code. Par exemple, si vous cliquez avec le bouton droit de la souris sur le widget Stocks et choisissez "Afficher le contenu du paquet", vous trouverez un fichier appelé "Stocks.js" dans le paquet qui contient la logique derrière le widget.
À la ligne 1319 de ce fichier, il existe une fonction appelée "addOrSelectItem".
En dehors de la définition des variables, la première chose que fait cette fonction est de vérifier si vous essayez d'ajouter un stock existant (ligne 1321), si c'est le cas, elle sélectionne simplement le stock existant dans l'interface utilisateur. Cependant, si vous ajoutez un nouveau stock, la prochaine chose qu'elle fait est de vérifier s'il y a moins de 20 stocks (ligne 1323), s'il y en a moins de 20, elle ajoute le nouveau stock. S'il y a déjà 20 actions, il ne fait rien.
Code simplifié ci-dessous. Les commentaires sont ceux d'Apple. Il est clair qu'avoir plus de 20 actions n'est pas "correct" :)
function addOrSelectItem () {
var index = symbolAlreadyInSet(lastValidEntry.symbol);
if (index < 0) {
// make sure we have the correct number of items
if (allTheData.length < 20) {
...
}
} else {
// select the item that is already there.
...
}
}
En théorie, quelqu'un pourrait faire une copie de ce fichier Stocks.wdgt, l'ouvrir, modifier cette simple ligne dans un éditeur de texte pour autoriser plus de 20 actions et l'enregistrer. Il est évident que la distribution de cette version modifiée serait une mauvaise chose, mais la modification d'une copie pour votre usage personnel ne devrait pas poser de problème.
Si vous créez votre propre version, il se peut que vous deviez arrêter le processus Dashboard pour qu'il remarque les changements. Sélectionnez-le dans le moniteur d'activité et quittez-le, il se relancera automatiquement.