package org.geogebra.common.main;
import org.geogebra.common.kernel.Kernel;
/**
* @author michael
*
*/
public class GeoGebraPreferencesXML {
/**
* these can get changed by --screenDPI (and maybe by --screenResX,
* --screenResY)
*/
private static int defaultFontSize = 16;
private static int defaultWindowX = 800;
private static int defaultWindowY = 600;
/**
* @return defaults as XML
*/
public static String getXML(App app) {
int rightAngleStyle = app.getLocalization().getRightAngleStyle();
boolean xAxis = app.getSettings().getEuclidian(1).getShowAxis(0);
boolean yAxis = app.getSettings().getEuclidian(1).getShowAxis(1);
return "<?xml version=\"1.0\" encoding=\"utf-8\"?>"
+ "<geogebra format=\"5.0\" xsi:noNamespaceSchemaLocation=\"http://www.geogebra.org/ggb.xsd\" xmlns=\"\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" >"
+ "<gui>"
+ "<window width=\""
// dynamic bit!
+ defaultWindowX + "\" height=\""
// dynamic bit!
+ defaultWindowY
+ "\" />"
+ "<settings ignoreDocument=\"false\" showTitleBar=\"true\" />"
+ "<labelingStyle val=\"0\"/>" + "<font size=\""
// dynamic bit!
+ defaultFontSize
+ "\"/>" + "<menuFont size=\"-1\"/>"
+ "<tooltipSettings language=\"\" timeout=\"0\"/>" + "</gui>"
+ "<euclidianView>"
+ "<size width=\"640\" height=\"480\"/>"
+ "<coordSystem xZero=\"215.0\" yZero=\"315.0\" scale=\"50.0\" yscale=\"50.0\"/>"
+ "<evSettings axes=\"true\" grid=\"false\" gridIsBold=\"false\" pointCapturing=\"3\" rightAngleStyle=\""
// dynamic
+ rightAngleStyle
+ "\" checkboxSize=\"26\" gridType=\"0\"/>"
+ "<bgColor r=\"255\" g=\"255\" b=\"255\"/>"
+ "<axesColor r=\"0\" g=\"0\" b=\"0\"/>"
+ "<gridColor r=\"192\" g=\"192\" b=\"192\"/>"
+ "<lineStyle axes=\"1\" grid=\"0\"/>"
+ "<axis id=\"0\" show=\"" + xAxis
+ "\" label=\"\" unitLabel=\"\" tickStyle=\"1\" showNumbers=\"true\" axisCross=\"0.0\" positiveAxis=\"false\"/>"
+ "<axis id=\"1\" show=\"" + yAxis
+ "\" label=\"\" unitLabel=\"\" tickStyle=\"1\" showNumbers=\"true\" axisCross=\"0.0\" positiveAxis=\"false\"/>"
+ "</euclidianView>"
+ "<kernel>" + "<continuous val=\"false\"/>"
+ "<decimals val=\"2\"/>" + "<angleUnit val=\"degree\"/>"
+ "<algebraStyle val=\""
// dynamic bit!
+ (app.has(Feature.AV_DEFINITION_AND_VALUE)
? Kernel.ALGEBRA_STYLE_DEFINITION_AND_VALUE
: Kernel.ALGEBRA_STYLE_VALUE)
+ "\"/>"
+ "<coordStyle val=\"0\"/>"
+ "<localization digits=\"false\" labels=\"true\"/>"
+ "<angleFromInvTrig val=\"false\"/>"
+ "<casSettings timeout=\"5\" expRoots=\"true\"/>"
+ "</kernel>"
+ "<scripting blocked=\"false\"/>" + "</geogebra>";
}
public static void setDefaultFontSize(int i) {
defaultFontSize = i;
}
public static void setDefaultWindowX(int i) {
defaultWindowX = i;
}
public static void setDefaultWindowY(int i) {
defaultWindowY = i;
}
}