TProgressBar - Adição de Funcionalidade. Boas, O Classe TProgressBar tem diversas finalidades, eu costumo usa-la nas minhas grid's. Fiz uma atualização da mesma na versão 4.0, acrescentando o STRIPED ( https://www.w3schools.com/bootstrap/bootstrap_progressbars.asp ) . Como não houve nenhuma mudança na versão 5.0, assim resolvi compartilhar com vocês esta Atualização. Abraços as Todos: USO: - Basta ...
MC
TProgressBar - Adição de Funcionalidade.  
Boas,

O Classe TProgressBar tem diversas finalidades, eu costumo usa-la nas minhas grid's.

Fiz uma atualização da mesma na versão 4.0, acrescentando o STRIPED ( https://www.w3schools.com/bootstrap/bootstrap_progressbars.asp ) .

Como não houve nenhuma mudança na versão 5.0, assim resolvi compartilhar com vocês esta Atualização.

Abraços as Todos:


USO:

- Basta acionar o setStriped() caso não queira animação ou setStriped(true) com animação

 
  1. <?php
  2. $bar = new TProgressBar;
  3. $bar->setValue(100);
  4. $bar->setStriped(true);
  5. ?>




CODIGO

 
  1. <?php
  2. namespace Adianti\Widget\Util;
  3. use Adianti\Widget\Base\TElement;
  4. /**
  5. * TProgressBar
  6. *
  7. * @version 5.0
  8. * @package widget
  9. * @subpackage util
  10. * @author Ademilson Nunes
  11. * @author Pablo Dall'Oglio
  12. * @copyright Copyright (c) 2006 Adianti Solutions Ltd. (http://www.adianti.com.br)
  13. * @license http://www.adianti.com.br/framework-license
  14. * @Update MarcoARCampos
  15. */
  16. class TProgressBar_V51 extends TElement
  17. {
  18. private $value;
  19. private $mask;
  20. private $className;
  21. private $striped;
  22. public function __construct()
  23. {
  24. parent::__construct('div');
  25. $this->{'class'} = 'progress';
  26. $this->{'id'} = 'tprogressbar_'.mt_rand(1000000000, 1999999999);
  27. $this->{'style'} = 'margin-bottom:0; text-shadow: none;';
  28. $this->mask = '{value}%';
  29. $this->className = 'info';
  30. $this->striped = ''; // by MarcoARCampos
  31. }
  32. /**
  33. * set mask for progress bar value Ex: "{value}%"
  34. */
  35. public function setMask($mask)
  36. {
  37. $this->mask = $mask;
  38. }
  39. /**
  40. * set style class
  41. */
  42. public function setClass($class)
  43. {
  44. $this->className = $class;
  45. }
  46. /**
  47. * Set the value of progress bar
  48. */
  49. public function setValue($value)
  50. {
  51. $this->value = $value;
  52. }
  53. /**
  54. * Set Progress bars can also be striped:
  55. * parameter - $active -> Add class .active to animate the progress bar
  56. * By MarcoARCampos
  57. */
  58. public function setStriped( $active = FALSE )
  59. {
  60. $this->striped = (( $active ) ? "progress-bar-striped active" : "progress-bar-striped" );
  61. }
  62. /**
  63. * Shows the widget at the screen
  64. */
  65. public function show()
  66. {
  67. $progressBar = new TElement('div');
  68. // Striped by MarcoARCampos
  69. $progressBar->{'class'} = "progress-bar progress-bar-{$this->className} {$this->striped}";
  70. $progressBar->{'role'} = 'progressbar';
  71. $progressBar->{'arial-valuenow'} = $this->value;
  72. $progressBar->{'arial-valuemin'} = '0';
  73. $progressBar->{'arial-valuemax'} = '100';
  74. $progressBar->{'style'} = 'width: ' . $this->value . '%;';
  75. $value = str_replace( '{value}', $this->value, $this->mask );
  76. $progressBar->add( $value );
  77. parent::add( $progressBar );
  78. parent::show();
  79. }
  80. }
  81. ?>





Curso Dominando o Adianti Framework

O material mais completo de treinamento do Framework.
Curso em vídeo aulas + Livro completo + Códigos fontes do projeto ERPHouse.
Conteúdo Atualizado!


Dominando o Adianti Framework Quero me inscrever agora!

Comentários (0)