Example usage for org.eclipse.jface.preference RadioGroupFieldEditor load

List of usage examples for org.eclipse.jface.preference RadioGroupFieldEditor load

Introduction

In this page you can find the example usage for org.eclipse.jface.preference RadioGroupFieldEditor load.

Prototype

public void load() 

Source Link

Document

Initializes this field editor with the preference value from the preference store.

Usage

From source file:org.eclipse.linuxtools.internal.rpm.createrepo.preference.CreaterepoPreferencePage.java

License:Open Source License

@Override
protected void createFieldEditors() {
    Composite parent = getFieldEditorParent();
    // general group
    Group generalGroup = new Group(parent, SWT.SHADOW_ETCHED_IN);
    generalGroup.setText(Messages.CreaterepoPreferencePage_generalGroupLabel);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.CENTER).grab(true, false).span(2, 1)
            .applyTo(generalGroup);//from  w  w w .  ja v  a 2  s  . com

    // generate unique metadata filenames
    BooleanFieldEditor bfeIncludeChecksum = new BooleanFieldEditor(
            CreaterepoPreferenceConstants.PREF_UNIQUE_MD_NAME,
            Messages.CreaterepoPreferencePage_booleanChecksumName, generalGroup);
    bfeIncludeChecksum.load();
    bfeIncludeChecksum.setPropertyChangeListener(this);
    addField(bfeIncludeChecksum);

    // generate sqlite databases
    BooleanFieldEditor bfeSQLDB = new BooleanFieldEditor(CreaterepoPreferenceConstants.PREF_GENERATE_DB,
            Messages.CreaterepoPreferencePage_booleanGenerateSQLDB, generalGroup);
    bfeSQLDB.load();
    bfeSQLDB.setPropertyChangeListener(this);
    addField(bfeSQLDB);

    // ignore symlinks for packages
    BooleanFieldEditor bfeIgnoreSymlinks = new BooleanFieldEditor(
            CreaterepoPreferenceConstants.PREF_IGNORE_SYMLINKS,
            Messages.CreaterepoPreferencePage_booleanIgnoreSymlinks, generalGroup);
    bfeIgnoreSymlinks.load();
    bfeIgnoreSymlinks.setPropertyChangeListener(this);
    addField(bfeIgnoreSymlinks);

    // output files in pretty xml format
    BooleanFieldEditor bfePrettyXML = new BooleanFieldEditor(CreaterepoPreferenceConstants.PREF_PRETTY_XML,
            Messages.CreaterepoPreferencePage_booleanPrettyXML, generalGroup);
    bfePrettyXML.load();
    bfePrettyXML.setPropertyChangeListener(this);
    addField(bfePrettyXML);

    // number of workers
    IntegerFieldEditor ifeSpawns = new IntegerFieldEditor(CreaterepoPreferenceConstants.PREF_WORKERS,
            Messages.CreaterepoPreferencePage_numWorkers, generalGroup);
    // more than 128 is alot. limiting. (createrepo warning)
    ifeSpawns.setValidRange(0, 128);
    ifeSpawns.load();
    addField(ifeSpawns);
    updateGroupSpacing(generalGroup);

    // updates group
    Group updatesGroup = new Group(parent, SWT.SHADOW_ETCHED_IN);
    updatesGroup.setText(Messages.CreaterepoPreferencePage_updateGroupLabel);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.CENTER).grab(true, false).span(2, 1)
            .hint(10, SWT.DEFAULT).applyTo(updatesGroup);

    // don't generate repo metadata, if their timestamps are newer than its rpms
    BooleanFieldEditor bfeSameFilename = new BooleanFieldEditor(CreaterepoPreferenceConstants.PREF_CHECK_TS,
            Messages.CreaterepoPreferencePage_booleanCheckTS, updatesGroup);
    bfeSameFilename.load();
    bfeSameFilename.setPropertyChangeListener(this);
    addField(bfeSameFilename);

    // note of caution
    Label lblCheckTs = new Label(updatesGroup, SWT.WRAP);
    lblCheckTs.setText(Messages.CreaterepoPreferencePage_checkTSNote);
    GridData data = new GridData();
    data.widthHint = 130;
    data.horizontalAlignment = SWT.FILL;
    data.grabExcessHorizontalSpace = true;
    data.horizontalIndent = 5;
    lblCheckTs.setLayoutData(data);
    updateGroupSpacing(updatesGroup);

    // changelog group
    Group changelogGroup = new Group(parent, SWT.SHADOW_ETCHED_IN);
    changelogGroup.setText(Messages.CreaterepoPreferencePage_changelogGroupLabel);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.CENTER).grab(true, false).span(2, 1)
            .hint(10, SWT.DEFAULT).applyTo(changelogGroup);

    // don't generate repo metadata, if their timestamps are newer than its rpms
    IntegerFieldEditor ifeChangelogLimit = new IntegerFieldEditor(
            CreaterepoPreferenceConstants.PREF_CHANGELOG_LIMIT,
            Messages.CreaterepoPreferencePage_numChangelogLimit, changelogGroup);
    ifeChangelogLimit.setValidRange(0, Integer.MAX_VALUE);
    ifeChangelogLimit.load();
    ifeChangelogLimit.setPropertyChangeListener(this);
    addField(ifeChangelogLimit);
    updateGroupSpacing(changelogGroup);

    Composite checksumsContainer = new Composite(parent, SWT.NONE);
    checksumsContainer.setLayout(new GridLayout());
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.CENTER).indent(0, 20).grab(true, false)
            .applyTo(checksumsContainer);
    // available checksums
    RadioGroupFieldEditor rgfeChecksums = new RadioGroupFieldEditor(CreaterepoPreferenceConstants.PREF_CHECKSUM,
            Messages.CreaterepoPreferencePage_checksumGroupLabel, 1,
            new String[][] { { ICreaterepoChecksums.SHA1, ICreaterepoChecksums.SHA1 },
                    { ICreaterepoChecksums.MD5, ICreaterepoChecksums.MD5 },
                    { ICreaterepoChecksums.SHA256, ICreaterepoChecksums.SHA256 },
                    { ICreaterepoChecksums.SHA512, ICreaterepoChecksums.SHA512 } },
            checksumsContainer, true);
    rgfeChecksums.load();
    rgfeChecksums.setPropertyChangeListener(this);
    addField(rgfeChecksums);

    Composite compressContainer = new Composite(parent, SWT.NONE);
    compressContainer.setLayout(new GridLayout());
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.CENTER).indent(0, 20).grab(true, false)
            .applyTo(compressContainer);
    // available compression types
    RadioGroupFieldEditor rgfeCompressionTypes = new RadioGroupFieldEditor(
            CreaterepoPreferenceConstants.PREF_COMPRESSION_TYPE,
            Messages.CreaterepoPreferencePage_compressionGroupLabel, 1,
            new String[][] { { ICreaterepoCompressionTypes.COMPAT, ICreaterepoCompressionTypes.COMPAT },
                    { ICreaterepoCompressionTypes.XZ, ICreaterepoCompressionTypes.XZ },
                    { ICreaterepoCompressionTypes.GZ, ICreaterepoCompressionTypes.GZ },
                    { ICreaterepoCompressionTypes.BZ2, ICreaterepoCompressionTypes.BZ2 } },
            compressContainer, true);
    rgfeCompressionTypes.load();
    rgfeCompressionTypes.setPropertyChangeListener(this);
    addField(rgfeCompressionTypes);
}