comparison gtk/dw.c @ 358:526642f70ddd

Prefix all internally used data with _dw_ to avoid conflicts with user data set with dw_window_set_data().
author bsmith@81767d24-ef19-dc11-ae90-00e081727c95
date Sun, 20 Apr 2003 13:16:32 +0000
parents 5df54ebc44dd
children 9ddcbbaebd50
comparison
equal deleted inserted replaced
357:5df54ebc44dd 358:526642f70ddd
382 382
383 while(list) 383 while(list)
384 { 384 {
385 if(list->data == (gpointer)child) 385 if(list->data == (gpointer)child)
386 { 386 {
387 if(!gtk_object_get_data(GTK_OBJECT(work->window), "appending")) 387 if(!gtk_object_get_data(GTK_OBJECT(work->window), "_dw_appending"))
388 { 388 {
389 gtk_object_set_data(GTK_OBJECT(work->window), "item", (gpointer)item); 389 gtk_object_set_data(GTK_OBJECT(work->window), "_dw_item", (gpointer)item);
390 if(selectfunc) 390 if(selectfunc)
391 retval = selectfunc(work->window, item, work->data); 391 retval = selectfunc(work->window, item, work->data);
392 } 392 }
393 break; 393 break;
394 } 394 }
449 } 449 }
450 450
451 retval = contextfunc(work->window, text, event->x, event->y, work->data, itemdata); 451 retval = contextfunc(work->window, text, event->x, event->y, work->data, itemdata);
452 #else 452 #else
453 int (*contextfunc)(HWND, char *, int, int, void *, void *) = work->func; 453 int (*contextfunc)(HWND, char *, int, int, void *, void *) = work->func;
454 char *text = (char *)gtk_object_get_data(GTK_OBJECT(widget), "text"); 454 char *text = (char *)gtk_object_get_data(GTK_OBJECT(widget), "_dw_text");
455 void *itemdata = (void *)gtk_object_get_data(GTK_OBJECT(widget), "itemdata"); 455 void *itemdata = (void *)gtk_object_get_data(GTK_OBJECT(widget), "_dw_itemdata");
456 456
457 if(widget != work->window) 457 if(widget != work->window)
458 { 458 {
459 GtkWidget *tree = (GtkWidget *)gtk_object_get_user_data(GTK_OBJECT(work->window)); 459 GtkWidget *tree = (GtkWidget *)gtk_object_get_user_data(GTK_OBJECT(work->window));
460 460
461 if(tree && GTK_IS_TREE(tree)) 461 if(tree && GTK_IS_TREE(tree))
462 { 462 {
463 GtkWidget *lastselect = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(tree), "lastselect"); 463 GtkWidget *lastselect = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(tree), "_dw_lastselect");
464 464
465 if(lastselect && GTK_IS_TREE_ITEM(lastselect)) 465 if(lastselect && GTK_IS_TREE_ITEM(lastselect))
466 { 466 {
467 text = (char *)gtk_object_get_data(GTK_OBJECT(lastselect), "text"); 467 text = (char *)gtk_object_get_data(GTK_OBJECT(lastselect), "_dw_text");
468 itemdata = (void *)gtk_object_get_data(GTK_OBJECT(lastselect), "itemdata"); 468 itemdata = (void *)gtk_object_get_data(GTK_OBJECT(lastselect), "_dw_itemdata");
469 } 469 }
470 } 470 }
471 } 471 }
472 472
473 retval = contextfunc(work->window, text, event->x, event->y, work->data, itemdata); 473 retval = contextfunc(work->window, text, event->x, event->y, work->data, itemdata);
502 } 502 }
503 #else 503 #else
504 static gint _tree_select_event(GtkTree *tree, GtkWidget *child, gpointer data) 504 static gint _tree_select_event(GtkTree *tree, GtkWidget *child, gpointer data)
505 { 505 {
506 SignalHandler *work = (SignalHandler *)data; 506 SignalHandler *work = (SignalHandler *)data;
507 GtkWidget *treeroot = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(child), "tree"); 507 GtkWidget *treeroot = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(child), "_dw_tree");
508 int retval = FALSE; 508 int retval = FALSE;
509 509
510 if(treeroot && GTK_IS_TREE(treeroot)) 510 if(treeroot && GTK_IS_TREE(treeroot))
511 { 511 {
512 GtkWidget *lastselect = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(treeroot), "lastselect"); 512 GtkWidget *lastselect = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(treeroot), "_dw_lastselect");
513 if(lastselect && GTK_IS_TREE_ITEM(lastselect)) 513 if(lastselect && GTK_IS_TREE_ITEM(lastselect))
514 gtk_tree_item_deselect(GTK_TREE_ITEM(lastselect)); 514 gtk_tree_item_deselect(GTK_TREE_ITEM(lastselect));
515 gtk_object_set_data(GTK_OBJECT(treeroot), "lastselect", (gpointer)child); 515 gtk_object_set_data(GTK_OBJECT(treeroot), "_dw_lastselect", (gpointer)child);
516 } 516 }
517 517
518 if(work) 518 if(work)
519 { 519 {
520 int (*treeselectfunc)(HWND, HTREEITEM, char *, void *, void *) = work->func; 520 int (*treeselectfunc)(HWND, HTREEITEM, char *, void *, void *) = work->func;
521 char *text = (char *)gtk_object_get_data(GTK_OBJECT(child), "text"); 521 char *text = (char *)gtk_object_get_data(GTK_OBJECT(child), "_dw_text");
522 void *itemdata = (void *)gtk_object_get_data(GTK_OBJECT(child), "itemdata"); 522 void *itemdata = (void *)gtk_object_get_data(GTK_OBJECT(child), "_dw_itemdata");
523 retval = treeselectfunc(work->window, (HTREEITEM)child, text, work->data, itemdata); 523 retval = treeselectfunc(work->window, (HTREEITEM)child, text, work->data, itemdata);
524 } 524 }
525 return retval; 525 return retval;
526 } 526 }
527 #endif 527 #endif
551 551
552 /* Return the logical page id from the physical page id */ 552 /* Return the logical page id from the physical page id */
553 int _get_logical_page(HWND handle, unsigned long pageid) 553 int _get_logical_page(HWND handle, unsigned long pageid)
554 { 554 {
555 int z; 555 int z;
556 GtkWidget **pagearray = gtk_object_get_data(GTK_OBJECT(handle), "pagearray"); 556 GtkWidget **pagearray = gtk_object_get_data(GTK_OBJECT(handle), "_dw_pagearray");
557 GtkWidget *thispage = gtk_notebook_get_nth_page(GTK_NOTEBOOK(handle), pageid); 557 GtkWidget *thispage = gtk_notebook_get_nth_page(GTK_NOTEBOOK(handle), pageid);
558 558
559 if(pagearray && thispage) 559 if(pagearray && thispage)
560 { 560 {
561 for(z=0;z<256;z++) 561 for(z=0;z<256;z++)
612 if(work) 612 if(work)
613 { 613 {
614 int (*valuechangedfunc)(HWND, int, void *) = work->func; 614 int (*valuechangedfunc)(HWND, int, void *) = work->func;
615 int max = _round_value(adjustment->upper); 615 int max = _round_value(adjustment->upper);
616 int val = _round_value(adjustment->value); 616 int val = _round_value(adjustment->value);
617 GtkWidget *slider = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(adjustment), "slider"); 617 GtkWidget *slider = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(adjustment), "_dw_slider");
618 GtkWidget *scrollbar = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(adjustment), "scrollbar"); 618 GtkWidget *scrollbar = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(adjustment), "_dw_scrollbar");
619 619
620 if(slider) 620 if(slider)
621 { 621 {
622 if(GTK_IS_VSCALE(slider)) 622 if(GTK_IS_VSCALE(slider))
623 valuechangedfunc(work->window, (max - val) - 1, work->data); 623 valuechangedfunc(work->window, (max - val) - 1, work->data);
1270 return 0; 1270 return 0;
1271 1271
1272 DW_MUTEX_LOCK; 1272 DW_MUTEX_LOCK;
1273 if(GTK_IS_WIDGET(handle)) 1273 if(GTK_IS_WIDGET(handle))
1274 { 1274 {
1275 GtkWidget *eventbox = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(handle), "eventbox"); 1275 GtkWidget *eventbox = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(handle), "_dw_eventbox");
1276 1276
1277 if(eventbox && GTK_IS_WIDGET(eventbox)) 1277 if(eventbox && GTK_IS_WIDGET(eventbox))
1278 gtk_widget_destroy(eventbox); 1278 gtk_widget_destroy(eventbox);
1279 else 1279 else
1280 gtk_widget_destroy(handle); 1280 gtk_widget_destroy(handle);
1361 } 1361 }
1362 font = strdup(fontname); 1362 font = strdup(fontname);
1363 1363
1364 #if GTK_MAJOR_VERSION < 2 1364 #if GTK_MAJOR_VERSION < 2
1365 /* Free old font if it exists */ 1365 /* Free old font if it exists */
1366 gdkfont = (GdkFont *)gtk_object_get_data(GTK_OBJECT(handle2), "gdkfont"); 1366 gdkfont = (GdkFont *)gtk_object_get_data(GTK_OBJECT(handle2), "_dw_gdkfont");
1367 if(gdkfont) 1367 if(gdkfont)
1368 gdk_font_unref(gdkfont); 1368 gdk_font_unref(gdkfont);
1369 gdkfont = gdk_font_load(fontname); 1369 gdkfont = gdk_font_load(fontname);
1370 if(!gdkfont) 1370 if(!gdkfont)
1371 gdkfont = gdk_font_load("fixed"); 1371 gdkfont = gdk_font_load("fixed");
1372 gtk_object_set_data(GTK_OBJECT(handle2), "gdkfont", (gpointer)gdkfont); 1372 gtk_object_set_data(GTK_OBJECT(handle2), "_dw_gdkfont", (gpointer)gdkfont);
1373 #endif 1373 #endif
1374 1374
1375 /* Free old font name if one is allocated */ 1375 /* Free old font name if one is allocated */
1376 data = gtk_object_get_data(GTK_OBJECT(handle2), "fontname"); 1376 data = gtk_object_get_data(GTK_OBJECT(handle2), "_dw_fontname");
1377 if(data) 1377 if(data)
1378 free(data); 1378 free(data);
1379 1379
1380 gtk_object_set_data(GTK_OBJECT(handle2), "fontname", (gpointer)font); 1380 gtk_object_set_data(GTK_OBJECT(handle2), "_dw_fontname", (gpointer)font);
1381 #if GTK_MAJOR_VERSION > 1 1381 #if GTK_MAJOR_VERSION > 1
1382 pfont = pango_font_description_from_string(fontname); 1382 pfont = pango_font_description_from_string(fontname);
1383 1383
1384 if(pfont) 1384 if(pfont)
1385 { 1385 {
1391 return TRUE; 1391 return TRUE;
1392 } 1392 }
1393 1393
1394 void _free_gdk_colors(HWND handle) 1394 void _free_gdk_colors(HWND handle)
1395 { 1395 {
1396 GdkColor *old = (GdkColor *)gtk_object_get_data(GTK_OBJECT(handle), "foregdk"); 1396 GdkColor *old = (GdkColor *)gtk_object_get_data(GTK_OBJECT(handle), "_dw_foregdk");
1397 1397
1398 if(old) 1398 if(old)
1399 free(old); 1399 free(old);
1400 1400
1401 old = (GdkColor *)gtk_object_get_data(GTK_OBJECT(handle), "backgdk"); 1401 old = (GdkColor *)gtk_object_get_data(GTK_OBJECT(handle), "_dw_backgdk");
1402 1402
1403 if(old) 1403 if(old)
1404 free(old); 1404 free(old);
1405 } 1405 }
1406 1406
1413 _free_gdk_colors(handle); 1413 _free_gdk_colors(handle);
1414 1414
1415 *foregdk = fore; 1415 *foregdk = fore;
1416 *backgdk = back; 1416 *backgdk = back;
1417 1417
1418 gtk_object_set_data(GTK_OBJECT(handle), "foregdk", (gpointer)foregdk); 1418 gtk_object_set_data(GTK_OBJECT(handle), "_dw_foregdk", (gpointer)foregdk);
1419 gtk_object_set_data(GTK_OBJECT(handle), "backgdk", (gpointer)backgdk); 1419 gtk_object_set_data(GTK_OBJECT(handle), "_dw_backgdk", (gpointer)backgdk);
1420 } 1420 }
1421 1421
1422 static int _set_color(HWND handle, unsigned long fore, unsigned long back) 1422 static int _set_color(HWND handle, unsigned long fore, unsigned long back)
1423 { 1423 {
1424 /* Remember that each color component in X11 use 16 bit no matter 1424 /* Remember that each color component in X11 use 16 bit no matter
1498 1498
1499 _save_gdk_colors(handle, forecolor, backcolor); 1499 _save_gdk_colors(handle, forecolor, backcolor);
1500 1500
1501 if(GTK_IS_CLIST(handle)) 1501 if(GTK_IS_CLIST(handle))
1502 { 1502 {
1503 int z, rowcount = (int)gtk_object_get_data(GTK_OBJECT(handle), "rowcount"); 1503 int z, rowcount = (int)gtk_object_get_data(GTK_OBJECT(handle), "_dw_rowcount");
1504 1504
1505 for(z=0;z<rowcount;z++) 1505 for(z=0;z<rowcount;z++)
1506 { 1506 {
1507 gtk_clist_set_foreground(GTK_CLIST(handle), z, &forecolor); 1507 gtk_clist_set_foreground(GTK_CLIST(handle), z, &forecolor);
1508 gtk_clist_set_background(GTK_CLIST(handle), z, &backcolor); 1508 gtk_clist_set_background(GTK_CLIST(handle), z, &backcolor);
1538 if(tmp) 1538 if(tmp)
1539 handle2 = tmp; 1539 handle2 = tmp;
1540 } 1540 }
1541 else if(GTK_IS_TABLE(handle)) 1541 else if(GTK_IS_TABLE(handle))
1542 { 1542 {
1543 GtkWidget *tmp = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(handle), "eventbox"); 1543 GtkWidget *tmp = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(handle), "_dw_eventbox");
1544 if(tmp) 1544 if(tmp)
1545 handle2 = tmp; 1545 handle2 = tmp;
1546 } 1546 }
1547 1547
1548 _set_color(handle2, fore, back); 1548 _set_color(handle2, fore, back);
1675 DW_MUTEX_LOCK; 1675 DW_MUTEX_LOCK;
1676 tmp = gtk_table_new(1, 1, FALSE); 1676 tmp = gtk_table_new(1, 1, FALSE);
1677 eventbox = gtk_event_box_new(); 1677 eventbox = gtk_event_box_new();
1678 1678
1679 gtk_widget_show(eventbox); 1679 gtk_widget_show(eventbox);
1680 gtk_object_set_data(GTK_OBJECT(tmp), "eventbox", (gpointer)eventbox); 1680 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_eventbox", (gpointer)eventbox);
1681 gtk_object_set_data(GTK_OBJECT(tmp), "boxtype", (gpointer)type); 1681 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_boxtype", (gpointer)type);
1682 gtk_object_set_data(GTK_OBJECT(tmp), "boxpad", (gpointer)pad); 1682 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_boxpad", (gpointer)pad);
1683 gtk_widget_show(tmp); 1683 gtk_widget_show(tmp);
1684 DW_MUTEX_UNLOCK; 1684 DW_MUTEX_UNLOCK;
1685 return tmp; 1685 return tmp;
1686 } 1686 }
1687 1687
1701 frame = gtk_frame_new(NULL); 1701 frame = gtk_frame_new(NULL);
1702 gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_ETCHED_IN); 1702 gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_ETCHED_IN);
1703 gtk_frame_set_label(GTK_FRAME(frame), title && *title ? title : NULL); 1703 gtk_frame_set_label(GTK_FRAME(frame), title && *title ? title : NULL);
1704 tmp = gtk_table_new(1, 1, FALSE); 1704 tmp = gtk_table_new(1, 1, FALSE);
1705 gtk_container_border_width(GTK_CONTAINER(tmp), pad); 1705 gtk_container_border_width(GTK_CONTAINER(tmp), pad);
1706 gtk_object_set_data(GTK_OBJECT(tmp), "boxtype", (gpointer)type); 1706 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_boxtype", (gpointer)type);
1707 gtk_object_set_data(GTK_OBJECT(tmp), "boxpad", (gpointer)pad); 1707 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_boxpad", (gpointer)pad);
1708 gtk_object_set_data(GTK_OBJECT(frame), "boxhandle", (gpointer)tmp); 1708 gtk_object_set_data(GTK_OBJECT(frame), "_dw_boxhandle", (gpointer)tmp);
1709 gtk_container_add(GTK_CONTAINER(frame), tmp); 1709 gtk_container_add(GTK_CONTAINER(frame), tmp);
1710 gtk_widget_show(tmp); 1710 gtk_widget_show(tmp);
1711 gtk_widget_show(frame); 1711 gtk_widget_show(frame);
1712 DW_MUTEX_UNLOCK; 1712 DW_MUTEX_UNLOCK;
1713 return frame; 1713 return frame;
1761 #endif 1761 #endif
1762 #if GTK_MAJOR_VERSION < 2 1762 #if GTK_MAJOR_VERSION < 2
1763 tmp = gtk_pixmap_new(pixmap, bitmap); 1763 tmp = gtk_pixmap_new(pixmap, bitmap);
1764 #endif 1764 #endif
1765 gtk_widget_show(tmp); 1765 gtk_widget_show(tmp);
1766 gtk_object_set_data(GTK_OBJECT(tmp), "id", (gpointer)id); 1766 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_id", (gpointer)id);
1767 DW_MUTEX_UNLOCK; 1767 DW_MUTEX_UNLOCK;
1768 return tmp; 1768 return tmp;
1769 } 1769 }
1770 1770
1771 /* 1771 /*
1788 gtk_notebook_set_scrollable(GTK_NOTEBOOK(tmp), TRUE); 1788 gtk_notebook_set_scrollable(GTK_NOTEBOOK(tmp), TRUE);
1789 #if 0 1789 #if 0
1790 gtk_notebook_popup_enable(GTK_NOTEBOOK(tmp)); 1790 gtk_notebook_popup_enable(GTK_NOTEBOOK(tmp));
1791 #endif 1791 #endif
1792 gtk_widget_show(tmp); 1792 gtk_widget_show(tmp);
1793 gtk_object_set_data(GTK_OBJECT(tmp), "id", (gpointer)id); 1793 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_id", (gpointer)id);
1794 gtk_object_set_data(GTK_OBJECT(tmp), "pagearray", (gpointer)pagearray); 1794 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_pagearray", (gpointer)pagearray);
1795 DW_MUTEX_UNLOCK; 1795 DW_MUTEX_UNLOCK;
1796 return tmp; 1796 return tmp;
1797 } 1797 }
1798 1798
1799 /* 1799 /*
1810 1810
1811 DW_MUTEX_LOCK; 1811 DW_MUTEX_LOCK;
1812 tmp = gtk_menu_new(); 1812 tmp = gtk_menu_new();
1813 gtk_widget_show(tmp); 1813 gtk_widget_show(tmp);
1814 accel_group = gtk_accel_group_new(); 1814 accel_group = gtk_accel_group_new();
1815 gtk_object_set_data(GTK_OBJECT(tmp), "id", (gpointer)id); 1815 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_id", (gpointer)id);
1816 gtk_object_set_data(GTK_OBJECT(tmp), "accel", (gpointer)accel_group); 1816 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_accel", (gpointer)accel_group);
1817 DW_MUTEX_UNLOCK; 1817 DW_MUTEX_UNLOCK;
1818 return tmp; 1818 return tmp;
1819 } 1819 }
1820 1820
1821 /* 1821 /*
1833 DW_MUTEX_LOCK; 1833 DW_MUTEX_LOCK;
1834 tmp = gtk_menu_bar_new(); 1834 tmp = gtk_menu_bar_new();
1835 box = (GtkWidget *)gtk_object_get_user_data(GTK_OBJECT(location)); 1835 box = (GtkWidget *)gtk_object_get_user_data(GTK_OBJECT(location));
1836 gtk_widget_show(tmp); 1836 gtk_widget_show(tmp);
1837 accel_group = gtk_accel_group_new(); 1837 accel_group = gtk_accel_group_new();
1838 gtk_object_set_data(GTK_OBJECT(tmp), "accel", (gpointer)accel_group); 1838 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_accel", (gpointer)accel_group);
1839 1839
1840 if(box) 1840 if(box)
1841 gtk_box_pack_end(GTK_BOX(box), tmp, FALSE, FALSE, 0); 1841 gtk_box_pack_end(GTK_BOX(box), tmp, FALSE, FALSE, 0);
1842 1842
1843 DW_MUTEX_UNLOCK; 1843 DW_MUTEX_UNLOCK;
1911 } 1911 }
1912 1912
1913 DW_MUTEX_LOCK; 1913 DW_MUTEX_LOCK;
1914 accel = _removetilde(tempbuf, title); 1914 accel = _removetilde(tempbuf, title);
1915 1915
1916 accel_group = (GtkAccelGroup *)gtk_object_get_data(GTK_OBJECT(menu), "accel"); 1916 accel_group = (GtkAccelGroup *)gtk_object_get_data(GTK_OBJECT(menu), "_dw_accel");
1917 submenucount = (int)gtk_object_get_data(GTK_OBJECT(menu), "submenucount"); 1917 submenucount = (int)gtk_object_get_data(GTK_OBJECT(menu), "_dw_submenucount");
1918 1918
1919 if(strlen(tempbuf) == 0) 1919 if(strlen(tempbuf) == 0)
1920 tmphandle=gtk_menu_item_new(); 1920 tmphandle=gtk_menu_item_new();
1921 else 1921 else
1922 { 1922 {
1956 1956
1957 if(submenu) 1957 if(submenu)
1958 { 1958 {
1959 char tempbuf[100]; 1959 char tempbuf[100];
1960 1960
1961 sprintf(tempbuf, "submenu%d", submenucount); 1961 sprintf(tempbuf, "_dw_submenu%d", submenucount);
1962 submenucount++; 1962 submenucount++;
1963 gtk_menu_item_set_submenu(GTK_MENU_ITEM(tmphandle), submenu); 1963 gtk_menu_item_set_submenu(GTK_MENU_ITEM(tmphandle), submenu);
1964 gtk_object_set_data(GTK_OBJECT(menu), tempbuf, (gpointer)submenu); 1964 gtk_object_set_data(GTK_OBJECT(menu), tempbuf, (gpointer)submenu);
1965 gtk_object_set_data(GTK_OBJECT(menu), "submenucount", (gpointer)submenucount); 1965 gtk_object_set_data(GTK_OBJECT(menu), "_dw_submenucount", (gpointer)submenucount);
1966 } 1966 }
1967 1967
1968 if(GTK_IS_MENU_BAR(menu)) 1968 if(GTK_IS_MENU_BAR(menu))
1969 gtk_menu_bar_append(GTK_MENU_BAR(menu), tmphandle); 1969 gtk_menu_bar_append(GTK_MENU_BAR(menu), tmphandle);
1970 else 1970 else
1971 gtk_menu_append(GTK_MENU(menu), tmphandle); 1971 gtk_menu_append(GTK_MENU(menu), tmphandle);
1972 1972
1973 gtk_object_set_data(GTK_OBJECT(tmphandle), "id", (gpointer)id); 1973 gtk_object_set_data(GTK_OBJECT(tmphandle), "_dw_id", (gpointer)id);
1974 free(tempbuf); 1974 free(tempbuf);
1975 DW_MUTEX_UNLOCK; 1975 DW_MUTEX_UNLOCK;
1976 return tmphandle; 1976 return tmphandle;
1977 } 1977 }
1978 1978
1979 GtkWidget *_find_submenu_id(GtkWidget *start, char *name) 1979 GtkWidget *_find_submenu_id(GtkWidget *start, char *name)
1980 { 1980 {
1981 GtkWidget *tmp; 1981 GtkWidget *tmp;
1982 int z, submenucount = (int)gtk_object_get_data(GTK_OBJECT(start), "submenucount"); 1982 int z, submenucount = (int)gtk_object_get_data(GTK_OBJECT(start), "_dw_submenucount");
1983 1983
1984 if((tmp = gtk_object_get_data(GTK_OBJECT(start), name))) 1984 if((tmp = gtk_object_get_data(GTK_OBJECT(start), name)))
1985 return tmp; 1985 return tmp;
1986 1986
1987 for(z=0;z<submenucount;z++) 1987 for(z=0;z<submenucount;z++)
1988 { 1988 {
1989 char tempbuf[100]; 1989 char tempbuf[100];
1990 GtkWidget *submenu, *menuitem; 1990 GtkWidget *submenu, *menuitem;
1991 1991
1992 sprintf(tempbuf, "submenu%d", z); 1992 sprintf(tempbuf, "_dw_submenu%d", z);
1993 1993
1994 if((submenu = gtk_object_get_data(GTK_OBJECT(start), tempbuf))) 1994 if((submenu = gtk_object_get_data(GTK_OBJECT(start), tempbuf)))
1995 { 1995 {
1996 if((menuitem = _find_submenu_id(submenu, name))) 1996 if((menuitem = _find_submenu_id(submenu, name)))
1997 return menuitem; 1997 return menuitem;
2102 DW_MUTEX_LOCK; 2102 DW_MUTEX_LOCK;
2103 tmp = gtk_scrolled_window_new (NULL, NULL); 2103 tmp = gtk_scrolled_window_new (NULL, NULL);
2104 gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (tmp), 2104 gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (tmp),
2105 GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS); 2105 GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS);
2106 2106
2107 gtk_object_set_data(GTK_OBJECT(tmp), "multi", (gpointer)multi); 2107 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_multi", (gpointer)multi);
2108 gtk_object_set_data(GTK_OBJECT(tmp), "id", (gpointer)id); 2108 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_id", (gpointer)id);
2109 gtk_widget_show(tmp); 2109 gtk_widget_show(tmp);
2110 2110
2111 DW_MUTEX_UNLOCK; 2111 DW_MUTEX_UNLOCK;
2112 return tmp; 2112 return tmp;
2113 } 2113 }
2132 DW_MUTEX_LOCK; 2132 DW_MUTEX_LOCK;
2133 tmp = gtk_scrolled_window_new(NULL, NULL); 2133 tmp = gtk_scrolled_window_new(NULL, NULL);
2134 gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW (tmp), 2134 gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW (tmp),
2135 GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); 2135 GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
2136 2136
2137 gtk_object_set_data(GTK_OBJECT(tmp), "id", (gpointer)id); 2137 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_id", (gpointer)id);
2138 gtk_widget_show(tmp); 2138 gtk_widget_show(tmp);
2139 #if GTK_MAJOR_VERSION > 1 2139 #if GTK_MAJOR_VERSION > 1
2140 store = gtk_tree_store_new(4, G_TYPE_STRING, GDK_TYPE_PIXBUF, G_TYPE_POINTER, G_TYPE_POINTER); 2140 store = gtk_tree_store_new(4, G_TYPE_STRING, GDK_TYPE_PIXBUF, G_TYPE_POINTER, G_TYPE_POINTER);
2141 tree = gtk_tree_view_new_with_model(GTK_TREE_MODEL(store)); 2141 tree = gtk_tree_view_new_with_model(GTK_TREE_MODEL(store));
2142 gtk_object_set_data(GTK_OBJECT(tree), "_dw_tree_store", (gpointer)store); 2142 gtk_object_set_data(GTK_OBJECT(tree), "_dw_tree_store", (gpointer)store);
2194 tmp = gtk_label_new(text); 2194 tmp = gtk_label_new(text);
2195 2195
2196 /* Left and centered */ 2196 /* Left and centered */
2197 gtk_misc_set_alignment(GTK_MISC(tmp), 0.0f, 0.5f); 2197 gtk_misc_set_alignment(GTK_MISC(tmp), 0.0f, 0.5f);
2198 gtk_widget_show(tmp); 2198 gtk_widget_show(tmp);
2199 gtk_object_set_data(GTK_OBJECT(tmp), "id", (gpointer)id); 2199 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_id", (gpointer)id);
2200 gtk_misc_set_alignment(GTK_MISC(tmp), DW_LEFT, DW_LEFT); 2200 gtk_misc_set_alignment(GTK_MISC(tmp), DW_LEFT, DW_LEFT);
2201 DW_MUTEX_UNLOCK; 2201 DW_MUTEX_UNLOCK;
2202 return tmp; 2202 return tmp;
2203 } 2203 }
2204 2204
2221 gtk_widget_show(tmp); 2221 gtk_widget_show(tmp);
2222 gtk_widget_show(frame); 2222 gtk_widget_show(frame);
2223 2223
2224 /* Left and centered */ 2224 /* Left and centered */
2225 gtk_misc_set_alignment(GTK_MISC(tmp), 0.0f, 0.5f); 2225 gtk_misc_set_alignment(GTK_MISC(tmp), 0.0f, 0.5f);
2226 gtk_object_set_data(GTK_OBJECT(frame), "id", (gpointer)id); 2226 gtk_object_set_data(GTK_OBJECT(frame), "_dw_id", (gpointer)id);
2227 gtk_object_set_data(GTK_OBJECT(frame), "label", (gpointer)tmp); 2227 gtk_object_set_data(GTK_OBJECT(frame), "_dw_label", (gpointer)tmp);
2228 DW_MUTEX_UNLOCK; 2228 DW_MUTEX_UNLOCK;
2229 return frame; 2229 return frame;
2230 } 2230 }
2231 2231
2232 /* 2232 /*
2259 GTK_WIDGET_UNSET_FLAGS(scroller, GTK_CAN_FOCUS); 2259 GTK_WIDGET_UNSET_FLAGS(scroller, GTK_CAN_FOCUS);
2260 gtk_box_pack_start(GTK_BOX(tmpbox), tmp, TRUE, TRUE, 0); 2260 gtk_box_pack_start(GTK_BOX(tmpbox), tmp, TRUE, TRUE, 0);
2261 gtk_box_pack_start(GTK_BOX(tmpbox), scroller, FALSE, TRUE, 0); 2261 gtk_box_pack_start(GTK_BOX(tmpbox), scroller, FALSE, TRUE, 0);
2262 gtk_widget_show(scroller); 2262 gtk_widget_show(scroller);
2263 #endif 2263 #endif
2264 gtk_object_set_data(GTK_OBJECT(tmp), "id", (gpointer)id); 2264 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_id", (gpointer)id);
2265 gtk_object_set_user_data(GTK_OBJECT(tmpbox), (gpointer)tmp); 2265 gtk_object_set_user_data(GTK_OBJECT(tmpbox), (gpointer)tmp);
2266 gtk_widget_show(tmp); 2266 gtk_widget_show(tmp);
2267 gtk_widget_show(tmpbox); 2267 gtk_widget_show(tmpbox);
2268 DW_MUTEX_UNLOCK; 2268 DW_MUTEX_UNLOCK;
2269 return tmpbox; 2269 return tmpbox;
2284 tmp = gtk_entry_new(); 2284 tmp = gtk_entry_new();
2285 2285
2286 gtk_entry_set_text(GTK_ENTRY(tmp), text); 2286 gtk_entry_set_text(GTK_ENTRY(tmp), text);
2287 2287
2288 gtk_widget_show(tmp); 2288 gtk_widget_show(tmp);
2289 gtk_object_set_data(GTK_OBJECT(tmp), "id", (gpointer)id); 2289 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_id", (gpointer)id);
2290 2290
2291 DW_MUTEX_UNLOCK; 2291 DW_MUTEX_UNLOCK;
2292 return tmp; 2292 return tmp;
2293 } 2293 }
2294 2294
2308 2308
2309 gtk_entry_set_visibility(GTK_ENTRY(tmp), FALSE); 2309 gtk_entry_set_visibility(GTK_ENTRY(tmp), FALSE);
2310 gtk_entry_set_text(GTK_ENTRY(tmp), text); 2310 gtk_entry_set_text(GTK_ENTRY(tmp), text);
2311 2311
2312 gtk_widget_show(tmp); 2312 gtk_widget_show(tmp);
2313 gtk_object_set_data(GTK_OBJECT(tmp), "id", (gpointer)id); 2313 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_id", (gpointer)id);
2314 2314
2315 DW_MUTEX_UNLOCK; 2315 DW_MUTEX_UNLOCK;
2316 return tmp; 2316 return tmp;
2317 } 2317 }
2318 2318
2332 tmp = gtk_combo_new(); 2332 tmp = gtk_combo_new();
2333 gtk_entry_set_text(GTK_ENTRY(GTK_COMBO(tmp)->entry), text); 2333 gtk_entry_set_text(GTK_ENTRY(GTK_COMBO(tmp)->entry), text);
2334 gtk_combo_set_use_arrows(GTK_COMBO(tmp), TRUE); 2334 gtk_combo_set_use_arrows(GTK_COMBO(tmp), TRUE);
2335 gtk_object_set_user_data(GTK_OBJECT(tmp), NULL); 2335 gtk_object_set_user_data(GTK_OBJECT(tmp), NULL);
2336 gtk_widget_show(tmp); 2336 gtk_widget_show(tmp);
2337 gtk_object_set_data(GTK_OBJECT(tmp), "id", (gpointer)id); 2337 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_id", (gpointer)id);
2338 2338
2339 work->window = tmp; 2339 work->window = tmp;
2340 work->func = NULL; 2340 work->func = NULL;
2341 work->data = NULL; 2341 work->data = NULL;
2342 2342
2357 int _locked_by_me = FALSE; 2357 int _locked_by_me = FALSE;
2358 2358
2359 DW_MUTEX_LOCK; 2359 DW_MUTEX_LOCK;
2360 tmp = gtk_button_new_with_label(text); 2360 tmp = gtk_button_new_with_label(text);
2361 gtk_widget_show(tmp); 2361 gtk_widget_show(tmp);
2362 gtk_object_set_data(GTK_OBJECT(tmp), "id", (gpointer)id); 2362 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_id", (gpointer)id);
2363 DW_MUTEX_UNLOCK; 2363 DW_MUTEX_UNLOCK;
2364 return tmp; 2364 return tmp;
2365 } 2365 }
2366 2366
2367 /* 2367 /*
2391 { 2391 {
2392 tooltips = gtk_tooltips_new(); 2392 tooltips = gtk_tooltips_new();
2393 gtk_tooltips_set_tip(tooltips, tmp, text, NULL); 2393 gtk_tooltips_set_tip(tooltips, tmp, text, NULL);
2394 gtk_object_set_data(GTK_OBJECT(tmp), "tooltip", (gpointer)tooltips); 2394 gtk_object_set_data(GTK_OBJECT(tmp), "tooltip", (gpointer)tooltips);
2395 } 2395 }
2396 gtk_object_set_data(GTK_OBJECT(tmp), "id", (gpointer)id); 2396 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_id", (gpointer)id);
2397 DW_MUTEX_UNLOCK; 2397 DW_MUTEX_UNLOCK;
2398 return tmp; 2398 return tmp;
2399 } 2399 }
2400 2400
2401 /* 2401 /*
2428 { 2428 {
2429 tooltips = gtk_tooltips_new(); 2429 tooltips = gtk_tooltips_new();
2430 gtk_tooltips_set_tip(tooltips, tmp, text, NULL); 2430 gtk_tooltips_set_tip(tooltips, tmp, text, NULL);
2431 gtk_object_set_data(GTK_OBJECT(tmp), "tooltip", (gpointer)tooltips); 2431 gtk_object_set_data(GTK_OBJECT(tmp), "tooltip", (gpointer)tooltips);
2432 } 2432 }
2433 gtk_object_set_data(GTK_OBJECT(tmp), "id", (gpointer)id); 2433 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_id", (gpointer)id);
2434 DW_MUTEX_UNLOCK; 2434 DW_MUTEX_UNLOCK;
2435 return tmp; 2435 return tmp;
2436 } 2436 }
2437 2437
2438 /* 2438 /*
2451 adj = (GtkAdjustment *)gtk_adjustment_new (1.0, 0.0, 100.0, 1.0, 5.0, 0.0); 2451 adj = (GtkAdjustment *)gtk_adjustment_new (1.0, 0.0, 100.0, 1.0, 5.0, 0.0);
2452 tmp = gtk_spin_button_new (adj, 0, 0); 2452 tmp = gtk_spin_button_new (adj, 0, 0);
2453 gtk_spin_button_set_numeric(GTK_SPIN_BUTTON(tmp), TRUE); 2453 gtk_spin_button_set_numeric(GTK_SPIN_BUTTON(tmp), TRUE);
2454 gtk_spin_button_set_wrap(GTK_SPIN_BUTTON(tmp), TRUE); 2454 gtk_spin_button_set_wrap(GTK_SPIN_BUTTON(tmp), TRUE);
2455 gtk_widget_show(tmp); 2455 gtk_widget_show(tmp);
2456 gtk_object_set_data(GTK_OBJECT(tmp), "id", (gpointer)id); 2456 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_id", (gpointer)id);
2457 DW_MUTEX_UNLOCK; 2457 DW_MUTEX_UNLOCK;
2458 return tmp; 2458 return tmp;
2459 } 2459 }
2460 2460
2461 /* 2461 /*
2470 GtkWidget *tmp; 2470 GtkWidget *tmp;
2471 int _locked_by_me = FALSE; 2471 int _locked_by_me = FALSE;
2472 2472
2473 DW_MUTEX_LOCK; 2473 DW_MUTEX_LOCK;
2474 tmp = gtk_radio_button_new_with_label(NULL, text); 2474 tmp = gtk_radio_button_new_with_label(NULL, text);
2475 gtk_object_set_data(GTK_OBJECT(tmp), "id", (gpointer)id); 2475 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_id", (gpointer)id);
2476 gtk_widget_show(tmp); 2476 gtk_widget_show(tmp);
2477 2477
2478 DW_MUTEX_UNLOCK; 2478 DW_MUTEX_UNLOCK;
2479 return tmp; 2479 return tmp;
2480 } 2480 }
2499 else 2499 else
2500 tmp = gtk_hscale_new(adjustment); 2500 tmp = gtk_hscale_new(adjustment);
2501 gtk_widget_show(tmp); 2501 gtk_widget_show(tmp);
2502 gtk_scale_set_draw_value(GTK_SCALE(tmp), 0); 2502 gtk_scale_set_draw_value(GTK_SCALE(tmp), 0);
2503 gtk_scale_set_digits(GTK_SCALE(tmp), 0); 2503 gtk_scale_set_digits(GTK_SCALE(tmp), 0);
2504 gtk_object_set_data(GTK_OBJECT(tmp), "adjustment", (gpointer)adjustment); 2504 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_adjustment", (gpointer)adjustment);
2505 gtk_object_set_data(GTK_OBJECT(adjustment), "slider", (gpointer)tmp); 2505 gtk_object_set_data(GTK_OBJECT(adjustment), "_dw_slider", (gpointer)tmp);
2506 gtk_object_set_data(GTK_OBJECT(tmp), "id", (gpointer)id); 2506 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_id", (gpointer)id);
2507 DW_MUTEX_UNLOCK; 2507 DW_MUTEX_UNLOCK;
2508 return tmp; 2508 return tmp;
2509 } 2509 }
2510 2510
2511 /* 2511 /*
2527 tmp = gtk_vscrollbar_new(adjustment); 2527 tmp = gtk_vscrollbar_new(adjustment);
2528 else 2528 else
2529 tmp = gtk_hscrollbar_new(adjustment); 2529 tmp = gtk_hscrollbar_new(adjustment);
2530 GTK_WIDGET_UNSET_FLAGS(tmp, GTK_CAN_FOCUS); 2530 GTK_WIDGET_UNSET_FLAGS(tmp, GTK_CAN_FOCUS);
2531 gtk_widget_show(tmp); 2531 gtk_widget_show(tmp);
2532 gtk_object_set_data(GTK_OBJECT(tmp), "adjustment", (gpointer)adjustment); 2532 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_adjustment", (gpointer)adjustment);
2533 gtk_object_set_data(GTK_OBJECT(adjustment), "scrollbar", (gpointer)tmp); 2533 gtk_object_set_data(GTK_OBJECT(adjustment), "_dw_scrollbar", (gpointer)tmp);
2534 gtk_object_set_data(GTK_OBJECT(tmp), "id", (gpointer)id); 2534 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_id", (gpointer)id);
2535 DW_MUTEX_UNLOCK; 2535 DW_MUTEX_UNLOCK;
2536 return tmp; 2536 return tmp;
2537 } 2537 }
2538 2538
2539 /* 2539 /*
2547 int _locked_by_me = FALSE; 2547 int _locked_by_me = FALSE;
2548 2548
2549 DW_MUTEX_LOCK; 2549 DW_MUTEX_LOCK;
2550 tmp = gtk_progress_bar_new(); 2550 tmp = gtk_progress_bar_new();
2551 gtk_widget_show(tmp); 2551 gtk_widget_show(tmp);
2552 gtk_object_set_data(GTK_OBJECT(tmp), "id", (gpointer)id); 2552 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_id", (gpointer)id);
2553 DW_MUTEX_UNLOCK; 2553 DW_MUTEX_UNLOCK;
2554 return tmp; 2554 return tmp;
2555 } 2555 }
2556 2556
2557 /* 2557 /*
2566 int _locked_by_me = FALSE; 2566 int _locked_by_me = FALSE;
2567 2567
2568 DW_MUTEX_LOCK; 2568 DW_MUTEX_LOCK;
2569 tmp = gtk_check_button_new_with_label(text); 2569 tmp = gtk_check_button_new_with_label(text);
2570 gtk_widget_show(tmp); 2570 gtk_widget_show(tmp);
2571 gtk_object_set_data(GTK_OBJECT(tmp), "id", (gpointer)id); 2571 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_id", (gpointer)id);
2572 DW_MUTEX_UNLOCK; 2572 DW_MUTEX_UNLOCK;
2573 return tmp; 2573 return tmp;
2574 } 2574 }
2575 2575
2576 /* 2576 /*
2595 gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(tmp), 2595 gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(tmp),
2596 list); 2596 list);
2597 gtk_object_set_user_data(GTK_OBJECT(tmp), list); 2597 gtk_object_set_user_data(GTK_OBJECT(tmp), list);
2598 gtk_widget_show(list); 2598 gtk_widget_show(list);
2599 gtk_widget_show(tmp); 2599 gtk_widget_show(tmp);
2600 gtk_object_set_data(GTK_OBJECT(tmp), "id", (gpointer)id); 2600 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_id", (gpointer)id);
2601 2601
2602 DW_MUTEX_UNLOCK; 2602 DW_MUTEX_UNLOCK;
2603 return tmp; 2603 return tmp;
2604 } 2604 }
2605 2605
2717 gtk_entry_set_text(GTK_ENTRY(GTK_COMBO(handle)->entry), text); 2717 gtk_entry_set_text(GTK_ENTRY(GTK_COMBO(handle)->entry), text);
2718 else if(GTK_IS_LABEL(handle)) 2718 else if(GTK_IS_LABEL(handle))
2719 gtk_label_set_text(GTK_LABEL(handle), text); 2719 gtk_label_set_text(GTK_LABEL(handle), text);
2720 else if(GTK_IS_FRAME(handle)) 2720 else if(GTK_IS_FRAME(handle))
2721 { 2721 {
2722 GtkWidget *tmp = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(handle), "label"); 2722 GtkWidget *tmp = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(handle), "_dw_label");
2723 if(tmp && GTK_IS_LABEL(tmp)) 2723 if(tmp && GTK_IS_LABEL(tmp))
2724 gtk_label_set_text(GTK_LABEL(tmp), text); 2724 gtk_label_set_text(GTK_LABEL(tmp), text);
2725 } 2725 }
2726 DW_MUTEX_UNLOCK; 2726 DW_MUTEX_UNLOCK;
2727 } 2727 }
2802 } 2802 }
2803 while(list) 2803 while(list)
2804 { 2804 {
2805 if(GTK_IS_WIDGET(list->data)) 2805 if(GTK_IS_WIDGET(list->data))
2806 { 2806 {
2807 if(id == (int)gtk_object_get_data(GTK_OBJECT(list->data), "id")) 2807 if(id == (int)gtk_object_get_data(GTK_OBJECT(list->data), "_dw_id"))
2808 { 2808 {
2809 HWND ret = (HWND)list->data; 2809 HWND ret = (HWND)list->data;
2810 g_list_free(orig); 2810 g_list_free(orig);
2811 DW_MUTEX_UNLOCK; 2811 DW_MUTEX_UNLOCK;
2812 return ret; 2812 return ret;
2871 gtk_text_buffer_insert_at_cursor(tbuffer, impbuf, -1); 2871 gtk_text_buffer_insert_at_cursor(tbuffer, impbuf, -1);
2872 tmppoint = (startpoint > -1 ? startpoint : 0) + strlen(impbuf); 2872 tmppoint = (startpoint > -1 ? startpoint : 0) + strlen(impbuf);
2873 free(impbuf); 2873 free(impbuf);
2874 } 2874 }
2875 #else 2875 #else
2876 GdkFont *font = (GdkFont *)gtk_object_get_data(GTK_OBJECT(handle), "gdkfont"); 2876 GdkFont *font = (GdkFont *)gtk_object_get_data(GTK_OBJECT(handle), "_dw_gdkfont");
2877 2877
2878 if(tmp && GTK_IS_TEXT(tmp)) 2878 if(tmp && GTK_IS_TEXT(tmp))
2879 { 2879 {
2880 GdkColor *fore = (GdkColor *)gtk_object_get_data(GTK_OBJECT(handle), "foregdk"); 2880 GdkColor *fore = (GdkColor *)gtk_object_get_data(GTK_OBJECT(handle), "_dw_foregdk");
2881 GdkColor *back = (GdkColor *)gtk_object_get_data(GTK_OBJECT(handle), "backgdk"); 2881 GdkColor *back = (GdkColor *)gtk_object_get_data(GTK_OBJECT(handle), "_dw_backgdk");
2882 char *impbuf = malloc(strlen(buffer)+1); 2882 char *impbuf = malloc(strlen(buffer)+1);
2883 2883
2884 _strip_cr(impbuf, buffer); 2884 _strip_cr(impbuf, buffer);
2885 2885
2886 gtk_text_set_point(GTK_TEXT(tmp), startpoint < 0 ? 0 : startpoint); 2886 gtk_text_set_point(GTK_TEXT(tmp), startpoint < 0 ? 0 : startpoint);
3442 3442
3443 if(!handle) 3443 if(!handle)
3444 return 0; 3444 return 0;
3445 3445
3446 DW_MUTEX_LOCK; 3446 DW_MUTEX_LOCK;
3447 adjustment = (GtkAdjustment *)gtk_object_get_data(GTK_OBJECT(handle), "adjustment"); 3447 adjustment = (GtkAdjustment *)gtk_object_get_data(GTK_OBJECT(handle), "_dw_adjustment");
3448 if(adjustment) 3448 if(adjustment)
3449 { 3449 {
3450 int max = _round_value(adjustment->upper) - 1; 3450 int max = _round_value(adjustment->upper) - 1;
3451 int thisval = _round_value(adjustment->value); 3451 int thisval = _round_value(adjustment->value);
3452 3452
3472 3472
3473 if(!handle) 3473 if(!handle)
3474 return; 3474 return;
3475 3475
3476 DW_MUTEX_LOCK; 3476 DW_MUTEX_LOCK;
3477 adjustment = (GtkAdjustment *)gtk_object_get_data(GTK_OBJECT(handle), "adjustment"); 3477 adjustment = (GtkAdjustment *)gtk_object_get_data(GTK_OBJECT(handle), "_dw_adjustment");
3478 if(adjustment) 3478 if(adjustment)
3479 { 3479 {
3480 int max = _round_value(adjustment->upper) - 1; 3480 int max = _round_value(adjustment->upper) - 1;
3481 3481
3482 if(GTK_IS_VSCALE(handle)) 3482 if(GTK_IS_VSCALE(handle))
3499 3499
3500 if(!handle) 3500 if(!handle)
3501 return 0; 3501 return 0;
3502 3502
3503 DW_MUTEX_LOCK; 3503 DW_MUTEX_LOCK;
3504 adjustment = (GtkAdjustment *)gtk_object_get_data(GTK_OBJECT(handle), "adjustment"); 3504 adjustment = (GtkAdjustment *)gtk_object_get_data(GTK_OBJECT(handle), "_dw_adjustment");
3505 if(adjustment) 3505 if(adjustment)
3506 { 3506 {
3507 int max = _round_value(adjustment->upper) - 1; 3507 int max = _round_value(adjustment->upper) - 1;
3508 int thisval = _round_value(adjustment->value); 3508 int thisval = _round_value(adjustment->value);
3509 3509
3529 3529
3530 if(!handle) 3530 if(!handle)
3531 return; 3531 return;
3532 3532
3533 DW_MUTEX_LOCK; 3533 DW_MUTEX_LOCK;
3534 adjustment = (GtkAdjustment *)gtk_object_get_data(GTK_OBJECT(handle), "adjustment"); 3534 adjustment = (GtkAdjustment *)gtk_object_get_data(GTK_OBJECT(handle), "_dw_adjustment");
3535 if(adjustment) 3535 if(adjustment)
3536 gtk_adjustment_set_value(adjustment, (gfloat)position); 3536 gtk_adjustment_set_value(adjustment, (gfloat)position);
3537 DW_MUTEX_UNLOCK; 3537 DW_MUTEX_UNLOCK;
3538 } 3538 }
3539 3539
3551 3551
3552 if(!handle) 3552 if(!handle)
3553 return; 3553 return;
3554 3554
3555 DW_MUTEX_LOCK; 3555 DW_MUTEX_LOCK;
3556 adjustment = (GtkAdjustment *)gtk_object_get_data(GTK_OBJECT(handle), "adjustment"); 3556 adjustment = (GtkAdjustment *)gtk_object_get_data(GTK_OBJECT(handle), "_dw_adjustment");
3557 if(adjustment) 3557 if(adjustment)
3558 { 3558 {
3559 adjustment->upper = (gdouble)range; 3559 adjustment->upper = (gdouble)range;
3560 adjustment->page_increment = adjustment->page_size = (gdouble)visible; 3560 adjustment->page_increment = adjustment->page_size = (gdouble)visible;
3561 } 3561 }
3724 3724
3725 position++; 3725 position++;
3726 3726
3727 newitem = gtk_tree_item_new(); 3727 newitem = gtk_tree_item_new();
3728 label = gtk_label_new(title); 3728 label = gtk_label_new(title);
3729 gtk_object_set_data(GTK_OBJECT(newitem), "text", (gpointer)strdup(title)); 3729 gtk_object_set_data(GTK_OBJECT(newitem), "_dw_text", (gpointer)strdup(title));
3730 gtk_object_set_data(GTK_OBJECT(newitem), "itemdata", (gpointer)itemdata); 3730 gtk_object_set_data(GTK_OBJECT(newitem), "_dw_itemdata", (gpointer)itemdata);
3731 gtk_object_set_data(GTK_OBJECT(newitem), "tree", (gpointer)tree); 3731 gtk_object_set_data(GTK_OBJECT(newitem), "_dw_tree", (gpointer)tree);
3732 hbox = gtk_hbox_new(FALSE, 2); 3732 hbox = gtk_hbox_new(FALSE, 2);
3733 gtk_object_set_data(GTK_OBJECT(newitem), "hbox", (gpointer)hbox); 3733 gtk_object_set_data(GTK_OBJECT(newitem), "_dw_hbox", (gpointer)hbox);
3734 gdkpix = _find_pixmap(&gdkbmp, icon, hbox, NULL, NULL); 3734 gdkpix = _find_pixmap(&gdkbmp, icon, hbox, NULL, NULL);
3735 gtk_container_add(GTK_CONTAINER(newitem), hbox); 3735 gtk_container_add(GTK_CONTAINER(newitem), hbox);
3736 if(gdkpix) 3736 if(gdkpix)
3737 { 3737 {
3738 pixmap = gtk_pixmap_new(gdkpix, gdkbmp); 3738 pixmap = gtk_pixmap_new(gdkpix, gdkbmp);
3746 if(parent) 3746 if(parent)
3747 { 3747 {
3748 subtree = (GtkWidget *)gtk_object_get_user_data(GTK_OBJECT(parent)); 3748 subtree = (GtkWidget *)gtk_object_get_user_data(GTK_OBJECT(parent));
3749 if(!subtree) 3749 if(!subtree)
3750 { 3750 {
3751 void *thisfunc = (void *)gtk_object_get_data(GTK_OBJECT(tree), "select-child-func"); 3751 void *thisfunc = (void *)gtk_object_get_data(GTK_OBJECT(tree), "_dw_select_child_func");
3752 void *work = (void *)gtk_object_get_data(GTK_OBJECT(tree), "select-child-data"); 3752 void *work = (void *)gtk_object_get_data(GTK_OBJECT(tree), "_dw_select_child_data");
3753 3753
3754 subtree = gtk_tree_new(); 3754 subtree = gtk_tree_new();
3755 3755
3756 if(thisfunc && work) 3756 if(thisfunc && work)
3757 gtk_signal_connect(GTK_OBJECT(subtree), "select-child", GTK_SIGNAL_FUNC(thisfunc), work); 3757 gtk_signal_connect(GTK_OBJECT(subtree), "select-child", GTK_SIGNAL_FUNC(thisfunc), work);
3758 3758
3759 thisfunc = (void *)gtk_object_get_data(GTK_OBJECT(tree), "container-context-func"); 3759 thisfunc = (void *)gtk_object_get_data(GTK_OBJECT(tree), "_dw_container_context_func");
3760 work = (void *)gtk_object_get_data(GTK_OBJECT(tree), "container-context-data"); 3760 work = (void *)gtk_object_get_data(GTK_OBJECT(tree), "_dw_container_context_data");
3761 3761
3762 if(thisfunc && work) 3762 if(thisfunc && work)
3763 gtk_signal_connect(GTK_OBJECT(subtree), "button_press_event", GTK_SIGNAL_FUNC(thisfunc), work); 3763 gtk_signal_connect(GTK_OBJECT(subtree), "button_press_event", GTK_SIGNAL_FUNC(thisfunc), work);
3764 3764
3765 gtk_object_set_user_data(GTK_OBJECT(parent), subtree); 3765 gtk_object_set_user_data(GTK_OBJECT(parent), subtree);
3769 gtk_tree_item_collapse(GTK_TREE_ITEM(parent)); 3769 gtk_tree_item_collapse(GTK_TREE_ITEM(parent));
3770 gtk_widget_show(subtree); 3770 gtk_widget_show(subtree);
3771 gtk_tree_item_expand(GTK_TREE_ITEM(parent)); 3771 gtk_tree_item_expand(GTK_TREE_ITEM(parent));
3772 gtk_tree_item_collapse(GTK_TREE_ITEM(parent)); 3772 gtk_tree_item_collapse(GTK_TREE_ITEM(parent));
3773 } 3773 }
3774 gtk_object_set_data(GTK_OBJECT(newitem), "parenttree", (gpointer)subtree); 3774 gtk_object_set_data(GTK_OBJECT(newitem), "_dw_parenttree", (gpointer)subtree);
3775 gtk_tree_insert(GTK_TREE(subtree), newitem, position); 3775 gtk_tree_insert(GTK_TREE(subtree), newitem, position);
3776 } 3776 }
3777 else 3777 else
3778 { 3778 {
3779 gtk_object_set_data(GTK_OBJECT(newitem), "parenttree", (gpointer)tree); 3779 gtk_object_set_data(GTK_OBJECT(newitem), "_dw_parenttree", (gpointer)tree);
3780 gtk_tree_insert(GTK_TREE(tree), newitem, position); 3780 gtk_tree_insert(GTK_TREE(tree), newitem, position);
3781 } 3781 }
3782 gtk_tree_item_expand(GTK_TREE_ITEM(newitem)); 3782 gtk_tree_item_expand(GTK_TREE_ITEM(newitem));
3783 gtk_tree_item_collapse(GTK_TREE_ITEM(newitem)); 3783 gtk_tree_item_collapse(GTK_TREE_ITEM(newitem));
3784 gtk_widget_show(newitem); 3784 gtk_widget_show(newitem);
3843 DW_MUTEX_UNLOCK; 3843 DW_MUTEX_UNLOCK;
3844 return NULL; 3844 return NULL;
3845 } 3845 }
3846 item = gtk_tree_item_new(); 3846 item = gtk_tree_item_new();
3847 label = gtk_label_new(title); 3847 label = gtk_label_new(title);
3848 gtk_object_set_data(GTK_OBJECT(item), "text", (gpointer)strdup(title)); 3848 gtk_object_set_data(GTK_OBJECT(item), "_dw_text", (gpointer)strdup(title));
3849 gtk_object_set_data(GTK_OBJECT(item), "itemdata", (gpointer)itemdata); 3849 gtk_object_set_data(GTK_OBJECT(item), "_dw_itemdata", (gpointer)itemdata);
3850 gtk_object_set_data(GTK_OBJECT(item), "tree", (gpointer)tree); 3850 gtk_object_set_data(GTK_OBJECT(item), "_dw_tree", (gpointer)tree);
3851 hbox = gtk_hbox_new(FALSE, 2); 3851 hbox = gtk_hbox_new(FALSE, 2);
3852 gtk_object_set_data(GTK_OBJECT(item), "hbox", (gpointer)hbox); 3852 gtk_object_set_data(GTK_OBJECT(item), "_dw_hbox", (gpointer)hbox);
3853 gdkpix = _find_pixmap(&gdkbmp, icon, hbox, NULL, NULL); 3853 gdkpix = _find_pixmap(&gdkbmp, icon, hbox, NULL, NULL);
3854 gtk_container_add(GTK_CONTAINER(item), hbox); 3854 gtk_container_add(GTK_CONTAINER(item), hbox);
3855 if(gdkpix) 3855 if(gdkpix)
3856 { 3856 {
3857 pixmap = gtk_pixmap_new(gdkpix, gdkbmp); 3857 pixmap = gtk_pixmap_new(gdkpix, gdkbmp);
3865 if(parent) 3865 if(parent)
3866 { 3866 {
3867 subtree = (GtkWidget *)gtk_object_get_user_data(GTK_OBJECT(parent)); 3867 subtree = (GtkWidget *)gtk_object_get_user_data(GTK_OBJECT(parent));
3868 if(!subtree) 3868 if(!subtree)
3869 { 3869 {
3870 void *thisfunc = (void *)gtk_object_get_data(GTK_OBJECT(tree), "select-child-func"); 3870 void *thisfunc = (void *)gtk_object_get_data(GTK_OBJECT(tree), "_dw_select_child_func");
3871 void *work = (void *)gtk_object_get_data(GTK_OBJECT(tree), "select-child-data"); 3871 void *work = (void *)gtk_object_get_data(GTK_OBJECT(tree), "_dw_select_child_data");
3872 3872
3873 subtree = gtk_tree_new(); 3873 subtree = gtk_tree_new();
3874 3874
3875 if(thisfunc && work) 3875 if(thisfunc && work)
3876 gtk_signal_connect(GTK_OBJECT(subtree), "select-child", GTK_SIGNAL_FUNC(thisfunc), work); 3876 gtk_signal_connect(GTK_OBJECT(subtree), "select-child", GTK_SIGNAL_FUNC(thisfunc), work);
3877 3877
3878 thisfunc = (void *)gtk_object_get_data(GTK_OBJECT(tree), "container-context-func"); 3878 thisfunc = (void *)gtk_object_get_data(GTK_OBJECT(tree), "_dw_container_context_func");
3879 work = (void *)gtk_object_get_data(GTK_OBJECT(tree), "container-context-data"); 3879 work = (void *)gtk_object_get_data(GTK_OBJECT(tree), "_dw_container_context_data");
3880 3880
3881 if(thisfunc && work) 3881 if(thisfunc && work)
3882 gtk_signal_connect(GTK_OBJECT(subtree), "button_press_event", GTK_SIGNAL_FUNC(thisfunc), work); 3882 gtk_signal_connect(GTK_OBJECT(subtree), "button_press_event", GTK_SIGNAL_FUNC(thisfunc), work);
3883 3883
3884 gtk_object_set_user_data(GTK_OBJECT(parent), subtree); 3884 gtk_object_set_user_data(GTK_OBJECT(parent), subtree);
3888 gtk_tree_item_collapse(GTK_TREE_ITEM(parent)); 3888 gtk_tree_item_collapse(GTK_TREE_ITEM(parent));
3889 gtk_widget_show(subtree); 3889 gtk_widget_show(subtree);
3890 gtk_tree_item_expand(GTK_TREE_ITEM(parent)); 3890 gtk_tree_item_expand(GTK_TREE_ITEM(parent));
3891 gtk_tree_item_collapse(GTK_TREE_ITEM(parent)); 3891 gtk_tree_item_collapse(GTK_TREE_ITEM(parent));
3892 } 3892 }
3893 gtk_object_set_data(GTK_OBJECT(item), "parenttree", (gpointer)subtree); 3893 gtk_object_set_data(GTK_OBJECT(item), "_dw_parenttree", (gpointer)subtree);
3894 gtk_tree_append(GTK_TREE(subtree), item); 3894 gtk_tree_append(GTK_TREE(subtree), item);
3895 } 3895 }
3896 else 3896 else
3897 { 3897 {
3898 gtk_object_set_data(GTK_OBJECT(item), "parenttree", (gpointer)tree); 3898 gtk_object_set_data(GTK_OBJECT(item), "_dw_parenttree", (gpointer)tree);
3899 gtk_tree_append(GTK_TREE(tree), item); 3899 gtk_tree_append(GTK_TREE(tree), item);
3900 } 3900 }
3901 gtk_tree_item_expand(GTK_TREE_ITEM(item)); 3901 gtk_tree_item_expand(GTK_TREE_ITEM(item));
3902 gtk_tree_item_collapse(GTK_TREE_ITEM(item)); 3902 gtk_tree_item_collapse(GTK_TREE_ITEM(item));
3903 gtk_widget_show(item); 3903 gtk_widget_show(item);
3946 3946
3947 if(!handle || !item) 3947 if(!handle || !item)
3948 return; 3948 return;
3949 3949
3950 DW_MUTEX_LOCK; 3950 DW_MUTEX_LOCK;
3951 oldtext = (char *)gtk_object_get_data(GTK_OBJECT(item), "text"); 3951 oldtext = (char *)gtk_object_get_data(GTK_OBJECT(item), "_dw_text");
3952 if(oldtext) 3952 if(oldtext)
3953 free(oldtext); 3953 free(oldtext);
3954 label = gtk_label_new(title); 3954 label = gtk_label_new(title);
3955 gtk_object_set_data(GTK_OBJECT(item), "text", (gpointer)strdup(title)); 3955 gtk_object_set_data(GTK_OBJECT(item), "_dw_text", (gpointer)strdup(title));
3956 hbox = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(item), "hbox"); 3956 hbox = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(item), "_dw_hbox");
3957 gtk_widget_destroy(hbox); 3957 gtk_widget_destroy(hbox);
3958 hbox = gtk_hbox_new(FALSE, 2); 3958 hbox = gtk_hbox_new(FALSE, 2);
3959 gtk_object_set_data(GTK_OBJECT(item), "hbox", (gpointer)hbox); 3959 gtk_object_set_data(GTK_OBJECT(item), "_dw_hbox", (gpointer)hbox);
3960 gdkpix = _find_pixmap(&gdkbmp, icon, hbox, NULL, NULL); 3960 gdkpix = _find_pixmap(&gdkbmp, icon, hbox, NULL, NULL);
3961 gtk_container_add(GTK_CONTAINER(item), hbox); 3961 gtk_container_add(GTK_CONTAINER(item), hbox);
3962 if(gdkpix) 3962 if(gdkpix)
3963 { 3963 {
3964 pixmap = gtk_pixmap_new(gdkpix, gdkbmp); 3964 pixmap = gtk_pixmap_new(gdkpix, gdkbmp);
4000 4000
4001 if(!handle || !item) 4001 if(!handle || !item)
4002 return; 4002 return;
4003 4003
4004 DW_MUTEX_LOCK; 4004 DW_MUTEX_LOCK;
4005 gtk_object_set_data(GTK_OBJECT(item), "itemdata", (gpointer)itemdata); 4005 gtk_object_set_data(GTK_OBJECT(item), "_dw_itemdata", (gpointer)itemdata);
4006 DW_MUTEX_UNLOCK; 4006 DW_MUTEX_UNLOCK;
4007 #endif 4007 #endif
4008 } 4008 }
4009 4009
4010 /* 4010 /*
4035 4035
4036 if(!handle || !item) 4036 if(!handle || !item)
4037 return NULL; 4037 return NULL;
4038 4038
4039 DW_MUTEX_LOCK; 4039 DW_MUTEX_LOCK;
4040 ret = (void *)gtk_object_get_data(GTK_OBJECT(item), "itemdata"); 4040 ret = (void *)gtk_object_get_data(GTK_OBJECT(item), "_dw_itemdata");
4041 DW_MUTEX_UNLOCK; 4041 DW_MUTEX_UNLOCK;
4042 #endif 4042 #endif
4043 return ret; 4043 return ret;
4044 } 4044 }
4045 4045
4079 if(!handle || !item) 4079 if(!handle || !item)
4080 return; 4080 return;
4081 4081
4082 DW_MUTEX_LOCK; 4082 DW_MUTEX_LOCK;
4083 tree = (GtkWidget *)gtk_object_get_user_data(GTK_OBJECT(handle)); 4083 tree = (GtkWidget *)gtk_object_get_user_data(GTK_OBJECT(handle));
4084 lastselect = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(tree), "lastselect"); 4084 lastselect = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(tree), "_dw_lastselect");
4085 if(lastselect && GTK_IS_TREE_ITEM(lastselect)) 4085 if(lastselect && GTK_IS_TREE_ITEM(lastselect))
4086 gtk_tree_item_deselect(GTK_TREE_ITEM(lastselect)); 4086 gtk_tree_item_deselect(GTK_TREE_ITEM(lastselect));
4087 gtk_tree_item_select(GTK_TREE_ITEM(item)); 4087 gtk_tree_item_select(GTK_TREE_ITEM(item));
4088 gtk_object_set_data(GTK_OBJECT(tree), "lastselect", (gpointer)item); 4088 gtk_object_set_data(GTK_OBJECT(tree), "_dw_lastselect", (gpointer)item);
4089 DW_MUTEX_UNLOCK; 4089 DW_MUTEX_UNLOCK;
4090 #endif 4090 #endif
4091 } 4091 }
4092 4092
4093 #if GTK_MAJOR_VERSION > 1 4093 #if GTK_MAJOR_VERSION > 1
4153 if(!tree || !GTK_IS_TREE(tree)) 4153 if(!tree || !GTK_IS_TREE(tree))
4154 { 4154 {
4155 DW_MUTEX_UNLOCK; 4155 DW_MUTEX_UNLOCK;
4156 return; 4156 return;
4157 } 4157 }
4158 gtk_object_set_data(GTK_OBJECT(tree), "lastselect", NULL); 4158 gtk_object_set_data(GTK_OBJECT(tree), "_dw_lastselect", NULL);
4159 gtk_tree_clear_items(GTK_TREE(tree), 0, 1000000); 4159 gtk_tree_clear_items(GTK_TREE(tree), 0, 1000000);
4160 DW_MUTEX_UNLOCK; 4160 DW_MUTEX_UNLOCK;
4161 #endif 4161 #endif
4162 } 4162 }
4163 4163
4277 { 4277 {
4278 DW_MUTEX_UNLOCK; 4278 DW_MUTEX_UNLOCK;
4279 return; 4279 return;
4280 } 4280 }
4281 4281
4282 lastselect = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(tree), "lastselect"); 4282 lastselect = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(tree), "_dw_lastselect");
4283 4283
4284 parenttree = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(item), "parenttree"); 4284 parenttree = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(item), "_dw_parenttree");
4285 4285
4286 if(lastselect == item) 4286 if(lastselect == item)
4287 { 4287 {
4288 gtk_tree_item_deselect(GTK_TREE_ITEM(lastselect)); 4288 gtk_tree_item_deselect(GTK_TREE_ITEM(lastselect));
4289 gtk_object_set_data(GTK_OBJECT(tree), "lastselect", NULL); 4289 gtk_object_set_data(GTK_OBJECT(tree), "_dw_lastselect", NULL);
4290 } 4290 }
4291 4291
4292 if(parenttree && GTK_IS_WIDGET(parenttree)) 4292 if(parenttree && GTK_IS_WIDGET(parenttree))
4293 gtk_container_remove(GTK_CONTAINER(parenttree), item); 4293 gtk_container_remove(GTK_CONTAINER(parenttree), item);
4294 DW_MUTEX_UNLOCK; 4294 DW_MUTEX_UNLOCK;
4308 if(!clist) 4308 if(!clist)
4309 { 4309 {
4310 DW_MUTEX_UNLOCK; 4310 DW_MUTEX_UNLOCK;
4311 return FALSE; 4311 return FALSE;
4312 } 4312 }
4313 multi = (int)gtk_object_get_data(GTK_OBJECT(handle), "multi"); 4313 multi = (int)gtk_object_get_data(GTK_OBJECT(handle), "_dw_multi");
4314 gtk_object_set_data(GTK_OBJECT(handle), "multi", (gpointer)multi); 4314 gtk_object_set_data(GTK_OBJECT(handle), "_dw_multi", (gpointer)multi);
4315 4315
4316 gtk_clist_set_column_auto_resize(GTK_CLIST(clist), 0, TRUE); 4316 gtk_clist_set_column_auto_resize(GTK_CLIST(clist), 0, TRUE);
4317 if(multi) 4317 if(multi)
4318 gtk_clist_set_selection_mode(GTK_CLIST(clist), GTK_SELECTION_EXTENDED); 4318 gtk_clist_set_selection_mode(GTK_CLIST(clist), GTK_SELECTION_EXTENDED);
4319 else 4319 else
4320 gtk_clist_set_selection_mode(GTK_CLIST(clist), GTK_SELECTION_SINGLE); 4320 gtk_clist_set_selection_mode(GTK_CLIST(clist), GTK_SELECTION_SINGLE);
4321 gtk_container_add(GTK_CONTAINER(handle), clist); 4321 gtk_container_add(GTK_CONTAINER(handle), clist);
4322 gtk_object_set_user_data(GTK_OBJECT(handle), (gpointer)clist); 4322 gtk_object_set_user_data(GTK_OBJECT(handle), (gpointer)clist);
4323 gtk_widget_show(clist); 4323 gtk_widget_show(clist);
4324 gtk_object_set_data(GTK_OBJECT(clist), "colcount", (gpointer)count); 4324 gtk_object_set_data(GTK_OBJECT(clist), "_dw_colcount", (gpointer)count);
4325 4325
4326 if(extra) 4326 if(extra)
4327 gtk_clist_set_column_width(GTK_CLIST(clist), 1, 120); 4327 gtk_clist_set_column_width(GTK_CLIST(clist), 1, 120);
4328 4328
4329 for(z=0;z<count;z++) 4329 for(z=0;z<count;z++)
4543 } 4543 }
4544 4544
4545 /* Clears a CList selection and associated selection list */ 4545 /* Clears a CList selection and associated selection list */
4546 void _dw_unselect(GtkWidget *clist) 4546 void _dw_unselect(GtkWidget *clist)
4547 { 4547 {
4548 GList *list = (GList *)gtk_object_get_data(GTK_OBJECT(clist), "selectlist");
4549
4550 if(list)
4551 g_list_free(list);
4552
4553 gtk_object_set_data(GTK_OBJECT(clist), "selectlist", NULL);
4554
4555 _dw_unselecting = 1;
4556 gtk_clist_unselect_all(GTK_CLIST(clist)); 4548 gtk_clist_unselect_all(GTK_CLIST(clist));
4557 _dw_unselecting = 0;
4558 } 4549 }
4559 4550
4560 /* 4551 /*
4561 * Allocates memory used to populate a container. 4552 * Allocates memory used to populate a container.
4562 * Parameters: 4553 * Parameters:
4577 { 4568 {
4578 DW_MUTEX_UNLOCK; 4569 DW_MUTEX_UNLOCK;
4579 return NULL; 4570 return NULL;
4580 } 4571 }
4581 4572
4582 count = (int)gtk_object_get_data(GTK_OBJECT(clist), "colcount"); 4573 count = (int)gtk_object_get_data(GTK_OBJECT(clist), "_dw_colcount");
4583 4574
4584 if(!count) 4575 if(!count)
4585 { 4576 {
4586 DW_MUTEX_UNLOCK; 4577 DW_MUTEX_UNLOCK;
4587 return NULL; 4578 return NULL;
4588 } 4579 }
4589 4580
4590 blah = malloc(sizeof(char *) * count); 4581 blah = malloc(sizeof(char *) * count);
4591 memset(blah, 0, sizeof(char *) * count); 4582 memset(blah, 0, sizeof(char *) * count);
4592 4583
4593 fore = (GdkColor *)gtk_object_get_data(GTK_OBJECT(clist), "foregdk"); 4584 fore = (GdkColor *)gtk_object_get_data(GTK_OBJECT(clist), "_dw_foregdk");
4594 back = (GdkColor *)gtk_object_get_data(GTK_OBJECT(clist), "backgdk"); 4585 back = (GdkColor *)gtk_object_get_data(GTK_OBJECT(clist), "_dw_backgdk");
4595 gtk_clist_freeze(GTK_CLIST(clist)); 4586 gtk_clist_freeze(GTK_CLIST(clist));
4596 for(z=0;z<rowcount;z++) 4587 for(z=0;z<rowcount;z++)
4597 { 4588 {
4598 gtk_clist_append(GTK_CLIST(clist), blah); 4589 gtk_clist_append(GTK_CLIST(clist), blah);
4599 if(fore) 4590 if(fore)
4600 gtk_clist_set_foreground(GTK_CLIST(clist), z, fore); 4591 gtk_clist_set_foreground(GTK_CLIST(clist), z, fore);
4601 if(back) 4592 if(back)
4602 gtk_clist_set_background(GTK_CLIST(clist), z, back); 4593 gtk_clist_set_background(GTK_CLIST(clist), z, back);
4603 } 4594 }
4604 gtk_object_set_data(GTK_OBJECT(clist), "rowcount", (gpointer)rowcount); 4595 gtk_object_set_data(GTK_OBJECT(clist), "_dw_rowcount", (gpointer)rowcount);
4605 free(blah); 4596 free(blah);
4606 DW_MUTEX_UNLOCK; 4597 DW_MUTEX_UNLOCK;
4607 return (void *)handle; 4598 return (void *)handle;
4608 } 4599 }
4609 4600
4802 clist = (GtkWidget*)gtk_object_get_user_data(GTK_OBJECT(handle)); 4793 clist = (GtkWidget*)gtk_object_get_user_data(GTK_OBJECT(handle));
4803 if(clist && GTK_IS_CLIST(clist)) 4794 if(clist && GTK_IS_CLIST(clist))
4804 { 4795 {
4805 int rows, z; 4796 int rows, z;
4806 4797
4807 rows = (int)gtk_object_get_data(GTK_OBJECT(clist), "rowcount"); 4798 rows = (int)gtk_object_get_data(GTK_OBJECT(clist), "_dw_rowcount");
4808 4799
4809 _dw_unselect(clist); 4800 _dw_unselect(clist);
4810 4801
4811 for(z=0;z<rowcount;z++) 4802 for(z=0;z<rowcount;z++)
4812 gtk_clist_remove(GTK_CLIST(clist), 0); 4803 gtk_clist_remove(GTK_CLIST(clist), 0);
4814 if(rows - rowcount < 0) 4805 if(rows - rowcount < 0)
4815 rows = 0; 4806 rows = 0;
4816 else 4807 else
4817 rows -= rowcount; 4808 rows -= rowcount;
4818 4809
4819 gtk_object_set_data(GTK_OBJECT(clist), "rowcount", (gpointer)rows); 4810 gtk_object_set_data(GTK_OBJECT(clist), "_dw_rowcount", (gpointer)rows);
4820 } 4811 }
4821 DW_MUTEX_UNLOCK; 4812 DW_MUTEX_UNLOCK;
4822 } 4813 }
4823 4814
4824 /* 4815 /*
4836 clist = (GtkWidget*)gtk_object_get_user_data(GTK_OBJECT(handle)); 4827 clist = (GtkWidget*)gtk_object_get_user_data(GTK_OBJECT(handle));
4837 if(clist && GTK_IS_CLIST(clist)) 4828 if(clist && GTK_IS_CLIST(clist))
4838 { 4829 {
4839 _dw_unselect(clist); 4830 _dw_unselect(clist);
4840 gtk_clist_clear(GTK_CLIST(clist)); 4831 gtk_clist_clear(GTK_CLIST(clist));
4841 gtk_object_set_data(GTK_OBJECT(clist), "rowcount", (gpointer)0); 4832 gtk_object_set_data(GTK_OBJECT(clist), "_dw_rowcount", (gpointer)0);
4842 } 4833 }
4843 DW_MUTEX_UNLOCK; 4834 DW_MUTEX_UNLOCK;
4844 } 4835 }
4845 4836
4846 /* 4837 /*
4908 { 4899 {
4909 list = GTK_CLIST(clist)->selection; 4900 list = GTK_CLIST(clist)->selection;
4910 4901
4911 if(list) 4902 if(list)
4912 { 4903 {
4913 gtk_object_set_data(GTK_OBJECT(clist), "querypos", (gpointer)1); 4904 gtk_object_set_data(GTK_OBJECT(clist), "_dw_querypos", (gpointer)1);
4914 retval = (char *)gtk_clist_get_row_data(GTK_CLIST(clist), GPOINTER_TO_UINT(list->data)); 4905 retval = (char *)gtk_clist_get_row_data(GTK_CLIST(clist), GPOINTER_TO_UINT(list->data));
4915 } 4906 }
4916 } 4907 }
4917 else 4908 else
4918 { 4909 {
4919 retval = (char *)gtk_clist_get_row_data(GTK_CLIST(clist), 0); 4910 retval = (char *)gtk_clist_get_row_data(GTK_CLIST(clist), 0);
4920 gtk_object_set_data(GTK_OBJECT(clist), "querypos", (gpointer)1); 4911 gtk_object_set_data(GTK_OBJECT(clist), "_dw_querypos", (gpointer)1);
4921 } 4912 }
4922 DW_MUTEX_UNLOCK; 4913 DW_MUTEX_UNLOCK;
4923 return retval; 4914 return retval;
4924 } 4915 }
4925 4916
4952 { 4943 {
4953 list = GTK_CLIST(clist)->selection; 4944 list = GTK_CLIST(clist)->selection;
4954 4945
4955 if(list) 4946 if(list)
4956 { 4947 {
4957 int counter = 0, pos = (int)gtk_object_get_data(GTK_OBJECT(clist), "querypos"); 4948 int counter = 0, pos = (int)gtk_object_get_data(GTK_OBJECT(clist), "_dw_querypos");
4958 gtk_object_set_data(GTK_OBJECT(clist), "querypos", (gpointer)pos+1); 4949 gtk_object_set_data(GTK_OBJECT(clist), "_dw_querypos", (gpointer)pos+1);
4959 4950
4960 while(list && counter < pos) 4951 while(list && counter < pos)
4961 { 4952 {
4962 list = list->next; 4953 list = list->next;
4963 counter++; 4954 counter++;
4967 retval = (char *)gtk_clist_get_row_data(GTK_CLIST(clist), GPOINTER_TO_UINT(list->data)); 4958 retval = (char *)gtk_clist_get_row_data(GTK_CLIST(clist), GPOINTER_TO_UINT(list->data));
4968 } 4959 }
4969 } 4960 }
4970 else 4961 else
4971 { 4962 {
4972 int pos = (int)gtk_object_get_data(GTK_OBJECT(clist), "querypos"); 4963 int pos = (int)gtk_object_get_data(GTK_OBJECT(clist), "_dw_querypos");
4973 4964
4974 retval = (char *)gtk_clist_get_row_data(GTK_CLIST(clist), pos); 4965 retval = (char *)gtk_clist_get_row_data(GTK_CLIST(clist), pos);
4975 gtk_object_set_data(GTK_OBJECT(clist), "querypos", (gpointer)pos+1); 4966 gtk_object_set_data(GTK_OBJECT(clist), "_dw_querypos", (gpointer)pos+1);
4976 } 4967 }
4977 DW_MUTEX_UNLOCK; 4968 DW_MUTEX_UNLOCK;
4978 return retval; 4969 return retval;
4979 } 4970 }
4980 4971
4997 if(!clist) 4988 if(!clist)
4998 { 4989 {
4999 DW_MUTEX_UNLOCK; 4990 DW_MUTEX_UNLOCK;
5000 return; 4991 return;
5001 } 4992 }
5002 rowcount = (int)gtk_object_get_data(GTK_OBJECT(clist), "rowcount"); 4993 rowcount = (int)gtk_object_get_data(GTK_OBJECT(clist), "_dw_rowcount");
5003 4994
5004 for(z=0;z<rowcount;z++) 4995 for(z=0;z<rowcount;z++)
5005 { 4996 {
5006 rowdata = gtk_clist_get_row_data(GTK_CLIST(clist), z); 4997 rowdata = gtk_clist_get_row_data(GTK_CLIST(clist), z);
5007 if(rowdata == text) 4998 if(rowdata == text)
5042 if(!clist) 5033 if(!clist)
5043 { 5034 {
5044 DW_MUTEX_UNLOCK; 5035 DW_MUTEX_UNLOCK;
5045 return; 5036 return;
5046 } 5037 }
5047 rowcount = (int)gtk_object_get_data(GTK_OBJECT(clist), "rowcount"); 5038 rowcount = (int)gtk_object_get_data(GTK_OBJECT(clist), "_dw_rowcount");
5048 5039
5049 for(z=0;z<rowcount;z++) 5040 for(z=0;z<rowcount;z++)
5050 { 5041 {
5051 rowdata = gtk_clist_get_row_data(GTK_CLIST(clist), z); 5042 rowdata = gtk_clist_get_row_data(GTK_CLIST(clist), z);
5052 if(rowdata == text) 5043 if(rowdata == text)
5055 5046
5056 gtk_clist_remove(GTK_CLIST(clist), z); 5047 gtk_clist_remove(GTK_CLIST(clist), z);
5057 5048
5058 rowcount--; 5049 rowcount--;
5059 5050
5060 gtk_object_set_data(GTK_OBJECT(clist), "rowcount", (gpointer)rowcount); 5051 gtk_object_set_data(GTK_OBJECT(clist), "_dw_rowcount", (gpointer)rowcount);
5061 DW_MUTEX_UNLOCK; 5052 DW_MUTEX_UNLOCK;
5062 return; 5053 return;
5063 } 5054 }
5064 } 5055 }
5065 5056
5083 if(!clist) 5074 if(!clist)
5084 { 5075 {
5085 DW_MUTEX_UNLOCK; 5076 DW_MUTEX_UNLOCK;
5086 return; 5077 return;
5087 } 5078 }
5088 colcount = (int)gtk_object_get_data(GTK_OBJECT(clist), "colcount"); 5079 colcount = (int)gtk_object_get_data(GTK_OBJECT(clist), "_dw_colcount");
5089 for(z=0;z<colcount;z++) 5080 for(z=0;z<colcount;z++)
5090 { 5081 {
5091 int width = gtk_clist_optimal_column_width(GTK_CLIST(clist), z); 5082 int width = gtk_clist_optimal_column_width(GTK_CLIST(clist), z);
5092 gtk_clist_set_column_width(GTK_CLIST(clist), z, width); 5083 gtk_clist_set_column_width(GTK_CLIST(clist), z, width);
5093 } 5084 }
5112 | GDK_LEAVE_NOTIFY_MASK 5103 | GDK_LEAVE_NOTIFY_MASK
5113 | GDK_BUTTON_PRESS_MASK 5104 | GDK_BUTTON_PRESS_MASK
5114 | GDK_KEY_PRESS_MASK 5105 | GDK_KEY_PRESS_MASK
5115 | GDK_POINTER_MOTION_MASK 5106 | GDK_POINTER_MOTION_MASK
5116 | GDK_POINTER_MOTION_HINT_MASK); 5107 | GDK_POINTER_MOTION_HINT_MASK);
5117 gtk_object_set_data(GTK_OBJECT(tmp), "id", (gpointer)id); 5108 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_id", (gpointer)id);
5118 GTK_WIDGET_SET_FLAGS(tmp, GTK_CAN_FOCUS); 5109 GTK_WIDGET_SET_FLAGS(tmp, GTK_CAN_FOCUS);
5119 gtk_widget_show(tmp); 5110 gtk_widget_show(tmp);
5120 DW_MUTEX_UNLOCK; 5111 DW_MUTEX_UNLOCK;
5121 return tmp; 5112 return tmp;
5122 } 5113 }
5286 return; 5277 return;
5287 5278
5288 DW_MUTEX_LOCK; 5279 DW_MUTEX_LOCK;
5289 if(handle) 5280 if(handle)
5290 { 5281 {
5291 fontname = (char *)gtk_object_get_data(GTK_OBJECT(handle), "fontname"); 5282 fontname = (char *)gtk_object_get_data(GTK_OBJECT(handle), "_dw_fontname");
5292 gc = _set_colors(handle->window); 5283 gc = _set_colors(handle->window);
5293 } 5284 }
5294 else if(pixmap) 5285 else if(pixmap)
5295 { 5286 {
5296 fontname = (char *)gtk_object_get_data(GTK_OBJECT(pixmap->handle), "fontname"); 5287 fontname = (char *)gtk_object_get_data(GTK_OBJECT(pixmap->handle), "_dw_fontname");
5297 gc = _set_colors(pixmap->pixmap); 5288 gc = _set_colors(pixmap->pixmap);
5298 } 5289 }
5299 if(gc) 5290 if(gc)
5300 { 5291 {
5301 #if GTK_MAJOR_VERSION > 1 5292 #if GTK_MAJOR_VERSION > 1
5360 if(!text) 5351 if(!text)
5361 return; 5352 return;
5362 5353
5363 DW_MUTEX_LOCK; 5354 DW_MUTEX_LOCK;
5364 if(handle) 5355 if(handle)
5365 fontname = (char *)gtk_object_get_data(GTK_OBJECT(handle), "fontname"); 5356 fontname = (char *)gtk_object_get_data(GTK_OBJECT(handle), "_dw_fontname");
5366 else if(pixmap) 5357 else if(pixmap)
5367 fontname = (char *)gtk_object_get_data(GTK_OBJECT(pixmap->handle), "fontname"); 5358 fontname = (char *)gtk_object_get_data(GTK_OBJECT(pixmap->handle), "_dw_fontname");
5368 5359
5369 #if GTK_MAJOR_VERSION > 1 5360 #if GTK_MAJOR_VERSION > 1
5370 font = pango_font_description_from_string(fontname ? fontname : "monospace 10"); 5361 font = pango_font_description_from_string(fontname ? fontname : "monospace 10");
5371 if(font) 5362 if(font)
5372 { 5363 {
5962 if(!box) 5953 if(!box)
5963 return; 5954 return;
5964 5955
5965 DW_MUTEX_LOCK; 5956 DW_MUTEX_LOCK;
5966 5957
5967 if((tmp = gtk_object_get_data(GTK_OBJECT(box), "boxhandle"))) 5958 if((tmp = gtk_object_get_data(GTK_OBJECT(box), "_dw_boxhandle")))
5968 box = tmp; 5959 box = tmp;
5969 5960
5970 if(!item) 5961 if(!item)
5971 { 5962 {
5972 item = gtk_label_new(""); 5963 item = gtk_label_new("");
5973 gtk_widget_show(item); 5964 gtk_widget_show(item);
5974 } 5965 }
5975 5966
5976 if(GTK_IS_TABLE(box)) 5967 if(GTK_IS_TABLE(box))
5977 { 5968 {
5978 int boxcount = (int)gtk_object_get_data(GTK_OBJECT(box), "boxcount"); 5969 int boxcount = (int)gtk_object_get_data(GTK_OBJECT(box), "_dw_boxcount");
5979 int boxtype = (int)gtk_object_get_data(GTK_OBJECT(box), "boxtype"); 5970 int boxtype = (int)gtk_object_get_data(GTK_OBJECT(box), "_dw_boxtype");
5980 5971
5981 /* If the item being packed is a box, then we use it's padding 5972 /* If the item being packed is a box, then we use it's padding
5982 * instead of the padding specified on the pack line, this is 5973 * instead of the padding specified on the pack line, this is
5983 * due to a bug in the OS/2 and Win32 renderer and a limitation 5974 * due to a bug in the OS/2 and Win32 renderer and a limitation
5984 * of the GtkTable class. 5975 * of the GtkTable class.
5985 */ 5976 */
5986 if(GTK_IS_TABLE(item)) 5977 if(GTK_IS_TABLE(item))
5987 { 5978 {
5988 GtkWidget *eventbox = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(item), "eventbox"); 5979 GtkWidget *eventbox = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(item), "_dw_eventbox");
5989 5980
5990 if(eventbox) 5981 if(eventbox)
5991 { 5982 {
5992 gtk_container_add(GTK_CONTAINER(eventbox), item); 5983 gtk_container_add(GTK_CONTAINER(eventbox), item);
5993 pad = (int)gtk_object_get_data(GTK_OBJECT(item), "boxpad"); 5984 pad = (int)gtk_object_get_data(GTK_OBJECT(item), "_dw_boxpad");
5994 item = eventbox; 5985 item = eventbox;
5995 } 5986 }
5996 } 5987 }
5997 5988
5998 if(boxtype == DW_VERT) 5989 if(boxtype == DW_VERT)
5999 gtk_table_resize(GTK_TABLE(box), boxcount + 1, 1); 5990 gtk_table_resize(GTK_TABLE(box), boxcount + 1, 1);
6000 else 5991 else
6001 gtk_table_resize(GTK_TABLE(box), 1, boxcount + 1); 5992 gtk_table_resize(GTK_TABLE(box), 1, boxcount + 1);
6002 5993
6003 gtk_table_attach(GTK_TABLE(box), item, 0, 1, 0, 1, hsize ? DW_EXPAND : 0, vsize ? DW_EXPAND : 0, pad, pad); 5994 gtk_table_attach(GTK_TABLE(box), item, 0, 1, 0, 1, hsize ? DW_EXPAND : 0, vsize ? DW_EXPAND : 0, pad, pad);
6004 gtk_object_set_data(GTK_OBJECT(box), "boxcount", (gpointer)boxcount + 1); 5995 gtk_object_set_data(GTK_OBJECT(box), "_dw_boxcount", (gpointer)boxcount + 1);
6005 gtk_widget_set_usize(item, width, height); 5996 gtk_widget_set_usize(item, width, height);
6006 if(GTK_IS_RADIO_BUTTON(item)) 5997 if(GTK_IS_RADIO_BUTTON(item))
6007 { 5998 {
6008 GSList *group; 5999 GSList *group;
6009 GtkWidget *groupstart = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(box), "group"); 6000 GtkWidget *groupstart = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(box), "_dw_group");
6010 6001
6011 if(groupstart) 6002 if(groupstart)
6012 { 6003 {
6013 group = gtk_radio_button_group(GTK_RADIO_BUTTON(groupstart)); 6004 group = gtk_radio_button_group(GTK_RADIO_BUTTON(groupstart));
6014 gtk_radio_button_set_group(GTK_RADIO_BUTTON(item), group); 6005 gtk_radio_button_set_group(GTK_RADIO_BUTTON(item), group);
6015 } 6006 }
6016 else 6007 else
6017 gtk_object_set_data(GTK_OBJECT(box), "group", (gpointer)item); 6008 gtk_object_set_data(GTK_OBJECT(box), "_dw_group", (gpointer)item);
6018 } 6009 }
6019 } 6010 }
6020 else 6011 else
6021 { 6012 {
6022 GtkWidget *vbox = gtk_vbox_new(FALSE, 0); 6013 GtkWidget *vbox = gtk_vbox_new(FALSE, 0);
6023 6014
6024 if(GTK_IS_TABLE(item)) 6015 if(GTK_IS_TABLE(item))
6025 { 6016 {
6026 GtkWidget *eventbox = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(item), "eventbox"); 6017 GtkWidget *eventbox = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(item), "_dw_eventbox");
6027 6018
6028 if(eventbox) 6019 if(eventbox)
6029 { 6020 {
6030 gtk_container_add(GTK_CONTAINER(eventbox), item); 6021 gtk_container_add(GTK_CONTAINER(eventbox), item);
6031 pad = (int)gtk_object_get_data(GTK_OBJECT(item), "boxpad"); 6022 pad = (int)gtk_object_get_data(GTK_OBJECT(item), "_dw_boxpad");
6032 item = eventbox; 6023 item = eventbox;
6033 } 6024 }
6034 } 6025 }
6035 6026
6036 gtk_container_border_width(GTK_CONTAINER(box), pad); 6027 gtk_container_border_width(GTK_CONTAINER(box), pad);
6262 int z; 6253 int z;
6263 int _locked_by_me = FALSE; 6254 int _locked_by_me = FALSE;
6264 GtkWidget **pagearray; 6255 GtkWidget **pagearray;
6265 6256
6266 DW_MUTEX_LOCK; 6257 DW_MUTEX_LOCK;
6267 pagearray = (GtkWidget **)gtk_object_get_data(GTK_OBJECT(handle), "pagearray"); 6258 pagearray = (GtkWidget **)gtk_object_get_data(GTK_OBJECT(handle), "_dw_pagearray");
6268 6259
6269 if(pagearray) 6260 if(pagearray)
6270 { 6261 {
6271 for(z=0;z<256;z++) 6262 for(z=0;z<256;z++)
6272 { 6263 {
6276 int num = z; 6267 int num = z;
6277 6268
6278 if(front) 6269 if(front)
6279 num |= 1 << 16; 6270 num |= 1 << 16;
6280 6271
6281 sprintf(text, "page%d", z); 6272 sprintf(text, "_dw_page%d", z);
6282 /* Save the real id and the creation flags */ 6273 /* Save the real id and the creation flags */
6283 gtk_object_set_data(GTK_OBJECT(handle), text, (gpointer)num); 6274 gtk_object_set_data(GTK_OBJECT(handle), text, (gpointer)num);
6284 DW_MUTEX_UNLOCK; 6275 DW_MUTEX_UNLOCK;
6285 return z; 6276 return z;
6286 } 6277 }
6294 6285
6295 /* Return the physical page id from the logical page id */ 6286 /* Return the physical page id from the logical page id */
6296 int _get_physical_page(HWND handle, unsigned long pageid) 6287 int _get_physical_page(HWND handle, unsigned long pageid)
6297 { 6288 {
6298 int z; 6289 int z;
6299 GtkWidget *thispage, **pagearray = gtk_object_get_data(GTK_OBJECT(handle), "pagearray"); 6290 GtkWidget *thispage, **pagearray = gtk_object_get_data(GTK_OBJECT(handle), "_dw_pagearray");
6300 6291
6301 if(pagearray) 6292 if(pagearray)
6302 { 6293 {
6303 for(z=0;z<256;z++) 6294 for(z=0;z<256;z++)
6304 { 6295 {
6326 DW_MUTEX_LOCK; 6317 DW_MUTEX_LOCK;
6327 realpage = _get_physical_page(handle, pageid); 6318 realpage = _get_physical_page(handle, pageid);
6328 if(realpage > -1 && realpage < 256) 6319 if(realpage > -1 && realpage < 256)
6329 { 6320 {
6330 gtk_notebook_remove_page(GTK_NOTEBOOK(handle), realpage); 6321 gtk_notebook_remove_page(GTK_NOTEBOOK(handle), realpage);
6331 if((pagearray = gtk_object_get_data(GTK_OBJECT(handle), "pagearray"))) 6322 if((pagearray = gtk_object_get_data(GTK_OBJECT(handle), "_dw_pagearray")))
6332 pagearray[pageid] = NULL; 6323 pagearray[pageid] = NULL;
6333 } 6324 }
6334 DW_MUTEX_UNLOCK; 6325 DW_MUTEX_UNLOCK;
6335 } 6326 }
6336 6327
6386 if(realpage < 0 || realpage > 255) 6377 if(realpage < 0 || realpage > 255)
6387 { 6378 {
6388 char ptext[100]; 6379 char ptext[100];
6389 int num; 6380 int num;
6390 6381
6391 sprintf(ptext, "page%d", (int)pageid); 6382 sprintf(ptext, "_dw_page%d", (int)pageid);
6392 num = (int)gtk_object_get_data(GTK_OBJECT(handle), ptext); 6383 num = (int)gtk_object_get_data(GTK_OBJECT(handle), ptext);
6393 realpage = 0xFF & num; 6384 realpage = 0xFF & num;
6394 } 6385 }
6395 6386
6396 if(realpage > -1 && realpage < 256) 6387 if(realpage > -1 && realpage < 256)
6427 gchar *text = NULL; 6418 gchar *text = NULL;
6428 int num, z, realpage = -1, pad, _locked_by_me = FALSE; 6419 int num, z, realpage = -1, pad, _locked_by_me = FALSE;
6429 char ptext[100]; 6420 char ptext[100];
6430 6421
6431 DW_MUTEX_LOCK; 6422 DW_MUTEX_LOCK;
6432 sprintf(ptext, "page%d", (int)pageid); 6423 sprintf(ptext, "_dw_page%d", (int)pageid);
6433 num = (int)gtk_object_get_data(GTK_OBJECT(handle), ptext); 6424 num = (int)gtk_object_get_data(GTK_OBJECT(handle), ptext);
6434 gtk_object_set_data(GTK_OBJECT(handle), ptext, NULL); 6425 gtk_object_set_data(GTK_OBJECT(handle), ptext, NULL);
6435 pagearray = (GtkWidget **)gtk_object_get_data(GTK_OBJECT(handle), "pagearray"); 6426 pagearray = (GtkWidget **)gtk_object_get_data(GTK_OBJECT(handle), "_dw_pagearray");
6436 6427
6437 if(!pagearray) 6428 if(!pagearray)
6438 { 6429 {
6439 DW_MUTEX_UNLOCK; 6430 DW_MUTEX_UNLOCK;
6440 return; 6431 return;
6462 6453
6463 label = gtk_label_new(text ? text : ""); 6454 label = gtk_label_new(text ? text : "");
6464 6455
6465 if(GTK_IS_TABLE(page)) 6456 if(GTK_IS_TABLE(page))
6466 { 6457 {
6467 pad = (int)gtk_object_get_data(GTK_OBJECT(page), "boxpad"); 6458 pad = (int)gtk_object_get_data(GTK_OBJECT(page), "_dw_boxpad");
6468 gtk_container_border_width(GTK_CONTAINER(page), pad); 6459 gtk_container_border_width(GTK_CONTAINER(page), pad);
6469 } 6460 }
6470 6461
6471 if(realpage != -1) 6462 if(realpage != -1)
6472 gtk_notebook_insert_page(GTK_NOTEBOOK(handle), page, label, realpage); 6463 gtk_notebook_insert_page(GTK_NOTEBOOK(handle), page, label, realpage);
6493 { 6484 {
6494 GtkWidget *tmp = (GtkWidget *)gtk_object_get_user_data(GTK_OBJECT(handle)); 6485 GtkWidget *tmp = (GtkWidget *)gtk_object_get_user_data(GTK_OBJECT(handle));
6495 if(tmp) 6486 if(tmp)
6496 handle2 = tmp; 6487 handle2 = tmp;
6497 } 6488 }
6498 gtk_object_set_data(GTK_OBJECT(handle), "appending", (gpointer)1); 6489 gtk_object_set_data(GTK_OBJECT(handle), "_dw_appending", (gpointer)1);
6499 if(GTK_IS_LIST(handle2)) 6490 if(GTK_IS_LIST(handle2))
6500 { 6491 {
6501 GtkWidget *list_item; 6492 GtkWidget *list_item;
6502 GList *tmp; 6493 GList *tmp;
6503 char *font = (char *)gtk_object_get_data(GTK_OBJECT(handle), "font"); 6494 char *font = (char *)gtk_object_get_data(GTK_OBJECT(handle), "_dw_font");
6504 GdkColor *fore = (GdkColor *)gtk_object_get_data(GTK_OBJECT(handle2), "foregdk"); 6495 GdkColor *fore = (GdkColor *)gtk_object_get_data(GTK_OBJECT(handle2), "_dw_foregdk");
6505 GdkColor *back = (GdkColor *)gtk_object_get_data(GTK_OBJECT(handle2), "backgdk"); 6496 GdkColor *back = (GdkColor *)gtk_object_get_data(GTK_OBJECT(handle2), "_dw_backgdk");
6506 6497
6507 list_item=gtk_list_item_new_with_label(text); 6498 list_item=gtk_list_item_new_with_label(text);
6508 6499
6509 if(font) 6500 if(font)
6510 _set_font(GTK_LIST_ITEM(list_item)->item.bin.child, font); 6501 _set_font(GTK_LIST_ITEM(list_item)->item.bin.child, font);
6527 tmp = g_list_append(tmp, addtext); 6518 tmp = g_list_append(tmp, addtext);
6528 gtk_object_set_user_data(GTK_OBJECT(handle2), tmp); 6519 gtk_object_set_user_data(GTK_OBJECT(handle2), tmp);
6529 gtk_combo_set_popdown_strings(GTK_COMBO(handle2), tmp); 6520 gtk_combo_set_popdown_strings(GTK_COMBO(handle2), tmp);
6530 } 6521 }
6531 } 6522 }
6532 gtk_object_set_data(GTK_OBJECT(handle), "appending", NULL); 6523 gtk_object_set_data(GTK_OBJECT(handle), "_dw_appending", NULL);
6533 DW_MUTEX_UNLOCK; 6524 DW_MUTEX_UNLOCK;
6534 } 6525 }
6535 6526
6536 /* 6527 /*
6537 * Clears the listbox's (or combobox) list of all entries. 6528 * Clears the listbox's (or combobox) list of all entries.
6872 if(tmp) 6863 if(tmp)
6873 handle2 = tmp; 6864 handle2 = tmp;
6874 } 6865 }
6875 else if(GTK_IS_COMBO(handle)) 6866 else if(GTK_IS_COMBO(handle))
6876 { 6867 {
6877 retval = (unsigned int)gtk_object_get_data(GTK_OBJECT(handle), "item"); 6868 retval = (unsigned int)gtk_object_get_data(GTK_OBJECT(handle), "_dw_item");
6878 DW_MUTEX_UNLOCK; 6869 DW_MUTEX_UNLOCK;
6879 return retval; 6870 return retval;
6880 } 6871 }
6881 if(GTK_IS_LIST(handle2)) 6872 if(GTK_IS_LIST(handle2))
6882 { 6873 {
7031 tmp = gtk_hpaned_new(); 7022 tmp = gtk_hpaned_new();
7032 else 7023 else
7033 tmp = gtk_vpaned_new(); 7024 tmp = gtk_vpaned_new();
7034 gtk_paned_add1(GTK_PANED(tmp), topleft); 7025 gtk_paned_add1(GTK_PANED(tmp), topleft);
7035 gtk_paned_add2(GTK_PANED(tmp), bottomright); 7026 gtk_paned_add2(GTK_PANED(tmp), bottomright);
7036 gtk_object_set_data(GTK_OBJECT(tmp), "id", (gpointer)id); 7027 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_id", (gpointer)id);
7037 *percent = 50.0; 7028 *percent = 50.0;
7038 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_percent", (gpointer)percent); 7029 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_percent", (gpointer)percent);
7039 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_waiting", (gpointer)1); 7030 gtk_object_set_data(GTK_OBJECT(tmp), "_dw_waiting", (gpointer)1);
7040 gtk_signal_connect(GTK_OBJECT(tmp), "size-allocate", GTK_SIGNAL_FUNC(_splitbar_size_allocate), NULL); 7031 gtk_signal_connect(GTK_OBJECT(tmp), "size-allocate", GTK_SIGNAL_FUNC(_splitbar_size_allocate), NULL);
7041 #if GTK_MAJOR_VERSION > 1 7032 #if GTK_MAJOR_VERSION > 1
7107 if(!box) 7098 if(!box)
7108 return; 7099 return;
7109 7100
7110 DW_MUTEX_LOCK; 7101 DW_MUTEX_LOCK;
7111 7102
7112 if((tmp = gtk_object_get_data(GTK_OBJECT(box), "boxhandle"))) 7103 if((tmp = gtk_object_get_data(GTK_OBJECT(box), "_dw_boxhandle")))
7113 box = tmp; 7104 box = tmp;
7114 7105
7115 if(!item) 7106 if(!item)
7116 { 7107 {
7117 item = gtk_label_new(""); 7108 item = gtk_label_new("");
7118 gtk_widget_show(item); 7109 gtk_widget_show(item);
7119 } 7110 }
7120 7111
7121 if(GTK_IS_TABLE(box)) 7112 if(GTK_IS_TABLE(box))
7122 { 7113 {
7123 int boxcount = (int)gtk_object_get_data(GTK_OBJECT(box), "boxcount"); 7114 int boxcount = (int)gtk_object_get_data(GTK_OBJECT(box), "_dw_boxcount");
7124 int boxtype = (int)gtk_object_get_data(GTK_OBJECT(box), "boxtype"); 7115 int boxtype = (int)gtk_object_get_data(GTK_OBJECT(box), "_dw_boxtype");
7125 int x, y; 7116 int x, y;
7126 7117
7127 /* If the item being packed is a box, then we use it's padding 7118 /* If the item being packed is a box, then we use it's padding
7128 * instead of the padding specified on the pack line, this is 7119 * instead of the padding specified on the pack line, this is
7129 * due to a bug in the OS/2 and Win32 renderer and a limitation 7120 * due to a bug in the OS/2 and Win32 renderer and a limitation
7130 * of the GtkTable class. 7121 * of the GtkTable class.
7131 */ 7122 */
7132 if(GTK_IS_TABLE(item)) 7123 if(GTK_IS_TABLE(item))
7133 { 7124 {
7134 GtkWidget *eventbox = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(item), "eventbox"); 7125 GtkWidget *eventbox = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(item), "_dw_eventbox");
7135 7126
7136 if(eventbox) 7127 if(eventbox)
7137 { 7128 {
7138 gtk_container_add(GTK_CONTAINER(eventbox), item); 7129 gtk_container_add(GTK_CONTAINER(eventbox), item);
7139 pad = (int)gtk_object_get_data(GTK_OBJECT(item), "boxpad"); 7130 pad = (int)gtk_object_get_data(GTK_OBJECT(item), "_dw_boxpad");
7140 item = eventbox; 7131 item = eventbox;
7141 } 7132 }
7142 } 7133 }
7143 7134
7144 if(boxtype == DW_VERT) 7135 if(boxtype == DW_VERT)
7153 y = 0; 7144 y = 0;
7154 gtk_table_resize(GTK_TABLE(box), 1, boxcount + 1); 7145 gtk_table_resize(GTK_TABLE(box), 1, boxcount + 1);
7155 } 7146 }
7156 7147
7157 gtk_table_attach(GTK_TABLE(box), item, x, x + 1, y, y + 1, hsize ? DW_EXPAND : 0, vsize ? DW_EXPAND : 0, pad, pad); 7148 gtk_table_attach(GTK_TABLE(box), item, x, x + 1, y, y + 1, hsize ? DW_EXPAND : 0, vsize ? DW_EXPAND : 0, pad, pad);
7158 gtk_object_set_data(GTK_OBJECT(box), "boxcount", (gpointer)boxcount + 1); 7149 gtk_object_set_data(GTK_OBJECT(box), "_dw_boxcount", (gpointer)boxcount + 1);
7159 gtk_widget_set_usize(item, width, height); 7150 gtk_widget_set_usize(item, width, height);
7160 if(GTK_IS_RADIO_BUTTON(item)) 7151 if(GTK_IS_RADIO_BUTTON(item))
7161 { 7152 {
7162 GSList *group; 7153 GSList *group;
7163 GtkWidget *groupstart = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(box), "group"); 7154 GtkWidget *groupstart = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(box), "_dw_group");
7164 7155
7165 if(groupstart) 7156 if(groupstart)
7166 { 7157 {
7167 group = gtk_radio_button_group(GTK_RADIO_BUTTON(groupstart)); 7158 group = gtk_radio_button_group(GTK_RADIO_BUTTON(groupstart));
7168 gtk_radio_button_set_group(GTK_RADIO_BUTTON(item), group); 7159 gtk_radio_button_set_group(GTK_RADIO_BUTTON(item), group);
7169 } 7160 }
7170 else 7161 else
7171 gtk_object_set_data(GTK_OBJECT(box), "group", (gpointer)item); 7162 gtk_object_set_data(GTK_OBJECT(box), "_dw_group", (gpointer)item);
7172 } 7163 }
7173 } 7164 }
7174 else 7165 else
7175 { 7166 {
7176 GtkWidget *vbox = gtk_vbox_new(FALSE, 0); 7167 GtkWidget *vbox = gtk_vbox_new(FALSE, 0);
7177 7168
7178 if(GTK_IS_TABLE(item)) 7169 if(GTK_IS_TABLE(item))
7179 { 7170 {
7180 GtkWidget *eventbox = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(item), "eventbox"); 7171 GtkWidget *eventbox = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(item), "_dw_eventbox");
7181 7172
7182 if(eventbox) 7173 if(eventbox)
7183 { 7174 {
7184 gtk_container_add(GTK_CONTAINER(eventbox), item); 7175 gtk_container_add(GTK_CONTAINER(eventbox), item);
7185 pad = (int)gtk_object_get_data(GTK_OBJECT(item), "boxpad"); 7176 pad = (int)gtk_object_get_data(GTK_OBJECT(item), "_dw_boxpad");
7186 item = eventbox; 7177 item = eventbox;
7187 } 7178 }
7188 } 7179 }
7189 7180
7190 gtk_container_border_width(GTK_CONTAINER(box), pad); 7181 gtk_container_border_width(GTK_CONTAINER(box), pad);
7623 7614
7624 work->window = window; 7615 work->window = window;
7625 work->data = data; 7616 work->data = data;
7626 work->func = sigfunc; 7617 work->func = sigfunc;
7627 7618
7628 gtk_object_set_data(GTK_OBJECT(thiswindow), "container-context-func", (gpointer)thisfunc); 7619 gtk_object_set_data(GTK_OBJECT(thiswindow), "_dw_container_context_func", (gpointer)thisfunc);
7629 gtk_object_set_data(GTK_OBJECT(thiswindow), "container-context-data", (gpointer)work); 7620 gtk_object_set_data(GTK_OBJECT(thiswindow), "_dw_container_context_data", (gpointer)work);
7630 gtk_signal_connect(GTK_OBJECT(thiswindow), "button_press_event", GTK_SIGNAL_FUNC(thisfunc), work); 7621 gtk_signal_connect(GTK_OBJECT(thiswindow), "button_press_event", GTK_SIGNAL_FUNC(thisfunc), work);
7631 gtk_signal_connect(GTK_OBJECT(window), "button_press_event", GTK_SIGNAL_FUNC(thisfunc), work); 7622 gtk_signal_connect(GTK_OBJECT(window), "button_press_event", GTK_SIGNAL_FUNC(thisfunc), work);
7632 DW_MUTEX_UNLOCK; 7623 DW_MUTEX_UNLOCK;
7633 return; 7624 return;
7634 } 7625 }
7635 else if(GTK_IS_TREE(thiswindow) && strcmp(signame, DW_SIGNAL_ITEM_SELECT) == 0) 7626 else if(GTK_IS_TREE(thiswindow) && strcmp(signame, DW_SIGNAL_ITEM_SELECT) == 0)
7636 { 7627 {
7637 if(thisfunc) 7628 if(thisfunc)
7638 { 7629 {
7639 gtk_object_set_data(GTK_OBJECT(thiswindow), "select-child-func", (gpointer)thisfunc); 7630 gtk_object_set_data(GTK_OBJECT(thiswindow), "_dw_select_child_func", (gpointer)thisfunc);
7640 gtk_object_set_data(GTK_OBJECT(thiswindow), "select-child-data", (gpointer)work); 7631 gtk_object_set_data(GTK_OBJECT(thiswindow), "_dw_select_child_data", (gpointer)work);
7641 } 7632 }
7642 thisname = "select-child"; 7633 thisname = "select-child";
7643 } 7634 }
7644 #endif 7635 #endif
7645 else if(GTK_IS_CLIST(thiswindow) && strcmp(signame, DW_SIGNAL_ITEM_ENTER) == 0) 7636 else if(GTK_IS_CLIST(thiswindow) && strcmp(signame, DW_SIGNAL_ITEM_ENTER) == 0)
7676 } 7667 }
7677 #endif 7668 #endif
7678 else if(GTK_IS_VSCALE(thiswindow) || GTK_IS_HSCALE(thiswindow) || 7669 else if(GTK_IS_VSCALE(thiswindow) || GTK_IS_HSCALE(thiswindow) ||
7679 GTK_IS_VSCROLLBAR(thiswindow) || GTK_IS_HSCROLLBAR(thiswindow)) 7670 GTK_IS_VSCROLLBAR(thiswindow) || GTK_IS_HSCROLLBAR(thiswindow))
7680 { 7671 {
7681 thiswindow = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(thiswindow), "adjustment"); 7672 thiswindow = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(thiswindow), "_dw_adjustment");
7682 } 7673 }
7683 else if(GTK_IS_NOTEBOOK(thiswindow) && strcmp(signame, DW_SIGNAL_SWITCH_PAGE) == 0) 7674 else if(GTK_IS_NOTEBOOK(thiswindow) && strcmp(signame, DW_SIGNAL_SWITCH_PAGE) == 0)
7684 { 7675 {
7685 thisname = "switch-page"; 7676 thisname = "switch-page";
7686 } 7677 }