Shale Clay Plugin その3

今回は,ちょっとメモを兼ねて,コンポーネントツリーを見てみます.

サンプルから見るコンポーネントツリー

hello.htmlがどのように組み立てられているかを見てみます.

UIViewRoot
    Clay・・・id(clayView)
        UINamingContainer・・・id(_id0)
            HtmlOutputText・・・id(_id1)
            HtmlForm・・・id(helloForm)
                HtmlOutputText・・・id(_id2)
                HtmlInputText・・・id(name)
                HtmlOutputText・・・id(_id3)
                HtmlCommandButton・・・id(go)
                HtmlOutputText・・・id(_id4)
            HtmlOutputText・・・id(_id5)
            HtmlOutputText・・・id(_id6)
            HtmlOutputText・・・id(_id7)

このようになっています.

id(_id1)は,HTMLの

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
                      "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>こんにちは</title>
</head>
<body>

valueとしてセットされています.

id(_id2)は,HTMLの'名前:',id(_id3,id_4)には改行が,
id(_id5)には'こんにちは',id(_id7)には,HTMLの閉じbody,閉じhtmlがセットされています.

HTMLに直接書いた部分は,Clayによって'HtmlOutputText'に設定されているのがわかります.
HTML Viewでは,'Clay'コンポーネント以下に定義されるようです.
UINamingContainerを使用していることから,HTML Viewは'SubView'として定義されている事がわかります.

とりあえず,ここまで.