eclipse / chemclipse

ChemClipse Project
Eclipse Public License 1.0
37 stars 18 forks source link

PreferenceInitializer - default initialization part III #1606

Closed eselmeister closed 8 months ago

eselmeister commented 8 months ago

Depends on: https://github.com/eclipse/chemclipse/issues/1604

eselmeister commented 8 months ago

Using settings can't be easier than that:

public class PreferenceSupplier extends AbstractPreferenceSupplier implements IPreferenceSupplier {

    public static final int MIN_LIMIT = 1;
    public static final int MAX_LIMIT = Integer.MAX_VALUE;
    //
    public static final String P_LIMIT = "limit";
    public static final int DEF_LIMIT = 5;

    public static IPreferenceSupplier INSTANCE() {

        return INSTANCE(PreferenceSupplier.class);
    }

    @Override
    public String getPreferenceNode() {

        return Activator.getContext().getBundle().getSymbolicName();
    }

    @Override
    public void initializeDefaults() {

        putDefault(P_LIMIT, DEF_LIMIT);
    }

    public static int getLimit() {

        return INSTANCE().getInteger(P_LIMIT);
    }

    public static void setLimit(int limit) {

        INSTANCE().putInteger(P_LIMIT, limit);
    }
}