Title: [waffle-scm] [148] trunk/distribution/src/site: first version of taglib documentation
Revision
148
Author
gas
Date
2007-06-10 16:52:22 -0500 (Sun, 10 Jun 2007)

Log Message

first version of taglib documentation

Modified Paths


Added Paths

Diff

Modified: trunk/distribution/src/assembly/assembly-blankproject.xml (147 => 148)

--- trunk/distribution/src/assembly/assembly-blankproject.xml	2007-06-07 22:49:47 UTC (rev 147)
+++ trunk/distribution/src/assembly/assembly-blankproject.xml	2007-06-10 21:52:22 UTC (rev 148)
@@ -14,9 +14,6 @@
       <outputDirectory>webapp/WEB-INF/lib</outputDirectory>
       <unpack>false</unpack>
       <scope>runtime</scope>
-	  <excludes>
-        <exclude>org.codehaus.waffle:blankproject</exclude>
-	  </excludes>
     </dependencySet>
   </dependencySets>
 </assembly>

Added: trunk/distribution/src/site/apt/taglib/button.apt (0 => 148)

--- trunk/distribution/src/site/apt/taglib/button.apt	                        (rev 0)
+++ trunk/distribution/src/site/apt/taglib/button.apt	2007-06-10 21:52:22 UTC (rev 148)
@@ -0,0 +1,15 @@
+Button
+
+	In order to create a form button, use the tag <w:button>. Its caption is the internationalized <value> attribute
+	
+Example
+	
++--------------------
+<w:button value="execute" 
++--------------------
+
+	And add to your i18n file:
+
++--------------------
+execute = Execute this button
++--------------------

Added: trunk/distribution/src/site/apt/taglib/index.apt (0 => 148)

--- trunk/distribution/src/site/apt/taglib/index.apt	                        (rev 0)
+++ trunk/distribution/src/site/apt/taglib/index.apt	2007-06-10 21:52:22 UTC (rev 148)
@@ -0,0 +1,55 @@
+Introduction
+
+	Waffle taglib is a sample library which aimed at making it easier to create custom forms using the JSP technology.
+	The most important step it to declare the taglib itself in your jsp file:
+
++------------	
+<%@ taglib uri="http://waffle.codehaus.org" prefix="w" %>
++------------	
+
+Basic usage
+
+	The following example shows how to create a form inside a table, containing many different fields:
+	
++--------------
+<w:form action="" type="table" id="sendForm">
+	<w:hidden name="supplier.id"/>
+	<w:text name="supplier.code"/>
+	<w:text name="supplier.name"/>
+	<w:text name="supplier.phone"/>
+	<w:textarea name="supplier.details" cols="60" rows="7">${supplier.details}</w:textarea>
+	<w:submit value="send"/>
+</w:form>
++--------------
+
+	Due to internationalization issues, you should add the following items to your messages.properties file:
+	<supplier.name>, <supplier.code>, <supplier.phone>, <supplier.details> and <send>.
+
++--------------
+supplier.name = Name
+supplier.code = Code
+supplier.phone = Phone
+supplier.details = Details
+send = send
++--------------
+
+Login form example
+
+	The following example shows a sample login form:
+	
++--------------
+<w:form action="" type="table" id="login">
+	<w:text name="username"/>
+	<w:password name="password"/>
+	<w:submit value="login"/>
+</w:form>
++--------------
+	
+	Once again, due to internationalization issues, you should register add the following items to your messages.properties file:
+	<username>, <password> and <login>.
+
++--------------
+username = Username
+password = Password
+login = Login
++--------------

Added: trunk/distribution/src/site/apt/taglib/text.apt (0 => 148)

