PHP-GTK – rozszerzenie PHP umożliwiające tworzenie programów komputerowych posiadających graficzny interfejs użytkownika oparty na bibliotece GTK+. Rozszerzenie dostępne jest na licencji LGPL[1]. Zostało stworzone przez Andreja Zmievskiego[2][3].

PHP-GTK
Logo PHP-GTK
Logo programu
ilustracja
Autor PHP Group
Pierwsze wydanie 1 marca 2001
Aktualna wersja stabilna 2.0.1 – 16 maja 2008; ponad 15 lat temu
Platforma sprzętowa wieloplatformowe
System operacyjny wieloplatformowe
Rodzaj rozszerzenie PHP
Licencja GNU Lesser General Public License
Strona internetowa

PHP-GTK było wykorzystywane do tworzenia graficznych narzędzi konfiguracyjnych przez developerów polskiej dystrybucji Linuksa KateOS[4].

Historia edytuj

Pierwsza wersja PHP-GTK – 0.0.1 Genesis – wydana 1 marca 2001, została w całości napisana przez Andreja Zmievskiego. Począwszy od wersji 0.0.3 slow glass do rozwijania rozszerzenia zaczęli przyłączać się inni programiści. Najnowsza wersja rozszerzenia to 2.0.1 you knew this was coming, wydana 16 maja 2008[5].

28 maja 2009 twórcy PHP-GTK zdementowali pogłoski o śmierci projektu. Stwierdzili, że brak nowych wersji spowodowany jest oczekiwaniem na wydanie PHP 5.3 i nowej wersji biblioteki Cairo[6].

25 maja 2010 Mark Skilbeck na liście mailingowej dotyczącej rozwoju rozszerzenia napisał, że PHP-GTK jest nadal rozwijane i najnowsza wersja testowa dostępna jest w Subversion[7].

Historia wydań edytuj

Wersja Nazwa kodowa Data wydania Najważniejsze zmiany
0.0.1 Genesis 1 marca 2001 Wydanie pierwsze
0.0.2 primordial nucleosynthesis 7 marca 2001
  • Większe pokrycie API GTK+
  • Poprawki błędów
0.0.3 slow glass 20 marca 2001
  • Większe pokrycie API GTK+
  • Poprawki błędów
  • Obsługa Libglade
0.0.4 indistinguishable from magic 5 maja 2001
  • Większe pokrycie API GTK+
  • Poprawki błędów
  • Poprawa szybkości działania i zmniejszenie zapotrzebowania na pamięć operacyjną
0.1 the void which binds 1 sierpnia 2001
  • Większe pokrycie API GTK+
  • Dodanie stałych Gdk::Keysyms
  • Obsługa akcji przeciągnij i upuść
  • Poprawki błędów
0.1.1 no-holds-barred memento 24 września 2001
  • Większe pokrycie API GTK+
  • Obsługa widżetu GtkScintilla
  • Poprawki błędów
0.5.0 monday starts on saturday 24 stycznia 2002
  • Większe pokrycie API GTK+
  • Dodanie możliwości budowania rozszerzeń linkowanych dynamicznie
  • Libglade działa teraz na platformie Windows
0.5.1 hardboiled wonderland 26 kwietnia 2002

Poprawki błędów i drobne udoskonalenia

0.5.2 Bass does a body good 1 listopada 2002
  • Większe pokrycie API GTK+
  • Poprawki błędów
1.0.0 mountain view special 23 października 2003
  • Większe pokrycie API GTK+
  • Dodanie widżetów GtkScintilla, GtkComboButton, GtkSpaned i GtkScrollpane w Windows
  • Poprawki błędów
1.0.1 you thought we were done? 9 sierpnia 2004
  • Większe pokrycie API GTK+
  • Poprawki błędów
2.0.0alpha renaissance redux 15 lipca 2006

Pierwsza wersja testowa nowej architektury.

2.0.0beta extension extravaganza 17 czerwca 2007
2.0.0 leap day special 29 lutego 2008
  • Większe pokrycie API GTK+
  • Obsługa GTK+ 2.12
2.0.1 you knew this was coming 16 maja 2008
  • Obsługa widżetu GtkBuilder
  • Obsługa podpowiedzi API GTK+ 2.12
  • Obsługa nowych właściwości PHP 5.3+
  • Poprawki błędów
? ? ?
  • Obsługa GTK+ 2.14 i 2.16, Cairo oraz PHP 5.3
  • Oficjalny instalator dla systemów: Windows i Mac OS X oraz skrypt instalujący dla dystrybucji Linuksa

Przykładowy kod edytuj

 
Efekt działania programu
<?php
$window = new GtkWindow();
$window->set_title("Hello");
$window->connect_simple('destroy', array('gtk', 'main_quit'));

$text = new GtkLabel("World");
$window->add($text);

$window->show_all();
Gtk::main();
?>

Na początku tworzone jest okno, po czym ustawiany jest jego tytuł – "Hello". Do okna dodawany jest sygnał dzięki któremu po zamknięciu okna program przestanie się wykonywać. Następnie jest tworzona i dodawana do okna etykieta z tekstem "World". Okno zostaje wywołane i ukazuje się użytkownikowi.

Zobacz też edytuj

Przypisy edytuj

Linki zewnętrzne edytuj