quarta-feira, 13 de janeiro de 2010

Projeto Engnatv

Como comentei em post anterior esta primeira semana de 2010 iniciei ministrando um treinamento de 40h de Animações com ActionScript 3 no Flash CS4.

Este treinamento foi realizado na faculdade Feevale como parte do projeto Engnatv patrocinado pela Finep.

O treinamento vem com o intuito de dar subsídios para a criação de animações com ou sem interatividade para facilitar ao professor de ensino médio ensinar conceitos das seguintes disciplinas: Biologia, Física, Informática, Matemática e Química, estimulando também os alunos a assimilar mais facilmente estes conteúdos.

Convite: Quem tiver interesse em ser voluntário na criação de animações entre em contato através dos e-mails listados na seção Contatos do site do projeto. As animações serão publicadas no site juntamente com o nome do autor.

O conteúdo programático foi o seguinte:
Diferenças entre Flash, Flex, Flash Player
Noções básicas de ActionScript 3 (AS3)
=> Variáveis e Constantes
=> Tipos de Dados
=> Classe Object
=> Arrays
=> Debug
=> Operadores
=> Condicionais
=> Loops
=> Funções
Orientação a Objeto (OO)
=> Classes
=> Package
=> Métodos
=> Método construtor
=> Variáveis de instância
=> Herança
Objetos Visuais
=> Display List
=> Método addChild
=> Criando um MovieClip e exportando para AS3
=> Desenhando com graphics
Eventos
=> Interceptando e removendo eventos
=> KeyboardEvent
=> MouseEvent
=> FocusEvent
=> Criando eventos customizados
Carregando arquivos
=> Arquivos de texto
=> XML
=> Manipulando informações de um arquivo XML
=> Carregando sons
=> Imagens
=> Vídeos
=> Objeto de vídeo do Flash FLVPlayBack
Animações
=> Timer
=> Evento EnterFrame
=> Tween
=> Transition
=> TimeLine
=> Motion Tween

quarta-feira, 23 de dezembro de 2009

Palestras / Treinamentos

Este ano foi particularmente diferenciado na minha vida profissional.

Sempre fui desenvolvedor, nunca tinha ministrado cursos ou palestras, mas neste ano isso mudou. Primeiramente foi um convite do Igor Costa para uma palestra online no FlexMania realizado nos dias 06 e 07 de julho onde palestrei sobre Criando e estendendo componentes para o Flex 3.

Neste último trimestre já ministrei três treinamentos,
Programação ActionScript com Flash CS4 na Alfamídia e Desenvolvimento de Aplicativos com Adobe Flex e Acesso a dados com Adobe Flex na TargetTrust. Todos estes sobre indicação da Gabriela Trindade.

Agora para janeiro irei ministrar um treinamento na Feevale sobre AS3 no Flash para professores e alunos
de um projeto de extensão chamado ENGNATV, também sobre indicação da Gabriela, fico devendo algum churrasco para ela, hehehehe.

É muito bom poder passar o conhecimento adquirido para outras pessoas. Espero que em 2010 outras oportunidades como estas ocorram.

quinta-feira, 17 de dezembro de 2009

Flex For Kids 2010

Dia 06/02/2010 será realizado o evento Flex For Kids 2010 com 10 palestras on-line com grandes nomes da comunidade Adobe Flex brasileira.

Para participar é só R$ 30,00. Todo dinheiro arrecadado será doado ao Cotolengo de Mato Grosso do Sul.

Além de ótimas palestras você ainda irá ajudar uma boa causa.

Este evento está sendo organizado pela e-Genial, aos quais dou meus parabéns.

Participem e divulguem.

sexta-feira, 11 de dezembro de 2009

Livros Zend (PHP) + Flex (Português)

Já fiz curso de PHP, mas não trabalho diretamente com esta ferramenta, o meu forte mesmo em backend é Java.

Mas para quem trabalha e precisa se aprofundar na integração PHP + Flex, um framework que tenho visto as pessoas nos fóruns e listas falarem bem é o Zend Framework. Além da boa aceitação do público, ano passado a Zend e a Adobe montaram uma parceria para melhorar a integração do Zend com o Flex.

Pesquisando encontrei dois livros do Zend que pela sinopse parecem muito bons:
Um livro que fala da integração entre estas duas ferramentas é o livro Desenvolvendo sistemas com Flex e PHP de Daniel Pace Schmitz que possue um capítulo falando desta integração. Já tinha comentado sobre este livro num post anterior.
O Daniel está para lançar o livro Dominando Flex e Zend onde irá falar mais sobre esta integração.

segunda-feira, 23 de novembro de 2009

