pidgin/pidginimwindow.h

Wed, 28 Feb 2024 00:11:14 -0600

author
Markus Fischer <ivanhoe@fiscari.de>
date
Wed, 28 Feb 2024 00:11:14 -0600
changeset 42609
648a1b5dd96a
parent 42562
f02878f30f91
child 42620
72178a341eb8
permissions
-rw-r--r--

use a globally unique id when creating new Pidgin::DisplayItem's

Use a globally unique id when creating new `Pidgin::DisplayItem`s as the doc demands and as discussed on [discourse](https://discourse.imfreedom.org/t/how-is-pidgin-id-supposed-to-be-unique/134/2)

Testing Done:
Ran Pidgin and opened a conversation.

Reviewed at https://reviews.imfreedom.org/r/2980/

42562
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
1 /*
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
2 * Pidgin - Internet Messenger
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
3 * Copyright (C) Pidgin Developers <devel@pidgin.im>
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
4 *
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
5 * Pidgin is the legal property of its developers, whose names are too numerous
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
6 * to list here. Please refer to the COPYRIGHT file distributed with this
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
7 * source distribution.
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
8 *
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
9 * This program is free software; you can redistribute it and/or modify
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
10 * it under the terms of the GNU General Public License as published by
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
11 * the Free Software Foundation; either version 2 of the License, or
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
12 * (at your option) any later version.
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
13 *
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
14 * This program is distributed in the hope that it will be useful,
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
17 * GNU General Public License for more details.
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
18 *
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
19 * You should have received a copy of the GNU General Public License
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
20 * along with this program; if not, see <https://www.gnu.org/licenses/>.
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
21 */
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
22
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
23 #if !defined(PIDGIN_GLOBAL_HEADER_INSIDE) && !defined(PIDGIN_COMPILATION)
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
24 # error "only <pidgin.h> may be included directly"
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
25 #endif
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
26
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
27 #ifndef PIDGIN_IM_WINDOW_H
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
28 #define PIDGIN_IM_WINDOW_H
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
29
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
30 #include <glib.h>
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
31
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
32 #include <gtk/gtk.h>
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
33
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
34 #include <adwaita.h>
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
35
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
36 #include "pidginversion.h"
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
37
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
38 G_BEGIN_DECLS
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
39
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
40 /**
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
41 * PidginIMWindow:
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
42 *
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
43 * A window used to start a new direct message.
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
44 *
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
45 * Since: 3.0.0
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
46 */
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
47
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
48 #define PIDGIN_TYPE_IM_WINDOW (pidgin_im_window_get_type())
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
49
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
50 PIDGIN_AVAILABLE_IN_3_0
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
51 G_DECLARE_FINAL_TYPE(PidginIMWindow, pidgin_im_window,
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
52 PIDGIN, IM_WINDOW, AdwMessageDialog)
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
53
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
54 /**
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
55 * pidgin_im_window_new:
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
56 *
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
57 * Creates a new #PidginIMWindow instance.
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
58 *
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
59 * Returns: (transfer full): The new #PidginIMWindow instance.
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
60 */
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
61 GtkWidget *pidgin_im_window_new(void);
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
62
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
63 G_END_DECLS
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
64
f02878f30f91 Create a full widget for the new instant message window
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
65 #endif /* PIDGIN_IM_WINDOW_H */

mercurial