Exemple #1
0
//----------------------------------------------------------
void FuncaoWidget::exibirDadosParametro(Parametro param, TabelaObjetosWidget *tab, unsigned idx_lin)
{
 if(tab)
 {
  QString str_aux;

  /* Para as duas tabelas (tab_parametros ou tab_retorno) as duas primeiras colunas
     são destinadas, respectivamente, ao nome e tipo do parâmetro */
  tab->definirTextoCelula(QString::fromUtf8(param.obterNome()),idx_lin,0);
  tab->definirTextoCelula(QString::fromUtf8(*param.obterTipo()),idx_lin,1);

  /* Armazena na linha da tabela uma cópia do tipo do parâmetro.
      Isso é usado pelo método obterParametro() quando o usuário
      solicita obter um parâmetro a partir de um a linha da tabela */
  tab->definirDadoLinha(QVariant::fromValue<TipoPgSQL>(param.obterTipo()), idx_lin);

  /* Caso a tabela passada seja a de parâmetro configura as demais
     colunas com os demais atributos do parâmetro */
  if(tab==tab_parametros)
  {
   //Exibe se o parâmetro é de entrada/saída
   if(param.parametroEntrada()) str_aux="IN";
   if(param.parametroSaida()) str_aux+="OUT";
   tab->definirTextoCelula(str_aux,idx_lin,2);

   //Exibe o valor padrão do parâmetro
   tab->definirTextoCelula(QString::fromUtf8(param.obterValorPadrao()),idx_lin,3);
  }
 }
}
//----------------------------------------------------------
void ParametroWidget::definirAtributos(Parametro param, ModeloBD *modelo)
{
 this->parametro=param;

 //Configura os campos do formulário com os valores do parâmetro passado
 param_in_chk->setChecked(param.parametroEntrada());
 param_out_chk->setChecked(param.parametroSaida());
 valorpadrao_edt->setText(QString::fromUtf8(param.obterValorPadrao()));
 tipo_pgsql->definirAtributos(param.obterTipo(), modelo);

 ObjetoBaseWidget::definirAtributos(modelo,NULL,&this->parametro);
}