You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jmeter.apache.org by pm...@apache.org on 2013/02/09 18:38:47 UTC
svn commit: r1444402 - in /jmeter/trunk/src:
core/org/apache/jmeter/gui/util/MenuFactory.java
jorphan/org/apache/jorphan/gui/GuiUtils.java
Author: pmouawad
Date: Sat Feb 9 17:38:46 2013
New Revision: 1444402
URL: http://svn.apache.org/r1444402
Log:
Bug 54538 - GUI: context menu is too big
Improve based on Screen display
Bugzilla Id: 54538
Modified:
jmeter/trunk/src/core/org/apache/jmeter/gui/util/MenuFactory.java
jmeter/trunk/src/jorphan/org/apache/jorphan/gui/GuiUtils.java
Modified: jmeter/trunk/src/core/org/apache/jmeter/gui/util/MenuFactory.java
URL: http://svn.apache.org/viewvc/jmeter/trunk/src/core/org/apache/jmeter/gui/util/MenuFactory.java?rev=1444402&r1=1444401&r2=1444402&view=diff
==============================================================================
--- jmeter/trunk/src/core/org/apache/jmeter/gui/util/MenuFactory.java (original)
+++ jmeter/trunk/src/core/org/apache/jmeter/gui/util/MenuFactory.java Sat Feb 9 17:38:46 2013
@@ -238,10 +238,10 @@ public final class MenuFactory {
public static JMenu makeMenus(String[] categories, String label, String actionCommand) {
JMenu addMenu = new JMenu(label);
- GuiUtils.makeMenuScrollable(addMenu);
for (int i = 0; i < categories.length; i++) {
addMenu.add(makeMenu(categories[i], actionCommand));
}
+ GuiUtils.makeScrollableMenu(addMenu);
return addMenu;
}
@@ -339,10 +339,10 @@ public final class MenuFactory {
*/
public static JMenu makeMenu(Collection<MenuInfo> menuInfo, String actionCommand, String menuName) {
JMenu menu = new JMenu(menuName);
- GuiUtils.makeMenuScrollable(menu);
for (MenuInfo info : menuInfo) {
menu.add(makeMenuItem(info, actionCommand));
}
+ GuiUtils.makeScrollableMenu(menu);
return menu;
}
Modified: jmeter/trunk/src/jorphan/org/apache/jorphan/gui/GuiUtils.java
URL: http://svn.apache.org/viewvc/jmeter/trunk/src/jorphan/org/apache/jorphan/gui/GuiUtils.java?rev=1444402&r1=1444401&r2=1444402&view=diff
==============================================================================
--- jmeter/trunk/src/jorphan/org/apache/jorphan/gui/GuiUtils.java (original)
+++ jmeter/trunk/src/jorphan/org/apache/jorphan/gui/GuiUtils.java Sat Feb 9 17:38:46 2013
@@ -19,6 +19,7 @@
package org.apache.jorphan.gui;
import java.awt.Component;
+import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.Toolkit;
import java.awt.datatransfer.Clipboard;
@@ -131,7 +132,13 @@ public final class GuiUtils {
* Make menu scrollable
* @param menu {@link JMenu}
*/
- public static void makeMenuScrollable(JMenu menu) {
- MenuScroller.setScrollerFor(menu, 15, 200);
+ public static void makeScrollableMenu(JMenu menu) {
+ Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
+ if(menu.getItemCount()>0) {
+ // We use 80% of height
+ int maxItems = (int)Math.round(
+ screenSize.getHeight()*0.8/menu.getMenuComponent(0).getPreferredSize().getHeight());
+ MenuScroller.setScrollerFor(menu, maxItems, 200);
+ }
}
}