You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

171 lines
5.4 KiB

// Configuration
static String VERSION = "1.2";
static int FRAMERATE = 60;
static int WINDOWSIZE = 400;
static int FRAMEBORDER = 10;
static String SOFTWARE = "";
static String SOFTWAREIN = "";
static String SOFTWARESEL = "";
static String SOFTWAREINSEL = "";
static boolean DEBUG = false;
static boolean NOSEND = false;
static boolean NETWORK = false;
static boolean HEADLESS = false;
static boolean LIVECONTROL = false;
static boolean LIVEENABLED = false;
static int USERMODE = 1;
static int MAXCHAINS = 64;
static boolean DEMO = false;
static String DEMOTEXT = "katapult";
static int DEMOCHOICE = -1;
static boolean SILENTMODE = false;
// Internal variables
static String config[];
static int CLINESIN = -1;
static int CLINESOUT = -1;
static boolean DEVICECONFIG = false;
void loadConfig() {
config = loadStrings("config.txt");
for (int i = 0; i < config.length; i++) {
String configLine[] = split(config[i], "=");
if (configLine[0].equals("in")) {
SOFTWAREIN = configLine[1];
SOFTWAREINSEL = configLine[1];
CLINESIN = i;
}
if (configLine[0].equals("out")) {
SOFTWARE = configLine[1];
SOFTWARESEL = configLine[1];
CLINESOUT = i;
}
if (configLine[0].equals("abletonlive")) {
if (configLine[1].equals("yes")) { LIVEENABLED = true; }
}
if (configLine[0].equals("liveusermode")) {
if (configLine[1].equals("2")) { USERMODE = 2; }
}
if (configLine[0].equals("silent")) {
if (configLine[1].equals("yes")) { SILENTMODE = true; WINDOWSIZE = 150; }
}
if (configLine[0].equals("headless")) {
if (configLine[1].equals("yes")) { HEADLESS = true; VERSION = VERSION + " headless"; }
}
if (configLine[0].equals("holdoffcolor")) {
BUTTONIDLECOLOR = parseColor(configLine[1]);
}
if (configLine[0].equals("holdoncolor")) {
HOLDONCOLOR = parseColor(configLine[1]);
}
if (configLine[0].equals("toggleoffcolor")) {
TOGGLEOFFCOLOR = parseColor(configLine[1]);
}
if (configLine[0].equals("toggleoncolor")) {
TOGGLEONCOLOR = parseColor(configLine[1]);
}
if (configLine[0].equals("faderoffcolor")) {
FADERIDLECOLOR = parseColor(configLine[1]);
}
if (configLine[0].equals("faderoncolor")) {
FADERACTIVECOLOR = parseColor(configLine[1]);
}
if (configLine[0].equals("slideroffcolor")) {
SLIDERIDLECOLOR = parseColor(configLine[1]);
}
if (configLine[0].equals("slideroncolor")) {
SLIDERACTIVECOLOR = parseColor(configLine[1]);
}
if (configLine[0].equals("pagebuttononcolor")) {
PAGEBUTTONACTIVECOLOR = parseColor(configLine[1]);
}
if (configLine[0].equals("pagebuttonoffcolor")) {
PAGEBUTTONIDLECOLOR = parseColor(configLine[1]);
}
if (configLine[0].equals("meteroffcolor")) {
METERIDLECOLOR = parseColor(configLine[1]);
}
if (configLine[0].equals("meteroncolor")) {
METERACTIVECOLOR = parseColor(configLine[1]);
}
if (configLine[0].equals("progressoffcolor")) {
PROGRESSIDLECOLOR = parseColor(configLine[1]);
}
if (configLine[0].equals("progressoncolor")) {
PROGRESSACTIVECOLOR = parseColor(configLine[1]);
}
if (configLine[0].equals("noteoffcolor")) {
NOTEIDLECOLOR = parseColor(configLine[1]);
}
if (configLine[0].equals("noteoncolor")) {
NOTEACTIVECOLOR = parseColor(configLine[1]);
}
if (configLine[0].equals("cconcolor")) {
CCACTIVECOLOR = parseColor(configLine[1]);
}
if (configLine[0].equals("ccoffcolor")) {
CCIDLECOLOR = parseColor(configLine[1]);
}
if (configLine[0].equals("pconcolor")) {
PCACTIVECOLOR = parseColor(configLine[1]);
}
if (configLine[0].equals("pcoffcolor")) {
PCIDLECOLOR = parseColor(configLine[1]);
}
if (configLine[0].equals("kbdoncolor")) {
KBDACTIVECOLOR = parseColor(configLine[1]);
}
if (configLine[0].equals("kbdoffcolor")) {
KBDIDLECOLOR = parseColor(configLine[1]);
}
if (configLine[0].equals("demotextcolor")) {
SCROLLERCOLOR = parseColor(configLine[1]);
}
if (configLine[0].equals("demotext")) {
DEMOTEXT = configLine[1];
}
if (configLine[0].equals("demochoice")) {
DEMOCHOICE = Integer.parseInt(configLine[1]);
}
if (configLine[0].equals("b1")) {
overrideBitmap(0, configLine[1]);
}
if (configLine[0].equals("b2")) {
overrideBitmap(1, configLine[1]);
}
if (configLine[0].equals("b3")) {
overrideBitmap(2, configLine[1]);
}
if (configLine[0].equals("b4")) {
overrideBitmap(3, configLine[1]);
}
if (configLine[0].equals("b5")) {
overrideBitmap(4, configLine[1]);
}
if (configLine[0].equals("b6")) {
overrideBitmap(5, configLine[1]);
}
}
if (!SOFTWAREIN.equals("") && !SOFTWARE.equals("")) DEVICECONFIG = true;
storeDefaultColors();
}
void saveConfig() {
//debug("saveConfig()");
int configlength = config.length;
//debug("Configlength "+configlength);
if (CLINESIN == -1) { CLINESIN = configlength; configlength++; }
if (CLINESOUT == -1) { CLINESOUT = configlength; configlength++; }
//debug("Configlength "+configlength);
String[] newconfig = new String[configlength];
for (int i = 0; i < config.length; i++) {
newconfig[i] = config[i];
}
//debug("linein"+CLINESIN);
//debug("lineout"+CLINESOUT);
//debug("Configlength "+newconfig.length);
newconfig[CLINESIN] = "in="+SOFTWAREIN;
newconfig[CLINESOUT] = "out="+SOFTWARE;
saveStrings("config.txt", newconfig);
}