pidgin/pidgin

Use G_DECLARE_DERIVABLE_TYPE for PurpleConversation and additional cleanups

The setters for PurpleConversation are kind of crappy because of the
conversation cache in the purple_conversations api, which we'll address at a
later time.

Testing Done:
Compiled and ran locally, parted a chat and just signed out to verify no new issues.

Reviewed at https://reviews.imfreedom.org/r/613/
<?xml version="1.0"?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
"http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" [
<!ENTITY % local.common.attrib "xmlns:xi CDATA #FIXED 'http://www.w3.org/2003/XInclude'">
<!ENTITY version SYSTEM "version.xml">
]>
<book id="index" xmlns:xi="http://www.w3.org/2003/XInclude">
<bookinfo>
<title>Purple Reference Manual</title>
<abstract>
<title>Libpurple &version;</title>
<para>
libpurple is intended to be the core of an IM program. Pidgin is a GTK+
frontend to libpurple, and Finch is an ncurses frontend built using
libgnt (GLib Ncurses Toolkit).
</para>
</abstract>
</bookinfo>
<part id="development">
<title>Development</title>
<xi:include href="mercurial.xml" />
<xi:include href="code_contributions.xml" />
</part>
<part id="tutorial">
<title>Tutorials</title>
<xi:include href="tut_c_plugins.xml" />
<xi:include href="tut_signals.xml" />
</part>
<part id="API">
<title>API Reference</title>
<xi:include href="xml/account.xml" />
<xi:include href="xml/accounts.xml" />
<xi:include href="xml/action.xml" />
<xi:include href="xml/blistnode.xml" />
<xi:include href="xml/buddy.xml" />
<xi:include href="xml/buddylist.xml" />
<xi:include href="xml/buddyicon.xml" />
<xi:include href="xml/chat.xml" />
<xi:include href="xml/circularbuffer.xml" />
<xi:include href="xml/contact.xml" />
<xi:include href="xml/connection.xml" />
<xi:include href="xml/conversations.xml" />
<xi:include href="xml/countingnode.xml" />
<xi:include href="xml/debug.xml" />
<xi:include href="xml/eventloop.xml" />
<xi:include href="xml/group.xml" />
<xi:include href="xml/xfer.xml" />
<xi:include href="xml/idle.xml" />
<xi:include href="xml/keyring.xml" />
<xi:include href="xml/memorypool.xml" />
<xi:include href="xml/nat-pmp.xml" />
<xi:include href="xml/network.xml" />
<xi:include href="xml/notify.xml" />
<xi:include href="xml/plugins.xml" />
<xi:include href="xml/prefs.xml" />
<xi:include href="xml/pluginpref.xml" />
<xi:include href="xml/protocol.xml" />
<xi:include href="xml/protocols.xml" />
<xi:include href="xml/proxy.xml" />
<xi:include href="xml/purple-gio.xml" />
<xi:include href="xml/purpleaccountoption.xml" />
<xi:include href="xml/purpleaccountpresence.xml" />
<xi:include href="xml/purpleaccountusersplit.xml" />
<xi:include href="xml/purpleattentiontype.xml" />
<xi:include href="xml/purplebuddypresence.xml" />
<xi:include href="xml/purplechatconversation.xml" />
<xi:include href="xml/purplechatuser.xml" />
<xi:include href="xml/purpleconversation.xml" />
<xi:include href="xml/purpleconversationuiops.xml" />
<xi:include href="xml/purplecredentialmanager.xml" />
<xi:include href="xml/purplecredentialprovider.xml" />
<xi:include href="xml/purpleimconversation.xml" />
<xi:include href="xml/purplekeyvaluepair.xml" />
<xi:include href="xml/purplemarkup.xml" />
<xi:include href="xml/purplenoopcredentialprovider.xml" />
<xi:include href="xml/purpleoptions.xml" />
<xi:include href="xml/purplepresence.xml" />
<xi:include href="xml/purpleprotocolattention.xml" />
<xi:include href="xml/purpleprotocolchat.xml" />
<xi:include href="xml/purpleprotocolclient.xml" />
<xi:include href="xml/purpleprotocolfactory.xml" />
<xi:include href="xml/purpleprotocolim.xml" />
<xi:include href="xml/purpleprotocolmanager.xml" />
<xi:include href="xml/purpleprotocolmedia.xml" />
<xi:include href="xml/purpleprotocolprivacy.xml" />
<xi:include href="xml/purpleprotocolserver.xml" />
<xi:include href="xml/purplewhiteboard.xml" />
<xi:include href="xml/purplewhiteboardops.xml" />
<xi:include href="xml/purplewhiteboarduiops.xml" />
<xi:include href="xml/purpleuiinfo.xml" />
<xi:include href="xml/queuedoutputstream.xml" />
<xi:include href="xml/signals.xml" />
<xi:include href="xml/request.xml" />
<xi:include href="xml/request-datasheet.xml" />
<xi:include href="xml/roomlist.xml" />
<xi:include href="xml/savedstatuses.xml" />
<xi:include href="xml/server.xml" />
<xi:include href="xml/core.xml" />
<xi:include href="xml/status.xml" />
<xi:include href="xml/stun.xml" />
<xi:include href="xml/theme.xml" />
<xi:include href="xml/theme-loader.xml" />
<xi:include href="xml/theme-manager.xml" />
<xi:include href="xml/trie.xml" />
<xi:include href="xml/upnp.xml" />
<xi:include href="xml/xmlnode.xml" />
<xi:include href="xml/version.xml" />
<xi:include href="xml/util.xml" />
<xi:include href="xml/enums.xml" />
</part>
<part id="Submodules">
<title>Submodules</title>
<chapter id="messages">
<title>Messaging</title>
<xi:include href="xml/purplemessage.xml" />
<xi:include href="xml/purpleattachment.xml" />
<xi:include href="xml/log.xml" />
<xi:include href="xml/cmds.xml" />
</chapter>
<chapter id="smiley">
<title>Smiley APIs</title>
<xi:include href="xml/smiley.xml" />
<xi:include href="xml/smiley-custom.xml" />
<xi:include href="xml/smiley-list.xml" />
<xi:include href="xml/smiley-theme.xml" />
<xi:include href="xml/smiley-parser.xml" />
</chapter>
<chapter id="image">
<title>Graphics</title>
<xi:include href="xml/image.xml" />
<xi:include href="xml/image-store.xml" />
</chapter>
<chapter id="media">
<title>Media APIs</title>
<xi:include href="xml/media.xml" />
<xi:include href="xml/media-gst.xml" />
<xi:include href="xml/mediamanager.xml" />
<xi:include href="xml/candidate.xml" />
<xi:include href="xml/codec.xml" />
<xi:include href="xml/backend-iface.xml" />
<xi:include href="xml/enum-types.xml" />
</chapter>
</part>
<part id="signals">
<title>Purple-signals Reference</title>
<xi:include href="signals_account.xml" />
<xi:include href="signals_blist.xml" />
<xi:include href="signals_certificate.xml" />
<xi:include href="signals_cmd.xml" />
<xi:include href="signals_connection.xml" />
<xi:include href="signals_conversation.xml" />
<xi:include href="signals_core.xml" />
<xi:include href="signals_xfer.xml" />
<xi:include href="signals_log.xml" />
<xi:include href="signals_notify.xml" />
<xi:include href="signals_plugin.xml" />
<xi:include href="signals_protocol.xml" />
<xi:include href="signals_savedstatus.xml" />
<xi:include href="signals_jabber.xml" />
</part>
<xi:include href="plugin_ids.xml" />
<xi:include href="plugin_i18n.xml" />
<xi:include href="ui_ops.xml" />
<part>
<title>Appendices</title>
<index id="api-index-full">
<title>API Index</title>
<xi:include href="xml/api-index-full.xml"><xi:fallback /></xi:include>
</index>
<index id="api-deprecated">
<title>Index of deprecated symbols</title>
<xi:include href="xml/api-index-deprecated.xml"><xi:fallback /></xi:include>
</index>
<index id="api-3.0.0">
<title>Index of new symbols in 3.0.0</title>
<xi:include href="xml/api-index-3.0.0.xml"><xi:fallback /></xi:include>
</index>
<index id="api-2.14.0">
<title>Index of new symbols in 2.14.0</title>
<xi:include href="xml/api-index-2.14.0.xml"><xi:fallback /></xi:include>
</index>
<index id="api-2.13.0">
<title>Index of new symbols in 2.13.0</title>
<xi:include href="xml/api-index-2.13.0.xml"><xi:fallback /></xi:include>
</index>
<index id="api-2.11.0">
<title>Index of new symbols in 2.11.0</title>
<xi:include href="xml/api-index-2.11.0.xml"><xi:fallback /></xi:include>
</index>
<xi:include href="xml/annotation-glossary.xml"><xi:fallback /></xi:include>
</part>
</book>