Чтобы добавлять сообщения и комментарии, .

@prime:
prime

идея не quick-fix-ит неизвестные атрибуты в mxml youtrack.jetbrains.net

@develar:
develar

В тему #1174968 Ярким примером убогости компилятора является тот факт, что аннотация CollapseWhiteSpace игнорируется для атрибута — то есть при указании как тег оно действует, а как атрибут нет. И теперь тем, у кого обработка атрибута/тега реализована прозрачна (то есть есть некая сущность, могущая дать значение, и нас не касается кто это), нужно дописывать костыль для повторения такого поведения. И, кстати, кто-то может объяснить, какого черта в RichText аннотация CollapseWhiteSpace указана для булева свойства textChanged ?

@develar:
develar

Есть где-нибудь четкая спека по обработке whitespace при задании текста в MXML? Вот тут help.adobe.com написан бред касательно "If you specify the value of the text property by using a string directly in MXML, Flex collapses white space characters. If you specify the value of the text property in ActionScript, Flex does not collapse white space characters."

Есть вот такой код: pastebin.com

Итого имеем: Если текст задан как свойство, то он будет как есть (то есть с повторяющимися пробелами и переводами строк). Чтобы сделать whitespace collapse и trim, надо указать аннотацию CollapseWhiteSpace (почему, черт возьми в доке выше об этом ни слова?) — именно в силу этого у Label текст будет как есть, у TextArea "whitespace collapse и trim".

А вот если текст задан неявно, посредством default property (<p>), то цирк — оно по умолчанию whitespace collapse, но не trim — то бишь оно сольет все повторящиеся пробелы в 1 и заменит переводы строк на пробелы. Суки, Adobe, почему поведение не такое же как для свойства — ведь технически мы просто имеем автоопределение адресата-свойства по DefaultProperty? Черт возьми, для того же TextArea если явно не указать свойство text, а просто указать текст (он, же, типа, декларативный у нас язык, да?), то оно проигнорирует аннотацию CollapseWhiteSpace — проблема в том, что у вас текста разные получится в таком случае — ведь trim то происходить не будет (в начале и конце текста будет пробел). Ну что ж, наше дело маленькое, имплементируем как оно есть.

@nirthfurzahad:
nirthfurzahad

О, оказывается в MXML появилась новая фича:
<MyComponent visible.someState="true" />
А как этот точечный синтакс реализуется, если я хочу свой тэг сделать?

@potapenko:
potapenko

сделал фичу для MXML — state reference expression

пишем в AS —

currentState = <myState>;

работает автокомлит состояний, есть переход и автоматически "ренеймятся" все ссылки, если поменять название состояния.

cool!

@potapenko:
potapenko

Сделал фичу автоматического "эскейпования" для строк, логических и бинарных выражений
теперь флекс компилер не ругается если в mxml такое —
<s:Button includeInLayout="{true && false}" label="{"" + ""}" width="{100 2}" >
автоматически переводится при генерации в такое —
<s:Button includeInLayout="{true && false}" label="{&quot;&quot; + &quot;&quot;}" width="{100 2}" >
Как вам?
И где еще встречаются всякие символы для эскейпа?

@just:
just

есть какой-нибудь нормальный способ задавать свойства непосредственно в mxml, чтобы он воспринимал значение в кавычках не как строку, а как значение. Если задавать в фигурных скобках, то он пытается забиндить свойство и выдаёт варнинг
Поясню:
Сейчас
<fhc:IconButton id="help" width="50" height="50"
icon="{new HelpImg().bitmapData}"/>
Где HelpImg это BitmapAsset такого плана
package ... {
import mx.core.BitmapAsset;
[Embed(source='/icons/help.png')]
public class HelpImg extends BitmapAsset {
}
}
а IconButton имеет такую декларацию
[Style(name="icon", type="flash.display.BitmapData")]

Но при этом вылетают варнинги, что
[client] Data binding will not be able to detect assignments to "bitmapData".

И так везде. Как быть ?

@potapenko:
potapenko

а ничего такой mxml получается. важной фичей еще вижу вариант выбора отображения. думаю многим mxml-щикам такое дело должно понравится. я во всяком случае тащусь — можно переключать вид — xml-like на object-builder-like — когда нет излишеств в виде кавычек и тэгов и все в виде блоков вида s:VBox{…}. Переключать можно на лету в процессе написания.

@ilja-panin:
ilja-panin

одобряете ли вы такое написание <s:Label visible="{bool1 && bool2}" ... ?

@Constantiner:
Constantiner

А вы прописываете id для тэгов, на которые в коде нигде нет ссылок, и которые сами получают даннеы с помощью data binding'а?

@ilja-panin:
ilja-panin

на правах идеи, реализуем мате теги так чтобы они отображались во дизайн вью, затем "рисуем" код мышкой.

@nirthfurzahad:
nirthfurzahad

Кстати любители Mate – скажите, как вам нотация –http://gist.github.com/436564
Я правда сомневаюсь что когда нибудь допишу фреймворк, но я его пописываю для раз в две недельки ))