optionsbacklight.java

来自「GPS Track connects to a GPS and records 」· Java 代码 · 共 58 行

JAVA
58
字号
// J2ME GPS Track
// Copyright (C) 2006 Dana Peters
// http://www.qcontinuum.org/gpstrack

package org.qcontinuum.gpstrack;

import javax.microedition.lcdui.*;

public class OptionsBacklight extends List implements CommandListener {
    
    private Displayable mParent;
    private Command mOkCommand, mCancelCommand;
    
    private static final String mBacklightStrings[] = {
        "Disabled",
        "20 sec",
        "40 sec",
        "60 sec",
        "90 sec",
        "120 sec"
    };
    private static final int mBacklightValues[] = { 0, 20, 40, 60, 90, 120 };

    public OptionsBacklight(Displayable parent) {
        super("Backlight", List.EXCLUSIVE, mBacklightStrings, null);
        mParent = parent;
        Preferences preferences = GpsTrack.getPreferences();
        setSelectedIndex(findClosestValue(mBacklightValues, preferences.getBacklightSeconds()), true);
        addCommand(mOkCommand = new Command("OK", Command.OK, 0));
        addCommand(mCancelCommand = new Command("Cancel", Command.CANCEL, 0));
        setCommandListener(this);
    }

    public void commandAction(Command c, Displayable d)  {
        if (c == mOkCommand) {
            Preferences preferences = GpsTrack.getPreferences();
            preferences.setBacklightSeconds(mBacklightValues[getSelectedIndex()]);
            preferences.save();
            GpsTrack.display(mParent);
        } else if (c == mCancelCommand) {
            GpsTrack.display(mParent);
        }
    }

    private int findClosestValue(int [] values, int value) {
        int index, minIndex = -1, minDelta = -1;
        for (index = 0; index < values.length; index++) {
            int delta = Math.abs(values[index] - value);
            if (minDelta > delta || minDelta < 0) {
                minIndex = index;
                minDelta = delta;
            }
        }
        return minIndex;
    }

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?