pidgin/plugins/perl/common/gtkmodule.h

Thu, 30 Oct 2008 22:40:49 +0000

author
Richard Laager <rlaager@pidgin.im>
date
Thu, 30 Oct 2008 22:40:49 +0000
changeset 24569
5dbd0617a27d
parent 15899
75f0041f72b8
child 34706
02cb08146888
child 35981
e8c02ea0800b
permissions
-rw-r--r--

Build everything with the *_DISABLE_DEPRECATED flags set. This allows us
to detect when we're still using deprecated functions internally (and by
extension, when we've deprecated something we shouldn't have). In the
course of developing this changeset, I fixed a few such cases.

Given that the plan is to switch from PURPLE_HIDE_STRUCTS to
PURPLE_DISABLE_DEPRECATED as each struct is fully dealt with, this will
also ensure we have no regressions on the struct hiding work.

Deprecated functions are still available to the respective .c file, to
avoid missing prototype errors. Also, Perl and DBus undef the
*_DISABLE_DEPRECATED defines as appropriate so that deprecated functions
will still be exported to Perl plugins and via DBus. (Otherwise, we'd
be breaking backwards compatibility.)

/* Allow the Perl code to see deprecated functions, so we can continue to
 * export them to Perl plugins. */
#undef PIDGIN_DISABLE_DEPRECATED

typedef struct group *Pidgin__Group;

#define group perl_group

#include <glib.h>
#include <gtk/gtk.h>
#ifdef _WIN32
#undef pipe
#endif
#include <EXTERN.h>
#include <perl.h>
#include <XSUB.h>

#undef group

#include <plugins/perl/common/module.h>

#include "gtkaccount.h"
#include "gtkblist.h"
#include "gtkconn.h"
#include "gtkconv.h"
#include "gtkconvwin.h"
#include "gtkdebug.h"
#include "gtkdialogs.h"
#include "gtkft.h"
#include "gtkimhtml.h"
#include "gtkimhtmltoolbar.h"
#include "gtklog.h"
#include "gtkmenutray.h"
#include "gtkplugin.h"
#include "gtkpluginpref.h"
#include "gtkpounce.h"
#include "gtkprefs.h"
#include "gtkprivacy.h"
#include "gtkroomlist.h"
#include "gtksavedstatuses.h"
#include "gtksession.h"
#include "gtksound.h"
#include "gtkstatusbox.h"
#include "gtkthemes.h"
#include "gtkutils.h"

/* gtkaccount.h */
typedef PidginAccountDialogType		Pidgin__Account__Dialog__Type;

/* gtkblist.h */
typedef PidginBuddyList *		Pidgin__BuddyList;
typedef pidgin_blist_sort_function	Pidgin__BuddyList__SortFunction;

/* gtkconv.h */
typedef PidginConversation *		Pidgin__Conversation;
typedef PidginUnseenState		Pidgin__UnseenState;

/* gtkconvwin.h */
typedef PidginWindow *			Pidgin__Conversation__Window;
typedef PidginConvPlacementFunc		Pidgin__Conversation__PlacementFunc;

/* gtkft.h */
typedef PidginXferDialog *		Pidgin__Xfer__Dialog;

/* gtkimhtml.h */
typedef GtkIMHtml *			Pidgin__IMHtml;
typedef GtkIMHtmlButtons		Pidgin__IMHtml__Buttons;
typedef GtkIMHtmlFuncs *		Pidgin__IMHtml__Funcs;
typedef GtkIMHtmlScalable *		Pidgin__IMHtml__Scalable;
typedef GtkIMHtmlSmiley *		Pidgin__IMHtml__Smiley;
typedef GtkIMHtmlOptions		Pidgin__IMHtml__Options;

/* gtkimhtmltoolbar.h */
typedef GtkIMHtmlToolbar *		Pidgin__IMHtmlToolbar;

/* gtkmenutray.h */
typedef PidginMenuTray *		Pidgin__MenuTray;

/* gtkstatusbox.h */
typedef PidginStatusBox *		Pidgin__StatusBox;

mercurial