77import java .util .TreeMap ;
88
99import javax .swing .Action ;
10- import javax .swing .JCheckBoxMenuItem ;
1110import javax .swing .JComboBox ;
1211import javax .swing .JDesktopPane ;
1312import javax .swing .JToggleButton ;
3433import com .tagtraum .perf .gcviewer .view .GCViewerGuiToolBar ;
3534import com .tagtraum .perf .gcviewer .view .RecentGCResourcesMenu ;
3635import com .tagtraum .perf .gcviewer .view .model .GCPreferences ;
36+ import com .tagtraum .perf .gcviewer .view .model .StayOpenCheckBoxMenuItem ;
3737import com .tagtraum .perf .gcviewer .view .renderer .ConcurrentGcBegionEndRenderer ;
3838import com .tagtraum .perf .gcviewer .view .renderer .FullGCLineRenderer ;
3939import com .tagtraum .perf .gcviewer .view .renderer .GCRectanglesRenderer ;
@@ -134,7 +134,7 @@ private GCViewerGuiMenuBar initMenuBar(Map<String, Action> actions,
134134 menuBar .addToFileMenu (recentResourceNamesMenu );
135135 menuBar .addToFileMenu (actions .get (ActionCommands .EXPORT .toString ()));
136136 menuBar .addToFileMenu (actions .get (ActionCommands .REFRESH .toString ()));
137- menuBar .addToFileMenu (new JCheckBoxMenuItem (actions .get (ActionCommands .WATCH .toString ())));
137+ menuBar .addToFileMenu (new StayOpenCheckBoxMenuItem (actions .get (ActionCommands .WATCH .toString ())));
138138 if ( ! OSXSupport .isOSX ()) {
139139 menuBar .addToFileMenu (actions .get (ActionCommands .EXIT .toString ()));
140140 }
@@ -144,7 +144,7 @@ private GCViewerGuiMenuBar initMenuBar(Map<String, Action> actions,
144144 recentResourceNamesMenu .getRecentResourceNamesModel ().addRecentResourceNamesListener (recentResourceNamesMenuController );
145145
146146 // view menu
147- JCheckBoxMenuItem menuItemShowModelMetricsPanel = new JCheckBoxMenuItem (LocalisationHelper .getString ("main_frame_menuitem_show_data_panel" ), true );
147+ StayOpenCheckBoxMenuItem menuItemShowModelMetricsPanel = new StayOpenCheckBoxMenuItem (LocalisationHelper .getString ("main_frame_menuitem_show_data_panel" ), true );
148148 menuItemShowModelMetricsPanel .setMnemonic (LocalisationHelper .getString ("main_frame_menuitem_mnemonic_show_data_panel" ).charAt (0 ));
149149 menuItemShowModelMetricsPanel .setIcon (ImageHelper .createEmptyImageIcon (20 , 20 ));
150150 menuItemShowModelMetricsPanel .setToolTipText (LocalisationHelper .getString ("main_frame_menuitem_hint_show_data_panel" ));
@@ -153,7 +153,7 @@ private GCViewerGuiMenuBar initMenuBar(Map<String, Action> actions,
153153 menuBar .addToViewMenu (GCPreferences .SHOW_MODEL_METRICS_PANEL , menuItemShowModelMetricsPanel );
154154 menuBar .addSeparatorToViewMenu ();
155155
156- JCheckBoxMenuItem menuItemShowDateStamp = new JCheckBoxMenuItem (LocalisationHelper .getString ("main_frame_menuitem_show_date_stamp" ), true );
156+ StayOpenCheckBoxMenuItem menuItemShowDateStamp = new StayOpenCheckBoxMenuItem (LocalisationHelper .getString ("main_frame_menuitem_show_date_stamp" ), true );
157157 menuItemShowDateStamp .setMnemonic (LocalisationHelper .getString ("main_frame_menuitem_mnemonic_show_date_stamp" ).charAt (0 ));
158158 menuItemShowDateStamp .setIcon (ImageHelper .createEmptyImageIcon (20 , 20 ));
159159 menuItemShowDateStamp .setToolTipText (LocalisationHelper .getString ("main_frame_menuitem_hint_show_date_stamp" ));
@@ -162,7 +162,7 @@ private GCViewerGuiMenuBar initMenuBar(Map<String, Action> actions,
162162 menuBar .addToViewMenu (GCPreferences .SHOW_DATE_STAMP , menuItemShowDateStamp );
163163 menuBar .addSeparatorToViewMenu ();
164164
165- JCheckBoxMenuItem menuItemAntiAlias = new JCheckBoxMenuItem (LocalisationHelper .getString ("main_frame_menuitem_antialias" ), true );
165+ StayOpenCheckBoxMenuItem menuItemAntiAlias = new StayOpenCheckBoxMenuItem (LocalisationHelper .getString ("main_frame_menuitem_antialias" ), true );
166166 menuItemAntiAlias .setMnemonic (LocalisationHelper .getString ("main_frame_menuitem_mnemonic_antialias" ).charAt (0 ));
167167 menuItemAntiAlias .setIcon (ImageHelper .createEmptyImageIcon (20 , 20 ));
168168 menuItemAntiAlias .setToolTipText (LocalisationHelper .getString ("main_frame_menuitem_hint_antialias" ));
@@ -171,95 +171,95 @@ private GCViewerGuiMenuBar initMenuBar(Map<String, Action> actions,
171171 menuBar .addToViewMenu (GCPreferences .ANTI_ALIAS , menuItemAntiAlias );
172172 menuBar .addSeparatorToViewMenu ();
173173
174- JCheckBoxMenuItem menuItemFullGCLines = new JCheckBoxMenuItem (LocalisationHelper .getString ("main_frame_menuitem_full_gc_lines" ), true );
174+ StayOpenCheckBoxMenuItem menuItemFullGCLines = new StayOpenCheckBoxMenuItem (LocalisationHelper .getString ("main_frame_menuitem_full_gc_lines" ), true );
175175 menuItemFullGCLines .setMnemonic (LocalisationHelper .getString ("main_frame_menuitem_mnemonic_full_gc_lines" ).charAt (0 ));
176176 menuItemFullGCLines .setToolTipText (LocalisationHelper .getString ("main_frame_menuitem_hint_full_gc_lines" ));
177177 menuItemFullGCLines .setIcon (ImageHelper .createMonoColoredImageIcon (FullGCLineRenderer .DEFAULT_LINEPAINT , 20 , 20 ));
178178 menuItemFullGCLines .setActionCommand (GCPreferences .FULL_GC_LINES );
179179 menuItemFullGCLines .addActionListener (viewMenuController );
180180 menuBar .addToViewMenu (GCPreferences .FULL_GC_LINES , menuItemFullGCLines );
181181
182- JCheckBoxMenuItem menuItemIncGCLines = new JCheckBoxMenuItem (LocalisationHelper .getString ("main_frame_menuitem_inc_gc_lines" ), true );
182+ StayOpenCheckBoxMenuItem menuItemIncGCLines = new StayOpenCheckBoxMenuItem (LocalisationHelper .getString ("main_frame_menuitem_inc_gc_lines" ), true );
183183 menuItemIncGCLines .setMnemonic (LocalisationHelper .getString ("main_frame_menuitem_mnemonic_inc_gc_lines" ).charAt (0 ));
184184 menuItemIncGCLines .setToolTipText (LocalisationHelper .getString ("main_frame_menuitem_hint_inc_gc_lines" ));
185185 menuItemIncGCLines .setIcon (ImageHelper .createMonoColoredImageIcon (IncLineRenderer .DEFAULT_LINEPAINT , 20 , 20 ));
186186 menuItemIncGCLines .setActionCommand (GCPreferences .INC_GC_LINES );
187187 menuItemIncGCLines .addActionListener (viewMenuController );
188188 menuBar .addToViewMenu (GCPreferences .INC_GC_LINES , menuItemIncGCLines );
189189
190- JCheckBoxMenuItem menuItemGcTimesLine = new JCheckBoxMenuItem (LocalisationHelper .getString ("main_frame_menuitem_gc_times_line" ), true );
190+ StayOpenCheckBoxMenuItem menuItemGcTimesLine = new StayOpenCheckBoxMenuItem (LocalisationHelper .getString ("main_frame_menuitem_gc_times_line" ), true );
191191 menuItemGcTimesLine .setMnemonic (LocalisationHelper .getString ("main_frame_menuitem_mnemonic_gc_times_line" ).charAt (0 ));
192192 menuItemGcTimesLine .setToolTipText (LocalisationHelper .getString ("main_frame_menuitem_hint_gc_times_line" ));
193193 menuItemGcTimesLine .setIcon (ImageHelper .createMonoColoredImageIcon (GCTimesRenderer .DEFAULT_LINEPAINT , 20 , 20 ));
194194 menuItemGcTimesLine .setActionCommand (GCPreferences .GC_TIMES_LINE );
195195 menuItemGcTimesLine .addActionListener (viewMenuController );
196196 menuBar .addToViewMenu (GCPreferences .GC_TIMES_LINE , menuItemGcTimesLine );
197197
198- JCheckBoxMenuItem menuItemGcTimesRectangle = new JCheckBoxMenuItem (LocalisationHelper .getString ("main_frame_menuitem_gc_times_rectangles" ), true );
198+ StayOpenCheckBoxMenuItem menuItemGcTimesRectangle = new StayOpenCheckBoxMenuItem (LocalisationHelper .getString ("main_frame_menuitem_gc_times_rectangles" ), true );
199199 menuItemGcTimesRectangle .setMnemonic (LocalisationHelper .getString ("main_frame_menuitem_mnemonic_gc_times_rectangles" ).charAt (0 ));
200200 menuItemGcTimesRectangle .setToolTipText (LocalisationHelper .getString ("main_frame_menuitem_hint_gc_times_rectangles" ));
201201 menuItemGcTimesRectangle .setIcon (ImageHelper .createMonoColoredImageIcon (GCRectanglesRenderer .DEFAULT_LINEPAINT , 20 , 20 ));
202202 menuItemGcTimesRectangle .setActionCommand (GCPreferences .GC_TIMES_RECTANGLES );
203203 menuItemGcTimesRectangle .addActionListener (viewMenuController );
204204 menuBar .addToViewMenu (GCPreferences .GC_TIMES_RECTANGLES , menuItemGcTimesRectangle );
205205
206- JCheckBoxMenuItem menuItemTotalMemory = new JCheckBoxMenuItem (LocalisationHelper .getString ("main_frame_menuitem_total_memory" ), true );
206+ StayOpenCheckBoxMenuItem menuItemTotalMemory = new StayOpenCheckBoxMenuItem (LocalisationHelper .getString ("main_frame_menuitem_total_memory" ), true );
207207 menuItemTotalMemory .setMnemonic (LocalisationHelper .getString ("main_frame_menuitem_mnemonic_total_memory" ).charAt (0 ));
208208 menuItemTotalMemory .setToolTipText (LocalisationHelper .getString ("main_frame_menuitem_hint_total_memory" ));
209209 menuItemTotalMemory .setIcon (ImageHelper .createMonoColoredImageIcon (TotalHeapRenderer .DEFAULT_LINEPAINT , 20 , 20 ));
210210 menuItemTotalMemory .setActionCommand (GCPreferences .TOTAL_MEMORY );
211211 menuItemTotalMemory .addActionListener (viewMenuController );
212212 menuBar .addToViewMenu (GCPreferences .TOTAL_MEMORY , menuItemTotalMemory );
213213
214- JCheckBoxMenuItem menuItemTenuredMemory = new JCheckBoxMenuItem (LocalisationHelper .getString ("main_frame_menuitem_tenured_memory" ), true );
214+ StayOpenCheckBoxMenuItem menuItemTenuredMemory = new StayOpenCheckBoxMenuItem (LocalisationHelper .getString ("main_frame_menuitem_tenured_memory" ), true );
215215 menuItemTenuredMemory .setMnemonic (LocalisationHelper .getString ("main_frame_menuitem_mnemonic_tenured_memory" ).charAt (0 ));
216216 menuItemTenuredMemory .setToolTipText (LocalisationHelper .getString ("main_frame_menuitem_hint_tenured_memory" ));
217217 menuItemTenuredMemory .setIcon (ImageHelper .createMonoColoredImageIcon (TotalTenuredRenderer .DEFAULT_LINEPAINT , 20 , 20 ));
218218 menuItemTenuredMemory .setActionCommand (GCPreferences .TENURED_MEMORY );
219219 menuItemTenuredMemory .addActionListener (viewMenuController );
220220 menuBar .addToViewMenu (GCPreferences .TENURED_MEMORY , menuItemTenuredMemory );
221221
222- JCheckBoxMenuItem menuItemYoungMemory = new JCheckBoxMenuItem (LocalisationHelper .getString ("main_frame_menuitem_young_memory" ), true );
222+ StayOpenCheckBoxMenuItem menuItemYoungMemory = new StayOpenCheckBoxMenuItem (LocalisationHelper .getString ("main_frame_menuitem_young_memory" ), true );
223223 menuItemYoungMemory .setMnemonic (LocalisationHelper .getString ("main_frame_menuitem_mnemonic_young_memory" ).charAt (0 ));
224224 menuItemYoungMemory .setToolTipText (LocalisationHelper .getString ("main_frame_menuitem_hint_young_memory" ));
225225 menuItemYoungMemory .setIcon (ImageHelper .createMonoColoredImageIcon (TotalYoungRenderer .DEFAULT_LINEPAINT , 20 , 20 ));
226226 menuItemYoungMemory .setActionCommand (GCPreferences .YOUNG_MEMORY );
227227 menuItemYoungMemory .addActionListener (viewMenuController );
228228 menuBar .addToViewMenu (GCPreferences .YOUNG_MEMORY , menuItemYoungMemory );
229229
230- JCheckBoxMenuItem menuItemUsedMemory = new JCheckBoxMenuItem (LocalisationHelper .getString ("main_frame_menuitem_used_memory" ), true );
230+ StayOpenCheckBoxMenuItem menuItemUsedMemory = new StayOpenCheckBoxMenuItem (LocalisationHelper .getString ("main_frame_menuitem_used_memory" ), true );
231231 menuItemUsedMemory .setMnemonic (LocalisationHelper .getString ("main_frame_menuitem_mnemonic_used_memory" ).charAt (0 ));
232232 menuItemUsedMemory .setToolTipText (LocalisationHelper .getString ("main_frame_menuitem_hint_used_memory" ));
233233 menuItemUsedMemory .setIcon (ImageHelper .createMonoColoredImageIcon (UsedHeapRenderer .DEFAULT_LINEPAINT , 20 , 20 ));
234234 menuItemUsedMemory .setActionCommand (GCPreferences .USED_MEMORY );
235235 menuItemUsedMemory .addActionListener (viewMenuController );
236236 menuBar .addToViewMenu (GCPreferences .USED_MEMORY , menuItemUsedMemory );
237237
238- JCheckBoxMenuItem menuItemUsedTenuredMemory = new JCheckBoxMenuItem (LocalisationHelper .getString ("main_frame_menuitem_used_tenured_memory" ), true );
238+ StayOpenCheckBoxMenuItem menuItemUsedTenuredMemory = new StayOpenCheckBoxMenuItem (LocalisationHelper .getString ("main_frame_menuitem_used_tenured_memory" ), true );
239239 menuItemUsedTenuredMemory .setMnemonic (LocalisationHelper .getString ("main_frame_menuitem_mnemonic_used_tenured_memory" ).charAt (0 ));
240240 menuItemUsedTenuredMemory .setToolTipText (LocalisationHelper .getString ("main_frame_menuitem_hint_used_tenured_memory" ));
241241 menuItemUsedTenuredMemory .setIcon (ImageHelper .createMonoColoredImageIcon (UsedTenuredRenderer .DEFAULT_LINEPAINT , 20 , 20 ));
242242 menuItemUsedTenuredMemory .setActionCommand (GCPreferences .USED_TENURED_MEMORY );
243243 menuItemUsedTenuredMemory .addActionListener (viewMenuController );
244244 menuBar .addToViewMenu (GCPreferences .USED_TENURED_MEMORY , menuItemUsedTenuredMemory );
245245
246- JCheckBoxMenuItem menuItemUsedYoungMemory = new JCheckBoxMenuItem (LocalisationHelper .getString ("main_frame_menuitem_used_young_memory" ), true );
246+ StayOpenCheckBoxMenuItem menuItemUsedYoungMemory = new StayOpenCheckBoxMenuItem (LocalisationHelper .getString ("main_frame_menuitem_used_young_memory" ), true );
247247 menuItemUsedYoungMemory .setMnemonic (LocalisationHelper .getString ("main_frame_menuitem_mnemonic_used_young_memory" ).charAt (0 ));
248248 menuItemUsedYoungMemory .setToolTipText (LocalisationHelper .getString ("main_frame_menuitem_hint_used_young_memory" ));
249249 menuItemUsedYoungMemory .setIcon (ImageHelper .createMonoColoredImageIcon (UsedYoungRenderer .DEFAULT_LINEPAINT , 20 , 20 ));
250250 menuItemUsedYoungMemory .setActionCommand (GCPreferences .USED_YOUNG_MEMORY );
251251 menuItemUsedYoungMemory .addActionListener (viewMenuController );
252252 menuBar .addToViewMenu (GCPreferences .USED_YOUNG_MEMORY , menuItemUsedYoungMemory );
253253
254- JCheckBoxMenuItem menuItemInitialMarkLevel = new JCheckBoxMenuItem (LocalisationHelper .getString ("main_frame_menuitem_initial_mark_level" ), true );
254+ StayOpenCheckBoxMenuItem menuItemInitialMarkLevel = new StayOpenCheckBoxMenuItem (LocalisationHelper .getString ("main_frame_menuitem_initial_mark_level" ), true );
255255 menuItemInitialMarkLevel .setMnemonic (LocalisationHelper .getString ("main_frame_menuitem_mnemonic_initial_mark_level" ).charAt (0 ));
256256 menuItemInitialMarkLevel .setToolTipText (LocalisationHelper .getString ("main_frame_menuitem_hint_initial_mark_level" ));
257257 menuItemInitialMarkLevel .setIcon (ImageHelper .createMonoColoredImageIcon (InitialMarkLevelRenderer .DEFAULT_LINEPAINT , 20 , 20 ));
258258 menuItemInitialMarkLevel .setActionCommand (GCPreferences .INITIAL_MARK_LEVEL );
259259 menuItemInitialMarkLevel .addActionListener (viewMenuController );
260260 menuBar .addToViewMenu (GCPreferences .INITIAL_MARK_LEVEL , menuItemInitialMarkLevel );
261261
262- JCheckBoxMenuItem menuItemConcurrentGcBeginEnd = new JCheckBoxMenuItem (LocalisationHelper .getString ("main_frame_menuitem_concurrent_collection_begin_end" ), true );
262+ StayOpenCheckBoxMenuItem menuItemConcurrentGcBeginEnd = new StayOpenCheckBoxMenuItem (LocalisationHelper .getString ("main_frame_menuitem_concurrent_collection_begin_end" ), true );
263263 menuItemConcurrentGcBeginEnd .setMnemonic (LocalisationHelper .getString ("main_frame_menuitem_mnemonic_concurrent_collection_begin_end" ).charAt (0 ));
264264 menuItemConcurrentGcBeginEnd .setToolTipText (LocalisationHelper .getString ("main_frame_menuitem_hint_concurrent_collection_begin_end" ));
265265 menuItemConcurrentGcBeginEnd .setIcon (ImageHelper .createMonoColoredImageIcon (ConcurrentGcBegionEndRenderer .CONCURRENT_COLLECTION_BEGIN , 20 , 20 ));
0 commit comments