IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Eclipse Platform Discussion :

[Plug-in] Initialisation des préférences


Sujet :

Eclipse Platform

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    172
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 172
    Points : 100
    Points
    100
    Par défaut [Plug-in] Initialisation des préférences
    Bonjour,

    je suis en train d'ajouter une page de préférences à mon plug-in. J'étends la classe FieldEditorPreferencePage pour créer ma page.
    Pour l'instant ma page ne contient qu'une case à cocher. Sa valeur par défaut est true.
    Mon problème est qu'au lancement d'Eclipse avec le plug-in, j'ai l'impression que la valeur de la préférence n'est pas initialisé. Le code suivant renvoit toujours false :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    StellentComponentWizardPlugin.getDefault().getPreferenceStore().getBoolean(nom_de_ma_preference)
    Par contre, si je modifie la valeur de cette préférence, je récupère bien la bonne valeur. Le problème ne se produit qu'au lancement d'eclipse.

    Voici le code de ma classe qui étend FieldEditorPreferencePage :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    public class StellentPreferencePage	extends FieldEditorPreferencePage implements IWorkbenchPreferencePage {
     
    	public static final String P_COMPLETION_AUTOACTIVATION_BOOLEAN = "fr.tomtom.stellentcomponentwizard.preferences.completionAutoActivationBooleanPreference";
     
    	public StellentPreferencePage() {
    		super(GRID);
    		setPreferenceStore(StellentComponentWizardPlugin.getDefault().getPreferenceStore());
    		setDescription(NLS.bind(Messages.UI_PREFERENCES_DESCRIPTION, null));
    		initializeDefaults();
    	}
    /**
     * Sets the default values of the preferences.
     */
    	private void initializeDefaults() {
    		IPreferenceStore store = getPreferenceStore();
    		store.setDefault(P_COMPLETION_AUTOACTIVATION_BOOLEAN, true);
    	}
     
    /**
     * Creates the field editors. Field editors are abstractions of
     * the common GUI blocks needed to manipulate various types
     * of preferences. Each field editor knows how to save and
     * restore itself.
     */
     
    	public void createFieldEditors() {
    		BooleanFieldEditor completionAutoActivationField = new BooleanFieldEditor(
    																P_COMPLETION_AUTOACTIVATION_BOOLEAN,
    																NLS.bind(Messages.UI_PREFERENCES_COMPLETION_AUTOACTIVATION_DESCRIPTION, null),
    																getFieldEditorParent());
    		this.addField(completionAutoActivationField);
    	}
     
    	public void init(IWorkbench workbench) {
    	}
     
    }

  2. #2
    Membre habitué
    Profil pro
    Développeur Java
    Inscrit en
    Février 2007
    Messages
    177
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Février 2007
    Messages : 177
    Points : 145
    Points
    145
    Par défaut
    voila une methode pour utiliser les preferences :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    //recup des preferences
            final Preferences preferences = Platform.getPreferencesService().getRootNode().node(ConfigurationScope.SCOPE).node(Application.PLUGIN_ID);
     
    //on place une propriété
    preferences.put("truc","valeur");
     
    //on recupere une propriété
    String s = preferences.get("truc");
     
    //sauvegarde pour la prochaine ouverture
    preferences.flush();
    pas besoin de tout ton code fastidieux.

    cela créer un fichier dans le repertoire metadata et tu peux l'utiliser par exemple pour un autologin ou alors pour des config que l'utilisateur pourra modifier ainsi l'appli au prochain lancement s'en souviendra!
    voila, si tu as d'autres questions, n'hesite pas.
    ciao

Discussions similaires

  1. [POO] initialiser des attributs
    Par poukill dans le forum C++
    Réponses: 6
    Dernier message: 26/07/2006, 11h07
  2. [débutant] initialisation des variables.
    Par zui dans le forum Langage
    Réponses: 1
    Dernier message: 05/06/2006, 15h29
  3. [TADOStoredProc] initialisation des paramètres et lancement
    Par zelastwarrior dans le forum C++Builder
    Réponses: 5
    Dernier message: 16/06/2005, 08h43
  4. Réponses: 5
    Dernier message: 17/05/2005, 09h34
  5. initialisation des property page
    Par Robleplongeur dans le forum MFC
    Réponses: 3
    Dernier message: 21/04/2004, 10h47

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo