From c0ebbde2230c4a91dc3d7124ac4b8eb9931c37ac Mon Sep 17 00:00:00 2001
From: sourav492 <76873297+sourav492@users.noreply.github.com>
Date: Sun, 19 Feb 2023 23:42:20 +0530
Subject: [PATCH] #393 issue: Update Comments
---
core/.classpath | 11 -
core/.settings/org.eclipse.jdt.core.prefs | 12 +-
.../allg/itd51/wollmux/GlobalFunctions.java | 34 +--
.../allg/itd51/wollmux/HashableComponent.java | 16 +-
.../allg/itd51/wollmux/Shortcuts.java | 66 +++---
.../itd51/wollmux/SyncActionListener.java | 20 +-
.../allg/itd51/wollmux/TextModule.java | 224 +++++++++---------
.../itd51/wollmux/WollMuxFehlerException.java | 4 +-
.../allg/itd51/wollmux/WollMuxFiles.java | 12 +-
.../allg/itd51/wollmux/WollMuxSingleton.java | 98 ++++----
.../wollmux/func/AlwaysTrueFunction.java | 2 +-
.../allg/itd51/wollmux/func/BindFunction.java | 32 +--
.../wollmux/func/Dateinamensanpassungen.java | 46 ++--
.../itd51/wollmux/func/DivideFunction.java | 22 +-
.../itd51/wollmux/func/ExternalFunction.java | 54 ++---
.../allg/itd51/wollmux/func/Function.java | 40 ++--
.../itd51/wollmux/func/FunctionFactory.java | 140 +++++------
.../itd51/wollmux/func/FunctionLibrary.java | 58 ++---
.../itd51/wollmux/func/MultiFunction.java | 32 +--
.../wollmux/func/NumberCompareFunction.java | 36 +--
.../itd51/wollmux/func/NumberFunction.java | 46 ++--
.../allg/itd51/wollmux/func/SignFunction.java | 2 +-
.../allg/itd51/wollmux/func/Value.java | 10 +-
.../itd51/wollmux/func/ValueFunction.java | 2 +-
.../allg/itd51/wollmux/func/Values.java | 38 +--
idl/.classpath | 5 -
oxt/.classpath | 11 -
oxt/.settings/org.eclipse.jdt.core.prefs | 7 +
28 files changed, 530 insertions(+), 550 deletions(-)
diff --git a/core/.classpath b/core/.classpath
index b44268cf5..88f97082c 100644
--- a/core/.classpath
+++ b/core/.classpath
@@ -51,16 +51,5 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/core/.settings/org.eclipse.jdt.core.prefs b/core/.settings/org.eclipse.jdt.core.prefs
index d71df273d..1d82dd1a1 100644
--- a/core/.settings/org.eclipse.jdt.core.prefs
+++ b/core/.settings/org.eclipse.jdt.core.prefs
@@ -1,13 +1,13 @@
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=disabled
org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore
-org.eclipse.jdt.core.compiler.annotation.nonnull=org.eclipse.jdt.annotation.NonNull
+org.eclipse.jdt.core.compiler.annotation.nonnull=javax.annotation.Nonnull
org.eclipse.jdt.core.compiler.annotation.nonnull.secondary=
org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jdt.annotation.NonNullByDefault
org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary=
-org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable
+org.eclipse.jdt.core.compiler.annotation.nullable=javax.annotation.Nullable
org.eclipse.jdt.core.compiler.annotation.nullable.secondary=
-org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled
+org.eclipse.jdt.core.compiler.annotation.nullanalysis=enabled
org.eclipse.jdt.core.compiler.codegen.targetPlatform=11
org.eclipse.jdt.core.compiler.compliance=11
org.eclipse.jdt.core.compiler.problem.APILeak=warning
@@ -49,15 +49,15 @@ org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
org.eclipse.jdt.core.compiler.problem.nonnullParameterAnnotationDropped=warning
org.eclipse.jdt.core.compiler.problem.nonnullTypeVariableFromLegacyInvocation=warning
-org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=error
+org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=warning
org.eclipse.jdt.core.compiler.problem.nullReference=warning
-org.eclipse.jdt.core.compiler.problem.nullSpecViolation=error
+org.eclipse.jdt.core.compiler.problem.nullSpecViolation=warning
org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=warning
org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
org.eclipse.jdt.core.compiler.problem.pessimisticNullAnalysisForFreeTypeVariables=warning
org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.potentialNullReference=ignore
+org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning
org.eclipse.jdt.core.compiler.problem.potentiallyUnclosedCloseable=ignore
org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning
diff --git a/core/src/main/java/de/muenchen/allg/itd51/wollmux/GlobalFunctions.java b/core/src/main/java/de/muenchen/allg/itd51/wollmux/GlobalFunctions.java
index ac6f16d97..9304cd4e4 100644
--- a/core/src/main/java/de/muenchen/allg/itd51/wollmux/GlobalFunctions.java
+++ b/core/src/main/java/de/muenchen/allg/itd51/wollmux/GlobalFunctions.java
@@ -38,19 +38,19 @@ public class GlobalFunctions
private static GlobalFunctions instance;
/**
- * Enthält die im Funktionen-Abschnitt der wollmux,conf definierten Funktionen.
+ * Contains the functions defined in the functions section of wollmux.conf.
*/
private FunctionLibrary globalFunctions;
/**
- * Enthält die im Dokumentaktionen der wollmux,conf definierten Funktionen.
+ * Contains the functions defined in the Wollmux.conf document actions.
*/
private FunctionLibrary documentActionFunctions;
/**
- * Enthält die im Funktionsdialoge-Abschnitt der wollmux,conf definierten Dialoge.
+ * Contains the dialogs defined in the function dialogs section of wollmux,conf.
*/
private DialogLibrary funcDialogs;
/**
- * Enthält die im Funktionen-Abschnitt der wollmux,conf definierten Funktionen.
+ * Contains the functions defined in the functions section of wollmux.conf.
*/
private PrintFunctionLibrary globalPrintFunctions;
@@ -65,30 +65,30 @@ public static GlobalFunctions getInstance()
private GlobalFunctions()
{
/*
- * Globale Funktionsdialoge parsen. ACHTUNG! Muss vor parseGlobalFunctions() erfolgen. Als
- * context wird null übergeben, weil globale Funktionen keinen Kontext haben.
+ * Parse global function dialogs. DANGER! Must be done before parseGlobalFunctions(). As
+ * context is passed null because global functions have no context.
*/
funcDialogs =
DialogFactory.parseFunctionDialogs(WollMuxFiles.getWollmuxConf(), null, null);
/*
- * Globale Funktionen parsen. ACHTUNG! Verwendet die Funktionsdialoge. Diese
- * müssen also vorher geparst sein. Als context wird null übergeben, weil globale
- * Funktionen keinen Kontext haben.
+ * Parse global functions. DANGER! Uses the function dialogs. This
+ * must therefore be parsed beforehand. As context, null is passed because global
+ * Functions have no context.
*/
globalFunctions =
FunctionFactory.parseFunctions(WollMuxFiles.getWollmuxConf(),
getFunctionDialogs(), null, null);
/*
- * Globale Druckfunktionen parsen.
+ * Parse global print functions.
*/
globalPrintFunctions =
PrintFunctionLibrary.parsePrintFunctions(WollMuxFiles.getWollmuxConf());
PrintFunction.addPrintFunctions(globalPrintFunctions);
/*
- * Dokumentaktionen parsen. Diese haben weder Kontext noch Dialoge.
+ * Parse document actions. These have neither context nor dialogues.
*/
documentActionFunctions = new FunctionLibrary(null, true);
FunctionFactory.parseFunctions(documentActionFunctions,
@@ -96,7 +96,7 @@ private GlobalFunctions()
}
/**
- * Liefert die Funktionsbibliothek, die die global definierten Funktionen enthält.
+ * Returns the function library containing the globally defined functions.
*/
public FunctionLibrary getGlobalFunctions()
{
@@ -104,7 +104,7 @@ public FunctionLibrary getGlobalFunctions()
}
/**
- * Liefert die Funktionsbibliothek, die die Dokumentaktionen enthält.
+ * Returns the function library containing the document actions.
*/
public FunctionLibrary getDocumentActionFunctions()
{
@@ -112,8 +112,8 @@ public FunctionLibrary getDocumentActionFunctions()
}
/**
- * Liefert die Funktionsbibliothek, die die global definierten Druckfunktionen
- * enthält.
+ * Returns the function library containing the globally defined print functions
+ * contains.
*/
public PrintFunctionLibrary getGlobalPrintFunctions()
{
@@ -121,8 +121,8 @@ public PrintFunctionLibrary getGlobalPrintFunctions()
}
/**
- * Liefert die Dialogbibliothek, die die Dialoge enthält, die in Funktionen
- * (Grundfunktion "DIALOG") verwendung finden.
+ * Returns the dialog library containing the dialogs contained in functions
+ * (basic function "DIALOG") can be used.
*/
public DialogLibrary getFunctionDialogs()
{
diff --git a/core/src/main/java/de/muenchen/allg/itd51/wollmux/HashableComponent.java b/core/src/main/java/de/muenchen/allg/itd51/wollmux/HashableComponent.java
index ff305a307..0a24f09a4 100644
--- a/core/src/main/java/de/muenchen/allg/itd51/wollmux/HashableComponent.java
+++ b/core/src/main/java/de/muenchen/allg/itd51/wollmux/HashableComponent.java
@@ -28,19 +28,19 @@
import org.libreoffice.ext.unohelper.common.UNO;
/**
- * Hilfsklasse, die es ermöglicht, UNO-Componenten in HashMaps abzulegen; der
- * Vergleich zweier HashableComponents mit equals(...) verwendet dazu den sicheren
- * UNO-Vergleich UnoRuntime.areSame(...). Die Methode hashCode verwendet die sichere
- * Oid, die UnoRuntime.generateOid(...) liefert.
+ * Helper class that makes it possible to store UNO components in HashMaps; the
+ * Comparing two HashableComponents with equals(...) uses the safe one
+ * UNO comparison UnoRuntime.areSame(...). The hashCode method uses the safe one
+ * Oid that UnoRuntime.generateOid(...) returns.
*/
public class HashableComponent
{
private XInterface compo;
/*
- * Anmerkung: Es mag ineffizient wirken, hier ein Object zu nehmen und immer in
- * XInterface zu casten, aber wegen Bugs in OOo ist es die einzig sichere Methode,
- * auch wenn man schon ein X... Objekt hat, das von XInterface abgeleitet ist.
+ * Note: It may seem inefficient to take an Object here and always in
+ * Cast XInterface, but because of bugs in OOo it's the only safe way
+ * even if you already have an X... object derived from XInterface.
*/
public HashableComponent(Object compo)
{
@@ -52,7 +52,7 @@ public HashableComponent(Object compo)
}
/**
- * Liefert die Komponente, die durch diese {@link HashableComponent} gewrappt ist.
+ * Returns the component wrapped by this {@link HashableComponent}.
*/
public XInterface getComponent()
{
diff --git a/core/src/main/java/de/muenchen/allg/itd51/wollmux/Shortcuts.java b/core/src/main/java/de/muenchen/allg/itd51/wollmux/Shortcuts.java
index ea0dddc3a..099e93bcc 100644
--- a/core/src/main/java/de/muenchen/allg/itd51/wollmux/Shortcuts.java
+++ b/core/src/main/java/de/muenchen/allg/itd51/wollmux/Shortcuts.java
@@ -52,12 +52,12 @@ private Shortcuts()
}
/**
- * Liest alle Attribute SHORTCUT und URL aus tastenkombinationenConf aus, löscht
- * alle bisher vorhandenen Tastenkombinationen deren URL mit "wollmux:" beginnt und
- * setzt neue Tastenkombination in OOo-Writer.
+ * Reads all attributes SHORTCUT and URL from key combinationsConf, deletes
+ * all existing key combinations whose URL begins with "wollmux:" and
+ * sets new keyboard shortcut in OOo-Writer.
*
- * @param tastenkombinationenConf
- * .conf Abschnitt Tastenkuerzel mit allen Knoten
+ * @param key combinationsConf
+ * .conf section shortcuts with all nodes
*/
public static void createShortcuts(ConfigThingy tastenkombinationenConf)
{
@@ -72,13 +72,13 @@ public static void createShortcuts(ConfigThingy tastenkombinationenConf)
return;
}
- // löschen aller KeyEvents die mit "wollmux:" beginnen
+ // Delete all KeyEvents that start with "wollmux:".
removeComandFromAllKeyEvents(shortcutManager);
- // lesen des Knoten SHORTCUT
+ // read the node SHORTCUT
ConfigThingy shortcutConf = tastenkombinationenConf.queryByChild("SHORTCUT");
- // Iterieren über die Knoten SHORTCUT
+ // Iterate over the SHORTCUT nodes
Iterator iterShortcut = shortcutConf.iterator();
while (iterShortcut.hasNext())
{
@@ -86,7 +86,7 @@ public static void createShortcuts(ConfigThingy tastenkombinationenConf)
ConfigThingy tastenkombination = iterShortcut.next();
String shortcut = null;
- // lesen der Knoten SHORTCUT
+ // read the node SHORTCUT
try
{
shortcut = tastenkombination.get("SHORTCUT").toString();
@@ -98,7 +98,7 @@ public static void createShortcuts(ConfigThingy tastenkombinationenConf)
}
String url = null;
- // lesen der Knoten URL
+ // read the node url
try
{
url = tastenkombination.get("URL").toString();
@@ -112,7 +112,7 @@ public static void createShortcuts(ConfigThingy tastenkombinationenConf)
KeyEvent keyEvent = createKeyEvent(shortcut);
if (keyEvent != null)
{
- // setzen der Tastenkombination mit KeyEvent und WollMux-Url
+ // set the key combination with KeyEvent and WollMux-Url
try
{
shortcutManager.setKeyEvent(keyEvent, url);
@@ -128,7 +128,7 @@ public static void createShortcuts(ConfigThingy tastenkombinationenConf)
}
}
- // Änderung Persistent machen
+ // Make change persistent
try
{
if (UNO.XUIConfigurationPersistence(shortcutManager) != null)
@@ -143,32 +143,32 @@ public static void createShortcuts(ConfigThingy tastenkombinationenConf)
}
/**
- * Wenn es Tastenkuerzel mit einer UNO-url beginnent mit "wollmux:" gibt, werden
- * diese gelöscht. Workaround wegen nicht funktionierendem
+ * If there are keyboard shortcuts with a UNO url starting with "wollmux:", they will
+ * these deleted. Workaround for not working
* xAcceleratorConfiguration.removeCommandFromAllKeyEvents(). OOo Issue #72558
*
* @param xAcceleratorConfiguration
- * AcceleratorConfiguration (muß danach noch mit store() persistent
- * gemacht werden)
+ * AcceleratorConfiguration (must be persistent afterwards with store()
+ * be made)
*/
private static void removeComandFromAllKeyEvents(
XAcceleratorConfiguration xAcceleratorConfiguration)
{
- // lesen aller gesetzten Tastenkombinationen
+ // read all set key combinations
KeyEvent[] keys = xAcceleratorConfiguration.getAllKeyEvents();
- // Wenn es Tastenkombinationen mit der UNO-url beginnent mit "wollmux:"
- // gibt, werden diese gelöscht. Workaround wegen nicht funktionierendem
+ // If there are key combinations with the UNO url starting with "wollmux:"
+ // exist, these are deleted. Workaround for not working
// xAcceleratorConfiguration.removeCommandFromAllKeyEvents().
for (int i = 0; i < keys.length; i++)
{
try
{
String event = xAcceleratorConfiguration.getCommandByKeyEvent(keys[i]);
- // wenn die UNO-url mit "wollmux:" beginnt, wird sie gelöscht
+ // if the UNO-url starts with "wollmux:" it will be deleted
if (event.startsWith("wollmux:"))
{
- // löschen der Tastenkombination
+ // delete the key combination
xAcceleratorConfiguration.removeKeyEvent(keys[i]);
}
}
@@ -180,7 +180,7 @@ private static void removeComandFromAllKeyEvents(
}
/**
- * Gibt alle KeyEvents mit Modifier, KeyCode und Command aus
+ * Outputs all KeyEvents with Modifier, KeyCode and Command
*
* @param xac
* AcceleratorConfigurator
@@ -208,12 +208,12 @@ public static void showKeyset(XAcceleratorConfiguration xac)
}
/**
- * Erzeugt ein Object KeyEvent
+ * Generates an Object KeyEvent
*
* @param shortcutWithSeparator
- * Tastenkombination mit "+" als Separator
- * @return gibt ein KeyEvent zurück oder null wenn kein keyCode sondern nur
- * keyModifier verwendet werden
+ * Key combination with "+" as separator
+ * @return returns a KeyEvent or null if not a keyCode but only
+ * keyModifier are used
*/
private static KeyEvent createKeyEvent(String shortcutWithSeparator)
{
@@ -253,11 +253,11 @@ private static KeyEvent createKeyEvent(String shortcutWithSeparator)
}
/**
- * Gibt die Konstante com.sun.star.awt.Key für die entsprechende Taste zurück
+ * Returns the constant com.sun.star.awt.Key for the corresponding key
*
* @param shortcut
- * Taste
- * @return Key der entsprechenden Taste
+ * button
+ * @return key of the corresponding key
*/
private static Short returnKeyCode(String shortcut)
{
@@ -384,12 +384,12 @@ private static Short returnKeyCode(String shortcut)
}
/**
- * Gibt die Konstante com.sun.star.awt.KeyModifier für die entsprechende Taste
- * zurück
+ * Returns the constant com.sun.star.awt.KeyModifier for the corresponding key
+ * return
*
* @param shortcut
- * Taste
- * @return KeyModifier der entsprechenden Taste
+ * button
+ * @return KeyModifier of the corresponding key
*/
private static Short returnKeyModifier(String shortcut)
{
diff --git a/core/src/main/java/de/muenchen/allg/itd51/wollmux/SyncActionListener.java b/core/src/main/java/de/muenchen/allg/itd51/wollmux/SyncActionListener.java
index 37f2c5483..464bd055e 100644
--- a/core/src/main/java/de/muenchen/allg/itd51/wollmux/SyncActionListener.java
+++ b/core/src/main/java/de/muenchen/allg/itd51/wollmux/SyncActionListener.java
@@ -26,34 +26,34 @@
import java.awt.event.ActionListener;
/**
- * Diese Klasse vereinfacht die Synchronisation verschiedener Threads über einen
- * ActionListener. Die Anwendung erfolgt in der Regel in folgenden Schritten:
+ * This class simplifies the synchronization of different threads over one
+ * ActionListener. The application usually takes place in the following steps:
*
* SyncActionListener s = new SyncActionListener();
- * aufrufEinerMethodeDieEinenActionListenerErwartet(..., s); EventObject result =
+ * calling a method that expects an action listener (..., s); EventObject result =
* s.synchronize();
*
- * Es ist sicher gestellt, dass s.synchronize() erst zurück kehrt, wenn der
- * ActionListener benachrichtigt wurde. Dabei wird das EventObject zurück gegeben,
- * mit dem {@link #actionPerformed(ActionEvent)} des Listeners aufgerufen wurde.
+ * It is ensured that s.synchronize() does not return until the
+ * ActionListener was notified. The EventObject is returned,
+ * was called with the listener's {@link #actionPerformed(ActionEvent)} .
*
* @author Christoph Lutz (D-III-ITD-D101)
*/
public class SyncActionListener implements ActionListener
{
/**
- * Das lock-Flag über das die Synchronisierung erfolgt.
+ * The lock flag over which synchronization is done.
*/
private boolean[] lock = new boolean[] { true };
/**
- * Enthält nach erfolgter Syncronisierung das zurückgegebene ActionEvent
+ * Contains the returned ActionEvent after synchronization has taken place
*/
private ActionEvent result = null;
/**
- * Kehrt erst zurück, wenn {@link #actionPerformed(ActionEvent)} des Listeners
- * aufgerufen wurde und liefert das dabei übermittelte EventObject zurück.
+ * Returns only when the listener's {@link #actionPerformed(ActionEvent)}
+ * was called and returns the EventObject that was transmitted.
*/
public ActionEvent synchronize()
{
diff --git a/core/src/main/java/de/muenchen/allg/itd51/wollmux/TextModule.java b/core/src/main/java/de/muenchen/allg/itd51/wollmux/TextModule.java
index b9fe2fc27..6a097ab5a 100644
--- a/core/src/main/java/de/muenchen/allg/itd51/wollmux/TextModule.java
+++ b/core/src/main/java/de/muenchen/allg/itd51/wollmux/TextModule.java
@@ -54,7 +54,7 @@
import org.libreoffice.ext.unohelper.util.UnoService;
/**
- * Klasse enthält statische Methoden die für das Textbausteinsystem benötigt werden
+ * Class contains static methods that are required for the text block system
*
* @author bettina.bauer
*/
@@ -64,7 +64,7 @@ public class TextModule
private static final Logger LOGGER = LoggerFactory.getLogger(TextModule.class);
/**
- * Pattern, das insertFrag-Bookmarks matcht.
+ * Pattern matching insertFrag bookmarks.
*/
private static final Pattern INSERTFRAG_PATTERN =
DocumentCommands.getPatternForCommand("insertFrag");
@@ -75,38 +75,38 @@ private TextModule()
}
/**
- * Sucht ab der Stelle range rückwarts nach gültigen Textfragmentbezeichnern mit
- * Argumenten, legt um jeden einzufügenden Textbaustein ein Dokumentkommando
- * 'insertFrag' mit den gefundenen Argumenten. Aufgehört wird beim ersten Absatz in
- * dem kein Textbausteinbezeichner identifiziert werden konnte oder wo bereits ein
- * insertFrag vorhanden war.
+ * Searches backwards from range for valid text fragment identifiers
+ * Arguments, puts a document command around each text module to be inserted
+ * 'insertFrag' with the arguments found. It stops at the first paragraph in
+ * where no snippet identifier could be identified or where already one
+ * insertFrag was present.
*
* @param doc
- * Aktuelle Textdocument in dem gesucht werden soll
+ * Current text document in which to search
* @param range
- * Stelle in der nach Textfragmentbezeichnern gesucht werden soll. Die
- * Stelle kann ein markierter Bereich sein oder ein kollabierter Cursor
- * von dem rückwärts bis zur ersten Zeile die kein Textfragment enthält
- * gesucht wird. Meistens handelt es sich um den viewCursor.
+ * Position in which to search for text fragment identifiers. The
+ * Location can be a marked area or a collapsed cursor
+ * from the back to the first line that does not contain a text fragment
+ * is searched for. Most often it is the viewCursor.
* @param isManual
- * kennzeichnet Einfügungen, die manuell vorgenommen worden sind. Setzt
- * den optionalen Knoten MODE = "manual"
+ * denotes insertions that have been made manually. Puts
+ * the optional node MODE = "manual"
*
- * @throws WollMuxFehlerException
- * falls ein Problem aufgetreten ist (z.B. kein Textbaustein erkannt oder
- * bereits ein insertFrag-Befehl vorhanden). Eine Exception wird genau
- * dann geworfen, wenn gar kein Textbausteinverweis eingefügt werden
- * konnte. Wurde mindestens einer eingefügt, wird keine Exception
- * geworfen, sondern an der Fehlerstelle mit dem Scan aufgehört.
+ * @throws WollMuxErrorException
+ * if a problem has occurred (e.g. no text module recognized or
+ * an insertFrag command already exists). An exception becomes exact
+ * then thrown if no text module reference is inserted
+ * could. If at least one was inserted, no exception is thrown
+ * thrown, but stopped the scan at the error point.
*/
public static void createInsertFragFromIdentifier(XTextDocument doc,
XTextRange range, boolean isManual) throws WollMuxFehlerException
{
ConfigThingy conf = WollMuxFiles.getWollmuxConf();
- // holt sich Textbausteine aus .conf und sammelt sie in umgekehrter
- // Reihenfolge in der LinkedList tbListe. Damit später definierte
- // Textbaustein Abschnitte immer Vorrang haben.
+ // fetches text modules from .conf and collects them in reverse
+ // Order in LinkedList tbList. So later defined
+ // Text module sections always take precedence.
LinkedList tbListe = new LinkedList<>();
ConfigThingy tbConf = conf.query("Textbausteine");
Iterator iter = tbConf.iterator();
@@ -119,11 +119,11 @@ public static void createInsertFragFromIdentifier(XTextDocument doc,
XParagraphCursor cursor =
UNO.XParagraphCursor(range.getText().createTextCursorByRange(range));
- // Sonderbehandlung, wenn der viewCursor bereits eine Bereich markiert.
- // In diesem Fall soll ausschließlich der Inhalt des Bereichs evaluiert
- // werden. Über einen Vergleich von completeContent und collectedContent
- // kann festgestellt werden, ob cursor den Bereich abdeckt (siehe
- // unten).
+ // Special treatment when the viewCursor already marks an area.
+ // In this case, only the content of the area should be evaluated
+ // become. By comparing completeContent and collectedContent
+ // can be determined whether cursor covers the area (see
+ // below).
String completeContent = cursor.getString();
String collectedContent = "";
if (!completeContent.equals("")) cursor.collapseToEnd();
@@ -143,9 +143,9 @@ public static void createInsertFragFromIdentifier(XTextDocument doc,
foundAtLeastOneTBInCurrentParagraph = true;
/*
- * Schauen, ob bereits ein insertFrag-Befehl vorhanden ist, um zu verhindern,
- * dass ein zweiter darüber gelegt wird, da dies diverses Fehlverhalten
- * produzieren kann.
+ * See if an insertFrag command already exists to prevent
+ * that a second one is placed over it, as this is various misconduct
+ * can produce.
*/
Set bms =
TextDocument.getBookmarkNamesMatching(INSERTFRAG_PATTERN, cursor);
@@ -155,27 +155,27 @@ public static void createInsertFragFromIdentifier(XTextDocument doc,
createInsertFrag(doc, cursor, results, isManual);
processedAtLeastOneTBSuccessfully = true;
- // Cursor kollabieren, damit beim Weitersuchen nicht der gerade schon
- // verarbeitete Textbausteinbezeichner noch als Teil des nächsten
- // Bezeichners verwendet wird.
- // Die Textbausteinsuche verhält sich also im Gegensatz zur üblichen Art
- // des Matchens von regulären Ausdrücken NICHT greedy, sondern wir nehmen
- // den kürzesten matchenden Bezeichner
+ // Cursor collapses so that when you continue searching, it doesn't just happen
+ // processed phrase identifier still as part of next
+ // identifier is used.
+ // So the text module search behaves in contrast to the usual way
+ // of regular expression matching NOT greedy, but we take
+ // the shortest matching identifier
cursor.collapseToStart();
}
else
{
/*
- * Es wurde bereits ein insertFrag-Kommando an der aktuellen Cursorposition
- * gefunden.
+ * An insertFrag command has already been issued at the current cursor position
+ * found.
*
- * Wir werfen nur dann einen Fehler, wenn wir noch gar keinen Textbaustein
- * verarbeitet haben. Ansonsten hören wir einfach nur auf ohne Fehler. Es
- * ist ein absolut legitimer Anwendungsfall, dass ein Anwender erst "TB1"
- * tippt und dann "TextbausteinVERWEIS einfügen" (man beachte: nur beim
- * Einfügen eines VERWEISEs ist es möglich, dass ein insertFrag Bookmark
- * existiert.) macht und dann einen Absatz runtergeht und "TB2" tippt und
- * wieder "Textbausteinverweis einfügen" macht.
+ * We only throw an error if we don't have any boilerplate
+ * have processed. Otherwise we just stop without error. It
+ * is an absolutely legitimate use case that a user first "TB1"
+ * type and then "insert text moduleLINK" (note: only with the
+ * Inserting a REFERENCES it is possible that an insertFrag bookmark
+ * exists.) and then go down one paragraph and type "TB2" and
+ * does "insert snippet link" again.
*/
if (!processedAtLeastOneTBSuccessfully)
throw new WollMuxFehlerException(
@@ -187,23 +187,23 @@ public static void createInsertFragFromIdentifier(XTextDocument doc,
if (cursor.isStartOfParagraph())
{
- // Falls wir in der ganzen Zeile nichts gefunden haben, dann aufhören.
+ // If we haven't found anything in the whole line, then stop.
if (!foundAtLeastOneTBInCurrentParagraph) break;
- // zum vorherigen Absatz weiter schalten, dabei matchedInLine zurücksetzen.
+ // go to the previous paragraph, resetting matchedInLine.
cursor.goLeft((short) 1, false);
foundAtLeastOneTBInCurrentParagraph = false;
}
else
{
- // ein Zeichen nach links gehen (dabei Cursorrange wachsen lassen) und weiter
- // machen.
+ // move one character to the left (allowing the cursor range to increase) and continue
+ // make.
cursor.goLeft((short) 1, true);
}
- // Hier der Vergleich completeContent<->collectedContent: wenn beide
- // übereinstimmen, kann abgebrochen werden, da der Bereich dann
- // vollständig evaluiert wurde.
+ // Here is the comparison completeContent<->collectedContent: if both
+ // match can be aborted because the range then
+ // has been fully evaluated.
if (completeContent.length() > 0 && completeContent.equals(collectedContent))
break;
}
@@ -214,20 +214,20 @@ public static void createInsertFragFromIdentifier(XTextDocument doc,
}
/**
- * Parsed den übergebenen identifierWithArgs nach allen Abbildungen der Form (MATCH
- * ... FRAG_ID ...), die in den Textbausteine-Abschnitten in tbListe enthalten sind
- * und liefert null zurück, wenn es keine Übereinstimmung mit den MATCHes gab oder
- * falls es eine Übereinstimmung gab ein Array, das an der ersten Stelle die neue
- * frag_id enthält und in den folgenden Stellen die Argumente.
+ * Parses the supplied identifierWithArgs for all mappings of the form (MATCH
+ * ... FRAG_ID ...) contained in the boilerplate sections in tbList
+ * and returns null if there was no match on the MATCHes or
+ * if there was a match, an array with the new one in the first position
+ * contains frag_id and the arguments in the following places.
*
* @param identifierWithArgs
- * Ein String in der Form "#arg1#...#argN", wobei der
- * Separator "#" über den SEPARATOR-Schlüssel in textbausteine verändert
- * werden kann.
- * @param tbListe
- * Eine Liste, die die Textbausteine-Abschnitte in der Reihenfolge
- * enthält, in der sie ausgewertet werden sollen.
- * @return Stringarray mit (frag_id + args) oder null
+ * A string of the form "#arg1#...#argN" where the
+ * Changed the separator "#" to text modules via the SEPARATOR key
+ * can be.
+ * @param tbList
+ * A list showing the boilerplate sections in order
+ * contains in which they are to be evaluated.
+ * @return array of strings with (frag_id + args) or null
*/
private static String[] parseIdentifier(String identifierWithArgs,
List tbListe)
@@ -245,25 +245,25 @@ private static String[] parseIdentifier(String identifierWithArgs,
}
/**
- * Parsed den übergebenen identifierWithArgs nach allen Abbildungen der Form (MATCH
- * ... FRAG_ID ...), die in textbausteine (=ein einzelner Textbausteine-Abschnitt)
- * enthalten sind und liefert null zurück, wenn es keine Übereinstimmung mit den
- * MATCHes gab oder falls es eine Übereinstimmung gab ein Array, das an der ersten
- * Stelle die neue frag_id enthält und in den folgenden Stellen die Argumente.
+ * Parses the supplied identifierWithArgs for all mappings of the form (MATCH
+ * ... FRAG_ID ...), which is written in text modules (=a single text module section)
+ * are included and returns null if there is no match with the
+ * MATCHes were or if there was a match an array that is at the first
+ * Place containing the new frag_id and in the following places the arguments.
*
* @param identifierWithArgs
- * Ein String in der Form "<identifier>#arg1#...#argN", wobei der
- * Separator "#" über den SEPARATOR-Schlüssel in textbausteine verändert
- * werden kann.
- * @param textbausteine
- * Beschreibung eines Textbausteinabschnittes in der Form
- * "Textbausteine(SEPARATOR ... Kuerzel(...))"
- * @return Stringarray mit (frag_id + args) oder null
+ * A string of the form "<identifier>#arg1#...#argN" where the
+ * Changed the separator "#" to text modules via the SEPARATOR key
+ * can be.
+ * @param text modules
+ * Description of a boilerplate section in the form
+ * "Text modules(SEPARATOR ... abbreviation(...))"
+ * @return array of strings with (frag_id + args) or null
*/
public static String[] parseIdentifierInTextbausteine(String identifierWithArgs,
ConfigThingy textbausteine)
{
- // Separator für diesen Textbaustein-Block bestimmen
+ // Determine the separator for this text module block
String separatorString = "#";
ConfigThingy separator = textbausteine.query("SEPARATOR");
if (separator.count() > 0)
@@ -278,13 +278,13 @@ public static String[] parseIdentifierInTextbausteine(String identifierWithArgs,
}
}
- // identifierWithArgs splitten und erstes Argument holen, wenn am Schuß
- // SEPERATOR steht wird -1 noch ein weiteres leeres Element in args[]
- // erzeugt
+ // Split identifierWithArgs and get first argument when on end
+ // SEPERATOR -1 is another empty element in args[]
+ // generated
String[] args = identifierWithArgs.split(separatorString, -1);
String first = args[0];
- // Iterieren über alle Knoten der Form "(MATCH ... FRAG_ID ...)"
+ // Iterate over all nodes of the form "(MATCH ... FRAG_ID ...)"
ConfigThingy mappingsConf = textbausteine.queryByChild("MATCH");
Iterator iterMappings = mappingsConf.iterator();
while (iterMappings.hasNext())
@@ -309,7 +309,7 @@ public static String[] parseIdentifierInTextbausteine(String identifierWithArgs,
}
catch (NodeNotFoundException e)
{
- // kommt nicht vor, da obiger queryByChild immer MATCH liefert
+ // does not occur because the above queryByChild always returns MATCH
continue;
}
@@ -331,29 +331,29 @@ public static String[] parseIdentifierInTextbausteine(String identifierWithArgs,
}
}
}
- return null; // wenn nix drin
+ return null; // if nothing in it
}
/**
- * Erzeugt ein Bookmark vom Typ "WM(CMD'insertFrag' FRAG_ID '<args[0]>'
- * ARGS('<args[1]>' '...' '<args[n]>')" im Dokument doc an der Stelle range.
+ * Creates a bookmark of type "WM(CMD'insertFrag' FRAG_ID '<args[0]>'
+ * ARGS('<args[1]>' '...' '<args[n]>')" in the document doc at position range.
*
* @param doc
- * Aktuelles Textdokument
- * @param range
- * Stelle an der das Bookmark gesetzt werden soll
+ * Current text document
+ * @paramrange
+ * Place where the bookmark should be set
* @param args
- * Übergebene Parameter
+ * Parameters passed
* @param isManual
- * kennzeichnet Einfügungen, die manuell vorgenommen worden sind. Setzt den optinalen
- * Knoten MODE = "manual"
+ * denotes insertions that have been made manually. Sets the optional
+ * node MODE = "manual"
*/
public static void createInsertFrag(XTextDocument doc, XTextRange range,
String[] args, boolean isManual)
{
- // Neues ConfigThingy für "insertFrag Textbaustein" erzeugen:
+ // Create new ConfigThingy for "insertFrag text module":
ConfigThingy root = new ConfigThingy("");
ConfigThingy werte = new ConfigThingy("WM");
root.addChild(werte);
@@ -404,20 +404,20 @@ public static void createInsertFrag(XTextDocument doc, XTextRange range,
}
/**
- * Methode springt ab dem aktuellen viewCursor von einem Platzhalterfeld zum
- * nächsten und fängt dann nochmal von vorne an
+ * Method jumps from a placeholder field to the current viewCursor
+ * next and then starts again from the beginning
*
* @param viewCursor
- * Aktueller ViewCursor im Dokument
+ * Current ViewCursor in the document
*/
public static void jumpPlaceholders(XTextDocument doc, XTextCursor viewCursor)
{
XTextCursor oldPos = viewCursor.getText().createTextCursorByRange(viewCursor);
- // Nächsten Platzhalter anspringen. Dabei berücksichtigen, dass
- // .uno:GotoNextPlacemarker nicht automatisch zu einem evtl. direkt am
- // View-Cursor angrenzenden Platzhalter springt, sondern dann gleich zum
- // nächsten.
+ // Jump to next placeholder. In doing so, take into account that
+ // .uno:GotoNextPlacemarker not automatically to a possibly directly on
+ // View cursor jumps to the adjacent placeholder, but then straight to
+ // next.
XTextField nearPlacemarker = null;
if (viewCursor.isCollapsed())
nearPlacemarker = getPlacemarkerStartingWithRange(doc, viewCursor);
@@ -426,14 +426,14 @@ public static void jumpPlaceholders(XTextDocument doc, XTextCursor viewCursor)
else
UNO.dispatchAndWait(doc, ".uno:GotoNextPlacemarker");
- // Keinen weiteren Platzhalter gefunden? Dies erkenne ich daran, dass entwder der
- // View-Cursor (falls er bereits auf dem letzten Platzhalter des Dokuments stand)
- // kollabiert wurde oder der View-Cursor auf der selben Stelle wie früher stehen
- // geblieben ist.
+ // Didn't find another placeholder? I recognize this by the fact that either the
+ // view cursor (if it was already on the last placeholder of the document)
+ // was collapsed or the view cursor is where it was before
+ // stayed.
if (viewCursor.isCollapsed()
|| new TextRangeRelation(oldPos, viewCursor).followsOrderscheme8888())
{
- // Proiere nochmal ab dem Anfang des Dokuments
+ // Try again from the beginning of the document
viewCursor.gotoRange(doc.getText().getStart(), false);
nearPlacemarker = null;
if (viewCursor.isCollapsed())
@@ -443,23 +443,23 @@ public static void jumpPlaceholders(XTextDocument doc, XTextCursor viewCursor)
else
UNO.dispatchAndWait(doc, ".uno:GotoNextPlacemarker");
- // Falls immer noch kein Platzhalter gefunden wurde wird zur Marke
- // 'setJumpMark' gesprungen falls vorhanden sonst kommt eine Fehlermeldung
+ // If still no placeholder was found becomes to mark
+ // 'setJumpMark' jumped if available otherwise an error message appears
if (new TextRangeRelation(doc.getText().getStart(), viewCursor).followsOrderscheme8888())
{
- // ViewCursor wieder auf Ausgangsposition setzen.
+ // Set the view cursor back to its original position.
viewCursor.gotoRange(oldPos, false);
- // und handle jumpToMark aufrufen.
+ // and call handle jumpToMark.
new OnJumpToMark(doc, true).emit();
}
}
}
/**
- * Liefert aus dem Dokument doc das erste Text-Field Objekt vom Typ Placemarker,
- * das gemeinsam mit range an der selben Position startet, oder null falls ein
- * solches Objekt nicht gefunden wird.
+ * Returns the first text field object of type placemarker from the document doc,
+ * which starts at the same position as range, or null if one
+ * such object is not found.
*/
private static XTextField getPlacemarkerStartingWithRange(XTextDocument doc,
XTextCursor range)
diff --git a/core/src/main/java/de/muenchen/allg/itd51/wollmux/WollMuxFehlerException.java b/core/src/main/java/de/muenchen/allg/itd51/wollmux/WollMuxFehlerException.java
index a4c5de7ee..e663b121b 100644
--- a/core/src/main/java/de/muenchen/allg/itd51/wollmux/WollMuxFehlerException.java
+++ b/core/src/main/java/de/muenchen/allg/itd51/wollmux/WollMuxFehlerException.java
@@ -23,8 +23,8 @@
package de.muenchen.allg.itd51.wollmux;
/**
- * Repräsentiert einen Fehler, der benutzersichtbar in einem Fehlerdialog angezeigt
- * wird.
+ * Represents an error that is displayed user-visibly in an error dialog
+ * becomes.
*
* @author christoph.lutz
*/
diff --git a/core/src/main/java/de/muenchen/allg/itd51/wollmux/WollMuxFiles.java b/core/src/main/java/de/muenchen/allg/itd51/wollmux/WollMuxFiles.java
index ab69e76d6..5d8d9d8df 100755
--- a/core/src/main/java/de/muenchen/allg/itd51/wollmux/WollMuxFiles.java
+++ b/core/src/main/java/de/muenchen/allg/itd51/wollmux/WollMuxFiles.java
@@ -337,8 +337,8 @@ public static File getWollMuxDir()
}
/**
- * Liefert das File-Objekt der wollmux,conf zurück, die gelesen wurde (kann z,B, auch die aus
- * /etc/wollmux/ sein). Darf erst nach setupWollMuxDir() aufgerufen werden.
+ * Returns the file object of the wollmux,conf that was read (can also be the one from
+ * be /etc/wollmux/). May only be called after setupWollMuxDir().
*/
public static File getWollMuxConfFile()
{
@@ -349,10 +349,10 @@ public static File getWollMuxConfFile()
}
/**
- * Liefert das File-Objekt des LocalOverrideStorage Caches zurück. Darf erst nach
- * setupWollMuxDir() aufgerufen werden.
+ * Returns the file object of the LocalOverrideStorage cache. May only after
+ * setupWollMuxDir() to be called.
*
- * @return das File-Objekt des LocalOverrideStorage Caches.
+ * @return the file object of the LocalOverrideStorage cache.
*/
public static File getLosCacheFile()
{
@@ -363,7 +363,7 @@ public static File getLosCacheFile()
}
/**
- * Liefert den Inhalt der wollmux,conf zurück.
+ * Returns the content of wollmux,conf.
*/
public static ConfigThingy getWollmuxConf()
{
diff --git a/core/src/main/java/de/muenchen/allg/itd51/wollmux/WollMuxSingleton.java b/core/src/main/java/de/muenchen/allg/itd51/wollmux/WollMuxSingleton.java
index 7c6faf67b..188552252 100644
--- a/core/src/main/java/de/muenchen/allg/itd51/wollmux/WollMuxSingleton.java
+++ b/core/src/main/java/de/muenchen/allg/itd51/wollmux/WollMuxSingleton.java
@@ -50,10 +50,10 @@
import org.libreoffice.ext.unohelper.util.UnoConfiguration;
/**
- * Diese Klasse ist ein Singleton, welches den WollMux initialisiert und alle zentralen
- * WollMux-Methoden zur Verfügung stellt. Selbst der WollMux-Service
- * de.muenchen.allg.itd51.wollmux.comp.WollMux, der früher zentraler Anlaufpunkt war, bedient sich
- * größtenteils aus den zentralen Methoden des Singletons.
+ * This class is a singleton, which initializes the WollMux and all central
+ * Provides WollMux methods. Even the WollMux service
+ * de.muenchen.allg.itd51.wollmux.comp.WollMux, which used to be the central contact point, is used
+ * mostly from the central methods of the singleton.
*/
public class WollMuxSingleton
{
@@ -63,19 +63,19 @@ public class WollMuxSingleton
private static WollMuxSingleton singletonInstance = null;
/**
- * Enthält den default XComponentContext in dem der WollMux (bzw. das OOo) läuft.
+ * Contains the default XComponentContext in which WollMux (or OOo) runs.
*/
private XComponentContext ctx;
/**
- * Verwaltet Informationen zum NoConfig mode.
+ * Manages information about the NoConfig mode.
*/
private boolean noConfig;
private boolean menusCreated = false;
/**
- * Die WollMux-Hauptklasse ist als singleton realisiert.
+ * The WollMux main class is implemented as a singleton.
*/
private WollMuxSingleton(XComponentContext ctx)
{
@@ -122,16 +122,16 @@ private WollMuxSingleton(XComponentContext ctx)
LOGGER.debug("CONF_VERSION: {}", getConfVersionInfo());
/*
- * Datenquellen/Registriere Abschnitte verarbeiten. ACHTUNG! Dies muss vor getDatasourceJoiner()
- * geschehen, da die entsprechenden Datenquellen womöglich schon für WollMux-Datenquellen
- * benötigt werden.
+ * Process data sources/register sections. DANGER! This must be done before getDatasourceJoiner()
+ * done because the corresponding data sources may already be for WollMux data sources
+ * are required.
*/
registerDatasources(WollMuxFiles.getWollmuxConf(), WollMuxFiles.getDefaultContext());
- // Versuchen, den DJ zu initialisieren
+ // Try to initialize the DJ
if (SenderService.getInstance() != null)
{
- // Initialisiere EventProcessor
+ // Initialize EventProcessor
WollMuxEventHandler.getInstance().setAcceptEvents(true);
// register global EventListener
@@ -146,7 +146,7 @@ private WollMuxSingleton(XComponentContext ctx)
LOGGER.error("", e);
}
- // setzen von shortcuts
+ // set shortcuts
ConfigThingy tastenkuerzel = new ConfigThingy("");
try
{
@@ -164,8 +164,8 @@ private WollMuxSingleton(XComponentContext ctx)
LOGGER.error("", e);
}
- // Setzen der in den Abschnitten OOoEinstellungen eingestellten
- // Konfigurationsoptionen
+ // Set the settings set in the OOoSettings sections
+ // configuration options
this.setOOoConfiguration(WollMuxFiles.getWollmuxConf().query("OOoEinstellungen"));
}
}
@@ -179,10 +179,10 @@ private void setOOoConfiguration(ConfigThingy oooEinstellungenConf)
}
/**
- * Diese Methode liefert die Instanz des WollMux-Singletons. Ist der WollMux noch nicht
- * initialisiert, so liefert die Methode null!
+ * This method returns the instance of the WollMux singleton. Is not the WollMux yet
+ * initialized, the method returns null!
*
- * @return Instanz des WollMuxSingletons oder null.
+ * @return instance of WollMuxSingleton or null.
*/
public static WollMuxSingleton getInstance()
{
@@ -200,8 +200,8 @@ public void setMenusCreated(boolean menusCreated)
}
/**
- * Diese Methode initialisiert das WollMuxSingleton (nur dann, wenn es noch nicht initialisiert
- * wurde)
+ * This method initializes the WollMuxSingleton (only if it's not already initialized
+ * became)
*/
public static synchronized void initialize(XComponentContext ctx)
{
@@ -212,7 +212,7 @@ public static synchronized void initialize(XComponentContext ctx)
}
/**
- * Liefert die Versionsnummer des WollMux (z.B. "5.9.2") zurück.
+ * Returns the version number of WollMux (e.g. "5.9.2").
*/
public static String getVersion()
{
@@ -220,13 +220,13 @@ public static String getVersion()
}
/**
- * Diese Methode liefert die Versionsinformation der aktuell verwendeten wollmux-Konfiguration
- * (z.B. "wollmux-standard-config-2.2.1") als String zurück, wenn in der Konfiguration ein
- * entsprechender CONF_VERSION-Schlüssel definiert ist, oder "unbekannt", falls der dieser
- * Schlüssel nicht existiert.
+ * This method returns the version information of the Wollmux configuration currently in use
+ * (e.g. "wollmux-standard-config-2.2.1") as a string if in the configuration a
+ * corresponding CONF_VERSION key is defined, or "unknown" if that
+ * Key does not exist.
*
- * @return Der Versionsinformation der aktuellen WollMux-Konfiguration (falls definiert) oder
- * "unbekannt", falls nicht.
+ * @return The version information of the current WollMux configuration (if defined) or
+ * "unknown" if not.
*/
public String getConfVersionInfo()
{
@@ -255,11 +255,11 @@ public XComponentContext getXComponentContext()
}
/**
- * Verarbeitet alle Datenquellen/Registriere-Unterabschnitte von conf und registriert die
- * entsprechenden Datenquellen in OOo, falls dort noch nicht vorhanden.
+ * Processes all data sources/register subsections of conf and registers the
+ * Corresponding data sources in OOo, if not already available there.
*
* @param context
- * gibt an relativ zu was relative URLs aufgelöst werden sollen.
+ * indicates relative to what relative URLs should be resolved.
*/
private static void registerDatasources(ConfigThingy conf, URL context)
{
@@ -298,8 +298,8 @@ private static void registerDatasources(ConfigThingy conf, URL context)
continue;
}
- // hierher (und damit weiter ohne continue) kommen wir nur, wenn
- // ein REFRESH-Abschnitt vorhanden ist und "true" enthält.
+ // we only come here (and thus continue without continue) if
+ // there is a REFRESH section and it contains "true".
} catch (NodeNotFoundException x)
{
continue;
@@ -339,11 +339,11 @@ private static void registerDatasources(ConfigThingy conf, URL context)
}
/**
- * Setzt die im ConfigThingy übergebenen OOoEinstellungen-Abschnitt enthaltenen Einstellungen in
- * der OOo-Registry.
+ * Sets the settings contained in the ConfigThingy passed OOoSettings section to
+ * the OOo registry.
*
- * @param oooEinstellungenConf
- * Der Knoten OOoEinstellungen eines solchen Abschnitts.
+ * @param oooSettingsConf
+ * The OOoSettings node of such a section.
*/
private static void setConfigurationValues(ConfigThingy oooEinstellungenConf)
{
@@ -366,16 +366,16 @@ private static void setConfigurationValues(ConfigThingy oooEinstellungenConf)
}
/**
- * Konvertiert den als String übergebenen Wert value in ein Objekt vom Typ type oder liefert eine
- * IllegalArgumentException, wenn die Werte nicht konvertiert werden können.
+ * Converts the value passed as a string into an object of type type or returns a
+ * IllegalArgumentException if the values cannot be converted.
*
* @param type
- * Der Typ in den konvertiert werden soll ('boolean', 'integer', 'float', 'string').
+ * The type to convert to ('boolean', 'integer', 'float', 'string').
* @param value
- * Der zu konvertierende Wert.
- * @return Das neue Objekt vom entsprechenden Typ.
+ * The value to convert.
+ * @return The new object of the appropriate type.
* @throws IllegalArgumentException
- * type oder value sind ungültig oder fehlerhaft.
+ * type or value is invalid or contains errors.
*/
private static Object getObjectByType(String type, String value)
{
@@ -405,15 +405,15 @@ private static Object getObjectByType(String type, String value)
}
/**
- * Setzt eine Einstellung value in der OOo-Registry, wobei die Position im Registry-Baum durch
- * node und prop beschrieben wird.
+ * Sets a setting value in the OOo registry, taking its position in the registry tree through
+ * node and prop is described.
*
* @param node
- * z.B. "/org.openoffice.Inet/Settings"
+ * e.g. "/org.openoffice.inet/settings"
* @param prop
- * z.B. "ooInetProxyType"
+ * e.g. "ooInetProxyType"
* @param value
- * der zu setzende Wert als Objekt vom entsprechenden Typ.
+ * the value to be set as an object of the appropriate type.
*/
private static void setConfigurationValue(String node, String prop, Object value)
{
@@ -427,10 +427,10 @@ private static void setConfigurationValue(String node, String prop, Object value
}
/**
- * Überprüft, ob von url gelesen werden kann und wirft eine IOException, falls nicht.
+ * Checks if url is readable and throws an IOException if not.
*
* @throws IOException
- * falls von url nicht gelesen werden kann.
+ * if url is not readable.
*/
public static void checkURL(URL url) throws IOException
{
diff --git a/core/src/main/java/de/muenchen/allg/itd51/wollmux/func/AlwaysTrueFunction.java b/core/src/main/java/de/muenchen/allg/itd51/wollmux/func/AlwaysTrueFunction.java
index 32599f53f..0c82a5539 100644
--- a/core/src/main/java/de/muenchen/allg/itd51/wollmux/func/AlwaysTrueFunction.java
+++ b/core/src/main/java/de/muenchen/allg/itd51/wollmux/func/AlwaysTrueFunction.java
@@ -37,7 +37,7 @@ public String[] parameters()
@Override
public void getFunctionDialogReferences(Collection set)
{
- // Hat keine Referenzen auf Dialoge.
+ // Has no references to dialogs.
}
@Override
diff --git a/core/src/main/java/de/muenchen/allg/itd51/wollmux/func/BindFunction.java b/core/src/main/java/de/muenchen/allg/itd51/wollmux/func/BindFunction.java
index 4dca45479..d8c79c507 100644
--- a/core/src/main/java/de/muenchen/allg/itd51/wollmux/func/BindFunction.java
+++ b/core/src/main/java/de/muenchen/allg/itd51/wollmux/func/BindFunction.java
@@ -77,22 +77,22 @@ public BindFunction(Function func, ConfigThingy conf, FunctionLibrary funcLib,
setFunc.getFunctionDialogReferences(functionDialogReferences);
/*
- * name wurde gebunden, wird also nicht mehr als Parameter benötigt, außer wenn eine der
- * setFuncs den Parameter benötigt. In diesem Fall ist der Parameter in setFuncParams
- * erfasst und wird nachher wieder zu myparams hinzugefügt.
+ * name has been bound so is no longer required as a parameter unless one of the
+ * setFuncs requires the parameter. In this case the parameter is in setFuncParams
+ * is captured and added back to myparams afterwards.
*/
myParams.remove(name);
}
catch (NodeNotFoundException x)
{
- // kann nicht passieren, hab count() getestet
+ // can't happen, tested count()
}
}
/*
- * Parameter der setFuncs den benötigten Parametern hinzufügen und in String[]
- * konvertieren.
+ * Add the parameters of the setFuncs to the required parameters and in String[]
+ * convert.
*/
myParams.addAll(setFuncParams);
params = myParams.toArray(new String[0]);
@@ -144,16 +144,16 @@ public TranslatedValues(Values values)
public boolean hasValue(String id)
{
/*
- * ACHTUNG! Wenn die id an eine Funktion gebunden ist, dann liefern wir immer
- * true, auch wenn die Funktion evtl. einen Fehler liefert. Es gäbe 2
- * alternative Verhaltensweisen: - nur true liefern, wenn
- * values.hasValue(id2) == true für alle Parameter, die die Funktion
- * erwartet. Nachteil: Zu strikt bei Funktionen, bei denen manche Argumente
- * optional sind - die Funktion ausführen und sehen, ob sie einen Fehler
- * liefert Nachteil: Die Funktion wird zu einem Zeitpunkt ausgeführt, zu dem
- * dies evtl. nicht erwartet wird. Außerdem wird die Funktion einmal mehr
- * ausgeführt. Bei externen Funktionen (insbes. Basic-Makros) ist dies nicht
- * wünschenswert.
+ * DANGER! If the id is bound to a function, then we always return
+ * true, even if the function may return an error. there would be 2
+ * alternative behaviors: - only return true if
+ * values.hasValue(id2) == true for all parameters of the function
+ * expected. Disadvantage: Too strict on functions that take some arguments
+ * are optional - run the function and see if it returns an error
+ * provides disadvantage: the function is executed at a time when
+ * this may not be expected. In addition, the function is once more
+ * executed. This is not the case with external functions (especially basic macros).
+ * desirable.
*/
if (mapParamNameToSetFunction.containsKey(id)) return true;
return (values.hasValue(id));
diff --git a/core/src/main/java/de/muenchen/allg/itd51/wollmux/func/Dateinamensanpassungen.java b/core/src/main/java/de/muenchen/allg/itd51/wollmux/func/Dateinamensanpassungen.java
index 5d4ab1454..9825d02e1 100644
--- a/core/src/main/java/de/muenchen/allg/itd51/wollmux/func/Dateinamensanpassungen.java
+++ b/core/src/main/java/de/muenchen/allg/itd51/wollmux/func/Dateinamensanpassungen.java
@@ -49,12 +49,12 @@ private Dateinamensanpassungen()
}
/**
- * Dieser Funktion kann eine durch Pipe ('|') getrennte Liste mit
- * Pfaden/Dateinamen übergeben werden, wovon der erste Eintrag dieser Liste
- * zurückgegeben wird, dessen Pfad-Anteil tatsächlich verfügbar ist.
- * Innerhalb eines Pfades/Dateinamens kann vor der Verfügbarkeitsprüfung mit
- * ${<name>} der Wert einer Java-Systemproperty in den Dateinamen eingefügt
- * werden.
+ * This function can take a pipe ('|') separated list with
+ * Paths/filenames are passed, of which the first entry in this list
+ * is returned whose path portion is actually available.
+ * Within a path/filename, prior to the availability check, with
+ * ${<name>} the value of a Java system property inserted into the filename
+ * become.
*/
public static String verfuegbarenPfadVerwenden(String fileName)
{
@@ -78,26 +78,26 @@ public static String verfuegbarenPfadVerwenden(String fileName)
}
/**
- * Arbeitet wie
- * {@link Dateinamensanpassungen#verfuegbarenPfadVerwenden(String)} und
- * nimmt zusätzlich die folgenden LHM-spezifischen Dateinamensanpassungen
- * vor:
+ * works like
+ * {@link Filename Customizations#UseavailablePath(String)} and
+ * additionally takes the following LHM-specific file name adjustments
+ * before:
*
- * a. Substituiert werden ß in ss ä in ae ö in oe ü in ue, Ä in Ae, Ü in ue,
- * Ö in Oe
+ * a. ß in ss ä in ae ö in oe ü in ue, Ä in Ae, Ü in ue,
+ * O to Oe
*
- * b. Alle Sonderzeichen, Satzzeichen etc. sollen durch _ ersetzt werden,
- * außer dem Punkt vor der Dateiendung (.odt)
+ * b. All special characters, punctuation marks etc. should be replaced by _,
+ * except for the dot in front of the file extension (.odt)
*
- * c. Damit sind im Dateinamen nur noch die Zahlen von 0-9, die Buchstaben
- * von a-z und A-Z und der Unterstrich _ vorhanden
+ * c. This means that only the numbers from 0-9, the letters, are left in the file name
+ * from a-z and A-Z and the underscore _ present
*
- * d. Die Länge des Dateinamens wird auf maximal 240 Zeichen (inkl. Pfad)
- * begrenzt; ist der ermittelte Dateiname länger, so wird er nach 240
- * Zeichen abgeschnitten (genau genommen wird nach 236 Zeichen abgeschnitten
- * und dann wird die Endung .odt angehängt).
+ * i.e. The length of the file name is limited to a maximum of 240 characters (incl. path)
+ * limited; if the determined file name is longer, it becomes after 240
+ * Characters truncated (actually truncated after 236 characters
+ * and then the extension .odt is appended).
*
- * Arbeitsverzeichnispfad in LibreOffice wird an Dateiname angehängt, falls spezifizierte Dateiname nicht absolut ist.
+ * Working directory path in LibreOffice is appended to filename if specified filename is not absolute.
*/
public static String lhmDateinamensanpassung(String fileName)
{
@@ -107,7 +107,7 @@ public static String lhmDateinamensanpassung(String fileName)
{
try
{
- // holt den Arbeitsverzeichnispfad aus LO
+ // gets the working directory path from LO
Object ps = UnoComponent.createComponentWithContext(UnoComponent.CSS_UTIL_PATH_SETTINGS);
URL dir = new URL(AnyConverter.toString(UnoProperty.getProperty(ps, UnoProperty.WORK)));
f = new File(dir.getPath(), fileName);
@@ -155,7 +155,7 @@ public static String lhmDateinamensanpassung(String fileName)
private static String replaceProperties(final String fileName)
{
- // alle ${} durch evaluierten Inhalt ersetzen
+ // replace all ${} with evaluated content
Matcher m = PROP.matcher(fileName);
StringBuffer buf = new StringBuffer();
while (m.find())
diff --git a/core/src/main/java/de/muenchen/allg/itd51/wollmux/func/DivideFunction.java b/core/src/main/java/de/muenchen/allg/itd51/wollmux/func/DivideFunction.java
index 0912cc9f4..a80ebd53d 100644
--- a/core/src/main/java/de/muenchen/allg/itd51/wollmux/func/DivideFunction.java
+++ b/core/src/main/java/de/muenchen/allg/itd51/wollmux/func/DivideFunction.java
@@ -44,7 +44,7 @@ public class DivideFunction implements Function
private String[] params;
/**
- * Wenn divisorFunction null ist wird 1 angenommen.
+ * If divisorFunction is zero, 1 is assumed.
*/
public DivideFunction(Function dividendFunction, Function divisorFunction,
int minScale, int maxScale)
@@ -95,12 +95,12 @@ public String getResult(Values parameters)
if (divisor == FunctionLibrary.ERROR) return FunctionLibrary.ERROR;
/*
- * Falls der Dezimaltrenner nicht '.' ist, ersetzte alle '.' durch etwas, das
- * kein Dezimaltrenner ist, um eine NumberFormatException beim Konvertieren zu
- * provozieren. Dies ist eine Vorsichtsmaßnahme, da '.' zum Beispiel in
- * Deutschland alls Gruppierungszeichen verwendet wird und wir wollen nicht
- * fälschlicher weise "100.000" als 100 interpretieren, wenn die eingebende
- * Person 100000 gemeint hat.
+ * If the decimal separator is not '.' is replaced all '.' through something that
+ * is not a decimal separator in order to throw a NumberFormatException when converting
+ * provoke. This is a precaution because '.' for example in
+ * Germany alls grouping character is used and we don't want it
+ * incorrectly interpreting "100,000" as 100 when entering
+ * person meant 100000.
*/
if (decimalPoint != '.')
{
@@ -122,14 +122,14 @@ public String getResult(Values parameters)
}
/*
- * NumberFormat kann leider nicht zum formatieren verwendet werden, da es nur
- * die Genauigkeit von double hat (laut Java Doc).
+ * Unfortunately, NumberFormat cannot be used for formatting, since it is only
+ * has the precision of double (according to Java Doc).
*/
/*
- * Workaround für Bug
+ * Workaround for bug
* http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6480539
- * stripTrailingZeros() funktioniert nicht für 0.
+ * stripTrailingZeros() does not work for 0.
*/
String result;
if (bigResult.compareTo(BigDecimal.ZERO) == 0)
diff --git a/core/src/main/java/de/muenchen/allg/itd51/wollmux/func/ExternalFunction.java b/core/src/main/java/de/muenchen/allg/itd51/wollmux/func/ExternalFunction.java
index e8cb20058..dcb2b64ad 100644
--- a/core/src/main/java/de/muenchen/allg/itd51/wollmux/func/ExternalFunction.java
+++ b/core/src/main/java/de/muenchen/allg/itd51/wollmux/func/ExternalFunction.java
@@ -40,8 +40,8 @@
import de.muenchen.allg.itd51.wollmux.util.L;
/**
- * Eine durch ein ConfigThingy beschriebene externe (d,h, nicht als ConfigThingy
- * definierte) Funktion.
+ * An external described by a ConfigThingy (i.e. not as a ConfigThingy
+ * defined) function.
*/
public class ExternalFunction
{
@@ -50,29 +50,29 @@ public class ExternalFunction
.getLogger(ExternalFunction.class);
/**
- * Falls die Funktion eine Funktion des Scripting Frameworks ist, ist hier die
- * Referenz auf das Skript gespeichert.
+ * If the function is a Scripting Framework function, here is it
+ * Reference saved to the script.
*/
private XScript script = null;
/**
- * Falls die Funktion eine statische Java-Methode ist, so wird hier die Referenz
- * auf diese gespeichert.
+ * If the function is a static Java method, then here is the reference
+ * stored on this.
*/
private Method method = null;
/**
- * Die Namen der Parameter, die die Funktion erwartet.
+ * The names of the parameters that the function expects.
*/
private String[] params;
/**
- * Erzeugt aus einem ConfigThingy (übergeben wird der EXTERN-Knoten) eine
- * ExternalFunction, wobei zum Laden von Java-Klassen der selbe ClassLoader wie für
- * das Laden dieser Klasse verwendet wird.
+ * Generates a ConfigThingy (the EXTERN node is transferred).
+ * ExternalFunction, using the same ClassLoader for loading Java classes as for
+ * loading this class is used.
*
* @throws ConfigurationErrorException
- * falls die Spezifikation in conf fehlerhaft ist. TESTED
+ * if the specification in conf is wrong. TESTED
*/
public ExternalFunction(ConfigThingy conf)
{
@@ -80,11 +80,11 @@ public ExternalFunction(ConfigThingy conf)
}
/**
- * Erzeugt aus einem ConfigThingy (übergeben wird der EXTERN-Knoten) eine
- * ExternalFunction, wobei zum Laden von Java-Klassen classLoader verwendet wird.
+ * Generates a ConfigThingy (the EXTERN node is transferred).
+ * ExternalFunction, using classLoader to load Java classes.
*
* @throws ConfigurationErrorException
- * falls die Spezifikation in conf fehlerhaft ist. TESTED
+ * if the specification in conf is wrong. TESTED
*/
public ExternalFunction(ConfigThingy conf, ClassLoader classLoader)
{
@@ -146,7 +146,7 @@ public ExternalFunction(ConfigThingy conf, ClassLoader classLoader)
}
/**
- * Liefert die Namen der Parameter, die die Funktion erwartet.
+ * Returns the names of the parameters expected by the function.
*/
public String[] parameters()
{
@@ -154,15 +154,15 @@ public String[] parameters()
}
/**
- * Ruft die Funktion auf mit den String-Parametern aus parameters.
+ * Calls the function with the string parameters from parameters.
*
* @param parameters
- * sollte zu jedem der von {@link #parameters()} gelieferten Namen einen
- * String-Wert enthalten.
- * @return den Wert des Funktionsaufrufs oder null falls es ein Problem gab, das
- * nicht zu einer Exception geführt hat.
+ * should be one for each of the names returned by {@link #parameters()}
+ * String value included.
+ * @return the value of the function call, or null if there was a problem that
+ * did not result in an exception.
* @throws Exception
- * falls ein Problem auftritt
+ * if there is a problem
*/
public Object invoke(Values parameters) throws Exception
{
@@ -173,15 +173,15 @@ public Object invoke(Values parameters) throws Exception
}
/**
- * Ruft die Funktion auf mit den Argumenten args.
+ * Calls the function with arguments args.
*
* @param args
- * muss für jeden der von {@link #parameters()} gelieferten Namen einen
- * Wert enthalten.
- * @return den Wert des Funktionsaufrufs oder null falls es ein Problem gab, das
- * nicht zu einer Exception geführt hat.
+ * must be one for each of the names returned by {@link #parameters()}
+ * Value included.
+ * @return the value of the function call, or null if there was a problem that
+ * did not result in an exception.
* @throws Exception
- * falls ein Problem auftritt
+ * if there is a problem
*/
public Object invoke(Object[] args) throws Exception
{
diff --git a/core/src/main/java/de/muenchen/allg/itd51/wollmux/func/Function.java b/core/src/main/java/de/muenchen/allg/itd51/wollmux/func/Function.java
index f628039d1..2bf5b3bc0 100644
--- a/core/src/main/java/de/muenchen/allg/itd51/wollmux/func/Function.java
+++ b/core/src/main/java/de/muenchen/allg/itd51/wollmux/func/Function.java
@@ -25,42 +25,42 @@
import java.util.Collection;
/**
- * Eine Funktion, die einen Wert in Abhängigkeit von Parametern berechnet.
+ * A function that calculates a value depending on parameters.
*/
public interface Function
{
/**
- * Liefert die Namen der Parameter, die die Funktion erwartet.
- * Die Reihenfolge ist undefiniert. Es kann kein Name mehrfach vorkommen.
+ * Returns the names of the parameters expected by the function.
+ * The order is undefined. No name can appear more than once.
*/
public String[] parameters();
/**
- * Zu set werden die Namen aller Funktionsdialoge hinzugefügt, die diese
- * Funktion referenziert.
+ * The names of all function dialogs that use this
+ * Function referenced.
*/
public void getFunctionDialogReferences(Collection set);
/**
- * Ruft die Funktion mit Argumenten aus parameters auf und liefert das
- * Funktionsergebnis als String. Falls es sich um einen booleschen Wert
- * handelt, wird der String "true" oder "false" zurückgeliefert.
- * Falls während der Ausführung ein Fehler auftritt, wird möglicherweise (dies
- * hängt von der Funktion ab) das String-Objekt
- * {@link FunctionLibrary#ERROR} (== vergleichbar) zurückgeliefert.
- * @param parameters sollte zu jedem der von {@link #parameters()} gelieferten
- * Namen einen String-Wert enthalten.
+ * Calls the function with arguments from parameters and returns that
+ * Function result as a string. If it is a boolean value
+ * is used, the string "true" or "false" is returned.
+ * If an error occurs during execution, it may (this
+ * depends on the function) the String object
+ * {@link FunctionLibrary#ERROR} (== comparable) returned.
+ * @param parameters should match any of those returned by {@link #parameters()}
+ * Names contain a string value.
*/
public String getResult(Values parameters);
/**
- * Ruft die Funktion mit Argumenten aus parameters auf und liefert das
- * Funktionsergebnis als boolean. Falls der Wert seiner Natur nach ein
- * String ist, so wird true geliefert, falls er (ohne Berücksichtigung von
- * Groß-/Kleinschreibung) der Zeichenkette "true" entspricht.
- * Falls während der Ausführung ein Fehler auftritt wird false zurückgeliefert.
- * @param parameters sollte zu jedem der von {@link #parameters()} gelieferten
- * Namen einen String-Wert enthalten.
+ * Calls the function with arguments from parameters and returns that
+ * Function result as boolean. If the value by its nature a
+ * is a string, true is returned if it (disregarding
+ * case sensitive) matches the string "true".
+ * If an error occurs during execution, false is returned.
+ * @param parameters should match any of those returned by {@link #parameters()}
+ * Names contain a string value.
*/
public boolean getBoolean(Values parameters);
diff --git a/core/src/main/java/de/muenchen/allg/itd51/wollmux/func/FunctionFactory.java b/core/src/main/java/de/muenchen/allg/itd51/wollmux/func/FunctionFactory.java
index 9f1935b52..b7639b088 100644
--- a/core/src/main/java/de/muenchen/allg/itd51/wollmux/func/FunctionFactory.java
+++ b/core/src/main/java/de/muenchen/allg/itd51/wollmux/func/FunctionFactory.java
@@ -41,7 +41,7 @@
import de.muenchen.allg.itd51.wollmux.util.L;
/**
- * Erzeugt Functions aus ConfigThingys.
+ * Generates functions from ConfigThingys.
*
* @author Matthias Benkmann (D-III-ITD 5.1)
*/
@@ -52,7 +52,7 @@ public class FunctionFactory
.getLogger(FunctionFactory.class);
/**
- * Eine Funktion, die immer true liefert.
+ * A function that always returns true.
*/
private static final Function myAlwaysTrueFunction = new AlwaysTrueFunction();
@@ -62,7 +62,7 @@ private FunctionFactory()
}
/**
- * Liefert eine Funktion, die immer true liefert.
+ * Returns a function that always returns true.
*/
public static Function alwaysTrueFunction()
{
@@ -70,27 +70,27 @@ public static Function alwaysTrueFunction()
}
/**
- * Erzeugt ein Function-Objekt aus den ENKELN von conf. Hat conf keine Enkel, so
- * wird null geliefert. Hat conf genau einen Enkel, so wird eine Funktion
- * geliefert, die diesem Enkel entspricht. Hat conf mehr als einen Enkel, so wird
- * eine Funktion geliefert, die alle Enkel als Booleans auswertet und
- * UND-verknüpft.
+ * Constructs a Function object from the GRANDSONS of conf. Does conf have no grandchildren, so
+ * will be delivered as zero. If conf has exactly one grandson, it becomes a function
+ * delivered corresponding to this grandson. If conf has more than one grandson, it will
+ * provided a function that evaluates all grandchildren as booleans and
+ * AND-linked.
*
* @param funcLib
- * die Funktionsbibliothek anhand derer Referenzen auf Funktionen
- * aufgelöst werden sollen.
+ * the function library based on its references to functions
+ * are to be resolved.
* @param dialogLib
- * die Dialogbibliothek anhand derer Referenzen auf Dialoge aufgelöst
- * werden sollen.
+ * resolved the dialog library based on its references to dialogs
+ * should be.
* @param context
- * Manche Grundfunktionen (insbes. DIALOG) halten kontextabhängige Werte.
- * Zur Unterscheidung der verschiedenen Instanzen dient die context Map,
- * in der die verschiedenen Instanzen abgelegt werden. Wird hier null
- * übergeben, dann wird eine ConfigurationErrorException geworfen, wenn
- * conf eine Funktion enthält, die einen Kontext benötigt.
+ * Some basic functions (especially DIALOG) hold context-dependent values.
+ * The context map is used to distinguish between the different instances,
+ * in which the various instances are stored. becomes zero here
+ * is passed, then a ConfigurationErrorException is thrown if
+ * conf contains a function that needs a context.
* @throws ConfigurationErrorException
- * falls conf keine korrekte Funktionsbeschreibung ist oder die Funktion
- * einen context benötigt aber null übergeben wurde.
+ * if conf is not a correct function description or the function
+ * requires a context but null was passed.
*/
public static Function parseGrandchildren(ConfigThingy conf,
FunctionLibrary funcLib, DialogLibrary dialogLib, Map