Sun, 03 Nov 2024 00:05:44 -0500
remove purple3-url-handler.desktop.in.in
The application that did the launching was removed long ago. Also this should
be implemented by the user interfaces and they might provide separate files to
groups schemas as well.
Testing Done:
Called in the turtles.
Reviewed at https://reviews.imfreedom.org/r/3640/
|
40858
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
1 | /* |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
2 | * Pidgin - Internet Messenger |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
3 | * Copyright (C) Pidgin Developers <devel@pidgin.im> |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
4 | * |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
5 | * Pidgin is the legal property of its developers, whose names are too numerous |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
6 | * to list here. Please refer to the COPYRIGHT file distributed with this |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
7 | * source distribution. |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
8 | * |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
9 | * This program is free software; you can redistribute it and/or modify |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
10 | * it under the terms of the GNU General Public License as published by |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
11 | * the Free Software Foundation; either version 2 of the License, or |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
12 | * (at your option) any later version. |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
13 | * |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
14 | * This program is distributed in the hope that it will be useful, |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
15 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
16 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
17 | * GNU General Public License for more details. |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
18 | * |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
19 | * You should have received a copy of the GNU General Public License |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
20 | * along with this program; if not, see <https://www.gnu.org/licenses/>. |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
21 | */ |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
22 | |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
23 | #include "pidgin/pidgininfopane.h" |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
24 | |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
25 | struct _PidginInfoPane { |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
26 | GtkBox parent; |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
27 | |
|
42566
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
28 | char *title; |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
29 | char *subtitle; |
|
40858
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
30 | |
|
42566
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
31 | GtkWidget *child; |
|
40858
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
32 | }; |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
33 | |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
34 | enum { |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
35 | PROP_0, |
|
42566
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
36 | PROP_TITLE, |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
37 | PROP_SUBTITLE, |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
38 | PROP_CHILD, |
|
40858
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
39 | N_PROPERTIES, |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
40 | }; |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
41 | static GParamSpec *properties[N_PROPERTIES] = {NULL, }; |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
42 | |
|
42575
580339aa47cc
Make sure all of the final types in pidgin are defined as such
Gary Kramlich <grim@reaperworld.com>
parents:
42566
diff
changeset
|
43 | G_DEFINE_FINAL_TYPE(PidginInfoPane, pidgin_info_pane, GTK_TYPE_BOX) |
|
40858
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
44 | |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
45 | /****************************************************************************** |
|
42521
a8e758b503eb
Simplify PidginInfoPane by using bindings everywhere
Gary Kramlich <grim@reaperworld.com>
parents:
42367
diff
changeset
|
46 | * Callbacks |
|
42367
12b865212d37
Rework the info pane a bit
Gary Kramlich <grim@reaperworld.com>
parents:
42296
diff
changeset
|
47 | *****************************************************************************/ |
|
42521
a8e758b503eb
Simplify PidginInfoPane by using bindings everywhere
Gary Kramlich <grim@reaperworld.com>
parents:
42367
diff
changeset
|
48 | static char * |
|
42566
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
49 | pidgin_info_pane_linkify_text_cb(GObject *self, const char *subtitle, |
|
42521
a8e758b503eb
Simplify PidginInfoPane by using bindings everywhere
Gary Kramlich <grim@reaperworld.com>
parents:
42367
diff
changeset
|
50 | G_GNUC_UNUSED gpointer data) |
|
42367
12b865212d37
Rework the info pane a bit
Gary Kramlich <grim@reaperworld.com>
parents:
42296
diff
changeset
|
51 | { |
|
42566
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
52 | GtkWidget *label = GTK_WIDGET(self); |
|
42521
a8e758b503eb
Simplify PidginInfoPane by using bindings everywhere
Gary Kramlich <grim@reaperworld.com>
parents:
42367
diff
changeset
|
53 | char *ret = NULL; |
|
42367
12b865212d37
Rework the info pane a bit
Gary Kramlich <grim@reaperworld.com>
parents:
42296
diff
changeset
|
54 | |
|
42566
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
55 | ret = purple_markup_linkify(subtitle); |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
56 | |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
57 | gtk_widget_set_visible(label, !purple_strempty(ret)); |
|
42367
12b865212d37
Rework the info pane a bit
Gary Kramlich <grim@reaperworld.com>
parents:
42296
diff
changeset
|
58 | |
|
42521
a8e758b503eb
Simplify PidginInfoPane by using bindings everywhere
Gary Kramlich <grim@reaperworld.com>
parents:
42367
diff
changeset
|
59 | return ret; |
|
42367
12b865212d37
Rework the info pane a bit
Gary Kramlich <grim@reaperworld.com>
parents:
42296
diff
changeset
|
60 | } |
|
12b865212d37
Rework the info pane a bit
Gary Kramlich <grim@reaperworld.com>
parents:
42296
diff
changeset
|
61 | |
|
43041
ea212a081e9c
Make the text in the infopanes selectable
Gary Kramlich <grim@reaperworld.com>
parents:
42767
diff
changeset
|
62 | static void |
|
ea212a081e9c
Make the text in the infopanes selectable
Gary Kramlich <grim@reaperworld.com>
parents:
42767
diff
changeset
|
63 | pidgin_info_pane_subtitle_enter_cb(GtkEventControllerMotion *self, |
|
ea212a081e9c
Make the text in the infopanes selectable
Gary Kramlich <grim@reaperworld.com>
parents:
42767
diff
changeset
|
64 | G_GNUC_UNUSED gdouble x, |
|
ea212a081e9c
Make the text in the infopanes selectable
Gary Kramlich <grim@reaperworld.com>
parents:
42767
diff
changeset
|
65 | G_GNUC_UNUSED gdouble y, |
|
ea212a081e9c
Make the text in the infopanes selectable
Gary Kramlich <grim@reaperworld.com>
parents:
42767
diff
changeset
|
66 | G_GNUC_UNUSED gpointer data) |
|
ea212a081e9c
Make the text in the infopanes selectable
Gary Kramlich <grim@reaperworld.com>
parents:
42767
diff
changeset
|
67 | { |
|
ea212a081e9c
Make the text in the infopanes selectable
Gary Kramlich <grim@reaperworld.com>
parents:
42767
diff
changeset
|
68 | GtkWidget *label = NULL; |
|
ea212a081e9c
Make the text in the infopanes selectable
Gary Kramlich <grim@reaperworld.com>
parents:
42767
diff
changeset
|
69 | |
|
ea212a081e9c
Make the text in the infopanes selectable
Gary Kramlich <grim@reaperworld.com>
parents:
42767
diff
changeset
|
70 | label = gtk_event_controller_get_widget(GTK_EVENT_CONTROLLER(self)); |
|
ea212a081e9c
Make the text in the infopanes selectable
Gary Kramlich <grim@reaperworld.com>
parents:
42767
diff
changeset
|
71 | gtk_label_set_lines(GTK_LABEL(label), 10); |
|
ea212a081e9c
Make the text in the infopanes selectable
Gary Kramlich <grim@reaperworld.com>
parents:
42767
diff
changeset
|
72 | } |
|
ea212a081e9c
Make the text in the infopanes selectable
Gary Kramlich <grim@reaperworld.com>
parents:
42767
diff
changeset
|
73 | |
|
ea212a081e9c
Make the text in the infopanes selectable
Gary Kramlich <grim@reaperworld.com>
parents:
42767
diff
changeset
|
74 | static void |
|
ea212a081e9c
Make the text in the infopanes selectable
Gary Kramlich <grim@reaperworld.com>
parents:
42767
diff
changeset
|
75 | pidgin_info_pane_subtitle_leave_cb(GtkEventControllerMotion *self, |
|
ea212a081e9c
Make the text in the infopanes selectable
Gary Kramlich <grim@reaperworld.com>
parents:
42767
diff
changeset
|
76 | G_GNUC_UNUSED gdouble x, |
|
ea212a081e9c
Make the text in the infopanes selectable
Gary Kramlich <grim@reaperworld.com>
parents:
42767
diff
changeset
|
77 | G_GNUC_UNUSED gdouble y, |
|
ea212a081e9c
Make the text in the infopanes selectable
Gary Kramlich <grim@reaperworld.com>
parents:
42767
diff
changeset
|
78 | G_GNUC_UNUSED gpointer data) |
|
ea212a081e9c
Make the text in the infopanes selectable
Gary Kramlich <grim@reaperworld.com>
parents:
42767
diff
changeset
|
79 | { |
|
ea212a081e9c
Make the text in the infopanes selectable
Gary Kramlich <grim@reaperworld.com>
parents:
42767
diff
changeset
|
80 | GtkWidget *label = NULL; |
|
ea212a081e9c
Make the text in the infopanes selectable
Gary Kramlich <grim@reaperworld.com>
parents:
42767
diff
changeset
|
81 | |
|
ea212a081e9c
Make the text in the infopanes selectable
Gary Kramlich <grim@reaperworld.com>
parents:
42767
diff
changeset
|
82 | label = gtk_event_controller_get_widget(GTK_EVENT_CONTROLLER(self)); |
|
ea212a081e9c
Make the text in the infopanes selectable
Gary Kramlich <grim@reaperworld.com>
parents:
42767
diff
changeset
|
83 | gtk_label_set_lines(GTK_LABEL(label), 2); |
|
ea212a081e9c
Make the text in the infopanes selectable
Gary Kramlich <grim@reaperworld.com>
parents:
42767
diff
changeset
|
84 | } |
|
ea212a081e9c
Make the text in the infopanes selectable
Gary Kramlich <grim@reaperworld.com>
parents:
42767
diff
changeset
|
85 | |
|
42367
12b865212d37
Rework the info pane a bit
Gary Kramlich <grim@reaperworld.com>
parents:
42296
diff
changeset
|
86 | /****************************************************************************** |
|
40858
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
87 | * GObject Implementation |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
88 | *****************************************************************************/ |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
89 | static void |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
90 | pidgin_info_pane_get_property(GObject *obj, guint param_id, GValue *value, |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
91 | GParamSpec *pspec) |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
92 | { |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
93 | PidginInfoPane *pane = PIDGIN_INFO_PANE(obj); |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
94 | |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
95 | switch(param_id) { |
|
42566
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
96 | case PROP_TITLE: |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
97 | g_value_set_string(value, pidgin_info_pane_get_title(pane)); |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
98 | break; |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
99 | case PROP_SUBTITLE: |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
100 | g_value_set_string(value, pidgin_info_pane_get_subtitle(pane)); |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
101 | break; |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
102 | case PROP_CHILD: |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
103 | g_value_set_object(value, pidgin_info_pane_get_child(pane)); |
|
40858
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
104 | break; |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
105 | default: |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
106 | G_OBJECT_WARN_INVALID_PROPERTY_ID(obj, param_id, pspec); |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
107 | break; |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
108 | } |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
109 | } |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
110 | |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
111 | static void |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
112 | pidgin_info_pane_set_property(GObject *obj, guint param_id, const GValue *value, |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
113 | GParamSpec *pspec) |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
114 | { |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
115 | PidginInfoPane *pane = PIDGIN_INFO_PANE(obj); |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
116 | |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
117 | switch(param_id) { |
|
42566
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
118 | case PROP_TITLE: |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
119 | pidgin_info_pane_set_title(pane, g_value_get_string(value)); |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
120 | break; |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
121 | case PROP_SUBTITLE: |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
122 | pidgin_info_pane_set_subtitle(pane, g_value_get_string(value)); |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
123 | break; |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
124 | case PROP_CHILD: |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
125 | pidgin_info_pane_set_child(pane, g_value_get_object(value)); |
|
40858
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
126 | break; |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
127 | default: |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
128 | G_OBJECT_WARN_INVALID_PROPERTY_ID(obj, param_id, pspec); |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
129 | break; |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
130 | } |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
131 | } |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
132 | |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
133 | static void |
|
42566
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
134 | pidgin_info_pane_finalize(GObject *obj) { |
|
40858
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
135 | PidginInfoPane *pane = PIDGIN_INFO_PANE(obj); |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
136 | |
|
42566
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
137 | g_clear_pointer(&pane->title, g_free); |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
138 | g_clear_pointer(&pane->subtitle, g_free); |
|
40858
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
139 | |
|
42566
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
140 | G_OBJECT_CLASS(pidgin_info_pane_parent_class)->finalize(obj); |
|
40858
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
141 | } |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
142 | |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
143 | static void |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
144 | pidgin_info_pane_init(PidginInfoPane *pane) { |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
145 | gtk_widget_init_template(GTK_WIDGET(pane)); |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
146 | } |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
147 | |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
148 | static void |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
149 | pidgin_info_pane_class_init(PidginInfoPaneClass *klass) { |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
150 | GObjectClass *obj_class = G_OBJECT_CLASS(klass); |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
151 | GtkWidgetClass *widget_class = GTK_WIDGET_CLASS(klass); |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
152 | |
|
42566
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
153 | obj_class->finalize = pidgin_info_pane_finalize; |
|
40858
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
154 | obj_class->get_property = pidgin_info_pane_get_property; |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
155 | obj_class->set_property = pidgin_info_pane_set_property; |
|
42566
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
156 | |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
157 | /** |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
158 | * PidginInfoPane:title: |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
159 | * |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
160 | * The title to display. |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
161 | * |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
162 | * Since: 3.0 |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
163 | */ |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
164 | properties[PROP_TITLE] = g_param_spec_string( |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
165 | "title", "title", |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
166 | "The title for the info pane.", |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
167 | NULL, |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
168 | G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS); |
|
40858
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
169 | |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
170 | /** |
|
42566
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
171 | * PidginInfoPane:subtitle: |
|
40858
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
172 | * |
|
42566
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
173 | * The sub title to display. |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
174 | * |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
175 | * Since: 3.0 |
|
40858
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
176 | */ |
|
42566
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
177 | properties[PROP_SUBTITLE] = g_param_spec_string( |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
178 | "subtitle", "subtitle", |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
179 | "The subtitle for the info pane.", |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
180 | NULL, |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
181 | G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS); |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
182 | |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
183 | /** |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
184 | * PidginInfoPane:child: |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
185 | * |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
186 | * The child widget to display at the end of the info pane. |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
187 | * |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
188 | * Since: 3.0 |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
189 | */ |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
190 | properties[PROP_CHILD] = g_param_spec_object( |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
191 | "child", "child", |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
192 | "A child widget to display at the end of the info pane.", |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
193 | GTK_TYPE_WIDGET, |
|
42296
1707a28b1258
Allow the conversation property of PidginInfoPane to be changed
Gary Kramlich <grim@reaperworld.com>
parents:
41479
diff
changeset
|
194 | G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS); |
|
40858
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
195 | |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
196 | g_object_class_install_properties(obj_class, N_PROPERTIES, properties); |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
197 | |
|
42566
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
198 | gtk_widget_class_set_template_from_resource(widget_class, |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
199 | "/im/pidgin/Pidgin3/infopane.ui"); |
|
42521
a8e758b503eb
Simplify PidginInfoPane by using bindings everywhere
Gary Kramlich <grim@reaperworld.com>
parents:
42367
diff
changeset
|
200 | |
|
a8e758b503eb
Simplify PidginInfoPane by using bindings everywhere
Gary Kramlich <grim@reaperworld.com>
parents:
42367
diff
changeset
|
201 | gtk_widget_class_bind_template_callback(widget_class, |
|
a8e758b503eb
Simplify PidginInfoPane by using bindings everywhere
Gary Kramlich <grim@reaperworld.com>
parents:
42367
diff
changeset
|
202 | pidgin_info_pane_linkify_text_cb); |
|
43041
ea212a081e9c
Make the text in the infopanes selectable
Gary Kramlich <grim@reaperworld.com>
parents:
42767
diff
changeset
|
203 | gtk_widget_class_bind_template_callback(widget_class, |
|
ea212a081e9c
Make the text in the infopanes selectable
Gary Kramlich <grim@reaperworld.com>
parents:
42767
diff
changeset
|
204 | pidgin_info_pane_subtitle_enter_cb); |
|
ea212a081e9c
Make the text in the infopanes selectable
Gary Kramlich <grim@reaperworld.com>
parents:
42767
diff
changeset
|
205 | gtk_widget_class_bind_template_callback(widget_class, |
|
ea212a081e9c
Make the text in the infopanes selectable
Gary Kramlich <grim@reaperworld.com>
parents:
42767
diff
changeset
|
206 | pidgin_info_pane_subtitle_leave_cb); |
|
40858
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
207 | } |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
208 | |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
209 | /****************************************************************************** |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
210 | * API |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
211 | *****************************************************************************/ |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
212 | GtkWidget * |
|
42566
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
213 | pidgin_info_pane_new(void) { |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
214 | return g_object_new(PIDGIN_TYPE_INFO_PANE, NULL); |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
215 | } |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
216 | |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
217 | const char * |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
218 | pidgin_info_pane_get_title(PidginInfoPane *pane) { |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
219 | g_return_val_if_fail(PIDGIN_IS_INFO_PANE(pane), NULL); |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
220 | |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
221 | return pane->title; |
|
40858
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
222 | } |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
223 | |
|
42566
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
224 | void |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
225 | pidgin_info_pane_set_title(PidginInfoPane *pane, const char *title) { |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
226 | g_return_if_fail(PIDGIN_IS_INFO_PANE(pane)); |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
227 | |
|
42767
8cf1d11b59c1
Use g_set_str everywhere
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
42575
diff
changeset
|
228 | if(g_set_str(&pane->title, title)) { |
|
42566
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
229 | g_object_notify_by_pspec(G_OBJECT(pane), properties[PROP_TITLE]); |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
230 | } |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
231 | } |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
232 | |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
233 | const char * |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
234 | pidgin_info_pane_get_subtitle(PidginInfoPane *pane) { |
|
40858
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
235 | g_return_val_if_fail(PIDGIN_IS_INFO_PANE(pane), NULL); |
|
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
236 | |
|
42566
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
237 | return pane->subtitle; |
|
40858
2bd48c93678a
Create a new standalone info pane widget
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
238 | } |
|
42296
1707a28b1258
Allow the conversation property of PidginInfoPane to be changed
Gary Kramlich <grim@reaperworld.com>
parents:
41479
diff
changeset
|
239 | |
|
1707a28b1258
Allow the conversation property of PidginInfoPane to be changed
Gary Kramlich <grim@reaperworld.com>
parents:
41479
diff
changeset
|
240 | void |
|
42566
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
241 | pidgin_info_pane_set_subtitle(PidginInfoPane *pane, const char *subtitle) { |
|
42296
1707a28b1258
Allow the conversation property of PidginInfoPane to be changed
Gary Kramlich <grim@reaperworld.com>
parents:
41479
diff
changeset
|
242 | g_return_if_fail(PIDGIN_IS_INFO_PANE(pane)); |
|
1707a28b1258
Allow the conversation property of PidginInfoPane to be changed
Gary Kramlich <grim@reaperworld.com>
parents:
41479
diff
changeset
|
243 | |
|
42767
8cf1d11b59c1
Use g_set_str everywhere
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
42575
diff
changeset
|
244 | if(g_set_str(&pane->subtitle, subtitle)) { |
|
42566
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
245 | g_object_notify_by_pspec(G_OBJECT(pane), properties[PROP_SUBTITLE]); |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
246 | } |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
247 | } |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
248 | |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
249 | GtkWidget * |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
250 | pidgin_info_pane_get_child(PidginInfoPane *pane) { |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
251 | g_return_val_if_fail(PIDGIN_IS_INFO_PANE(pane), NULL); |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
252 | |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
253 | return pane->child; |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
254 | } |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
255 | |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
256 | void |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
257 | pidgin_info_pane_set_child(PidginInfoPane *pane, GtkWidget *widget) { |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
258 | g_return_if_fail(PIDGIN_IS_INFO_PANE(pane)); |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
259 | g_return_if_fail(widget == NULL || gtk_widget_get_parent(widget) == NULL); |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
260 | |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
261 | if(pane->child == widget) { |
|
42296
1707a28b1258
Allow the conversation property of PidginInfoPane to be changed
Gary Kramlich <grim@reaperworld.com>
parents:
41479
diff
changeset
|
262 | return; |
|
1707a28b1258
Allow the conversation property of PidginInfoPane to be changed
Gary Kramlich <grim@reaperworld.com>
parents:
41479
diff
changeset
|
263 | } |
|
1707a28b1258
Allow the conversation property of PidginInfoPane to be changed
Gary Kramlich <grim@reaperworld.com>
parents:
41479
diff
changeset
|
264 | |
|
42566
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
265 | g_clear_object(&pane->child); |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
266 | |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
267 | if(GTK_IS_WIDGET(widget)) { |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
268 | pane->child = g_object_ref_sink(widget); |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
269 | gtk_box_append(GTK_BOX(pane), pane->child); |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
270 | |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
271 | /* This might not be the best place for this, but this helps keep the |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
272 | * user interface consistent and doesn't force users to do it. |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
273 | */ |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
274 | gtk_widget_set_margin_end(pane->child, 6); |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
275 | } |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
276 | |
|
ddaa27826ccc
Make PidginInfoPane generic
Gary Kramlich <grim@reaperworld.com>
parents:
42521
diff
changeset
|
277 | g_object_notify_by_pspec(G_OBJECT(pane), properties[PROP_CHILD]); |
|
42296
1707a28b1258
Allow the conversation property of PidginInfoPane to be changed
Gary Kramlich <grim@reaperworld.com>
parents:
41479
diff
changeset
|
278 | } |