pidgin/pidgintypinglabel.h

Sat, 09 Aug 2025 18:12:31 +0800

author
Gong Zhile <gongzl@stu.hebust.edu.cn>
date
Sat, 09 Aug 2025 18:12:31 +0800
branch
gir-dependency
changeset 43305
4ede49515766
parent 43177
595a5f31003a
permissions
-rw-r--r--

Add builtin library dependency for introspection

Without specifying, gir defaults to the system pidgin/purple libraries by default,
which fails the build when new symbols were added and gir failed to link for them.

42943
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
1 /*
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
2 * Pidgin - Internet Messenger
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
3 * Copyright (C) Pidgin Developers <devel@pidgin.im>
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
4 *
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
5 * Pidgin is the legal property of its developers, whose names are too numerous
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
6 * to list here. Please refer to the COPYRIGHT file distributed with this
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
7 * source distribution.
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
8 *
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
9 * This program is free software; you can redistribute it and/or modify
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
10 * it under the terms of the GNU General Public License as published by
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
11 * the Free Software Foundation; either version 2 of the License, or
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
12 * (at your option) any later version.
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
13 *
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
14 * This program is distributed in the hope that it will be useful,
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
17 * GNU General Public License for more details.
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
18 *
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
19 * You should have received a copy of the GNU General Public License
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
20 * along with this program; if not, see <https://www.gnu.org/licenses/>.
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
21 */
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
22
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
23 #if !defined(PIDGIN_GLOBAL_HEADER_INSIDE) && !defined(PIDGIN_COMPILATION)
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
24 # error "only <pidgin.h> may be included directly"
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
25 #endif
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
26
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
27 #ifndef PIDGIN_TYPING_LABEL_H
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
28 #define PIDGIN_TYPING_LABEL_H
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
29
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
30 #include <glib.h>
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
31
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
32 #include <gtk/gtk.h>
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
33
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
34 #include "pidginconversation.h"
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
35 #include "pidginversion.h"
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
36
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
37 G_BEGIN_DECLS
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
38
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
39 /**
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
40 * PidginTypingLabel:
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
41 *
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
42 * A [class@Gtk.Widget] for displaying who is typing in a
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
43 * [class@Purple.Conversation].
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
44 *
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
45 * Since: 3.0
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
46 */
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
47
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
48 #define PIDGIN_TYPE_TYPING_LABEL (pidgin_typing_label_get_type())
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
49
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
50 PIDGIN_AVAILABLE_IN_3_0
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
51 G_DECLARE_FINAL_TYPE(PidginTypingLabel, pidgin_typing_label, PIDGIN,
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
52 TYPING_LABEL, GtkBox)
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
53
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
54 /**
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
55 * pidgin_typing_label_new:
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
56 * @conversation: A [class@Purple.Conversation] instance.
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
57 *
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
58 * Creates the new typing label for @conversation.
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
59 *
43177
595a5f31003a Annotate Pidgin constructors that return base types
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 42943
diff changeset
60 * Returns: (transfer full) (type PidginTypingLabel): The new widget.
42943
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
61 *
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
62 * Since: 3.0
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
63 */
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
64 PIDGIN_AVAILABLE_IN_3_0
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
65 GtkWidget *pidgin_typing_label_new(PurpleConversation *conversation);
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
66
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
67 /**
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
68 * pidgin_typing_label_get_conversation:
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
69 * @label: The instance.
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
70 *
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
71 * Gets the [class@Purple.Conversation] that @label was created for.
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
72 *
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
73 * Returns: (transfer none): The conversation.
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
74 *
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
75 * Since: 3.0
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
76 */
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
77 PIDGIN_AVAILABLE_IN_3_0
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
78 PurpleConversation *pidgin_typing_label_get_conversation(PidginTypingLabel *label);
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
79
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
80 G_END_DECLS
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
81
d453240767f9 Create Pidgin.TypingLabel
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
82 #endif /* PIDGIN_TYPING_LABEL_H */

mercurial