--- trunk/distribution/src/site/apt/taglib/text.apt	                        (rev 0)
+++ trunk/distribution/src/site/apt/taglib/text.apt	2007-06-10 21:52:22 UTC (rev 148)
@@ -0,0 +1,61 @@
+Text fields
+
+	The most common and simple html tag is the usual input text field. A common use of its html form is:
+	
++--------------------
+<input type="text" name="supplier.name" value="${supplier.name}"/>
++--------------------
+
+	The <<w:text>> tag allows you to generate the above code by defining:
+
++--------------------
+<w:text name="supplier.name" />
++--------------------
+
+Advantage
+
+	The above example does not show all the power behind the waffle form taglib. Let's add a form and a table to the sample
+	html shown earlier:
+
++--------------------
+<form action=""
+<table>
+<tr>
+<td>suppliers name</td>
+<td><input type="text" name="supplier.name" value="${supplier.name}"/></td>
+</tr>
+</table>
+</form>
++-------------------
+	
+	Using the waffle taglib, one can easily output the above result by defining:
+	
++--------------------
+<w:form action="" type="table">
+	<w:text name="supplier.name" />
+</w:form>
++--------------------
+
+    And registering the following key into your i18n file:
+
++--------------------
+supplier.name = Suppliers name
++--------------------
+
+	You can learn more about form types by reading the <<w:form>> tag documentation.
+
+Fully customized tag
+
+    Here is an example of label and default value customization:
+
++--------------------
+<w:form action="" type="table">
+	<w:text label="i18n.key" name="supplier.name" value="${supplier.name}"/>
+</w:form>
++--------------------
+
+    And i18n file:
+
++--------------------
+i18n.key = Suppliers name
++--------------------

Added: trunk/distribution/src/site/pt/apt/taglib/form/basic.apt (0 => 148)

--- trunk/distribution/src/site/pt/apt/taglib/form/basic.apt	                        (rev 0)
+++ trunk/distribution/src/site/pt/apt/taglib/form/basic.apt	2007-06-10 21:52:22 UTC (rev 148)
@@ -0,0 +1,17 @@
+Atributos básicos
+
+	As tags de formulário possuem diversos elementos básicos que são comuns entre elas.
+	
+	Nesta página você encontra a descrição de algum deles.
+
+render	
+
+	O atributo <render> indica se o item deve ser mostrado ou não no resultado (código html). O uso comum
+	desse atributo é para verificar se uma determinada condição é verdadeira:
+
++--------------------
+<s:text name="usuario.cpf" render="${devoMostrarCampoCpf}""/>
++--------------------
+
+	Note que o valor de <devoMostrarCampoCpf> será verificado uma única vez - durante o processod de render
+	de sua página jsp.
\ No newline at end of file

Added: trunk/distribution/src/site/pt/apt/taglib/form/button.apt (0 => 148)

--- trunk/distribution/src/site/pt/apt/taglib/form/button.apt	                        (rev 0)
+++ trunk/distribution/src/site/pt/apt/taglib/form/button.apt	2007-06-10 21:52:22 UTC (rev 148)
@@ -0,0 +1,16 @@
+Botões
+
+	Para criar um botão em seu formulário você pode utilizar a tag <w:button>. Essa tag recebe um atributo
+	chamado value, que será o valor do botão, internacionalizado.
+	
+Exemplo
+	
++--------------------
+<w:button value="execute" 
++--------------------
+
+	No exemplo acima, você deve cadastrar a mensagem <executar> no seu arquivo de internacionalização.
+
++--------------------
+execute = Executar
++--------------------

Added: trunk/distribution/src/site/pt/apt/taglib/form/checkbox.apt (0 => 148)

--- trunk/distribution/src/site/pt/apt/taglib/form/checkbox.apt	                        (rev 0)
+++ trunk/distribution/src/site/pt/apt/taglib/form/checkbox.apt	2007-06-10 21:52:22 UTC (rev 148)
@@ -0,0 +1,18 @@
+Campos do tipo checkbox
+
+	Tags do tipo checkbox podem ser adicionadas com a utilização da tag s:checkbox
+	Você sempre pode utilizar código html puro:
+	
++--------------------
+<s:check name="esporte" checked="${true}" value="futebol" />
++--------------------
+
+	Que gerará:
+
++--------------------
+<input type="checkbox" name="esporte" checked="checked" value="futebol" />
++--------------------
+
+Valor padrão
+
+	O valor padrão do campo value é "true".

Added: trunk/distribution/src/site/pt/apt/taglib/form/date.apt (0 => 148)

