Formação Uwa Netvibes - Labs Sapo UA

951 visualizações

Publicada em

Formação em UWA (Universal Widget API)

Publicada em: Tecnologia
0 comentários
1 gostou
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
951
No SlideShare
0
A partir de incorporações
0
Número de incorporações
15
Ações
Compartilhamentos
0
Downloads
7
Comentários
0
Gostaram
1
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide














  • Formação Uwa Netvibes - Labs Sapo UA

    1. 1. UWA desenvolvimento de widgets baseadas em uwa Thursday, March 5, 2009
    2. 2. Formatos ____________________________________________________________________________ XML/XHTML strict UTF8 Namespaces Tem de incluir o Netvibes Widget Namespace Thursday, March 5, 2009
    3. 3. Metodologia ____________________________________________________________________________ - Ficheiro XHTML sem qualquer código server-side - - Não utilizar ficheiros css ou js externos - Thursday, March 5, 2009
    4. 4. Desenvolvimento standalone ____________________________________________________________________________ Existe uma necessidade de emular o ambiente do Netvibes. Adicionar estas duas linhas no header do ficheiro html. Thursday, March 5, 2009
    5. 5. Preferences ____________________________________________________________________________ A tag <preferences> é uma tag específica do UWA, e permite especificar as propriedades do menu de edição da widget. As preferences podem ser do tipo: - text - range - list - boolean - hidden - password ATENÇÃO - neste momento, as preferences do tipo list não funcionam no modo standalone! Thursday, March 5, 2009
    6. 6. O que falta? _____________________________________________________________________________ Thursday, March 5, 2009
    7. 7. Widget events ____________________________________________________________________________ Os seguintes eventos devem ser implementados e declarados apenas uma única vez, sendo-lhes atribuido o código que definirá o comportamento da widget. widget.onLoad() - é a função chamada quando a widget é lançada. widget.onRefresh() - esta função é chamada quando é efectuado o refresh à widget, seja manual ou automaticamente. widget.onResize() - evocada quando a widget sofre um resize na plataforma. (De momento funciona apenas na plataforma Netvibes) widget.onSearch() - esta função é evocada quando é efectuado um search na plataforma Netvibes. (De momento funciona apenas na plataforma Netvibes) widget.onResetSearch() - esta função é evocada quando é feito um reset ao search do Netvibes. (De momento funciona apenas na plataforma Netvibes) widget.onKeyboardAction() - esta função é chamada quando é pressionada uma tecla. (De momento funciona apenas na plataforma Netvibes) Thursday, March 5, 2009
    8. 8. Widget events ____________________________________________________________________________ Como tratar os elementos pertencentes ao body da widget? widget.body - esta é a referência para o body da widget. Equivale ao document.body, mas é limitado à widget. widget.createElement(tagName) - cria um novo elemento e equivale ao document.createElement(). widget.setBody(code) - define conteúdo para o body da widget e o seu argumento deve ser constituido por uma string de XHTML. Atenção que o conteúdo anterior do body é apagado e substituido pelo inserido por este método. Thursday, March 5, 2009
    9. 9. Conteúdo dinâmico ____________________________________________________________________________ Todo o conteúdo de código server-side deve encontrar-se num ficheiro externo. A página da widget vai aceder à informação gerada pela página dinâmica através de chamadas em ajax: - UWA.Data.getJson(url, callback) - UWA.Data.getXML(url, callback) - UWA.Data.getText(url, callback) - UWA.Data.getFeed(url, callback) A página com código server-side pode enviar dados de resposta em formato json, xml, feed ou texto. Thursday, March 5, 2009
    10. 10. Conteúdo dinâmico ____________________________________________________________________________ Os métodos descritos atrás são, no fundo, atalhos do seguinte método: - UWA.Data.request(url, request object) Este método pode ser utilizado para consultas mais complexas, pois permite passar parâmetros, método, etc... Ex: Parâmetros a definir: 'method': 'get' ou 'post'. (default é 'post') 'proxy': 'ajax' ou 'feed'. (default é 'ajax') 'type': 'text', 'xml', 'html' ou 'json'. (default é 'text') 'cache': seconds of server caching. (default é undefined) 'onComplete': nome da função de callback. (default é undefined) 'parameters': se o 'method' fôr do tipo 'post', aqui são inseridos os parâmetros. (default é undefined) Thursday, March 5, 2009
    11. 11. Conteúdo dinâmico ____________________________________________________________________________ Que formato utilizar? JSON (Javascript Object Notation) Porquê? - o parsing dos dados é mais rápido - converte-se facilmente a informação JSON para um objecto de javascript Thursday, March 5, 2009
    12. 12. E que tal uns exemplos? ____________________________________________________________________________ Vamos meter as mãos na massa :) Thursday, March 5, 2009
    13. 13. Links de interesse ____________________________________________________________________________ http://netvibes.org/ http://dev.netvibes.com/ http://dev.netvibes.com/doc/uwa_specification/using_javascript_and_ajax http://dev.netvibes.com/doc/uwa/documentation/uwa_monopage http://dev.netvibes.com/doc/howto/use_events http://www.netvibes.org/specs/uwa/current-work/ http://dev.netvibes.com/doc/uwa/howto/using_uwa_events http://dev.netvibes.com/doc/uwa/documentation/cheatsheet Thursday, March 5, 2009
    14. 14. Rodolfo Costa Labs.SAPO UA http://labs.sapo.pt/ua março/2009 Thursday, March 5, 2009

    ×