|
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