--- trunk/distribution/src/site/pt/apt/taglib/form/date.apt	                        (rev 0)
+++ trunk/distribution/src/site/pt/apt/taglib/form/date.apt	2007-06-10 21:52:22 UTC (rev 148)
@@ -0,0 +1,37 @@
+Data
+
+	Para criar um campo para mostar a data em seu formulário você pode utilizar a tag <s:date>. Essa tag recebe um atributo
+	chamado value, que será do tipo java.util.Date. 
+
+	Por exemplo, usando html e fmt para mostrar a hora formatada você escreveria:
+	
++--------------------
+<input type="text" name="fornecedor.nascimento" value="<fmt:formatDate value="${fornecedor.nascimento}" type="date" dateStyle="medium"/>" />
++--------------------
+	
+	Com <s:date>:
+
++-------------------- 
+<s:date name="fornecedor.nascimento" value="${fornecedor.nascimento}" dateStyle="medium"/>
++--------------------
+
+	O atributo <dateStyle> pode ter os seguintes valores: <short>, <medium>, <long>, <full> e <default>. 
+	Ele pode ser omitido (usa-se o <default>).
+
+	Se você omitir o atributo <value>, o valor padrão será o <_expression_ language> do seu <fornecedor.nascimento>, portanto o código:	
+
++--------------------
+<s:date name="fornecedor.nascimento" dateStyle="medium"/>
++--------------------
+
+	é igual o código anterior. Ou usando o valor padrão para o atributo <dateStyle>:
+
++--------------------
+<s:date name="fornecedor.nascimento"/>
++--------------------
+
+	Você tamém pode utilizar o atributo <pattern>:
+
++--------------------
+<s:date name="fornecedor.nascimento" pattern="dd/MM/yyyy"/>
++--------------------
\ No newline at end of file

Added: trunk/distribution/src/site/pt/apt/taglib/form/errors.apt (0 => 148)

--- trunk/distribution/src/site/pt/apt/taglib/form/errors.apt	                        (rev 0)
+++ trunk/distribution/src/site/pt/apt/taglib/form/errors.apt	2007-06-10 21:52:22 UTC (rev 148)
@@ -0,0 +1,25 @@
+Mostrando todos os erros
+
++---------------
+<s:errors/>
++---------------
+
+Motrando somente os erros de determinado campo
+
++---------------
+<s:errors path="contato.nome"/>
++---------------
+
+Mostrando erros em um formulário
+
+	Caso você use o estilo <table> ou <tabless> de um formulário, as mensagens de erro aparecerão automaticamente.
+	
+Para alterar o id da div criada
+
+	Se você deseja utilizar outro id para sua div basta sobreescrever o valor padrão (errors):
+
++---------------
+<s:errors id="my_custom_errors_div"/>
++---------------
+
+	
\ No newline at end of file

Added: trunk/distribution/src/site/pt/apt/taglib/form/file.apt (0 => 148)

--- trunk/distribution/src/site/pt/apt/taglib/form/file.apt	                        (rev 0)
+++ trunk/distribution/src/site/pt/apt/taglib/form/file.apt	2007-06-10 21:52:22 UTC (rev 148)
@@ -0,0 +1,16 @@
+Upload de arquivos
+
+	Para fazer upload de arquivos você deve utilizar a tag <s:file>, seguindo o mesmo estilo de parâmetros
+	da tag text:
+	
++--------------------
+<s:form action=""
+	<s:file name="foto"/>
+	<s:submit value="enviar"/>
+</s:form>
++--------------------
+
+Label padrão
+
+	O valor padrão de seu <label> é o mesmo do atributo name.
+	
\ No newline at end of file

Added: trunk/distribution/src/site/pt/apt/taglib/form/form.apt (0 => 148)

