import jexer.bits.Cell;
import jexer.bits.CellAttributes;
import jexer.bits.ColorTheme;
+import jexer.bits.StringUtils;
import jexer.event.TCommandEvent;
import jexer.event.TInputEvent;
import jexer.event.TKeypressEvent;
}
} // while (!application.quit)
- assert (dirty == true);
-
- // Flush the screen contents
+ // Flush the screen contents
if (debugThreads) {
System.err.printf("%d %s backend.flushScreen()\n",
System.currentTimeMillis(), Thread.currentThread());
menuMnemonicColor = theme.getColor("tmenu.mnemonic");
}
// Draw the menu title
- getScreen().hLineXY(x, 0, menu.getTitle().length() + 2, ' ',
+ getScreen().hLineXY(x, 0, StringUtils.width(menu.getTitle()) + 2, ' ',
menuColor);
getScreen().putStringXY(x + 1, 0, menu.getTitle(), menuColor);
// Draw the highlight character
// Reset the screen clipping so we can draw the next title.
getScreen().resetClipping();
}
- x += menu.getTitle().length() + 2;
+ x += StringUtils.width(menu.getTitle()) + 2;
}
for (TMenu menu: subMenus) {
for (TMenu menu: menus) {
if ((mouse.getAbsoluteX() >= menu.getTitleX())
&& (mouse.getAbsoluteX() < menu.getTitleX()
- + menu.getTitle().length() + 2)
+ + StringUtils.width(menu.getTitle()) + 2)
) {
menu.setActive(true);
activeMenu = menu;
for (TMenu menu: menus) {
if ((mouse.getAbsoluteX() >= menu.getTitleX())
&& (mouse.getAbsoluteX() < menu.getTitleX()
- + menu.getTitle().length() + 2)
+ + StringUtils.width(menu.getTitle()) + 2)
) {
menu.setActive(true);
activeMenu = menu;
for (TMenu menu: menus) {
menu.setX(x);
menu.setTitleX(x);
- x += menu.getTitle().length() + 2;
+ x += StringUtils.width(menu.getTitle()) + 2;
// Don't let the menu window exceed the screen width
int rightEdge = menu.getX() + menu.getWidth();