diff --git a/.gitignore b/.gitignore
index 655c712..e17adab 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,2 +1,3 @@
target*
build*
+bin*
\ No newline at end of file
diff --git a/.vscode/settings.json b/.vscode/settings.json
index cf117bd..7a87fbd 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -1,3 +1,4 @@
{
- "java.home": "/usr/local/Cellar/openjdk/17.0.1_1"
+ "java.home": "/usr/local/Cellar/openjdk/17.0.1_1",
+ "java.configuration.updateBuildConfiguration": "automatic"
}
\ No newline at end of file
diff --git a/README b/README.md
similarity index 58%
rename from README
rename to README.md
index 57c8b26..b7490ae 100644
--- a/README
+++ b/README.md
@@ -1,21 +1,28 @@
-UPDATE: Server has moved. Please use "guitartex2.nikolai-rinas.de" instead
+# Server online: guitartex2.nikolai-rinas.de
-Release Notes
+## Documentation
+ * Available in German
+ * Available in English
+
+
+## Release Notes
=============
-Version 3.4.1
-* New build pipeline with VSC and maven
-* Code cleanup
-* Dropped standalone mac app support
+### Version 3.4.1
+ * New build pipeline with VSC and maven
+ * Code cleanup
+ * Dropped standalone mac app support
+ * Standalone gtx converter available
+ * Published build versions for Windows/Linux/Mac
-Version 3.4.0:
-* Code cleanup: Java 1.8 is required
-* App for Mac: Embedded Java runtime. Works standalone
+### Version 3.4.0:
+ * Code cleanup: Java 1.8 is required
+ * App for Mac: Embedded Java runtime. Works standalone
-Version 3.3.1
+### Version 3.3.1
* Defaultwerte angepasst
-Version 3.3.0:
+### Version 3.3.0:
* std:Ausgaben auf die interne Konsole umleiten
* Harp-Notes hinzugefuegt
* Parser: An die Harp-Notes angepasst
@@ -26,23 +33,23 @@ Version 3.3.0:
* Direktivloser Text wird nicht geparsed
* Link auf die Webseite mit den Shortcuts
-Version 3.2.5:
+### Version 3.2.5:
* Configuration: Systeme werden mid regex erkannt
* Konsole eingebaut
* Template fuer neue Dokumente
-Version 3.2.4:
+### Version 3.2.4:
* Sprachbutton hinzugefuegt
* FAQ Link im Menue hinzugefuegt
-Version 3.2.3:
+### Version 3.2.3:
* UTF8 Support
-Version 3.2.2:
+### Version 3.2.2:
* Parser: Windows \r wird korrekt geloescht
* Serverseitig: Windows-Dateien werden generell in Unix Format konvertiert
-Version 3.2.1:
+### Version 3.2.1:
* graphicx Packet entfernt
* Schriftarten auf lmodern umgeschaltet
* Neue Direktive {nopagenum}
diff --git a/build.xml b/build.xml
deleted file mode 100644
index e3b473c..0000000
--- a/build.xml
+++ /dev/null
@@ -1,95 +0,0 @@
-
-
-
-
-
-
-
-
-
-
- Builds, tests, and runs the project GuitarTeX2.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/buildApp.sh b/buildApp.sh
deleted file mode 100755
index f3ed5db..0000000
--- a/buildApp.sh
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/bin/bash
-
-ant bundle-GuitarTeX2
diff --git a/nbproject/build-impl.xml b/nbproject/build-impl.xml
deleted file mode 100644
index 668b810..0000000
--- a/nbproject/build-impl.xml
+++ /dev/null
@@ -1,1413 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Must set src.dir
- Must set test.src.dir
- Must set build.dir
- Must set dist.dir
- Must set build.classes.dir
- Must set dist.javadoc.dir
- Must set build.test.classes.dir
- Must set build.test.results.dir
- Must set build.classes.excludes
- Must set dist.jar
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Must set javac.includes
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- No tests executed.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Must set JVM to use for profiling in profiler.info.jvm
- Must set profiler agent JVM arguments in profiler.info.jvmargs.agent
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Must select some files in the IDE or set javac.includes
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- To run this application from the command line without Ant, try:
-
- java -jar "${dist.jar.resolved}"
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Must select one file in the IDE or set run.class
-
-
-
- Must select one file in the IDE or set run.class
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Must select one file in the IDE or set debug.class
-
-
-
-
- Must select one file in the IDE or set debug.class
-
-
-
-
- Must set fix.includes
-
-
-
-
-
-
-
-
-
- This target only works when run from inside the NetBeans IDE.
-
-
-
-
-
-
-
-
- Must select one file in the IDE or set profile.class
- This target only works when run from inside the NetBeans IDE.
-
-
-
-
-
-
-
-
- This target only works when run from inside the NetBeans IDE.
-
-
-
-
-
-
-
-
-
-
-
-
- This target only works when run from inside the NetBeans IDE.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Must select one file in the IDE or set run.class
-
-
-
-
-
- Must select some files in the IDE or set test.includes
-
-
-
-
- Must select one file in the IDE or set run.class
-
-
-
-
- Must select one file in the IDE or set applet.url
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Must select some files in the IDE or set javac.includes
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Some tests failed; see details above.
-
-
-
-
-
-
-
-
- Must select some files in the IDE or set test.includes
-
-
-
- Some tests failed; see details above.
-
-
-
- Must select some files in the IDE or set test.class
- Must select some method in the IDE or set test.method
-
-
-
- Some tests failed; see details above.
-
-
-
-
- Must select one file in the IDE or set test.class
-
-
-
- Must select one file in the IDE or set test.class
- Must select some method in the IDE or set test.method
-
-
-
-
-
-
-
-
-
-
-
-
-
- Must select one file in the IDE or set applet.url
-
-
-
-
-
-
-
-
- Must select one file in the IDE or set applet.url
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/GuitarTeX2.icns b/obsolete/GuitarTeX2.icns
similarity index 100%
rename from GuitarTeX2.icns
rename to obsolete/GuitarTeX2.icns
diff --git a/INSTALL b/obsolete/INSTALL
similarity index 100%
rename from INSTALL
rename to obsolete/INSTALL
diff --git a/examples/griechischer_wein.gtx b/obsolete/examples/griechischer_wein.gtx
similarity index 100%
rename from examples/griechischer_wein.gtx
rename to obsolete/examples/griechischer_wein.gtx
diff --git a/examples/lazy_blues.gtx b/obsolete/examples/lazy_blues.gtx
similarity index 100%
rename from examples/lazy_blues.gtx
rename to obsolete/examples/lazy_blues.gtx
diff --git a/examples/my_first_book.gtb b/obsolete/examples/my_first_book.gtb
similarity index 100%
rename from examples/my_first_book.gtb
rename to obsolete/examples/my_first_book.gtb
diff --git a/lib/appbundler-1.0.jar b/obsolete/lib/appbundler-1.0.jar
similarity index 100%
rename from lib/appbundler-1.0.jar
rename to obsolete/lib/appbundler-1.0.jar
diff --git a/manifest.mf b/obsolete/manifest.mf
similarity index 100%
rename from manifest.mf
rename to obsolete/manifest.mf
diff --git a/nbproject/genfiles.properties b/obsolete/nbproject/genfiles.properties
similarity index 100%
rename from nbproject/genfiles.properties
rename to obsolete/nbproject/genfiles.properties
diff --git a/nbproject/project.properties b/obsolete/nbproject/project.properties
similarity index 100%
rename from nbproject/project.properties
rename to obsolete/nbproject/project.properties
diff --git a/nbproject/project.xml b/obsolete/nbproject/project.xml
similarity index 100%
rename from nbproject/project.xml
rename to obsolete/nbproject/project.xml
diff --git a/pom.xml b/pom.xml
index a34d030..82860ed 100644
--- a/pom.xml
+++ b/pom.xml
@@ -18,34 +18,64 @@
-
-
- org.apache.maven.plugins
- maven-assembly-plugin
- 3.1.1
-
-
- jar-with-dependencies
-
-
-
- guitartex2.GuitarTeX2
-
-
+
+
+ org.apache.maven.plugins
+ maven-assembly-plugin
+ 3.1.1
+
+
+ jar-with-dependencies
+
+
+
+ guitartex2.GuitarTeX2
+
+
${project.artifactId}-${project.version}
false
-
-
-
- make-assembly
-
- package
-
- single
-
-
-
-
+
+
+
+ make-assembly
+
+ package
+
+ single
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-assembly-plugin
+ 3.1.1
+
+
+ jar-with-dependencies
+
+
+
+ guitartex2.GuitarTeX2Convert
+
+
+ ${project.artifactId}Convert-${project.version}
+ false
+
+
+
+ make-assembly
+
+ package
+
+ single
+
+
+
+
+
+
maven-surefire-plugin
diff --git a/src/main/java/guitartex2/GTXConsole.java b/src/main/java/guitartex2/GTXConsole.java
index 5b64ef9..ef3e631 100644
--- a/src/main/java/guitartex2/GTXConsole.java
+++ b/src/main/java/guitartex2/GTXConsole.java
@@ -72,8 +72,8 @@ class GTXConsole extends JFrame implements ActionListener{
resbundle = ResourceBundle.getBundle ("GuitarTeX2strings", Locale.getDefault());
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
- statusTop = new Double((screenSize.getHeight()/2) - (statusHeight/2)).intValue();
- statusLeft = new Double((screenSize.getWidth()/2) - (statusWidth/2)).intValue();
+ statusTop = Double.valueOf((screenSize.getHeight()/2) - (statusHeight/2)).intValue();
+ statusLeft = Double.valueOf((screenSize.getWidth()/2) - (statusWidth/2)).intValue();
this.setResizable(false);
diff --git a/src/main/java/guitartex2/GuitarTeX2.java b/src/main/java/guitartex2/GuitarTeX2.java
index 74adc32..f863e71 100644
--- a/src/main/java/guitartex2/GuitarTeX2.java
+++ b/src/main/java/guitartex2/GuitarTeX2.java
@@ -25,7 +25,6 @@ import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Cursor;
import java.awt.Dimension;
-import java.awt.Event;
import java.awt.FlowLayout;
import java.awt.Font;
import java.awt.GridLayout;
@@ -133,7 +132,7 @@ public class GuitarTeX2 extends JFrame {
private Action mFAQAction, mShortcutAction;
private Action mAboutAction;
- private Action mOpenTemplateSongAction, mOpenTemplateBookAction;
+ private Action mOpenTemplateSong1Action, mOpenTemplateSong2Action, mOpenTemplateBookAction;
private static int gtxWidth;
private static int gtxHeight;
@@ -277,7 +276,7 @@ public class GuitarTeX2 extends JFrame {
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
//gtxTop = new Double((screenSize.getHeight()/2) - (gtxHeight/2)).intValue();
gtxTop = 0;
- gtxLeft = new Double((screenSize.getWidth() / 2) - (gtxWidth / 2)).intValue();
+ gtxLeft = Double.valueOf((screenSize.getWidth() / 2) - (gtxWidth / 2)).intValue();
this.setLocation(gtxLeft, gtxTop);
this.setSize(gtxWidth, gtxHeight);
@@ -480,13 +479,13 @@ public class GuitarTeX2 extends JFrame {
mHarpUp.addActionListener(pmUpAction);
mHarpUp.setSelected(true);
InputMap inputMap = mEditArea.getInputMap();
- KeyStroke keyUp = KeyStroke.getKeyStroke(KeyEvent.VK_U, Event.CTRL_MASK);
+ KeyStroke keyUp = KeyStroke.getKeyStroke(KeyEvent.VK_U, KeyEvent.CTRL_DOWN_MASK);
inputMap.put(keyUp, pmUpAction);
mHarpDown = new JToggleButton(downButtonIcon);
Action pmDownAction = new mPMHarpActionClass("down");
mHarpDown.addActionListener(pmDownAction);
- KeyStroke keyDown = KeyStroke.getKeyStroke(KeyEvent.VK_J, Event.CTRL_MASK);
+ KeyStroke keyDown = KeyStroke.getKeyStroke(KeyEvent.VK_J, KeyEvent.CTRL_DOWN_MASK);
inputMap.put(keyDown, pmDownAction);
JPanel pm = new JPanel();
@@ -617,7 +616,7 @@ public class GuitarTeX2 extends JFrame {
private JButton createChordButton(Action aButton, int keyEvent) {
InputMap inputMap = mEditArea.getInputMap();
- KeyStroke key = KeyStroke.getKeyStroke(keyEvent, Event.CTRL_MASK);
+ KeyStroke key = KeyStroke.getKeyStroke(keyEvent, KeyEvent.CTRL_DOWN_MASK);
inputMap.put(key, aButton);
JButton chord = new JButton(aButton);
@@ -632,7 +631,7 @@ public class GuitarTeX2 extends JFrame {
private JButton createHarpButton(Action hButton, int keyEvent) {
InputMap inputMap = mEditArea.getInputMap();
- KeyStroke key = KeyStroke.getKeyStroke(keyEvent, Event.CTRL_MASK);
+ KeyStroke key = KeyStroke.getKeyStroke(keyEvent, KeyEvent.CTRL_DOWN_MASK);
inputMap.put(key, hButton);
JButton chord = new JButton(hButton);
@@ -654,7 +653,8 @@ public class GuitarTeX2 extends JFrame {
fileMenu.addSeparator();
JMenu templateMenu = new JMenu(resbundle.getString("templateItem"));
- templateMenu.add(mOpenTemplateSongAction);
+ templateMenu.add(mOpenTemplateSong1Action);
+ templateMenu.add(mOpenTemplateSong2Action);
templateMenu.add(mOpenTemplateBookAction);
fileMenu.add(templateMenu);
@@ -695,7 +695,8 @@ public class GuitarTeX2 extends JFrame {
mOpenAction = new openActionClass(resbundle.getString("openItem"),
KeyStroke.getKeyStroke(KeyEvent.VK_O, shortcutKeyMask));
- mOpenTemplateSongAction = new openActionClass(resbundle.getString("simpleSong"));
+ mOpenTemplateSong1Action = new openActionClass(resbundle.getString("simpleSong1"));
+ mOpenTemplateSong2Action = new openActionClass(resbundle.getString("simpleSong2"));
mOpenTemplateBookAction = new openActionClass(resbundle.getString("simpleBook"));
mSaveAction = new saveActionClass(resbundle.getString("saveItem"),
@@ -849,8 +850,12 @@ public class GuitarTeX2 extends JFrame {
@Override
public void actionPerformed(ActionEvent e) {
String fileName = "";
- if (e.getActionCommand().equals(resbundle.getString("simpleSong"))) {
- fileName = myConf.getSongTemplate();
+ if (e.getActionCommand().equals(resbundle.getString("simpleSong1"))) {
+ //fileName = myConf.getSongTemplate();
+ fileName = resbundle.getString("simpleSong1");
+ }
+ if (e.getActionCommand().equals(resbundle.getString("simpleSong2"))) {
+ fileName = resbundle.getString("simpleSong2");
}
if (e.getActionCommand().equals(resbundle.getString("simpleBook"))) {
fileName = myConf.getBookTemplate();
@@ -932,13 +937,25 @@ public class GuitarTeX2 extends JFrame {
}
private void openFile(String fileName) {
- File f = new File(fileName);
try {
- FileInputStream fis = new FileInputStream(f);
- mEditArea.read(new UnicodeReader(fis, "UTF-8"), "");
+ if ( fileName.contentEquals(resbundle.getString("simpleSong1")) ) {
+ mEditArea.read(new UnicodeReader(GuitarTeX2.class.getResourceAsStream("/examples/griechischer_wein.gtx"), "UTF-8"), "");
+ mActFileName = resbundle.getString("mNewFile");
+ mFileChooser.setSelectedFile(null);
+ tabbedPane.setTitleAt(0, resbundle.getString("mNewFile"));
+ }else if ( fileName.contentEquals(resbundle.getString("simpleSong2")) ) {
+ mEditArea.read(new UnicodeReader(GuitarTeX2.class.getResourceAsStream("/examples/lazy_blues.gtx"), "UTF-8"), "");
+ mActFileName = resbundle.getString("mNewFile");
+ mFileChooser.setSelectedFile(null);
+ tabbedPane.setTitleAt(0, resbundle.getString("mNewFile"));
+ }else{
+ File f = new File(fileName);
+ FileInputStream fis = new FileInputStream(f);
+ mEditArea.read(new UnicodeReader(fis, "UTF-8"), "");
+ mActFileName = f.getName();
+ tabbedPane.setTitleAt(0, mActFileName);
+ }
mEditArea.getDocument().addDocumentListener(new MyDocumentListener());
- mActFileName = f.getName();
- tabbedPane.setTitleAt(0, mActFileName);
mShowTeXArea.setText("");
mShowTeXArea.setEnabled(false);
mShowTeXArea.setVisible(false);
diff --git a/src/main/java/guitartex2/GuitarTeX2Convert.java b/src/main/java/guitartex2/GuitarTeX2Convert.java
index e2da69c..acabc6f 100644
--- a/src/main/java/guitartex2/GuitarTeX2Convert.java
+++ b/src/main/java/guitartex2/GuitarTeX2Convert.java
@@ -31,8 +31,8 @@ public class GuitarTeX2Convert {
String help = ""
+ resbundle.getString("appVersion") + "\n"
+ "Usage: \n"
- + " GuitarTeX2Converter -h help (this screen)\n"
- + " GuitarTeX2Converter -f convert gtx file and print to std out\n"
+ + " GuitarTeX2Convert -h help (this screen)\n"
+ + " GuitarTeX2Convert -f convert gtx file and print to std out\n"
+ "\n";
if (args.length != 0) {
diff --git a/src/main/java/guitartex2/InfoBox.java b/src/main/java/guitartex2/InfoBox.java
index a37f9b7..e8c920d 100644
--- a/src/main/java/guitartex2/InfoBox.java
+++ b/src/main/java/guitartex2/InfoBox.java
@@ -54,8 +54,8 @@ class InfoBox extends JFrame implements ActionListener{
resbundle = ResourceBundle.getBundle ("GuitarTeX2strings", Locale.getDefault());
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
- statusTop = new Double((screenSize.getHeight()/2) - (statusHeight/2)).intValue();
- statusLeft = new Double((screenSize.getWidth()/2) - (statusWidth/2)).intValue();
+ statusTop = Double.valueOf((screenSize.getHeight()/2) - (statusHeight/2)).intValue();
+ statusLeft = Double.valueOf((screenSize.getWidth()/2) - (statusWidth/2)).intValue();
this.setResizable(false);
diff --git a/src/main/java/guitartex2/PreferencesBox.java b/src/main/java/guitartex2/PreferencesBox.java
index a6b4bd5..4edaa16 100644
--- a/src/main/java/guitartex2/PreferencesBox.java
+++ b/src/main/java/guitartex2/PreferencesBox.java
@@ -206,8 +206,8 @@ public class PreferencesBox extends JFrame implements ActionListener {
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
- int aboutTop = new Double((screenSize.getHeight() / 2) - (this.getHeight() / 2)).intValue();
- int aboutLeft = new Double((screenSize.getWidth() / 2) - (this.getWidth() / 2)).intValue();
+ int aboutTop = Double.valueOf((screenSize.getHeight() / 2) - (this.getHeight() / 2)).intValue();
+ int aboutLeft = Double.valueOf((screenSize.getWidth() / 2) - (this.getWidth() / 2)).intValue();
this.setTitle(resbundle.getString("prefTitle"));
this.setLocation(aboutLeft, aboutTop);
diff --git a/src/main/java/guitartex2/StatusBox.java b/src/main/java/guitartex2/StatusBox.java
index 67cbb0f..72be366 100644
--- a/src/main/java/guitartex2/StatusBox.java
+++ b/src/main/java/guitartex2/StatusBox.java
@@ -53,8 +53,8 @@ public class StatusBox extends JFrame implements ActionListener {
resbundle = ResourceBundle.getBundle ("GuitarTeX2strings", Locale.getDefault());
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
- statusTop = new Double((screenSize.getHeight()/2) - (statusHeight/2)).intValue();
- statusLeft = new Double((screenSize.getWidth()/2) - (statusWidth/2)).intValue();
+ statusTop = Double.valueOf((screenSize.getHeight()/2) - (statusHeight/2)).intValue();
+ statusLeft = Double.valueOf((screenSize.getWidth()/2) - (statusWidth/2)).intValue();
this.setResizable(false);
@@ -96,8 +96,8 @@ public class StatusBox extends JFrame implements ActionListener {
public StatusBox(String myStatus) {
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
- statusTop = new Double((screenSize.getHeight()/2) - (statusHeight/2)).intValue();
- statusLeft = new Double((screenSize.getWidth()/2) - (statusWidth/2)).intValue();
+ statusTop = Double.valueOf((screenSize.getHeight()/2) - (statusHeight/2)).intValue();
+ statusLeft = Double.valueOf((screenSize.getWidth()/2) - (statusWidth/2)).intValue();
this.setResizable(false);
diff --git a/src/main/resources/GuitarTeX2strings.properties b/src/main/resources/GuitarTeX2strings.properties
index 2fb0e9e..cef4b14 100644
--- a/src/main/resources/GuitarTeX2strings.properties
+++ b/src/main/resources/GuitarTeX2strings.properties
@@ -5,7 +5,8 @@ closeItem=Close
saveItem=Save
saveAsItem=Save As...
templateItem=Templates
-simpleSong=Song
+simpleSong1=Song1
+simpleSong2=Song2
simpleBook=Book
exitItem=Quit
diff --git a/src/main/resources/GuitarTeX2strings_de.properties b/src/main/resources/GuitarTeX2strings_de.properties
index 06870af..8e10ad4 100644
--- a/src/main/resources/GuitarTeX2strings_de.properties
+++ b/src/main/resources/GuitarTeX2strings_de.properties
@@ -1,11 +1,12 @@
fileMenu=Datei
newItem=Neu
-openItem=Öffnen...
-closeItem=Schließen
+openItem=\u00d6ffnen...
+closeItem=Schlie\u00dfen
saveItem=Speichern
saveAsItem=Speichern unter...
templateItem=Templates
-simpleSong=Lied
+simpleSong1=Lied1
+simpleSong2=Lied2
simpleBook=Liederbuch
exitItem=Beenden
@@ -14,9 +15,9 @@ mPrefs=Einstellungen
undoItem=
cutItem=Ausschneiden
copyItem=Kopieren
-pasteItem=Einfügen
-clearItem=Löschen
-selectAllItem=Alles auswählen
+pasteItem=Einf\u00fcgen
+clearItem=L\u00f6schen
+selectAllItem=Alles ausw\u00e4hlen
buildMenu=Erstellen
gtx2tex=GTX2TeX
@@ -26,8 +27,8 @@ dvi2pdf=Dvi2Pdf
tex2pdf=TeX2Pdf
helpMenu=Hilfe
-aboutItem=Über GuitarTeX2
-aboutTitle=Über GuitarTeX2
+aboutItem=\u00dcber GuitarTeX2
+aboutTitle=\u00dcber GuitarTeX2
faqItem=FAQ
faqURL=http://guitartex2.sourceforge.net/page7/page6/page6.html
shortcutItem=Shortcuts
@@ -82,7 +83,7 @@ mGuitarTab=Tabulatur
mNewFile=Neue Datei
-checkConn=Überprüfe Verbindung zum Server ...
+checkConn=\u00dcberpr\u00fcfe Verbindung zum Server ...
createPdf=Erstelle PDF ...
showPdf=Versuche die PDF Datei darzustellen ...
@@ -91,9 +92,9 @@ wait4PdfFile=Warte auf das Ergebnis ...
receivePdfFile=Empfange PDF-Datei ...
receiveLogFile=Empfange Log-Datei ...
confFailed=Laden von Konfigurationsdatei fehlgeschlagen!
-texFailed=PDF Datei kann nicht erzeugt werden!\nBitte Überprüfen Sie Ihr Dokument!
+texFailed=PDF Datei kann nicht erzeugt werden!\nBitte \u00fcberpr\u00fcfen Sie Ihr Dokument!
-mSaveQuestionHead=Datei wurde verändert!
+mSaveQuestionHead=Datei wurde ver\u00e4ndert!
mSaveQuestion=Wollen Sie die Datei speichern?
prefTitle=Einstellungen
@@ -110,15 +111,15 @@ mSetBook=Buch
mBookAuthor=Autor
mBookTitle=Titel
mBookDate=Datum
-mBookInclude=Einfügen
+mBookInclude=Einf\u00fcgen
-resetButton=Zurücksetzen
+resetButton=Zur\u00fccksetzen
okButton=OK
cancelButton=Abbrechen
quitButton=Beenden
infoButton=Info
-choose=Auswählen
+choose=Ausw\u00e4hlen
warnTitle=Warnung!
statusTitle=Status
diff --git a/src/main/resources/examples/griechischer_wein.gtx b/src/main/resources/examples/griechischer_wein.gtx
new file mode 100644
index 0000000..c3d7368
--- /dev/null
+++ b/src/main/resources/examples/griechischer_wein.gtx
@@ -0,0 +1,39 @@
+{geometry:a4paper}
+{geometry:margin=2.5cm}
+{font_size:12}
+
+{color_chorus:0,0,0}
+{language: german}
+
+{title: Griechischer Wein}
+
+{a:Vers 1:}
+{bridge}
+ [Am]Es war schon dunkel, als ich durch Vorstadtstrassen [(Am]heimw[F)]"arts gin[C]g.
+ Da war ein Wirtshaus, aus dem das Licht noch auf den [(C]Gehs[F)]teig sch[G7]ien.
+ [E7]Ich hatte [Am]Zeit, und mir war [E7]kalt, drum trat ich [Am]ein.
+ \\
+ [Am]Da sassen M"anner mit braunen Augen und mit [(Am]schwarz[F)]em Ha[C]ar.
+ Und aus der Jukebox erklang Musik, die fremd und [(C]s"ud[F)]lich wa[G7]r.
+ [E7]Als man mich [Am]sah, stand einer [E7]auf und lud mich [Am]ein.
+{/bridge}
+
+{a:Refrain:}
+{chorus}
+ [F]Griechischer Wein ist wie das Blut der Erde,
+ k[C]omm, schenk' dir ein, und wenn ich dann traurig werde,
+ li[G7]egt es daran, dass ich immer tr"aume von da[C]heim, du musst verz[C7]eih'n.
+ G[F]riechischer Wein und die altvertrauten Lieder,
+ s[C]chenk nochmal ein, denn ich f"uhl die Sehnsucht wieder,
+ in[G7] dieser Stadt werd'ich immer nur ein [E7]Fremder [Am]sein [E7]und a[Am]llein.
+{/chorus}
+
+{a:Vers 2:}
+{bridge}
+ Und dann er[Am]z"ahlten sie mir von gr"unen H"ugeln, M[(Am]eer [F)]und Wi[C]nd,
+ von alten H"ausern und jungen Frauen, die [(C]allei[F)]ne s[G7]ind,
+ [E7]und von dem K[Am]ind, das seinen V[E7]ater noch nie s[Am]ah.
+ Si[Am]e sagten sich immer wieder, irgendwann [(Am]geht [F)]es zur[C]"uck,
+ und das Ersparte gen"ugt zu Hause f"ur ein [(C]klein[F)]es Gl"u[G7]ck.
+ [E7]Und bald denkt ke[Am]iner mehr dar[E7]an, wie es hier [Am]war.
+{/bridge}
diff --git a/src/main/resources/examples/lazy_blues.gtx b/src/main/resources/examples/lazy_blues.gtx
new file mode 100644
index 0000000..fd9a7f3
--- /dev/null
+++ b/src/main/resources/examples/lazy_blues.gtx
@@ -0,0 +1,22 @@
+{geometry:a4paper}
+{geometry:margin=2.5cm}
+{font_size:12}
+
+{color_chorus:0,0,0}
+
+{title: Lazy Blues}
+
+{define:C7 t x 3 2 3 1 x}
+{define:F7 5 x 3 2 3 1 x}
+{define:G7 7 x 3 2 3 1 x}
+
+
+{a: [Zahlen = Fingerstellung im Bund x]}
+
+
+{guitartab: [14.5ex;C7]&[2;3][2;3][3;2]&[4;3]&[5;1][3;2]&[4;3]&[5;1]|[2;3][2;3][3;2]&[4;3]&[5;1][3;2]&[4;3]&[5;1]|[2;3][2;3][3;2]&[4;3]&[5;1][3;2]&[4;3]&[5;1]|[1;3][1;3][2;1][2;2]|[2;3][2;3][3;2]&[4;3]&[5;1][3;2]&[4;3]&[5;1]|[2;3][2;3][3;2]&[4;3]&[5;1][3;2]&[4;3]&[5;1]}
+{guitartab: [14.5ex;F7]&[2;8][2;8][3;7]&[4;8]&[5;6][3;7]&[4;8]&[5;6]|[2;8][2;8][3;7]&[4;8]&[5;6][3;7]&[4;8]&[5;6]|[2;8][2;8][3;7]&[4;8]&[5;6][3;7]&[4;8]&[5;6]|[1;8][1;8][2;6][2;7]|[2;8][2;8][3;7]&[4;8]&[5;6][3;7]&[4;8]&[5;6]|[2;8][2;8][3;7]&[4;8]&[5;6][3;7]&[4;8]&[5;6]}
+{guitartab: [14.5ex;C7]&[2;3] _ [2;3] _ [3;2]&[4;3]&[5;1] _ [3;2]&[4;3]&[5;1] | [2;3] _ [2;3] _ [3;2]&[4;3]&[5;1] _ [3;2]&[4;3]&[5;1]|}
+{guitartab: [14.5ex;G7]&[2;10] _ [2;10] _ [3;9]&[4;10]&[5;8] _ [3;9]&[4;10]&[5;8] | [2;10] _ [2;10] _ [3;9]&[4;10]&[5;8] _ [3;9]&[4;10]&[5;8] |}
+{guitartab: [14.5ex;F7]&[2;8] _ [2;8] _ [3;7]&[4;8]&[5;6] _ [3;7]&[4;8]&[5;6] | [2;8] _ [2;8] _ [3;7]&[4;8]&[5;6] _ [3;7]&[4;8]&[5;6] |}
+{guitartab: [14.5ex;C7]&[2;3][2;3][3;2]&[4;3]&[5;1][3;2]&[4;3]&[5;1]|[2;3][2;3][3;2]&[4;3]&[5;1][3;2]&[4;3]&[5;1]|[2;3][2;3][3;2]&[4;3]&[5;1][3;2]&[4;3]&[5;1]|[1;3][1;3][2;1][2;2]|[2;3][2;3][3;2]&[4;3]&[5;1][3;2]&[4;3]&[5;1]|[2;3][2;3][3;2]&[4;3]&[5;1][3;2]&[4;3]&[5;1]}
diff --git a/src/main/resources/examples/my_first_book.gtb b/src/main/resources/examples/my_first_book.gtb
new file mode 100644
index 0000000..7085b1f
--- /dev/null
+++ b/src/main/resources/examples/my_first_book.gtb
@@ -0,0 +1,10 @@
+{document_class:book}
+
+{book_author:I am the author}
+{book_title:This is my book}
+{book_date:02/28/2007}
+
+
+{include:/GuitarTeX2/examples/lazy_blues.gtx}
+
+{include:/GuitarTeX2/examples/griechischer_wein.gtx}