--- trunk/distribution/src/site/pt/apt/taglib/form/form.apt	                        (rev 0)
+++ trunk/distribution/src/site/pt/apt/taglib/form/form.apt	2007-06-10 21:52:22 UTC (rev 148)
@@ -0,0 +1,76 @@
+Formulários
+
+	A maneira html de criar formulário necessita dizer qual a url que desejamos acessar ao enviar o formulário, por exemplo:
+
++--------------
+<form action=""
+	<!-- seus componentes aqui -->
+</form>
++--------------
+
+	Através da tag <<s:form>> podemos criar o formulário da seguinte maneira:
+
++--------------
+<s:form action=""
+	<!-- seus componentes aqui -->
+</s:form>
++--------------
+
+Link relativo
+
+	O primeiro exemplo de um formulário utilizando a tag <<s:form>> não mostra a grande vantagem de utilizá-lo.
+	Caso sua url inicie com uma barra, o nome da sua aplicação será adicionada a url para que seu link funcione relativo a aplicação.
+	
+	Numa aplicação chamada <<sistema>>, o resultado de <</minhalogica>> seria:
+	
++--------------
+<form action=""
+</form>
++--------------
+
+Estilos
+
+	Podemos configurar o tipo de formulário que desejamos mostrar: <table>, <tableless> ou <none>.
+	
+	O padrão é <<none>> e mostra o formulário sem grandes novidades.
+	
+	Se você alterar o tipo para <table>:
+	
++--------------
+<s:form action="" type="table">
+	<!-- seus componentes aqui -->
+</s:form>
++--------------
+
+	O resultado será uma tabela com o nome do campo, o campo e possíveis erros de validações automaticamente utilizando
+	as tags html de tabela.
+	
+	O estilo <tableless> utiliza divs, parágrafos e spans para construir a tabela.
+
+Exemplos
+
++--------------------
+<!-- tipo normal -->
+<s:form action=""
+	<s:text label="Nome do fornecedor" name="fornecedor.nome" value="${fornecedor.nome}"/>
+</s:form>
++--------------------
+
++--------------------
+<!-- tabela -->
+<s:form action="" type="table">
+	<s:text label="Nome do fornecedor" name="fornecedor.nome" value="${fornecedor.nome}"/>
+</s:form>
++--------------------
+
++--------------------
+<!-- div -->
+<s:form action="" type="tableless">
+	<s:text label="Nome do fornecedor" name="fornecedor.nome" value="${fornecedor.nome}"/>
+</s:form>
++--------------------
+
+Colorindo as linhas
+
+	Em alguns casos, desejamos colocar uma cor diferente para cada linha de nosso formulário. Para atingir esse objetivo
+	basta utilizar o tipo de formulário como tabela (table) e adicionar o atributo <showEvenOrOdd="true">.

Added: trunk/distribution/src/site/pt/apt/taglib/form/hidden.apt (0 => 148)

--- trunk/distribution/src/site/pt/apt/taglib/form/hidden.apt	                        (rev 0)
+++ trunk/distribution/src/site/pt/apt/taglib/form/hidden.apt	2007-06-10 21:52:22 UTC (rev 148)
@@ -0,0 +1,24 @@
+Campos invisíveis
+
+	Para criar campos invisíveis você deve utilizar a tag <<s:hidden>>, que recebe dois atributos, <name> e <value>:
+	
++--------------------
+<s:hidden name="fornecedor.id" value="${fornecedor.id}"/>
++--------------------
+
+	A tag <<s:hidden>> não trabalha em conjunto com o estilo do formulário, isto é, por ser invisível, ela não adiciona
+	linhas à sua tabela.
+
+Valor padrão
+
+	Se você omitir o atributo <value>, o valor padrão será o <_expression_ language> do seu <name>, portanto o código:
+	
++--------------------
+<s:hidden name="fornecedor.id" value="${fornecedor.id}"/>
++--------------------
+
+	É equivalente a:
+
++--------------------
+<s:hidden name="fornecedor.id"/>
++--------------------

Added: trunk/distribution/src/site/pt/apt/taglib/form/img.apt (0 => 148)

--- trunk/distribution/src/site/pt/apt/taglib/form/img.apt	                        (rev 0)
+++ trunk/distribution/src/site/pt/apt/taglib/form/img.apt	2007-06-10 21:52:22 UTC (rev 148)
@@ -0,0 +1,32 @@
+Imagens
+
+	As vezes você deseja mostrar uma imagem. Para fazer isso, seria necessário usar a tag <img>, mas ela apresenta
+	diversos problemas quando estamos lidando com links relativos:
+	
++--------------------
+<img src=""
++--------------------
+
+	A tag <<s:img>> permite gerar relativo ao seu servidor direto para a imagem que você deseja:
+
++--------------------
+<s:img src=""
++--------------------
+
+	Gera o código abaixo, suponho que o nome de sua aplicação é <<aplicacao>>:
+	
++--------------------
+<img src=""
++--------------------
+
+Formulários
+
+	A tag <<s:img>> também pode ser usada em formulários, tirando proveito de todas as vantagens do mesmo:
+	
++---------------
+<s:form action="" type="table">
+	<s:img src="" label="cabecalho"/>
+</s:form>
++---------------
+	
+	Gera uma linha de tabela com o título <cabecalho> e a imagem definida.

