Browse Source

fixes #3785, implemented style names for MenuBar.MenuItem

svn changeset:10110/svn branch:6.2
tags/6.7.0.beta1
Matti Tahvonen 14 years ago
parent
commit
037c81cc4c

+ 4
- 0
src/com/vaadin/terminal/gwt/client/ui/VMenuBar.java View File

@@ -205,6 +205,10 @@ public class VMenuBar extends Widget implements Paintable,
currentItem = currentMenu.addItem(itemHTML.toString(), cmd);
currentItem.setSeparator(item.hasAttribute("separator"));
currentItem.setEnabled(!item.hasAttribute("disabled"));
if (item.hasAttribute("style")) {
String itemStyle = item.getStringAttribute("style");
currentItem.addStyleName(itemStyle);
}

if (item.getChildCount() > 0) {
menuStack.push(currentMenu);

+ 15
- 1
src/com/vaadin/ui/MenuBar.java View File

@@ -86,6 +86,10 @@ public class MenuBar extends AbstractComponent {
target.startTag("item");
target.addAttribute("id", item.getId());

if (item.getStyleName() != null) {
target.addAttribute("style", item.getStyleName());
}

if (item.isSeparator()) {
target.addAttribute("separator", true);
target.endTag("item");
@@ -130,7 +134,7 @@ public class MenuBar extends AbstractComponent {

/** Deserialize changes received from client. */
@Override
public void changeVariables(Object source, Map variables) {
public void changeVariables(Object source, Map<String, Object> variables) {
Stack<MenuItem> items = new Stack<MenuItem>();
boolean found = false;

@@ -391,6 +395,7 @@ public class MenuBar extends AbstractComponent {
private boolean enabled = true;
private boolean visible = true;
private boolean isSeparator = false;
private String styleName;

/**
* Constructs a new menu item that can optionally have an icon and a
@@ -691,6 +696,15 @@ public class MenuBar extends AbstractComponent {
return isSeparator;
}

public void setStyleName(String styleName) {
this.styleName = styleName;
requestRepaint();
}

public String getStyleName() {
return styleName;
}

}// class MenuItem

}// class MenuBar

Loading…
Cancel
Save