Desenvolvendo aplicações  desktop  com PHP-GTK Por: Maykel dos Santos Braz <maykelsb@yahoo.com.br>
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 $janela  = new  GtkWindow ; $janela -> show_all (); Gtk :: Main (); ?>   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 - Interface Biblioteca de  widgets Área de trabalho Hierarquia 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 maykelsb @ yahoo .com. br Blog http :// seekers - sanctuary . blogspot .com LinkedIn http ://www. linkedin .com/in/ maykeldossantosbraz

Php Gtk

  • 1.
    Desenvolvendo aplicações desktop com PHP-GTK Por: Maykel dos Santos Braz <maykelsb@yahoo.com.br>
  • 2.
    Sobre o autorBacharel 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)
  • 3.
    Roteiro Sobre oautor; Introdução; Conhecendo o PHP-GTK; Glade; Referências.
  • 4.
    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
  • 5.
    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 – ????
  • 6.
    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
  • 7.
    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 $janela  = new  GtkWindow ; $janela -> show_all (); Gtk :: Main (); ?> Fonte : Código de teste – PHP-GTK Brasil
  • 8.
    PHP-GTK Principais conceitosWidgets : Componentes da interface. Podem ser visuais ou não; Sinais: Mensagens emitidas pelos widgets ;
  • 9.
    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...
  • 10.
    Widgets –Empacotamento Empacotamento Limitado pela estrutura do contêiner; Espaçamento e dimensões adaptados à estrutura do contêiner;
  • 11.
    Exemplo de código:Empacotamento
  • 12.
    Widgets –Posicionamento Posicionamento Limitado pelo tamanho da janela; Espaçamento e dimensões definidas pelo usuário;
  • 13.
    Exemplo de código:Posicionamento
  • 14.
    Sinais Mensagens emitidaspela GUI; São tratados por funções/métodos do tipo callback ;
  • 15.
    Exemplo de código:Tratando sinais connect_simple(); int connect_simple(string, callback[, mixed[, ...]]); connect(); int connect(string, callback[, mixed[, ...]]);
  • 16.
    Glade – Criadorde GUIs Agiliza a criação de GUIs; Independente de linguagens de programação; gladeXML.
  • 17.
    Glade - InterfaceBiblioteca de widgets Área de trabalho Hierarquia Propriedades
  • 18.
  • 19.
    Exemplo de código:Carregando o “.glade” A classe GladeXML; get_widget();
  • 20.
    Referências Sites oficiaisPHP: 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
  • 21.
    Referências Tutorial PHP-GTK2http :// 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
  • 22.
    Contato E-mail maykelsb@ yahoo .com. br Blog http :// seekers - sanctuary . blogspot .com LinkedIn http ://www. linkedin .com/in/ maykeldossantosbraz