Added: trunk/distribution/src/site/pt/apt/taglib/form/password.apt (0 => 148)

--- trunk/distribution/src/site/pt/apt/taglib/form/password.apt	                        (rev 0)
+++ trunk/distribution/src/site/pt/apt/taglib/form/password.apt	2007-06-10 21:52:22 UTC (rev 148)
@@ -0,0 +1,13 @@
+Campos de senha
+
+	O campo de senha funciona igual ao campo de texto, exceto que o tipo do campo é password. Exemplo:
+
++--------------------
+<s:password name="usuario.senha"/>
++--------------------
+
+	Gera:
+	
++--------------------
+<input type="password" name="usuario.senha" value="${usuario.senha}"/>
++--------------------

Added: trunk/distribution/src/site/pt/apt/taglib/form/reset.apt (0 => 148)

--- trunk/distribution/src/site/pt/apt/taglib/form/reset.apt	                        (rev 0)
+++ trunk/distribution/src/site/pt/apt/taglib/form/reset.apt	2007-06-10 21:52:22 UTC (rev 148)
@@ -0,0 +1,14 @@
+Botão para reinicializar o formulário
+
+	O botão de reinicialização de um formulário (reset button) é utilizado para voltar o formulário ao seu estado inicial.
+	
+Exemplo
+	
++--------------------
+<s:reset value="limpar"/>
++--------------------
+
+	No exemplo acima, você deve cadastrar a mensagem <limpar> no seu arquivo de internacionalização.
+
+	Note que o formulário volta para seu estado inicial, que não significa estar limpo, mas sim com os valores que
+	foram definidos como padrão de cada campo.
\ No newline at end of file

Added: trunk/distribution/src/site/pt/apt/taglib/form/row.apt (0 => 148)

--- trunk/distribution/src/site/pt/apt/taglib/form/row.apt	                        (rev 0)
+++ trunk/distribution/src/site/pt/apt/taglib/form/row.apt	2007-06-10 21:52:22 UTC (rev 148)
@@ -0,0 +1,36 @@
+Linhas customizáveis
+
+	Dentro de seu formulário você pode adicionar linhas totalmente customizadas através da tag <s:row>.
+	
+	Essa tag recebe como parâmetro o label que deve ser internacionalizado:
+	
++--------------------
+<s:form action=""
+	<s:row label="attention">Ao alterar sua senha, você será deslogado do sistema</s:row>
+	<s:password name="senhaAntiga"/>
+	<s:password name="senhaNova"/>
+	<s:password name="confirmaSenhaNova"/>
+	<s:submit value="alterar"/>
+</s:form>
++--------------------
+
+	O exemplo acima adiciona uma coluna com o campo <attention> internacionalizado, e a mensagem da direita como
+	conteúdo daquela linha.
+	
+	Você pode utilizar a tag <fmt:message> para internacionalizar seu conteúdo:
+
++--------------------
+<s:form action=""
+	<s:row label="attention"><fmt:message key="warning_logout"/></s:row>
+	<s:password name="senhaAntiga"/>
+	<s:password name="senhaNova"/>
+	<s:password name="confirmaSenhaNova"/>
+	<s:submit value="alterar"/>
+</s:form>
++--------------------
+
+
+Label padrão
+
+	O valor padrão de seu <label> é vazio.
+	
\ No newline at end of file

Added: trunk/distribution/src/site/pt/apt/taglib/form/select.apt (0 => 148)

