1 #ifndef Header_Terminal_Config
2 #define Header_Terminal_Config
3 #include <QString>
4 #include <QFont>
5 #include <QApplication>
6 #include <QStringList>
7 
8 class InternalTerminalConfig
9 {
10 public:
11 #ifdef INTERNAL_TERMINAL
12 	// terminal
13 	QString terminalColorScheme;
14 	QString terminalFontFamily;
15 	int terminalFontSize;
16 	QString terminalShell;
17 
initDefaults(const QStringList & xf)18 	void initDefaults(const QStringList& xf){
19 #ifdef Q_OS_WIN32
20 	if (terminalFontFamily.isEmpty()) {
21 		if (xf.contains("Consolas", Qt::CaseInsensitive)) terminalFontFamily = "Consolas";
22 		else if (xf.contains("Courier New", Qt::CaseInsensitive)) terminalFontFamily = "Courier New";
23 		else terminalFontFamily = qApp->font().family();
24 	}
25 	if (terminalFontSize == -1) terminalFontSize = 10;
26 #else
27 	if (terminalFontFamily.isEmpty()) {
28 		if (xf.contains("DejaVu Sans Mono", Qt::CaseInsensitive)) terminalFontFamily = "DejaVu Sans Mono";
29 		else if (xf.contains("Lucida Sans Typewriter", Qt::CaseInsensitive)) terminalFontFamily = "Lucida Sans Typewriter";
30 		else terminalFontFamily = qApp->font().family();
31 	}
32 	if (terminalFontSize == -1) terminalFontSize = qApp->font().pointSize();
33 #endif
34 	}
35 
36 #endif
37 };
38 
39 #endif // TERMINAL_CONFIG_H
40 
41