Upload
maykel-santos-braz
View
1.910
Download
1
Embed Size (px)
DESCRIPTION
Citation preview
Sobre o autor
Bacharel em Engenharia de Computação (2005)– UEMG – Campus Ituiutaba-MG;
BrScan Tecnologia e Proc. de Dados (2006) Zend Certified Engineer – PHP5 (2008) Especialista em Des. de Jogos Digitais (2009)
Roteiro
Sobre o autor; Introdução; Conhecendo o PHP-GTK; Glade; Referências.
Introdução
PHP: Hypertext Preprocessor – Linguagem de script modularizada;– Voltado para desenvolvimento web;– Acesso a base de dados;– Suporte a OO;– CLI – PHP 4.3/2002;– Releases
• PHP/FI 2.0 – 1996;• PHP 3 – 1998;• PHP 4 – Zend Engine – 2000;• PHP 5 – Zend Engine 2 – 2004;• PHP 6 – ????
Fonte: http://en.wikipedia.org/wiki/File:PHPCode_HelloWorld.svg
Introdução
GTK+ (The GIMP ToolKit)– Voltado para criação de GUIs;– Multiplataforma;– Baseado em Widgets;– Bind para diversas linguagens;– Releases
• GTK+ 1 – 1998;• GTK+ 2 – GObject – 2002;• GTK+ 3 – ????
Introdução
PHP-GTK– Bind de GTK+ para PHP;– Permite utilizar PHP para criação de aplicações
desktop;– Integração com Glade/XML;– Utilização de temas;– Vantagens do PHP e do GTK+;– Releases
• PHP-GTK 1• PHP-GTK 2 – GTK+ 2.6/2.12 – 2008
PHP-GTK Instalação
– Linux: http://www.php-gtk.com.br/linux– Windows: http://www.php-gtk.com.br/windows– MacOs: http://www.php-gtk.com.br/mac
Adicione o executável/binário ao PATH;
Fonte: Pacote de instalação PHP-GTK Windows
<?php<?php$janela $janela = new = new GtkWindowGtkWindow;;$janela$janela->->show_allshow_all();();GtkGtk::::MainMain();();?>?>
Fonte: Código de teste – PHP-GTK Brasil
PHP-GTK
Principais conceitos– Widgets: Componentes da interface. Podem ser
visuais ou não;– Sinais: Mensagens emitidas pelos widgets;
Widgets Originado de: “Windows Gadgets”; Níveis superiores
– Janelas (GtkWindow);– Caixas de diálogo (GtkDialog, GtkAboutDialog, etc);
Controles e Exibição– Botões (GtkButton);– Caixas de texto (GtkEntry);– etc...
Contêineres– Caixas Horizontais e Verticais (GtkHBox, GtkVBox);– Tabelas (GtkTable);– GtkFixed;– etc...
Widgets – Empacotamento
Empacotamento– Limitado pela estrutura do contêiner;
– Espaçamento e dimensões adaptados à estrutura do contêiner;
Exemplo de código: Empacotamento
Widgets – Posicionamento
Posicionamento– Limitado pelo tamanho da janela;
– Espaçamento e dimensões definidas pelo usuário;
Exemplo de código: Posicionamento
Sinais
Mensagens emitidas pela GUI;
São tratados por funções/métodos do tipo callback;
Exemplo de código: Tratando sinais
connect_simple();– int connect_simple(string, callback[, mixed[, ...]]);
connect();– int connect(string, callback[, mixed[, ...]]);
Glade – Criador de GUIs
Agiliza a criação de GUIs; Independente de linguagens de programação; gladeXML.
Glade - InterfaceB
ibli
otec
a de
B
ibli
otec
a de
widgets
widgets
Área de trabalhoÁrea de trabalho
Hierarquia
Hierarquia
Propriedades
Propriedades
Exemplo de código: GladeXML
Exemplo de código: Carregando o “.glade”
A classe GladeXML; get_widget();
Referências Sites oficiais
– PHP: Hypertext Preprocessor – http://php.net– GTK+ – http://www.gtk.org/– PHP-GTK – http://gtk.php.net/– PHP-GTK Brasil – http://www.php-gtk.com.br/– Glade User Interface Builder - http://glade.gnome.org/– Glade/Gtk+ for Windows - http://sourceforge.net/projects/gladewin32
Livros– PHP-GTK – Criando Aplicações Gráficas com PHP. Pablo
Dall’Oglio. Editora Novatec. 2007 Revistas
– PHP Magazine #2 / #3 / #4 / #5 / #6
Referências Tutorial PHP-GTK2
– http://br.geocities.com/paulotravaglia/
PHP – Wikipedia– http://pt.wikipedia.org/wiki/PHP– http://en.wikipedia.org/wiki/PHP
GTK+ – Wikipedia– http://pt.wikipedia.org/wiki/GTK– http://en.wikipedia.org/wiki/GTK%2B
List of widgets toolkits – Wikipedia– http://en.wikipedia.org/wiki/List_of_widget_toolkits
Overview of the GNOME Plataform– http://developer.gnome.org/doc/guides/platform-overview/platform-overview.html
Qt– http://en.wikipedia.org/wiki/Qt_(toolkit)
Language Binding– http://en.wikipedia.org/wiki/Language_binding
Callback functions– http://en.wikipedia.org/wiki/Callback_(computer_science)
Manipulação de sinais– http://www.php-gtk.com.br/index.doc.php?doc=tutorials/tutorials.signals.html
Glade - Wikipedia– http://pt.wikipedia.org/wiki/Glade
Contato
E-mail– [email protected]
Blog– http://seekers-sanctuary.blogspot.com
LinkedIn– http://www.linkedin.com/in/maykeldossantosbraz