Este tutorial irá lidar com o conceito de manipulação de sinais no PHP-GTK 2 o que é importante e fundamental, já que é isto que faz a sua aplicação "tick"!.
Você deve ter notado que ao final de todos os programas PHP-GTK 2 que nós escrevemos tem este comando:
Gtk::main(); |
Gtk::main_quit(); |
Primeiramente, será útil definir alguns termos que nós vamos usar feqüentemente.
- Ação: Isto é alguma coisa que acontece. Por exemplo, o usuário clica em um botão conta como uma ação.
- Sinal: Esta é uma notificação gerada quando um evento acontece. Esta é a maneira para a sua aplicação saber que uma ação recém ocorreu.
- Callback: Uma função ou metodo que é invocado por outro pedaço de código.
- Manipulador de Sinal: um callback que é chamado em resposta a um sinal ser emitido. Aqui é onde você coloca o código que irá manipular o sinal.
- Eventos: estes são um feixe continuo de impulsos que comunica as mudanças de baixo nível no ambiente para o sistema de gerenciamento de janelas.
A manipulação de sinais basicamente consiste em conectar um sinal ao seu manipulador de sinal, e claro, escrever o manipulador de sinal em sí. O trabalho de gerar um sinal sempre que uma ação ocorrer é feito pelo PHP-GTK 2. Outra coisa para notar é que a geração do sinal não garante que o susário tenha realizado alguma ação. è possível gerar manualmente um sinal, e o PHP-GTK 2 gera sinais internamente a toda a hora.
Uma situação comum de um sinal ser gerado internamente e usado é quando GtkAdjustment emite "value-changed" para um GtkProgressBar usa-lo. Então, alguns sinais tem um manipulador padrão já embutido, o qual será executado se você conectar ou não manualmente um manipulador de sinal para este sinal.
A maioria das vezes entretanto, se você quer que algo aconteça quando um sinal é gerado, você precisa criar um manipulador de sinal para ele.