1
package org.herac.tuxguitar.gui.util;
3
import org.herac.tuxguitar.gui.TuxGuitar;
4
import org.herac.tuxguitar.gui.system.config.ConfigKeys;
6
public class WindowTitleUtil {
7
private static final String VAR_START = "${";
8
private static final String VAR_END = "}";
10
public static final String VAR_APP_NAME = "appname";
11
public static final String VAR_APP_VERSION = "appversion";
12
public static final String VAR_FILE_NAME = "filename";
13
public static final String VAR_FILE_PATH = "filepath";
14
public static final String VAR_SONG_NAME = "songname";
15
public static final String VAR_SONG_AUTHOR = "songauthor";
16
public static final String VAR_SONG_ALBUM = "songalbum";
17
public static final String VAR_SONG_INTERPRET = "songinterpret";
19
public static String parseTitle(){
20
String title = parseString(TuxGuitar.instance().getConfig().getStringConfigValue(ConfigKeys.WINDOW_TITLE));
21
return ((title == null)?TuxGuitar.TUXGUITAR_NAME:title);
24
private static String parseString(String src){
27
String result = new String();
28
for(int pos = 0; pos < src.length(); pos ++){
29
int startIndex = src.indexOf(VAR_START, pos );
30
int endIndex = startIndex;
32
endIndex = src.indexOf(VAR_END,(startIndex + VAR_START.length()));
34
if((startIndex >= 0) && endIndex > (startIndex + VAR_START.length()) ){
36
result += src.substring(pos,startIndex );
38
String var = src.substring(startIndex,(endIndex + 1));
39
result += parseVar(var);
42
result += src.substring(pos,src.length() );
54
private static String parseVar(String var){
55
String varName = var.substring((VAR_START.length()),(var.length() - 1));
56
String varValue = var;
57
if(varName.equals(VAR_APP_NAME)){
58
varValue = TuxGuitar.TUXGUITAR_NAME;
59
}else if(varName.equals(VAR_APP_VERSION)){
60
varValue = TuxGuitar.TUXGUITAR_VERSION;
61
}else if(varName.equals(VAR_FILE_NAME)){
62
varValue = TuxGuitar.instance().getFileHistory().getFileName();
63
}else if(varName.equals(VAR_FILE_PATH)){
64
varValue = TuxGuitar.instance().getFileHistory().getFilePath();
65
}else if(varName.equals(VAR_SONG_NAME)){
66
varValue = TuxGuitar.instance().getSongManager().getSong().getName();
67
}else if(varName.equals(VAR_SONG_AUTHOR)){
68
varValue = TuxGuitar.instance().getSongManager().getSong().getAuthor();
69
}else if(varName.equals(VAR_SONG_ALBUM)){
70
varValue = TuxGuitar.instance().getSongManager().getSong().getAlbum();
71
}else if(varName.equals(VAR_SONG_INTERPRET)){
72
varValue = TuxGuitar.instance().getSongManager().getSong().getInterpret();
77
public static String getVar(String varName){
78
return (VAR_START + varName + VAR_END);
b'\\ No newline at end of file'