CrappUIModal
Componente para criação de elementos modais, que se sobrepõem à interface da aplicação.
Class
crapp.ui.display.modal.CrappUIModal
Extends
Style Tag
CrappUIStyleDefaultTagType.MODAL
Composites
Nenhum
Propriedades do Componente
allowCloseModal: Determina se o modal pode ser fechado manualmente através de ações do usuário.
allowCloseModalWithEsc: Permite que o modal seja fechado ao pressionar a tecla ESC.
Como usar
O componente CrappUIModal
serve como base para criar modais ou overlays na aplicação. Ele é utilizado para sobrepor conteúdos à interface principal, gerenciando a exibição e o fechamento desses elementos.
Extensão e Personalização
CrappUIModal estende CrappUILayout
, permitindo que você crie layouts customizados para seus modais. Você pode estendê-lo para criar novos componentes modais que definam conteúdo, botões e comportamentos específicos.
Abertura e Fechamento
O modal pode ser exibido chamando o método open()
, que internamente registra o modal no CrappUIModalController
. Para fechá-lo, basta chamar o método close()
, que remove o modal dos controles do gerenciador.
Eventos de Fechamento
As propriedades allowCloseModal
e allowCloseModalWithEsc
permitem configurar se o modal pode ser fechado manualmente (por exemplo, ao clicar fora ou através de uma tecla, como ESC). O método estático dispatchCloseModalHelper
auxilia no disparo de eventos para fechar o modal.
Integração com o Controller
O CrappUIModal
se integra com o CrappUIModalController
, que gerencia a pilha de modais ativos e trata eventos globais (como o pressionar da tecla ESC) para fechar o modal mais recente, se permitido.
Exemplos de Uso
@priori('
<priori>
<view>
</view>
</priori>
')
class MeuModal extends CrappUIModal {
override function setup() {
super.setup()
// Personalize o layout e o conteúdo do modal
}
override function paint() {
super.paint()
// Personalize o layout e o conteúdo do modal
}
override private function onOpenModal():Void {
// Lógica executada quando o modal é aberto
trace("Modal aberto!");
}
override private function onCloseModal():Void {
// Lógica executada quando o modal é fechado
trace("Modal fechado!");
super.onCloseModal();
}
}
// Em outro lugar da aplicação:
var modal = new MeuModal();
modal.open();
No exemplo acima, a criação de um modal personalizado é feita estendendo CrappUIModal
. Ao chamar open()
, o modal é adicionado ao controle global, e ao chamar close()
ele é removido – tudo isso com suporte para fechamento via ESC ou cliques externos, conforme as propriedades definidas.
Dessa forma, o CrappUIModal
facilita o desenvolvimento de componentes modais ou overlays, garantindo uma gestão centralizada e um comportamento consistente na aplicação.
Atualizado
Isto foi útil?