/** * @param parent the SWT parent for the tree area controls. * @return the new <code>Control</code>. * @since 3.0 */ protected Control createTreeAreaContents(Composite parent) { // Build the tree an put it into the composite. treeViewer = createTreeViewer(parent); treeViewer.setInput(getPreferenceManager()); updateTreeFont(JFaceResources.getDialogFont()); layoutTreeAreaControl(treeViewer.getControl()); return treeViewer.getControl(); }
/** * Creates the wizard's title area. * * @param parent the SWT parent for the title area composite. * @return the created title area composite. */ protected Composite createTitleArea(Composite parent) { // Create the title area which will contain // a title, message, and image. int margins = 2; titleArea = new Composite(parent, SWT.NONE); FormLayout layout = new FormLayout(); layout.marginHeight = 0; layout.marginWidth = margins; titleArea.setLayout(layout); GridData layoutData = new GridData(GridData.FILL_HORIZONTAL); layoutData.verticalAlignment = SWT.TOP; titleArea.setLayoutData(layoutData); // Message label messageArea = new DialogMessageArea(); messageArea.createContents(titleArea); titleArea.addControlListener( new ControlAdapter() { @Override public void controlResized(ControlEvent e) { updateMessage(); } }); final IPropertyChangeListener fontListener = event -> { if (JFaceResources.BANNER_FONT.equals(event.getProperty())) { updateMessage(); } if (JFaceResources.DIALOG_FONT.equals(event.getProperty())) { updateMessage(); Font dialogFont = JFaceResources.getDialogFont(); updateTreeFont(dialogFont); Control[] children = ((Composite) buttonBar).getChildren(); for (int i = 0; i < children.length; i++) { children[i].setFont(dialogFont); } } }; titleArea.addDisposeListener( event -> JFaceResources.getFontRegistry().removeListener(fontListener)); JFaceResources.getFontRegistry().addListener(fontListener); messageArea.setTitleLayoutData(createMessageAreaData()); messageArea.setMessageLayoutData(createMessageAreaData()); return titleArea; }