Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@
import com.tagtraum.perf.gcviewer.view.GCViewerGui;
import com.tagtraum.perf.gcviewer.view.GCViewerGuiMenuBar;
import com.tagtraum.perf.gcviewer.view.model.RecentGCResourcesModel;
import com.tagtraum.perf.gcviewer.view.model.StayOpenCheckBoxMenuItem;

import javax.swing.*;
import java.awt.dnd.DnDConstants;
import java.awt.dnd.DropTarget;
import java.awt.event.ActionListener;
Expand Down Expand Up @@ -98,12 +98,12 @@ private RecentGCResourcesModel getRecentGCResourcesModel() {
}

private ViewMenuController getViewMenuController() {
Map<String, JCheckBoxMenuItem> viewMenuItems
Map<String, StayOpenCheckBoxMenuItem> viewMenuItems
= ((GCViewerGuiMenuBar) this.gcViewerGui.getJMenuBar()).getViewMenuItems();

assert viewMenuItems.size() > 0 : "viewMenuItems is not initialised!!";

JCheckBoxMenuItem menuItem = viewMenuItems.values().iterator().next();
StayOpenCheckBoxMenuItem menuItem = viewMenuItems.values().iterator().next();
for (ActionListener actionListener : menuItem.getActionListeners()) {
if (actionListener instanceof ViewMenuController) {
return (ViewMenuController) actionListener;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@
import java.util.TreeMap;

import javax.swing.Action;
import javax.swing.JCheckBoxMenuItem;
import javax.swing.JComboBox;
import javax.swing.JDesktopPane;
import javax.swing.JToggleButton;
Expand All @@ -34,6 +33,7 @@
import com.tagtraum.perf.gcviewer.view.GCViewerGuiToolBar;
import com.tagtraum.perf.gcviewer.view.RecentGCResourcesMenu;
import com.tagtraum.perf.gcviewer.view.model.GCPreferences;
import com.tagtraum.perf.gcviewer.view.model.StayOpenCheckBoxMenuItem;
import com.tagtraum.perf.gcviewer.view.renderer.ConcurrentGcBegionEndRenderer;
import com.tagtraum.perf.gcviewer.view.renderer.FullGCLineRenderer;
import com.tagtraum.perf.gcviewer.view.renderer.GCRectanglesRenderer;
Expand Down Expand Up @@ -134,7 +134,7 @@ private GCViewerGuiMenuBar initMenuBar(Map<String, Action> actions,
menuBar.addToFileMenu(recentResourceNamesMenu);
menuBar.addToFileMenu(actions.get(ActionCommands.EXPORT.toString()));
menuBar.addToFileMenu(actions.get(ActionCommands.REFRESH.toString()));
menuBar.addToFileMenu(new JCheckBoxMenuItem(actions.get(ActionCommands.WATCH.toString())));
menuBar.addToFileMenu(new StayOpenCheckBoxMenuItem(actions.get(ActionCommands.WATCH.toString())));
if ( ! OSXSupport.isOSX()) {
menuBar.addToFileMenu(actions.get(ActionCommands.EXIT.toString()));
}
Expand All @@ -144,7 +144,7 @@ private GCViewerGuiMenuBar initMenuBar(Map<String, Action> actions,
recentResourceNamesMenu.getRecentResourceNamesModel().addRecentResourceNamesListener(recentResourceNamesMenuController);

// view menu
JCheckBoxMenuItem menuItemShowModelMetricsPanel = new JCheckBoxMenuItem(LocalisationHelper.getString("main_frame_menuitem_show_data_panel"), true);
StayOpenCheckBoxMenuItem menuItemShowModelMetricsPanel = new StayOpenCheckBoxMenuItem(LocalisationHelper.getString("main_frame_menuitem_show_data_panel"), true);
menuItemShowModelMetricsPanel.setMnemonic(LocalisationHelper.getString("main_frame_menuitem_mnemonic_show_data_panel").charAt(0));
menuItemShowModelMetricsPanel.setIcon(ImageHelper.createEmptyImageIcon(20, 20));
menuItemShowModelMetricsPanel.setToolTipText(LocalisationHelper.getString("main_frame_menuitem_hint_show_data_panel"));
Expand All @@ -153,7 +153,7 @@ private GCViewerGuiMenuBar initMenuBar(Map<String, Action> actions,
menuBar.addToViewMenu(GCPreferences.SHOW_MODEL_METRICS_PANEL, menuItemShowModelMetricsPanel);
menuBar.addSeparatorToViewMenu();

JCheckBoxMenuItem menuItemShowDateStamp = new JCheckBoxMenuItem(LocalisationHelper.getString("main_frame_menuitem_show_date_stamp"), true);
StayOpenCheckBoxMenuItem menuItemShowDateStamp = new StayOpenCheckBoxMenuItem(LocalisationHelper.getString("main_frame_menuitem_show_date_stamp"), true);
menuItemShowDateStamp.setMnemonic(LocalisationHelper.getString("main_frame_menuitem_mnemonic_show_date_stamp").charAt(0));
menuItemShowDateStamp.setIcon(ImageHelper.createEmptyImageIcon(20, 20));
menuItemShowDateStamp.setToolTipText(LocalisationHelper.getString("main_frame_menuitem_hint_show_date_stamp"));
Expand All @@ -162,7 +162,7 @@ private GCViewerGuiMenuBar initMenuBar(Map<String, Action> actions,
menuBar.addToViewMenu(GCPreferences.SHOW_DATE_STAMP, menuItemShowDateStamp);
menuBar.addSeparatorToViewMenu();

JCheckBoxMenuItem menuItemAntiAlias = new JCheckBoxMenuItem(LocalisationHelper.getString("main_frame_menuitem_antialias"), true);
StayOpenCheckBoxMenuItem menuItemAntiAlias = new StayOpenCheckBoxMenuItem(LocalisationHelper.getString("main_frame_menuitem_antialias"), true);
menuItemAntiAlias.setMnemonic(LocalisationHelper.getString("main_frame_menuitem_mnemonic_antialias").charAt(0));
menuItemAntiAlias.setIcon(ImageHelper.createEmptyImageIcon(20, 20));
menuItemAntiAlias.setToolTipText(LocalisationHelper.getString("main_frame_menuitem_hint_antialias"));
Expand All @@ -171,95 +171,95 @@ private GCViewerGuiMenuBar initMenuBar(Map<String, Action> actions,
menuBar.addToViewMenu(GCPreferences.ANTI_ALIAS, menuItemAntiAlias);
menuBar.addSeparatorToViewMenu();

JCheckBoxMenuItem menuItemFullGCLines = new JCheckBoxMenuItem(LocalisationHelper.getString("main_frame_menuitem_full_gc_lines"), true);
StayOpenCheckBoxMenuItem menuItemFullGCLines = new StayOpenCheckBoxMenuItem(LocalisationHelper.getString("main_frame_menuitem_full_gc_lines"), true);
menuItemFullGCLines.setMnemonic(LocalisationHelper.getString("main_frame_menuitem_mnemonic_full_gc_lines").charAt(0));
menuItemFullGCLines.setToolTipText(LocalisationHelper.getString("main_frame_menuitem_hint_full_gc_lines"));
menuItemFullGCLines.setIcon(ImageHelper.createMonoColoredImageIcon(FullGCLineRenderer.DEFAULT_LINEPAINT, 20, 20));
menuItemFullGCLines.setActionCommand(GCPreferences.FULL_GC_LINES);
menuItemFullGCLines.addActionListener(viewMenuController);
menuBar.addToViewMenu(GCPreferences.FULL_GC_LINES, menuItemFullGCLines);

JCheckBoxMenuItem menuItemIncGCLines = new JCheckBoxMenuItem(LocalisationHelper.getString("main_frame_menuitem_inc_gc_lines"), true);
StayOpenCheckBoxMenuItem menuItemIncGCLines = new StayOpenCheckBoxMenuItem(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"));
menuItemIncGCLines.setIcon(ImageHelper.createMonoColoredImageIcon(IncLineRenderer.DEFAULT_LINEPAINT, 20, 20));
menuItemIncGCLines.setActionCommand(GCPreferences.INC_GC_LINES);
menuItemIncGCLines.addActionListener(viewMenuController);
menuBar.addToViewMenu(GCPreferences.INC_GC_LINES, menuItemIncGCLines);

JCheckBoxMenuItem menuItemGcTimesLine = new JCheckBoxMenuItem(LocalisationHelper.getString("main_frame_menuitem_gc_times_line"), true);
StayOpenCheckBoxMenuItem menuItemGcTimesLine = new StayOpenCheckBoxMenuItem(LocalisationHelper.getString("main_frame_menuitem_gc_times_line"), true);
menuItemGcTimesLine.setMnemonic(LocalisationHelper.getString("main_frame_menuitem_mnemonic_gc_times_line").charAt(0));
menuItemGcTimesLine.setToolTipText(LocalisationHelper.getString("main_frame_menuitem_hint_gc_times_line"));
menuItemGcTimesLine.setIcon(ImageHelper.createMonoColoredImageIcon(GCTimesRenderer.DEFAULT_LINEPAINT, 20, 20));
menuItemGcTimesLine.setActionCommand(GCPreferences.GC_TIMES_LINE);
menuItemGcTimesLine.addActionListener(viewMenuController);
menuBar.addToViewMenu(GCPreferences.GC_TIMES_LINE, menuItemGcTimesLine);

JCheckBoxMenuItem menuItemGcTimesRectangle = new JCheckBoxMenuItem(LocalisationHelper.getString("main_frame_menuitem_gc_times_rectangles"), true);
StayOpenCheckBoxMenuItem menuItemGcTimesRectangle = new StayOpenCheckBoxMenuItem(LocalisationHelper.getString("main_frame_menuitem_gc_times_rectangles"), true);
menuItemGcTimesRectangle.setMnemonic(LocalisationHelper.getString("main_frame_menuitem_mnemonic_gc_times_rectangles").charAt(0));
menuItemGcTimesRectangle.setToolTipText(LocalisationHelper.getString("main_frame_menuitem_hint_gc_times_rectangles"));
menuItemGcTimesRectangle.setIcon(ImageHelper.createMonoColoredImageIcon(GCRectanglesRenderer.DEFAULT_LINEPAINT, 20, 20));
menuItemGcTimesRectangle.setActionCommand(GCPreferences.GC_TIMES_RECTANGLES);
menuItemGcTimesRectangle.addActionListener(viewMenuController);
menuBar.addToViewMenu(GCPreferences.GC_TIMES_RECTANGLES, menuItemGcTimesRectangle);

JCheckBoxMenuItem menuItemTotalMemory = new JCheckBoxMenuItem(LocalisationHelper.getString("main_frame_menuitem_total_memory"), true);
StayOpenCheckBoxMenuItem menuItemTotalMemory = new StayOpenCheckBoxMenuItem(LocalisationHelper.getString("main_frame_menuitem_total_memory"), true);
menuItemTotalMemory.setMnemonic(LocalisationHelper.getString("main_frame_menuitem_mnemonic_total_memory").charAt(0));
menuItemTotalMemory.setToolTipText(LocalisationHelper.getString("main_frame_menuitem_hint_total_memory"));
menuItemTotalMemory.setIcon(ImageHelper.createMonoColoredImageIcon(TotalHeapRenderer.DEFAULT_LINEPAINT, 20, 20));
menuItemTotalMemory.setActionCommand(GCPreferences.TOTAL_MEMORY);
menuItemTotalMemory.addActionListener(viewMenuController);
menuBar.addToViewMenu(GCPreferences.TOTAL_MEMORY, menuItemTotalMemory);

JCheckBoxMenuItem menuItemTenuredMemory = new JCheckBoxMenuItem(LocalisationHelper.getString("main_frame_menuitem_tenured_memory"), true);
StayOpenCheckBoxMenuItem menuItemTenuredMemory = new StayOpenCheckBoxMenuItem(LocalisationHelper.getString("main_frame_menuitem_tenured_memory"), true);
menuItemTenuredMemory.setMnemonic(LocalisationHelper.getString("main_frame_menuitem_mnemonic_tenured_memory").charAt(0));
menuItemTenuredMemory.setToolTipText(LocalisationHelper.getString("main_frame_menuitem_hint_tenured_memory"));
menuItemTenuredMemory.setIcon(ImageHelper.createMonoColoredImageIcon(TotalTenuredRenderer.DEFAULT_LINEPAINT, 20, 20));
menuItemTenuredMemory.setActionCommand(GCPreferences.TENURED_MEMORY);
menuItemTenuredMemory.addActionListener(viewMenuController);
menuBar.addToViewMenu(GCPreferences.TENURED_MEMORY, menuItemTenuredMemory);

JCheckBoxMenuItem menuItemYoungMemory = new JCheckBoxMenuItem(LocalisationHelper.getString("main_frame_menuitem_young_memory"), true);
StayOpenCheckBoxMenuItem menuItemYoungMemory = new StayOpenCheckBoxMenuItem(LocalisationHelper.getString("main_frame_menuitem_young_memory"), true);
menuItemYoungMemory.setMnemonic(LocalisationHelper.getString("main_frame_menuitem_mnemonic_young_memory").charAt(0));
menuItemYoungMemory.setToolTipText(LocalisationHelper.getString("main_frame_menuitem_hint_young_memory"));
menuItemYoungMemory.setIcon(ImageHelper.createMonoColoredImageIcon(TotalYoungRenderer.DEFAULT_LINEPAINT, 20, 20));
menuItemYoungMemory.setActionCommand(GCPreferences.YOUNG_MEMORY);
menuItemYoungMemory.addActionListener(viewMenuController);
menuBar.addToViewMenu(GCPreferences.YOUNG_MEMORY, menuItemYoungMemory);

JCheckBoxMenuItem menuItemUsedMemory = new JCheckBoxMenuItem(LocalisationHelper.getString("main_frame_menuitem_used_memory"), true);
StayOpenCheckBoxMenuItem menuItemUsedMemory = new StayOpenCheckBoxMenuItem(LocalisationHelper.getString("main_frame_menuitem_used_memory"), true);
menuItemUsedMemory.setMnemonic(LocalisationHelper.getString("main_frame_menuitem_mnemonic_used_memory").charAt(0));
menuItemUsedMemory.setToolTipText(LocalisationHelper.getString("main_frame_menuitem_hint_used_memory"));
menuItemUsedMemory.setIcon(ImageHelper.createMonoColoredImageIcon(UsedHeapRenderer.DEFAULT_LINEPAINT, 20, 20));
menuItemUsedMemory.setActionCommand(GCPreferences.USED_MEMORY);
menuItemUsedMemory.addActionListener(viewMenuController);
menuBar.addToViewMenu(GCPreferences.USED_MEMORY, menuItemUsedMemory);

JCheckBoxMenuItem menuItemUsedTenuredMemory = new JCheckBoxMenuItem(LocalisationHelper.getString("main_frame_menuitem_used_tenured_memory"), true);
StayOpenCheckBoxMenuItem menuItemUsedTenuredMemory = new StayOpenCheckBoxMenuItem(LocalisationHelper.getString("main_frame_menuitem_used_tenured_memory"), true);
menuItemUsedTenuredMemory.setMnemonic(LocalisationHelper.getString("main_frame_menuitem_mnemonic_used_tenured_memory").charAt(0));
menuItemUsedTenuredMemory.setToolTipText(LocalisationHelper.getString("main_frame_menuitem_hint_used_tenured_memory"));
menuItemUsedTenuredMemory.setIcon(ImageHelper.createMonoColoredImageIcon(UsedTenuredRenderer.DEFAULT_LINEPAINT, 20, 20));
menuItemUsedTenuredMemory.setActionCommand(GCPreferences.USED_TENURED_MEMORY);
menuItemUsedTenuredMemory.addActionListener(viewMenuController);
menuBar.addToViewMenu(GCPreferences.USED_TENURED_MEMORY, menuItemUsedTenuredMemory);

JCheckBoxMenuItem menuItemUsedYoungMemory = new JCheckBoxMenuItem(LocalisationHelper.getString("main_frame_menuitem_used_young_memory"), true);
StayOpenCheckBoxMenuItem menuItemUsedYoungMemory = new StayOpenCheckBoxMenuItem(LocalisationHelper.getString("main_frame_menuitem_used_young_memory"), true);
menuItemUsedYoungMemory.setMnemonic(LocalisationHelper.getString("main_frame_menuitem_mnemonic_used_young_memory").charAt(0));
menuItemUsedYoungMemory.setToolTipText(LocalisationHelper.getString("main_frame_menuitem_hint_used_young_memory"));
menuItemUsedYoungMemory.setIcon(ImageHelper.createMonoColoredImageIcon(UsedYoungRenderer.DEFAULT_LINEPAINT, 20, 20));
menuItemUsedYoungMemory.setActionCommand(GCPreferences.USED_YOUNG_MEMORY);
menuItemUsedYoungMemory.addActionListener(viewMenuController);
menuBar.addToViewMenu(GCPreferences.USED_YOUNG_MEMORY, menuItemUsedYoungMemory);

JCheckBoxMenuItem menuItemInitialMarkLevel = new JCheckBoxMenuItem(LocalisationHelper.getString("main_frame_menuitem_initial_mark_level"), true);
StayOpenCheckBoxMenuItem menuItemInitialMarkLevel = new StayOpenCheckBoxMenuItem(LocalisationHelper.getString("main_frame_menuitem_initial_mark_level"), true);
menuItemInitialMarkLevel.setMnemonic(LocalisationHelper.getString("main_frame_menuitem_mnemonic_initial_mark_level").charAt(0));
menuItemInitialMarkLevel.setToolTipText(LocalisationHelper.getString("main_frame_menuitem_hint_initial_mark_level"));
menuItemInitialMarkLevel.setIcon(ImageHelper.createMonoColoredImageIcon(InitialMarkLevelRenderer.DEFAULT_LINEPAINT, 20, 20));
menuItemInitialMarkLevel.setActionCommand(GCPreferences.INITIAL_MARK_LEVEL);
menuItemInitialMarkLevel.addActionListener(viewMenuController);
menuBar.addToViewMenu(GCPreferences.INITIAL_MARK_LEVEL, menuItemInitialMarkLevel);

JCheckBoxMenuItem menuItemConcurrentGcBeginEnd = new JCheckBoxMenuItem(LocalisationHelper.getString("main_frame_menuitem_concurrent_collection_begin_end"), true);
StayOpenCheckBoxMenuItem menuItemConcurrentGcBeginEnd = new StayOpenCheckBoxMenuItem(LocalisationHelper.getString("main_frame_menuitem_concurrent_collection_begin_end"), true);
menuItemConcurrentGcBeginEnd.setMnemonic(LocalisationHelper.getString("main_frame_menuitem_mnemonic_concurrent_collection_begin_end").charAt(0));
menuItemConcurrentGcBeginEnd.setToolTipText(LocalisationHelper.getString("main_frame_menuitem_hint_concurrent_collection_begin_end"));
menuItemConcurrentGcBeginEnd.setIcon(ImageHelper.createMonoColoredImageIcon(ConcurrentGcBegionEndRenderer.CONCURRENT_COLLECTION_BEGIN, 20, 20));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
import java.util.List;
import java.util.Map.Entry;

import javax.swing.JCheckBoxMenuItem;

import javax.swing.JInternalFrame;
import javax.swing.SwingUtilities;

Expand All @@ -21,6 +21,7 @@
import com.tagtraum.perf.gcviewer.view.GCViewerGuiMenuBar;
import com.tagtraum.perf.gcviewer.view.model.GCPreferences;
import com.tagtraum.perf.gcviewer.view.model.GCResourceGroup;
import com.tagtraum.perf.gcviewer.view.model.StayOpenCheckBoxMenuItem;

/**
* Main controller class of GCViewer.
Expand All @@ -34,8 +35,8 @@ void applyPreferences(GCViewerGui gui, GCPreferences preferences) {
// default visibility to be able to access it from unittests
gui.setPreferences(preferences);
if (preferences.isPropertiesLoaded()) {
for (Entry<String, JCheckBoxMenuItem> menuEntry : ((GCViewerGuiMenuBar)gui.getJMenuBar()).getViewMenuItems().entrySet()) {
JCheckBoxMenuItem item = menuEntry.getValue();
for (Entry<String, StayOpenCheckBoxMenuItem> menuEntry : ((GCViewerGuiMenuBar)gui.getJMenuBar()).getViewMenuItems().entrySet()) {
StayOpenCheckBoxMenuItem item = menuEntry.getValue();
item.setState(preferences.getGcLineProperty(menuEntry.getKey()));

// TODO necessary? state is set above; no GCDocument open at this moment
Expand Down Expand Up @@ -84,8 +85,8 @@ private void closeAllButSelectedDocument(GCViewerGui gui) {
*/
private GCPreferences copyPreferencesFromGui(GCViewerGui gui) {
GCPreferences preferences = gui.getPreferences();
for (Entry<String, JCheckBoxMenuItem> menuEntry : ((GCViewerGuiMenuBar)gui.getJMenuBar()).getViewMenuItems().entrySet()) {
JCheckBoxMenuItem item = menuEntry.getValue();
for (Entry<String, StayOpenCheckBoxMenuItem> menuEntry : ((GCViewerGuiMenuBar)gui.getJMenuBar()).getViewMenuItems().entrySet()) {
StayOpenCheckBoxMenuItem item = menuEntry.getValue();
preferences.setGcLineProperty(item.getActionCommand(), item.getState());
}
preferences.setWindowWidth(gui.getWidth());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
import java.util.Map.Entry;

import javax.swing.Action;
import javax.swing.JCheckBoxMenuItem;

import javax.swing.JInternalFrame;
import javax.swing.JMenu;
import javax.swing.JMenuItem;
Expand All @@ -18,6 +18,7 @@
import com.tagtraum.perf.gcviewer.view.GCViewerGuiMenuBar;
import com.tagtraum.perf.gcviewer.view.GCViewerGuiToolBar;
import com.tagtraum.perf.gcviewer.view.model.GCPreferences;
import com.tagtraum.perf.gcviewer.view.model.StayOpenCheckBoxMenuItem;

/**
* Controller class for internal frames of {@link GCViewerGui}.
Expand All @@ -29,7 +30,7 @@ public class GCViewerGuiInternalFrameController extends InternalFrameAdapter {

@Override
public void internalFrameOpened(InternalFrameEvent e) {
JCheckBoxMenuItem menuItem = new JCheckBoxMenuItem(new WindowMenuItemAction(e));
StayOpenCheckBoxMenuItem menuItem = new StayOpenCheckBoxMenuItem(new WindowMenuItemAction(e));

getMenuBar(e).addToWindowMenuGroup(menuItem);
}
Expand Down Expand Up @@ -126,8 +127,8 @@ private void updateMenuItemState(InternalFrameEvent e) {
getToolBar(e).getZoomComboBox().setSelectedItem(
(int) (getSelectedGCDocument(e).getModelChart().getScaleFactor() * 1000.0) + "%");
GCPreferences preferences = getSelectedGCDocument(e).getPreferences();
for (Entry<String, JCheckBoxMenuItem> menuEntry : getMenuBar(e).getViewMenuItems().entrySet()) {
JCheckBoxMenuItem item = menuEntry.getValue();
for (Entry<String, StayOpenCheckBoxMenuItem> menuEntry : getMenuBar(e).getViewMenuItems().entrySet()) {
StayOpenCheckBoxMenuItem item = menuEntry.getValue();
item.setState(preferences.getGcLineProperty(menuEntry.getKey()));
}
}
Expand Down
Loading