Thu, 02 Sep 2021 20:18:36 -0500
Replace the deprecated API in gtkaccount.c
Testing Done:
Verified that all of the dialog buttons still function as intended.
Reviewed at https://reviews.imfreedom.org/r/906/
|
40580
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
1 | /* |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
2 | * Pidgin - Internet Messenger |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
3 | * Copyright (C) Pidgin Developers <devel@pidgin.im> |
| 14623 | 4 | * |
|
15931
716b5fac1895
Re-sed the copyright notices so they don't all talk about Purple.
Richard Laager <rlaager@pidgin.im>
parents:
15884
diff
changeset
|
5 | * Pidgin is the legal property of its developers, whose names are too numerous |
| 14623 | 6 | * to list here. Please refer to the COPYRIGHT file distributed with this |
| 7 | * source distribution. | |
| 8 | * | |
| 9 | * This program is free software; you can redistribute it and/or modify | |
| 10 | * it under the terms of the GNU General Public License as published by | |
| 11 | * the Free Software Foundation; either version 2 of the License, or | |
| 12 | * (at your option) any later version. | |
| 13 | * | |
| 14 | * This program is distributed in the hope that it will be useful, | |
| 15 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 16 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 17 | * GNU General Public License for more details. | |
|
25888
d0fdd378a635
Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents:
24379
diff
changeset
|
18 | * |
| 14623 | 19 | * You should have received a copy of the GNU General Public License |
|
40580
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
20 | * along with this program; if not, see <https://www.gnu.org/licenses/>. |
| 14623 | 21 | */ |
| 22 | ||
|
40580
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
23 | #include "pidgin/pidgincellrendererexpander.h" |
| 14623 | 24 | |
|
39553
5f6c287230d1
Use GObject macros for PidginCellRendererExpander.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38009
diff
changeset
|
25 | struct _PidginCellRendererExpander { |
|
5f6c287230d1
Use GObject macros for PidginCellRendererExpander.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38009
diff
changeset
|
26 | GtkCellRenderer parent; |
|
5f6c287230d1
Use GObject macros for PidginCellRendererExpander.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38009
diff
changeset
|
27 | }; |
|
5f6c287230d1
Use GObject macros for PidginCellRendererExpander.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38009
diff
changeset
|
28 | |
|
5f6c287230d1
Use GObject macros for PidginCellRendererExpander.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38009
diff
changeset
|
29 | G_DEFINE_TYPE(PidginCellRendererExpander, pidgin_cell_renderer_expander, |
|
40580
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
30 | GTK_TYPE_CELL_RENDERER) |
|
25888
d0fdd378a635
Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents:
24379
diff
changeset
|
31 | |
|
40580
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
32 | /****************************************************************************** |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
33 | * GtkCellRenderer Implementation |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
34 | *****************************************************************************/ |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
35 | static void |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
36 | pidgin_cell_renderer_expander_get_size(GtkCellRenderer *renderer, |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
37 | GtkWidget *widget, |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
38 | const GdkRectangle *cell_area, |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
39 | gint *x_offset, gint *y_offset, |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
40 | gint *width, gint *height) |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
41 | { |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
42 | gint calc_width = 0, calc_height = 0; |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
43 | gint xpad = 0, ypad = 0; |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
44 | gint expander_size = 0; |
|
25888
d0fdd378a635
Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents:
24379
diff
changeset
|
45 | |
|
40580
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
46 | gtk_widget_style_get(widget, "expander-size", &expander_size, NULL); |
| 14623 | 47 | |
|
40580
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
48 | gtk_cell_renderer_get_padding(renderer, &xpad, &ypad); |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
49 | calc_width = (xpad * 2) + expander_size; |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
50 | calc_height = (ypad * 2) + expander_size; |
| 14623 | 51 | |
|
40580
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
52 | if(width) { |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
53 | *width = calc_width; |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
54 | } |
| 14623 | 55 | |
|
40580
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
56 | if(height) { |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
57 | *height = calc_height; |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
58 | } |
|
25888
d0fdd378a635
Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents:
24379
diff
changeset
|
59 | |
|
40580
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
60 | if(cell_area) { |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
61 | gfloat xalign = 0.0f, yalign = 0.0f; |
| 14623 | 62 | |
|
40580
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
63 | gtk_cell_renderer_get_alignment(renderer, &xalign, &yalign); |
| 14623 | 64 | |
|
40580
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
65 | if(x_offset) { |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
66 | *x_offset = (gint)(xalign * (cell_area->width - calc_width)); |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
67 | *x_offset = MAX (*x_offset, 0); |
| 14623 | 68 | } |
| 69 | ||
|
40580
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
70 | if(y_offset) { |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
71 | *y_offset = (gint)(yalign * (cell_area->height - calc_height)); |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
72 | *y_offset = MAX (*y_offset, 0); |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
73 | } |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
74 | } |
| 14623 | 75 | } |
| 76 | ||
|
33170
ce4447562d64
Add checks for old GTK+2 stuff.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
33158
diff
changeset
|
77 | static void |
|
40580
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
78 | pidgin_cell_renderer_expander_render(GtkCellRenderer *renderer, cairo_t *cr, |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
79 | GtkWidget *widget, |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
80 | const GdkRectangle *background_area, |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
81 | const GdkRectangle *cell_area, |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
82 | GtkCellRendererState flags) |
| 14623 | 83 | { |
|
40580
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
84 | GtkStateFlags state; |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
85 | GtkStyleContext *context = NULL; |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
86 | gboolean is_expanded = FALSE, is_expander = FALSE; |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
87 | gint xpad = 0, ypad = 0; |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
88 | gint width = cell_area->width, height = cell_area->height; |
|
25888
d0fdd378a635
Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents:
24379
diff
changeset
|
89 | |
|
40580
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
90 | /* if the row doesn't have children, bail out. */ |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
91 | g_object_get(G_OBJECT(renderer), "is-expander", &is_expander, NULL); |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
92 | if(!is_expander) { |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
93 | return; |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
94 | } |
| 14623 | 95 | |
|
40580
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
96 | /* Figure out the state of the renderer. */ |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
97 | if(!gtk_widget_get_sensitive(widget)) { |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
98 | state = GTK_STATE_FLAG_INSENSITIVE; |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
99 | } else if(flags & GTK_CELL_RENDERER_PRELIT) { |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
100 | state = GTK_STATE_FLAG_PRELIGHT; |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
101 | } else if(gtk_widget_has_focus(widget) && flags & GTK_CELL_RENDERER_SELECTED) { |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
102 | state = GTK_STATE_FLAG_ACTIVE; |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
103 | } else { |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
104 | state = GTK_STATE_FLAG_NORMAL; |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
105 | } |
| 14623 | 106 | |
|
40580
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
107 | g_object_get(G_OBJECT(renderer), "is-expanded", &is_expanded, NULL); |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
108 | if(is_expanded) { |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
109 | state |= GTK_STATE_FLAG_CHECKED; |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
110 | } else { |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
111 | state &= ~GTK_STATE_FLAG_CHECKED; |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
112 | } |
|
25888
d0fdd378a635
Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents:
24379
diff
changeset
|
113 | |
|
40580
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
114 | /* Build our style context */ |
|
33271
53bf180b9eb1
Use GtkStyleContext instead of GtkStyle on GTK+3.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
33170
diff
changeset
|
115 | 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
|
116 | 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
|
117 | 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
|
118 | gtk_style_context_set_state(context, state); |
|
40580
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
119 | |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
120 | /* Adjust the width and height according to the padding. */ |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
121 | gtk_cell_renderer_get_padding(renderer, &xpad, &ypad); |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
122 | width -= xpad * 2; |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
123 | height -= ypad * 2; |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
124 | |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
125 | /* Render the arrow. */ |
|
33271
53bf180b9eb1
Use GtkStyleContext instead of GtkStyle on GTK+3.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
33170
diff
changeset
|
126 | 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
|
127 | 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
|
128 | width, height); |
| 14623 | 129 | } |
| 130 | ||
|
33170
ce4447562d64
Add checks for old GTK+2 stuff.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
33158
diff
changeset
|
131 | static gboolean |
|
40580
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
132 | pidgin_cell_renderer_expander_activate(GtkCellRenderer *r, GdkEvent *event, |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
133 | GtkWidget *widget, const gchar *p, |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
134 | const GdkRectangle *bg, |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
135 | const GdkRectangle *cell, |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
136 | GtkCellRendererState flags) |
| 14623 | 137 | { |
| 138 | GtkTreePath *path = gtk_tree_path_new_from_string(p); | |
|
40580
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
139 | |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
140 | if(gtk_tree_view_row_expanded(GTK_TREE_VIEW(widget), path)) { |
| 14623 | 141 | gtk_tree_view_collapse_row(GTK_TREE_VIEW(widget), path); |
|
40580
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
142 | } else { |
| 14623 | 143 | gtk_tree_view_expand_row(GTK_TREE_VIEW(widget),path,FALSE); |
|
40580
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
144 | } |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
145 | |
| 14623 | 146 | gtk_tree_path_free(path); |
|
40580
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
147 | |
|
14626
964677efbddf
[gaim-migrate @ 17287]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
14623
diff
changeset
|
148 | return FALSE; |
| 14623 | 149 | } |
|
40580
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
150 | |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
151 | /****************************************************************************** |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
152 | * GObject Implementation |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
153 | *****************************************************************************/ |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
154 | static void |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
155 | pidgin_cell_renderer_expander_init (PidginCellRendererExpander *renderer) { |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
156 | /* there's no accessor for setting the mode, so we have to set the property |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
157 | * explicitly. |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
158 | */ |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
159 | g_object_set(G_OBJECT(renderer), "mode", |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
160 | GTK_CELL_RENDERER_MODE_ACTIVATABLE, NULL); |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
161 | |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
162 | gtk_cell_renderer_set_padding(GTK_CELL_RENDERER(renderer), 0, 2); |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
163 | } |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
164 | |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
165 | static void |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
166 | pidgin_cell_renderer_expander_class_init(PidginCellRendererExpanderClass *klass) |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
167 | { |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
168 | GtkCellRendererClass *renderer_class = GTK_CELL_RENDERER_CLASS(klass); |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
169 | |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
170 | renderer_class->get_size = pidgin_cell_renderer_expander_get_size; |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
171 | renderer_class->render = pidgin_cell_renderer_expander_render; |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
172 | renderer_class->activate = pidgin_cell_renderer_expander_activate; |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
173 | } |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
174 | |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
175 | /****************************************************************************** |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
176 | * Public API |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
177 | *****************************************************************************/ |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
178 | GtkCellRenderer * |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
179 | pidgin_cell_renderer_expander_new(void) { |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
180 | return g_object_new(PIDGIN_TYPE_CELL_RENDERER_EXPANDER, NULL); |
|
fdf04534e7d1
clean up PidginCellRendererExpander
Gary Kramlich <grim@reaperworld.com>
parents:
40197
diff
changeset
|
181 | } |