pidgin/gtkutils.c

branch
next.minor
changeset 22000
5e7708f58d3d
parent 21630
591a79c1b295
child 22005
0183020ba2cc
equal deleted inserted replaced
21764:773b66076151 22000:5e7708f58d3d
130 gtk_widget_modify_font(imhtml, desc); 130 gtk_widget_modify_font(imhtml, desc);
131 pango_font_description_free(desc); 131 pango_font_description_free(desc);
132 } 132 }
133 } 133 }
134 134
135 GtkWidget * 135 static
136 pidgin_create_window(const char *title, guint border_width, const char *role, gboolean resizable) 136 void pidgin_window_init(GtkWindow *wnd, const char *title, guint border_width, const char *role, gboolean resizable)
137 { 137 {
138 GtkWindow *wnd = NULL;
139
140 wnd = GTK_WINDOW(gtk_window_new(GTK_WINDOW_TOPLEVEL));
141 if (title) 138 if (title)
142 gtk_window_set_title(wnd, title); 139 gtk_window_set_title(wnd, title);
143 #ifdef _WIN32 140 #ifdef _WIN32
144 else 141 else
145 gtk_window_set_title(wnd, PIDGIN_ALERT_TITLE); 142 gtk_window_set_title(wnd, PIDGIN_ALERT_TITLE);
146 #endif 143 #endif
147 gtk_container_set_border_width(GTK_CONTAINER(wnd), border_width); 144 gtk_container_set_border_width(GTK_CONTAINER(wnd), border_width);
148 if (role) 145 if (role)
149 gtk_window_set_role(wnd, role); 146 gtk_window_set_role(wnd, role);
150 gtk_window_set_resizable(wnd, resizable); 147 gtk_window_set_resizable(wnd, resizable);
148 }
149
150 GtkWidget *
151 pidgin_create_window(const char *title, guint border_width, const char *role, gboolean resizable)
152 {
153 GtkWindow *wnd = NULL;
154
155 wnd = GTK_WINDOW(gtk_window_new(GTK_WINDOW_TOPLEVEL));
156 pidgin_window_init(wnd, title, border_width, role, resizable);
151 157
152 return GTK_WIDGET(wnd); 158 return GTK_WIDGET(wnd);
159 }
160
161 GtkWidget *
162 pidgin_create_dialog(const char *title, guint border_width, const char *role, gboolean resizable)
163 {
164 GtkWindow *wnd = NULL;
165
166 wnd = GTK_WINDOW(gtk_dialog_new());
167 pidgin_window_init(wnd, title, border_width, role, resizable);
168 g_object_set(G_OBJECT(wnd), "has-separator", FALSE, NULL);
169
170 return GTK_WIDGET(wnd);
171 }
172
173 GtkWidget *
174 pidgin_dialog_get_vbox_with_properties(GtkDialog *dialog, gboolean homogeneous, gint spacing)
175 {
176 GtkBox *vbox = GTK_BOX(GTK_DIALOG(dialog)->vbox);
177 gtk_box_set_homogeneous(vbox, homogeneous);
178 gtk_box_set_spacing(vbox, spacing);
179 return GTK_WIDGET(vbox);
180 }
181
182 GtkWidget *pidgin_dialog_get_vbox(GtkDialog *dialog)
183 {
184 return GTK_DIALOG(dialog)->vbox;
185 }
186
187 GtkWidget *pidgin_dialog_get_action_area(GtkDialog *dialog)
188 {
189 return GTK_DIALOG(dialog)->action_area;
153 } 190 }
154 191
155 GtkWidget * 192 GtkWidget *
156 pidgin_create_imhtml(gboolean editable, GtkWidget **imhtml_ret, GtkWidget **toolbar_ret, GtkWidget **sw_ret) 193 pidgin_create_imhtml(gboolean editable, GtkWidget **imhtml_ret, GtkWidget **toolbar_ret, GtkWidget **sw_ret)
157 { 194 {

mercurial