Le menu "Outils > Options" contient les options générales de Mercator. Le nombre de ces options est très important. Malgré le fait qu'elles soient classées par rubrique et qu'il soit possible de les rechercher sur base de différents critères, l'accès fréquent à certaines options peut être inconfortable. C'est pourquoi Mercator 10.10 ou ultérieur permet de classer dans un nœud "Favoris" les options souhaités.
Pour ajouter une option aux favoris, il suffit de cliquer sur l'étoile située à sa gauche. Ainsi, l'étoile devient active et l'option apparaît dans les favoris. Un nouveau clic sur cette étoile permet de retirer l'option des favoris. Ce retrait peut aussi être effectuée à partir des favoris.
Les modifications d'option peuvent être apportées tant dans l'option d'origine que dans celle présente dans les favoris.
L'ordre des favoris est libre. En effet, dans le nœud "Favoris", il est possible de déplacer des éléments pour les réordonner. Ceci s'effectue via un drag & drap au départ de ce symbole visible à droite des options.
Le customizer ci-dessous montre comment masquer tous les nœuds de cet écran, hormis le nœud des favoris, pour les utilisateurs dont le niveau est inférieur à 50. Ceci permet de montrer un écran avec quelques options modifiables, sans donner un accès complet à toutes les options de Mercator. Le code ci-dessous retire aussi la possibilité de rechercher, qui devient non nécessaire dans ce cas de figure et qui permettrait un accès à des options non souhaitées.
using System;
using System.Collections.Generic;
using System.Text;
using MercatorApi;
using MercatorExtensions;
using MercatorUi;
using System.Windows.Forms;
using System.Linq;
// <CompileWithRoslyn />
namespace Param
{
public class Customizer : MercatorUi.ICustomizers.IFormLoadCustomizer
{
public void FormLoadCustomize(Form form)
{
if ((Globals.CurrentUserRecord.NIVEAU < 50) && (form is MercatorUi.Forms.Param.ParamOptionsForm paramOptionsForm))
{
foreach (DevComponents.AdvTree.Node node in paramOptionsForm.Tree.Nodes.Cast<DevComponents.AdvTree.Node>().Where(n => n != paramOptionsForm.NodeFavorites))
node.Visible = false;
paramOptionsForm.PanelSearch.Visible = false;
paramOptionsForm.SplitContainer2.Panel2Collapsed = true;
paramOptionsForm.NodeFavorites.Expand();
}
}
}
}