121 lines
4.4 KiB
PHP
121 lines
4.4 KiB
PHP
<?php
|
|
/*
|
|
* $Id: about.php,v 1.1 2006/07/15 18:16:08 andrei Exp $
|
|
*/
|
|
require_once('include/prepend.php');
|
|
commonHeader('About PHP-GTK 2');
|
|
|
|
?>
|
|
|
|
<h1>PHP-GTK 2</h1>
|
|
|
|
<p>
|
|
PHP-GTK is an extension for the PHP programming language that implements
|
|
language bindings for GTK+. It provides an object-oriented interface to GTK+
|
|
classes and functions and greatly simplifies writing client-side cross-platform
|
|
GUI applications.
|
|
</p>
|
|
|
|
<p>
|
|
PHP-GTK 2 is the second major release of PHP-GTK. PHP-GTK 2 combines the power
|
|
of PHP 5 with the flexibility of Gtk+ 2 to allow developers to create extremely
|
|
rich desktop applications with relative ease. PHP-GTK 2 not only
|
|
simplifies the process of building applications with PHP, but also
|
|
provides greater flexibility and more features than its predecessor.
|
|
</p>
|
|
|
|
<a name="features"></a>
|
|
<h2>Features</h2>
|
|
|
|
<ul>
|
|
<li><b>Powerful Object Oriented Programming</b><br />
|
|
Because PHP-GTK 2 is built ontop of PHP 5, it makes heavy use of the improved
|
|
object model. PHP-GTK 2 applications can implement Object Oriented practices
|
|
such as inheritance, interfaces, overloading and exceptions.
|
|
</li>
|
|
|
|
<li><b>Improved Garbage Collection</b><br />
|
|
PHP-GTK 1 suffered from memory allocation issue because it was built ontop of
|
|
PHP 4, which was not designed with long running applications in mind.
|
|
Improvements in PHP 5 have minimized memory leaks allowing for long running
|
|
applications without the fear of excessive memory consumption.
|
|
</li>
|
|
|
|
<li><b>Unicode Support</b><br />
|
|
Text in PHP-GTK 2 is always UTF-8 encoded making for applications which can
|
|
easily be internationalized. PHP-GTK 2 will seamlessly handle conversion of
|
|
input and output strings based on a global code-page setting freeing the
|
|
developer from worrying about most encoding problems.
|
|
</li>
|
|
|
|
<li><b>Model-View Architecture</b><br />
|
|
Gtk+ 2 implements a Model-View architecture to separate data from the display.
|
|
This allows for multiple representations of the same data in different ways and
|
|
greater control over the data itself. The separation of data from display makes
|
|
working with complex data like trees and multi-line text much easier than
|
|
before.
|
|
</li>
|
|
|
|
<li><b>Improved Graphics Support</b><br />
|
|
Improvements in image support in Gtk+ 2 make displaying and manipulating images
|
|
and animations much easier with PHP-GTK 2. Aside from an extensive collection
|
|
of stock images, loading and manipulating custom images is relatively simple
|
|
when compared to working with images in PHP-GTK 1.
|
|
</li>
|
|
|
|
</ul>
|
|
|
|
<a name="changed"></a>
|
|
<h2>Changes</h2>
|
|
|
|
<p>
|
|
While every attempt has been made to preserve backward compatibility whereever
|
|
possible, some backward compatibility breaks were necessary.
|
|
</p>
|
|
|
|
<ul>
|
|
|
|
<li><b>Exceptions</b><br />
|
|
PHP-GTK 2 takes advantage of PHP 5's support for exceptions. Several widgets
|
|
may throw exceptions, normally during construction or when trying to convert
|
|
text to UTF-8.
|
|
</li>
|
|
|
|
<li><b>No More Global Constants</b><br />
|
|
In PHP-GTK 1, all constants were declared in the global namespace. In PHP-GTK
|
|
2, constants are declared in the top-level classes: Gtk, Gdk, Atk, and Pango.
|
|
This means the PHP-GTK 1 constant
|
|
<pre style="display: inline;">GTK_WIN_POS_CENTER</pre> is accessed as
|
|
<pre style="display: inline;">Gtk::WIN_POS_CENTER</pre> in PHP-GTK 2.
|
|
</li>
|
|
|
|
<li><b>Creating Signal Handlers</b><br />
|
|
The <pre style="display: inline;">connect_object()</pre> and
|
|
<pre style="display: inline;">connect_object_after()</pre> methods
|
|
have been deprecated in favor of
|
|
<pre style="display: inline;">connect_simple()</pre> and
|
|
<pre style="display: inline;">connect_simple_after()</pre>.
|
|
</li>
|
|
|
|
<li><b>Deprecated Widgets</b><br />
|
|
Many widgets have been deprecated in Gtk+ 2, and therefore are also deprecated
|
|
in PHP-GTK 2. Most deprecated widgets have been replaced with more powerful
|
|
widgets that are easier to use. While most deprecated widgets will still
|
|
function as they did with PHP-GTK 1, developers are strongly encouraged to
|
|
update their applications to use the new and improved versions.
|
|
</li>
|
|
|
|
</ul>
|
|
|
|
<a name="more"></a>
|
|
<h2>More</h2>
|
|
<p>
|
|
These changes and more are covered in greater detail in the <a href="http://gtk.php.net/manual/en/tutorials.changes.php">Changes since PHP-GTK 1</a> tutorial. Users looking for help with the new release are
|
|
encouraged to read the PHP-GTK 2 manual or contact the PHP-GTK General mailing list.
|
|
</p>
|
|
|
|
<?php
|
|
|
|
commonFooter();
|
|
|
|
?>
|