Example usage for org.eclipse.jface.preference PreferencePage getPreferenceStore

List of usage examples for org.eclipse.jface.preference PreferencePage getPreferenceStore

Introduction

In this page you can find the example usage for org.eclipse.jface.preference PreferencePage getPreferenceStore.

Prototype

public IPreferenceStore getPreferenceStore() 

Source Link

Document

Returns the preference store of this preference page.

Usage

From source file:io.usethesource.impulse.preferences.PreferencesUtilities.java

License:Open Source License

protected void initializeField(FieldEditor pe, PreferencePage page) {
    if (page instanceof IPropertyChangeListener) {
        pe.setPropertyChangeListener((IPropertyChangeListener) page);
    }//from w  w  w. j  av a 2  s  . co m
    pe.setPreferenceStore(page.getPreferenceStore());

}

From source file:melnorme.lang.ide.ui.preferences.AbstractPreferencesConfigBlock.java

License:Open Source License

public AbstractPreferencesConfigBlock(PreferencePage prefPage) {
    this.prefPage = assertNotNull(prefPage);
    this.preferenceStore = prefPage.getPreferenceStore();
}

From source file:net.sf.eclipsefp.haskell.ui.internal.preferences.scion.AutodetectExecutableField.java

License:Open Source License

public AutodetectExecutableField(final PreferencePage page, final Composite parent, final String pgmName,
        final String exeName, final String pkgName, final String prefName,
        final IPropertyChangeListener listener) {
    this.shell = parent.getShell();
    this.pgmName = pgmName;
    fullExeName = FileUtil.makeExecutableName(exeName);
    fieldComposite = new Composite(parent, SWT.NONE);
    GridData gd = new GridData(
            GridData.HORIZONTAL_ALIGN_FILL | GridData.GRAB_HORIZONTAL | GridData.VERTICAL_ALIGN_CENTER);
    gd.horizontalSpan = 2;/*from  ww  w .  ja v a2  s . c  om*/
    fieldComposite.setLayoutData(gd);
    fieldEditor = new ExecutableFileFieldEditor(prefName,
            NLS.bind(UITexts.executable_label, pgmName, fullExeName), false,
            StringFieldEditor.VALIDATE_ON_KEY_STROKE, fieldComposite) {
        /* (non-Javadoc)
         * @see org.eclipse.jface.preference.StringButtonFieldEditor#getNumberOfControls()
         */
        @Override
        public int getNumberOfControls() {
            return 5;
        }

        /* (non-Javadoc)
             * @see org.eclipse.jface.preference.StringButtonFieldEditor#doFillIntoGrid(org.eclipse.swt.widgets.Composite, int)
             */
        @Override
        protected void doFillIntoGrid(final Composite parent, final int numColumns) {
            super.doFillIntoGrid(parent, numColumns - 2);
        }
    };

    fieldEditor.setEmptyStringAllowed(true);
    fieldEditor.setPropertyChangeListener(listener);
    fieldEditor.setPage(page);
    fieldEditor.setPreferenceStore(page.getPreferenceStore());
    fieldEditor.load();

    //new Label(fieldComposite,SWT.NONE);
    //new Label(fieldComposite,SWT.NONE);

    //Composite buttonC=new Composite( fieldComposite, SWT.NONE );
    //buttonC.setLayout( new RowLayout( SWT.HORIZONTAL ) );
    autodetectButton = new Button(fieldComposite, SWT.PUSH);
    autodetectButton.setImage(HaskellUIImages.getImage(IImageNames.AUTODETECT));
    autodetectButton.setToolTipText(String.format(UITexts.autodetectButton_label, fullExeName));
    autodetectButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(final SelectionEvent e) {
            String old = fieldEditor.getStringValue();
            doDetect();
            listener.propertyChange(new PropertyChangeEvent(this, "path", old, fieldEditor.getStringValue()));
        }
    });

    //    autoComposite=new Composite(parent,SWT.NONE);
    //    gd = new GridData(GridData.HORIZONTAL_ALIGN_FILL | GridData.GRAB_HORIZONTAL | GridData.VERTICAL_ALIGN_CENTER);
    //    gd.horizontalSpan=2;
    //    autoComposite.setLayoutData( gd );
    //    autoEditor = new ButtonFieldEditor(
    //        String.format(UITexts.autodetectButton_label, fullExeName),
    //        UITexts.autodetectButton_text,
    //        new SelectionAdapter() {
    //          @Override
    //          public void widgetSelected(final SelectionEvent e) {
    //            String old=fieldEditor.getStringValue();
    //            doDetect();
    //            listener.propertyChange( new PropertyChangeEvent( this, "path", old, fieldEditor.getStringValue() ) );
    //          }
    //        },
    //        autoComposite );
    //    autoEditor.setPage( page );
    //    autoEditor.setPreferenceStore( page.getPreferenceStore() );
    //    autoEditor.load();

    installButton = new Button(fieldComposite, SWT.PUSH);
    installButton.setImage(HaskellUIImages.getImage(IImageNames.HACKAGE_INSTALL));
    installButton.setToolTipText(String.format(UITexts.installHackageButton_label, exeName));
    installButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(final SelectionEvent e) {

            installButton.setEnabled(false);
            final String oldVal = fieldEditor.getStringValue();

            final InstallExecutableRunnable r = new InstallExecutableRunnable();
            r.setCabalUpdate(false);
            r.setGlobal(false);
            r.getPackages().add(new InstallExecutableRunnable.Package(exeName, pkgName, null));
            r.setNextRunnable(new Runnable() {
                @Override
                public void run() {
                    Runnable r2 = new Runnable() {
                        /* (non-Javadoc)
                         * @see java.lang.Runnable#run()
                         */
                        @Override
                        public void run() {
                            if (!shell.isDisposed() && !installButton.isDisposed()) {
                                if (r.getErrors().size() > 0) {
                                    MessageDialog.openError(shell, UITexts.installHackageButton_errorTitle,
                                            r.getErrors().iterator().next());
                                } else {
                                    File f = r.getFiles().get(exeName);
                                    if (f != null) {
                                        String newVal = f.getAbsolutePath();
                                        fieldEditor.setStringValue(newVal);
                                        listener.propertyChange(
                                                new PropertyChangeEvent(this, "path", oldVal, newVal));
                                        fieldEditor.checkState();
                                    }
                                }
                                installButton.setEnabled(true);
                            }

                        }
                    };
                    HaskellUIPlugin.getStandardDisplay().asyncExec(r2);

                }
            });
            final String title = NLS.bind(UITexts.installExecutableProgress, exeName);
            new Job(title) {
                @Override
                protected IStatus run(final IProgressMonitor monitor) {
                    monitor.beginTask(title, IProgressMonitor.UNKNOWN);
                    try {
                        r.run();
                    } finally {
                        monitor.done();
                    }
                    return Status.OK_STATUS;
                }
            }.schedule();

        }
    });

    //    installComposite=new Composite(parent,SWT.NONE);
    //    gd = new GridData(GridData.HORIZONTAL_ALIGN_FILL | GridData.GRAB_HORIZONTAL | GridData.VERTICAL_ALIGN_CENTER);
    //    gd.horizontalSpan=2;
    //    installComposite.setLayoutData( gd );
    //    installEditor = new ButtonFieldEditor(
    //        String.format(UITexts.installHackageButton_label, exeName),
    //        UITexts.installHackageButton_text,
    //        new SelectionAdapter() {
    //          @Override
    //          public void widgetSelected(final SelectionEvent e) {
    //            final Control c=((Control)e.widget);
    //            c.setEnabled( false );
    //            final String oldVal=fieldEditor.getStringValue();
    //
    //            final InstallExecutableRunnable r=new InstallExecutableRunnable();
    //            r.setCabalUpdate( false );
    //            r.setGlobal( false );
    //            r.getPackages().add( new InstallExecutableRunnable.Package( exeName, null ) );
    //            r.setNextRunnable( new Runnable(){
    //              @Override
    //              public void run() {
    //                Runnable r2=new Runnable(){
    //                  /* (non-Javadoc)
    //                   * @see java.lang.Runnable#run()
    //                   */
    //                  @Override
    //                  public void run() {
    //                    if (r.getErrors().size()>0){
    //                      MessageDialog.openError(shell,
    //                          UITexts.installHackageButton_errorTitle,
    //                          r.getErrors().iterator().next());
    //                    } else {
    //                      File f=r.getFiles().get( exeName );
    //                      if (f!=null){
    //                        String newVal=f.getAbsolutePath();
    //                        fieldEditor.setStringValue(newVal);
    //                        listener.propertyChange( new PropertyChangeEvent( this, "path", oldVal, newVal) ) ;
    //                      }
    //                    }
    //                    c.setEnabled( true );
    //
    //                  }
    //                };
    //                HaskellUIPlugin.getStandardDisplay().asyncExec( r2 );
    //
    //              }
    //            } );
    //            final String title=NLS.bind( UITexts.installExecutableProgress,exeName);
    //            new Job(title){
    //              @Override
    //              protected IStatus run(final IProgressMonitor monitor) {
    //                monitor.beginTask(title, IProgressMonitor.UNKNOWN);
    //                try {
    //                  r.run();
    //                } finally {
    //                  monitor.done();
    //                }
    //                return Status.OK_STATUS;
    //              }
    //            }.schedule();
    //
    //
    //          }
    //        },
    //        installComposite );
    //    installEditor.setPage( page );
    //    installEditor.setPreferenceStore( page.getPreferenceStore() );
    //    installEditor.load();
}