--- trunk/distribution/src/site/pt/apt/taglib/form/select.apt	                        (rev 0)
+++ trunk/distribution/src/site/pt/apt/taglib/form/select.apt	2007-06-10 21:52:22 UTC (rev 148)
@@ -0,0 +1,77 @@
+Exemplo simples
+
++------------
+<s:select var="conta" name="conta.id" items="${contas}" value="id">
+	${conta.nome}
+</f:select>
++------------
+
+	Gera uma combo box:
+	
++------------
+<select name="conta.id">
+	<option value="1">Conta Corrente</option>
+	<option value="2">Conta Poupança</option>
+	<option value="3">Conta Investimento</option>
+</select>
++------------
+	
+Exemplo com linha vazia
+
++------------
+<s:select var="conta" name="conta.id" items="${contas}" value="id" addEmpty="true">
+	${conta.nome}
+</f:select>
++------------
+
+	Gera:
+	
++------------
+<select name="conta.id">
+	<option value=""></option>
+	<option value="1">Conta Corrente</option>
+	<option value="2">Conta Poupança</option>
+	<option value="3">Conta Investimento</option>
+</select>
++------------
+
+Exemplo com seleção padrão
+
++------------
+<s:select var="conta" name="conta.id" items="${contas}" value="id" selected="${2}">
+	${conta.nome}
+</f:select>
++------------
+
+	Gera:
+	
++------------
+<select name="conta.id">
+	<option value="1">Conta Corrente</option>
+	<option value="2" selected>Conta Poupança</option>
+	<option value="3">Conta Investimento</option>
+</select>
++------------
+
+
+Radio Buttons
+
+	Para gerar radio buttons invês de combo box usa-se o atributo <type="radio">. Por exemplo
+	
++------------
+<s:select type="radio" var="conta" name="conta.id" items="${contas}" value="id" selected="${2}">
+	${conta.nome}
+</f:select>
++------------
+
+	Gera:
+
++------------
+<input type="radio" value="1" name="conta.id"/>Conta Corrente<br/>
+<input type="radio" value="2" name="conta.id" checked="checked"/>Conta Poupança<br/>
+<input type="radio" value="3" name="conta.id"/>Conta Investimento<br/>
++------------
+
+
+
+	
\ No newline at end of file

Added: trunk/distribution/src/site/pt/apt/taglib/form/submit.apt (0 => 148)

--- trunk/distribution/src/site/pt/apt/taglib/form/submit.apt	                        (rev 0)
+++ trunk/distribution/src/site/pt/apt/taglib/form/submit.apt	2007-06-10 21:52:22 UTC (rev 148)
@@ -0,0 +1,29 @@
+Botões de enviar
+
+	Para efetuar o envio do seu formulário, utilize a tag <<s:submit>>, sendo o seu uso clássico com o atributo <<value>>:
+	
++--------------------
+<s:submit value="enviar"/>
++--------------------
+
+Como criar um formulário com dois botões de envio
+
+	Diversas vezes desejamos ter, em um único formulário, dois botões de envio diferentes, cada um para lógicas separadas.
+	
+	Por exemplo, imagine um formulário que mostra um fornecedor e permite alterá-lo (<<fornecedor.altera.logic>) ou removê-lo (<<fornecedor.remove.logic>>). 
+	
+	Através do atributo <<action>> você pode determinar qual lógica seu botão deve executar:
+
++--------------------
+<s:form action="" type="table" id="meuForm">
+	<s:hidden name="fornecedor.id"/>
+	<s:text name="fornecedor.nome"/>
+	<s:submit value="alterar" action=""
+	<s:submit value="remover" action=""
+</s:form>
++--------------------
+
+	Note que para esse atributo funcionar é necessário código _javascript_ e que seu formulário possua um atributo chamado <<id>>, único em toda
+	sua página.
+
+	Caso sua url inicie com uma barra, o nome da sua aplicação será adicionada a url para que seu link funcione relativo a aplicação.

Added: trunk/distribution/src/site/pt/apt/taglib/form/text.apt (0 => 148)

