|
Re: Show a particular PreferencePage? [message #176399 is a reply to message #171042] |
Tue, 06 January 2004 22:33 |
Eclipse User |
|
|
|
Originally posted by: John_Arthorne.oti.com_
The usual approach is to open a preference dialog that contains only
your preference page:
IPreferenceNode targetNode = new PreferenceNode(id, yourPrefPage);
PreferenceManager manager = new PreferenceManager();
manager.addToRoot(targetNode);
PreferenceDialog dialog = new PreferenceDialog(shell, manager);
dialog.create();
dialog.setMessage(targetNode.getLabelText());
dialog.open();
--
Jonathan Feinberg wrote:
> Is there a cannonical way to cause the workbench preferences dialog to
> open on a particular preference page?
>
> There is a showPage(IPreferenceNode) method on the PreferenceDialog, but
> it is protected.
|
|
|
Re: Show a particular PreferencePage? [message #734607 is a reply to message #171042] |
Sat, 08 October 2011 21:02 |
Marco Lopes Messages: 61 Registered: September 2010 |
Member |
|
|
Eclipse User wrote on Tue, 16 December 2003 11:28Originally posted by: jdf.pobox.com
Is there a cannonical way to cause the workbench preferences dialog to
open on a particular preference page?
There is a showPage(IPreferenceNode) method on the PreferenceDialog, but
it is protected.
--
Jonathan Feinberg jdf@us.ibm.com
http://domino.research.ibm.com/cambridge/research.nsf/pages/ cue.html
private void selectItem(PreferenceDialog dialog, String id) {
dialog.getTreeViewer().expandAll();
TreeItem item=findItem(dialog.getPreferenceManager().getRootSubNodes(),
dialog.getTreeViewer().getTree().getItems(), id);
if (item!=null)
dialog.getTreeViewer().setSelection(new StructuredSelection(item.getData()));
else
dialog.getTreeViewer().setSelection(new StructuredSelection(dialog.getTreeViewer().getTree().getItem(0).getData()));
}
private TreeItem findItem(IPreferenceNode[] nodes, TreeItem[] items, String id){
TreeItem item=null;
for(int i=0; i<nodes.length && item==null; i++){
if (nodes[i].getId().equals(id)){
item=items[i];
}else{
IPreferenceNode[] subNodes=nodes[i].getSubNodes();
TreeItem[] subItems=items[i].getItems();
if (subNodes.length>0)
item=findItem(subNodes,subItems,id);
}
}
return item;
}
[Updated on: Sat, 08 October 2011 21:03] Report message to a moderator
|
|
|
|
|
Powered by
FUDForum. Page generated in 0.03125 seconds