* Visite o ALJUG - http://aljug.blogspot.com - Noticias sobre a comunidade java alagoana e do mundo * Visite o blog Mundo Gamificado www.mundogamificado.com.br - E vamos mudar o mundo! *

quarta-feira, 12 de dezembro de 2018

Resetando valores na p:treetable

Boa pessoALL,  quanto tempo!

Mais é assim mesmo, vivo sempre aparece!


Hoje vou falar de algo que estava tirando meu sono, e que depois de muito procurar vi que é muito simples, sobre este assunto pude encontrar várias soluções porém nenhuma deu certo, comigo, e por isso venho colocar a solução que foi de forma bastante satisfatória.

O que eu queria?

Eu queria limpar a árvore para um estado inicial, ou se houvesse três checkboolean marcados e eu desmarcasse um, a arvore fosse redenderizada e mostrasse apenas que estavam ativas. Pois bem, pense no sufoco! Mais ainda, eu queria que de um lista fosse montado uma árvore(p:treeTable) com todos as opções, exemplo:
*Futebol              *Time                    *Estádio
  - Time                 - Patrocinador         - Capacidade
  - Estádio             - Presidente             - Local
  - Jogadores         - Treinador              - Nome

Então, o cenário é adicionar os marcados em (*) asterisco e a partir deles montasse uma árvore, até aí tudo certo, montava direitinho, porém quando eu desmarcava uma opção a árvore não o tirava, ainda ficava com as três opções.

Então, qual era minha ideia, limpar a árvore e montar com as que ainda permanecem ativas.

Achei essas soluções: Clean Input e reset values , mas não obtive sucesso.

A solução abaixo foi que realizou conforme eu desejava:


public void limparArvore(TreeNode raiz){
  raiz.getChildren().clear();
  raiz.clearParent();
  System.out.println("Limpando a árvore!");
  PrimeFaces pf = PrimeFaces.current();
  pf.resetInputs("form:arvore");
  raiz = createNode();
  pf.ajax().update("form:arvore");
 }

Com esse código eu fiquei muito feliz!

Espero ter ajudado a você, dê seu feedBack!

Até a próxima.

sexta-feira, 9 de fevereiro de 2018

Mudando a cor das series dos charts primefaces

E aí pessoal, quanto tempo?

Hoje vou falar da alteração de cor das series nos charts do primefaces, algo muito simples que muitos ensinam por ai de forma muito complicada.

O exemplo de hoje é Despesa vs. Receita, então visualmente sempre colocam vermelho para despesa e verde para receita.

Pois bem, hoje iremos usar o Barchart, e com isso ao criar a instancia como abaixo:


 
     private BarChartModel barModel;

Segundo este exemplo o vermelho vem na frente e depois o verde, então nesse caso ficaria assim:


   barModel.setSeriesColors("FF0000,32CD32");

Com isso, visualmente já iria visualizar assim:


Agora caso você queira que além das barras, o texto também, aí neste caso ficaria assim:


function alterarTextoLabel() { 
    this.cfg.axes.yaxis.tickOptions = { 
     textColor : '#32CD32' 
   }; 
  this.cfg.axes.xaxis.tickOptions = { 
     textColor : '#FF0000'
   }; 
}


Isso mesmo, seria uma função javascript, pois o primefaces usa o jqplot.

Espero ter ajudado, até a próxima!