Come nascondere una pagina di preferenza in una Eclipse RCP
-
13-09-2019 - |
Domanda
Ho un Eclipse RCP e voglio nascondere le pagine prerence di sicurezza e di aiuto. Come posso fare?
Soluzione
che stavo cercando la stessa cosa e trovato la soluzione in questo link:
http://sourceforge.net/apps/trac/fable/wiki/Preferences
Saluti. Stefan
Disattiva preferenze di aiuto
¶
Inserire il seguente codice nella sottoclasse di org.eclipse.ui.application.WorkbenchAdvisor
, e rimuove il gruppo "Help" dalla finestra di dialogo preferenza RCP:
public void postStartup() {
PreferenceManager pm = PlatformUI.getWorkbench().getPreferenceManager( );
pm.remove( "org.eclipse.help.ui.browsersPreferencePage" );
}
"org.eclipse.help.ui.browsersPreferencePage
" è l'ID per il punto di preferenze estensione.
Aggiungere le preferenze Prospettiva ¶
Nota: per trovare le preferenze id del plugin, selezionare Window-->show view--> PDE Runtime--> Plugin Registry
..... e cercare di trovare quello che stai cercando per .....
Ad esempio, per "Workbench preferences
", date un'occhiata in fable.eclipse.ui.ide
ed estensione org.eclipse.ui.preferencePages
: id="org.eclipse.ui.preferencePages.Workbench"
Se si desidera aggiungere solo punto di vista (per esempio) le preferenze, aggiungere un'estensione preferenza in MANIFEST.XML
:
id : org.eclipse.ui.preferencePages.Perspectives
name:perspective(fable)
class:org.eclipse.ui.internal.ide.dialogs.IDEPerspectivesPreferencePage
//Add : org.eclipse.ui.ide in your Dependencies
In ApplicationWorkBenchAdvisor:
public void postStartup() {
PreferenceManager pm = PlatformUI.getWorkbench().getPreferenceManager( );
pm.remove( ""org.eclipse.ui.preferencePages.Workbench"browsersPreferencePage" );
}
public String getInitialWindowPerspectiveId() {
IPreferenceStore pref = Activator.getDefault().getPreferenceStore();
String ret = pref.getDefaultString(IWorkbenchPreferenceConstants.DEFAULT_PERSPECTIVE_ID);
ret=(ret==null || ret.equals(""))?"yourDefaultPerspectiveID":ret;
return ret;
}//
Altri suggerimenti
questa voce , è possibile utilizzare il "attività workbench" il meccanismo, e:
- definire attività separati, corrispondenti ai diversi livelli di accesso
- definire le vostre azioni in gruppi di azioni regolari, raggruppati in base al livello di accesso
- associare ogni attività con gli appropriati gruppi di azioni tramite Elementi
activityPatternBinding
- impostare gli ID di attività abilitati dopo l'autenticazione, nelle prime fasi del banco di lavoro ciclo di vita, ad esempio dal metodo
WorkbenchAdvisor
delpreStartup()
.
(Si noti, quanto sopra è stato per un filtraggio in base alle autorizzazioni dell'utente, ma potrebbe essere generalizzare ad altri criteri.)
Per quanto riguarda le pagine delle preferenze per la conservazione e aiuto, si dovrebbe legare l'id di quelle pagine con un'attività che si sa che si può disattivare:
<activityPatternBinding
activityId="org.eclipse.javaDevelopment"
pattern="org\.eclipse\.help\..*/.*">
</activityPatternBinding>
sarebbe disabilitare tutti i menu / preferenze / opinioni relative al aiutare.
Se si utilizza org.eclipse.help.ui.PrefPageHelp\..*
, sarebbe legare solo prefPageHelp
e prefPageHelpContent
.
Se si aggiunge un'altra attività di estensione di legame con
org.eclipse.equinox.security.ui.sec_storage_preferences_context
, che avrebbe anche prendersi cura della pagina preferenza Secure Storage.