CrappUIDisplay

O CrappUIDisplay é a classe base de todos os componentes da Crapp UI.

Características
Valor

Class

crapp.ui.display.CrappUIDisplay

Style Tag

Nenhum

Exemplos

<priori>
    <imports>
        <crapp.ui.display.CrappUIDisplay />
    </imports>
    <view>
        <CrappUIDisplay bgColor="0xFF0000" width="100" height="50"/>
    </view>
</priori>

Propriedades do Componente

  • x:Float: Move o objeto na tela no eixo x, da esquerda para a direita.

  • y:Float: Move o objeto na tela no eixo y, de cima para baixo.

  • z:Float: Cria um efeito de profundidade projetando uma sombra. Este efeito pode também modificar a ordem de renderização dos objetos.

  • width:Float: Define a largura do objeto.

  • height:Float: Define a algura do objeto.

  • disabled:Bool: Desabilita o objeto e todos os seus filhos de maneira recursiva.

  • left:Float: Garante que o lado esquerdo do objeto se mantenha ancorado em uma determinada posição. Em combinação com a propriedade right, estes parametros vão influenciar na propriedade width de forma automática.

  • right:Float: Garante que o lado direito do objeto se mantenha ancorado em uma determinada posição. Em combinação com a propriedade left, estes parametros vão influenciar na propriedade width de forma automática.

  • top:Float: Garante que o topo do objeto se mantenha ancorado em uma determinada posição. Em combinação com a propriedade bottom, estes parametros vão influenciar na propriedade height de forma automática.

  • bottom:Float: Garante que a base do objeto se mantenha ancorado em uma determinada posição. Em combinação com a propriedade top, estes parametros vão influenciar na propriedade height de forma automática.

  • bgColor:Int: Define qual a cor do background do objeto. Normalmente é definido como um valor hexadecimal.

Propriedades relacionadas à estilização do componente.

  • theme: Define o tema do componente.

  • tag: Define a tag do tema do componente. Alguns componentes da Crapp UI já possuem uma tag pré-definida que pode ser alterada.

  • variant: Define a variante de estilo da tag correspondente.

  • style: Obtém qual composição de estilo está sendo obtida pelo componente, através da combinação de tema, tag e variante. É possível também setar o estilo para sobrepor e combinar com o estilo pré-definido ao objeto.

Métodos do Componente

  • addChild(child:PriDisplay): Adiciona um objeto dentro do outro. O objeto que está contido é chamado de child. O objeto que contém o child é chamado de parent. Caso você tente adicionar um child que já possui um parent, ele será removido primeiro do parent atual.

  • addChildList(childList:Array<PriDisplay>): O mesmo que o método addChild, porém com a conveniência de adicionar diversos objetos simultaneamente.

  • removeChild(child:PriDisplay): Remove o elemento visual de dentro do objeto parent. Caso o child não exista dentro deste parent, o método não terá efeito.

  • removeChildList(childList:Array<PriDisplay>): O mesmo que o método removeChild, porém com a conveniência de remover diversos objetos simultaneamente.

  • removeFromParent(): Remove o objeto do seu parent, caso ele possua algum.

  • removeAllChildren(): Remove todos os elementos child do objeto.

Métodos usados para inicialização e atualização

Os métodos abaixos fazem parte do ciclo de vida do componente Crapp UI e podem ser sobrescritos para obter controle sobre a inicialização e renderização do componente:

  • setup(): O método setup é executado sempre durante o processo de construção da instância, ou seja, é garantido que ele será executado apenas uma vez de forma automática. Este método normalmente é utilizado para instanciar novos elementos, objetos, definir algumas configurações iniciais e qualquer outro procedimento que precise ser tratado durante o processo da instância.

  • paint(): O método paint será executado pelo menos uma vez, slogo após o método setup ser executado. Posteriormente, este método será executado repetidas vezes, sempre que o componente identificar que existe uma boa razão para atualizar a renderização de um objeto. Ao sobrescrever este método, é comum adicionar instruções relacionadas a posicionamento de objetos, ajustes de tamanho e outras propriedades visuais. Caso exista mudanças intensas e recorrentes, encontre formas otimizadas de decidir se todas as mudanças são realmente necessárias todas as vezes para garantir boa performance da aplicação. Não execute chamadas diretas ao método paint. Caso deseje executar as operações do paint, você deve executar o método updatedisplay. O método paint normalmente será executado nas seguintes situações:

    • O elemento sofreu uma mudança de altura ou largura;

    • Algum filho foi adicionado ou removido;

    • O próprio objeto foi adicionado ou removido;

    • Alguma instrução executou o método updateDisplay;

  • updateDisplay(): Este método não deve ser chamado em situações que você deseja efetuar um re-paint, ou seja, é uma forma indireta de executar o método paint. Esta é a forma adequada pois o método updateDisplay poderá decidir se efetuará a chamada ao paint de forma otimizada e essa chamada será trasmitida a todos os seus filhos descendentes.

O ciclo de vida de um objeto pode ser entendido da seguinte maneira:

Drawing

Atualizado

Isto foi útil?