pidgin/quail/qpurple
Clone
Summary
Browse
Changes
Graph
Add in the signal slot connections
default
tip
2013-07-02, Phil Hannent
d2bb98edda86
Add in the signal slot connections
#ifndef QPURPLE_H
#define QPURPLE_H
#include
<QObject>
#include
<QSocketNotifier>
#include
<QTimer>
#include
<glib.h>
#include
"purple.h"
#include
<signal.h>
#include
<string.h>
#include
<unistd.h>
#define CUSTOM_USER_DIRECTORY "~/.quail"
#define CUSTOM_PLUGIN_PATH ""
#define PLUGIN_SAVE_PREF "/purple/qpurple/plugins/saved"
#define UI_ID "quail"
#define PURPLE_GLIB_READ_COND (G_IO_IN | G_IO_HUP | G_IO_ERR)
#define PURPLE_GLIB_WRITE_COND (G_IO_OUT | G_IO_HUP | G_IO_ERR | G_IO_NVAL)
namespace
QPurple
{
typedef
struct
_PurpleGLibIOClosure
{
PurpleInputFunction
function
;
guint
result
;
gpointer
data
;
}
PurpleGLibIOClosure
;
class
QPurpleCore
:
public
QObject
{
Q_OBJECT
public
:
QPurpleCore
();
~
QPurpleCore
()
{
}
void
qpurple_init
();
/* call this in main to start libpurple */
void
setBlist
(
QObject
*
obj
);
static
guint
qpurple_input_add
(
gint
fd
,
PurpleInputCondition
condition
,
PurpleInputFunction
function
,
gpointer
data
);
static
gboolean
qpurple_input_remove
(
guint
handle
);
static
guint
qpurple_timer_add
(
guint
interval
,
GSourceFunc
function
,
gpointer
data
);
static
guint
qpurple_timer_add_seconds
(
guint
interval
,
GSourceFunc
function
,
gpointer
data
);
static
gboolean
qpurple_timer_remove
(
guint
handle
);
static
void
qpurple_write_conv
(
PurpleConversation
*
conv
,
const
char
*
who
,
const
char
*
alias
,
const
char
*
message
,
PurpleMessageFlags
flags
,
time_t
mtime
);
static
void
qpurple_ui_init
(
void
);
static
void
qpurple_blist_new_list
(
PurpleBuddyList
*
blist
);
static
void
qpurple_blist_new_node
(
PurpleBlistNode
*
node
);
static
void
qpurple_blist_show
(
PurpleBuddyList
*
list
);
static
void
qpurple_blist_update
(
PurpleBuddyList
*
list
,
PurpleBlistNode
*
node
);
static
void
qpurple_blist_remove
(
PurpleBuddyList
*
list
,
PurpleBlistNode
*
node
);
static
void
qpurple_blist_destroy
(
PurpleBuddyList
*
list
);
static
void
qpurple_blist_set_visible
(
PurpleBuddyList
*
list
,
gboolean
show
);
static
void
qpurple_blist_request_add_buddy
(
PurpleAccount
*
account
,
const
char
*
username
,
const
char
*
group
,
const
char
*
alias
);
static
void
qpurple_blist_request_add_chat
(
PurpleAccount
*
account
,
PurpleGroup
*
group
,
const
char
*
alias
,
const
char
*
name
);
static
void
qpurple_blist_request_add_group
(
void
);
signals
:
void
signalDebugMessages
(
QString
msg
);
void
signal_blist_new_list
(
PurpleBuddyList
*
blist
);
void
signal_blist_new_node
(
PurpleBlistNode
*
node
);
void
signal_blist_show
(
PurpleBuddyList
*
list
);
void
signal_blist_update
(
PurpleBuddyList
*
list
,
PurpleBlistNode
*
node
);
void
signal_blist_remove
(
PurpleBuddyList
*
list
,
PurpleBlistNode
*
node
);
void
signal_blist_destroy
(
PurpleBuddyList
*
list
);
void
signal_blist_set_visible
(
PurpleBuddyList
*
list
,
gboolean
show
);
void
signal_blist_request_add_buddy
(
PurpleAccount
*
account
,
const
char
*
username
,
const
char
*
group
,
const
char
*
alias
);
void
signal_blist_request_add_chat
(
PurpleAccount
*
account
,
PurpleGroup
*
group
,
const
char
*
alias
,
const
char
*
name
);
void
signal_blist_request_add_group
();
private
:
QObject
*
m_blist
;
static
void
_init_libpurple
(
void
);
void
emit_signal_blist_new_list
(
PurpleBuddyList
*
blist
)
{
emit
signal_blist_new_list
(
blist
);
}
void
emit_signal_blist_new_node
(
PurpleBlistNode
*
node
)
{
emit
signal_blist_new_node
(
node
);
}
void
emit_signal_blist_show
(
PurpleBuddyList
*
list
)
{
emit
signal_blist_show
(
list
);
}
void
emit_signal_blist_update
(
PurpleBuddyList
*
list
,
PurpleBlistNode
*
node
)
{
emit
signal_blist_update
(
list
,
node
);
}
void
emit_signal_blist_remove
(
PurpleBuddyList
*
list
,
PurpleBlistNode
*
node
)
{
emit
signal_blist_remove
(
list
,
node
);}
void
emit_signal_blist_destroy
(
PurpleBuddyList
*
list
)
{
emit
signal_blist_destroy
(
list
);}
void
emit_signal_blist_set_visible
(
PurpleBuddyList
*
list
,
gboolean
show
)
{
emit
signal_blist_set_visible
(
list
,
show
);
}
void
emit_signal_blist_request_add_buddy
(
PurpleAccount
*
account
,
const
char
*
username
,
const
char
*
group
,
const
char
*
alias
)
{
emit
signal_blist_request_add_buddy
(
account
,
username
,
group
,
alias
);
}
void
emit_signal_blist_request_add_chat
(
PurpleAccount
*
account
,
PurpleGroup
*
group
,
const
char
*
alias
,
const
char
*
name
)
{
emit
signal_blist_request_add_chat
(
account
,
group
,
alias
,
name
);
}
void
emit_signal_blist_request_add_group
()
{
emit
signal_blist_request_add_group
();
}
};
}
#endif