From source file:org.apache.metro.studio.eclipse.ui.common.ModelObject.java

License:Apache License

/**
 * /*from   www. j  a v a  2s  .  c o  m*/
 */
public ModelObject(DialogPage page) {
    super();
    defaults = new Hashtable();

    if (page instanceof PropertyPage) {
        final PropertyPage propPage = (PropertyPage) page;
        element = (IResource) propPage.getElement();
    } else if (page instanceof PreferencePage) {
        PreferencePage prefPage = (PreferencePage) page;
        store = prefPage.getPreferenceStore();
    } else {
        final String message = "Unsupported DialogPage type: " + page.getClass().getName();
        throw new IllegalArgumentException(message);
    }
}

From source file:org.eclipse.team.internal.ui.dialogs.PreferencePageContainerDialog.java

License:Open Source License

/**
 * Save the values specified in the pages.
 * <p>//from  w  w w.j  av  a2  s  .  c  om
 * The default implementation of this framework method saves all
 * pages of type <code>PreferencePage</code> (if their store needs saving
 * and is a <code>PreferenceStore</code>).
 * </p>
 * <p>
 * Subclasses may override.
 * </p>
 */
protected void handleSave() {
    // Save now in case tbe workbench does not shutdown cleanly
    for (int i = 0; i < pages.length; i++) {
        PreferencePage page = pages[i];
        IPreferenceStore store = page.getPreferenceStore();
        if (store != null && store.needsSaving() && store instanceof IPersistentPreferenceStore) {
            try {
                ((IPersistentPreferenceStore) store).save();
            } catch (IOException e) {
                Utils.handle(e);
            }
        }
    }
}