grim/purple-objects-docbook
Clone
Summary
Browse
Changes
Graph
made the todo an appendix
2009-04-30, Gary Kramlich
457f4ea1a35f
made the todo an appendix
moved it to later in the doc to make the appendicies together
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
"http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
<chapter
id=
"about"
>
<title>
Why
use
GObjects
in
libpurple?
</title>
<para>
There
are
many
benefits
GObjects
can
bring
to
purple.
Some
of
which
we
have
implemented
ourselves
already
and
others
that
we've
considered
adding
in
the
past
but
no
one
has
gotten
to
yet.
</para>
<para>
One
of
the
biggest
benefits
is
the
type
system.
While
it's
a
bit
more
work
to
start
up
a
GObject
class,
the
benefit
of
using
a
tested
type
system
makes
it
worth
it.
Right
now
we're
only
lightly
using
inheritance.
For
example:
PurpleBlistNode
is
the
base
class
for
PurpleBuddy,
PurpleChat,
PurpleContact,
and
PurpleGroup.
There
are
quite
a
few
problems
with
the
current
setup.
It's
error
prone,
theres
no
type
checking,
and
it's
impossible
to
subclass
unless
the
new
"type"
is
added
to
libpurple
itself.
</para>
</chapter>