pidgin/gtkblist.h

branch
gtkdoc-conversion
changeset 35415
ba28be1a7611
parent 35395
bf3f004adbf1
child 35451
206524351826
child 37053
e8959e0f6a37
equal deleted inserted replaced
35414:8be0131619b8 35415:ba28be1a7611
25 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA 25 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
26 */ 26 */
27 #ifndef _PIDGINBLIST_H_ 27 #ifndef _PIDGINBLIST_H_
28 #define _PIDGINBLIST_H_ 28 #define _PIDGINBLIST_H_
29 29
30 /** @copydoc _PidginBuddyList */
31 typedef struct _PidginBuddyList PidginBuddyList; 30 typedef struct _PidginBuddyList PidginBuddyList;
32 31
33 enum { 32 enum {
34 STATUS_ICON_COLUMN, 33 STATUS_ICON_COLUMN,
35 STATUS_ICON_VISIBLE_COLUMN, 34 STATUS_ICON_VISIBLE_COLUMN,
64 63
65 /************************************************************************** 64 /**************************************************************************
66 * @name Structures 65 * @name Structures
67 **************************************************************************/ 66 **************************************************************************/
68 /** 67 /**
68 * PidginBuddyList:
69 * @notebook: The notebook that switches between the real buddy list
70 * and the helpful instructions page
71 * @main_vbox: This vbox contains the menu and notebook
72 * @vbox: This is the vbox that everything important gets packed
73 * into. Your plugin might want to pack something in it
74 * itself. Go, plugins!
75 * @treeview: It's a treeview... d'uh.
76 * @treemodel: This is the treemodel.
77 * @text_column: Column
78 * @menutray: The menu tray widget.
79 * @menutrayicon: The menu tray icon.
80 * @refresh_timer: The timer for refreshing every 30 seconds
81 * @timeout: The timeout for the tooltip.
82 * @drag_timeout: The timeout for expanding contacts on drags
83 * @tip_rect: This is the bounding rectangle of the cell we're
84 * currently hovering over. This is used for tooltips.
85 * @contact_rect: This is the bounding rectangle of the contact node and
86 * its children. This is used for auto-expand on mouseover.
87 * @mouseover_contact: This is the contact currently mouse-over expanded
88 * @tipwindow: The window used by the tooltip
89 * @tooltipdata: The data for each "chunk" of the tooltip
90 * @selected_node: The currently selected node
91 * @scrollbook: Scrollbook for alerts
92 * @headline: Widget for headline notifications
93 * @headline_label: Label for headline notifications
94 * @headline_image: Image for headline notifications
95 * @headline_callback: Callback for headline notifications
96 * @headline_data: User data for headline notifications
97 * @headline_destroy: Callback to use for destroying the headline-data
98 * @statusbox: The status selector dropdown
99 * @empty_avatar: A 32x32 transparent pixbuf
100 * @priv: Pointer to opaque private data
101 *
69 * Like, everything you need to know about the gtk buddy list 102 * Like, everything you need to know about the gtk buddy list
70 */ 103 */
71 struct _PidginBuddyList { 104 struct _PidginBuddyList {
72 GtkWidget *window; 105 GtkWidget *window;
73 GtkWidget *notebook; /**< The notebook that switches between the real buddy list and the helpful 106 GtkWidget *notebook;
74 instructions page */ 107 GtkWidget *main_vbox;
75 GtkWidget *main_vbox; /**< This vbox contains the menu and notebook */ 108 GtkWidget *vbox;
76 GtkWidget *vbox; /**< This is the vbox that everything important gets packed into. 109
77 Your plugin might want to pack something in it itself. Go, plugins! */ 110 GtkWidget *treeview;
78 111 GtkTreeStore *treemodel;
79 GtkWidget *treeview; /**< It's a treeview... d'uh. */ 112 GtkTreeViewColumn *text_column;
80 GtkTreeStore *treemodel; /**< This is the treemodel. */
81 GtkTreeViewColumn *text_column; /**< Column */
82 113
83 GtkCellRenderer *text_rend; 114 GtkCellRenderer *text_rend;
84 115
85 GtkUIManager *ui; 116 GtkUIManager *ui;
86 GtkWidget *menutray; /**< The menu tray widget. */ 117 GtkWidget *menutray;
87 GtkWidget *menutrayicon; /**< The menu tray icon. */ 118 GtkWidget *menutrayicon;
88 119
89 guint refresh_timer; /**< The timer for refreshing every 30 seconds */ 120 guint refresh_timer;
90 121
91 guint timeout; /**< The timeout for the tooltip. */ 122 guint timeout;
92 guint drag_timeout; /**< The timeout for expanding contacts on drags */ 123 guint drag_timeout;
93 GdkRectangle tip_rect; /**< This is the bounding rectangle of the 124 GdkRectangle tip_rect;
94 cell we're currently hovering over. This is 125 GdkRectangle contact_rect;
95 used for tooltips. */ 126 PurpleBlistNode *mouseover_contact;
96 GdkRectangle contact_rect; /**< This is the bounding rectangle of the contact node 127
97 and its children. This is used for auto-expand on 128 GtkWidget *tipwindow;
98 mouseover. */ 129 GList *tooltipdata;
99 PurpleBlistNode *mouseover_contact; /**< This is the contact currently mouse-over expanded */ 130
100 131 PurpleBlistNode *selected_node;
101 GtkWidget *tipwindow; /**< The window used by the tooltip */ 132
102 GList *tooltipdata; /**< The data for each "chunk" of the tooltip */ 133 GtkWidget *scrollbook;
103 134 GtkWidget *headline;
104 PurpleBlistNode *selected_node; /**< The currently selected node */ 135 GtkWidget *headline_label;
105 136 GtkWidget *headline_image;
106 GtkWidget *scrollbook; /**< Scrollbook for alerts */ 137 GCallback headline_callback;
107 GtkWidget *headline; /**< Widget for headline notifications */ 138 gpointer headline_data;
108 GtkWidget *headline_label; /**< Label for headline notifications */ 139 GDestroyNotify headline_destroy;
109 GtkWidget *headline_image; /**< Image for headline notifications */ 140
110 GCallback headline_callback; /**< Callback for headline notifications */ 141 GtkWidget *statusbox;
111 gpointer headline_data; /**< User data for headline notifications */ 142 GdkPixbuf *empty_avatar;
112 GDestroyNotify headline_destroy; /**< Callback to use for destroying the headline-data */ 143
113 144 gpointer priv;
114 GtkWidget *statusbox; /**< The status selector dropdown */
115 GdkPixbuf *empty_avatar; /**< A 32x32 transparent pixbuf */
116
117 gpointer priv; /**< Pointer to opaque private data */
118 }; 145 };
119 146
120 #define PIDGIN_BLIST(list) ((PidginBuddyList *)purple_blist_get_ui_data()) 147 #define PIDGIN_BLIST(list) ((PidginBuddyList *)purple_blist_get_ui_data())
121 #define PIDGIN_IS_PIDGIN_BLIST(list) \ 148 #define PIDGIN_IS_PIDGIN_BLIST(list) \
122 (purple_blist_get_ui_ops() == pidgin_blist_get_ui_ops()) 149 (purple_blist_get_ui_ops() == pidgin_blist_get_ui_ops())
126 /************************************************************************** 153 /**************************************************************************
127 * @name GTK+ Buddy List API 154 * @name GTK+ Buddy List API
128 **************************************************************************/ 155 **************************************************************************/
129 156
130 /** 157 /**
158 * pidgin_blist_get_handle:
159 *
131 * Get the handle for the GTK+ blist system. 160 * Get the handle for the GTK+ blist system.
132 * 161 *
133 * Returns: the handle to the blist system 162 * Returns: the handle to the blist system
134 */ 163 */
135 void *pidgin_blist_get_handle(void); 164 void *pidgin_blist_get_handle(void);
136 165
137 /** 166 /**
167 * pidgin_blist_init:
168 *
138 * Initializes the GTK+ blist system. 169 * Initializes the GTK+ blist system.
139 */ 170 */
140 void pidgin_blist_init(void); 171 void pidgin_blist_init(void);
141 172
142 /** 173 /**
174 * pidgin_blist_uninit:
175 *
143 * Uninitializes the GTK+ blist system. 176 * Uninitializes the GTK+ blist system.
144 */ 177 */
145 void pidgin_blist_uninit(void); 178 void pidgin_blist_uninit(void);
146 179
147 /** 180 /**
181 * pidgin_blist_get_ui_ops:
182 *
148 * Returns the UI operations structure for the buddy list. 183 * Returns the UI operations structure for the buddy list.
149 * 184 *
150 * Returns: The GTK+ list operations structure. 185 * Returns: The GTK+ list operations structure.
151 */ 186 */
152 PurpleBlistUiOps *pidgin_blist_get_ui_ops(void); 187 PurpleBlistUiOps *pidgin_blist_get_ui_ops(void);
153 188
154 /** 189 /**
190 * pidgin_blist_get_default_gtk_blist:
191 *
155 * Returns the default gtk buddy list 192 * Returns the default gtk buddy list
156 * 193 *
157 * There's normally only one buddy list window, but that isn't a necessity. This function 194 * There's normally only one buddy list window, but that isn't a necessity. This function
158 * returns the PidginBuddyList we're most likely wanting to work with. This is slightly 195 * returns the PidginBuddyList we're most likely wanting to work with. This is slightly
159 * cleaner than an externed global. 196 * cleaner than an externed global.
161 * Returns: The default GTK+ buddy list 198 * Returns: The default GTK+ buddy list
162 */ 199 */
163 PidginBuddyList *pidgin_blist_get_default_gtk_blist(void); 200 PidginBuddyList *pidgin_blist_get_default_gtk_blist(void);
164 201
165 /** 202 /**
166 * Populates a menu with the items shown on the buddy list for a buddy. 203 * pidgin_blist_make_buddy_menu:
167 *
168 * @menu: The menu to populate 204 * @menu: The menu to populate
169 * @buddy: The buddy whose menu to get 205 * @buddy: The buddy whose menu to get
170 * @sub: TRUE if this is a sub-menu, FALSE otherwise 206 * @sub: %TRUE if this is a sub-menu, %FALSE otherwise
207 *
208 * Populates a menu with the items shown on the buddy list for a buddy.
171 */ 209 */
172 void pidgin_blist_make_buddy_menu(GtkWidget *menu, PurpleBuddy *buddy, gboolean sub); 210 void pidgin_blist_make_buddy_menu(GtkWidget *menu, PurpleBuddy *buddy, gboolean sub);
173 211
174 /** 212 /**
213 * pidgin_blist_refresh:
214 * @list: This is the core list that gets updated from
215 *
175 * Refreshes all the nodes of the buddy list. 216 * Refreshes all the nodes of the buddy list.
176 * This should only be called when something changes to affect most of the nodes (such as a ui preference changing) 217 * This should only be called when something changes to affect most of the nodes (such as a ui preference changing)
177 *
178 * @list: This is the core list that gets updated from
179 */ 218 */
180 void pidgin_blist_refresh(PurpleBuddyList *list); 219 void pidgin_blist_refresh(PurpleBuddyList *list);
181 220
182 void pidgin_blist_update_columns(void); 221 void pidgin_blist_update_columns(void);
183 void pidgin_blist_update_refresh_timeout(void); 222 void pidgin_blist_update_refresh_timeout(void);
184 223
185 /** 224 /**
225 * pidgin_blist_get_emblem:
226 * @node: The node to return an emblem for
227 *
186 * Returns the blist emblem. 228 * Returns the blist emblem.
187 * 229 *
188 * This may be an existing pixbuf that has been given an additional ref, 230 * This may be an existing pixbuf that has been given an additional ref,
189 * so it shouldn't be modified. 231 * so it shouldn't be modified.
190 * 232 *
191 * @node: The node to return an emblem for
192 *
193 * Returns: A GdkPixbuf for the emblem to show, or NULL 233 * Returns: A GdkPixbuf for the emblem to show, or NULL
194 */ 234 */
195 GdkPixbuf * 235 GdkPixbuf *
196 pidgin_blist_get_emblem(PurpleBlistNode *node); 236 pidgin_blist_get_emblem(PurpleBlistNode *node);
197 237
198 /** 238 /**
239 * pidgin_blist_get_status_icon:
240 *
199 * Useful for the buddy ticker 241 * Useful for the buddy ticker
200 */ 242 */
201 GdkPixbuf *pidgin_blist_get_status_icon(PurpleBlistNode *node, 243 GdkPixbuf *pidgin_blist_get_status_icon(PurpleBlistNode *node,
202 PidginStatusIconSize size); 244 PidginStatusIconSize size);
203 245
204 /** 246 /**
205 * Returns a boolean indicating if @a node is part of an expanded contact. 247 * pidgin_blist_node_is_contact_expanded:
248 * @node: The node in question.
249 *
250 * Returns a boolean indicating if @node is part of an expanded contact.
206 * 251 *
207 * This only makes sense for contact and buddy nodes. %FALSE is returned 252 * This only makes sense for contact and buddy nodes. %FALSE is returned
208 * for other types of nodes. 253 * for other types of nodes.
209 * 254 *
210 * @node: The node in question. 255 * Returns: A boolean indicating if @node is part of an expanded contact.
211 * Returns: A boolean indicating if @a node is part of an expanded contact.
212 */ 256 */
213 gboolean pidgin_blist_node_is_contact_expanded(PurpleBlistNode *node); 257 gboolean pidgin_blist_node_is_contact_expanded(PurpleBlistNode *node);
214 258
215 /** 259 /**
260 * pidgin_blist_toggle_visibility:
261 *
216 * Intelligently toggles the visibility of the buddy list. If the buddy 262 * Intelligently toggles the visibility of the buddy list. If the buddy
217 * list is obscured, it is brought to the front. If it is not obscured, 263 * list is obscured, it is brought to the front. If it is not obscured,
218 * it is hidden. If it is hidden it is shown. 264 * it is hidden. If it is hidden it is shown.
219 */ 265 */
220 void pidgin_blist_toggle_visibility(void); 266 void pidgin_blist_toggle_visibility(void);
221 267
222 /** 268 /**
269 * pidgin_blist_visibility_manager_add:
270 *
223 * Increases the reference count of visibility managers. Callers should 271 * Increases the reference count of visibility managers. Callers should
224 * call the complementary remove function when no longer managing 272 * call the complementary remove function when no longer managing
225 * visibility. 273 * visibility.
226 * 274 *
227 * A visibility manager is something that provides some method for 275 * A visibility manager is something that provides some method for
228 * showing the buddy list after it is hidden (e.g. docklet plugin). 276 * showing the buddy list after it is hidden (e.g. docklet plugin).
229 */ 277 */
230 void pidgin_blist_visibility_manager_add(void); 278 void pidgin_blist_visibility_manager_add(void);
231 279
232 /** 280 /**
281 * pidgin_blist_visibility_manager_remove:
282 *
233 * Decreases the reference count of visibility managers. If the count 283 * Decreases the reference count of visibility managers. If the count
234 * drops below zero, the buddy list is shown. 284 * drops below zero, the buddy list is shown.
235 */ 285 */
236 void pidgin_blist_visibility_manager_remove(void); 286 void pidgin_blist_visibility_manager_remove(void);
237 287
238 /** 288 /**
289 * pidgin_blist_add_alert:
290 * @widget: The widget to add
291 *
239 * Adds a mini-alert to the blist scrollbook 292 * Adds a mini-alert to the blist scrollbook
240 *
241 * @widget: The widget to add
242 */ 293 */
243 void pidgin_blist_add_alert(GtkWidget *widget); 294 void pidgin_blist_add_alert(GtkWidget *widget);
244 295
245 /** 296 /**
297 * pidgin_blist_set_theme:
298 * @theme: the new theme to use
299 *
246 * Sets the current theme for Pidgin to use 300 * Sets the current theme for Pidgin to use
247 *
248 * @theme: the new theme to use
249 */ 301 */
250 void pidgin_blist_set_theme(PidginBlistTheme *theme); 302 void pidgin_blist_set_theme(PidginBlistTheme *theme);
251 303
252 /** 304 /**
305 * pidgin_blist_get_theme:
306 *
253 * Gets Pidgin's current buddy list theme 307 * Gets Pidgin's current buddy list theme
254 * 308 *
255 * Returns: the current theme 309 * Returns: the current theme
256 */ 310 */
257 PidginBlistTheme *pidgin_blist_get_theme(void); 311 PidginBlistTheme *pidgin_blist_get_theme(void);
261 **************************************************************************/ 315 **************************************************************************/
262 316
263 typedef void (*pidgin_blist_sort_function)(PurpleBlistNode *new, PurpleBuddyList *blist, GtkTreeIter group, GtkTreeIter *cur, GtkTreeIter *iter); 317 typedef void (*pidgin_blist_sort_function)(PurpleBlistNode *new, PurpleBuddyList *blist, GtkTreeIter group, GtkTreeIter *cur, GtkTreeIter *iter);
264 318
265 /** 319 /**
320 * pidgin_blist_get_sort_methods:
321 *
266 * Gets the current list of sort methods. 322 * Gets the current list of sort methods.
267 * 323 *
268 * Returns: A GSlist of sort methods 324 * Returns: A GSlist of sort methods
269 */ 325 */
270 GList *pidgin_blist_get_sort_methods(void); 326 GList *pidgin_blist_get_sort_methods(void);
276 }; 332 };
277 333
278 typedef struct pidgin_blist_sort_method PidginBlistSortMethod; 334 typedef struct pidgin_blist_sort_method PidginBlistSortMethod;
279 335
280 /** 336 /**
281 * Registers a buddy list sorting method. 337 * pidgin_blist_sort_method_reg:
282 *
283 * @id: The unique ID of the sorting method 338 * @id: The unique ID of the sorting method
284 * @name: The method's name. 339 * @name: The method's name.
285 * @func: A pointer to the function. 340 * @func: A pointer to the function.
286 * 341 *
342 * Registers a buddy list sorting method.
287 */ 343 */
288 void pidgin_blist_sort_method_reg(const char *id, const char *name, pidgin_blist_sort_function func); 344 void pidgin_blist_sort_method_reg(const char *id, const char *name, pidgin_blist_sort_function func);
289 345
290 /** 346 /**
347 * pidgin_blist_sort_method_unreg:
348 * @id: The method's id
349 *
291 * Unregisters a buddy list sorting method. 350 * Unregisters a buddy list sorting method.
292 *
293 * @id: The method's id
294 */ 351 */
295 void pidgin_blist_sort_method_unreg(const char *id); 352 void pidgin_blist_sort_method_unreg(const char *id);
296 353
297 /** 354 /**
355 * pidgin_blist_sort_method_set:
356 * @id: The method's id.
357 *
298 * Sets a buddy list sorting method. 358 * Sets a buddy list sorting method.
299 *
300 * @id: The method's id.
301 */ 359 */
302 void pidgin_blist_sort_method_set(const char *id); 360 void pidgin_blist_sort_method_set(const char *id);
303 361
304 /** 362 /**
363 * pidgin_blist_setup_sort_methods:
364 *
305 * Sets up the programs default sort methods 365 * Sets up the programs default sort methods
306 */ 366 */
307 void pidgin_blist_setup_sort_methods(void); 367 void pidgin_blist_setup_sort_methods(void);
308 368
309 /** 369 /**
370 * pidgin_blist_update_accounts_menu:
371 *
310 * Updates the accounts menu on the GTK+ buddy list window. 372 * Updates the accounts menu on the GTK+ buddy list window.
311 */ 373 */
312 void pidgin_blist_update_accounts_menu(void); 374 void pidgin_blist_update_accounts_menu(void);
313 375
314 /** 376 /**
377 * pidgin_blist_update_plugin_actions:
378 *
315 * Updates the plugin actions menu on the GTK+ buddy list window. 379 * Updates the plugin actions menu on the GTK+ buddy list window.
316 */ 380 */
317 void pidgin_blist_update_plugin_actions(void); 381 void pidgin_blist_update_plugin_actions(void);
318 382
319 /** 383 /**
384 * pidgin_blist_update_sort_methods:
385 *
320 * Updates the Sorting menu on the GTK+ buddy list window. 386 * Updates the Sorting menu on the GTK+ buddy list window.
321 */ 387 */
322 void pidgin_blist_update_sort_methods(void); 388 void pidgin_blist_update_sort_methods(void);
323 389
324 /** 390 /**
391 * pidgin_blist_joinchat_is_showable:
392 *
325 * Determines if showing the join chat dialog is a valid action. 393 * Determines if showing the join chat dialog is a valid action.
326 * 394 *
327 * Returns: Returns TRUE if there are accounts online capable of 395 * Returns: Returns TRUE if there are accounts online capable of
328 * joining chat rooms. Otherwise returns FALSE. 396 * joining chat rooms. Otherwise returns FALSE.
329 */ 397 */
330 gboolean pidgin_blist_joinchat_is_showable(void); 398 gboolean pidgin_blist_joinchat_is_showable(void);
331 399
332 /** 400 /**
401 * pidgin_blist_joinchat_show:
402 *
333 * Shows the join chat dialog. 403 * Shows the join chat dialog.
334 */ 404 */
335 void pidgin_blist_joinchat_show(void); 405 void pidgin_blist_joinchat_show(void);
336 406
337 /** 407 /**
408 * pidgin_append_blist_node_privacy_menu:
409 *
338 * Appends the privacy menu items for a PurpleBlistNode 410 * Appends the privacy menu items for a PurpleBlistNode
339 * TODO: Rename these. 411 * @todo Rename these.
340 */ 412 */
341 void pidgin_append_blist_node_privacy_menu(GtkWidget *menu, PurpleBlistNode *node); 413 void pidgin_append_blist_node_privacy_menu(GtkWidget *menu, PurpleBlistNode *node);
342 414
343 /** 415 /**
416 * pidgin_append_blist_node_proto_menu:
417 *
344 * Appends the protocol specific menu items for a PurpleBlistNode 418 * Appends the protocol specific menu items for a PurpleBlistNode
345 * TODO: Rename these. 419 * @todo Rename these.
346 */ 420 */
347 void pidgin_append_blist_node_proto_menu (GtkWidget *menu, PurpleConnection *gc, PurpleBlistNode *node); 421 void pidgin_append_blist_node_proto_menu (GtkWidget *menu, PurpleConnection *gc, PurpleBlistNode *node);
348 422
349 /** 423 /**
424 * pidgin_append_blist_node_extended_menu:
425 *
350 * Appends the extended menu items for a PurpleBlistNode 426 * Appends the extended menu items for a PurpleBlistNode
351 * TODO: Rename these. 427 * @todo Rename these.
352 */ 428 */
353 void pidgin_append_blist_node_extended_menu(GtkWidget *menu, PurpleBlistNode *node); 429 void pidgin_append_blist_node_extended_menu(GtkWidget *menu, PurpleBlistNode *node);
354 430
355 /** 431 /**
356 * Sets a headline notification 432 * pidgin_blist_set_headline:
357 *
358 * This is currently used for mail notification, but could theoretically be used for anything.
359 * Only the most recent headline will be shown.
360 *
361 * @text: Pango Markup for the label text 433 * @text: Pango Markup for the label text
362 * @pixbuf: The GdkPixbuf for the icon 434 * @pixbuf: The GdkPixbuf for the icon
363 * @callback: The callback to call when headline is clicked 435 * @callback: The callback to call when headline is clicked
364 * @user_data: The userdata to include in the callback 436 * @user_data: The userdata to include in the callback
365 * @destroy: The callback to call when headline is closed or replaced by another headline. 437 * @destroy: The callback to call when headline is closed or replaced by another headline.
438 *
439 * Sets a headline notification
440 *
441 * This is currently used for mail notification, but could theoretically be used for anything.
442 * Only the most recent headline will be shown.
366 */ 443 */
367 void pidgin_blist_set_headline(const char *text, GdkPixbuf *pixbuf, GCallback callback, gpointer user_data, 444 void pidgin_blist_set_headline(const char *text, GdkPixbuf *pixbuf, GCallback callback, gpointer user_data,
368 GDestroyNotify destroy); 445 GDestroyNotify destroy);
369 446
370 /** 447 /**
371 * Returns a buddy's Pango markup appropriate for setting in a GtkCellRenderer. 448 * pidgin_blist_get_name_markup:
372 *
373 * @buddy: The buddy to return markup from 449 * @buddy: The buddy to return markup from
374 * @selected: Whether this buddy is selected. If TRUE, the markup will not change the color. 450 * @selected: Whether this buddy is selected. If TRUE, the markup will not change the color.
375 * @aliased: TRUE to return the appropriate alias of this buddy, FALSE to return its username and status information 451 * @aliased: TRUE to return the appropriate alias of this buddy, FALSE to return its username and status information
452 *
453 * Returns a buddy's Pango markup appropriate for setting in a GtkCellRenderer.
454 *
376 * Returns: The markup for this buddy 455 * Returns: The markup for this buddy
377 */ 456 */
378 gchar *pidgin_blist_get_name_markup(PurpleBuddy *buddy, gboolean selected, gboolean aliased); 457 gchar *pidgin_blist_get_name_markup(PurpleBuddy *buddy, gboolean selected, gboolean aliased);
379 458
380 /** 459 /**
460 * pidgin_blist_draw_tooltip:
461 * @node: The buddy list node to show a tooltip for
462 * @widget: The widget to draw the tooltip on
463 *
381 * Creates the Buddy List tooltip at the current pointer location for the given buddy list node. 464 * Creates the Buddy List tooltip at the current pointer location for the given buddy list node.
382 * 465 *
383 * This tooltip will be destroyed the next time this function is called, or when XXXX 466 * This tooltip will be destroyed the next time this function is called, or when XXXX
384 * is called 467 * is called
385 *
386 * @node: The buddy list node to show a tooltip for
387 * @widget: The widget to draw the tooltip on
388 */ 468 */
389 void pidgin_blist_draw_tooltip(PurpleBlistNode *node, GtkWidget *widget); 469 void pidgin_blist_draw_tooltip(PurpleBlistNode *node, GtkWidget *widget);
390 470
391 /** 471 /**
472 * pidgin_blist_tooltip_destroy:
473 *
392 * Destroys the current (if any) Buddy List tooltip 474 * Destroys the current (if any) Buddy List tooltip
393 */ 475 */
394 void pidgin_blist_tooltip_destroy(void); 476 void pidgin_blist_tooltip_destroy(void);
395 477
396 G_END_DECLS 478 G_END_DECLS

mercurial