gtk2 port
Robert Hart <[email protected]>
| Newsgroups | gmane.comp.audio.zinf.devel |
|---|---|
| Organization | University of Nottingham |
| Message-ID | <1060073944.958.7.camel@euclid> |
ok, here is the latest iteration of the gtk-2 support. I don't think this patch applies cleanly against current cvs due to changes in configure.ac Drag and drop now works to some extent, although there are still some cosmetic issues. The "Add files" from the main zinf window doesn't work, and causes crashes, but the "Add files" from the music browser is fine. Note, I think zinf is quite slow when built in debug mode, but is not too bad when built normally. Rob -- +-------------------------------------+ | "It's only a trap if you don't take | | a ladder with you to get out of it" | | -S Ring, Bath Uni | | | | [email protected] | | http://www.nott.ac.uk/~enxrah | +-------------------------------------+
gtk2.diff
(text/x-patch, 36.4 KB)
Index: configure.ac
===================================================================
RCS file: /cvsroot/zinf/zinf/configure.ac,v
retrieving revision 1.17
diff -a -u -r1.17 configure.ac
--- configure.ac 23 Jul 2003 23:01:03 -0000 1.17
+++ configure.ac 5 Aug 2003 08:47:21 -0000
@@ -441,57 +441,20 @@
AC_SUBST(NCURSES_LIBS)
AC_SUBST(NCURSES_CFLAGS)
-
-dnl GTK UI
-PKG_CHECK_MODULES(GTK, gtk+ >= 1.2.5 gthread, have_gtk=true, have_gtk=false)
+dnl GTK-2.0
+AM_PATH_GTK_2_0(2.0.0, have_gtk=true, have_gtk=false, gthread)
AC_SUBST(GTK_CFLAGS)
AC_SUBST(GTK_LIBS)
if test "$have_gtk" = "true"; then
- AC_DEFINE(HAVE_GTK, 1, [Defined if GTK+ 1.2 is available])
+ AC_DEFINE(HAVE_GTK, 1, [Defined if GTK+ 2 is available])
+dnl this is standard part of gtk now?
+ AC_DEFINE(USING_GDKPIXBUF, 1, [GDK Pixbuf support])
UI_PLUGINS="$UI_PLUGINS zinf musicbrowser download"
else
AC_MSG_WARN([GTK+ was not found on this system. This means you won't be
able to use any of the graphical user interfaces. That's a bad thing,"
so go get the latest version of GTK+ from http://www.gtk.org])
-fi
-
-dnl optional freetype support..
-have_freetype=true
-AC_CHECK_HEADERS(freetype.h, TTF_CFLAGS="", have_freetype=false)
-if test "$have_freetype" = "false"; then
- AC_CHECK_HEADERS(freetype/freetype.h,
- [TTF_CFLAGS="-Ifreetype"; have_freetype=true])
- if test "$have_freetype" = "false"; then
- AC_CHECK_HEADERS(freetype1/freetype/freetype.h,
- [TTF_CFLAGS="-Ifreetype1/freetype"; have_freetype=true])
- fi
-fi
-
-TTF_LIBS=""
-if test "$have_freetype" = "true"; then
- AC_CHECK_LIB(ttf, TT_Init_FreeType, have_freetype="true",
- have_freetype = "false", -lm)
-fi
-
-if test "$have_freetype" = "true"; then
- TTF_LIBS="-lttf"
- AC_DEFINE(HAVE_FREETYPE, 1, [defined if the freetype library is available])
-else
- AC_MSG_WARN([You don't have FreeType installed. This means that Zinf
- will fall back on X fonts. To make Zinfs GUI interface all pretty,
- you need FreeType. Get the latest stable version at:
- http://www.freetype.org/download.html])
-fi
-
-AC_SUBST(TTF_LIBS)
-AC_SUBST(TTF_CFLAGS)
-
-
-AM_PATH_GDK_PIXBUF(0.8.0, have_gdk_pixbuf=true, have_gdk_pixbuf=false)
-
-if test "$have_gdk_pixbuf" = true; then
- AC_DEFINE(USING_GDKPIXBUF, 1, [GDK Pixbuf support])
fi
dnl corba UI
Index: ui/musicbrowser/unix/src/browserlist.cpp
===================================================================
RCS file: /cvsroot/zinf/zinf/ui/musicbrowser/unix/src/browserlist.cpp,v
retrieving revision 1.10
diff -a -u -r1.10 browserlist.cpp
--- ui/musicbrowser/unix/src/browserlist.cpp 27 May 2003 10:35:52 -0000 1.10
+++ ui/musicbrowser/unix/src/browserlist.cpp 5 Aug 2003 08:47:23 -0000
@@ -627,7 +627,6 @@
if (oldindex != kInvalidIndex)
gtk_clist_set_row_style(GTK_CLIST(playlistList), oldindex, normStyle);
gtk_clist_set_row_style(GTK_CLIST(playlistList), newindex, boldStyle);
- gtk_clist_columns_autosize(GTK_CLIST(playlistList));
}
void list_keypress(GtkWidget *w, GdkEventKey *ev, GTKMusicBrowser *p)
@@ -722,16 +721,27 @@
GdkAtom plain = gdk_atom_intern("text/plain", FALSE);
GdkAtom html = gdk_atom_intern("text/html", FALSE);
while (targets) {
- if (((int)atom == GPOINTER_TO_INT(targets->data)) ||
- ((int)tree == GPOINTER_TO_INT(targets->data)) ||
- ((int)list == GPOINTER_TO_INT(targets->data)) ||
- ((int)plain == GPOINTER_TO_INT(targets->data)) ||
- ((int)html == GPOINTER_TO_INT(targets->data))) {
- gtk_drag_get_data(widget, context, GPOINTER_TO_INT(targets->data),
- time);
- return TRUE;
- }
- targets = targets->next;
+ if ((int)atom == GPOINTER_TO_INT(targets->data)){
+ gtk_drag_get_data(widget, context, atom, time);
+ return TRUE;
+ }
+ if ((int)tree == GPOINTER_TO_INT(targets->data)){
+ gtk_drag_get_data(widget, context, tree, time);
+ return TRUE;
+ }
+ if ((int)list == GPOINTER_TO_INT(targets->data)){
+ gtk_drag_get_data(widget, context, list, time);
+ return TRUE;
+ }
+ if ((int)plain == GPOINTER_TO_INT(targets->data)){
+ gtk_drag_get_data(widget, context, plain, time);
+ return TRUE;
+ }
+ if ((int)html == GPOINTER_TO_INT(targets->data)){
+ gtk_drag_get_data(widget, context, html, time);
+ return TRUE;
+ }
+ targets = targets->next;
}
return FALSE;
}
@@ -746,7 +756,7 @@
((row) + 1) + (clist)->voffset)
#define ROW_FROM_YPIXEL(clist, y) (((y) - (clist)->voffset) / \
((clist)->row_height + 1))
-#define GTK_CLIST_CLASS_FW(_widget_) GTK_CLIST_CLASS (((GtkObject*) (_widget_))->klass)
+#define GTK_CLIST_CLASS_FW(_widget_) GTK_CLIST_CLASS (((GtkObject*) (_widget_)))
static gint COLUMN_FROM_XPIXEL (GtkCList * clist, gint x)
@@ -775,7 +785,7 @@
dest_info->insert_pos = GTK_CLIST_DRAG_NONE;
y -= (GTK_CONTAINER (clist)->border_width +
- widget->style->klass->ythickness + clist->column_title_area.height);
+ widget->style->ythickness + clist->column_title_area.height);
dest_info->cell.row = ROW_FROM_YPIXEL (clist, y);
if (dest_info->cell.row >= clist->rows) {
@@ -790,7 +800,7 @@
}
x -= GTK_CONTAINER (widget)->border_width +
- widget->style->klass->xthickness;
+ widget->style->xthickness;
dest_info->cell.column = COLUMN_FROM_XPIXEL (clist, x);
if (dest_info->cell.row >= 0) {
@@ -945,10 +955,11 @@
if (((int)tree == GPOINTER_TO_INT(list->data)) ||
((int)plain == GPOINTER_TO_INT(list->data)) ||
((int)html == GPOINTER_TO_INT(list->data))) {
- GTK_CLIST_CLASS_FW(clist)->draw_drag_highlight(clist,
- (GtkCListRow *)g_list_nth(clist->row_list,
- dest_info->cell.row)->data,
- dest_info->cell.row, dest_info->insert_pos);
+ //FIXME - What is this trying to do?
+// GTK_CLIST_CLASS_FW(clist)->draw_drag_highlight(clist,
+// (GtkCListRow *)g_list_nth(clist->row_list,
+// dest_info->cell.row)->data,
+// dest_info->cell.row, dest_info->insert_pos);
break;
}
list = list->next;
@@ -1055,19 +1066,19 @@
(new_info.cell.row == dest_info->cell.row &&
dest_info->insert_pos != new_info.insert_pos)) {
if (dest_info->cell.row >= 0 && dest_info->cell.column != -1)
- GTK_CLIST_CLASS_FW(clist)->draw_drag_highlight(clist,
- (GtkCListRow *)g_list_nth(clist->row_list,
- dest_info->cell.row)->data,
- dest_info->cell.row, dest_info->insert_pos);
+ // GTK_CLIST_CLASS_FW(clist)->draw_drag_highlight(clist,
+// (GtkCListRow *)g_list_nth(clist->row_list,
+// dest_info->cell.row)->data,
+// dest_info->cell.row, dest_info->insert_pos);
dest_info->insert_pos = new_info.insert_pos;
dest_info->cell.row = new_info.cell.row;
dest_info->cell.column = new_info.cell.column;
if (dest_info->cell.column != -1)
- GTK_CLIST_CLASS_FW(clist)->draw_drag_highlight(clist,
- (GtkCListRow *)g_list_nth(clist->row_list,
- dest_info->cell.row)->data,
- dest_info->cell.row, dest_info->insert_pos);
+// GTK_CLIST_CLASS_FW(clist)->draw_drag_highlight(clist,
+// (GtkCListRow *)g_list_nth(clist->row_list,
+// dest_info->cell.row)->data,
+// dest_info->cell.row, dest_info->insert_pos);
gdk_drag_status(context, context->suggested_action, time);
}
return TRUE;
@@ -1226,7 +1237,7 @@
GTK_SIGNAL_FUNC(list_drag_motion_internal), this);
gtk_signal_connect(GTK_OBJECT(playlistList), "key_press_event",
GTK_SIGNAL_FUNC(list_keypress), this);
- gtk_signal_connect(GTK_OBJECT(playlistList), "button_press_event",
+ gtk_signal_connect_after(GTK_OBJECT(playlistList), "button_press_event",
GTK_SIGNAL_FUNC(list_clicked), this);
GtkTargetEntry new_clist_source_table[1] = {
Index: ui/musicbrowser/unix/src/browsermenu.cpp
===================================================================
RCS file: /cvsroot/zinf/zinf/ui/musicbrowser/unix/src/browsermenu.cpp,v
retrieving revision 1.8
diff -a -u -r1.8 browsermenu.cpp
--- ui/musicbrowser/unix/src/browsermenu.cpp 13 Feb 2003 12:17:57 -0000 1.8
+++ ui/musicbrowser/unix/src/browsermenu.cpp 5 Aug 2003 08:47:25 -0000
@@ -606,7 +606,7 @@
gtk_item_factory_create_items(menuFactory, nmenu_items, menu_items,
(void *)this);
- gtk_accel_group_attach(accel_group, GTK_OBJECT(musicBrowser));
+ gtk_window_add_accel_group(GTK_WINDOW(musicBrowser), accel_group);
gtk_box_pack_start(GTK_BOX(topbox), gtk_item_factory_get_widget(
menuFactory, "<blah>"), FALSE, TRUE, 0);
gtk_widget_show(gtk_item_factory_get_widget(menuFactory, "<blah>"));
@@ -632,58 +632,69 @@
void GTKMusicBrowser::CreateToolbar(GtkWidget *vbox)
{
- toolbar = gtk_toolbar_new(GTK_ORIENTATION_HORIZONTAL,
- GTK_TOOLBAR_BOTH);
- gtk_toolbar_set_button_relief(GTK_TOOLBAR(toolbar), GTK_RELIEF_NONE);
- gtk_toolbar_set_space_style(GTK_TOOLBAR(toolbar), GTK_TOOLBAR_SPACE_LINE);
-
- gtk_toolbar_append_item(GTK_TOOLBAR(toolbar), _("New Playlist"),
- _("Start Editing a new Playlist"),
- "Toolbar/New", NewPixmap(new_pic),
- GTK_SIGNAL_FUNC(new_plist_tool), this);
-
- gtk_toolbar_append_item(GTK_TOOLBAR(toolbar), _("Save Playlist"),
- _("Save the Current Playlist to Disk"),
- "Toolbar/Save", NewPixmap(save_pic),
- GTK_SIGNAL_FUNC(save_list_tool), this);
-
+// toolbar = gtk_toolbar_new(GTK_ORIENTATION_HORIZONTAL,
+// GTK_TOOLBAR_BOTH);
+ toolbar=gtk_toolbar_new();
+ // gtk_toolbar_set_button_relief(GTK_TOOLBAR(toolbar), GTK_RELIEF_NONE);
+ // gtk_toolbar_set_space_style(GTK_TOOLBAR(toolbar), GTK_TOOLBAR_SPACE_LINE);
+
+ gtk_toolbar_insert_stock(GTK_TOOLBAR(toolbar),GTK_STOCK_NEW,
+ _("Start editing a new playlist"),
+ "Toolbar/New",
+ GTK_SIGNAL_FUNC(new_plist_tool),
+ this, -1);
+
+ gtk_toolbar_insert_stock(GTK_TOOLBAR(toolbar),GTK_STOCK_SAVE,
+ _("Save the playlist"),
+ "Toolbar/Save",
+ GTK_SIGNAL_FUNC(save_list_tool),
+ this, -1);
gtk_toolbar_append_space(GTK_TOOLBAR(toolbar));
- gtk_toolbar_append_item(GTK_TOOLBAR(toolbar), _("Import Items"),
+ gtk_toolbar_append_item(GTK_TOOLBAR(toolbar), _("Import"),
_("Import a Playlist or Track into My Music"),
"Toolbar/Import", NewPixmap(import_pic),
GTK_SIGNAL_FUNC(import_tool), this);
- toolRemove = gtk_toolbar_append_item(GTK_TOOLBAR(toolbar), _("Remove Track"),
+ toolRemove = gtk_toolbar_append_item(GTK_TOOLBAR(toolbar), _("Remove"),
_("Remove a Track from the Playlist"),
- "Toolbar/Remove", NewPixmap(trash_pic),
+ "Toolbar/Remove",
+ gtk_image_new_from_stock(GTK_STOCK_REMOVE,
+ GTK_ICON_SIZE_LARGE_TOOLBAR),
GTK_SIGNAL_FUNC(remove_tool), this);
gtk_toolbar_append_item(GTK_TOOLBAR(toolbar), _("Edit"),
_("Edit a Track or Playlist"),
- "Toolbar/Edit", NewPixmap(edit_pic),
+ "Toolbar/Edit",
+ gtk_image_new_from_stock(GTK_STOCK_PROPERTIES,
+ GTK_ICON_SIZE_LARGE_TOOLBAR),
GTK_SIGNAL_FUNC(edit_tool), this);
gtk_toolbar_append_space(GTK_TOOLBAR(toolbar));
- addTrack = gtk_toolbar_append_item(GTK_TOOLBAR(toolbar), _("Add Items"),
- _("Add Music from My Music to the Playlist"),
- "Toolbar/AddItem", NewPixmap(add_track_pic),
- GTK_SIGNAL_FUNC(add_track_tool), this);
+ gtk_toolbar_insert_stock(GTK_TOOLBAR(toolbar),GTK_STOCK_ADD,
+ _("Add music from My Music to the playlist"),
+ "Toolbar/AddItem",
+ GTK_SIGNAL_FUNC(add_track_tool),
+ this, -1);
addFile = gtk_toolbar_append_item(GTK_TOOLBAR(toolbar), _("Add File"),
_("Add a File to the Playlist"),
- "Toolbar/Add", NewPixmap(add_file),
+ "Toolbar/Add", gtk_image_new_from_stock(GTK_STOCK_OPEN,
+ GTK_ICON_SIZE_LARGE_TOOLBAR),
GTK_SIGNAL_FUNC(add_tool), this);
toolUp = gtk_toolbar_append_item(GTK_TOOLBAR(toolbar), _("Move Up"),
_("Move The Currently Selected Track in the Playlist Up"),
- "Toolbar/Up", NewPixmap(up_pic),
+ "Toolbar/Up",
+ gtk_image_new_from_stock(GTK_STOCK_GO_UP,
+ GTK_ICON_SIZE_LARGE_TOOLBAR),
GTK_SIGNAL_FUNC(move_up_tool), this);
toolDown = gtk_toolbar_append_item(GTK_TOOLBAR(toolbar), _("Move Down"),
_("Move the Currently Selected Track in the Playlist Down"),
- "Toolbar/Down", NewPixmap(down_pic),
+ "Toolbar/Down", gtk_image_new_from_stock(GTK_STOCK_GO_DOWN,
+ GTK_ICON_SIZE_LARGE_TOOLBAR),
GTK_SIGNAL_FUNC(move_down_tool), this);
gtk_box_pack_start(GTK_BOX(vbox), toolbar, FALSE, TRUE, 0);
Index: ui/musicbrowser/unix/src/browsertree.cpp
===================================================================
RCS file: /cvsroot/zinf/zinf/ui/musicbrowser/unix/src/browsertree.cpp,v
retrieving revision 1.13
diff -a -u -r1.13 browsertree.cpp
--- ui/musicbrowser/unix/src/browsertree.cpp 11 Mar 2003 11:39:54 -0000 1.13
+++ ui/musicbrowser/unix/src/browsertree.cpp 5 Aug 2003 08:47:25 -0000
@@ -657,7 +657,8 @@
static void tree_keypress(GtkWidget *w, GdkEventKey *event, GTKMusicBrowser *p)
{
assert(event);
- p->HandleKeypress(tolower((char)event->keyval));
+ // if (gdk_keyval_is_upper(event->keyval)!=gdk_keyval_is_lower(event->keyval))
+ p->HandleKeypress(tolower((char)event->keyval));
}
bool GTKMusicBrowser::CheckEmptyDatabase(void)
@@ -1471,7 +1472,7 @@
GTK_SIGNAL_FUNC(ctree_selected), this);
gtk_signal_connect(GTK_OBJECT(musicBrowserTree), "tree_unselect_row",
GTK_SIGNAL_FUNC(ctree_unselected), this);
- gtk_signal_connect(GTK_OBJECT(musicBrowserTree), "key_press_event",
+ gtk_signal_connect_after(GTK_OBJECT(musicBrowserTree), "key_press_event",
GTK_SIGNAL_FUNC(tree_keypress), this);
gtk_clist_set_selection_mode(GTK_CLIST(musicBrowserTree),
GTK_SELECTION_EXTENDED);
Index: ui/musicbrowser/unix/src/fileselector.cpp
===================================================================
RCS file: /cvsroot/zinf/zinf/ui/musicbrowser/unix/src/fileselector.cpp,v
retrieving revision 1.7
diff -a -u -r1.7 fileselector.cpp
--- ui/musicbrowser/unix/src/fileselector.cpp 19 Feb 2003 07:39:22 -0000 1.7
+++ ui/musicbrowser/unix/src/fileselector.cpp 5 Aug 2003 08:47:25 -0000
@@ -118,12 +118,11 @@
{
GtkFileSelection *gfile = GTK_FILE_SELECTION(filesel);
char *raw_path = NULL;
- GList *row = GTK_CLIST(gfile->file_list)->row_list;
+ gchar **row=gtk_file_selection_get_selections(gfile);
gint rownum = 0;
gint sub_rnum = 0;
- char *temp, *path_temp;
- char *rawtext = gtk_entry_get_text(GTK_ENTRY(gfile->selection_entry));
+ char *rawtext = (char*)gtk_entry_get_text(GTK_ENTRY(gfile->selection_entry));
if (!strncasecmp("http://", rawtext, 7) ||
!strncasecmp("rtp://", rawtext, 6)) {
returnpath = strdup_new(rawtext);
@@ -133,39 +132,15 @@
return;
}
- returnpath = gtk_file_selection_get_filename(gfile);
- path_temp = strdup(returnpath.c_str());
- raw_path = gtk_entry_get_text(GTK_ENTRY(gfile->selection_entry));
- if(path_temp[strlen(path_temp)-1]=='/')
- row=NULL;
- char *tempdir = strrchr(path_temp, '/');
- strncpy(old_path,path_temp,PATH_MAX);
- if (!tempdir) {
- strcpy(path_temp, "/");
- path_temp = (char *)realloc(path_temp, strlen(path_temp) + 1);
- }
- else
- tempdir[0] = '\0';
+ returnpath="";
- if(row){
- while (row) {
- if (GTK_CLIST_ROW(row)->state == GTK_STATE_SELECTED) {
- if (gtk_clist_get_cell_type(GTK_CLIST(gfile->file_list), rownum, 0)
- == GTK_CELL_TEXT) {
- gtk_clist_get_text(GTK_CLIST(gfile->file_list), rownum, 0, &temp);
- if (!strcmp(temp, raw_path))
- goto next_iter;
- returnpath += "\n";
- returnpath += path_temp;
- returnpath += "/";
- returnpath += temp;
- }
- }
- next_iter:
- rownum++;
- row = g_list_next(row);
+ if(row[rownum]){
+ while (row[rownum]) {
+ returnpath += row[rownum];
+ returnpath += "\n";
+ rownum++;
}
- }
+ }
else {
char subdirs[PATH_MAX];
strncpy(subdirs,old_path,PATH_MAX);
@@ -173,9 +148,8 @@
returnpath = recursive_path(subdirs, returnpath,&sub_rnum);
}
rownum += sub_rnum;
+ g_strfreev(row);
gtk_widget_destroy(GTK_WIDGET(gfile));
- if(path_temp)
- free(path_temp);
ok = true;
done = true;
@@ -207,10 +181,8 @@
"clicked", GTK_SIGNAL_FUNC(cancel_internal), this);
gtk_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(filesel)->ok_button),
"clicked", GTK_SIGNAL_FUNC(ok_internal), this);
-
- if (extended)
- gtk_clist_set_selection_mode(GTK_CLIST(GTK_FILE_SELECTION(filesel)->
- file_list), GTK_SELECTION_EXTENDED);
+ if (extended)
+ gtk_file_selection_set_select_multiple(GTK_FILE_SELECTION(filesel),TRUE);
gtk_widget_show(filesel);
if (runMain)
Index: ui/musicbrowser/unix/src/gtkmessagedialog.cpp
===================================================================
RCS file: /cvsroot/zinf/zinf/ui/musicbrowser/unix/src/gtkmessagedialog.cpp,v
retrieving revision 1.5
diff -a -u -r1.5 gtkmessagedialog.cpp
--- ui/musicbrowser/unix/src/gtkmessagedialog.cpp 1 Feb 2003 05:08:01 -0000 1.5
+++ ui/musicbrowser/unix/src/gtkmessagedialog.cpp 5 Aug 2003 08:47:25 -0000
@@ -115,7 +115,7 @@
static void entry_change(GtkWidget *w, GTKMessageDialog *p)
{
- p->SetText(gtk_entry_get_text(GTK_ENTRY(w)));
+ p->SetText((char*)gtk_entry_get_text(GTK_ENTRY(w)));
}
static void check_box_toggle(GtkWidget *w, GTKMessageDialog *p)
@@ -139,7 +139,7 @@
uline_label), GDK_MOD1_MASK, (GtkAccelFlags)0);
if (useEscape)
gtk_widget_add_accelerator(button, "clicked", accel_group, GDK_Escape,
- 0, (GtkAccelFlags)0);
+ (GdkModifierType)0, (GtkAccelFlags)0);
gtk_widget_show(label);
gtk_container_add(GTK_CONTAINER(button), label);
Index: ui/musicbrowser/unix/src/gtkmusicbrowser.cpp
===================================================================
RCS file: /cvsroot/zinf/zinf/ui/musicbrowser/unix/src/gtkmusicbrowser.cpp,v
retrieving revision 1.19
diff -a -u -r1.19 gtkmusicbrowser.cpp
--- ui/musicbrowser/unix/src/gtkmusicbrowser.cpp 8 Jul 2003 23:45:02 -0000 1.19
+++ ui/musicbrowser/unix/src/gtkmusicbrowser.cpp 5 Aug 2003 08:47:29 -0000
@@ -426,7 +426,7 @@
m_state = kStateExpanded;
if (lastPanedPosition != -1) {
gtk_paned_set_position(GTK_PANED(masterBox), lastPanedPosition);
- gtk_paned_set_handle_size(GTK_PANED(masterBox), lastPanedHandle);
+ // gtk_paned_set_handle_size(GTK_PANED(masterBox), lastPanedHandle);
}
gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(musicBrowserWindow),
GTK_POLICY_AUTOMATIC,
@@ -440,9 +440,9 @@
else {
m_state = kStateCollapsed;
lastPanedPosition = ((GtkPaned *)masterBox)->child1_size;
- lastPanedHandle = ((GtkPaned *)masterBox)->handle_size;
+ // lastPanedHandle = ((GtkPaned *)masterBox)->handle_size;
gtk_paned_set_position(GTK_PANED(masterBox), 0);
- gtk_paned_set_handle_size(GTK_PANED(masterBox), 0);
+ // gtk_paned_set_handle_size(GTK_PANED(masterBox), 0);
gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(musicBrowserWindow),
GTK_POLICY_NEVER, GTK_POLICY_NEVER);
title += string(" - Playlist Editor: ");
@@ -625,12 +625,7 @@
normStyle = gtk_style_copy(gtk_widget_get_style(musicBrowser));
boldStyle = gtk_style_copy(normStyle);
- GdkFont *font =
- gdk_font_load("-adobe-helvetica-bold-r-normal--*-120-*-*-*-*-*-*"); if (!font)
- font = gdk_font_load("fixed");
- gdk_font_unref(boldStyle->font);
- boldStyle->font = font;
- gdk_font_ref(boldStyle->font);
+ pango_font_description_set_weight(boldStyle->font_desc, PANGO_WEIGHT_BOLD);
GdkColor red;
GdkColor green;
Index: ui/musicbrowser/unix/src/infoeditor.cpp
===================================================================
RCS file: /cvsroot/zinf/zinf/ui/musicbrowser/unix/src/infoeditor.cpp,v
retrieving revision 1.5
diff -a -u -r1.5 infoeditor.cpp
--- ui/musicbrowser/unix/src/infoeditor.cpp 1 Feb 2003 05:08:01 -0000 1.5
+++ ui/musicbrowser/unix/src/infoeditor.cpp 5 Aug 2003 08:47:29 -0000
@@ -78,7 +78,7 @@
vector<PlaylistItem *>::iterator i = m_itemlist->begin();
for (; i != m_itemlist->end(); i++) {
MetaData oldmeta, newmeta;
- gchar *text;
+ const gchar *text;
oldmeta = newmeta = (*i)->GetMetaData();
Index: ui/musicbrowser/unix/src/introwizard.cpp
===================================================================
RCS file: /cvsroot/zinf/zinf/ui/musicbrowser/unix/src/introwizard.cpp,v
retrieving revision 1.6
diff -a -u -r1.6 introwizard.cpp
--- ui/musicbrowser/unix/src/introwizard.cpp 19 Feb 2003 07:39:22 -0000 1.6
+++ ui/musicbrowser/unix/src/introwizard.cpp 5 Aug 2003 08:47:29 -0000
@@ -142,7 +142,7 @@
static void search_entry_change(GtkWidget *w, IntroWizardUI *p)
{
- char *text = gtk_entry_get_text(GTK_ENTRY(w));
+ char *text = (char*)gtk_entry_get_text(GTK_ENTRY(w));
p->SetSearchPath(text);
}
Index: ui/musicbrowser/unix/src/missingfileui.cpp
===================================================================
RCS file: /cvsroot/zinf/zinf/ui/musicbrowser/unix/src/missingfileui.cpp,v
retrieving revision 1.6
diff -a -u -r1.6 missingfileui.cpp
--- ui/musicbrowser/unix/src/missingfileui.cpp 9 Feb 2003 07:43:34 -0000 1.6
+++ ui/musicbrowser/unix/src/missingfileui.cpp 5 Aug 2003 08:47:29 -0000
@@ -81,7 +81,7 @@
static void entry_change(GtkWidget *w, MissingFileUI *p)
{
- char *text = gtk_entry_get_text(GTK_ENTRY(w));
+ char *text = (char*)gtk_entry_get_text(GTK_ENTRY(w));
p->ChangeTextEntry(text);
}
Index: ui/musicbrowser/unix/src/musicsearch.cpp
===================================================================
RCS file: /cvsroot/zinf/zinf/ui/musicbrowser/unix/src/musicsearch.cpp,v
retrieving revision 1.5
diff -a -u -r1.5 musicsearch.cpp
--- ui/musicbrowser/unix/src/musicsearch.cpp 1 Feb 2003 05:08:01 -0000 1.5
+++ ui/musicbrowser/unix/src/musicsearch.cpp 5 Aug 2003 08:47:29 -0000
@@ -110,7 +110,7 @@
static void search_entry_change(GtkWidget *w, musicsearchUI *p)
{
- char *text = gtk_entry_get_text(GTK_ENTRY(w));
+ char *text = (char*)gtk_entry_get_text(GTK_ENTRY(w));
p->SetSearchPath(text);
}
@@ -132,6 +132,9 @@
if (S_ISDIR(st.st_mode)) {
p->SetSearchPath(filepath);
p->UpdateEntry();
+ //FIXME:HACK HACK HACK
+ p->SetSearchPath(filepath);
+ p->UpdateEntry();
}
}
@@ -251,7 +254,7 @@
textEntry = gtk_entry_new();
gtk_entry_set_text(GTK_ENTRY(textEntry), "/");
gtk_signal_connect(GTK_OBJECT(textEntry), "changed",
- GTK_SIGNAL_FUNC(search_entry_change), this);
+ GTK_SIGNAL_FUNC(search_entry_change), this);
gtk_box_pack_start(GTK_BOX(hbox), textEntry, FALSE, FALSE, 0);
gtk_widget_show(textEntry);
Index: ui/zinf/unix/src/GTKBitmap.cpp
===================================================================
RCS file: /cvsroot/zinf/zinf/ui/zinf/unix/src/GTKBitmap.cpp,v
retrieving revision 1.5
diff -a -u -r1.5 GTKBitmap.cpp
--- ui/zinf/unix/src/GTKBitmap.cpp 23 Jul 2003 23:01:04 -0000 1.5
+++ ui/zinf/unix/src/GTKBitmap.cpp 5 Aug 2003 08:47:29 -0000
@@ -142,9 +142,9 @@
#ifdef USING_GDKPIXBUF
GdkPixbuf *pixbuf;
-
+ GError **error=NULL;
gdk_threads_enter();
- pixbuf = gdk_pixbuf_new_from_file(filename.c_str());
+ pixbuf = gdk_pixbuf_new_from_file(filename.c_str(), error);
if (pixbuf) {
GdkPixbuf *newbuf;
newbuf = gdk_pixbuf_add_alpha(pixbuf, m_bHasTransColor,
Index: ui/zinf/unix/src/GTKFileSelector.cpp
===================================================================
RCS file: /cvsroot/zinf/zinf/ui/zinf/unix/src/GTKFileSelector.cpp,v
retrieving revision 1.7
diff -a -u -r1.7 GTKFileSelector.cpp
--- ui/zinf/unix/src/GTKFileSelector.cpp 19 Feb 2003 07:39:23 -0000 1.7
+++ ui/zinf/unix/src/GTKFileSelector.cpp 5 Aug 2003 08:47:29 -0000
@@ -24,7 +24,7 @@
#include <unistd.h>
#include <dirent.h>
-
+#include <string>
#if defined(solaris)
#include <sys/types.h>
#include <sys/param.h> /* for MAXPATHLEN */
@@ -128,7 +128,7 @@
else
tempdir[0] = '\0';
- raw_path = gtk_entry_get_text(GTK_ENTRY(gfile->selection_entry));
+ raw_path = (char*)gtk_entry_get_text(GTK_ENTRY(gfile->selection_entry));
strncpy(old_path,path_temp,PATH_MAX);
if(row){
while (row) {
@@ -170,7 +170,6 @@
int32_t dummyInt;
if (!runMain)
gdk_threads_enter();
-
filesel = gtk_file_selection_new(title.c_str());
m_context->prefs->GetPrefBoolean(kSetLastResumePref, &dummyBool);
dummyInt = PATH_MAX;
Index: ui/zinf/unix/src/GTKPreferenceWindow.cpp
===================================================================
RCS file: /cvsroot/zinf/zinf/ui/zinf/unix/src/GTKPreferenceWindow.cpp,v
retrieving revision 1.20
diff -a -u -r1.20 GTKPreferenceWindow.cpp
--- ui/zinf/unix/src/GTKPreferenceWindow.cpp 27 May 2003 10:35:53 -0000 1.20
+++ ui/zinf/unix/src/GTKPreferenceWindow.cpp 5 Aug 2003 08:47:31 -0000
@@ -217,13 +217,13 @@
GtkWidget *mainHbox = gtk_hbox_new(FALSE, 0);
gtk_container_set_border_width(GTK_CONTAINER(mainHbox), 5);
- gtk_container_add(GTK_CONTAINER(vbox), mainHbox);
+ gtk_box_pack_start(GTK_BOX(vbox), mainHbox, TRUE, TRUE, 0);
gtk_widget_show(mainHbox);
GtkWidget *scrolledWindow = gtk_scrolled_window_new(NULL, NULL);
gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledWindow),
GTK_POLICY_NEVER, GTK_POLICY_NEVER);
- gtk_box_pack_start(GTK_BOX(mainHbox), scrolledWindow, TRUE, TRUE, 0);
+ gtk_box_pack_start(GTK_BOX(mainHbox), scrolledWindow, FALSE, TRUE, 0);
gtk_widget_set_usize(scrolledWindow, 140, 300);
gtk_widget_show(scrolledWindow);
@@ -240,19 +240,16 @@
paneVbox = gtk_vbox_new(FALSE, 0);
gtk_container_set_border_width(GTK_CONTAINER(paneVbox), 5);
- gtk_box_pack_start(GTK_BOX(mainHbox), paneVbox, FALSE, FALSE, 0);
+ gtk_box_pack_start(GTK_BOX(mainHbox), paneVbox, TRUE, TRUE, 0);
gtk_widget_show(paneVbox);
paneStyle = gtk_style_copy(gtk_widget_get_style(mainWindow));
GdkColor temp = paneStyle->bg[GTK_STATE_NORMAL];
paneStyle->bg[GTK_STATE_NORMAL] = paneStyle->fg[GTK_STATE_NORMAL];
paneStyle->fg[GTK_STATE_NORMAL] = temp;
- GdkFont *font =
- gdk_font_load("-adobe-helvetica-bold-r-normal--*-180-*-*-*-*-*-*");
- if (font) {
- gdk_font_unref(paneStyle->font);
- paneStyle->font = font;
- }
+
+ pango_font_description_set_weight(paneStyle->font_desc, PANGO_WEIGHT_BOLD);
+ pango_font_description_set_size(paneStyle->font_desc, 12*PANGO_SCALE);
GtkWidget *stupid_gtk = gtk_event_box_new();
gtk_container_set_border_width(GTK_CONTAINER(stupid_gtk), 0);
@@ -309,41 +306,43 @@
AddPane(opane);
GtkWidget *separator = gtk_hseparator_new();
- gtk_container_add(GTK_CONTAINER(vbox), separator);
+ gtk_box_pack_start(GTK_BOX(vbox), separator, FALSE, FALSE, 0);
gtk_widget_show(separator);
GtkWidget *hbox = gtk_hbox_new(FALSE, 5);
gtk_container_set_border_width(GTK_CONTAINER(hbox), 5);
- gtk_container_add(GTK_CONTAINER(vbox), hbox);
+ gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
gtk_widget_show(hbox);
GtkWidget *button;
- button = gtk_button_new_with_label(" Help ");
- gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0);
+ button = gtk_button_new_from_stock(GTK_STOCK_HELP);
+ gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0);
gtk_signal_connect(GTK_OBJECT(button), "clicked",
GTK_SIGNAL_FUNC(help_click), this);
gtk_widget_show(button);
- applyButton = gtk_button_new_with_label(" Apply ");
- gtk_signal_connect(GTK_OBJECT(applyButton), "clicked",
- GTK_SIGNAL_FUNC(pref_apply_click), this);
- gtk_box_pack_end(GTK_BOX(hbox), applyButton, FALSE, FALSE, 0);
- gtk_widget_show(applyButton);
- gtk_widget_set_sensitive(applyButton, FALSE);
-
- button = gtk_button_new_with_label(" Cancel ");
+ button = gtk_button_new_from_stock(GTK_STOCK_OK);
gtk_signal_connect(GTK_OBJECT(button), "clicked",
- GTK_SIGNAL_FUNC(pref_cancel_click), this);
+ GTK_SIGNAL_FUNC(pref_ok_click), this);
gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0);
gtk_widget_show(button);
- button = gtk_button_new_with_label(" OK ");
+ button = gtk_button_new_from_stock(GTK_STOCK_CANCEL);
gtk_signal_connect(GTK_OBJECT(button), "clicked",
- GTK_SIGNAL_FUNC(pref_ok_click), this);
+ GTK_SIGNAL_FUNC(pref_cancel_click), this);
gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0);
gtk_widget_show(button);
+ applyButton = gtk_button_new_from_stock(GTK_STOCK_APPLY);
+ gtk_signal_connect(GTK_OBJECT(applyButton), "clicked",
+ GTK_SIGNAL_FUNC(pref_apply_click), this);
+ gtk_box_pack_end(GTK_BOX(hbox), applyButton, FALSE, FALSE, 0);
+ gtk_widget_show(applyButton);
+ gtk_widget_set_sensitive(applyButton, FALSE);
+
+
+
SetPane(startPage);
gtk_widget_show(mainWindow);
@@ -879,7 +878,7 @@
static void save_stream_change(GtkWidget *w, GTKPreferenceWindow *p)
{
- char *text = gtk_entry_get_text(GTK_ENTRY(w));
+ char *text = (char*)gtk_entry_get_text(GTK_ENTRY(w));
p->SaveLocalSet(text, false);
}
@@ -906,8 +905,8 @@
void GTKPreferenceWindow::ProxyAddySet()
{
- char *name = gtk_entry_get_text(GTK_ENTRY(proxyAddyBox));
- char *port = gtk_entry_get_text(GTK_ENTRY(proxyPortBox));
+ char *name = (char*)gtk_entry_get_text(GTK_ENTRY(proxyAddyBox));
+ char *port = (char*)gtk_entry_get_text(GTK_ENTRY(proxyPortBox));
proposedValues.proxyServer = name;
if (*port) {
@@ -923,10 +922,10 @@
void GTKPreferenceWindow::AltIPSet()
{
- char *one = gtk_entry_get_text(GTK_ENTRY(ipOneBox));
- char *two = gtk_entry_get_text(GTK_ENTRY(ipTwoBox));
- char *three = gtk_entry_get_text(GTK_ENTRY(ipThreeBox));
- char *four = gtk_entry_get_text(GTK_ENTRY(ipFourBox));
+ char *one = (char*)gtk_entry_get_text(GTK_ENTRY(ipOneBox));
+ char *two = (char*)gtk_entry_get_text(GTK_ENTRY(ipTwoBox));
+ char *three = (char*)gtk_entry_get_text(GTK_ENTRY(ipThreeBox));
+ char *four = (char*)gtk_entry_get_text(GTK_ENTRY(ipFourBox));
if (*one)
proposedValues.alternateIP = one;
else
@@ -1199,7 +1198,6 @@
void GTKPreferenceWindow::SetPMO(int newsel)
{
- newsel = (m_PMOnames->size() - 1) - newsel;
proposedValues.defaultPMO = (*m_PMOnames)[newsel];
gtk_widget_set_sensitive(applyButton, TRUE);
}
@@ -1211,20 +1209,21 @@
if (!GTK_WIDGET_MAPPED(item))
return;
- GSList *glist = gtk_radio_menu_item_group((GtkRadioMenuItem *)
- (((GtkOptionMenu *)p->pmoOptionMenu)->menu_item));
- while (glist && !((GtkCheckMenuItem *)(glist->data))->active) {
- glist = glist->next;
- i++;
- }
+ i=gtk_option_menu_get_history((GtkOptionMenu *)p->pmoOptionMenu);
+// GSList *glist = gtk_radio_menu_item_get_group((GtkRadioMenuItem *)
+// (((GtkOptionMenu *)p->pmoOptionMenu)->menu_item));
+// while (glist && !((GtkCheckMenuItem *)(glist->data))->active) {
+// glist = glist->next;
+// i++;
+// }
p->SetPMO(i);
}
void GTKPreferenceWindow::AlsaSet(void)
{
- char *one = gtk_entry_get_text(GTK_ENTRY(alsaOneBox));
- char *two = gtk_entry_get_text(GTK_ENTRY(alsaTwoBox));
+ char *one = (char*)gtk_entry_get_text(GTK_ENTRY(alsaOneBox));
+ char *two = (char*)gtk_entry_get_text(GTK_ENTRY(alsaTwoBox));
proposedValues.alsaOutput = string(one) + string(":") + string(two);
gtk_widget_set_sensitive(applyButton, TRUE);
@@ -1452,7 +1451,7 @@
static void input_buffer_change(GtkWidget *w, GTKPreferenceWindow *p)
{
- char *text = gtk_entry_get_text(GTK_ENTRY(w));
+ char *text = (char*)gtk_entry_get_text(GTK_ENTRY(w));
int newdata = atoi(text);
int last = p->SetInputBufferSize(newdata);
if (last > 0)
@@ -1472,7 +1471,7 @@
static void output_buffer_change(GtkWidget *w, GTKPreferenceWindow *p)
{
- char *text = gtk_entry_get_text(GTK_ENTRY(w));
+ char *text = (char*)gtk_entry_get_text(GTK_ENTRY(w));
int newdata = atoi(text);
p->SetOutputBufferSize(newdata);
}
@@ -1485,7 +1484,7 @@
static void prestream_buffer_change(GtkWidget *w, GTKPreferenceWindow *p)
{
- char *text = gtk_entry_get_text(GTK_ENTRY(w));
+ char *text = (char*)gtk_entry_get_text(GTK_ENTRY(w));
int newdata = atoi(text);
p->SetPreBufferLength(newdata);
}
@@ -1899,7 +1898,7 @@
static void save_music_change(GtkWidget *w, GTKPreferenceWindow *p)
{
- char *text = gtk_entry_get_text(GTK_ENTRY(w));
+ char *text = (char*)gtk_entry_get_text(GTK_ENTRY(w));
p->SaveMusicSet(text, false);
}
@@ -1932,7 +1931,7 @@
static void browser_change(GtkWidget *w, GTKPreferenceWindow *p)
{
- const char *text = gtk_entry_get_text(GTK_ENTRY(w));
+ const char *text = (char*)gtk_entry_get_text(GTK_ENTRY(w));
p->SetBrowser(text);
}
@@ -1949,7 +1948,7 @@
static void watch_dir_change(GtkWidget *w, GTKPreferenceWindow *p)
{
- char *text = gtk_entry_get_text(GTK_ENTRY(w));
+ char *text = (char*)gtk_entry_get_text(GTK_ENTRY(w));
p->WatchDirSet(text, false);
}
@@ -2187,7 +2186,7 @@
static void cd_path_change(GtkWidget *w, GTKPreferenceWindow *p)
{
- char *text = gtk_entry_get_text(GTK_ENTRY(w));
+ char *text = (char*)gtk_entry_get_text(GTK_ENTRY(w));
p->CDPathSet(text, false);
}
@@ -2201,7 +2200,7 @@
static void mb_server_change(GtkWidget *w, GTKPreferenceWindow *p)
{
- char *text = gtk_entry_get_text(GTK_ENTRY(w));
+ char *text = (char*)gtk_entry_get_text(GTK_ENTRY(w));
p->MBServerSet(text, false);
}
Index: ui/zinf/unix/src/GTKUtility.cpp
===================================================================
RCS file: /cvsroot/zinf/zinf/ui/zinf/unix/src/GTKUtility.cpp,v
retrieving revision 1.6
diff -a -u -r1.6 GTKUtility.cpp
--- ui/zinf/unix/src/GTKUtility.cpp 13 Feb 2003 12:21:37 -0000 1.6
+++ ui/zinf/unix/src/GTKUtility.cpp 5 Aug 2003 08:47:31 -0000
@@ -176,6 +176,7 @@
if (!context->gtkInitialized) {
context->gtkInitialized = true;
g_thread_init(NULL);
+ gdk_threads_init();
gtk_set_locale();
gtk_init(NULL, NULL);
gdk_rgb_init();