pidgin/gtkcellrendererexpander.c

Fri, 30 Jun 2017 13:13:13 -0500

author
Mike Ruprecht <cmaiku@gmail.com>
date
Fri, 30 Jun 2017 13:13:13 -0500
changeset 38547
1772a0f0f77c
parent 38009
d5c90412b85e
child 39553
5f6c287230d1
permissions
-rw-r--r--

tls-certificate: Fix docstring function references

Several function references in the documentation of PurpleTlsCertificate
were using the wrong function names or just the wrong function. This
patch fixes those references.

20330
650a7af9c238 remove gpl boilerplate from doxygen docs
Sean Egan <seanegan@pidgin.im>
parents: 20327
diff changeset
1 /* pidgin
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
2 *
15931
716b5fac1895 Re-sed the copyright notices so they don't all talk about Purple.
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
3 * Pidgin is the legal property of its developers, whose names are too numerous
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
4 * to list here. Please refer to the COPYRIGHT file distributed with this
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
5 * source distribution.
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
6 *
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
7 * This program is free software; you can redistribute it and/or modify
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
8 * it under the terms of the GNU General Public License as published by
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
9 * the Free Software Foundation; either version 2 of the License, or
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
10 * (at your option) any later version.
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
11 *
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
12 * This program is distributed in the hope that it will be useful,
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
15 * GNU General Public License for more details.
25888
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 24379
diff changeset
16 *
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
17 * You should have received a copy of the GNU General Public License
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
18 * along with this program; if not, write to the Free Software
19859
71d37b57eff2 The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 16254
diff changeset
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
20 *
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
21 */
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
22
25888
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 24379
diff changeset
23 /* This is taken largely from GtkCellRenderer[Text|Pixbuf|Toggle] by
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
24 * Jonathon Blandford <jrb@redhat.com> for RedHat, Inc.
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
25 */
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
26
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
27 #include "gtkcellrendererexpander.h"
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
28
33170
ce4447562d64 Add checks for old GTK+2 stuff.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33158
diff changeset
29 #include "gtk3compat.h"
ce4447562d64 Add checks for old GTK+2 stuff.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33158
diff changeset
30
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
31 static void pidgin_cell_renderer_expander_get_property (GObject *object,
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
32 guint param_id,
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
33 GValue *value,
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
34 GParamSpec *pspec);
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
35 static void pidgin_cell_renderer_expander_set_property (GObject *object,
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
36 guint param_id,
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
37 const GValue *value,
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
38 GParamSpec *pspec);
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
39 static void pidgin_cell_renderer_expander_init (PidginCellRendererExpander *cellexpander);
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
40 static void pidgin_cell_renderer_expander_class_init (PidginCellRendererExpanderClass *class);
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
41 static void pidgin_cell_renderer_expander_get_size (GtkCellRenderer *cell,
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
42 GtkWidget *widget,
37989
018063ec9d2e Remove backwards-compatibility with GTK+2.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 35507
diff changeset
43 const GdkRectangle *cell_area,
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
44 gint *x_offset,
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
45 gint *y_offset,
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
46 gint *width,
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
47 gint *height);
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
48 static void pidgin_cell_renderer_expander_render (GtkCellRenderer *cell,
33133
9a31f084f259 Fix some merge errors.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33132
diff changeset
49 cairo_t *cr,
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
50 GtkWidget *widget,
37989
018063ec9d2e Remove backwards-compatibility with GTK+2.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 35507
diff changeset
51 const GdkRectangle *background_area,
018063ec9d2e Remove backwards-compatibility with GTK+2.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 35507
diff changeset
52 const GdkRectangle *cell_area,
33133
9a31f084f259 Fix some merge errors.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33132
diff changeset
53 GtkCellRendererState flags);
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
54 static gboolean pidgin_cell_renderer_expander_activate (GtkCellRenderer *r,
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
55 GdkEvent *event,
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
56 GtkWidget *widget,
14953
76aa1c4e6580 [gaim-migrate @ 17663]
Damien Carbery
parents: 14860
diff changeset
57 const gchar *p,
37989
018063ec9d2e Remove backwards-compatibility with GTK+2.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 35507
diff changeset
58 const GdkRectangle *bg,
018063ec9d2e Remove backwards-compatibility with GTK+2.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 35507
diff changeset
59 const GdkRectangle *cell,
14860
24b350529a69 [gaim-migrate @ 17563]
Taso N. Devetzis
parents: 14719
diff changeset
60 GtkCellRendererState flags);
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
61 static void pidgin_cell_renderer_expander_finalize (GObject *gobject);
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
62
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
63 enum {
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
64 LAST_SIGNAL
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
65 };
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
66
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
67 enum {
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
68 PROP_0,
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
69 PROP_IS_EXPANDER
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
70 };
25888
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 24379
diff changeset
71
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
72 static gpointer parent_class;
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
73 /* static guint expander_cell_renderer_signals [LAST_SIGNAL]; */
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
74
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
75 GType pidgin_cell_renderer_expander_get_type (void)
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
76 {
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
77 static GType cell_expander_type = 0;
25888
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 24379
diff changeset
78
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
79 if (!cell_expander_type)
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
80 {
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
81 static const GTypeInfo cell_expander_info =
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
82 {
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
83 sizeof (PidginCellRendererExpanderClass),
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
84 NULL, /* base_init */
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
85 NULL, /* base_finalize */
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
86 (GClassInitFunc) pidgin_cell_renderer_expander_class_init,
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
87 NULL, /* class_finalize */
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
88 NULL, /* class_data */
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
89 sizeof (PidginCellRendererExpander),
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
90 0, /* n_preallocs */
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
91 (GInstanceInitFunc) pidgin_cell_renderer_expander_init,
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
92 NULL /* value_table */
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
93 };
25888
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 24379
diff changeset
94
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
95 cell_expander_type =
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
96 g_type_register_static (GTK_TYPE_CELL_RENDERER,
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
97 "PidginCellRendererExpander",
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
98 &cell_expander_info, 0);
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
99 }
25888
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 24379
diff changeset
100
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
101 return cell_expander_type;
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
102 }
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
103
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
104 static void pidgin_cell_renderer_expander_init (PidginCellRendererExpander *cellexpander)
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
105 {
33133
9a31f084f259 Fix some merge errors.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33132
diff changeset
106 g_object_set(G_OBJECT(cellexpander), "mode",
9a31f084f259 Fix some merge errors.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33132
diff changeset
107 GTK_CELL_RENDERER_MODE_ACTIVATABLE, NULL);
9a31f084f259 Fix some merge errors.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33132
diff changeset
108 gtk_cell_renderer_set_padding(GTK_CELL_RENDERER(cellexpander), 0, 2);
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
109 }
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
110
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
111 static void pidgin_cell_renderer_expander_class_init (PidginCellRendererExpanderClass *class)
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
112 {
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
113 GObjectClass *object_class = G_OBJECT_CLASS(class);
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
114 GtkCellRendererClass *cell_class = GTK_CELL_RENDERER_CLASS(class);
25888
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 24379
diff changeset
115
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
116 parent_class = g_type_class_peek_parent (class);
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
117 object_class->finalize = pidgin_cell_renderer_expander_finalize;
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
118
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
119 object_class->get_property = pidgin_cell_renderer_expander_get_property;
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
120 object_class->set_property = pidgin_cell_renderer_expander_set_property;
25888
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 24379
diff changeset
121
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
122 cell_class->get_size = pidgin_cell_renderer_expander_get_size;
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
123 cell_class->render = pidgin_cell_renderer_expander_render;
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
124 cell_class->activate = pidgin_cell_renderer_expander_activate;
25888
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 24379
diff changeset
125
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
126 g_object_class_install_property (object_class,
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
127 PROP_IS_EXPANDER,
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
128 g_param_spec_boolean ("expander-visible",
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
129 "Is Expander",
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
130 "True if the renderer should draw an expander",
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
131 FALSE,
35060
195dbb3b6432 pidgin: Use G_PARAM_STATIC_STRINGS and ensure g_object_notify is always called
Ankit Vani <a@nevitus.org>
parents: 35030
diff changeset
132 G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
133 }
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
134
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
135 static void pidgin_cell_renderer_expander_finalize (GObject *object)
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
136 {
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
137 /*
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
138 PidginCellRendererExpander *cellexpander = PIDGIN_CELL_RENDERER_EXPANDER(object);
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
139 */
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
140
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
141 (* G_OBJECT_CLASS (parent_class)->finalize) (object);
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
142 }
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
143
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
144 static void pidgin_cell_renderer_expander_get_property (GObject *object,
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
145 guint param_id,
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
146 GValue *value,
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
147 GParamSpec *psec)
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
148 {
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
149 PidginCellRendererExpander *cellexpander = PIDGIN_CELL_RENDERER_EXPANDER(object);
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
150
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
151 switch (param_id)
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
152 {
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
153 case PROP_IS_EXPANDER:
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
154 g_value_set_boolean(value, cellexpander->is_expander);
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
155 break;
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
156 default:
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
157 G_OBJECT_WARN_INVALID_PROPERTY_ID (object, param_id, psec);
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
158 break;
25888
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 24379
diff changeset
159
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
160 }
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
161 }
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
162
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
163 static void pidgin_cell_renderer_expander_set_property (GObject *object,
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
164 guint param_id,
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
165 const GValue *value,
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
166 GParamSpec *pspec)
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
167 {
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
168 PidginCellRendererExpander *cellexpander = PIDGIN_CELL_RENDERER_EXPANDER (object);
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
169
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
170 switch (param_id)
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
171 {
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
172 case PROP_IS_EXPANDER:
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
173 cellexpander->is_expander = g_value_get_boolean(value);
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
174 break;
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
175 default:
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
176 G_OBJECT_WARN_INVALID_PROPERTY_ID(object, param_id, pspec);
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
177 break;
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
178 }
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
179 }
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
180
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
181 GtkCellRenderer *pidgin_cell_renderer_expander_new(void)
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
182 {
35507
deef271d8440 Remove GTK from CellRendererExpander macros as well
Ankit Vani <a@nevitus.org>
parents: 35454
diff changeset
183 return g_object_new(PIDGIN_TYPE_CELL_RENDERER_EXPANDER, NULL);
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
184 }
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
185
33170
ce4447562d64 Add checks for old GTK+2 stuff.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33158
diff changeset
186 static void
ce4447562d64 Add checks for old GTK+2 stuff.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33158
diff changeset
187 pidgin_cell_renderer_expander_get_size (GtkCellRenderer *cell,
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
188 GtkWidget *widget,
37989
018063ec9d2e Remove backwards-compatibility with GTK+2.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 35507
diff changeset
189 const GdkRectangle *cell_area,
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
190 gint *x_offset,
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
191 gint *y_offset,
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
192 gint *width,
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
193 gint *height)
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
194 {
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
195 gint calc_width;
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
196 gint calc_height;
25888
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 24379
diff changeset
197 gint expander_size;
33133
9a31f084f259 Fix some merge errors.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33132
diff changeset
198 gint xpad;
9a31f084f259 Fix some merge errors.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33132
diff changeset
199 gint ypad;
9a31f084f259 Fix some merge errors.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33132
diff changeset
200 gfloat xalign;
9a31f084f259 Fix some merge errors.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33132
diff changeset
201 gfloat yalign;
25888
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 24379
diff changeset
202
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
203 gtk_widget_style_get(widget, "expander-size", &expander_size, NULL);
25888
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 24379
diff changeset
204
33133
9a31f084f259 Fix some merge errors.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33132
diff changeset
205 gtk_cell_renderer_get_padding(cell, &xpad, &ypad);
33158
ad941796372e Remove some added trailing spaces.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33134
diff changeset
206 gtk_cell_renderer_get_alignment(cell, &xalign, &yalign);
33133
9a31f084f259 Fix some merge errors.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33132
diff changeset
207 calc_width = (gint) xpad * 2 + expander_size;
9a31f084f259 Fix some merge errors.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33132
diff changeset
208 calc_height = (gint) ypad * 2 + expander_size;
25888
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 24379
diff changeset
209
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
210 if (width)
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
211 *width = calc_width;
25888
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 24379
diff changeset
212
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
213 if (height)
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
214 *height = calc_height;
25888
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 24379
diff changeset
215
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
216 if (cell_area)
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
217 {
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
218 if (x_offset)
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
219 {
33133
9a31f084f259 Fix some merge errors.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33132
diff changeset
220 *x_offset = xalign * (cell_area->width - calc_width);
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
221 *x_offset = MAX (*x_offset, 0);
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
222 }
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
223 if (y_offset)
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
224 {
33133
9a31f084f259 Fix some merge errors.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33132
diff changeset
225 *y_offset = yalign * (cell_area->height - calc_height);
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
226 *y_offset = MAX (*y_offset, 0);
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
227 }
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
228 }
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
229 }
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
230
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
231
33170
ce4447562d64 Add checks for old GTK+2 stuff.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33158
diff changeset
232 static void
ce4447562d64 Add checks for old GTK+2 stuff.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33158
diff changeset
233 pidgin_cell_renderer_expander_render(GtkCellRenderer *cell,
ce4447562d64 Add checks for old GTK+2 stuff.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33158
diff changeset
234 cairo_t *cr,
ce4447562d64 Add checks for old GTK+2 stuff.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33158
diff changeset
235 GtkWidget *widget,
37989
018063ec9d2e Remove backwards-compatibility with GTK+2.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 35507
diff changeset
236 const GdkRectangle *background_area,
018063ec9d2e Remove backwards-compatibility with GTK+2.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 35507
diff changeset
237 const GdkRectangle *cell_area,
33170
ce4447562d64 Add checks for old GTK+2 stuff.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33158
diff changeset
238 GtkCellRendererState flags)
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
239 {
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
240 PidginCellRendererExpander *cellexpander = (PidginCellRendererExpander *) cell;
24379
02a9ca3f4a34 Fixes a bug in the blist theme where a line appears only under the expander
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents: 20404
diff changeset
241 gboolean set;
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
242 gint width, height;
38005
1fe9aba16440 Fix state flags used to draw GtkCellRendererExpander.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 37989
diff changeset
243 GtkStateFlags state;
33133
9a31f084f259 Fix some merge errors.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33132
diff changeset
244 gint xpad;
9a31f084f259 Fix some merge errors.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33132
diff changeset
245 gint ypad;
9a31f084f259 Fix some merge errors.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33132
diff changeset
246 gboolean is_expanded;
9a31f084f259 Fix some merge errors.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33132
diff changeset
247 GtkAllocation allocation;
33271
53bf180b9eb1 Use GtkStyleContext instead of GtkStyle on GTK+3.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33170
diff changeset
248 GtkStyleContext *context;
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
249
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
250 if (!cellexpander->is_expander)
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
251 return;
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
252
33133
9a31f084f259 Fix some merge errors.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33132
diff changeset
253 gtk_cell_renderer_get_padding(cell, &xpad, &ypad);
9a31f084f259 Fix some merge errors.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33132
diff changeset
254 g_object_get(G_OBJECT(cell), "is-expanded", &is_expanded, NULL);
9a31f084f259 Fix some merge errors.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33132
diff changeset
255
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
256 width = cell_area->width;
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
257 height = cell_area->height;
25888
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 24379
diff changeset
258
33134
92dd446608e4 Fix a small typo.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33133
diff changeset
259 if (!gtk_widget_get_sensitive(widget))
38005
1fe9aba16440 Fix state flags used to draw GtkCellRendererExpander.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 37989
diff changeset
260 state = GTK_STATE_FLAG_INSENSITIVE;
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
261 else if (flags & GTK_CELL_RENDERER_PRELIT)
38005
1fe9aba16440 Fix state flags used to draw GtkCellRendererExpander.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 37989
diff changeset
262 state = GTK_STATE_FLAG_PRELIGHT;
33133
9a31f084f259 Fix some merge errors.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33132
diff changeset
263 else if (gtk_widget_has_focus(widget) && flags & GTK_CELL_RENDERER_SELECTED)
38005
1fe9aba16440 Fix state flags used to draw GtkCellRendererExpander.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 37989
diff changeset
264 state = GTK_STATE_FLAG_ACTIVE;
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
265 else
38005
1fe9aba16440 Fix state flags used to draw GtkCellRendererExpander.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 37989
diff changeset
266 state = GTK_STATE_FLAG_NORMAL;
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
267
33133
9a31f084f259 Fix some merge errors.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33132
diff changeset
268 width -= xpad*2;
9a31f084f259 Fix some merge errors.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33132
diff changeset
269 height -= ypad*2;
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
270
38009
d5c90412b85e Fix backwards-compatibility for GtkCellRendererExpander.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38005
diff changeset
271 #if GTK_CHECK_VERSION(3,14,0)
33271
53bf180b9eb1 Use GtkStyleContext instead of GtkStyle on GTK+3.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33170
diff changeset
272 if (is_expanded)
38005
1fe9aba16440 Fix state flags used to draw GtkCellRendererExpander.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 37989
diff changeset
273 state |= GTK_STATE_FLAG_CHECKED;
33271
53bf180b9eb1 Use GtkStyleContext instead of GtkStyle on GTK+3.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33170
diff changeset
274 else
38005
1fe9aba16440 Fix state flags used to draw GtkCellRendererExpander.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 37989
diff changeset
275 state &= ~GTK_STATE_FLAG_CHECKED;
38009
d5c90412b85e Fix backwards-compatibility for GtkCellRendererExpander.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38005
diff changeset
276 #else
d5c90412b85e Fix backwards-compatibility for GtkCellRendererExpander.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38005
diff changeset
277 if (is_expanded)
d5c90412b85e Fix backwards-compatibility for GtkCellRendererExpander.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38005
diff changeset
278 state |= GTK_STATE_FLAG_ACTIVE;
d5c90412b85e Fix backwards-compatibility for GtkCellRendererExpander.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38005
diff changeset
279 else
d5c90412b85e Fix backwards-compatibility for GtkCellRendererExpander.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38005
diff changeset
280 state &= ~GTK_STATE_FLAG_ACTIVE;
d5c90412b85e Fix backwards-compatibility for GtkCellRendererExpander.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38005
diff changeset
281 #endif
33271
53bf180b9eb1 Use GtkStyleContext instead of GtkStyle on GTK+3.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33170
diff changeset
282
53bf180b9eb1 Use GtkStyleContext instead of GtkStyle on GTK+3.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33170
diff changeset
283 context = gtk_widget_get_style_context(widget);
53bf180b9eb1 Use GtkStyleContext instead of GtkStyle on GTK+3.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33170
diff changeset
284 gtk_style_context_add_class(context, GTK_STYLE_CLASS_VIEW);
53bf180b9eb1 Use GtkStyleContext instead of GtkStyle on GTK+3.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33170
diff changeset
285 gtk_style_context_add_class(context, GTK_STYLE_CLASS_EXPANDER);
38005
1fe9aba16440 Fix state flags used to draw GtkCellRendererExpander.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 37989
diff changeset
286 gtk_style_context_set_state(context, state);
33271
53bf180b9eb1 Use GtkStyleContext instead of GtkStyle on GTK+3.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33170
diff changeset
287 gtk_render_expander(context, cr,
53bf180b9eb1 Use GtkStyleContext instead of GtkStyle on GTK+3.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33170
diff changeset
288 cell_area->x + xpad, cell_area->y + ypad,
53bf180b9eb1 Use GtkStyleContext instead of GtkStyle on GTK+3.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33170
diff changeset
289 width, height);
24379
02a9ca3f4a34 Fixes a bug in the blist theme where a line appears only under the expander
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents: 20404
diff changeset
290
02a9ca3f4a34 Fixes a bug in the blist theme where a line appears only under the expander
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents: 20404
diff changeset
291 /* only draw the line if the color isn't set - this prevents a bug where the hline appears only under the expander */
02a9ca3f4a34 Fixes a bug in the blist theme where a line appears only under the expander
Justin Rodriguez <ffdragon@soc.pidgin.im>
parents: 20404
diff changeset
292 g_object_get(cellexpander, "cell-background-set", &set, NULL);
33133
9a31f084f259 Fix some merge errors.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33132
diff changeset
293 gtk_widget_get_allocation(widget, &allocation);
9a31f084f259 Fix some merge errors.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33132
diff changeset
294
9a31f084f259 Fix some merge errors.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33132
diff changeset
295 if (is_expanded && !set)
33271
53bf180b9eb1 Use GtkStyleContext instead of GtkStyle on GTK+3.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33170
diff changeset
296 gtk_render_line(context, cr, 0, cell_area->y + cell_area->height,
33133
9a31f084f259 Fix some merge errors.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33132
diff changeset
297 allocation.width, cell_area->y + cell_area->height);
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
298 }
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
299
33170
ce4447562d64 Add checks for old GTK+2 stuff.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33158
diff changeset
300 static gboolean
ce4447562d64 Add checks for old GTK+2 stuff.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33158
diff changeset
301 pidgin_cell_renderer_expander_activate(GtkCellRenderer *r,
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
302 GdkEvent *event,
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
303 GtkWidget *widget,
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
304 const gchar *p,
37989
018063ec9d2e Remove backwards-compatibility with GTK+2.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 35507
diff changeset
305 const GdkRectangle *bg,
018063ec9d2e Remove backwards-compatibility with GTK+2.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 35507
diff changeset
306 const GdkRectangle *cell,
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
307 GtkCellRendererState flags)
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
308 {
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
309 GtkTreePath *path = gtk_tree_path_new_from_string(p);
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
310 if (gtk_tree_view_row_expanded(GTK_TREE_VIEW(widget), path))
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
311 gtk_tree_view_collapse_row(GTK_TREE_VIEW(widget), path);
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
312 else
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
313 gtk_tree_view_expand_row(GTK_TREE_VIEW(widget),path,FALSE);
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
314 gtk_tree_path_free(path);
14626
964677efbddf [gaim-migrate @ 17287]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14623
diff changeset
315 return FALSE;
14623
046a118a3b04 [gaim-migrate @ 17284]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
316 }

mercurial