--- trunk/distribution/src/site/pt/apt/taglib/form/text.apt	                        (rev 0)
+++ trunk/distribution/src/site/pt/apt/taglib/form/text.apt	2007-06-10 21:52:22 UTC (rev 148)
@@ -0,0 +1,55 @@
+Campos de texto
+
+	A tag mais simples para montar formulários é aquela que desenha um campo de texto. Você poderia utilizar código html puro:
+	
++--------------------
+<input type="text" name="fornecedor.nome" value="${fornecedor.nome}"/>
++--------------------
+
+	A tag <<w:text>> permite gerar o código acima da seguinte maneira:
+
++--------------------
+<w:text name="fornecedor.nome" />
++--------------------
+
+Vantagens
+
+	No exemplo anterior não percebemos nenhuma vantagem quanto a utilização da tag. Agora vamos ao exemplo dessa tag
+	em um formulário. Primeiro o código html:
+	
++--------------------
+<form action=""
+<table>
+<tr>
+<td>Nome do fornecedor</td>
+<td><input type="text" name="fornecedor.nome" value="${fornecedor.nome}"/></td>
+</tr>
+</table>
+</form>
++-------------------
+	
+	Se desejamos obter a tabela acima, basta utilizarmos o formulário <<w:form>> no estilo <table>:
+	
++--------------------
+<w:form action="" type="table">
+	<w:text name="fornecedor.nome" "/>
+</w:form>
++--------------------
+
+	Aprenda mais sobre os estilos de formulários na página relativa a tag <<w:form>>.
+
+Tag completa
+
+    Aqui está um exemplo de tag com diversos campos customizados:
+
++--------------------
+<w:form action="" type="table">
+	<w:text label="i18n.key" name="fornecedor.nome" value="${fornecedor.nome}"/>
+</w:form>
++--------------------
+
+    E arquivo de mensagens:
+
++--------------------
+i18n.key = Nome do fornecedor
++--------------------

Added: trunk/distribution/src/site/pt/apt/taglib/form/textarea.apt (0 => 148)

--- trunk/distribution/src/site/pt/apt/taglib/form/textarea.apt	                        (rev 0)
+++ trunk/distribution/src/site/pt/apt/taglib/form/textarea.apt	2007-06-10 21:52:22 UTC (rev 148)
@@ -0,0 +1,11 @@
+Campos de texto
+
+	A tag para criação de campos de texto de diversas linhas é a <<s:textarea>>:
+
++--------------------
+<s:textarea name="fornecedor.descricao">${fornecedor.descricao}</s:textarea>
++--------------------
+
+Label padrão
+
+	O valor padrão de seu <label> é o mesmo do atributo name, internacionalizado.

Added: trunk/distribution/src/site/pt/apt/taglib/form/time.apt (0 => 148)

--- trunk/distribution/src/site/pt/apt/taglib/form/time.apt	                        (rev 0)
+++ trunk/distribution/src/site/pt/apt/taglib/form/time.apt	2007-06-10 21:52:22 UTC (rev 148)
@@ -0,0 +1,37 @@
+Hora
+
+	Para criar um campo para a hora em seu formulário você pode utilizar a tag <s:time>. Essa tag recebe um atributo
+	chamado value, que será <java.util.Date>. 
+
+	Por exemplo, usando html e fmt para mostrar a hora formatada você escreveria:
+	
++--------------------
+<input type="text" name="fornecedor.nascimento" value="<fmt:formatDate value="${fornecedor.nascimento}" type="time" timeStyle="medium"/>" />
++--------------------
+	
+	Com <s:time>:
+
++--------------------
+<s:time name="fornecedor.nascimento" value="${fornecedor.nascimento}" timeStyle="medium"/>
++--------------------
+
+	O atributo <timeStyle> pode ter os seguintes valores: <short>, <medium>, <long>, <full> e <default>. 
+	Ele pode ser omitido (usa-se o <default>).
+
+	Se você omitir o atributo <value>, o valor padrão será o <_expression_ language> do seu <fornecedor.nascimento>, portanto o código:	
+
++--------------------
+<s:time name="fornecedor.nascimento" timeStyle="medium"/>
++--------------------
+
+	é igual o código anterior. Ou usando o valor padrão para o atributo timeStyle:
+
++--------------------
+<s:time name="fornecedor.nascimento"/>
++--------------------
+
+	Você tamém pode utilizar o atributo <pattern>:
+
++--------------------
+<s:time name="fornecedor.nascimento" pattern="hh:mm"/>
++--------------------
\ No newline at end of file

Added: trunk/distribution/src/site/pt/apt/taglib/index.apt (0 => 148)

