| Projeto IDJ - Towers Of Madness
    TowerDefenseLovecraftnianoZombicida | 
Classe virtual que modela o comportamento de um botão na interface gráfica. Mais...
#include <UIbutton.h>
| Tipos Públicos | |
| enum | State : int { DISABLED = 0, ENABLED, HIGHLIGHTED, PRESSED } | 
| Possíveis estados que um botão pode assumir.  Mais... | |
| typedef void(* | ButtonCallback )(void *) | 
| Métodos Públicos | |
| void | SetCallback (UIbutton::State stateToSet, void *caller, ButtonCallback callback) | 
| Seta o callback a ser chamado para cada estado.  Mais... | |
| void | SetClickCallback (void *caller, ButtonCallback callback) | 
| Seta o callback a ser chamado ao clicar no botão.  Mais... | |
| virtual void | SetUIbuttonState (UIbutton::State newState) | 
| Solicita ao botão que transite para outro estado.  Mais... | |
| UIbutton::State | GetUIbuttonState (void) const | 
| Retorna o estado atual do botão.  Mais... | |
| void | Click () | 
| Realiza o processo interno de clique.  Mais... | |
| virtual bool | Is (std::string UItype) const | 
| Checa qual o tipo do objeto.  Mais... | |
| Atributos Públicos | |
| bool | interactOnBoundingBox | 
| Métodos Protegidos | |
| UIbutton (UIbutton::State initialState=UIbutton::State::ENABLED, bool interactOnBoundingBox=true) | |
| Construtor protegido para não permitir que seja diretamente instanciado.  Mais... | |
| void | Update (float dt, bool mouseIsInside) | 
| Atributos Protegidos | |
| UIbutton::State | actualState | 
| ButtonCallback | disabledCallback | 
| ButtonCallback | enabledCallback | 
| ButtonCallback | highlightedCallback | 
| ButtonCallback | pressedCallback | 
| ButtonCallback | clickedCallback | 
| void * | disableCaller | 
| void * | enabledCaller | 
| void * | highlightedCaller | 
| void * | pressedCaller | 
| void * | clickCaller | 
Classe virtual que modela o comportamento de um botão na interface gráfica.
Essa class tem como responsabilidade modelar todo o comportamento esperado de um botão na interface gráfica sem se preocupar com nenhuma parte da renderização.
Ela possui callbacks que podem ser chamados a cada mudança de estado do botão. Esses callbacks são de ponteiros para função que não retornem nada mas recebem um ponteiro para void*. Essas funções podem ser Clojures (funções lambda). Esse ponteiro void* pode ser usado para se manipular o objeto que se desejar dentro da callback, desde que o cast seja feito corretamente.
| typedef void(* UIbutton::ButtonCallback)(void *) | 
O ponteiro para função do tipo que o callback chamará.
| enum UIbutton::State : int | 
Possíveis estados que um botão pode assumir.
Um botão pode estar em qualquer uma dos seguintes estados:
| Valores enumerados | |
|---|---|
| DISABLED | |
| ENABLED | |
| HIGHLIGHTED | |
| PRESSED | |
| 
 | protected | 
Construtor protegido para não permitir que seja diretamente instanciado.
Essa classe NÃO deve ser diretamente instanciada. Somente as classes que herdam dela.
| void UIbutton::Click | ( | ) | 
Realiza o processo interno de clique.
Basicamente, chama o callback de clique, caso tenha sido setado.
| UIbutton::State UIbutton::GetUIbuttonState | ( | void | ) | const | 
Retorna o estado atual do botão.
Retorna qual é o estado que o botão se encontra no momento.
| 
 | virtual | 
Checa qual o tipo do objeto.
Reimplementado por UItextButton e UIimageButton.
| void UIbutton::SetCallback | ( | UIbutton::State | stateToSet, | 
| void * | caller, | ||
| ButtonCallback | callback | ||
| ) | 
Seta o callback a ser chamado para cada estado.
| stateToSet | Uma enumeração State que indica qual estado deve ter seu callback alterado. | 
| caller | Um ponteiro void* que será passado ao callback para que possa se modificar coisas externas à função. Geralmente é usado this. | 
| callback | Um ponteiro para função do tipo void (*)(void*). | 
A função passada na variável callback será chamada imediatamente assim que a transição de estado for finalizada.
| void UIbutton::SetClickCallback | ( | void * | caller, | 
| ButtonCallback | callback | ||
| ) | 
Seta o callback a ser chamado ao clicar no botão.
| caller | Um ponteiro void* que será passado ao callback para que possa se modificar coisas externas à função. Geralmente é usado this. | 
| callback | Um ponteiro para função do tipo void (*)(void*). | 
A função passada na variável callback será chamada imediatamente assim que o botão for clicado.
É usado um método diferente para setar esse callback pois ele não se trata de notificação de mudança de estado mas sim de ação com relação ao botão.
| 
 | virtual | 
Solicita ao botão que transite para outro estado.
| newState | Uma enumeração que indica qual é o novo estado desejado para o botão | 
Realiza todo o processamento interno para a transição de estados e, por último, chama o callback do novo estado.
Reimplementado por UItextButton e UIimageButton.
| 
 | protected | 
| 
 | protected | 
Armazena o estado atual do botão.
| 
 | protected | 
Armazena um ponteiro a ser passado para o callback de clique. Chamado de caller pois geralmente é o que é usado para representar.
| 
 | protected | 
Armazena um ponteiro para função a ser chamada quando o botão for clicado.
| 
 | protected | 
Armazena um ponteiro a ser passado para o callback de desativação. Chamado de caller pois geralmente é o que é usado para representar.
| 
 | protected | 
Armazena um ponteiro para função a ser chamada quando o botão for desativado.
| 
 | protected | 
Armazena um ponteiro para função a ser chamada quando o botão for ativado.
| 
 | protected | 
Armazena um ponteiro a ser passado para o callback de ativação. Chamado de caller pois geralmente é o que é usado para representar.
| 
 | protected | 
Armazena um ponteiro para função a ser chamada quando o botão for destacado.
| 
 | protected | 
Armazena um ponteiro a ser passado para o callback de destaque. Chamado de caller pois geralmente é o que é usado para representar.
| bool UIbutton::interactOnBoundingBox | 
| 
 | protected | 
Armazena um ponteiro para função a ser chamada quando o botão for pressionado.
| 
 | protected | 
Armazena um ponteiro a ser passado para o callback de pressionamento. Chamado de caller pois geralmente é o que é usado para representar.
 1.8.8
 1.8.8