Есть ли в gwt встроенный синтаксический анализатор для преобразования строк на основе css в конструкции java?
IE Мне интересно написать свой собственный виджет, который принимает, например, высоту/ширину:
public class MyWidget extends Composite{
private double width;
private Style.Unit widthUnit;
private double height;
private Style.Unit heightUnit;
/**
* @width - width of my widget in CSS dimensions (ie. "10px", "1em" ...)
* @height - height of my widget in CSS dimensions (ie. "10px", "1em" ...)
*/
public MyWidget(String width, String height){
// Parse out strings and set dimensions / units
}
}
Я мог бы легко сделать какое-то регулярное выражение для этого, но я подумал, что посмотрю, есть ли для этого какой-то встроенный механизм, я бы не хотел изобретать заново...
Кроме того, я, конечно, думал о том, чтобы просто принять double width, Style.Unit widthUnit
в конструкторе, но setWidth
UiObject принимает строку CSS, поэтому мне все еще нужно выполнить некоторую обработку строк, хотя и наоборот. В идеале у меня было бы 2 конструктора для достижения обеих возможностей с помощью простого механизма для правильного анализа строк/размеров и единиц.
ИЗМЕНИТЬ:
Забыл упомянуть ПРИЧИНУ, по которой я хотел бы проанализировать эти значения:
Я пытаюсь написать простую панель прокрутки (например, iphone nav), поэтому, когда пользователь нажимает кнопку, справа прокручивается новый «элемент».
На серверной части это будет:
1) Получить новый элемент прокрутки
2) Расширить оболочку прокрутки, чтобы сопровождать новый элемент (здесь мне нужна фактическая ширина)
2) Добавить к оболочке прокрутки элемента
3) Анимировать оболочку прокрутки (сдвинув влево ширину 1 элемента), чтобы открыть новый добавленный элемент в видимой части оболочки панели.
Причина, по которой мне нужна исходная ширина, заключается в том, что я хотел бы расширить панель прокрутки на ширину добавленного к ней элемента. Если я просто получаю строки, я не могу точно сказать setWidth( currentWidth + itemWidth)
По сути, я пытаюсь имитировать скроллер JQuery Tools