TextAreaを含む単純なUiBinderウィジェットがあります。
<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
xmlns:g="urn:import:com.google.gwt.user.client.ui">
<g:TextArea visibleLines="3" />
</ui:UiBinder>
このテキストエリアの背景色を、書き込み可能および読み取り専用の状態に制御したいと思います。GWTは、これを実現するために「-readonly」スタイルの名前デコレータを使用します。だから私はこれを試してみます:
<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
xmlns:g="urn:import:com.google.gwt.user.client.ui">
<ui:style>
.textBoxStyle {
background-color:yellow;
}
.textBoxStyle-readonly {
background-color:lightgray;
}
</ui:style>
<g:TextArea styleName="{style.textBoxStyle}" visibleLines="3" />
</ui:UiBinder>
CssResourcesのスタイル名が難読化されているため、明らかにこれは機能しません。その結果、次のようになります。
.G1x26wpeN {
background-color:yellow
}
.G1x26wpeO {
background-color: lightgray;
}
書き込み可能なテキストエリアの結果のHTMLは次のようになります。
<textarea tabindex="0" class="G1x26wpeN" rows="3"/>
読み取り専用のテキストエリアは次のようになります。
<textarea tabindex="0" class="G1x26wpeN G1x26wpeN-readonly" readonly="" rows="3"/>
GWTが主要部分を難読化するが、「読み取り専用」デクドレーターは難読化しないように、スタイルを宣言するにはどうすればよいですか?
スタイル名全体の難読化を無効にできることを知っています。しかし、デコレータを利用しながら、難読化を維持したいと思います。