--- trunk/distribution/src/site/pt/apt/taglib/index.apt	                        (rev 0)
+++ trunk/distribution/src/site/pt/apt/taglib/index.apt	2007-06-10 21:52:22 UTC (rev 148)
@@ -0,0 +1,57 @@
+Introdução
+
+	Waffle taglib é a tag library disponibilizada pelo Waffle para aumentar a produtividade do desenvolvedor ao
+	escrever páginas jsp.
+	O passo mais importante é adicionar a taglib ao seu jsp:
+
++------------	
+<%@ taglib uri="http://waffle.codehaus.org" prefix="w" %>
++------------	
+
+Exemplo básico
+
+	O exemplo a seguir mostra um formulário a ser criado em uma tabela, com um campo invisível e alguns
+	de texto.
+	
++--------------
+<w:form action="" type="table" id="sendForm">
+	<w:hidden name="fornecedor.id"/>
+	<w:text name="fornecedor.codigo"/>
+	<w:text name="fornecedor.nome"/>
+	<w:text name="fornecedor.telefone"/>
+	<w:textarea name="fornecedor.detalhes" cols="60" rows="7">${fornecedor.detalhes}</w:textarea>
+	<w:submit value="enviar"/>
+</w:form>
++--------------
+
+	Note que, devido a internacionalização, você deve registrar as seguintes chaves no seu arquivo de propriedades:
+	<fornecedor.nome>, <fornecedor.codigo>, <fornecedor.telefone>, <fornecedor.detalhes> e <enviar>.
+
++--------------
+fornecedor.nome = Nome
+fornecedor.codigo = Código
+fornecedor.telefone = Telefone
+fornecedor.detalhes = Detalhes
+enviar = Enviar
++--------------
+
+Exemplo de um formulário de login
+
+	O exemplo abaixo mostra um campo de texto e outro de senha para um formulário clássico de login:
+	
++--------------
+<w:form action="" type="table" id="login">
+	<w:text name="username"/>
+	<w:password name="password"/>
+	<w:submit value="login"/>
+</w:form>
++--------------
+	
+	Note que, devido a internacionalização, você deve registrar as seguintes chaves no seu arquivo de propriedades:
+	<username>, <password> e <login>.
+
++--------------
+username = Usuário
+password = Senha
+login = Login
++--------------

Modified: trunk/distribution/src/site/site.xml (147 => 148)

--- trunk/distribution/src/site/site.xml	2007-06-07 22:49:47 UTC (rev 147)
+++ trunk/distribution/src/site/site.xml	2007-06-10 21:52:22 UTC (rev 148)
@@ -23,6 +23,7 @@
     </poweredBy>
     <body>
         <links>
+            <item name="Portuguese" href=""
             <item name="Waffle Home" href=""
         </links>
 
@@ -52,6 +53,12 @@
             <item name="Simple Calculator" href=""
         </menu>  
 
+        <menu name="Taglib">
+            <item name="Index" href=""
+            <item name="Button" href=""
+            <item name="Text" href=""
+        </menu>
+
         <menu name="Misc...">
             <item name="Javadocs" href=""
             <item name="Testing" href=""

Copied: trunk/distribution/src/site/site_pt.xml (from rev 120, trunk/distribution/src/site/site.xml) (0 => 148)

--- trunk/distribution/src/site/site_pt.xml	                        (rev 0)
+++ trunk/distribution/src/site/site_pt.xml	2007-06-10 21:52:22 UTC (rev 148)
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<project name="Waffle">
+    <skin>
+        <groupId>org.codehaus.waffle</groupId>
+        <artifactId>waffle-skin</artifactId>
+        <version>1.0-SNAPSHOT</version>
+    </skin>
+    <bannerLeft>
+        <name>Waffle</name>
+        <src>./images/waffle-logo.png</src>
+        <href>http://waffle.codehaus.org/</href>
+    </bannerLeft>
+    <poweredBy>
+        <logo name="Hosted at Codehaus"
+              href=""
+              img="http://ci.codehaus.org/codehaus-small.png"/>
+        <logo name="Build with Maven 2"
+              href=""
+              img="images/logos/maven-feather.png"/>
+        <logo name="The best Java IDE"
+              href=""
+              img="http://www.jetbrains.com/idea/opensource/img/banners/idea88x31_white.gif"/>
+    </poweredBy>
+    <body>
+        <links>
+            <item name="English" href=""
+            <item name="Waffle Home" href=""
+        </links>
+
+        <menu name="Taglib">
+            <item name="Index" href=""
+            <item name="Button" href=""
+            <item name="Text" href=""
+        </menu>
+
+        ${reports}
+
+    </body>
+
+</project>


To unsubscribe from this list please visit:

http://xircles.codehaus.org/manage_email

Reply via email to