Style backgroundColor não funciona com styleFunction no AdvancedDataGrid

Uma coisa que me chamou a atenção quando criei o componente DateChooserCustom é que em algumas classes / interfaces backgroundColor aparece como propriedade e não como estilo. As classes / interfaces onde isto acontece são: flash.text.TextField, mx.core.IUITextField, mx.preloaders.DownloadProgressBar e mx.preloaders.IPreloaderDisplay. Inclusive as duas primeiras possuem além disso uma propriedade background (Boolean) que indica se haverá preenchimendo do background.

Precisei nestes dias utilizar styleFunction no AdvancedDataGrid retornando um backgroundColor. Para quem não sabe
styleFunction é uma função que deve retornar um object com estilos como propriedade para ser utilizada na renderização das células. Para minha surpresa este estilo não estava sendo aplicado enquanto que outros sim. Investigando aqui e ali descobri uma entrada no Adobe Bug System relatando a mesma situação (necessita login para visualizar), onde postei um workaround.
Dica: Quem quiser votem, porque quanto mais votos maior a possibilidade do Flex Team darem uma olhada.

O que acontece é o seguinte, o
itemRenderer default é um AdvancedDataGridItemRenderer que extende UITextField que implementa IUITextField que como comentado acima tem backgroundColor como propriedade.
Os estilos são aplicados na função protected
applyUserStylesForItemRenderer, esta verifica se existe um styleFunction para o grid e para coluna e os aplica, nesta ordem, o que significa que o da coluna terá prevalência se o grid e a coluna aplicarem o mesmo style.

Devido o código desta função o workaround não ficou dos mais elegantes, mas o que fiz foi sobreescrever esta função e verificar se o style é
backgroundColor, se for coloco true na propriedade background e na propriedade backgroundColor aplico a cor recebida sendo que esta verificação deve ser aplicada no teste do styleFunction do grid e da coluna.

Uma alternativa mais elegante seria criar um item renderer customizado que herde de
AdvancedDataGridItemRenderer e criar neste um style substituto ao backgroundColor.

sexta-feira, 20 de novembro de 2009

Flex SDK 3.5

Ao entrar hoje no Adobe Bug System do Flex vi que tem correções para o Flex SDK 3.5 (exige login), mas olhando no site de download do Flex ainda está oferecendo o 3.4.
Acredito que logo estará disponível o SDK 3.5 para download.

Foram 23 correções
(exige login para ver mais detalhes):
  1. #1010 runtime error when repopulating datagrid dataprovider while a field is editable
  2. DataGird which contains TextInput as ItemRenderer sets focus incorrectly.
  3. DataGrid default sorting causes "Find criteria must contain at least one sort field value" RTE when some of the elements are empty
  4. DataGrid scrolls more than 1 page even if you click scroll-bar-area (=the area in the scrollbar's thumb movable)
  5. DragManager performance problem with SDK 3.2.0 and later.
  6. DragManager.showFeedback doesn't work in AIR
  7. DragManager.showFeedback doesn't work in AIR (Mac only)
  8. Embedded Fonts in DataGridHeader are cut off on right border
  9. Encoded plus sign (%2B) is decoded incorrectly in HTTPService with flashvars format
  10. Error #1063 when using a DataGrid as the dropdown in a ComboBox in Flex 3.4.0.9271
  11. Focus to DataGrid causes RTE when lockedColumnCount is equal to or larger than visible column count
  12. FocusManager RTE in defaultButton scenario. was: Navigating around LiveCycle Workspace results in an ActionScript null pointer error
  13. HTTPService responders are called twice
  14. Halo ComboBox not updating dataprovider correctly after ComboBox has been opened
  15. Horizontal text overflow in Tree when vertical scrollbar hidden, shown.
  16. Inifinite Loop on FocusManager when Tabbing
  17. No data while using "Object" as "resultFormat" for Sharepoint WebService
  18. StringIndexOutOfBoundsException when using a properties-File
  19. Using Window's statusBarFactory while having window children causes status bar to render incorrectly
  20. Using a TextInput as an itemRenderer in TileList or HorizontalList causes a RTE
  21. [new] You get a RTE when setting selectedItem to an invalid item [old] Using a Tree as an itemRenderer causes a RTE
  22. maxHorizontalScrollPosition exceeds max value of horizontalScrollPosition
  23. swf app in browser doesn't load due to exception in new line added to Preloader:rslCompleteHandler

terça-feira, 17 de novembro de 2009

Flash Player 10.1 e AIR 2

Para quem está aguardando foi liberado o Flash Player 10.1 prerelease e o AIR 2 beta.

Estas novas versões trazem muitas novidades que podem ser vistas nos sites informados acima.