comparison gtk/dw.c @ 144:c68bc269ed58

Updated dw_window_set_font() to use GTK 2.0 semantics. Also improved the look of the new GTK 2.0 MLE control.
author bsmith@81767d24-ef19-dc11-ae90-00e081727c95
date Tue, 22 Oct 2002 11:07:42 +0000
parents 1d57c27e4adc
children 659c1a2bccad
comparison
equal deleted inserted replaced
143:1d57c27e4adc 144:c68bc269ed58
1229 gtk_widget_set_style(handle, style); 1229 gtk_widget_set_style(handle, style);
1230 retval = TRUE; 1230 retval = TRUE;
1231 } 1231 }
1232 #else 1232 #else
1233 PangoFontDescription *font = pango_font_description_from_string(fontname); 1233 PangoFontDescription *font = pango_font_description_from_string(fontname);
1234 1234
1235 if(font) 1235 if(font)
1236 gtk_widget_modify_font(handle, font); 1236 gtk_widget_modify_font(handle, font);
1237
1237 pango_font_description_free(font); 1238 pango_font_description_free(font);
1238 #endif 1239 #endif
1239 return retval; 1240 return retval;
1240 } 1241 }
1241 1242
1245 * handle: The window (widget) handle. 1246 * handle: The window (widget) handle.
1246 * fontname: Name and size of the font in the form "size.fontname" 1247 * fontname: Name and size of the font in the form "size.fontname"
1247 */ 1248 */
1248 int dw_window_set_font(HWND handle, char *fontname) 1249 int dw_window_set_font(HWND handle, char *fontname)
1249 { 1250 {
1251 #if GTK_MAJOR_VERSION > 1
1252 PangoFontDescription *pfont;
1253 #endif
1250 GtkWidget *handle2 = handle; 1254 GtkWidget *handle2 = handle;
1251 char *font; 1255 char *font;
1252 int _locked_by_me = FALSE; 1256 int _locked_by_me = FALSE;
1253 gpointer data; 1257 gpointer data;
1254 GdkFont *gdkfont; 1258 GdkFont *gdkfont;
1274 if(data) 1278 if(data)
1275 free(data); 1279 free(data);
1276 1280
1277 if(font) 1281 if(font)
1278 gtk_object_set_data(GTK_OBJECT(handle2), "fontname", (gpointer)font); 1282 gtk_object_set_data(GTK_OBJECT(handle2), "fontname", (gpointer)font);
1279 1283 #if GTK_MAJOR_VERSION > 1
1280 1284 pfont = pango_font_description_from_string(fontname);
1281 DW_MUTEX_UNLOCK; 1285
1286 if(pfont)
1287 gtk_widget_modify_font(handle2, pfont);
1288
1289 pango_font_description_free(pfont);
1290 #endif
1291 DW_MUTEX_UNLOCK;
1282 return TRUE; 1292 return TRUE;
1283 } 1293 }
1284 1294
1285 void _free_gdk_colors(HWND handle) 1295 void _free_gdk_colors(HWND handle)
1286 { 1296 {
2091 int _locked_by_me = FALSE; 2101 int _locked_by_me = FALSE;
2092 2102
2093 DW_MUTEX_LOCK; 2103 DW_MUTEX_LOCK;
2094 #if GTK_MAJOR_VERSION > 1 2104 #if GTK_MAJOR_VERSION > 1
2095 tmpbox = gtk_scrolled_window_new (NULL, NULL); 2105 tmpbox = gtk_scrolled_window_new (NULL, NULL);
2096 gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (tmpbox), 2106 gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW(tmpbox),
2097 GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS); 2107 GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS);
2108 gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(tmpbox), GTK_SHADOW_ETCHED_IN);
2098 tmp = gtk_text_view_new(); 2109 tmp = gtk_text_view_new();
2099 gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(tmpbox), tmp); 2110 gtk_container_add (GTK_CONTAINER(tmpbox), tmp);
2100 gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(tmp), GTK_WRAP_NONE); 2111 gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(tmp), GTK_WRAP_NONE);
2101 gtk_object_set_user_data(GTK_OBJECT(tmpbox), (gpointer)tmp); 2112 gtk_object_set_user_data(GTK_OBJECT(tmpbox), (gpointer)tmp);
2102 scroller = NULL; 2113 scroller = NULL;
2103 #else 2114 #else
2104 tmpbox = gtk_hbox_new(FALSE, 0); 2115 tmpbox = gtk_hbox_new(FALSE, 0);
6093 gint _splitbar_accept_position(GtkWidget *widget, gpointer data) 6104 gint _splitbar_accept_position(GtkWidget *widget, gpointer data)
6094 { 6105 {
6095 float *percent = (float *)gtk_object_get_data(GTK_OBJECT(widget), "_dw_percent"); 6106 float *percent = (float *)gtk_object_get_data(GTK_OBJECT(widget), "_dw_percent");
6096 int size = 0, position = gtk_paned_get_position(GTK_PANED(widget)); 6107 int size = 0, position = gtk_paned_get_position(GTK_PANED(widget));
6097 6108
6109 printf("Accept position\n");
6098 if(!percent) 6110 if(!percent)
6099 return FALSE; 6111 return FALSE;
6100 6112
6101 if(GTK_IS_VPANED(widget)) 6113 if(GTK_IS_VPANED(widget))
6102 size = widget->allocation.height; 6114 size = widget->allocation.height;
6134 gtk_object_set_data(GTK_OBJECT(tmp), "id", (gpointer)id); 6146 gtk_object_set_data(GTK_OBJECT(tmp), "id", (gpointer)id);
6135 *percent = 50.0; 6147 *percent = 50.0;
6136 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_percent", (gpointer)percent); 6148 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_percent", (gpointer)percent);
6137 gtk_signal_connect(GTK_OBJECT(tmp), "size-allocate", GTK_SIGNAL_FUNC(_splitbar_size_allocate), NULL); 6149 gtk_signal_connect(GTK_OBJECT(tmp), "size-allocate", GTK_SIGNAL_FUNC(_splitbar_size_allocate), NULL);
6138 #if GTK_MAJOR_VERSION > 1 6150 #if GTK_MAJOR_VERSION > 1
6139 gtk_signal_connect(GTK_OBJECT(tmp), "accept-position", GTK_SIGNAL_FUNC(_splitbar_accept_position), NULL); 6151 g_signal_connect(G_OBJECT(tmp), "accept-position", (GCallback)_splitbar_accept_position, NULL);
6140 #else 6152 #else
6141 gtk_paned_set_handle_size(GTK_PANED(tmp), 3); 6153 gtk_paned_set_handle_size(GTK_PANED(tmp), 3);
6142 #endif 6154 #endif
6143 gtk_widget_show(tmp); 6155 gtk_widget_show(tmp);
6144 DW_MUTEX_UNLOCK; 6156 DW_MUTEX_UNLOCK;