diff --git a/.classpath b/.classpath
index 61d85bb0..fefdd365 100644
--- a/.classpath
+++ b/.classpath
@@ -1,41 +1,37 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/main/java/com/tagtraum/perf/gcviewer/GCDocument.java b/src/main/java/com/tagtraum/perf/gcviewer/GCDocument.java
index 573d2f71..5f3cbf8d 100644
--- a/src/main/java/com/tagtraum/perf/gcviewer/GCDocument.java
+++ b/src/main/java/com/tagtraum/perf/gcviewer/GCDocument.java
@@ -600,6 +600,18 @@ public boolean isShowDateStamp() {
return chartPanelViews.get(0).getModelChart().isShowDateStamp();
}
+
+ @Override
+ public boolean isShowSystemFullGCLines() {
+ if (chartPanelViews.isEmpty()) return false;
+ return chartPanelViews.get(0).getModelChart().isShowSystemFullGCLines();
+ }
+
+ @Override
+ public void setShowSystemFullGCLines(boolean showSystemFullGCLines) {
+ for (ChartPanelView chartPanelView : chartPanelViews)
+ chartPanelView.getModelChart().setShowSystemFullGCLines(showSystemFullGCLines);
+ }
}
private class ScrollBarMaximumChangeListener implements ChangeListener {
diff --git a/src/main/java/com/tagtraum/perf/gcviewer/GCPreferences.java b/src/main/java/com/tagtraum/perf/gcviewer/GCPreferences.java
index a259bada..195b1c23 100644
--- a/src/main/java/com/tagtraum/perf/gcviewer/GCPreferences.java
+++ b/src/main/java/com/tagtraum/perf/gcviewer/GCPreferences.java
@@ -20,6 +20,7 @@
*/
public class GCPreferences {
public static final String FULL_GC_LINES = "fullgclines";
+ public static final String SYSTEM_FULL_GC_LINES = "systemfullgclines";
public static final String INC_GC_LINES = "incgclines";
public static final String GC_LINES_LINE = "gctimesline";
public static final String GC_TIMES_RECTANGLES = "gctimesrectangles";
diff --git a/src/main/java/com/tagtraum/perf/gcviewer/GCViewerGui.java b/src/main/java/com/tagtraum/perf/gcviewer/GCViewerGui.java
index 29ea6155..2d5adb3a 100644
--- a/src/main/java/com/tagtraum/perf/gcviewer/GCViewerGui.java
+++ b/src/main/java/com/tagtraum/perf/gcviewer/GCViewerGui.java
@@ -65,6 +65,7 @@
import com.tagtraum.perf.gcviewer.renderer.GCTimesRenderer;
import com.tagtraum.perf.gcviewer.renderer.IncLineRenderer;
import com.tagtraum.perf.gcviewer.renderer.InitialMarkLevelRenderer;
+import com.tagtraum.perf.gcviewer.renderer.SystemFullGCLineRenderer;
import com.tagtraum.perf.gcviewer.renderer.TotalHeapRenderer;
import com.tagtraum.perf.gcviewer.renderer.TotalTenuredRenderer;
import com.tagtraum.perf.gcviewer.renderer.TotalYoungRenderer;
@@ -111,6 +112,7 @@ public class GCViewerGui extends JFrame {
private JCheckBoxMenuItem menuItemShowDataPanel;
private JCheckBoxMenuItem menuItemShowDateStamp;
private JCheckBoxMenuItem menuItemFullGCLines;
+ private JCheckBoxMenuItem menuItemSystemFullGCLines;
private JCheckBoxMenuItem menuItemIncGCLines;
private JCheckBoxMenuItem menuItemGcTimesLine;
private JCheckBoxMenuItem menuItemGcTimesRectangle;
@@ -284,6 +286,7 @@ private void updateMenuItemState() {
menuItemShowDateStamp.setState(getSelectedGCDocument().getModelChart().isShowDateStamp());
menuItemAntiAlias.setSelected(getSelectedGCDocument().getModelChart().isAntiAlias());
menuItemFullGCLines.setState(getSelectedGCDocument().getModelChart().isShowFullGCLines());
+ menuItemSystemFullGCLines.setState(getSelectedGCDocument().getModelChart().isShowSystemFullGCLines());
menuItemIncGCLines.setState(getSelectedGCDocument().getModelChart().isShowIncGCLines());
menuItemGcTimesLine.setState(getSelectedGCDocument().getModelChart().isShowGCTimesLine());
menuItemGcTimesRectangle.setState(getSelectedGCDocument().getModelChart().isShowGCTimesRectangles());
@@ -540,6 +543,16 @@ public void actionPerformed(final ActionEvent e) {
viewMenu.add(menuItemFullGCLines);
gcLineMenuItems.put(GCPreferences.FULL_GC_LINES, menuItemFullGCLines);
+ menuItemSystemFullGCLines = new JCheckBoxMenuItem(LocalisationHelper.getString("main_frame_menuitem_system_full_gc_lines"), true);
+ menuItemSystemFullGCLines.setMnemonic(LocalisationHelper.getString("main_frame_menuitem_mnemonic_system_full_gc_lines").charAt(0));
+ menuItemSystemFullGCLines.setToolTipText(LocalisationHelper.getString("main_frame_menuitem_hint_system_full_gc_lines"));
+ menuItemSystemFullGCLines.setIcon(createMonoColoredImageIcon(SystemFullGCLineRenderer.DEFAULT_LINEPAINT, 20, 20));
+ menuItemSystemFullGCLines.setActionCommand(GCPreferences.SYSTEM_FULL_GC_LINES);
+ menuItemSystemFullGCLines.addActionListener(viewMenuActionListener);
+ viewMenu.add(menuItemSystemFullGCLines);
+ gcLineMenuItems.put(GCPreferences.SYSTEM_FULL_GC_LINES, menuItemSystemFullGCLines);
+
+
menuItemIncGCLines = new JCheckBoxMenuItem(LocalisationHelper.getString("main_frame_menuitem_inc_gc_lines"), true);
menuItemIncGCLines.setMnemonic(LocalisationHelper.getString("main_frame_menuitem_mnemonic_inc_gc_lines").charAt(0));
menuItemIncGCLines.setToolTipText(LocalisationHelper.getString("main_frame_menuitem_hint_inc_gc_lines"));
@@ -698,6 +711,8 @@ public void actionPerformed(final ActionEvent e) {
getSelectedGCDocument().getModelChart().setShowInitialMarkLevel(((JCheckBoxMenuItem) e.getSource()).getState());
} else if (e.getActionCommand() == GCPreferences.CONCURRENT_COLLECTION_BEGIN_END) {
getSelectedGCDocument().getModelChart().setShowConcurrentCollectionBeginEnd(((JCheckBoxMenuItem) e.getSource()).getState());
+ }else if (e.getActionCommand() == GCPreferences.SYSTEM_FULL_GC_LINES) {
+ getSelectedGCDocument().getModelChart().setShowSystemFullGCLines(((JCheckBoxMenuItem) e.getSource()).getState());
}
}
}
diff --git a/src/main/java/com/tagtraum/perf/gcviewer/ModelChart.java b/src/main/java/com/tagtraum/perf/gcviewer/ModelChart.java
index e05d6760..cdbae441 100644
--- a/src/main/java/com/tagtraum/perf/gcviewer/ModelChart.java
+++ b/src/main/java/com/tagtraum/perf/gcviewer/ModelChart.java
@@ -80,4 +80,11 @@ public interface ModelChart {
boolean isShowDateStamp();
+ boolean isShowSystemFullGCLines();
+
+ void setShowSystemFullGCLines(boolean showSystemFullGCLines);
+
+
+
+
}
diff --git a/src/main/java/com/tagtraum/perf/gcviewer/ModelChartImpl.java b/src/main/java/com/tagtraum/perf/gcviewer/ModelChartImpl.java
index 83bb9b9a..9ae63d29 100644
--- a/src/main/java/com/tagtraum/perf/gcviewer/ModelChartImpl.java
+++ b/src/main/java/com/tagtraum/perf/gcviewer/ModelChartImpl.java
@@ -40,6 +40,7 @@ public class ModelChartImpl extends JScrollPane implements ModelChart, ChangeLis
private IncLineRenderer incLineRenderer;
private GCRectanglesRenderer gcRectanglesRenderer;
private FullGCLineRenderer fullGCLineRenderer;
+ private SystemFullGCLineRenderer systemFullGCLineRenderer;
private GCTimesRenderer gcTimesRenderer;
private UsedHeapRenderer usedHeapRenderer;
private UsedTenuredRenderer usedTenuredRenderer;
@@ -77,6 +78,8 @@ public ModelChartImpl() {
chart.add(gcTimesRenderer, gridBagConstraints);
fullGCLineRenderer = new FullGCLineRenderer(this);
chart.add(fullGCLineRenderer, gridBagConstraints);
+ systemFullGCLineRenderer = new SystemFullGCLineRenderer(this);
+ chart.add(systemFullGCLineRenderer, gridBagConstraints);
gcRectanglesRenderer = new GCRectanglesRenderer(this);
chart.add(gcRectanglesRenderer, gridBagConstraints);
incLineRenderer = new IncLineRenderer(this);
@@ -282,7 +285,17 @@ public boolean isShowFullGCLines() {
public void setShowFullGCLines(boolean showFullGCLines) {
fullGCLineRenderer.setVisible(showFullGCLines);
}
-
+
+ @Override
+ public boolean isShowSystemFullGCLines(){
+ return this.systemFullGCLineRenderer.isVisible();
+ }
+
+ @Override
+ public void setShowSystemFullGCLines(boolean showSystemFullGCLines){
+ this.systemFullGCLineRenderer.setVisible(showSystemFullGCLines);
+ }
+
@Override
public boolean isShowIncGCLines() {
return incLineRenderer.isVisible();
@@ -382,6 +395,7 @@ private void applyPreferences(GCPreferences preferences) {
setShowGCTimesLine(preferences.getGcLineProperty(GCPreferences.GC_LINES_LINE));
setShowGCTimesRectangles(preferences.getGcLineProperty(GCPreferences.GC_TIMES_RECTANGLES));
setShowFullGCLines(preferences.getGcLineProperty(GCPreferences.FULL_GC_LINES));
+ setShowFullGCLines(preferences.getGcLineProperty(GCPreferences.SYSTEM_FULL_GC_LINES));
setShowIncGCLines(preferences.getGcLineProperty(GCPreferences.INC_GC_LINES));
setShowTotalMemoryLine(preferences.getGcLineProperty(GCPreferences.TOTAL_MEMORY));
setShowUsedMemoryLine(preferences.getGcLineProperty(GCPreferences.USED_MEMORY));
diff --git a/src/main/java/com/tagtraum/perf/gcviewer/imp/DataReaderSun1_3_1.java b/src/main/java/com/tagtraum/perf/gcviewer/imp/DataReaderSun1_3_1.java
index bc4664c3..9238f359 100644
--- a/src/main/java/com/tagtraum/perf/gcviewer/imp/DataReaderSun1_3_1.java
+++ b/src/main/java/com/tagtraum/perf/gcviewer/imp/DataReaderSun1_3_1.java
@@ -77,7 +77,7 @@ protected AbstractGCEvent parseLine(String line, ParseInformation pos)
StringTokenizer st = new StringTokenizer(line, " ,->()K\r\n");
String token = st.nextToken();
if (token.equals("Full") && st.nextToken().equals("GC")) {
- event.setType(AbstractGCEvent.Type.FULL_GC);
+ event.setType(AbstractGCEvent.Type.FULL_GC);
} else if (token.equals("Inc") && st.nextToken().equals("GC")) {
event.setType(AbstractGCEvent.Type.INC_GC);
} else if (token.equals("GC")) {
diff --git a/src/main/java/com/tagtraum/perf/gcviewer/model/AbstractGCEvent.java b/src/main/java/com/tagtraum/perf/gcviewer/model/AbstractGCEvent.java
index f8ba16bd..cb8ddfea 100644
--- a/src/main/java/com/tagtraum/perf/gcviewer/model/AbstractGCEvent.java
+++ b/src/main/java/com/tagtraum/perf/gcviewer/model/AbstractGCEvent.java
@@ -202,6 +202,10 @@ public boolean isFull() {
return false;
}
}
+
+ public boolean isSystemFullGC(){
+ return this.toString().contains("[Full GC (System)");
+ }
public boolean isInc() {
return getExtendedType().getType() == GCEvent.Type.INC_GC;
diff --git a/src/main/java/com/tagtraum/perf/gcviewer/model/GCModel.java b/src/main/java/com/tagtraum/perf/gcviewer/model/GCModel.java
index d4bad19e..82b9679e 100644
--- a/src/main/java/com/tagtraum/perf/gcviewer/model/GCModel.java
+++ b/src/main/java/com/tagtraum/perf/gcviewer/model/GCModel.java
@@ -90,6 +90,7 @@ public boolean equals(Object other) {
private List concurrentGCEvents;
private List currentNoFullGCEvents;
private List fullGCEvents;
+ private List systemFullGCEvents;
private FileInformation fileInformation = new FileInformation();
private Map fullGcEventPauses; // pause information about all full gc events for detailed output
@@ -139,6 +140,7 @@ public GCModel(boolean countTenuredAsFull) {
this.gcEvents = new ArrayList();
this.concurrentGCEvents = new ArrayList();
this.fullGCEvents = new ArrayList();
+ this.systemFullGCEvents = new ArrayList();
this.currentNoFullGCEvents = new ArrayList();
this.currentPostGCSlope = new RegressionLine();
this.postFullGCSlope = new RegressionLine();
@@ -287,6 +289,10 @@ public Iterator> getEvents() {
public Iterator getFullGCEvents() {
return fullGCEvents.iterator();
}
+
+ public Iterator getSystemFullGCEvents(){
+ return systemFullGCEvents.iterator();
+ }
private DoubleData getDoubleData(String key, Map eventMap) {
DoubleData data = eventMap.get(key);
@@ -744,4 +750,5 @@ public String toString() {
public static final Format IBM_VERBOSE_GC = new Format("IBM -verbose:gc");
public static final Format SUN_1_2_2VERBOSE_GC = new Format("Sun 1.2.2 -verbose:gc");
}
+
}
diff --git a/src/main/java/com/tagtraum/perf/gcviewer/renderer/FullGCLineRenderer.java b/src/main/java/com/tagtraum/perf/gcviewer/renderer/FullGCLineRenderer.java
index f78218c5..f0ccecf9 100644
--- a/src/main/java/com/tagtraum/perf/gcviewer/renderer/FullGCLineRenderer.java
+++ b/src/main/java/com/tagtraum/perf/gcviewer/renderer/FullGCLineRenderer.java
@@ -16,7 +16,7 @@
*/
public class FullGCLineRenderer extends ChartRenderer {
public static final Paint DEFAULT_LINEPAINT = Color.BLACK;
-
+
public FullGCLineRenderer(ModelChartImpl modelChart) {
super(modelChart);
setLinePaint(DEFAULT_LINEPAINT);
@@ -34,10 +34,12 @@ public void paintComponent(Graphics2D g2d) {
int lastScaledTimestamp = Integer.MIN_VALUE;
for (Iterator i = getModelChart().getModel().getFullGCEvents(); i.hasNext();) {
GCEvent event = i.next();
+
final int scaledTimestamp = (int)(scaleFactor * (event.getTimestamp() - getModelChart().getModel().getFirstPauseTimeStamp()));
if (scaledTimestamp != lastScaledTimestamp && scaledTimestamp >= minX && scaledTimestamp <= maxX) {
- g2d.drawLine(scaledTimestamp, 0, scaledTimestamp, height);
+ g2d.drawLine(scaledTimestamp, 0, scaledTimestamp, height);
lastScaledTimestamp = scaledTimestamp;
+
}
}
}
diff --git a/src/main/java/com/tagtraum/perf/gcviewer/renderer/SystemFullGCLineRenderer.java b/src/main/java/com/tagtraum/perf/gcviewer/renderer/SystemFullGCLineRenderer.java
new file mode 100644
index 00000000..7f63e0b0
--- /dev/null
+++ b/src/main/java/com/tagtraum/perf/gcviewer/renderer/SystemFullGCLineRenderer.java
@@ -0,0 +1,42 @@
+package com.tagtraum.perf.gcviewer.renderer;
+
+import com.tagtraum.perf.gcviewer.ChartRenderer;
+import com.tagtraum.perf.gcviewer.ModelChartImpl;
+import com.tagtraum.perf.gcviewer.model.GCEvent;
+
+import java.awt.*;
+import java.util.Iterator;
+
+
+public class SystemFullGCLineRenderer extends ChartRenderer {
+ public static final Paint DEFAULT_LINEPAINT = Color.ORANGE;
+
+ public SystemFullGCLineRenderer(ModelChartImpl modelChart) {
+ super(modelChart);
+ setLinePaint(DEFAULT_LINEPAINT);
+ }
+
+ public void paintComponent(Graphics2D g2d) {
+ // make sure that we ignore the AntiAliasing flag as it does not make sense for vertical lines
+ g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_OFF);
+ final double scaleFactor = getModelChart().getScaleFactor();
+ final Rectangle clipBounds = g2d.getClipBounds();
+ final int minX = clipBounds.x;
+ final int maxX = clipBounds.x+clipBounds.width;
+
+ final int height = getHeight();
+ int lastScaledTimestamp = Integer.MIN_VALUE;
+ for (Iterator i = getModelChart().getModel().getFullGCEvents(); i.hasNext();) {
+ GCEvent event = i.next();
+
+ final int scaledTimestamp = (int)(scaleFactor * (event.getTimestamp() - getModelChart().getModel().getFirstPauseTimeStamp()));
+ if (scaledTimestamp != lastScaledTimestamp && scaledTimestamp >= minX && scaledTimestamp <= maxX &&
+ event.isSystemFullGC() && getModelChart().isShowSystemFullGCLines()) {
+ g2d.drawLine(scaledTimestamp, 0, scaledTimestamp, height);
+ lastScaledTimestamp = scaledTimestamp;
+
+ }
+ }
+ }
+
+}
diff --git a/src/main/resources/com/tagtraum/perf/gcviewer/localStrings.properties b/src/main/resources/com/tagtraum/perf/gcviewer/localStrings.properties
index 4d63c0fc..12cf8a7c 100644
--- a/src/main/resources/com/tagtraum/perf/gcviewer/localStrings.properties
+++ b/src/main/resources/com/tagtraum/perf/gcviewer/localStrings.properties
@@ -1,351 +1,357 @@
-#Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
-# $Id: $
-# please keep these sorted and up to date
-
-about_dialog_image = aboutgcviewer.png
-
-about_dialog_title = About GCViewer
-
-action_zoom = Zoom
-
-action_zoom_hint = Zoom
-
-button_cancel = Cancel
-
-button_ok = OK
-
-data_panel_acc_fullgcpauses = Acc full GC
-
-data_panel_acc_gcpauses = Acc GC
-
-data_panel_acc_pauses = Acc pauses
-
-data_panel_avg_fullgcpause = Avg full GC
-
-data_panel_avg_gcpause = Avg GC
-
-data_panel_avg_pause = Avg Pause
-
-data_panel_avg_pause_interval = Avg pause interval
-
-data_panel_avgfreedmemorybyfullgc = Avg freed full GC
-
-data_panel_avgfreedmemorybygc = Avg freed GC
-
-data_panel_avgrelativepostfullgcincrease = Avg rel inc after FGC
-
-data_panel_avgrelativepostgcincrease = Avg rel inc after GC
-
-data_panel_count_full_gc_pauses = Number of full gc pauses
-
-data_panel_count_gc_pauses = Number of gc pauses
-
-data_panel_count_pauses = Number of pauses
-
-data_panel_details_avg = avg (s)
-
-data_panel_details_count = n
-
-data_panel_details_max = max (s)
-
-data_panel_details_min = min (s)
-
-data_panel_details_name = name
-
-data_panel_details_stddev = stddev
-
-data_panel_details_sum = sum (s)
-
-data_panel_details_sum_percent = sum (%)
-
-data_panel_details_total = total
-
-data_panel_footprint = Footprint
-
-data_panel_footprintafterfullgc = Avg after full GC
-
-data_panel_footprintaftergc = Avg after GC
-
-data_panel_freedmemory = Freed Memory
-
-data_panel_freedmemorybyfullgc = Freed by full GC
-
-data_panel_freedmemorybygc = Freed by GC
-
-data_panel_freedmemorypermin = Freed Mem/Min
-
-data_panel_group_concurrent_gc_events = Concurrent GCs
-
-data_panel_group_full_gc_pauses = Full gc pauses
-
-data_panel_group_gc_pauses = Gc pauses
-
-data_panel_group_total_pause = Total pause
-
-data_panel_memory_heap_usage = Total heap (usage / alloc. max)
-
-data_panel_memory_initiatingoccupancyfraction = InitiatingOccFraction (avg / max)
-
-data_panel_memory_perm_heap_usage = Perm heap (usage / alloc. max)
-
-data_panel_memory_promotion_avg = Avg promotion
-
-data_panel_memory_promotion_total = Total promotion
-
-data_panel_memory_tenured_heap_usage = Tenured heap (usage / alloc. max)
-
-data_panel_memory_young_heap_usage = Young heap (usage / alloc. max)
-
-data_panel_min_max_full_gc_pause = Min / max full gc pause
-
-data_panel_min_max_gc_pause = Min / max gc pause
-
-data_panel_min_max_pause = Min / Max Pause
-
-data_panel_min_max_pause_interval = Min / max pause interval
-
-data_panel_performance_fullgc = Full GC Performance
-
-data_panel_performance_gc = GC Performance
-
-data_panel_slopeafterfullgc = Slope full GC
-
-data_panel_slopeaftergc = Slope GC
-
-data_panel_tab_chart = Chart
-
-data_panel_tab_details = Event details
-
-data_panel_tab_memory = Memory
-
-data_panel_tab_pause = Pause
-
-data_panel_tab_summary = Summary
-
-data_panel_throughput = Throughput
-
-data_panel_total_time = Total Time
-
-datareader_parseerror_dialog_message = GCViewer encountered {0} problems while parsing "{1}":
-
-datareader_parseerror_dialog_title = Problems parsing {0}
-
-datareaderfactory_instantiation_failed = Failed to recognize file format.
-
-datawriterfactory_instantiation_failed = File format is not supported:
-
-fileexport_dialog_confirm_overwrite = File exists. Overwrite?
-
-fileexport_dialog_csv = Comma separated values (*.csv)
-
-fileexport_dialog_error_occured = An error occured.
-
-fileexport_dialog_simplelog = Simple GC Log (GCHisto compatible, *.simple.log)
-
-fileexport_dialog_title = Export GC log file
-
-fileexport_dialog_txt = Plain data (*.txt)
-
-fileexport_dialog_write_file_failed = Failed to write file.
-
-fileopen_dialog_add_checkbox = Add file
to current
window.
-
-fileopen_dialog_hint_add_checkbox = When checked, the new document will be added to
the current window, instead of opened in a new window.
-
-fileopen_dialog_read_file_failed = Failed to read file.
-
-fileopen_dialog_title = Choose GC log file
-
-main_frame_menu_file = File
-
-main_frame_menu_help = Help
-
-main_frame_menu_mnemonic_file = F
-
-main_frame_menu_mnemonic_help = H
-
-main_frame_menu_mnemonic_view = V
-
-main_frame_menu_mnemonic_window = W
-
-main_frame_menu_view = View
-
-main_frame_menu_window = Window
-
-main_frame_menuitem_about = About GCViewer
-
-main_frame_menuitem_add_file = Add View
-
-main_frame_menuitem_antialias = Antialias
-
-main_frame_menuitem_arrange = Arrange
-
-main_frame_menuitem_concurrent_collection_begin_end = Concurrent collections
-
-main_frame_menuitem_enter_fullscreen = Enter Full Screen
-
-main_frame_menuitem_exit = Exit
-
-main_frame_menuitem_export = Export
-
-main_frame_menuitem_full_gc_lines = Full GC Lines
-
-main_frame_menuitem_gc_times_line = GC Times Line
-
-main_frame_menuitem_gc_times_rectangles = GC Times Rectangles
-
-main_frame_menuitem_hint_about = Shows information about GCViewer
-
-main_frame_menuitem_hint_add_file = Adds a gc view to the current window
-
-main_frame_menuitem_hint_antialias = Use antialiasing when rendering lines (potentially slows down rendering significantly)
-
-main_frame_menuitem_hint_arrange = Arranges all windows
-
-main_frame_menuitem_hint_concurrent_collection_begin_end = Shows lines for every begin (cyan) and end (pink) of a concurrent collection cycle.
-
-main_frame_menuitem_hint_enter_fullscreen = Switch to full screen mode
-
-main_frame_menuitem_hint_exit = Exits GCViewer
-
-main_frame_menuitem_hint_export = Exports the current file
-
-main_frame_menuitem_hint_full_gc_lines = Shows lines for every full garbage collection
-
-main_frame_menuitem_hint_gc_times_line = Shows a line that indicates the time garbage collection takes
-
-main_frame_menuitem_hint_gc_times_rectangles = Draws filled rectangles that indicate how long a garbage collection took
-
-main_frame_menuitem_hint_inc_gc_lines = Shows lines for every incremental garbage collection
-
-main_frame_menuitem_hint_initial_mark_level = Shows level of memory at initial-mark (only available for algorithms with concurrent collections).
-
-main_frame_menuitem_hint_leave_fullscreen = Exit full screen mode
-
-main_frame_menuitem_hint_license = license information
-
-main_frame_menuitem_hint_open_file = Opens a file
-
-main_frame_menuitem_hint_open_url = Opens a URL
-
-main_frame_menuitem_hint_readme = read various information about GCViewer
-
-main_frame_menuitem_hint_recent_files = Opens a recent View
-
-main_frame_menuitem_hint_refresh = Reloads the current file
-
-main_frame_menuitem_hint_show_data_panel = Shows the data panel with detailed information about the current document
-
-main_frame_menuitem_hint_show_datestamps = Shows the data panel with detailed information about the current document
-
-main_frame_menuitem_hint_tenured_memory = Part of the heap that constitutes the tenured generation
-
-main_frame_menuitem_hint_total_memory = Total size of allocated memory
-
-main_frame_menuitem_hint_used_memory = Part of the heap that is actually used
-
-main_frame_menuitem_hint_used_tenured_memory = Part of the tenured heap that is actually used
-
-main_frame_menuitem_hint_used_young_memory = Part of the young heap that is actually used
-
-main_frame_menuitem_hint_watch = Watches and reloads the current file, if it changes
-
-main_frame_menuitem_hint_young_memory = Part of the heap that constitutes the young generation
-
-main_frame_menuitem_inc_gc_lines = Inc GC Lines
-
-main_frame_menuitem_initial_mark_level = Initial mark level
-
-main_frame_menuitem_leave_fullscreen = Exit Full Screen
-
-main_frame_menuitem_license = License
-
-main_frame_menuitem_mnemonic_about = A
-
-main_frame_menuitem_mnemonic_add_file = A
-
-main_frame_menuitem_mnemonic_antialias = A
-
-main_frame_menuitem_mnemonic_arrange = G
-
-main_frame_menuitem_mnemonic_concurrent_collection_begin_end = N
-
-main_frame_menuitem_mnemonic_exit = X
-
-main_frame_menuitem_mnemonic_export = E
-
-main_frame_menuitem_mnemonic_full_gc_lines = F
-
-main_frame_menuitem_mnemonic_gc_times_line = L
-
-main_frame_menuitem_mnemonic_gc_times_rectangles = R
-
-main_frame_menuitem_mnemonic_inc_gc_lines = I
-
-main_frame_menuitem_mnemonic_initial_mark_level = M
-
-main_frame_menuitem_mnemonic_license = L
-
-main_frame_menuitem_mnemonic_open_file = O
-
-main_frame_menuitem_mnemonic_open_url = U
-
-main_frame_menuitem_mnemonic_readme = R
-
-main_frame_menuitem_mnemonic_recent_files = F
-
-main_frame_menuitem_mnemonic_refresh = R
-
-main_frame_menuitem_mnemonic_show_data_panel = D
-
-main_frame_menuitem_mnemonic_show_datastamps = D
-
-main_frame_menuitem_mnemonic_tenured_memory = E
-
-main_frame_menuitem_mnemonic_total_memory = T
-
-main_frame_menuitem_mnemonic_used_memory = U
-
-main_frame_menuitem_mnemonic_used_tenured_memory = U
-
-main_frame_menuitem_mnemonic_used_young_memory = U
-
-main_frame_menuitem_mnemonic_watch = W
-
-main_frame_menuitem_mnemonic_young_memory = Y
-
-main_frame_menuitem_open_file = Open File
-
-main_frame_menuitem_open_url = Open URL
-
-main_frame_menuitem_readme = Readme
-
-main_frame_menuitem_recent_files = Recent Files
-
-main_frame_menuitem_refresh = Refresh
-
-main_frame_menuitem_show_data_panel = Data Panel
-
-main_frame_menuitem_show_datestamps = show datestamps
-
-main_frame_menuitem_tenured_memory = Tenured Generation
-
-main_frame_menuitem_total_memory = Total Heap
-
-main_frame_menuitem_used_memory = Used Heap
-
-main_frame_menuitem_used_tenured_memory = Used Tenured Heap
-
-main_frame_menuitem_used_young_memory = Used young Heap
-
-main_frame_menuitem_watch = Watch
-
-main_frame_menuitem_young_memory = Young Generation
-
-timeoffset_prompt = Log start time:
-
-urlopen_dialog_add_checkbox = Add URL to current window.
-
-urlopen_dialog_hint_add_checkbox = When checked, the new document will be added to
the current window, instead of opened in a new window.
-
-urlopen_dialog_title = Open GC URL
+#Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
+# $Id: $
+# please keep these sorted and up to date
+
+about_dialog_image = aboutgcviewer.png
+
+about_dialog_title = About GCViewer
+
+action_zoom = Zoom
+
+action_zoom_hint = Zoom
+
+button_cancel = Cancel
+
+button_ok = OK
+
+data_panel_acc_fullgcpauses = Acc full GC
+
+data_panel_acc_gcpauses = Acc GC
+
+data_panel_acc_pauses = Acc pauses
+
+data_panel_avg_fullgcpause = Avg full GC
+
+data_panel_avg_gcpause = Avg GC
+
+data_panel_avg_pause = Avg Pause
+
+data_panel_avg_pause_interval = Avg pause interval
+
+data_panel_avgfreedmemorybyfullgc = Avg freed full GC
+
+data_panel_avgfreedmemorybygc = Avg freed GC
+
+data_panel_avgrelativepostfullgcincrease = Avg rel inc after FGC
+
+data_panel_avgrelativepostgcincrease = Avg rel inc after GC
+
+data_panel_count_full_gc_pauses = Number of full gc pauses
+
+data_panel_count_gc_pauses = Number of gc pauses
+
+data_panel_count_pauses = Number of pauses
+
+data_panel_details_avg = avg (s)
+
+data_panel_details_count = n
+
+data_panel_details_max = max (s)
+
+data_panel_details_min = min (s)
+
+data_panel_details_name = name
+
+data_panel_details_stddev = stddev
+
+data_panel_details_sum = sum (s)
+
+data_panel_details_sum_percent = sum (%)
+
+data_panel_details_total = total
+
+data_panel_footprint = Footprint
+
+data_panel_footprintafterfullgc = Avg after full GC
+
+data_panel_footprintaftergc = Avg after GC
+
+data_panel_freedmemory = Freed Memory
+
+data_panel_freedmemorybyfullgc = Freed by full GC
+
+data_panel_freedmemorybygc = Freed by GC
+
+data_panel_freedmemorypermin = Freed Mem/Min
+
+data_panel_group_concurrent_gc_events = Concurrent GCs
+
+data_panel_group_full_gc_pauses = Full gc pauses
+
+data_panel_group_gc_pauses = Gc pauses
+
+data_panel_group_total_pause = Total pause
+
+data_panel_memory_heap_usage = Total heap (usage / alloc. max)
+
+data_panel_memory_initiatingoccupancyfraction = InitiatingOccFraction (avg / max)
+
+data_panel_memory_perm_heap_usage = Perm heap (usage / alloc. max)
+
+data_panel_memory_promotion_avg = Avg promotion
+
+data_panel_memory_promotion_total = Total promotion
+
+data_panel_memory_tenured_heap_usage = Tenured heap (usage / alloc. max)
+
+data_panel_memory_young_heap_usage = Young heap (usage / alloc. max)
+
+data_panel_min_max_full_gc_pause = Min / max full gc pause
+
+data_panel_min_max_gc_pause = Min / max gc pause
+
+data_panel_min_max_pause = Min / Max Pause
+
+data_panel_min_max_pause_interval = Min / max pause interval
+
+data_panel_performance_fullgc = Full GC Performance
+
+data_panel_performance_gc = GC Performance
+
+data_panel_slopeafterfullgc = Slope full GC
+
+data_panel_slopeaftergc = Slope GC
+
+data_panel_tab_chart = Chart
+
+data_panel_tab_details = Event details
+
+data_panel_tab_memory = Memory
+
+data_panel_tab_pause = Pause
+
+data_panel_tab_summary = Summary
+
+data_panel_throughput = Throughput
+
+data_panel_total_time = Total Time
+
+datareader_parseerror_dialog_message = GCViewer encountered {0} problems while parsing "{1}":
+
+datareader_parseerror_dialog_title = Problems parsing {0}
+
+datareaderfactory_instantiation_failed = Failed to recognize file format.
+
+datawriterfactory_instantiation_failed = File format is not supported:
+
+fileexport_dialog_confirm_overwrite = File exists. Overwrite?
+
+fileexport_dialog_csv = Comma separated values (*.csv)
+
+fileexport_dialog_error_occured = An error occured.
+
+fileexport_dialog_simplelog = Simple GC Log (GCHisto compatible, *.simple.log)
+
+fileexport_dialog_title = Export GC log file
+
+fileexport_dialog_txt = Plain data (*.txt)
+
+fileexport_dialog_write_file_failed = Failed to write file.
+
+fileopen_dialog_add_checkbox = Add file
to current
window.
+
+fileopen_dialog_hint_add_checkbox = When checked, the new document will be added to
the current window, instead of opened in a new window.
+
+fileopen_dialog_read_file_failed = Failed to read file.
+
+fileopen_dialog_title = Choose GC log file
+
+main_frame_menu_file = File
+
+main_frame_menu_help = Help
+
+main_frame_menu_mnemonic_file = F
+
+main_frame_menu_mnemonic_help = H
+
+main_frame_menu_mnemonic_view = V
+
+main_frame_menu_mnemonic_window = W
+
+main_frame_menu_view = View
+
+main_frame_menu_window = Window
+
+main_frame_menuitem_about = About GCViewer
+
+main_frame_menuitem_add_file = Add View
+
+main_frame_menuitem_antialias = Antialias
+
+main_frame_menuitem_arrange = Arrange
+
+main_frame_menuitem_concurrent_collection_begin_end = Concurrent collections
+
+main_frame_menuitem_enter_fullscreen = Enter Full Screen
+
+main_frame_menuitem_exit = Exit
+
+main_frame_menuitem_export = Export
+
+main_frame_menuitem_full_gc_lines = Full GC Lines
+
+main_frame_menuitem_gc_times_line = GC Times Line
+
+main_frame_menuitem_gc_times_rectangles = GC Times Rectangles
+
+main_frame_menuitem_hint_about = Shows information about GCViewer
+
+main_frame_menuitem_hint_add_file = Adds a gc view to the current window
+
+main_frame_menuitem_hint_antialias = Use antialiasing when rendering lines (potentially slows down rendering significantly)
+
+main_frame_menuitem_hint_arrange = Arranges all windows
+
+main_frame_menuitem_hint_concurrent_collection_begin_end = Shows lines for every begin (cyan) and end (pink) of a concurrent collection cycle.
+
+main_frame_menuitem_hint_enter_fullscreen = Switch to full screen mode
+
+main_frame_menuitem_hint_exit = Exits GCViewer
+
+main_frame_menuitem_hint_export = Exports the current file
+
+main_frame_menuitem_hint_full_gc_lines = Shows lines for every full garbage collection
+
+main_frame_menuitem_hint_gc_times_line = Shows a line that indicates the time garbage collection takes
+
+main_frame_menuitem_hint_gc_times_rectangles = Draws filled rectangles that indicate how long a garbage collection took
+
+main_frame_menuitem_hint_inc_gc_lines = Shows lines for every incremental garbage collection
+
+main_frame_menuitem_hint_initial_mark_level = Shows level of memory at initial-mark (only available for algorithms with concurrent collections).
+
+main_frame_menuitem_hint_leave_fullscreen = Exit full screen mode
+
+main_frame_menuitem_hint_license = license information
+
+main_frame_menuitem_hint_open_file = Opens a file
+
+main_frame_menuitem_hint_open_url = Opens a URL
+
+main_frame_menuitem_hint_readme = read various information about GCViewer
+
+main_frame_menuitem_hint_recent_files = Opens a recent View
+
+main_frame_menuitem_hint_refresh = Reloads the current file
+
+main_frame_menuitem_hint_show_data_panel = Shows the data panel with detailed information about the current document
+
+main_frame_menuitem_hint_show_datestamps = Shows the data panel with detailed information about the current document
+
+main_frame_menuitem_hint_system_full_gc_lines = Shows lines for every full system garbage collection
+
+main_frame_menuitem_hint_tenured_memory = Part of the heap that constitutes the tenured generation
+
+main_frame_menuitem_hint_total_memory = Total size of allocated memory
+
+main_frame_menuitem_hint_used_memory = Part of the heap that is actually used
+
+main_frame_menuitem_hint_used_tenured_memory = Part of the tenured heap that is actually used
+
+main_frame_menuitem_hint_used_young_memory = Part of the young heap that is actually used
+
+main_frame_menuitem_hint_watch = Watches and reloads the current file, if it changes
+
+main_frame_menuitem_hint_young_memory = Part of the heap that constitutes the young generation
+
+main_frame_menuitem_inc_gc_lines = Inc GC Lines
+
+main_frame_menuitem_initial_mark_level = Initial mark level
+
+main_frame_menuitem_leave_fullscreen = Exit Full Screen
+
+main_frame_menuitem_license = License
+
+main_frame_menuitem_mnemonic_about = A
+
+main_frame_menuitem_mnemonic_add_file = A
+
+main_frame_menuitem_mnemonic_antialias = A
+
+main_frame_menuitem_mnemonic_arrange = G
+
+main_frame_menuitem_mnemonic_concurrent_collection_begin_end = N
+
+main_frame_menuitem_mnemonic_exit = X
+
+main_frame_menuitem_mnemonic_export = E
+
+main_frame_menuitem_mnemonic_full_gc_lines = F
+
+main_frame_menuitem_mnemonic_gc_times_line = L
+
+main_frame_menuitem_mnemonic_gc_times_rectangles = R
+
+main_frame_menuitem_mnemonic_inc_gc_lines = I
+
+main_frame_menuitem_mnemonic_initial_mark_level = M
+
+main_frame_menuitem_mnemonic_license = L
+
+main_frame_menuitem_mnemonic_open_file = O
+
+main_frame_menuitem_mnemonic_open_url = U
+
+main_frame_menuitem_mnemonic_readme = R
+
+main_frame_menuitem_mnemonic_recent_files = F
+
+main_frame_menuitem_mnemonic_refresh = R
+
+main_frame_menuitem_mnemonic_show_data_panel = D
+
+main_frame_menuitem_mnemonic_show_datastamps = D
+
+main_frame_menuitem_mnemonic_system_full_gc_lines = F
+
+main_frame_menuitem_mnemonic_tenured_memory = E
+
+main_frame_menuitem_mnemonic_total_memory = T
+
+main_frame_menuitem_mnemonic_used_memory = U
+
+main_frame_menuitem_mnemonic_used_tenured_memory = U
+
+main_frame_menuitem_mnemonic_used_young_memory = U
+
+main_frame_menuitem_mnemonic_watch = W
+
+main_frame_menuitem_mnemonic_young_memory = Y
+
+main_frame_menuitem_open_file = Open File
+
+main_frame_menuitem_open_url = Open URL
+
+main_frame_menuitem_readme = Readme
+
+main_frame_menuitem_recent_files = Recent Files
+
+main_frame_menuitem_refresh = Refresh
+
+main_frame_menuitem_show_data_panel = Data Panel
+
+main_frame_menuitem_show_datestamps = show datestamps
+
+main_frame_menuitem_system_full_gc_lines = Full System GC Lines
+
+main_frame_menuitem_tenured_memory = Tenured Generation
+
+main_frame_menuitem_total_memory = Total Heap
+
+main_frame_menuitem_used_memory = Used Heap
+
+main_frame_menuitem_used_tenured_memory = Used Tenured Heap
+
+main_frame_menuitem_used_young_memory = Used young Heap
+
+main_frame_menuitem_watch = Watch
+
+main_frame_menuitem_young_memory = Young Generation
+
+timeoffset_prompt = Log start time:
+
+urlopen_dialog_add_checkbox = Add URL to current window.
+
+urlopen_dialog_hint_add_checkbox = When checked, the new document will be added to
the current window, instead of opened in a new window.
+
+urlopen_dialog_title = Open GC URL
diff --git a/src/main/resources/com/tagtraum/perf/gcviewer/localStrings_de.properties b/src/main/resources/com/tagtraum/perf/gcviewer/localStrings_de.properties
index a68fcf89..2daad236 100644
--- a/src/main/resources/com/tagtraum/perf/gcviewer/localStrings_de.properties
+++ b/src/main/resources/com/tagtraum/perf/gcviewer/localStrings_de.properties
@@ -1,351 +1,357 @@
-#Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
-# $Id: $
-# please keep these sorted and up to date
-
-about_dialog_image = aboutgcviewer.png
-
-about_dialog_title = \u00DCber GCViewer
-
-action_zoom = Zoom
-
-action_zoom_hint = Dient zum Vergr\u00F6ssern und Verkleinern
-
-button_cancel = Abbrechen
-
-button_ok = OK
-
-data_panel_acc_fullgcpauses = Summe vollst. GC
-
-data_panel_acc_gcpauses = Summe GC
-
-data_panel_acc_pauses = Gesamtpausenzeit
-
-data_panel_avg_fullgcpause = Durchschn. vollst. GC
-
-data_panel_avg_gcpause = Durchschn. GC
-
-data_panel_avg_pause = Durchschn. Pause
-
-data_panel_avg_pause_interval = Durchschn. Pausen Intervall
-
-data_panel_avgfreedmemorybyfullgc = Durchschn. bereinigt vollst. GC
-
-data_panel_avgfreedmemorybygc = Durchschn. bereinigt von GC
-
-data_panel_avgrelativepostfullgcincrease = Durchschn. rel. Zuwachs nach VGC
-
-data_panel_avgrelativepostgcincrease = Durchschn. rel. Zuwachs nach GC
-
-data_panel_count_full_gc_pauses = Anzahl vollst. GC Pausen
-
-data_panel_count_gc_pauses = Anzahl GC Pausen
-
-data_panel_count_pauses = Anzahl Pausen
-
-data_panel_details_avg = avg (s)
-
-data_panel_details_count = n
-
-data_panel_details_max = max (s)
-
-data_panel_details_min = min (s)
-
-data_panel_details_name = name
-
-data_panel_details_stddev = stdabw
-
-data_panel_details_sum = sum (s)
-
-data_panel_details_sum_percent = sum (%)
-
-data_panel_details_total = Total
-
-data_panel_footprint = Gesamtspeicherverbrauch
-
-data_panel_footprintafterfullgc = Durchschn. nach vollst. GC
-
-data_panel_footprintaftergc = Durchschn. nach GC
-
-data_panel_freedmemory = Insges. bereinigter Speicher
-
-data_panel_freedmemorybyfullgc = Bereinigt von vollst. GC
-
-data_panel_freedmemorybygc = Bereinigt von GC
-
-data_panel_freedmemorypermin = Bereinigter Speicher/Min
-
-data_panel_group_concurrent_gc_events = nebenl\u00E4ufige GCs
-
-data_panel_group_full_gc_pauses = Vollst. GC Pausen
-
-data_panel_group_gc_pauses = GC Pausen
-
-data_panel_group_total_pause = Alle Pausen
-
-data_panel_memory_heap_usage = Gesamtspeicher (Verbr. / Res. max)
-
-data_panel_memory_initiatingoccupancyfraction = InitiatingOccFraction (avg / max)
-
-data_panel_memory_perm_heap_usage = Perm Gen. (Verbr. / Res. max)
-
-data_panel_memory_promotion_avg = Durchschn. Promotion
-
-data_panel_memory_promotion_total = Promotion (total)
-
-data_panel_memory_tenured_heap_usage = Alte Gen. (Verbr. / Res. max)
-
-data_panel_memory_young_heap_usage = Junge Gen. (Verbr. / Res. max)
-
-data_panel_min_max_full_gc_pause = Min / max vollst. GC Pause
-
-data_panel_min_max_gc_pause = Min / max GC Pause
-
-data_panel_min_max_pause = Min / max Pause
-
-data_panel_min_max_pause_interval = Min / max Pausen-Intervall
-
-data_panel_performance_fullgc = Vollst. GC Performance
-
-data_panel_performance_gc = GC Performance
-
-data_panel_slopeafterfullgc = Steigung nach vollst. GC
-
-data_panel_slopeaftergc = Steigung nach GC
-
-data_panel_tab_chart = Diagramm
-
-data_panel_tab_details = Ereignis Details
-
-data_panel_tab_memory = Speicher
-
-data_panel_tab_pause = Pause
-
-data_panel_tab_summary = Zusammenfassung
-
-data_panel_throughput = Durchsatz
-
-data_panel_total_time = Gesamtlaufzeit
-
-datareader_parseerror_dialog_message = Beim Parsen von "{1}" traten {0} Probleme auf:
-
-datareader_parseerror_dialog_title = Probleme beim Parsen von {0}
-
-datareaderfactory_instantiation_failed = Konnte das Datei-Format nicht erkennen.
-
-datawriterfactory_instantiation_failed = Datei-Format wird nicht unterst\u00FCtzt:
-
-fileexport_dialog_confirm_overwrite = Eine Datei mit dem gleichen Namen existiert bereits. Soll die Datei \u00FCberschrieben werden?
-
-fileexport_dialog_csv = Komma getrennte Werte (*.csv)
-
-fileexport_dialog_error_occured = Fehler.
-
-fileexport_dialog_simplelog = Simple GC Log (GCHisto kompatibel, *.simple.log)
-
-fileexport_dialog_title = Exportiere GC-Protokoll-Datei
-
-fileexport_dialog_txt = Einfache Textdatei (*.txt)
-
-fileexport_dialog_write_file_failed = Fehler beim Schreiben der Datei.
-
-fileopen_dialog_add_checkbox = Datei der
aktuellen
Ansicht
hinzuf\u00FCgen.
-
-fileopen_dialog_hint_add_checkbox = F\u00FCgt die Datei dem aktuell ausgew\u00E4hlten Fenster als neue
GC-Ansicht hinzu, anstatt ein neues Fenster zu \u00F6ffnen.
-
-fileopen_dialog_read_file_failed = Fehler beim Lesen der Datei.
-
-fileopen_dialog_title = W\u00E4hle GC-Protokoll-Datei
-
-main_frame_menu_file = Datei
-
-main_frame_menu_help = Hilfe
-
-main_frame_menu_mnemonic_file = D
-
-main_frame_menu_mnemonic_help = H
-
-main_frame_menu_mnemonic_view = A
-
-main_frame_menu_mnemonic_window = F
-
-main_frame_menu_view = Ansicht
-
-main_frame_menu_window = Fenster
-
-main_frame_menuitem_about = \u00DCber GCViewer
-
-main_frame_menuitem_add_file = Ansicht hinzuf\u00FCgen
-
-main_frame_menuitem_antialias = Antialias
-
-main_frame_menuitem_arrange = Anordnen
-
-main_frame_menuitem_concurrent_collection_begin_end = Nebenl\u00E4ufige GCs
-
-main_frame_menuitem_enter_fullscreen = de Enter Full Screen
-
-main_frame_menuitem_exit = Beenden
-
-main_frame_menuitem_export = Exportieren
-
-main_frame_menuitem_full_gc_lines = Vollst\u00E4ndige GC Linien
-
-main_frame_menuitem_gc_times_line = GC Dauer Linie
-
-main_frame_menuitem_gc_times_rectangles = GC Dauer Rechtecke
-
-main_frame_menuitem_hint_about = Zeigt Informationen \u00FCber GCViewer an
-
-main_frame_menuitem_hint_add_file = F\u00FCgt dem aktuellen Fenster ein GC-Ansicht hinzu
-
-main_frame_menuitem_hint_antialias = Benutze Antialiasing beim Zeichnen von Linien (potenziell sehr rechenaufwendig)
-
-main_frame_menuitem_hint_arrange = Ordnet die offenen Fenster so an, dass alle sichtbar sind
-
-main_frame_menuitem_hint_concurrent_collection_begin_end = Zeigt vertikale Linien, die jeweils den Beginn (blaugr\u00FCn) bzw. das Ende (pink) einer nebenl\u00E4ufigen Garbage Collection anzeigen.
-
-main_frame_menuitem_hint_enter_fullscreen = de Switch to full screen mode
-
-main_frame_menuitem_hint_exit = Beendet GCViewer
-
-main_frame_menuitem_hint_export = Speichert die aktuelle Datei in einem ausw\u00E4hlbaren Format
-
-main_frame_menuitem_hint_full_gc_lines = Zeigt vertikale Linien, die jeweile eine vollst\u00E4ndige Garbage Collection bedeuten
-
-main_frame_menuitem_hint_gc_times_line = Zeigt eine durchgezogene Linie, die die vergangene Zeit pro Garbage Collection anzeigt
-
-main_frame_menuitem_hint_gc_times_rectangles = Zeigt Rechtecke an, die jeweils die Dauer einer Garbage Collection anzeigen
-
-main_frame_menuitem_hint_inc_gc_lines = Zeigt vertikale Linien, die jeweils eine inkrementelle Garbage Collection bedeuten
-
-main_frame_menuitem_hint_initial_mark_level = Zeigt das Niveau des Speichers bei den initial-mark events (kann nur bei GC Algorithmen mit concurrent collections angezeigt werden).
-
-main_frame_menuitem_hint_leave_fullscreen = de Exit full screen mode
-
-main_frame_menuitem_hint_license = Lizenz Informationen
-
-main_frame_menuitem_hint_open_file = Liest eine Datei
-
-main_frame_menuitem_hint_open_url = \u00D6ffnet eine URL
-
-main_frame_menuitem_hint_readme = zeigt diverse wissenswerte Informationen \u00FCber GCViewer
-
-main_frame_menuitem_hint_recent_files = Zuletzt ge\u00F6ffnete Dateien
-
-main_frame_menuitem_hint_refresh = L\u00E4dt die aktuelle Datei erneut
-
-main_frame_menuitem_hint_show_data_panel = Zeigt eine Daten-Tafel mit detaillierten Informationen \u00FCber die aktuelle Datei
-
-main_frame_menuitem_hint_show_datestamps = Zeigt eine Daten-Tafel mit detaillierten Informationen \u00FCber die aktuelle Datei
-
-main_frame_menuitem_hint_tenured_memory = Teil des Heaps, der die alte (tenured) Generation ausmacht
-
-main_frame_menuitem_hint_total_memory = Gr\u00F6\u00DFe des allozierten Speichers
-
-main_frame_menuitem_hint_used_memory = Gr\u00F6\u00DFe des benutzten Speichers
-
-main_frame_menuitem_hint_used_tenured_memory = Gr\u00F6\u00DFe des benutzten Speichers (alte Generation)
-
-main_frame_menuitem_hint_used_young_memory = Gr\u00F6\u00DFe des benutzten Speichers (junge Generation)
-
-main_frame_menuitem_hint_watch = Beobachtet und aktualisiert die aktuelle Datei, falls sie sich \u00E4ndert
-
-main_frame_menuitem_hint_young_memory = Teil des Heaps, der die junge Generation ausmacht
-
-main_frame_menuitem_inc_gc_lines = Inkrementelle GC Linien
-
-main_frame_menuitem_initial_mark_level = Initial mark level
-
-main_frame_menuitem_leave_fullscreen = de Exit Full Screen
-
-main_frame_menuitem_license = Lizenz
-
-main_frame_menuitem_mnemonic_about = \u00DC
-
-main_frame_menuitem_mnemonic_add_file = A
-
-main_frame_menuitem_mnemonic_antialias = A
-
-main_frame_menuitem_mnemonic_arrange = O
-
-main_frame_menuitem_mnemonic_concurrent_collection_begin_end = N
-
-main_frame_menuitem_mnemonic_exit = X
-
-main_frame_menuitem_mnemonic_export = E
-
-main_frame_menuitem_mnemonic_full_gc_lines = V
-
-main_frame_menuitem_mnemonic_gc_times_line = L
-
-main_frame_menuitem_mnemonic_gc_times_rectangles = R
-
-main_frame_menuitem_mnemonic_inc_gc_lines = I
-
-main_frame_menuitem_mnemonic_initial_mark_level = M
-
-main_frame_menuitem_mnemonic_license = L
-
-main_frame_menuitem_mnemonic_open_file = \u00F6
-
-main_frame_menuitem_mnemonic_open_url = U
-
-main_frame_menuitem_mnemonic_readme = R
-
-main_frame_menuitem_mnemonic_recent_files = Z
-
-main_frame_menuitem_mnemonic_refresh = A
-
-main_frame_menuitem_mnemonic_show_data_panel = D
-
-main_frame_menuitem_mnemonic_show_datastamps = D
-
-main_frame_menuitem_mnemonic_tenured_memory = E
-
-main_frame_menuitem_mnemonic_total_memory = H
-
-main_frame_menuitem_mnemonic_used_memory = B
-
-main_frame_menuitem_mnemonic_used_tenured_memory = B
-
-main_frame_menuitem_mnemonic_used_young_memory = B
-
-main_frame_menuitem_mnemonic_watch = B
-
-main_frame_menuitem_mnemonic_young_memory = J
-
-main_frame_menuitem_open_file = \u00D6ffne Datei
-
-main_frame_menuitem_open_url = \u00D6ffne URL
-
-main_frame_menuitem_readme = Readme-Datei
-
-main_frame_menuitem_recent_files = Zuletzt ge\u00F6ffnet
-
-main_frame_menuitem_refresh = Aktualisieren
-
-main_frame_menuitem_show_data_panel = Daten-Tafel
-
-main_frame_menuitem_show_datestamps = Zeitstempel anzeigen
-
-main_frame_menuitem_tenured_memory = Alte Generation
-
-main_frame_menuitem_total_memory = Heapgr\u00F6\u00DFe
-
-main_frame_menuitem_used_memory = Belegter Heap
-
-main_frame_menuitem_used_tenured_memory = Belegter alter Heap
-
-main_frame_menuitem_used_young_memory = Belegter junger Heap
-
-main_frame_menuitem_watch = Beobachten
-
-main_frame_menuitem_young_memory = Junge Generation
-
-timeoffset_prompt = Startzeit des Logs:
-
-urlopen_dialog_add_checkbox = Datei der aktuellen Ansicht hinzuf\u00FCgen.
-
-urlopen_dialog_hint_add_checkbox = F\u00FCgt die Datei dem aktuell ausgew\u00E4hlten Fenster als neue
GC-Ansicht hinzu, anstatt ein neues Fenster zu \u00F6ffnen.
-
-urlopen_dialog_title = \u00D6ffne GC URL
+#Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
+# $Id: $
+# please keep these sorted and up to date
+
+about_dialog_image = aboutgcviewer.png
+
+about_dialog_title = \u00DCber GCViewer
+
+action_zoom = Zoom
+
+action_zoom_hint = Dient zum Vergr\u00F6ssern und Verkleinern
+
+button_cancel = Abbrechen
+
+button_ok = OK
+
+data_panel_acc_fullgcpauses = Summe vollst. GC
+
+data_panel_acc_gcpauses = Summe GC
+
+data_panel_acc_pauses = Gesamtpausenzeit
+
+data_panel_avg_fullgcpause = Durchschn. vollst. GC
+
+data_panel_avg_gcpause = Durchschn. GC
+
+data_panel_avg_pause = Durchschn. Pause
+
+data_panel_avg_pause_interval = Durchschn. Pausen Intervall
+
+data_panel_avgfreedmemorybyfullgc = Durchschn. bereinigt vollst. GC
+
+data_panel_avgfreedmemorybygc = Durchschn. bereinigt von GC
+
+data_panel_avgrelativepostfullgcincrease = Durchschn. rel. Zuwachs nach VGC
+
+data_panel_avgrelativepostgcincrease = Durchschn. rel. Zuwachs nach GC
+
+data_panel_count_full_gc_pauses = Anzahl vollst. GC Pausen
+
+data_panel_count_gc_pauses = Anzahl GC Pausen
+
+data_panel_count_pauses = Anzahl Pausen
+
+data_panel_details_avg = avg (s)
+
+data_panel_details_count = n
+
+data_panel_details_max = max (s)
+
+data_panel_details_min = min (s)
+
+data_panel_details_name = name
+
+data_panel_details_stddev = stdabw
+
+data_panel_details_sum = sum (s)
+
+data_panel_details_sum_percent = sum (%)
+
+data_panel_details_total = Total
+
+data_panel_footprint = Gesamtspeicherverbrauch
+
+data_panel_footprintafterfullgc = Durchschn. nach vollst. GC
+
+data_panel_footprintaftergc = Durchschn. nach GC
+
+data_panel_freedmemory = Insges. bereinigter Speicher
+
+data_panel_freedmemorybyfullgc = Bereinigt von vollst. GC
+
+data_panel_freedmemorybygc = Bereinigt von GC
+
+data_panel_freedmemorypermin = Bereinigter Speicher/Min
+
+data_panel_group_concurrent_gc_events = nebenl\u00E4ufige GCs
+
+data_panel_group_full_gc_pauses = Vollst. GC Pausen
+
+data_panel_group_gc_pauses = GC Pausen
+
+data_panel_group_total_pause = Alle Pausen
+
+data_panel_memory_heap_usage = Gesamtspeicher (Verbr. / Res. max)
+
+data_panel_memory_initiatingoccupancyfraction = InitiatingOccFraction (avg / max)
+
+data_panel_memory_perm_heap_usage = Perm Gen. (Verbr. / Res. max)
+
+data_panel_memory_promotion_avg = Durchschn. Promotion
+
+data_panel_memory_promotion_total = Promotion (total)
+
+data_panel_memory_tenured_heap_usage = Alte Gen. (Verbr. / Res. max)
+
+data_panel_memory_young_heap_usage = Junge Gen. (Verbr. / Res. max)
+
+data_panel_min_max_full_gc_pause = Min / max vollst. GC Pause
+
+data_panel_min_max_gc_pause = Min / max GC Pause
+
+data_panel_min_max_pause = Min / max Pause
+
+data_panel_min_max_pause_interval = Min / max Pausen-Intervall
+
+data_panel_performance_fullgc = Vollst. GC Performance
+
+data_panel_performance_gc = GC Performance
+
+data_panel_slopeafterfullgc = Steigung nach vollst. GC
+
+data_panel_slopeaftergc = Steigung nach GC
+
+data_panel_tab_chart = Diagramm
+
+data_panel_tab_details = Ereignis Details
+
+data_panel_tab_memory = Speicher
+
+data_panel_tab_pause = Pause
+
+data_panel_tab_summary = Zusammenfassung
+
+data_panel_throughput = Durchsatz
+
+data_panel_total_time = Gesamtlaufzeit
+
+datareader_parseerror_dialog_message = Beim Parsen von "{1}" traten {0} Probleme auf:
+
+datareader_parseerror_dialog_title = Probleme beim Parsen von {0}
+
+datareaderfactory_instantiation_failed = Konnte das Datei-Format nicht erkennen.
+
+datawriterfactory_instantiation_failed = Datei-Format wird nicht unterst\u00FCtzt:
+
+fileexport_dialog_confirm_overwrite = Eine Datei mit dem gleichen Namen existiert bereits. Soll die Datei \u00FCberschrieben werden?
+
+fileexport_dialog_csv = Komma getrennte Werte (*.csv)
+
+fileexport_dialog_error_occured = Fehler.
+
+fileexport_dialog_simplelog = Simple GC Log (GCHisto kompatibel, *.simple.log)
+
+fileexport_dialog_title = Exportiere GC-Protokoll-Datei
+
+fileexport_dialog_txt = Einfache Textdatei (*.txt)
+
+fileexport_dialog_write_file_failed = Fehler beim Schreiben der Datei.
+
+fileopen_dialog_add_checkbox = Datei der
aktuellen
Ansicht
hinzuf\u00FCgen.
+
+fileopen_dialog_hint_add_checkbox = F\u00FCgt die Datei dem aktuell ausgew\u00E4hlten Fenster als neue
GC-Ansicht hinzu, anstatt ein neues Fenster zu \u00F6ffnen.
+
+fileopen_dialog_read_file_failed = Fehler beim Lesen der Datei.
+
+fileopen_dialog_title = W\u00E4hle GC-Protokoll-Datei
+
+main_frame_menu_file = Datei
+
+main_frame_menu_help = Hilfe
+
+main_frame_menu_mnemonic_file = D
+
+main_frame_menu_mnemonic_help = H
+
+main_frame_menu_mnemonic_view = A
+
+main_frame_menu_mnemonic_window = F
+
+main_frame_menu_view = Ansicht
+
+main_frame_menu_window = Fenster
+
+main_frame_menuitem_about = \u00DCber GCViewer
+
+main_frame_menuitem_add_file = Ansicht hinzuf\u00FCgen
+
+main_frame_menuitem_antialias = Antialias
+
+main_frame_menuitem_arrange = Anordnen
+
+main_frame_menuitem_concurrent_collection_begin_end = Nebenl\u00E4ufige GCs
+
+main_frame_menuitem_enter_fullscreen = de Enter Full Screen
+
+main_frame_menuitem_exit = Beenden
+
+main_frame_menuitem_export = Exportieren
+
+main_frame_menuitem_full_gc_lines = Vollst\u00E4ndige GC Linien
+
+main_frame_menuitem_gc_times_line = GC Dauer Linie
+
+main_frame_menuitem_gc_times_rectangles = GC Dauer Rechtecke
+
+main_frame_menuitem_hint_about = Zeigt Informationen \u00FCber GCViewer an
+
+main_frame_menuitem_hint_add_file = F\u00FCgt dem aktuellen Fenster ein GC-Ansicht hinzu
+
+main_frame_menuitem_hint_antialias = Benutze Antialiasing beim Zeichnen von Linien (potenziell sehr rechenaufwendig)
+
+main_frame_menuitem_hint_arrange = Ordnet die offenen Fenster so an, dass alle sichtbar sind
+
+main_frame_menuitem_hint_concurrent_collection_begin_end = Zeigt vertikale Linien, die jeweils den Beginn (blaugr\u00FCn) bzw. das Ende (pink) einer nebenl\u00E4ufigen Garbage Collection anzeigen.
+
+main_frame_menuitem_hint_enter_fullscreen = de Switch to full screen mode
+
+main_frame_menuitem_hint_exit = Beendet GCViewer
+
+main_frame_menuitem_hint_export = Speichert die aktuelle Datei in einem ausw\u00E4hlbaren Format
+
+main_frame_menuitem_hint_full_gc_lines = Zeigt vertikale Linien, die jeweile eine vollst\u00E4ndige Garbage Collection bedeuten
+
+main_frame_menuitem_hint_gc_times_line = Zeigt eine durchgezogene Linie, die die vergangene Zeit pro Garbage Collection anzeigt
+
+main_frame_menuitem_hint_gc_times_rectangles = Zeigt Rechtecke an, die jeweils die Dauer einer Garbage Collection anzeigen
+
+main_frame_menuitem_hint_inc_gc_lines = Zeigt vertikale Linien, die jeweils eine inkrementelle Garbage Collection bedeuten
+
+main_frame_menuitem_hint_initial_mark_level = Zeigt das Niveau des Speichers bei den initial-mark events (kann nur bei GC Algorithmen mit concurrent collections angezeigt werden).
+
+main_frame_menuitem_hint_leave_fullscreen = de Exit full screen mode
+
+main_frame_menuitem_hint_license = Lizenz Informationen
+
+main_frame_menuitem_hint_open_file = Liest eine Datei
+
+main_frame_menuitem_hint_open_url = \u00D6ffnet eine URL
+
+main_frame_menuitem_hint_readme = zeigt diverse wissenswerte Informationen \u00FCber GCViewer
+
+main_frame_menuitem_hint_recent_files = Zuletzt ge\u00F6ffnete Dateien
+
+main_frame_menuitem_hint_refresh = L\u00E4dt die aktuelle Datei erneut
+
+main_frame_menuitem_hint_show_data_panel = Zeigt eine Daten-Tafel mit detaillierten Informationen \u00FCber die aktuelle Datei
+
+main_frame_menuitem_hint_show_datestamps = Zeigt eine Daten-Tafel mit detaillierten Informationen \u00FCber die aktuelle Datei
+
+main_frame_menuitem_hint_system_full_gc_lines = Zeigt vertikale Linien, die jeweile eine vollst\u00E4ndige System Garbage Collection bedeuten
+
+main_frame_menuitem_hint_tenured_memory = Teil des Heaps, der die alte (tenured) Generation ausmacht
+
+main_frame_menuitem_hint_total_memory = Gr\u00F6\u00DFe des allozierten Speichers
+
+main_frame_menuitem_hint_used_memory = Gr\u00F6\u00DFe des benutzten Speichers
+
+main_frame_menuitem_hint_used_tenured_memory = Gr\u00F6\u00DFe des benutzten Speichers (alte Generation)
+
+main_frame_menuitem_hint_used_young_memory = Gr\u00F6\u00DFe des benutzten Speichers (junge Generation)
+
+main_frame_menuitem_hint_watch = Beobachtet und aktualisiert die aktuelle Datei, falls sie sich \u00E4ndert
+
+main_frame_menuitem_hint_young_memory = Teil des Heaps, der die junge Generation ausmacht
+
+main_frame_menuitem_inc_gc_lines = Inkrementelle GC Linien
+
+main_frame_menuitem_initial_mark_level = Initial mark level
+
+main_frame_menuitem_leave_fullscreen = de Exit Full Screen
+
+main_frame_menuitem_license = Lizenz
+
+main_frame_menuitem_mnemonic_about = \u00DC
+
+main_frame_menuitem_mnemonic_add_file = A
+
+main_frame_menuitem_mnemonic_antialias = A
+
+main_frame_menuitem_mnemonic_arrange = O
+
+main_frame_menuitem_mnemonic_concurrent_collection_begin_end = N
+
+main_frame_menuitem_mnemonic_exit = X
+
+main_frame_menuitem_mnemonic_export = E
+
+main_frame_menuitem_mnemonic_full_gc_lines = V
+
+main_frame_menuitem_mnemonic_gc_times_line = L
+
+main_frame_menuitem_mnemonic_gc_times_rectangles = R
+
+main_frame_menuitem_mnemonic_inc_gc_lines = I
+
+main_frame_menuitem_mnemonic_initial_mark_level = M
+
+main_frame_menuitem_mnemonic_license = L
+
+main_frame_menuitem_mnemonic_open_file = \u00F6
+
+main_frame_menuitem_mnemonic_open_url = U
+
+main_frame_menuitem_mnemonic_readme = R
+
+main_frame_menuitem_mnemonic_recent_files = Z
+
+main_frame_menuitem_mnemonic_refresh = A
+
+main_frame_menuitem_mnemonic_show_data_panel = D
+
+main_frame_menuitem_mnemonic_show_datastamps = D
+
+main_frame_menuitem_mnemonic_system_full_gc_lines = V
+
+main_frame_menuitem_mnemonic_tenured_memory = E
+
+main_frame_menuitem_mnemonic_total_memory = H
+
+main_frame_menuitem_mnemonic_used_memory = B
+
+main_frame_menuitem_mnemonic_used_tenured_memory = B
+
+main_frame_menuitem_mnemonic_used_young_memory = B
+
+main_frame_menuitem_mnemonic_watch = B
+
+main_frame_menuitem_mnemonic_young_memory = J
+
+main_frame_menuitem_open_file = \u00D6ffne Datei
+
+main_frame_menuitem_open_url = \u00D6ffne URL
+
+main_frame_menuitem_readme = Readme-Datei
+
+main_frame_menuitem_recent_files = Zuletzt ge\u00F6ffnet
+
+main_frame_menuitem_refresh = Aktualisieren
+
+main_frame_menuitem_show_data_panel = Daten-Tafel
+
+main_frame_menuitem_show_datestamps = Zeitstempel anzeigen
+
+main_frame_menuitem_system_full_gc_lines = Vollst\u00E4ndige System GC Linien
+
+main_frame_menuitem_tenured_memory = Alte Generation
+
+main_frame_menuitem_total_memory = Heapgr\u00F6\u00DFe
+
+main_frame_menuitem_used_memory = Belegter Heap
+
+main_frame_menuitem_used_tenured_memory = Belegter alter Heap
+
+main_frame_menuitem_used_young_memory = Belegter junger Heap
+
+main_frame_menuitem_watch = Beobachten
+
+main_frame_menuitem_young_memory = Junge Generation
+
+timeoffset_prompt = Startzeit des Logs:
+
+urlopen_dialog_add_checkbox = Datei der aktuellen Ansicht hinzuf\u00FCgen.
+
+urlopen_dialog_hint_add_checkbox = F\u00FCgt die Datei dem aktuell ausgew\u00E4hlten Fenster als neue
GC-Ansicht hinzu, anstatt ein neues Fenster zu \u00F6ffnen.
+
+urlopen_dialog_title = \u00D6ffne GC URL
diff --git a/src/main/resources/com/tagtraum/perf/gcviewer/localStrings_es_ES.properties b/src/main/resources/com/tagtraum/perf/gcviewer/localStrings_es_ES.properties
new file mode 100644
index 00000000..f5b4fe17
--- /dev/null
+++ b/src/main/resources/com/tagtraum/perf/gcviewer/localStrings_es_ES.properties
@@ -0,0 +1,355 @@
+#Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
+
+about_dialog_image = aboutgcviewer.png
+
+about_dialog_title = Sobre GCViewer
+
+action_zoom = Zoom
+
+action_zoom_hint = Zoom
+
+button_cancel = Cancelar
+
+button_ok = OK
+
+data_panel_acc_fullgcpauses = Pausas full GC totales
+
+data_panel_acc_gcpauses = Pausas GC totales
+
+data_panel_acc_pauses = Pausas totales
+
+data_panel_avg_fullgcpause = Media de pausas por full GC
+
+data_panel_avg_gcpause = Media de pausas por GC
+
+data_panel_avg_pause = Media de pausas
+
+data_panel_avg_pause_interval = Media de intervalo de pausa
+
+data_panel_avgfreedmemorybyfullgc = Media de memoria liberada por full GC
+
+data_panel_avgfreedmemorybygc = Media de memoria liberada por GC
+
+data_panel_avgrelativepostfullgcincrease = Media del incremento relativo post full GC
+
+data_panel_avgrelativepostgcincrease = Media del incremento relativo post GC
+
+data_panel_count_full_gc_pauses = Numero de pausas por full GC
+
+data_panel_count_gc_pauses = Numero de pausas por GC
+
+data_panel_count_pauses = Numero de pausas
+
+data_panel_details_avg = media (s)
+
+data_panel_details_count = n
+
+data_panel_details_max = max (s)
+
+data_panel_details_min = min (s)
+
+data_panel_details_name = nombre
+
+data_panel_details_stddev = \u03C3
+
+data_panel_details_sum = suma (s)
+
+data_panel_details_sum_percent = suma (%)
+
+data_panel_details_total = total
+
+data_panel_footprint = Superficie ocupada
+
+data_panel_footprintafterfullgc = Media post full GC
+
+data_panel_footprintaftergc = Media post GC
+
+data_panel_freedmemory = Memoria libre
+
+data_panel_freedmemorybyfullgc = Memoria liberada por full GC
+
+data_panel_freedmemorybygc = Memoria liberada por GC
+
+data_panel_freedmemorypermin = Memoria liberada/minuto
+
+data_panel_group_concurrent_gc_events = GCs Concurrentes
+
+data_panel_group_full_gc_pauses = Pausas por full GC
+
+data_panel_group_gc_pauses = Pausas por GC
+
+data_panel_group_total_pause = Pausas totales
+
+data_panel_memory_heap_usage = Heap total (utilizado / maximo disponible)
+
+data_panel_memory_initiatingoccupancyfraction = InitiatingOccFraction (media / maximo)
+
+data_panel_memory_perm_heap_usage = Perm heap (utilizado / maximo disponible)
+
+data_panel_memory_promotion_avg = Media de promocion
+
+data_panel_memory_promotion_total = Promocion total
+
+data_panel_memory_tenured_heap_usage = Tenured heap (utilizado / maximo disponible)
+
+data_panel_memory_young_heap_usage = Young heap (utilizado / maximo disponible)
+
+data_panel_min_max_full_gc_pause = Minimas / maximas pausas por full GC
+
+data_panel_min_max_gc_pause = Minimas / maximas pausas por GC
+
+data_panel_min_max_pause = Minimas / Maximas pausas
+
+data_panel_min_max_pause_interval = Minio / maximo intervalo de pausas
+
+data_panel_performance_fullgc = Rendimiento Full GC
+
+data_panel_performance_gc = Rendimiento GC
+
+data_panel_slopeafterfullgc = Pendiente post full GC
+
+data_panel_slopeaftergc = Pendiente post GC
+
+data_panel_tab_chart = Diagrama
+
+data_panel_tab_details = Detalles de los eventos
+
+data_panel_tab_memory = Memoria
+
+data_panel_tab_pause = Pausa
+
+data_panel_tab_summary = Sumario
+
+data_panel_throughput = Rendimiento
+
+data_panel_total_time = Tiempo total
+
+datareader_parseerror_dialog_message = GCViewer ha encontrado {0} problemas al parsear "{1}":
+
+datareader_parseerror_dialog_title = Problemas al parsear {0}
+
+datareaderfactory_instantiation_failed = Fallo al reconocer el formato del fichero
+
+datawriterfactory_instantiation_failed = El formato del fichero no est\u00E1 soportado:
+
+fileexport_dialog_confirm_overwrite = El fichero ya existe. Sobreescribir?
+
+fileexport_dialog_csv = Valores separados por comas (*.csv)
+
+fileexport_dialog_error_occured = Ha ocurrido un error.
+
+fileexport_dialog_simplelog = GC Log Simple (GCHisto compatible, *.simple.log)
+
+fileexport_dialog_title = Exportar log del GC a fichero
+
+fileexport_dialog_txt = Texto plano (*.txt)
+
+fileexport_dialog_write_file_failed = No se puede escribir en fichero.
+
+fileopen_dialog_add_checkbox = A\u00F1adir fichero
a la ventana
actual.
+
+fileopen_dialog_hint_add_checkbox = Cuando est\u00E1 marcada, el nuevo documento se agregar\u00E1 a
la ventana actual, en lugar de abrir en una nueva ventana.
+
+fileopen_dialog_read_file_failed = Error al leer el archivo.
+
+fileopen_dialog_title = Elija el fichero del log de GC
+
+main_frame_menu_file = Fichero
+
+main_frame_menu_help = Ayuda
+
+main_frame_menu_mnemonic_file = F
+
+main_frame_menu_mnemonic_help = A
+
+main_frame_menu_mnemonic_view = V
+
+main_frame_menu_mnemonic_window = V
+
+main_frame_menu_view = Ver
+
+main_frame_menu_window = Ventana
+
+main_frame_menuitem_about = Sobre GCViewer
+
+main_frame_menuitem_add_file = A\u00F1adir vista
+
+main_frame_menuitem_antialias = Antialias
+
+main_frame_menuitem_arrange = Organizar
+
+main_frame_menuitem_concurrent_collection_begin_end = colecciones concurrentes
+
+main_frame_menuitem_enter_fullscreen = Pantalla completa
+
+main_frame_menuitem_exit = Salir
+
+main_frame_menuitem_export = Exportar
+
+main_frame_menuitem_full_gc_lines = L\u00EDneas Full GC
+
+main_frame_menuitem_gc_times_line = L\u00EDneas temporales del GC
+
+main_frame_menuitem_gc_times_rectangles = Rect\u00E1ngulos temporales del GC
+
+main_frame_menuitem_hint_about = Muestra informaci\u00F3n sobre GCViewer
+
+main_frame_menuitem_hint_add_file = A\u00F1ade una vista del gc a la ventana actual
+
+main_frame_menuitem_hint_antialias = Utilitza el antialiasing cuando se trazan las l\u00EDneas (ralentiza significativamente las prestaciones)
+
+main_frame_menuitem_hint_arrange = Organiza todas las ventanas
+
+main_frame_menuitem_hint_concurrent_collection_begin_end = Muestra l\u00EDneas por cada inicio (cian) y final (rosa) de un ciclo de recolecci\u00F3n concurrente.
+
+main_frame_menuitem_hint_enter_fullscreen = Cambiar al modo de pantalla completa
+
+main_frame_menuitem_hint_exit = Salir del GCViewer
+
+main_frame_menuitem_hint_export = Exporta el archivo actual
+
+main_frame_menuitem_hint_full_gc_lines = Muestra l\u00EDneas por cada full GC
+
+main_frame_menuitem_hint_gc_times_line = Muestra una l\u00EDnea que indica el tiempo tomado por el GC
+
+main_frame_menuitem_hint_gc_times_rectangles = Dibuja rect\u00E1ngulos llenos que indican cu\u00E1nto tom\u00F3 el GC
+
+main_frame_menuitem_hint_inc_gc_lines = Muestra l\u00EDneas por cada GC incremental
+
+main_frame_menuitem_hint_initial_mark_level = Muestra el nivel de memoria al initial-mark (solo disponible para algoritmos de recolecci\u00F3n concurrentes)
+
+main_frame_menuitem_hint_leave_fullscreen = Salir del modo de pantalla completa
+
+main_frame_menuitem_hint_license = Informaci\u00F3n de licencia
+
+main_frame_menuitem_hint_open_file = Abre un fichero
+
+main_frame_menuitem_hint_open_url = Abre una URL
+
+main_frame_menuitem_hint_readme = Lee informaci\u00F3n varia sobre GCViewer
+
+main_frame_menuitem_hint_recent_files = Abre una vista reciente
+
+main_frame_menuitem_hint_refresh = Recarga el fichero actual
+
+main_frame_menuitem_hint_show_data_panel = Muestra el panel con informaci\u00F3n detallada acerca del documento actual
+
+main_frame_menuitem_hint_show_datestamps = Muestra el panel con informaci\u00F3n detallada acerca del documento actual
+
+main_frame_menuitem_hint_system_full_gc_lines = Muestra l\u00EDneas por cada system full GC
+
+main_frame_menuitem_hint_tenured_memory = Parte del heap que constituye la tenured generation
+
+main_frame_menuitem_hint_total_memory = Tama\u00F1o total de la memoria asignada
+
+main_frame_menuitem_hint_used_memory = Parte del heap que se est\u00E1 utilizando actualmente
+
+main_frame_menuitem_hint_used_tenured_memory = Parte de la tenured heap que se est\u00E1 utilizando actualmente
+
+main_frame_menuitem_hint_used_young_memory = Parte del young heap que se est\u00E1 utilizando actualmente
+
+main_frame_menuitem_hint_watch = Vigila el fichero actual y lo recarga si hay cambios
+
+main_frame_menuitem_hint_young_memory = Parte del heap que constituye la young generation
+
+main_frame_menuitem_inc_gc_lines = L\u00EDneas GC incrementales
+
+main_frame_menuitem_initial_mark_level = Nivel de initial mark
+
+main_frame_menuitem_leave_fullscreen = Salir de pantalla completa
+
+main_frame_menuitem_license = Licencia
+
+main_frame_menuitem_mnemonic_about = A
+
+main_frame_menuitem_mnemonic_add_file = A
+
+main_frame_menuitem_mnemonic_antialias = A
+
+main_frame_menuitem_mnemonic_arrange = O
+
+main_frame_menuitem_mnemonic_concurrent_collection_begin_end = C
+
+main_frame_menuitem_mnemonic_exit = S
+
+main_frame_menuitem_mnemonic_export = E
+
+main_frame_menuitem_mnemonic_full_gc_lines = F
+
+main_frame_menuitem_mnemonic_gc_times_line = T
+
+main_frame_menuitem_mnemonic_gc_times_rectangles = R
+
+main_frame_menuitem_mnemonic_inc_gc_lines = I
+
+main_frame_menuitem_mnemonic_initial_mark_level = M
+
+main_frame_menuitem_mnemonic_license = L
+
+main_frame_menuitem_mnemonic_open_file = A
+
+main_frame_menuitem_mnemonic_open_url = U
+
+main_frame_menuitem_mnemonic_readme = L
+
+main_frame_menuitem_mnemonic_recent_files = F
+
+main_frame_menuitem_mnemonic_refresh = R
+
+main_frame_menuitem_mnemonic_show_data_panel = M
+
+main_frame_menuitem_mnemonic_show_datastamps = M
+
+main_frame_menuitem_mnemonic_system_full_gc_lines = F
+
+main_frame_menuitem_mnemonic_tenured_memory = E
+
+main_frame_menuitem_mnemonic_total_memory = T
+
+main_frame_menuitem_mnemonic_used_memory = U
+
+main_frame_menuitem_mnemonic_used_tenured_memory = U
+
+main_frame_menuitem_mnemonic_used_young_memory = U
+
+main_frame_menuitem_mnemonic_watch = W
+
+main_frame_menuitem_mnemonic_young_memory = Y
+
+main_frame_menuitem_open_file = Abrir fichero
+
+main_frame_menuitem_open_url = Abrir URL
+
+main_frame_menuitem_readme = Leeme
+
+main_frame_menuitem_recent_files = Ficheros recientes
+
+main_frame_menuitem_refresh = Refrescar
+
+main_frame_menuitem_show_data_panel = Panel de estad\u00EDsticas
+
+main_frame_menuitem_show_datestamps = Mostrar fechas
+
+main_frame_menuitem_system_full_gc_lines = L\u00EDneas System Full GC
+
+main_frame_menuitem_tenured_memory = Tenured Generation
+
+main_frame_menuitem_total_memory = Heap total
+
+main_frame_menuitem_used_memory = Heap utilizado
+
+main_frame_menuitem_used_tenured_memory = Tenured Heap utilizado
+
+main_frame_menuitem_used_young_memory = Young heap utilizado
+
+main_frame_menuitem_watch = Observar
+
+main_frame_menuitem_young_memory = Young Generation
+
+timeoffset_prompt = Log del tiempo de inicio:
+
+urlopen_dialog_add_checkbox = A\u00F1adir URL a la ventana actual.
+
+urlopen_dialog_hint_add_checkbox = Cuando se activa, se a\u00F1adir\u00E1 el nuevo documento a
la ventana actual, en lugar de abrir en una nueva ventana.
+
+urlopen_dialog_title = Abrir URL GC
diff --git a/src/main/resources/com/tagtraum/perf/gcviewer/localStrings_fr.properties b/src/main/resources/com/tagtraum/perf/gcviewer/localStrings_fr.properties
index c82cbb86..898e2794 100644
--- a/src/main/resources/com/tagtraum/perf/gcviewer/localStrings_fr.properties
+++ b/src/main/resources/com/tagtraum/perf/gcviewer/localStrings_fr.properties
@@ -1,351 +1,357 @@
-#Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
-# $Id: $
-# please keep these sorted and up to date
-
-about_dialog_image = aboutgcviewer.png
-
-about_dialog_title = A propos de GCViewer
-
-action_zoom = Zoom
-
-action_zoom_hint = Zoom
-
-button_cancel = Annuler
-
-button_ok = OK
-
-data_panel_acc_fullgcpauses = GC complet tot
-
-data_panel_acc_gcpauses = GC tot
-
-data_panel_acc_pauses = Pauses tot
-
-data_panel_avg_fullgcpause = GC complet moy
-
-data_panel_avg_gcpause = GC moy
-
-data_panel_avg_pause = Pause moy
-
-data_panel_avg_pause_interval = fr Avg pause interval
-
-data_panel_avgfreedmemorybyfullgc = M\u00E9m lib moy GC complet
-
-data_panel_avgfreedmemorybygc = Lib moy GC
-
-data_panel_avgrelativepostfullgcincrease = Accr rel moy apr\u00E8s GC complet
-
-data_panel_avgrelativepostgcincrease = Accr rel moy apr\u00E8s GC
-
-data_panel_count_full_gc_pauses = f Number of full gc pauses
-
-data_panel_count_gc_pauses = f Number of gc pauses
-
-data_panel_count_pauses = f Number of pauses
-
-data_panel_details_avg = avg (s)
-
-data_panel_details_count = n
-
-data_panel_details_max = max (s)
-
-data_panel_details_min = min (s)
-
-data_panel_details_name = nom
-
-data_panel_details_stddev = f stddev
-
-data_panel_details_sum = f sum (s)
-
-data_panel_details_sum_percent = f sum (%)
-
-data_panel_details_total = f total
-
-data_panel_footprint = Empreinte
-
-data_panel_footprintafterfullgc = Moy apr\u00E8s GC complet
-
-data_panel_footprintaftergc = Moy apr\u00E8s GC
-
-data_panel_freedmemory = M\u00E9moire lib\u00E9r\u00E9e
-
-data_panel_freedmemorybyfullgc = M\u00E9m lib par GC complet
-
-data_panel_freedmemorybygc = Lib tot par GC
-
-data_panel_freedmemorypermin = M\u00E9m lib/Min
-
-data_panel_group_concurrent_gc_events = f concurrent GCs
-
-data_panel_group_full_gc_pauses = f Full gc pauses
-
-data_panel_group_gc_pauses = f Gc pauses
-
-data_panel_group_total_pause = f Total pause
-
-data_panel_memory_heap_usage = fr Total heap (usage / alloc. max)
-
-data_panel_memory_initiatingoccupancyfraction = InitiatingOccFraction (avg / max)
-
-data_panel_memory_perm_heap_usage = fr Perm heap (usage / alloc. max)
-
-data_panel_memory_promotion_avg = f avg promotion
-
-data_panel_memory_promotion_total = f total promotion
-
-data_panel_memory_tenured_heap_usage = fr Tenured heap (usage / alloc. max)
-
-data_panel_memory_young_heap_usage = fr Young heap (usage / alloc. max)
-
-data_panel_min_max_full_gc_pause = f Min / max full gc pause
-
-data_panel_min_max_gc_pause = f Min / max gc pause
-
-data_panel_min_max_pause = Pause min / max
-
-data_panel_min_max_pause_interval = fr Min / max pause interval
-
-data_panel_performance_fullgc = Performance GC complet
-
-data_panel_performance_gc = Performance GC
-
-data_panel_slopeafterfullgc = Pente GC complet
-
-data_panel_slopeaftergc = Pente GC
-
-data_panel_tab_chart = f Chart
-
-data_panel_tab_details = f Event details
-
-data_panel_tab_memory = M\u00E9moire
-
-data_panel_tab_pause = Pause
-
-data_panel_tab_summary = Synth\u00E8se
-
-data_panel_throughput = Throughput
-
-data_panel_total_time = dur\u00E9e totale
-
-datareader_parseerror_dialog_message = L'analyse syntaxique effectu\u00E9e par GCViewer a rencontr\u00E9 {0} probl\u00E8mes "{1}":
-
-datareader_parseerror_dialog_title = Probl\u00E8mes durant l'analyse du journal {0}
-
-datareaderfactory_instantiation_failed = La reconnaissance du format du journal a \u00E9chou\u00E9.
-
-datawriterfactory_instantiation_failed = Le format du journal n'est pas support\u00E9 :
-
-fileexport_dialog_confirm_overwrite = Le fichier existe. L'\u00E9craser?
-
-fileexport_dialog_csv = Donn\u00E9es s\u00E9par\u00E9es par des virgules (*.csv)
-
-fileexport_dialog_error_occured = Une erreur est survenue.
-
-fileexport_dialog_simplelog = f Simple GC Log (GCHisto compatible, *.simple.log)
-
-fileexport_dialog_title = Exporter le journal
-
-fileexport_dialog_txt = Donn\u00E9es textes (*.txt)
-
-fileexport_dialog_write_file_failed = Impossible d'\u00E9crire le fichier.
-
-fileopen_dialog_add_checkbox = Ajouter un journal
\u00E0 la fen\u00EAtre
courante.
-
-fileopen_dialog_hint_add_checkbox = Si coch\u00E9, le nouveau journal sera ajout\u00E9
\u00E0 la fen\u00EAtre courante, au lieu d'\u00EAtre ouvert dans une nouvelle fen\u00EAtre.
-
-fileopen_dialog_read_file_failed = La lecture du journal a echou\u00E9.
-
-fileopen_dialog_title = Choisir le journal du GC
-
-main_frame_menu_file = Fichier
-
-main_frame_menu_help = Aide
-
-main_frame_menu_mnemonic_file = F
-
-main_frame_menu_mnemonic_help = A
-
-main_frame_menu_mnemonic_view = V
-
-main_frame_menu_mnemonic_window = F
-
-main_frame_menu_view = Voir
-
-main_frame_menu_window = Fen\u00EAtre
-
-main_frame_menuitem_about = A propos de GCViewer
-
-main_frame_menuitem_add_file = Ajouter une vue
-
-main_frame_menuitem_antialias = Lissage
-
-main_frame_menuitem_arrange = R\u00E9organiser
-
-main_frame_menuitem_concurrent_collection_begin_end = f concurrent collections
-
-main_frame_menuitem_enter_fullscreen = fr Enter Full Screen
-
-main_frame_menuitem_exit = Quitter
-
-main_frame_menuitem_export = Exporter
-
-main_frame_menuitem_full_gc_lines = Rep\u00E8res des GC complets
-
-main_frame_menuitem_gc_times_line = Courbe des dur\u00E9es des GC
-
-main_frame_menuitem_gc_times_rectangles = Rectangle des dur\u00E9es des GC
-
-main_frame_menuitem_hint_about = Affiche des informations g\u00E9n\u00E9rales sur GCViewer
-
-main_frame_menuitem_hint_add_file = Ajoute une vue \u00E0 la fen\u00EAtre courante
-
-main_frame_menuitem_hint_antialias = Utilise l'antialiasing lors du trac\u00E9 des courbes (Peut ralentir la vue graphique de mani\u00E8re significative)
-
-main_frame_menuitem_hint_arrange = R\u00E9organise toutes les fen\u00EAtres
-
-main_frame_menuitem_hint_concurrent_collection_begin_end = f Shows lines for every begin (cyan) and end (pink) of a concurrent collection cycle.
-
-main_frame_menuitem_hint_enter_fullscreen = fr Switch to full screen mode
-
-main_frame_menuitem_hint_exit = Quitte GCViewer
-
-main_frame_menuitem_hint_export = Exporte le fichier courant
-
-main_frame_menuitem_hint_full_gc_lines = Affiche les r\u00E9p\u00E8res repr\u00E9sentant chaque passage des GC complets
-
-main_frame_menuitem_hint_gc_times_line = Affiche une courbe pr\u00E9sentant l'\u00E9volution de la dur\u00E9e des passages du ramasse-miettes (GC)
-
-main_frame_menuitem_hint_gc_times_rectangles = Dessine des rectangles permettant de visualiser le temps pris par le ramasse-miettes (GC)
-
-main_frame_menuitem_hint_inc_gc_lines = Affiche les r\u00E9p\u00E8res repr\u00E9sentant chaque passage des GC incr\u00E9mentaux
-
-main_frame_menuitem_hint_initial_mark_level = f Shows level of memory at initial-mark (only available for algorithms with concurrent collections).
-
-main_frame_menuitem_hint_leave_fullscreen = fr Exit full screen mode
-
-main_frame_menuitem_hint_license = (f) license information
-
-main_frame_menuitem_hint_open_file = Ouvre un fichier
-
-main_frame_menuitem_hint_open_url = Ouvre une URL
-
-main_frame_menuitem_hint_readme = (f) read various information about GCViewer
-
-main_frame_menuitem_hint_recent_files = Pr\u00E9senter un fichier r\u00E9cemment ouvert
-
-main_frame_menuitem_hint_refresh = Recharge le fichier courant
-
-main_frame_menuitem_hint_show_data_panel = Affiche les onglets des statistiques d\u00E9taill\u00E9es concernant la vue courante
-
-main_frame_menuitem_hint_show_datestamps = Affiche les onglets des statistiques d\u00E9taill\u00E9es concernant la vue courante
-
-main_frame_menuitem_hint_tenured_memory = Part de la m\u00E9moire allou\u00E9e r\u00E9serv\u00E9e pour les anciennes g\u00E9n\u00E9rations
-
-main_frame_menuitem_hint_total_memory = Quantit\u00E9 de m\u00E9moire allou\u00E9e
-
-main_frame_menuitem_hint_used_memory = Quantit\u00E9 de m\u00E9moire effectivement utilis\u00E9e
-
-main_frame_menuitem_hint_used_tenured_memory = Quantit\u00E9 de m\u00E9moire effectivement utilis\u00E9e (g\u00E9n\u00E9rations anciennes)
-
-main_frame_menuitem_hint_used_young_memory = Quantit\u00E9 de m\u00E9moire effectivement utilis\u00E9e (g\u00E9n\u00E9rations nouvelles)
-
-main_frame_menuitem_hint_watch = Surveille et recharge le fichier courant si ce dernier subit des modifications
-
-main_frame_menuitem_hint_young_memory = Par de la m\u00E9moire allou\u00E9e r\u00E9serv\u00E9e pour la nouvelle g\u00E9n\u00E9ration
-
-main_frame_menuitem_inc_gc_lines = Rep\u00E8res des GC incr\u00E9mentaux
-
-main_frame_menuitem_initial_mark_level = f initial mark level
-
-main_frame_menuitem_leave_fullscreen = fr Exit Full Screen
-
-main_frame_menuitem_license = (f) License
-
-main_frame_menuitem_mnemonic_about = A
-
-main_frame_menuitem_mnemonic_add_file = A
-
-main_frame_menuitem_mnemonic_antialias = L
-
-main_frame_menuitem_mnemonic_arrange = R
-
-main_frame_menuitem_mnemonic_concurrent_collection_begin_end = C
-
-main_frame_menuitem_mnemonic_exit = Q
-
-main_frame_menuitem_mnemonic_export = E
-
-main_frame_menuitem_mnemonic_full_gc_lines = C
-
-main_frame_menuitem_mnemonic_gc_times_line = D
-
-main_frame_menuitem_mnemonic_gc_times_rectangles = R
-
-main_frame_menuitem_mnemonic_inc_gc_lines = I
-
-main_frame_menuitem_mnemonic_initial_mark_level = M
-
-main_frame_menuitem_mnemonic_license = L
-
-main_frame_menuitem_mnemonic_open_file = O
-
-main_frame_menuitem_mnemonic_open_url = U
-
-main_frame_menuitem_mnemonic_readme = R
-
-main_frame_menuitem_mnemonic_recent_files = F
-
-main_frame_menuitem_mnemonic_refresh = R
-
-main_frame_menuitem_mnemonic_show_data_panel = S
-
-main_frame_menuitem_mnemonic_show_datastamps = E
-
-main_frame_menuitem_mnemonic_tenured_memory = A
-
-main_frame_menuitem_mnemonic_total_memory = M
-
-main_frame_menuitem_mnemonic_used_memory = U
-
-main_frame_menuitem_mnemonic_used_tenured_memory = U
-
-main_frame_menuitem_mnemonic_used_young_memory = U
-
-main_frame_menuitem_mnemonic_watch = S
-
-main_frame_menuitem_mnemonic_young_memory = N
-
-main_frame_menuitem_open_file = Ouvrir un fichier
-
-main_frame_menuitem_open_url = Ouvrir une URL
-
-main_frame_menuitem_readme = Readme
-
-main_frame_menuitem_recent_files = Fichiers r\u00E9cents
-
-main_frame_menuitem_refresh = Rafra\u00EEchir
-
-main_frame_menuitem_show_data_panel = Statistiques
-
-main_frame_menuitem_show_datestamps = (fr)show datestamps
-
-main_frame_menuitem_tenured_memory = Anciennes g\u00E9n\u00E9rations
-
-main_frame_menuitem_total_memory = M\u00E9moire allou\u00E9e
-
-main_frame_menuitem_used_memory = M\u00E9moire utilis\u00E9e
-
-main_frame_menuitem_used_tenured_memory = M\u00E9moire ancienne utilis\u00E9e
-
-main_frame_menuitem_used_young_memory = M\u00E9moire nouvelle utilis\u00E9e
-
-main_frame_menuitem_watch = Surveiller
-
-main_frame_menuitem_young_memory = Nouvelle g\u00E9n\u00E9ration
-
-timeoffset_prompt = Date d\u00E9marrage du journal :
-
-urlopen_dialog_add_checkbox = Ajouter l'URL \u00E0 la fen\u00EAtre courante.
-
-urlopen_dialog_hint_add_checkbox = Si coch\u00E9, le nouveau journal sera ajout\u00E9
\u00E0 la fen\u00EAtre courante, au lieu d'\u00EAtre ouvert dans une nouvelle fen\u00EAtre.
-
-urlopen_dialog_title = Ouvrir l'URL d'un journal
+#Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
+# $Id: $
+# please keep these sorted and up to date
+
+about_dialog_image = aboutgcviewer.png
+
+about_dialog_title = A propos de GCViewer
+
+action_zoom = Zoom
+
+action_zoom_hint = Zoom
+
+button_cancel = Annuler
+
+button_ok = OK
+
+data_panel_acc_fullgcpauses = GC complet tot
+
+data_panel_acc_gcpauses = GC tot
+
+data_panel_acc_pauses = Pauses tot
+
+data_panel_avg_fullgcpause = GC complet moy
+
+data_panel_avg_gcpause = GC moy
+
+data_panel_avg_pause = Pause moy
+
+data_panel_avg_pause_interval = fr Avg pause interval
+
+data_panel_avgfreedmemorybyfullgc = M\u00E9m lib moy GC complet
+
+data_panel_avgfreedmemorybygc = Lib moy GC
+
+data_panel_avgrelativepostfullgcincrease = Accr rel moy apr\u00E8s GC complet
+
+data_panel_avgrelativepostgcincrease = Accr rel moy apr\u00E8s GC
+
+data_panel_count_full_gc_pauses = f Number of full gc pauses
+
+data_panel_count_gc_pauses = f Number of gc pauses
+
+data_panel_count_pauses = f Number of pauses
+
+data_panel_details_avg = avg (s)
+
+data_panel_details_count = n
+
+data_panel_details_max = max (s)
+
+data_panel_details_min = min (s)
+
+data_panel_details_name = nom
+
+data_panel_details_stddev = f stddev
+
+data_panel_details_sum = f sum (s)
+
+data_panel_details_sum_percent = f sum (%)
+
+data_panel_details_total = f total
+
+data_panel_footprint = Empreinte
+
+data_panel_footprintafterfullgc = Moy apr\u00E8s GC complet
+
+data_panel_footprintaftergc = Moy apr\u00E8s GC
+
+data_panel_freedmemory = M\u00E9moire lib\u00E9r\u00E9e
+
+data_panel_freedmemorybyfullgc = M\u00E9m lib par GC complet
+
+data_panel_freedmemorybygc = Lib tot par GC
+
+data_panel_freedmemorypermin = M\u00E9m lib/Min
+
+data_panel_group_concurrent_gc_events = f concurrent GCs
+
+data_panel_group_full_gc_pauses = f Full gc pauses
+
+data_panel_group_gc_pauses = f Gc pauses
+
+data_panel_group_total_pause = f Total pause
+
+data_panel_memory_heap_usage = fr Total heap (usage / alloc. max)
+
+data_panel_memory_initiatingoccupancyfraction = InitiatingOccFraction (avg / max)
+
+data_panel_memory_perm_heap_usage = fr Perm heap (usage / alloc. max)
+
+data_panel_memory_promotion_avg = f avg promotion
+
+data_panel_memory_promotion_total = f total promotion
+
+data_panel_memory_tenured_heap_usage = fr Tenured heap (usage / alloc. max)
+
+data_panel_memory_young_heap_usage = fr Young heap (usage / alloc. max)
+
+data_panel_min_max_full_gc_pause = f Min / max full gc pause
+
+data_panel_min_max_gc_pause = f Min / max gc pause
+
+data_panel_min_max_pause = Pause min / max
+
+data_panel_min_max_pause_interval = fr Min / max pause interval
+
+data_panel_performance_fullgc = Performance GC complet
+
+data_panel_performance_gc = Performance GC
+
+data_panel_slopeafterfullgc = Pente GC complet
+
+data_panel_slopeaftergc = Pente GC
+
+data_panel_tab_chart = f Chart
+
+data_panel_tab_details = f Event details
+
+data_panel_tab_memory = M\u00E9moire
+
+data_panel_tab_pause = Pause
+
+data_panel_tab_summary = Synth\u00E8se
+
+data_panel_throughput = Throughput
+
+data_panel_total_time = dur\u00E9e totale
+
+datareader_parseerror_dialog_message = L'analyse syntaxique effectu\u00E9e par GCViewer a rencontr\u00E9 {0} probl\u00E8mes "{1}":
+
+datareader_parseerror_dialog_title = Probl\u00E8mes durant l'analyse du journal {0}
+
+datareaderfactory_instantiation_failed = La reconnaissance du format du journal a \u00E9chou\u00E9.
+
+datawriterfactory_instantiation_failed = Le format du journal n'est pas support\u00E9 :
+
+fileexport_dialog_confirm_overwrite = Le fichier existe. L'\u00E9craser?
+
+fileexport_dialog_csv = Donn\u00E9es s\u00E9par\u00E9es par des virgules (*.csv)
+
+fileexport_dialog_error_occured = Une erreur est survenue.
+
+fileexport_dialog_simplelog = f Simple GC Log (GCHisto compatible, *.simple.log)
+
+fileexport_dialog_title = Exporter le journal
+
+fileexport_dialog_txt = Donn\u00E9es textes (*.txt)
+
+fileexport_dialog_write_file_failed = Impossible d'\u00E9crire le fichier.
+
+fileopen_dialog_add_checkbox = Ajouter un journal
\u00E0 la fen\u00EAtre
courante.
+
+fileopen_dialog_hint_add_checkbox = Si coch\u00E9, le nouveau journal sera ajout\u00E9
\u00E0 la fen\u00EAtre courante, au lieu d'\u00EAtre ouvert dans une nouvelle fen\u00EAtre.
+
+fileopen_dialog_read_file_failed = La lecture du journal a echou\u00E9.
+
+fileopen_dialog_title = Choisir le journal du GC
+
+main_frame_menu_file = Fichier
+
+main_frame_menu_help = Aide
+
+main_frame_menu_mnemonic_file = F
+
+main_frame_menu_mnemonic_help = A
+
+main_frame_menu_mnemonic_view = V
+
+main_frame_menu_mnemonic_window = F
+
+main_frame_menu_view = Voir
+
+main_frame_menu_window = Fen\u00EAtre
+
+main_frame_menuitem_about = A propos de GCViewer
+
+main_frame_menuitem_add_file = Ajouter une vue
+
+main_frame_menuitem_antialias = Lissage
+
+main_frame_menuitem_arrange = R\u00E9organiser
+
+main_frame_menuitem_concurrent_collection_begin_end = f concurrent collections
+
+main_frame_menuitem_enter_fullscreen = fr Enter Full Screen
+
+main_frame_menuitem_exit = Quitter
+
+main_frame_menuitem_export = Exporter
+
+main_frame_menuitem_full_gc_lines = Rep\u00E8res des GC complets
+
+main_frame_menuitem_gc_times_line = Courbe des dur\u00E9es des GC
+
+main_frame_menuitem_gc_times_rectangles = Rectangle des dur\u00E9es des GC
+
+main_frame_menuitem_hint_about = Affiche des informations g\u00E9n\u00E9rales sur GCViewer
+
+main_frame_menuitem_hint_add_file = Ajoute une vue \u00E0 la fen\u00EAtre courante
+
+main_frame_menuitem_hint_antialias = Utilise l'antialiasing lors du trac\u00E9 des courbes (Peut ralentir la vue graphique de mani\u00E8re significative)
+
+main_frame_menuitem_hint_arrange = R\u00E9organise toutes les fen\u00EAtres
+
+main_frame_menuitem_hint_concurrent_collection_begin_end = f Shows lines for every begin (cyan) and end (pink) of a concurrent collection cycle.
+
+main_frame_menuitem_hint_enter_fullscreen = fr Switch to full screen mode
+
+main_frame_menuitem_hint_exit = Quitte GCViewer
+
+main_frame_menuitem_hint_export = Exporte le fichier courant
+
+main_frame_menuitem_hint_full_gc_lines = Affiche les r\u00E9p\u00E8res repr\u00E9sentant chaque passage des GC complets
+
+main_frame_menuitem_hint_gc_times_line = Affiche une courbe pr\u00E9sentant l'\u00E9volution de la dur\u00E9e des passages du ramasse-miettes (GC)
+
+main_frame_menuitem_hint_gc_times_rectangles = Dessine des rectangles permettant de visualiser le temps pris par le ramasse-miettes (GC)
+
+main_frame_menuitem_hint_inc_gc_lines = Affiche les r\u00E9p\u00E8res repr\u00E9sentant chaque passage des GC incr\u00E9mentaux
+
+main_frame_menuitem_hint_initial_mark_level = f Shows level of memory at initial-mark (only available for algorithms with concurrent collections).
+
+main_frame_menuitem_hint_leave_fullscreen = fr Exit full screen mode
+
+main_frame_menuitem_hint_license = (f) license information
+
+main_frame_menuitem_hint_open_file = Ouvre un fichier
+
+main_frame_menuitem_hint_open_url = Ouvre une URL
+
+main_frame_menuitem_hint_readme = (f) read various information about GCViewer
+
+main_frame_menuitem_hint_recent_files = Pr\u00E9senter un fichier r\u00E9cemment ouvert
+
+main_frame_menuitem_hint_refresh = Recharge le fichier courant
+
+main_frame_menuitem_hint_show_data_panel = Affiche les onglets des statistiques d\u00E9taill\u00E9es concernant la vue courante
+
+main_frame_menuitem_hint_show_datestamps = Affiche les onglets des statistiques d\u00E9taill\u00E9es concernant la vue courante
+
+main_frame_menuitem_hint_system_full_gc_lines = Affiche les r\u00E9p\u00E8res repr\u00E9sentant chaque passage des GC complets de syst\u00E8me
+
+main_frame_menuitem_hint_tenured_memory = Part de la m\u00E9moire allou\u00E9e r\u00E9serv\u00E9e pour les anciennes g\u00E9n\u00E9rations
+
+main_frame_menuitem_hint_total_memory = Quantit\u00E9 de m\u00E9moire allou\u00E9e
+
+main_frame_menuitem_hint_used_memory = Quantit\u00E9 de m\u00E9moire effectivement utilis\u00E9e
+
+main_frame_menuitem_hint_used_tenured_memory = Quantit\u00E9 de m\u00E9moire effectivement utilis\u00E9e (g\u00E9n\u00E9rations anciennes)
+
+main_frame_menuitem_hint_used_young_memory = Quantit\u00E9 de m\u00E9moire effectivement utilis\u00E9e (g\u00E9n\u00E9rations nouvelles)
+
+main_frame_menuitem_hint_watch = Surveille et recharge le fichier courant si ce dernier subit des modifications
+
+main_frame_menuitem_hint_young_memory = Par de la m\u00E9moire allou\u00E9e r\u00E9serv\u00E9e pour la nouvelle g\u00E9n\u00E9ration
+
+main_frame_menuitem_inc_gc_lines = Rep\u00E8res des GC incr\u00E9mentaux
+
+main_frame_menuitem_initial_mark_level = f initial mark level
+
+main_frame_menuitem_leave_fullscreen = fr Exit Full Screen
+
+main_frame_menuitem_license = (f) License
+
+main_frame_menuitem_mnemonic_about = A
+
+main_frame_menuitem_mnemonic_add_file = A
+
+main_frame_menuitem_mnemonic_antialias = L
+
+main_frame_menuitem_mnemonic_arrange = R
+
+main_frame_menuitem_mnemonic_concurrent_collection_begin_end = C
+
+main_frame_menuitem_mnemonic_exit = Q
+
+main_frame_menuitem_mnemonic_export = E
+
+main_frame_menuitem_mnemonic_full_gc_lines = C
+
+main_frame_menuitem_mnemonic_gc_times_line = D
+
+main_frame_menuitem_mnemonic_gc_times_rectangles = R
+
+main_frame_menuitem_mnemonic_inc_gc_lines = I
+
+main_frame_menuitem_mnemonic_initial_mark_level = M
+
+main_frame_menuitem_mnemonic_license = L
+
+main_frame_menuitem_mnemonic_open_file = O
+
+main_frame_menuitem_mnemonic_open_url = U
+
+main_frame_menuitem_mnemonic_readme = R
+
+main_frame_menuitem_mnemonic_recent_files = F
+
+main_frame_menuitem_mnemonic_refresh = R
+
+main_frame_menuitem_mnemonic_show_data_panel = S
+
+main_frame_menuitem_mnemonic_show_datastamps = E
+
+main_frame_menuitem_mnemonic_system_full_gc_lines = C
+
+main_frame_menuitem_mnemonic_tenured_memory = A
+
+main_frame_menuitem_mnemonic_total_memory = M
+
+main_frame_menuitem_mnemonic_used_memory = U
+
+main_frame_menuitem_mnemonic_used_tenured_memory = U
+
+main_frame_menuitem_mnemonic_used_young_memory = U
+
+main_frame_menuitem_mnemonic_watch = S
+
+main_frame_menuitem_mnemonic_young_memory = N
+
+main_frame_menuitem_open_file = Ouvrir un fichier
+
+main_frame_menuitem_open_url = Ouvrir une URL
+
+main_frame_menuitem_readme = Readme
+
+main_frame_menuitem_recent_files = Fichiers r\u00E9cents
+
+main_frame_menuitem_refresh = Rafra\u00EEchir
+
+main_frame_menuitem_show_data_panel = Statistiques
+
+main_frame_menuitem_show_datestamps = (fr)show datestamps
+
+main_frame_menuitem_system_full_gc_lines = Rep\u00E8res des GC complets de syst\u00E8me
+
+main_frame_menuitem_tenured_memory = Anciennes g\u00E9n\u00E9rations
+
+main_frame_menuitem_total_memory = M\u00E9moire allou\u00E9e
+
+main_frame_menuitem_used_memory = M\u00E9moire utilis\u00E9e
+
+main_frame_menuitem_used_tenured_memory = M\u00E9moire ancienne utilis\u00E9e
+
+main_frame_menuitem_used_young_memory = M\u00E9moire nouvelle utilis\u00E9e
+
+main_frame_menuitem_watch = Surveiller
+
+main_frame_menuitem_young_memory = Nouvelle g\u00E9n\u00E9ration
+
+timeoffset_prompt = Date d\u00E9marrage du journal :
+
+urlopen_dialog_add_checkbox = Ajouter l'URL \u00E0 la fen\u00EAtre courante.
+
+urlopen_dialog_hint_add_checkbox = Si coch\u00E9, le nouveau journal sera ajout\u00E9
\u00E0 la fen\u00EAtre courante, au lieu d'\u00EAtre ouvert dans une nouvelle fen\u00EAtre.
+
+urlopen_dialog_title = Ouvrir l'URL d'un journal
diff --git a/src/main/resources/com/tagtraum/perf/gcviewer/localStrings_sv.properties b/src/main/resources/com/tagtraum/perf/gcviewer/localStrings_sv.properties
index 802bc43b..fc12ed49 100644
--- a/src/main/resources/com/tagtraum/perf/gcviewer/localStrings_sv.properties
+++ b/src/main/resources/com/tagtraum/perf/gcviewer/localStrings_sv.properties
@@ -1,351 +1,357 @@
-#Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
-# $Id: $
-# please keep these sorted and up to date
-
-about_dialog_image = aboutgcviewer.png
-
-about_dialog_title = Om GCViewer
-
-action_zoom = Zoom
-
-action_zoom_hint = Zooma in eller ut
-
-button_cancel = Avbryt
-
-button_ok = OK
-
-data_panel_acc_fullgcpauses = Total full GC-paustid
-
-data_panel_acc_gcpauses = Total GC-paustid
-
-data_panel_acc_pauses = Total paustid
-
-data_panel_avg_fullgcpause = Medelpaustid f\u00F6r full GC
-
-data_panel_avg_gcpause = Medelpaustid f\u00F6r GC
-
-data_panel_avg_pause = Medelpaustid
-
-data_panel_avg_pause_interval = Medeltid f\u00F6r pausintervall
-
-data_panel_avgfreedmemorybyfullgc = Medel frigjort minne vid full GC
-
-data_panel_avgfreedmemorybygc = Medel frigjort minne vid GC
-
-data_panel_avgrelativepostfullgcincrease = Medel relativ \u00F6kning vid full GC
-
-data_panel_avgrelativepostgcincrease = Medel relativ \u00F6kning vid GC
-
-data_panel_count_full_gc_pauses = Antal full GC-pauser
-
-data_panel_count_gc_pauses = Antal GC-pauser
-
-data_panel_count_pauses = Antal pauser
-
-data_panel_details_avg = medel (s)
-
-data_panel_details_count = n
-
-data_panel_details_max = max (s)
-
-data_panel_details_min = min (s)
-
-data_panel_details_name = namn
-
-data_panel_details_stddev = \u03C3
-
-data_panel_details_sum = summa (s)
-
-data_panel_details_sum_percent = summa (%)
-
-data_panel_details_total = total
-
-data_panel_footprint = Maximal heapstorlek
-
-data_panel_footprintafterfullgc = Medel efter full GC
-
-data_panel_footprintaftergc = Medel efter GC
-
-data_panel_freedmemory = Frigjort minne
-
-data_panel_freedmemorybyfullgc = Minne frigjort vid full GC
-
-data_panel_freedmemorybygc = Minne frigjort vid GC
-
-data_panel_freedmemorypermin = Frigjort minne/min
-
-data_panel_group_concurrent_gc_events = Concurrent GCs
-
-data_panel_group_full_gc_pauses = Full GC-pauser
-
-data_panel_group_gc_pauses = GC-pauser
-
-data_panel_group_total_pause = Pauser
-
-data_panel_memory_heap_usage = Total heap (anv\u00E4nt / max allokerat)
-
-data_panel_memory_initiatingoccupancyfraction = InitiatingOccFraction (medel / max)
-
-data_panel_memory_perm_heap_usage = Perm heap (anv\u00E4nt / max allokerat)
-
-data_panel_memory_promotion_avg = Medel promotion
-
-data_panel_memory_promotion_total = Total promotion
-
-data_panel_memory_tenured_heap_usage = Tenured heap (anv\u00E4nt / max allokerat)
-
-data_panel_memory_young_heap_usage = Young heap (anv\u00E4nt / max allokerat)
-
-data_panel_min_max_full_gc_pause = Kortaste / l\u00E4ngsta full GC-pausen
-
-data_panel_min_max_gc_pause = Kortaste / l\u00E4ngsta GC-pausen
-
-data_panel_min_max_pause = Kortaste / l\u00E4ngsta pausen
-
-data_panel_min_max_pause_interval = Min / max pausintervall
-
-data_panel_performance_fullgc = Full GC-hastighet
-
-data_panel_performance_gc = GC-hastighet
-
-data_panel_slopeafterfullgc = \u00D6kning vid full GC
-
-data_panel_slopeaftergc = \u00D6kning vid GC
-
-data_panel_tab_chart = Diagram
-
-data_panel_tab_details = Detaljer
-
-data_panel_tab_memory = Minne
-
-data_panel_tab_pause = Paus
-
-data_panel_tab_summary = Summering
-
-data_panel_throughput = Genomstr\u00F6mming
-
-data_panel_total_time = Total tid
-
-datareader_parseerror_dialog_message = GCViewer st\u00F6tte p\u00E5 ett {0} problem vid parsing "{1}":
-
-datareader_parseerror_dialog_title = Problem vid parsing {0}
-
-datareaderfactory_instantiation_failed = Kan inte identifiera filformatet.
-
-datawriterfactory_instantiation_failed = Filformatet st\u00F6ds inte:
-
-fileexport_dialog_confirm_overwrite = Filen existerar redan. Ska den ers\u00E4ttas?
-
-fileexport_dialog_csv = Kommaseparerad fil (*.csv)
-
-fileexport_dialog_error_occured = Ett fel uppstod
-
-fileexport_dialog_simplelog = s Simple GC Log (GCHisto compatible, *.simple.log)
-
-fileexport_dialog_title = Exportera GC-loggfil
-
-fileexport_dialog_txt = Textfil (*.txt)
-
-fileexport_dialog_write_file_failed = Misslyckades med att spara filen
-
-fileopen_dialog_add_checkbox = L\u00E4gg till fil
till aktuellt
f\u00F6nster
-
-fileopen_dialog_hint_add_checkbox = Vid markering s\u00E5 kommer det nya dokumentet att l\u00E4ggas
till i aktuellt f\u00F6nster, annars \u00F6ppnas ett nytt
-
-fileopen_dialog_read_file_failed = Misslyckades att l\u00E4sa filen
-
-fileopen_dialog_title = V\u00E4lj en GC-loggfil
-
-main_frame_menu_file = Arkiv
-
-main_frame_menu_help = Hj\u00E4lp
-
-main_frame_menu_mnemonic_file = A
-
-main_frame_menu_mnemonic_help = H
-
-main_frame_menu_mnemonic_view = V
-
-main_frame_menu_mnemonic_window = F
-
-main_frame_menu_view = Visa
-
-main_frame_menu_window = F\u00F6nster
-
-main_frame_menuitem_about = Om GCViewer
-
-main_frame_menuitem_add_file = L\u00E4gg till vy
-
-main_frame_menuitem_antialias = Linjeutj\u00E4mning
-
-main_frame_menuitem_arrange = Ordna
-
-main_frame_menuitem_concurrent_collection_begin_end = Concurrent collections
-
-main_frame_menuitem_enter_fullscreen = Helsk\u00E4rmsl\u00E4ge
-
-main_frame_menuitem_exit = Avsluta
-
-main_frame_menuitem_export = Export
-
-main_frame_menuitem_full_gc_lines = Full GC (linje)
-
-main_frame_menuitem_gc_times_line = GC-tid (linje)
-
-main_frame_menuitem_gc_times_rectangles = GC-tid (rektangel)
-
-main_frame_menuitem_hint_about = Visar information om GCViewer
-
-main_frame_menuitem_hint_add_file = L\u00E4gg till en vy till nuvarande f\u00F6nster
-
-main_frame_menuitem_hint_antialias = Anv\u00E4nd linjeutj\u00E4mning (antialias) vid linjerendering (kan p\u00E5verka renderingstiden avsev\u00E4rt)
-
-main_frame_menuitem_hint_arrange = Ordna alla f\u00F6nster
-
-main_frame_menuitem_hint_concurrent_collection_begin_end = Visa linjer f\u00F6r start (cyan) och slut (rosa) av varje concurrent collection cycle
-
-main_frame_menuitem_hint_enter_fullscreen = V\u00E4xlar till helsk\u00E4rmsl\u00E4ge
-
-main_frame_menuitem_hint_exit = Avslutar GCViewer
-
-main_frame_menuitem_hint_export = Sparar den \u00F6ppnade filen i ett valbart format
-
-main_frame_menuitem_hint_full_gc_lines = Visar linjer f\u00F6r varje full GC
-
-main_frame_menuitem_hint_gc_times_line = Visar en linje som anger hur l\u00E5ng tid en GC tog
-
-main_frame_menuitem_hint_gc_times_rectangles = Visar en fylld triangel f\u00F6r att indikera hur l\u00E5ng tid en GC tog
-
-main_frame_menuitem_hint_inc_gc_lines = Visar linje f\u00F6r varje inkrementell GC
-
-main_frame_menuitem_hint_initial_mark_level = Visar minnesanv\u00E4ndning vid initial-mark (bara f\u00F6r algoritmer med concurrent collections)
-
-main_frame_menuitem_hint_leave_fullscreen = V\u00E4xlar fr\u00E5n helsk\u00E4rmsl\u00E4ge
-
-main_frame_menuitem_hint_license = (sv) license information
-
-main_frame_menuitem_hint_open_file = \u00D6ppnar en fil
-
-main_frame_menuitem_hint_open_url = \u00D6ppnar en URL
-
-main_frame_menuitem_hint_readme = (sv) read various information about GCViewer
-
-main_frame_menuitem_hint_recent_files = \u00D6ppnar det senaste f\u00F6nstret
-
-main_frame_menuitem_hint_refresh = L\u00E4ser om den \u00F6ppnande filen
-
-main_frame_menuitem_hint_show_data_panel = Visar datapanel med detaljerad information om den \u00F6ppnade loggfilen
-
-main_frame_menuitem_hint_show_datestamps = Visar datapanel med detaljerad information om den \u00F6ppnade loggfilen
-
-main_frame_menuitem_hint_tenured_memory = Del av heapen som utg\u00F6r den \u00E4ldre (tenured) generationen
-
-main_frame_menuitem_hint_total_memory = Totalt minne allokerat f\u00F6r heap
-
-main_frame_menuitem_hint_used_memory = Visar hur mycket minne som \u00E4r allokerat av heapen
-
-main_frame_menuitem_hint_used_tenured_memory = Visar hur mycket minne som \u00E4r allokerat av heapen (\u00E4ldre (tenured) generationen)
-
-main_frame_menuitem_hint_used_young_memory = Visar hur mycket minne som \u00E4r allokerat av heapen (unga (young) generationen)
-
-main_frame_menuitem_hint_watch = Bevakar och laddar om nuvarande fil vid f\u00F6r\u00E4ndring
-
-main_frame_menuitem_hint_young_memory = Del av heapen som utg\u00F6r den unga (young) generationen
-
-main_frame_menuitem_inc_gc_lines = Inkrementell GC (linje)
-
-main_frame_menuitem_initial_mark_level = Initial mark-niv\u00E5
-
-main_frame_menuitem_leave_fullscreen = L\u00E4mna helsk\u00E4rmsl\u00E4ge
-
-main_frame_menuitem_license = (sv) License
-
-main_frame_menuitem_mnemonic_about = O
-
-main_frame_menuitem_mnemonic_add_file = L
-
-main_frame_menuitem_mnemonic_antialias = U
-
-main_frame_menuitem_mnemonic_arrange = O
-
-main_frame_menuitem_mnemonic_concurrent_collection_begin_end = C
-
-main_frame_menuitem_mnemonic_exit = X
-
-main_frame_menuitem_mnemonic_export = E
-
-main_frame_menuitem_mnemonic_full_gc_lines = F
-
-main_frame_menuitem_mnemonic_gc_times_line = T
-
-main_frame_menuitem_mnemonic_gc_times_rectangles = R
-
-main_frame_menuitem_mnemonic_inc_gc_lines = I
-
-main_frame_menuitem_mnemonic_initial_mark_level = M
-
-main_frame_menuitem_mnemonic_license = L
-
-main_frame_menuitem_mnemonic_open_file = O
-
-main_frame_menuitem_mnemonic_open_url = U
-
-main_frame_menuitem_mnemonic_readme = R
-
-main_frame_menuitem_mnemonic_recent_files = F
-
-main_frame_menuitem_mnemonic_refresh = m
-
-main_frame_menuitem_mnemonic_show_data_panel = D
-
-main_frame_menuitem_mnemonic_show_datastamps = S
-
-main_frame_menuitem_mnemonic_tenured_memory = G
-
-main_frame_menuitem_mnemonic_total_memory = H
-
-main_frame_menuitem_mnemonic_used_memory = A
-
-main_frame_menuitem_mnemonic_used_tenured_memory = A
-
-main_frame_menuitem_mnemonic_used_young_memory = A
-
-main_frame_menuitem_mnemonic_watch = W
-
-main_frame_menuitem_mnemonic_young_memory = Y
-
-main_frame_menuitem_open_file = \u00D6ppna
-
-main_frame_menuitem_open_url = \u00D6ppna URL
-
-main_frame_menuitem_readme = Readme
-
-main_frame_menuitem_recent_files = Senaste filerna
-
-main_frame_menuitem_refresh = Oml\u00E4sning
-
-main_frame_menuitem_show_data_panel = Datapanel
-
-main_frame_menuitem_show_datestamps = (sv)show datestamps
-
-main_frame_menuitem_tenured_memory = \u00C4ldre (Tenured) generationen
-
-main_frame_menuitem_total_memory = Total storlek p\u00E5 heap
-
-main_frame_menuitem_used_memory = Anv\u00E4nt minne
-
-main_frame_menuitem_used_tenured_memory = Anv\u00E4nt \u00E4ldre minne
-
-main_frame_menuitem_used_young_memory = Anv\u00E4nt yngre (young) minne
-
-main_frame_menuitem_watch = Bevaka
-
-main_frame_menuitem_young_memory = Yngre (Young) generationen
-
-timeoffset_prompt = Logg-starttid:
-
-urlopen_dialog_add_checkbox = L\u00E4gg till URL till aktuellt f\u00F6nster
-
-urlopen_dialog_hint_add_checkbox = Vid markering s\u00E5 kommer det nya dokumentett att l\u00E4ggas
till i aktuellt f\u00F6nster, annars \u00F6ppnas ett nytt
-
-urlopen_dialog_title = \u00D6ppna GC-URL
+#Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
+# $Id: $
+# please keep these sorted and up to date
+
+about_dialog_image = aboutgcviewer.png
+
+about_dialog_title = Om GCViewer
+
+action_zoom = Zoom
+
+action_zoom_hint = Zooma in eller ut
+
+button_cancel = Avbryt
+
+button_ok = OK
+
+data_panel_acc_fullgcpauses = Total full GC-paustid
+
+data_panel_acc_gcpauses = Total GC-paustid
+
+data_panel_acc_pauses = Total paustid
+
+data_panel_avg_fullgcpause = Medelpaustid f\u00F6r full GC
+
+data_panel_avg_gcpause = Medelpaustid f\u00F6r GC
+
+data_panel_avg_pause = Medelpaustid
+
+data_panel_avg_pause_interval = Medeltid f\u00F6r pausintervall
+
+data_panel_avgfreedmemorybyfullgc = Medel frigjort minne vid full GC
+
+data_panel_avgfreedmemorybygc = Medel frigjort minne vid GC
+
+data_panel_avgrelativepostfullgcincrease = Medel relativ \u00F6kning vid full GC
+
+data_panel_avgrelativepostgcincrease = Medel relativ \u00F6kning vid GC
+
+data_panel_count_full_gc_pauses = Antal full GC-pauser
+
+data_panel_count_gc_pauses = Antal GC-pauser
+
+data_panel_count_pauses = Antal pauser
+
+data_panel_details_avg = medel (s)
+
+data_panel_details_count = n
+
+data_panel_details_max = max (s)
+
+data_panel_details_min = min (s)
+
+data_panel_details_name = namn
+
+data_panel_details_stddev = \u03C3
+
+data_panel_details_sum = summa (s)
+
+data_panel_details_sum_percent = summa (%)
+
+data_panel_details_total = total
+
+data_panel_footprint = Maximal heapstorlek
+
+data_panel_footprintafterfullgc = Medel efter full GC
+
+data_panel_footprintaftergc = Medel efter GC
+
+data_panel_freedmemory = Frigjort minne
+
+data_panel_freedmemorybyfullgc = Minne frigjort vid full GC
+
+data_panel_freedmemorybygc = Minne frigjort vid GC
+
+data_panel_freedmemorypermin = Frigjort minne/min
+
+data_panel_group_concurrent_gc_events = Concurrent GCs
+
+data_panel_group_full_gc_pauses = Full GC-pauser
+
+data_panel_group_gc_pauses = GC-pauser
+
+data_panel_group_total_pause = Pauser
+
+data_panel_memory_heap_usage = Total heap (anv\u00E4nt / max allokerat)
+
+data_panel_memory_initiatingoccupancyfraction = InitiatingOccFraction (medel / max)
+
+data_panel_memory_perm_heap_usage = Perm heap (anv\u00E4nt / max allokerat)
+
+data_panel_memory_promotion_avg = Medel promotion
+
+data_panel_memory_promotion_total = Total promotion
+
+data_panel_memory_tenured_heap_usage = Tenured heap (anv\u00E4nt / max allokerat)
+
+data_panel_memory_young_heap_usage = Young heap (anv\u00E4nt / max allokerat)
+
+data_panel_min_max_full_gc_pause = Kortaste / l\u00E4ngsta full GC-pausen
+
+data_panel_min_max_gc_pause = Kortaste / l\u00E4ngsta GC-pausen
+
+data_panel_min_max_pause = Kortaste / l\u00E4ngsta pausen
+
+data_panel_min_max_pause_interval = Min / max pausintervall
+
+data_panel_performance_fullgc = Full GC-hastighet
+
+data_panel_performance_gc = GC-hastighet
+
+data_panel_slopeafterfullgc = \u00D6kning vid full GC
+
+data_panel_slopeaftergc = \u00D6kning vid GC
+
+data_panel_tab_chart = Diagram
+
+data_panel_tab_details = Detaljer
+
+data_panel_tab_memory = Minne
+
+data_panel_tab_pause = Paus
+
+data_panel_tab_summary = Summering
+
+data_panel_throughput = Genomstr\u00F6mming
+
+data_panel_total_time = Total tid
+
+datareader_parseerror_dialog_message = GCViewer st\u00F6tte p\u00E5 ett {0} problem vid parsing "{1}":
+
+datareader_parseerror_dialog_title = Problem vid parsing {0}
+
+datareaderfactory_instantiation_failed = Kan inte identifiera filformatet.
+
+datawriterfactory_instantiation_failed = Filformatet st\u00F6ds inte:
+
+fileexport_dialog_confirm_overwrite = Filen existerar redan. Ska den ers\u00E4ttas?
+
+fileexport_dialog_csv = Kommaseparerad fil (*.csv)
+
+fileexport_dialog_error_occured = Ett fel uppstod
+
+fileexport_dialog_simplelog = s Simple GC Log (GCHisto compatible, *.simple.log)
+
+fileexport_dialog_title = Exportera GC-loggfil
+
+fileexport_dialog_txt = Textfil (*.txt)
+
+fileexport_dialog_write_file_failed = Misslyckades med att spara filen
+
+fileopen_dialog_add_checkbox = L\u00E4gg till fil
till aktuellt
f\u00F6nster
+
+fileopen_dialog_hint_add_checkbox = Vid markering s\u00E5 kommer det nya dokumentet att l\u00E4ggas
till i aktuellt f\u00F6nster, annars \u00F6ppnas ett nytt
+
+fileopen_dialog_read_file_failed = Misslyckades att l\u00E4sa filen
+
+fileopen_dialog_title = V\u00E4lj en GC-loggfil
+
+main_frame_menu_file = Arkiv
+
+main_frame_menu_help = Hj\u00E4lp
+
+main_frame_menu_mnemonic_file = A
+
+main_frame_menu_mnemonic_help = H
+
+main_frame_menu_mnemonic_view = V
+
+main_frame_menu_mnemonic_window = F
+
+main_frame_menu_view = Visa
+
+main_frame_menu_window = F\u00F6nster
+
+main_frame_menuitem_about = Om GCViewer
+
+main_frame_menuitem_add_file = L\u00E4gg till vy
+
+main_frame_menuitem_antialias = Linjeutj\u00E4mning
+
+main_frame_menuitem_arrange = Ordna
+
+main_frame_menuitem_concurrent_collection_begin_end = Concurrent collections
+
+main_frame_menuitem_enter_fullscreen = Helsk\u00E4rmsl\u00E4ge
+
+main_frame_menuitem_exit = Avsluta
+
+main_frame_menuitem_export = Export
+
+main_frame_menuitem_full_gc_lines = Full GC (linje)
+
+main_frame_menuitem_gc_times_line = GC-tid (linje)
+
+main_frame_menuitem_gc_times_rectangles = GC-tid (rektangel)
+
+main_frame_menuitem_hint_about = Visar information om GCViewer
+
+main_frame_menuitem_hint_add_file = L\u00E4gg till en vy till nuvarande f\u00F6nster
+
+main_frame_menuitem_hint_antialias = Anv\u00E4nd linjeutj\u00E4mning (antialias) vid linjerendering (kan p\u00E5verka renderingstiden avsev\u00E4rt)
+
+main_frame_menuitem_hint_arrange = Ordna alla f\u00F6nster
+
+main_frame_menuitem_hint_concurrent_collection_begin_end = Visa linjer f\u00F6r start (cyan) och slut (rosa) av varje concurrent collection cycle
+
+main_frame_menuitem_hint_enter_fullscreen = V\u00E4xlar till helsk\u00E4rmsl\u00E4ge
+
+main_frame_menuitem_hint_exit = Avslutar GCViewer
+
+main_frame_menuitem_hint_export = Sparar den \u00F6ppnade filen i ett valbart format
+
+main_frame_menuitem_hint_full_gc_lines = Visar linjer f\u00F6r varje full GC
+
+main_frame_menuitem_hint_gc_times_line = Visar en linje som anger hur l\u00E5ng tid en GC tog
+
+main_frame_menuitem_hint_gc_times_rectangles = Visar en fylld triangel f\u00F6r att indikera hur l\u00E5ng tid en GC tog
+
+main_frame_menuitem_hint_inc_gc_lines = Visar linje f\u00F6r varje inkrementell GC
+
+main_frame_menuitem_hint_initial_mark_level = Visar minnesanv\u00E4ndning vid initial-mark (bara f\u00F6r algoritmer med concurrent collections)
+
+main_frame_menuitem_hint_leave_fullscreen = V\u00E4xlar fr\u00E5n helsk\u00E4rmsl\u00E4ge
+
+main_frame_menuitem_hint_license = (sv) license information
+
+main_frame_menuitem_hint_open_file = \u00D6ppnar en fil
+
+main_frame_menuitem_hint_open_url = \u00D6ppnar en URL
+
+main_frame_menuitem_hint_readme = (sv) read various information about GCViewer
+
+main_frame_menuitem_hint_recent_files = \u00D6ppnar det senaste f\u00F6nstret
+
+main_frame_menuitem_hint_refresh = L\u00E4ser om den \u00F6ppnande filen
+
+main_frame_menuitem_hint_show_data_panel = Visar datapanel med detaljerad information om den \u00F6ppnade loggfilen
+
+main_frame_menuitem_hint_show_datestamps = Visar datapanel med detaljerad information om den \u00F6ppnade loggfilen
+
+main_frame_menuitem_hint_system_full_gc_lines = Visar linjer f\u00F6r varje system full GC
+
+main_frame_menuitem_hint_tenured_memory = Del av heapen som utg\u00F6r den \u00E4ldre (tenured) generationen
+
+main_frame_menuitem_hint_total_memory = Totalt minne allokerat f\u00F6r heap
+
+main_frame_menuitem_hint_used_memory = Visar hur mycket minne som \u00E4r allokerat av heapen
+
+main_frame_menuitem_hint_used_tenured_memory = Visar hur mycket minne som \u00E4r allokerat av heapen (\u00E4ldre (tenured) generationen)
+
+main_frame_menuitem_hint_used_young_memory = Visar hur mycket minne som \u00E4r allokerat av heapen (unga (young) generationen)
+
+main_frame_menuitem_hint_watch = Bevakar och laddar om nuvarande fil vid f\u00F6r\u00E4ndring
+
+main_frame_menuitem_hint_young_memory = Del av heapen som utg\u00F6r den unga (young) generationen
+
+main_frame_menuitem_inc_gc_lines = Inkrementell GC (linje)
+
+main_frame_menuitem_initial_mark_level = Initial mark-niv\u00E5
+
+main_frame_menuitem_leave_fullscreen = L\u00E4mna helsk\u00E4rmsl\u00E4ge
+
+main_frame_menuitem_license = (sv) License
+
+main_frame_menuitem_mnemonic_about = O
+
+main_frame_menuitem_mnemonic_add_file = L
+
+main_frame_menuitem_mnemonic_antialias = U
+
+main_frame_menuitem_mnemonic_arrange = O
+
+main_frame_menuitem_mnemonic_concurrent_collection_begin_end = C
+
+main_frame_menuitem_mnemonic_exit = X
+
+main_frame_menuitem_mnemonic_export = E
+
+main_frame_menuitem_mnemonic_full_gc_lines = F
+
+main_frame_menuitem_mnemonic_gc_times_line = T
+
+main_frame_menuitem_mnemonic_gc_times_rectangles = R
+
+main_frame_menuitem_mnemonic_inc_gc_lines = I
+
+main_frame_menuitem_mnemonic_initial_mark_level = M
+
+main_frame_menuitem_mnemonic_license = L
+
+main_frame_menuitem_mnemonic_open_file = O
+
+main_frame_menuitem_mnemonic_open_url = U
+
+main_frame_menuitem_mnemonic_readme = R
+
+main_frame_menuitem_mnemonic_recent_files = F
+
+main_frame_menuitem_mnemonic_refresh = m
+
+main_frame_menuitem_mnemonic_show_data_panel = D
+
+main_frame_menuitem_mnemonic_show_datastamps = S
+
+main_frame_menuitem_mnemonic_system_full_gc_lines = F
+
+main_frame_menuitem_mnemonic_tenured_memory = G
+
+main_frame_menuitem_mnemonic_total_memory = H
+
+main_frame_menuitem_mnemonic_used_memory = A
+
+main_frame_menuitem_mnemonic_used_tenured_memory = A
+
+main_frame_menuitem_mnemonic_used_young_memory = A
+
+main_frame_menuitem_mnemonic_watch = W
+
+main_frame_menuitem_mnemonic_young_memory = Y
+
+main_frame_menuitem_open_file = \u00D6ppna
+
+main_frame_menuitem_open_url = \u00D6ppna URL
+
+main_frame_menuitem_readme = Readme
+
+main_frame_menuitem_recent_files = Senaste filerna
+
+main_frame_menuitem_refresh = Oml\u00E4sning
+
+main_frame_menuitem_show_data_panel = Datapanel
+
+main_frame_menuitem_show_datestamps = (sv)show datestamps
+
+main_frame_menuitem_system_full_gc_lines = System Full GC (linje)
+
+main_frame_menuitem_tenured_memory = \u00C4ldre (Tenured) generationen
+
+main_frame_menuitem_total_memory = Total storlek p\u00E5 heap
+
+main_frame_menuitem_used_memory = Anv\u00E4nt minne
+
+main_frame_menuitem_used_tenured_memory = Anv\u00E4nt \u00E4ldre minne
+
+main_frame_menuitem_used_young_memory = Anv\u00E4nt yngre (young) minne
+
+main_frame_menuitem_watch = Bevaka
+
+main_frame_menuitem_young_memory = Yngre (Young) generationen
+
+timeoffset_prompt = Logg-starttid:
+
+urlopen_dialog_add_checkbox = L\u00E4gg till URL till aktuellt f\u00F6nster
+
+urlopen_dialog_hint_add_checkbox = Vid markering s\u00E5 kommer det nya dokumentett att l\u00E4ggas
till i aktuellt f\u00F6nster, annars \u00F6ppnas ett nytt
+
+urlopen_dialog_title = \u00D6ppna GC-URL
diff --git a/src/test/resources/openjdk/SampleSun1_5_0SystemFullGC.txt b/src/test/resources/openjdk/SampleSun1_5_0SystemFullGC.txt
new file mode 100644
index 00000000..3fe7609f
--- /dev/null
+++ b/src/test/resources/openjdk/SampleSun1_5_0SystemFullGC.txt
@@ -0,0 +1,10 @@
+2143.450: [Full GC 2149.451: [CMS: 2402022K->1313091K(3145727K), 3.2893700 secs] 2720165K->1313091K(5009911K), [CMS Perm : 145444K->145404K(262142K)], 3.2895340 secs] [Times: user=2.27 sys=0.02, real=2.23 secs]
+3143.450: [Full GC (System) 2149.451: [CMS: 2402022K->1313091K(3145727K), 3.2893700 secs] 2720165K->1313091K(5009911K), [CMS Perm : 145444K->145404K(262142K)], 3.2895340 secs] [Times: user=2.27 sys=0.02, real=2.23 secs]
+4143.450: [Full GC 2149.451: [CMS: 2402022K->1313091K(3145727K), 3.2893700 secs] 2720165K->1313091K(5009911K), [CMS Perm : 145444K->145404K(262142K)], 3.2895340 secs] [Times: user=2.27 sys=0.02, real=2.23 secs]
+5143.450: [Full GC 2149.451: [CMS: 2402022K->1313091K(3145727K), 3.2893700 secs] 2720165K->1313091K(5009911K), [CMS Perm : 145444K->145404K(262142K)], 3.2895340 secs] [Times: user=2.27 sys=0.02, real=2.23 secs]
+6143.450: [Full GC (System) 2149.451: [CMS: 2402022K->1313091K(3145727K), 3.2893700 secs] 2720165K->1313091K(5009911K), [CMS Perm : 145444K->145404K(262142K)], 3.2895340 secs] [Times: user=2.27 sys=0.02, real=2.23 secs]
+7143.450: [Full GC 2149.451: [CMS: 2402022K->1313091K(3145727K), 3.2893700 secs] 2720165K->1313091K(5009911K), [CMS Perm : 145444K->145404K(262142K)], 3.2895340 secs] [Times: user=2.27 sys=0.02, real=2.23 secs]
+8143.450: [Full GC 2149.451: [CMS: 2402022K->1313091K(3145727K), 3.2893700 secs] 2720165K->1313091K(5009911K), [CMS Perm : 145444K->145404K(262142K)], 3.2895340 secs] [Times: user=2.27 sys=0.02, real=2.23 secs]
+9143.450: [Full GC (System) 2149.451: [CMS: 2402022K->1313091K(3145727K), 3.2893700 secs] 2720165K->1313091K(5009911K), [CMS Perm : 145444K->145404K(262142K)], 3.2895340 secs] [Times: user=2.27 sys=0.02, real=2.23 secs]
+10143.450: [Full GC 2149.451: [CMS: 2402022K->1313091K(3145727K), 3.2893700 secs] 2720165K->1313091K(5009911K), [CMS Perm : 145444K->145404K(262142K)], 3.2895340 secs] [Times: user=2.27 sys=0.02, real=2.23 secs]
+