| 1 | FIXME crahes when show_tray_icon is 1
|
| 2 |
|
| 3 | diff --git a/meson.build b/meson.build
|
| 4 | index 66b7920..dbb87d7 100644
|
| 5 | |
| 6 | |
| 7 | @@ -22,7 +22,7 @@ config_h.set_quoted('GNOMELOCALEDIR', grip_localedir)
|
| 8 | cc = meson.get_compiler('c')
|
| 9 | cxx = meson.get_compiler('cpp')
|
| 10 |
|
| 11 | -libgtk_dep = dependency('gtk+-2.0', version: '>= 2.14')
|
| 12 | +libgtk_dep = dependency('gtk+-3.0')
|
| 13 | id3_dep = cxx.find_library('libid3', required: get_option('id3lib'))
|
| 14 | curl_dep = dependency('libcurl')
|
| 15 | thread_dep = dependency('threads')
|
| 16 | diff --git a/src/cddev.c b/src/cddev.c
|
| 17 | index 467fbc1..2f27d06 100644
|
| 18 | |
| 19 | |
| 20 | @@ -71,9 +71,9 @@ gboolean CDInitDevice(char *device_name,DiscInfo *disc)
|
| 21 | char devname[256];
|
| 22 | #endif
|
| 23 | #ifndef NON_BLOCKING
|
| 24 | - const int OPEN_MODE = O_RDONLY;
|
| 25 | + const int OPEN_MODE = O_RDONLY|O_CLOEXEC;
|
| 26 | #else
|
| 27 | - const int OPEN_MODE = O_RDONLY|O_NONBLOCK;
|
| 28 | + const int OPEN_MODE = O_RDONLY|O_NONBLOCK|O_CLOEXEC;
|
| 29 | #endif
|
| 30 |
|
| 31 | disc->have_info=FALSE;
|
| 32 | diff --git a/src/cdpar.c b/src/cdpar.c
|
| 33 | index 982aa37..5c311ed 100644
|
| 34 | |
| 35 | |
| 36 | @@ -378,7 +378,7 @@ gboolean CDPRip(char *device,char *generic_scsi_device,int track,
|
| 37 | /* seteuid(getuid());
|
| 38 | setegid(getgid());*/
|
| 39 |
|
| 40 | - out=open(outfile,O_RDWR|O_CREAT|O_TRUNC,0666);
|
| 41 | + out=open(outfile,O_RDWR|O_CREAT|O_TRUNC|O_CLOEXEC,0666);
|
| 42 | if(out==-1){
|
| 43 | Debug(_("Cannot open default output file %s: %s\n"),outfile,
|
| 44 | strerror(errno));
|
| 45 | diff --git a/src/cdplay.c b/src/cdplay.c
|
| 46 | index 0694d60..9cd5fdb 100644
|
| 47 | |
| 48 | |
| 49 | @@ -289,8 +289,7 @@ void ResizeTrackList(GripInfo *ginfo)
|
| 50 |
|
| 51 | column=gtk_tree_view_get_column(GTK_TREE_VIEW(track_list),
|
| 52 | TRACKLIST_TRACK_COL);
|
| 53 | - gtk_tree_view_column_set_fixed_width(column,track_list->
|
| 54 | - allocation.width-tot_width);
|
| 55 | + gtk_tree_view_column_set_fixed_width(column,gtk_widget_get_allocated_width(track_list)-tot_width);
|
| 56 | }
|
| 57 | }
|
| 58 |
|
| 59 | @@ -309,7 +308,7 @@ void MakeTrackPage(GripInfo *ginfo)
|
| 60 | trackpage=MakeNewPage(uinfo->notebook,_("Tracks"));
|
| 61 |
|
| 62 | vbox=gtk_vbox_new(FALSE,0);
|
| 63 | - gtk_container_border_width(GTK_CONTAINER(vbox),3);
|
| 64 | + gtk_container_set_border_width(GTK_CONTAINER(vbox),3);
|
| 65 |
|
| 66 | uinfo->disc_name_label=gtk_label_new("");
|
| 67 | gtk_box_pack_start(GTK_BOX(vbox),uinfo->disc_name_label,FALSE,FALSE,0);
|
| 68 | @@ -322,18 +321,18 @@ void MakeTrackPage(GripInfo *ginfo)
|
| 69 | uinfo->dbinfo_hbox=gtk_hbox_new(FALSE,0);
|
| 70 |
|
| 71 | uinfo->dbinfo_back_button=gtk_button_new_from_stock(GTK_STOCK_GO_BACK);
|
| 72 | - gtk_tooltips_set_tip(MakeToolTip(),uinfo->dbinfo_back_button,
|
| 73 | - _("Select previous CDDB entry."),NULL);
|
| 74 | - gtk_signal_connect(GTK_OBJECT(uinfo->dbinfo_back_button),"clicked",
|
| 75 | - GTK_SIGNAL_FUNC(DoPrevDiscDBEntry),(gpointer)ginfo);
|
| 76 | + gtk_widget_set_tooltip_text(uinfo->dbinfo_back_button,
|
| 77 | + _("Select previous CDDB entry."));
|
| 78 | + g_signal_connect(G_OBJECT(uinfo->dbinfo_back_button),"clicked",
|
| 79 | + G_CALLBACK(DoPrevDiscDBEntry),(gpointer)ginfo);
|
| 80 | gtk_box_pack_start(GTK_BOX(uinfo->dbinfo_hbox),uinfo->dbinfo_back_button,FALSE,FALSE,0);
|
| 81 | gtk_widget_show(uinfo->dbinfo_back_button);
|
| 82 |
|
| 83 | uinfo->dbinfo_forward_button=gtk_button_new_from_stock(GTK_STOCK_GO_FORWARD);
|
| 84 | - gtk_tooltips_set_tip(MakeToolTip(),uinfo->dbinfo_forward_button,
|
| 85 | - _("Select next CDDB entry."),NULL);
|
| 86 | - gtk_signal_connect(GTK_OBJECT(uinfo->dbinfo_forward_button),"clicked",
|
| 87 | - GTK_SIGNAL_FUNC(DoNextDiscDBEntry),(gpointer)ginfo);
|
| 88 | + gtk_widget_set_tooltip_text(uinfo->dbinfo_forward_button,
|
| 89 | + _("Select next CDDB entry."));
|
| 90 | + g_signal_connect(G_OBJECT(uinfo->dbinfo_forward_button),"clicked",
|
| 91 | + G_CALLBACK(DoNextDiscDBEntry),(gpointer)ginfo);
|
| 92 | gtk_box_pack_start(GTK_BOX(uinfo->dbinfo_hbox),uinfo->dbinfo_forward_button,FALSE,FALSE,0);
|
| 93 | gtk_widget_show(uinfo->dbinfo_forward_button);
|
| 94 |
|
| 95 | @@ -506,7 +505,7 @@ static void SetCurrentTrack(GripInfo *ginfo,int track)
|
| 96 | uinfo=&(ginfo->gui_info);
|
| 97 |
|
| 98 | if(track<0) {
|
| 99 | - gtk_label_set(GTK_LABEL(uinfo->current_track_label),"--");
|
| 100 | + gtk_label_set_text(GTK_LABEL(uinfo->current_track_label),"--");
|
| 101 | gtk_entry_set_text(GTK_ENTRY(uinfo->start_sector_entry),"0");
|
| 102 | gtk_entry_set_text(GTK_ENTRY(uinfo->end_sector_entry),"0");
|
| 103 |
|
| 104 | @@ -547,7 +546,7 @@ static void SetCurrentTrack(GripInfo *ginfo,int track)
|
| 105 | track_artist_edit_entry),
|
| 106 | TrackEditChanged,(gpointer)ginfo);
|
| 107 | g_snprintf(buf,80,"%02d",track+1);
|
| 108 | - gtk_label_set(GTK_LABEL(uinfo->current_track_label),buf);
|
| 109 | + gtk_label_set_text(GTK_LABEL(uinfo->current_track_label),buf);
|
| 110 |
|
| 111 | gtk_entry_set_text(GTK_ENTRY(uinfo->start_sector_entry),"0");
|
| 112 |
|
| 113 | @@ -643,7 +642,7 @@ static gboolean TracklistButtonPressed(GtkWidget *widget,GdkEventButton *event,
|
| 114 |
|
| 115 | row=indices[0];
|
| 116 |
|
| 117 | - cols=gtk_tree_view_get_columns(GTK_TREE_VIEW(column->tree_view));
|
| 118 | + cols=gtk_tree_view_get_columns(GTK_TREE_VIEW(gtk_tree_view_column_get_tree_view(column)));
|
| 119 |
|
| 120 | col=g_list_index(cols,(gpointer)column);
|
| 121 |
|
| 122 | @@ -720,13 +719,7 @@ static void ToggleLoop(GtkWidget *widget,gpointer data)
|
| 123 |
|
| 124 | ginfo->playloop=!ginfo->playloop;
|
| 125 |
|
| 126 | - if(ginfo->playloop)
|
| 127 | - CopyPixmap(GTK_PIXMAP(ginfo->gui_info.loop_image),\
|
| 128 | - GTK_PIXMAP(ginfo->gui_info.loop_indicator));
|
| 129 | - else
|
| 130 | - CopyPixmap(GTK_PIXMAP(ginfo->gui_info.noloop_image),
|
| 131 | - GTK_PIXMAP(ginfo->gui_info.loop_indicator));
|
| 132 | -
|
| 133 | + gtk_image_set_from_pixbuf(GTK_IMAGE(ginfo->gui_info.loop_indicator), ginfo->playloop ? ginfo->gui_info.loop_image : ginfo->gui_info.noloop_image);
|
| 134 | }
|
| 135 |
|
| 136 | static void ChangePlayMode(GtkWidget *widget,gpointer data)
|
| 137 | @@ -737,8 +730,7 @@ static void ChangePlayMode(GtkWidget *widget,gpointer data)
|
| 138 |
|
| 139 | ginfo->play_mode=(ginfo->play_mode+1)%PM_LASTMODE;
|
| 140 |
|
| 141 | - CopyPixmap(GTK_PIXMAP(ginfo->gui_info.play_pix[ginfo->play_mode]),
|
| 142 | - GTK_PIXMAP(ginfo->gui_info.play_indicator));
|
| 143 | + gtk_image_set_from_pixbuf(GTK_IMAGE(ginfo->gui_info.play_indicator), ginfo->gui_info.play_pix[ginfo->play_mode]);
|
| 144 |
|
| 145 | gtk_widget_set_sensitive(GTK_WIDGET(ginfo->gui_info.playlist_entry),
|
| 146 | ginfo->play_mode==PM_PLAYLIST);
|
| 147 | @@ -760,7 +752,9 @@ GtkWidget *MakePlayOpts(GripInfo *ginfo)
|
| 148 |
|
| 149 | hbox=gtk_hbox_new(FALSE,2);
|
| 150 |
|
| 151 | - uinfo->playlist_entry=gtk_entry_new_with_max_length(256);
|
| 152 | + uinfo->playlist_entry=gtk_entry_new();
|
| 153 | + gtk_entry_set_max_length(GTK_ENTRY(uinfo->playlist_entry),256);
|
| 154 | +
|
| 155 | g_signal_connect(G_OBJECT(uinfo->playlist_entry),"focus_out_event",
|
| 156 | G_CALLBACK(PlaylistChanged),(gpointer)ginfo);
|
| 157 | gtk_widget_set_sensitive(GTK_WIDGET(uinfo->playlist_entry),
|
| 158 | @@ -768,9 +762,7 @@ GtkWidget *MakePlayOpts(GripInfo *ginfo)
|
| 159 | gtk_box_pack_start(GTK_BOX(hbox),uinfo->playlist_entry,TRUE,TRUE,0);
|
| 160 | gtk_widget_show(uinfo->playlist_entry);
|
| 161 |
|
| 162 | - uinfo->play_indicator=NewBlankPixmap(uinfo->app);
|
| 163 | - CopyPixmap(GTK_PIXMAP(uinfo->play_pix[ginfo->play_mode]),
|
| 164 | - GTK_PIXMAP(uinfo->play_indicator));
|
| 165 | + uinfo->play_indicator=gtk_image_new_from_pixbuf(uinfo->play_pix[ginfo->play_mode]);
|
| 166 |
|
| 167 | button=gtk_button_new();
|
| 168 | gtk_container_add(GTK_CONTAINER(button),uinfo->play_indicator);
|
| 169 | @@ -779,18 +771,11 @@ GtkWidget *MakePlayOpts(GripInfo *ginfo)
|
| 170 | gtk_box_pack_start(GTK_BOX(hbox),button,TRUE,TRUE,0);
|
| 171 | g_signal_connect(G_OBJECT(button),"clicked",
|
| 172 | G_CALLBACK(ChangePlayMode),(gpointer)ginfo);
|
| 173 | - gtk_tooltips_set_tip(MakeToolTip(),button,
|
| 174 | - _("Rotate play mode"),NULL);
|
| 175 | + gtk_widget_set_tooltip_text(button,
|
| 176 | + _("Rotate play mode"));
|
| 177 | gtk_widget_show(button);
|
| 178 |
|
| 179 | - uinfo->loop_indicator=NewBlankPixmap(uinfo->app);
|
| 180 | -
|
| 181 | - if(ginfo->playloop)
|
| 182 | - CopyPixmap(GTK_PIXMAP(uinfo->loop_image),
|
| 183 | - GTK_PIXMAP(uinfo->loop_indicator));
|
| 184 | - else
|
| 185 | - CopyPixmap(GTK_PIXMAP(uinfo->noloop_image),
|
| 186 | - GTK_PIXMAP(uinfo->loop_indicator));
|
| 187 | + uinfo->loop_indicator=gtk_image_new_from_pixbuf(ginfo->playloop ? uinfo->loop_image : uinfo->noloop_image);
|
| 188 |
|
| 189 | button=gtk_button_new();
|
| 190 | gtk_container_add(GTK_CONTAINER(button),uinfo->loop_indicator);
|
| 191 | @@ -799,8 +784,8 @@ GtkWidget *MakePlayOpts(GripInfo *ginfo)
|
| 192 | gtk_box_pack_start(GTK_BOX(hbox),button,TRUE,TRUE,0);
|
| 193 | g_signal_connect(G_OBJECT(button),"clicked",
|
| 194 | G_CALLBACK(ToggleLoop),(gpointer)ginfo);
|
| 195 | - gtk_tooltips_set_tip(MakeToolTip(),button,
|
| 196 | - _("Toggle loop play"),NULL);
|
| 197 | + gtk_widget_set_tooltip_text(button,
|
| 198 | + _("Toggle loop play"));
|
| 199 | gtk_widget_show(button);
|
| 200 |
|
| 201 | gtk_container_add(GTK_CONTAINER(ebox),hbox);
|
| 202 | @@ -816,7 +801,7 @@ GtkWidget *MakeControls(GripInfo *ginfo)
|
| 203 | GtkWidget *indicator_box;
|
| 204 | GtkWidget *button;
|
| 205 | GtkWidget *ebox,*lcdbox;
|
| 206 | - GtkObject *adj;
|
| 207 | + GtkAdjustment *adj;
|
| 208 | int mycpu;
|
| 209 |
|
| 210 | uinfo=&(ginfo->gui_info);
|
| 211 | @@ -825,10 +810,10 @@ GtkWidget *MakeControls(GripInfo *ginfo)
|
| 212 | gtk_widget_set_style(ebox,uinfo->style_wb);
|
| 213 |
|
| 214 | vbox=gtk_vbox_new(FALSE,0);
|
| 215 | - gtk_container_border_width(GTK_CONTAINER(vbox),0);
|
| 216 | + gtk_container_set_border_width(GTK_CONTAINER(vbox),0);
|
| 217 |
|
| 218 | vbox3=gtk_vbox_new(FALSE,2);
|
| 219 | - gtk_container_border_width(GTK_CONTAINER(vbox3),2);
|
| 220 | + gtk_container_set_border_width(GTK_CONTAINER(vbox3),2);
|
| 221 |
|
| 222 | lcdbox=gtk_event_box_new();
|
| 223 | g_signal_connect(G_OBJECT(lcdbox),"button_press_event",
|
| 224 | @@ -849,7 +834,7 @@ GtkWidget *MakeControls(GripInfo *ginfo)
|
| 225 | gtk_widget_show(imagebox);
|
| 226 |
|
| 227 | hbox=gtk_hbox_new(TRUE,0);
|
| 228 | - gtk_container_border_width(GTK_CONTAINER(hbox),0);
|
| 229 | + gtk_container_set_border_width(GTK_CONTAINER(hbox),0);
|
| 230 |
|
| 231 | uinfo->current_track_label=gtk_label_new("--");
|
| 232 | gtk_box_pack_start(GTK_BOX(hbox),uinfo->current_track_label,FALSE,FALSE,0);
|
| 233 | @@ -872,25 +857,25 @@ GtkWidget *MakeControls(GripInfo *ginfo)
|
| 234 |
|
| 235 | indicator_box=gtk_hbox_new(TRUE,0);
|
| 236 |
|
| 237 | - uinfo->rip_indicator=NewBlankPixmap(GTK_WIDGET(uinfo->app));
|
| 238 | + uinfo->rip_indicator=gtk_image_new_from_pixbuf(uinfo->empty_image);
|
| 239 | gtk_box_pack_start(GTK_BOX(indicator_box),uinfo->rip_indicator,TRUE,TRUE,0);
|
| 240 | gtk_widget_show(uinfo->rip_indicator);
|
| 241 |
|
| 242 | - uinfo->lcd_smile_indicator=NewBlankPixmap(GTK_WIDGET(uinfo->app));
|
| 243 | - gtk_tooltips_set_tip(MakeToolTip(),uinfo->lcd_smile_indicator,
|
| 244 | - _("Rip status"),NULL);
|
| 245 | + uinfo->lcd_smile_indicator=gtk_image_new_from_pixbuf(uinfo->empty_image);
|
| 246 | + gtk_widget_set_tooltip_text(uinfo->lcd_smile_indicator,
|
| 247 | + _("Rip status"));
|
| 248 | gtk_box_pack_start(GTK_BOX(indicator_box),uinfo->lcd_smile_indicator,
|
| 249 | TRUE,TRUE,0);
|
| 250 | gtk_widget_show(uinfo->lcd_smile_indicator);
|
| 251 |
|
| 252 | for(mycpu=0;mycpu<ginfo->num_cpu;mycpu++){
|
| 253 | - uinfo->mp3_indicator[mycpu]=NewBlankPixmap(GTK_WIDGET(uinfo->app));
|
| 254 | + uinfo->mp3_indicator[mycpu]=gtk_image_new_from_pixbuf(uinfo->empty_image);
|
| 255 | gtk_box_pack_start(GTK_BOX(indicator_box),
|
| 256 | uinfo->mp3_indicator[mycpu],TRUE,TRUE,0);
|
| 257 | gtk_widget_show(uinfo->mp3_indicator[mycpu]);
|
| 258 | }
|
| 259 |
|
| 260 | - uinfo->discdb_indicator=NewBlankPixmap(GTK_WIDGET(uinfo->app));
|
| 261 | + uinfo->discdb_indicator=gtk_image_new_from_pixbuf(uinfo->empty_image);
|
| 262 | gtk_box_pack_start(GTK_BOX(indicator_box),uinfo->discdb_indicator,
|
| 263 | TRUE,TRUE,0);
|
| 264 | gtk_widget_show(uinfo->discdb_indicator);
|
| 265 | @@ -922,16 +907,16 @@ GtkWidget *MakeControls(GripInfo *ginfo)
|
| 266 | gtk_widget_show(vbox3);
|
| 267 |
|
| 268 | adj=gtk_adjustment_new((gfloat)ginfo->volume,0.0,255.0,1.0,1.0,0.0);
|
| 269 | - g_signal_connect(adj,"value_changed",
|
| 270 | + g_signal_connect(G_OBJECT(adj),"value_changed",
|
| 271 | G_CALLBACK(SetVolume),(gpointer)ginfo);
|
| 272 | - uinfo->volume_control=gtk_hscale_new(GTK_ADJUSTMENT(adj));
|
| 273 | + uinfo->volume_control=gtk_hscale_new(adj);
|
| 274 |
|
| 275 | gtk_scale_set_draw_value(GTK_SCALE(uinfo->volume_control),FALSE);
|
| 276 | gtk_widget_set_name(uinfo->volume_control,"darkgrey");
|
| 277 | gtk_box_pack_start(GTK_BOX(vbox),uinfo->volume_control,FALSE,FALSE,0);
|
| 278 |
|
| 279 | /* CDGetVolume(cd_desc,&vol);
|
| 280 | - gtk_adjustment_set_value(GTK_ADJUSTMENT(adj),(vol.vol_front.left+
|
| 281 | + gtk_adjustment_set_value(adj,(vol.vol_front.left+
|
| 282 | vol.vol_front.right)/2);*/
|
| 283 |
|
| 284 | if(uinfo->volvis) gtk_widget_show(uinfo->volume_control);
|
| 285 | @@ -944,8 +929,8 @@ GtkWidget *MakeControls(GripInfo *ginfo)
|
| 286 | gtk_widget_set_style(button,uinfo->style_dark_grey);
|
| 287 | g_signal_connect(G_OBJECT(button),"clicked",
|
| 288 | G_CALLBACK(PlayTrackCB),(gpointer)ginfo);
|
| 289 | - gtk_tooltips_set_tip(MakeToolTip(),button,
|
| 290 | - _("Play track / Pause play"),NULL);
|
| 291 | + gtk_widget_set_tooltip_text(button,
|
| 292 | + _("Play track / Pause play"));
|
| 293 | gtk_box_pack_start(GTK_BOX(hbox),button,TRUE,TRUE,0);
|
| 294 | gtk_widget_show(button);
|
| 295 |
|
| 296 | @@ -955,8 +940,8 @@ GtkWidget *MakeControls(GripInfo *ginfo)
|
| 297 | G_CALLBACK(RewindCB),(gpointer)ginfo);
|
| 298 | g_signal_connect(G_OBJECT(button),"released",
|
| 299 | G_CALLBACK(RewindCB),(gpointer)ginfo);
|
| 300 | - gtk_tooltips_set_tip(MakeToolTip(),button,
|
| 301 | - _("Rewind"),NULL);
|
| 302 | + gtk_widget_set_tooltip_text(button,
|
| 303 | + _("Rewind"));
|
| 304 | gtk_box_pack_start(GTK_BOX(hbox),button,TRUE,TRUE,0);
|
| 305 | gtk_widget_show(button);
|
| 306 |
|
| 307 | @@ -966,8 +951,8 @@ GtkWidget *MakeControls(GripInfo *ginfo)
|
| 308 | G_CALLBACK(FastFwdCB),(gpointer)ginfo);
|
| 309 | g_signal_connect(G_OBJECT(button),"released",
|
| 310 | G_CALLBACK(FastFwdCB),(gpointer)ginfo);
|
| 311 | - gtk_tooltips_set_tip(MakeToolTip(),button,
|
| 312 | - _("FastForward"),NULL);
|
| 313 | + gtk_widget_set_tooltip_text(button,
|
| 314 | + _("FastForward"));
|
| 315 | gtk_box_pack_start(GTK_BOX(hbox),button,TRUE,TRUE,0);
|
| 316 | gtk_widget_show(button);
|
| 317 |
|
| 318 | @@ -976,8 +961,8 @@ GtkWidget *MakeControls(GripInfo *ginfo)
|
| 319 | gtk_box_pack_start(GTK_BOX(hbox),button,TRUE,TRUE,0);
|
| 320 | g_signal_connect(G_OBJECT(button),"clicked",
|
| 321 | G_CALLBACK(PrevTrackCB),(gpointer)ginfo);
|
| 322 | - gtk_tooltips_set_tip(MakeToolTip(),button,
|
| 323 | - _("Go to previous track"),NULL);
|
| 324 | + gtk_widget_set_tooltip_text(button,
|
| 325 | + _("Go to previous track"));
|
| 326 | gtk_widget_show(button);
|
| 327 |
|
| 328 | button=ImageButton(GTK_WIDGET(uinfo->app),uinfo->nexttrk_image);
|
| 329 | @@ -985,8 +970,8 @@ GtkWidget *MakeControls(GripInfo *ginfo)
|
| 330 | gtk_box_pack_start(GTK_BOX(hbox),button,TRUE,TRUE,0);
|
| 331 | g_signal_connect(G_OBJECT(button),"clicked",
|
| 332 | G_CALLBACK(NextTrackCB),(gpointer)ginfo);
|
| 333 | - gtk_tooltips_set_tip(MakeToolTip(),button,
|
| 334 | - _("Go to next track"),NULL);
|
| 335 | + gtk_widget_set_tooltip_text(button,
|
| 336 | + _("Go to next track"));
|
| 337 | gtk_widget_show(button);
|
| 338 |
|
| 339 | button=ImageButton(GTK_WIDGET(uinfo->app),uinfo->progtrack_image);
|
| 340 | @@ -994,8 +979,8 @@ GtkWidget *MakeControls(GripInfo *ginfo)
|
| 341 | gtk_box_pack_start(GTK_BOX(hbox),button,TRUE,TRUE,0);
|
| 342 | g_signal_connect(G_OBJECT(button),"clicked",
|
| 343 | G_CALLBACK(ToggleProg),(gpointer)ginfo);
|
| 344 | - gtk_tooltips_set_tip(MakeToolTip(),button,
|
| 345 | - _("Toggle play mode options"),NULL);
|
| 346 | + gtk_widget_set_tooltip_text(button,
|
| 347 | + _("Toggle play mode options"));
|
| 348 | gtk_widget_show(button);
|
| 349 |
|
| 350 | if(ginfo->changer_slots>1) {
|
| 351 | @@ -1004,8 +989,8 @@ GtkWidget *MakeControls(GripInfo *ginfo)
|
| 352 | gtk_box_pack_start(GTK_BOX(hbox),button,TRUE,TRUE,0);
|
| 353 | g_signal_connect(G_OBJECT(button),"clicked",
|
| 354 | G_CALLBACK(NextDisc),(gpointer)ginfo);
|
| 355 | - gtk_tooltips_set_tip(MakeToolTip(),button,
|
| 356 | - _("Next Disc"),NULL);
|
| 357 | + gtk_widget_set_tooltip_text(button,
|
| 358 | + _("Next Disc"));
|
| 359 | gtk_widget_show(button);
|
| 360 | }
|
| 361 |
|
| 362 | @@ -1018,8 +1003,8 @@ GtkWidget *MakeControls(GripInfo *ginfo)
|
| 363 | gtk_widget_set_style(button,uinfo->style_dark_grey);
|
| 364 | g_signal_connect(G_OBJECT(button),"clicked",
|
| 365 | G_CALLBACK(StopPlayCB),(gpointer)ginfo);
|
| 366 | - gtk_tooltips_set_tip(MakeToolTip(),button,
|
| 367 | - _("Stop play"),NULL);
|
| 368 | + gtk_widget_set_tooltip_text(button,
|
| 369 | + _("Stop play"));
|
| 370 | gtk_box_pack_start(GTK_BOX(hbox),button,TRUE,TRUE,0);
|
| 371 | gtk_widget_show(button);
|
| 372 |
|
| 373 | @@ -1028,8 +1013,8 @@ GtkWidget *MakeControls(GripInfo *ginfo)
|
| 374 | gtk_box_pack_start(GTK_BOX(hbox),button,TRUE,TRUE,0);
|
| 375 | g_signal_connect(G_OBJECT(button),"clicked",
|
| 376 | G_CALLBACK(EjectDisc),(gpointer)ginfo);
|
| 377 | - gtk_tooltips_set_tip(MakeToolTip(),button,
|
| 378 | - _("Eject disc"),NULL);
|
| 379 | + gtk_widget_set_tooltip_text(button,
|
| 380 | + _("Eject disc"));
|
| 381 | gtk_widget_show(button);
|
| 382 |
|
| 383 | button=ImageButton(GTK_WIDGET(uinfo->app),uinfo->cdscan_image);
|
| 384 | @@ -1037,16 +1022,16 @@ GtkWidget *MakeControls(GripInfo *ginfo)
|
| 385 | gtk_box_pack_start(GTK_BOX(hbox),button,TRUE,TRUE,0);
|
| 386 | g_signal_connect(G_OBJECT(button),"clicked",
|
| 387 | G_CALLBACK(ScanDisc),(gpointer)ginfo);
|
| 388 | - gtk_tooltips_set_tip(MakeToolTip(),button,
|
| 389 | - _("Scan Disc Contents"),NULL);
|
| 390 | + gtk_widget_set_tooltip_text(button,
|
| 391 | + _("Scan Disc Contents"));
|
| 392 | gtk_widget_show(button);
|
| 393 |
|
| 394 | button=ImageButton(GTK_WIDGET(uinfo->app),uinfo->vol_image);
|
| 395 | gtk_widget_set_style(button,uinfo->style_dark_grey);
|
| 396 | g_signal_connect(G_OBJECT(button),"clicked",
|
| 397 | G_CALLBACK(ToggleVol),(gpointer)ginfo);
|
| 398 | - gtk_tooltips_set_tip(MakeToolTip(),button,
|
| 399 | - _("Toggle Volume Control"),NULL);
|
| 400 | + gtk_widget_set_tooltip_text(button,
|
| 401 | + _("Toggle Volume Control"));
|
| 402 | gtk_box_pack_start(GTK_BOX(hbox),button,TRUE,TRUE,0);
|
| 403 | gtk_widget_show(button);
|
| 404 |
|
| 405 | @@ -1054,8 +1039,8 @@ GtkWidget *MakeControls(GripInfo *ginfo)
|
| 406 | gtk_widget_set_style(button,uinfo->style_dark_grey);
|
| 407 | g_signal_connect(G_OBJECT(button),"clicked",
|
| 408 | G_CALLBACK(ToggleTrackEdit),(gpointer)ginfo);
|
| 409 | - gtk_tooltips_set_tip(MakeToolTip(),button,
|
| 410 | - _("Toggle disc editor"),NULL);
|
| 411 | + gtk_widget_set_tooltip_text(button,
|
| 412 | + _("Toggle disc editor"));
|
| 413 | gtk_box_pack_start(GTK_BOX(hbox),button,TRUE,TRUE,0);
|
| 414 | gtk_widget_show(button);
|
| 415 |
|
| 416 | @@ -1064,8 +1049,8 @@ GtkWidget *MakeControls(GripInfo *ginfo)
|
| 417 | gtk_widget_set_style(button,uinfo->style_dark_grey);
|
| 418 | g_signal_connect(G_OBJECT(button),"clicked",
|
| 419 | G_CALLBACK(DiscDBToggle),(gpointer)ginfo);
|
| 420 | - gtk_tooltips_set_tip(MakeToolTip(),button,
|
| 421 | - _("Initiate/abort DiscDB lookup"),NULL);
|
| 422 | + gtk_widget_set_tooltip_text(button,
|
| 423 | + _("Initiate/abort DiscDB lookup"));
|
| 424 | gtk_box_pack_start(GTK_BOX(hbox),button,TRUE,TRUE,0);
|
| 425 | gtk_widget_show(button);
|
| 426 | }
|
| 427 | @@ -1074,15 +1059,15 @@ GtkWidget *MakeControls(GripInfo *ginfo)
|
| 428 | gtk_widget_set_style(button,uinfo->style_dark_grey);
|
| 429 | g_signal_connect(G_OBJECT(button),"clicked",
|
| 430 | G_CALLBACK(MinMax),(gpointer)ginfo);
|
| 431 | - gtk_tooltips_set_tip(MakeToolTip(),button,
|
| 432 | - _("Toggle track display"),NULL);
|
| 433 | + gtk_widget_set_tooltip_text(button,
|
| 434 | + _("Toggle track display"));
|
| 435 | gtk_box_pack_start(GTK_BOX(hbox),button,TRUE,TRUE,0);
|
| 436 | gtk_widget_show(button);
|
| 437 |
|
| 438 | button=ImageButton(GTK_WIDGET(uinfo->app),uinfo->quit_image);
|
| 439 | gtk_widget_set_style(button,uinfo->style_dark_grey);
|
| 440 | - gtk_tooltips_set_tip(MakeToolTip(),button,
|
| 441 | - _("Exit Grip"),NULL);
|
| 442 | + gtk_widget_set_tooltip_text(button,
|
| 443 | + _("Exit Grip"));
|
| 444 |
|
| 445 | gtk_box_pack_start(GTK_BOX(hbox),button,TRUE,TRUE,0);
|
| 446 | g_signal_connect(G_OBJECT(button),"clicked",
|
| 447 | @@ -1121,15 +1106,13 @@ void MinMax(GtkWidget *widget,gpointer data)
|
| 448 | uinfo=&(ginfo->gui_info);
|
| 449 |
|
| 450 | if(uinfo->minimized) {
|
| 451 | - gtk_container_border_width(GTK_CONTAINER(uinfo->winbox),3);
|
| 452 | + gtk_container_set_border_width(GTK_CONTAINER(uinfo->winbox),3);
|
| 453 | gtk_box_set_child_packing(GTK_BOX(uinfo->winbox),
|
| 454 | uinfo->controls,FALSE,FALSE,0,GTK_PACK_START);
|
| 455 | gtk_widget_show(uinfo->notebook);
|
| 456 |
|
| 457 | - CopyPixmap(GTK_PIXMAP(uinfo->lcd_smile_indicator),
|
| 458 | - GTK_PIXMAP(uinfo->smile_indicator));
|
| 459 | - CopyPixmap(GTK_PIXMAP(uinfo->empty_image),
|
| 460 | - GTK_PIXMAP(uinfo->lcd_smile_indicator));
|
| 461 | + gtk_image_set_from_pixbuf(GTK_IMAGE(uinfo->smile_indicator), uinfo->smile_pix[ginfo->rip_smile_level]);
|
| 462 | + gtk_image_set_from_pixbuf(GTK_IMAGE(uinfo->lcd_smile_indicator), uinfo->empty_image);
|
| 463 |
|
| 464 | gtk_widget_set_size_request(GTK_WIDGET(uinfo->app),
|
| 465 | WINWIDTH,WINHEIGHT);
|
| 466 | @@ -1139,14 +1122,14 @@ void MinMax(GtkWidget *widget,gpointer data)
|
| 467 | uinfo->win_height);
|
| 468 | }
|
| 469 | else {
|
| 470 | - gtk_container_border_width(GTK_CONTAINER(uinfo->winbox),0);
|
| 471 | + gtk_container_set_border_width(GTK_CONTAINER(uinfo->winbox),0);
|
| 472 | gtk_box_set_child_packing(GTK_BOX(uinfo->winbox),uinfo->controls,
|
| 473 | TRUE,TRUE,0,GTK_PACK_START);
|
| 474 |
|
| 475 | gtk_widget_hide(uinfo->notebook);
|
| 476 |
|
| 477 | - CopyPixmap(GTK_PIXMAP(uinfo->smile_indicator),
|
| 478 | - GTK_PIXMAP(uinfo->lcd_smile_indicator));
|
| 479 | + gtk_image_set_from_pixbuf(GTK_IMAGE(uinfo->lcd_smile_indicator), uinfo->smile_pix[ginfo->rip_smile_level]);
|
| 480 | + gtk_image_set_from_pixbuf(GTK_IMAGE(uinfo->smile_indicator), uinfo->empty_image);
|
| 481 |
|
| 482 | if(uinfo->track_edit_visible) ToggleTrackEdit(NULL,(gpointer)ginfo);
|
| 483 | if(uinfo->volvis) ToggleVol(NULL,(gpointer)ginfo);
|
| 484 | @@ -1236,7 +1219,7 @@ static void SetVolume(GtkWidget *widget,gpointer data)
|
| 485 | ginfo=(GripInfo *)data;
|
| 486 |
|
| 487 | ginfo->volume=vol.vol_front.left=vol.vol_front.right=
|
| 488 | - vol.vol_back.left=vol.vol_back.right=GTK_ADJUSTMENT(widget)->value;
|
| 489 | + vol.vol_back.left=vol.vol_back.right=gtk_adjustment_get_value(GTK_ADJUSTMENT(widget));
|
| 490 |
|
| 491 | CDSetVolume(&(ginfo->disc),&vol);
|
| 492 | }
|
| 493 | @@ -1702,11 +1685,11 @@ void UpdateDisplay(GripInfo *ginfo)
|
| 494 | &uinfo->win_height);
|
| 495 |
|
| 496 | if(old_width &&
|
| 497 | - (old_width != uinfo->track_list->allocation.width)) {
|
| 498 | + (old_width != gtk_widget_get_allocated_width(uinfo->track_list))) {
|
| 499 | ResizeTrackList(ginfo);
|
| 500 | }
|
| 501 |
|
| 502 | - old_width=uinfo->track_list->allocation.width;
|
| 503 | + old_width=gtk_widget_get_allocated_width(uinfo->track_list);
|
| 504 | }
|
| 505 | else {
|
| 506 | gtk_window_get_size(GTK_WINDOW(uinfo->app),&uinfo->win_width_min,
|
| 507 | @@ -1718,8 +1701,7 @@ void UpdateDisplay(GripInfo *ginfo)
|
| 508 | discdb_counter++;
|
| 509 | }
|
| 510 | else
|
| 511 | - CopyPixmap(GTK_PIXMAP(uinfo->discdb_pix[discdb_counter++%2]),
|
| 512 | - GTK_PIXMAP(uinfo->discdb_indicator));
|
| 513 | + gtk_image_set_from_pixbuf(GTK_IMAGE(uinfo->discdb_indicator), uinfo->discdb_pix[discdb_counter++%2]);
|
| 514 |
|
| 515 | if(!ginfo->update_required) {
|
| 516 | if(ginfo->have_disc) {
|
| 517 | @@ -1792,7 +1774,7 @@ void UpdateDisplay(GripInfo *ginfo)
|
| 518 | }
|
| 519 |
|
| 520 | g_snprintf(buf,80,_("Current sector: %6d"),frames);
|
| 521 | - gtk_label_set(GTK_LABEL(uinfo->play_sector_label),buf);
|
| 522 | + gtk_label_set_text(GTK_LABEL(uinfo->play_sector_label),buf);
|
| 523 |
|
| 524 | if(uinfo->time_display_mode == TIME_MODE_LEFT_TRACK ||
|
| 525 | uinfo->time_display_mode == TIME_MODE_LEFT_DISC)
|
| 526 | @@ -1814,7 +1796,7 @@ void UpdateDisplay(GripInfo *ginfo)
|
| 527 |
|
| 528 | frames=secs=mins=0;
|
| 529 | g_snprintf(buf,80,_("Current sector: %6d"),frames);
|
| 530 | - gtk_label_set(GTK_LABEL(uinfo->play_sector_label),buf);
|
| 531 | + gtk_label_set_text(GTK_LABEL(uinfo->play_sector_label),buf);
|
| 532 |
|
| 533 | strcpy(buf,"00:00");
|
| 534 |
|
| 535 | @@ -1824,10 +1806,10 @@ void UpdateDisplay(GripInfo *ginfo)
|
| 536 | else return;
|
| 537 | }
|
| 538 |
|
| 539 | - gtk_label_set(GTK_LABEL(uinfo->play_time_label),buf);
|
| 540 | + gtk_label_set_text(GTK_LABEL(uinfo->play_time_label),buf);
|
| 541 | g_snprintf(icon_buf,sizeof(icon_buf),"%02d %s %s",
|
| 542 | disc->curr_track,buf,PACKAGE);
|
| 543 | - gdk_window_set_icon_name(uinfo->app->window,icon_buf);
|
| 544 | + // FIXME gdk_window_set_icon_name(GDK_WINDOW(uinfo->app),icon_buf);
|
| 545 | }
|
| 546 | }
|
| 547 |
|
| 548 | @@ -1842,11 +1824,10 @@ void UpdateDisplay(GripInfo *ginfo)
|
| 549 | g_snprintf(icon_buf, sizeof(icon_buf),"%02d %s %s",
|
| 550 | disc->curr_track,buf,PACKAGE);
|
| 551 |
|
| 552 | - gtk_label_set(GTK_LABEL(uinfo->play_time_label),buf);
|
| 553 | + gtk_label_set_text(GTK_LABEL(uinfo->play_time_label),buf);
|
| 554 |
|
| 555 | if(!ginfo->looking_up) {
|
| 556 | - CopyPixmap(GTK_PIXMAP(uinfo->empty_image),
|
| 557 | - GTK_PIXMAP(uinfo->discdb_indicator));
|
| 558 | + gtk_image_set_from_pixbuf(GTK_IMAGE(uinfo->discdb_indicator), uinfo->empty_image);
|
| 559 |
|
| 560 | if(ginfo->auto_rip&&ginfo->is_new_disc) {
|
| 561 | ClickColumn(NULL,ginfo);
|
| 562 | @@ -1862,13 +1843,13 @@ void UpdateDisplay(GripInfo *ginfo)
|
| 563 | SelectRow(ginfo,disc->curr_track-1);
|
| 564 | }
|
| 565 | else {
|
| 566 | - gtk_label_set(GTK_LABEL(uinfo->play_time_label),"--:--");
|
| 567 | + gtk_label_set_text(GTK_LABEL(uinfo->play_time_label),"--:--");
|
| 568 | strncpy(icon_buf,PACKAGE,sizeof(icon_buf));
|
| 569 |
|
| 570 | SetCurrentTrack(ginfo,-1);
|
| 571 | }
|
| 572 | - if(uinfo->app->window)
|
| 573 | - gdk_window_set_icon_name(uinfo->app->window,icon_buf);
|
| 574 | + /* FIXME if(GDK_WINDOW(uinfo->app))
|
| 575 | + gdk_window_set_icon_name(GDK_WINDOW(uinfo->app),icon_buf); */
|
| 576 | }
|
| 577 | }
|
| 578 |
|
| 579 | diff --git a/src/common.h b/src/common.h
|
| 580 | index 5f2ea44..36f8a60 100644
|
| 581 | |
| 582 | |
| 583 | @@ -27,14 +27,11 @@
|
| 584 | void Debug(char *fmt,...);
|
| 585 |
|
| 586 | /* Routines from uihelper.c */
|
| 587 | -GtkTooltips *MakeToolTip(void);
|
| 588 | GdkColor *MakeColor(int red,int green,int blue);
|
| 589 | GtkStyle *MakeStyle(GdkColor *fg,GdkColor *bg,gboolean do_grade);
|
| 590 | GtkWidget *BuildMenuItemXpm(GtkWidget *xpm, gchar *text);
|
| 591 | GtkWidget *BuildMenuItem(gchar *impath, gchar *text, gboolean stock);
|
| 592 | -GtkWidget *NewBlankPixmap(GtkWidget *widget);
|
| 593 | -GtkWidget *ImageButton(GtkWidget *widget,GtkWidget *image);
|
| 594 | -GtkWidget *Loadxpm(GtkWidget *widget,char **xpm);
|
| 595 | -void CopyPixmap(GtkPixmap *src,GtkPixmap *dest);
|
| 596 | -gint SizeInDubs(GdkFont *font,gint numchars);
|
| 597 | +GdkPixbuf *NewBlankPixmap(GtkWidget *widget);
|
| 598 | +GtkWidget *ImageButton(GtkWidget *widget,GdkPixbuf *image);
|
| 599 | +GdkPixbuf *Loadxpm(GtkWidget *widget,char **xpm);
|
| 600 | void UpdateGTK(void);
|
| 601 | diff --git a/src/dialog.c b/src/dialog.c
|
| 602 | index b16a9d3..9ddc655 100644
|
| 603 | |
| 604 | |
| 605 | @@ -70,9 +70,9 @@ gint ConfirmDialog(GtkWindow *parent, char *msg)
|
| 606 | return (result == GTK_RESPONSE_OK) ? 0 : 1;
|
| 607 | }
|
| 608 |
|
| 609 | -void BoolDialog(char *question,char *yes,GtkSignalFunc yesfunc,
|
| 610 | +void BoolDialog(char *question,char *yes,GCallback yesfunc,
|
| 611 | gpointer yesdata,
|
| 612 | - char *no,GtkSignalFunc nofunc,gpointer nodata)
|
| 613 | + char *no,GCallback nofunc,gpointer nodata)
|
| 614 | {
|
| 615 | GtkWidget *dialog;
|
| 616 | GtkWidget *label;
|
| 617 | @@ -82,32 +82,32 @@ void BoolDialog(char *question,char *yes,GtkSignalFunc yesfunc,
|
| 618 | dialog=gtk_dialog_new();
|
| 619 | gtk_window_set_title(GTK_WINDOW(dialog),_("System Message"));
|
| 620 |
|
| 621 | - gtk_container_border_width(GTK_CONTAINER(GTK_DIALOG(dialog)->vbox),5);
|
| 622 | + gtk_container_set_border_width(GTK_CONTAINER(gtk_dialog_get_content_area(GTK_DIALOG(dialog))),5);
|
| 623 |
|
| 624 | label=gtk_label_new(question);
|
| 625 | - gtk_box_pack_start(GTK_BOX(GTK_DIALOG(dialog)->vbox),label,TRUE,TRUE,0);
|
| 626 | + gtk_box_pack_start(GTK_BOX(gtk_dialog_get_content_area(GTK_DIALOG(dialog))),label,TRUE,TRUE,0);
|
| 627 | gtk_widget_show(label);
|
| 628 |
|
| 629 | yesbutton=gtk_button_new_with_label(yes);
|
| 630 | if(yesfunc)
|
| 631 | - gtk_signal_connect(GTK_OBJECT(yesbutton),"clicked",
|
| 632 | + g_signal_connect(G_OBJECT(yesbutton),"clicked",
|
| 633 | yesfunc,yesdata);
|
| 634 | - gtk_signal_connect_object(GTK_OBJECT(yesbutton),"clicked",
|
| 635 | - GTK_SIGNAL_FUNC(gtk_widget_destroy),
|
| 636 | - GTK_OBJECT(dialog));
|
| 637 | - gtk_box_pack_start(GTK_BOX(GTK_DIALOG(dialog)->action_area),yesbutton,
|
| 638 | + g_signal_connect_swapped(G_OBJECT(yesbutton),"clicked",
|
| 639 | + G_CALLBACK(gtk_widget_destroy),
|
| 640 | + G_OBJECT(dialog));
|
| 641 | + gtk_box_pack_start(GTK_BOX(gtk_dialog_get_action_area(GTK_DIALOG(dialog))),yesbutton,
|
| 642 | TRUE,TRUE,0);
|
| 643 | gtk_widget_show(yesbutton);
|
| 644 |
|
| 645 | if(no) {
|
| 646 | nobutton=gtk_button_new_with_label(no);
|
| 647 | if(nofunc)
|
| 648 | - gtk_signal_connect(GTK_OBJECT(nobutton),"clicked",
|
| 649 | + g_signal_connect(G_OBJECT(nobutton),"clicked",
|
| 650 | nofunc,nodata);
|
| 651 | - gtk_signal_connect_object(GTK_OBJECT(nobutton),"clicked",
|
| 652 | - GTK_SIGNAL_FUNC(gtk_widget_destroy),
|
| 653 | - GTK_OBJECT(dialog));
|
| 654 | - gtk_box_pack_start(GTK_BOX(GTK_DIALOG(dialog)->action_area),nobutton,
|
| 655 | + g_signal_connect_swapped(G_OBJECT(nobutton),"clicked",
|
| 656 | + G_CALLBACK(gtk_widget_destroy),
|
| 657 | + G_OBJECT(dialog));
|
| 658 | + gtk_box_pack_start(GTK_BOX(gtk_dialog_get_action_area(GTK_DIALOG(dialog))),nobutton,
|
| 659 | TRUE,TRUE,0);
|
| 660 | gtk_widget_show(nobutton);
|
| 661 | }
|
| 662 | @@ -119,8 +119,8 @@ void BoolDialog(char *question,char *yes,GtkSignalFunc yesfunc,
|
| 663 |
|
| 664 |
|
| 665 | void InputDialog(char *prompt,char *default_str,int len,char *doit,
|
| 666 | - GtkSignalFunc doitfunc,
|
| 667 | - char *cancel,GtkSignalFunc cancelfunc)
|
| 668 | + GCallback doitfunc,
|
| 669 | + char *cancel,GCallback cancelfunc)
|
| 670 | {
|
| 671 | GtkWidget *dialog;
|
| 672 | GtkWidget *label;
|
| 673 | @@ -130,37 +130,38 @@ void InputDialog(char *prompt,char *default_str,int len,char *doit,
|
| 674 |
|
| 675 | dialog=gtk_dialog_new();
|
| 676 |
|
| 677 | - gtk_container_border_width(GTK_CONTAINER(GTK_DIALOG(dialog)->vbox),5);
|
| 678 | + gtk_container_set_border_width(GTK_CONTAINER(gtk_dialog_get_content_area(GTK_DIALOG(dialog))),5);
|
| 679 |
|
| 680 | label=gtk_label_new(prompt);
|
| 681 | - gtk_box_pack_start(GTK_BOX(GTK_DIALOG(dialog)->vbox),label,TRUE,TRUE,0);
|
| 682 | + gtk_box_pack_start(GTK_BOX(gtk_dialog_get_content_area(GTK_DIALOG(dialog))),label,TRUE,TRUE,0);
|
| 683 | gtk_widget_show(label);
|
| 684 |
|
| 685 | - entry=gtk_entry_new_with_max_length(len);
|
| 686 | + entry=gtk_entry_new();
|
| 687 | + gtk_entry_set_max_length(GTK_ENTRY(entry),len);
|
| 688 | if(default_str) gtk_entry_set_text(GTK_ENTRY(entry),default_str);
|
| 689 | - gtk_box_pack_start(GTK_BOX(GTK_DIALOG(dialog)->vbox),entry,TRUE,TRUE,0);
|
| 690 | + gtk_box_pack_start(GTK_BOX(gtk_dialog_get_content_area(GTK_DIALOG(dialog))),entry,TRUE,TRUE,0);
|
| 691 | gtk_widget_show(entry);
|
| 692 |
|
| 693 | doitbutton=gtk_button_new_with_label(doit);
|
| 694 | if(doitfunc)
|
| 695 | - gtk_signal_connect(GTK_OBJECT(doitbutton),"clicked",
|
| 696 | + g_signal_connect(G_OBJECT(doitbutton),"clicked",
|
| 697 | doitfunc,(gpointer)entry);
|
| 698 | - gtk_signal_connect_object(GTK_OBJECT(doitbutton),"clicked",
|
| 699 | - GTK_SIGNAL_FUNC(gtk_widget_destroy),
|
| 700 | - GTK_OBJECT(dialog));
|
| 701 | - gtk_box_pack_start(GTK_BOX(GTK_DIALOG(dialog)->action_area),doitbutton,
|
| 702 | + g_signal_connect_swapped(G_OBJECT(doitbutton),"clicked",
|
| 703 | + G_CALLBACK(gtk_widget_destroy),
|
| 704 | + G_OBJECT(dialog));
|
| 705 | + gtk_box_pack_start(GTK_BOX(gtk_dialog_get_action_area(GTK_DIALOG(dialog))),doitbutton,
|
| 706 | TRUE,TRUE,0);
|
| 707 | gtk_widget_show(doitbutton);
|
| 708 |
|
| 709 | if(cancel) {
|
| 710 | cancelbutton=gtk_button_new_with_label(cancel);
|
| 711 | if(cancelfunc)
|
| 712 | - gtk_signal_connect(GTK_OBJECT(cancelbutton),"clicked",
|
| 713 | + g_signal_connect(G_OBJECT(cancelbutton),"clicked",
|
| 714 | cancelfunc,NULL);
|
| 715 | - gtk_signal_connect_object(GTK_OBJECT(cancelbutton),"clicked",
|
| 716 | - GTK_SIGNAL_FUNC(gtk_widget_destroy),
|
| 717 | - GTK_OBJECT(dialog));
|
| 718 | - gtk_box_pack_start(GTK_BOX(GTK_DIALOG(dialog)->action_area),cancelbutton,
|
| 719 | + g_signal_connect_swapped(G_OBJECT(cancelbutton),"clicked",
|
| 720 | + G_CALLBACK(gtk_widget_destroy),
|
| 721 | + G_OBJECT(dialog));
|
| 722 | + gtk_box_pack_start(GTK_BOX(gtk_dialog_get_action_area(GTK_DIALOG(dialog))),cancelbutton,
|
| 723 | TRUE,TRUE,0);
|
| 724 | gtk_widget_show(cancelbutton);
|
| 725 | }
|
| 726 | @@ -189,18 +190,19 @@ GtkWidget *MakeStrEntry(GtkWidget **entry,char *var,char *name,
|
| 727 | gtk_box_pack_start(GTK_BOX(hbox),label,FALSE,FALSE,0);
|
| 728 | gtk_widget_show(label);
|
| 729 |
|
| 730 | - widget=gtk_entry_new_with_max_length(len);
|
| 731 | - gtk_entry_set_editable(GTK_ENTRY(widget),editable);
|
| 732 | + widget=gtk_entry_new();
|
| 733 | + gtk_entry_set_max_length(GTK_ENTRY(widget),len);
|
| 734 | + gtk_editable_set_editable(GTK_EDITABLE(GTK_ENTRY(widget)),editable);
|
| 735 | if(var) {
|
| 736 | gtk_entry_set_text(GTK_ENTRY(widget),var);
|
| 737 |
|
| 738 | - gtk_signal_connect(GTK_OBJECT(widget),"changed",
|
| 739 | - GTK_SIGNAL_FUNC(ChangeStrVal),(gpointer)var);
|
| 740 | + g_signal_connect(G_OBJECT(widget),"changed",
|
| 741 | + G_CALLBACK(ChangeStrVal),(gpointer)var);
|
| 742 | }
|
| 743 |
|
| 744 | gtk_box_pack_start(GTK_BOX(hbox),widget,TRUE,TRUE,0);
|
| 745 |
|
| 746 | - gtk_entry_set_position(GTK_ENTRY(widget),0);
|
| 747 | + gtk_editable_set_position(GTK_EDITABLE(GTK_ENTRY(widget)),0);
|
| 748 |
|
| 749 | gtk_widget_show(widget);
|
| 750 |
|
| 751 | @@ -233,8 +235,8 @@ GtkWidget *MakeNumEntry(GtkWidget **entry,int *var,char *name,int len)
|
| 752 | if(var) {
|
| 753 | sprintf(buf,"%d",*var);
|
| 754 | gtk_entry_set_text(GTK_ENTRY(widget),buf);
|
| 755 | - gtk_signal_connect(GTK_OBJECT(widget),"changed",
|
| 756 | - GTK_SIGNAL_FUNC(ChangeIntVal),(gpointer)var);
|
| 757 | + g_signal_connect(G_OBJECT(widget),"changed",
|
| 758 | + G_CALLBACK(ChangeIntVal),(gpointer)var);
|
| 759 | }
|
| 760 |
|
| 761 | gtk_box_pack_end(GTK_BOX(hbox),widget,FALSE,FALSE,0);
|
| 762 | @@ -247,7 +249,7 @@ GtkWidget *MakeNumEntry(GtkWidget **entry,int *var,char *name,int len)
|
| 763 |
|
| 764 | void ChangeDoubleVal(GtkWidget *widget,gpointer data)
|
| 765 | {
|
| 766 | - *((gdouble *)data)=gtk_spin_button_get_value_as_float
|
| 767 | + *((gdouble *)data)=gtk_spin_button_get_value
|
| 768 | (GTK_SPIN_BUTTON(widget));
|
| 769 | }
|
| 770 |
|
| 771 | @@ -256,7 +258,7 @@ GtkWidget *MakeDoubleEntry(GtkWidget **entry,gdouble *var,char *name)
|
| 772 | GtkWidget *widget;
|
| 773 | GtkWidget *label;
|
| 774 | GtkWidget *hbox;
|
| 775 | - GtkObject *adj;
|
| 776 | + GtkAdjustment *adj;
|
| 777 |
|
| 778 | hbox=gtk_hbox_new(FALSE,5);
|
| 779 |
|
| 780 | @@ -266,12 +268,12 @@ GtkWidget *MakeDoubleEntry(GtkWidget **entry,gdouble *var,char *name)
|
| 781 |
|
| 782 | adj=gtk_adjustment_new(0,0,1.0,0.001,0.1,0);
|
| 783 |
|
| 784 | - widget=gtk_spin_button_new(GTK_ADJUSTMENT(adj),0.1,3);
|
| 785 | + widget=gtk_spin_button_new(adj,0.1,3);
|
| 786 |
|
| 787 | if(var) {
|
| 788 | gtk_spin_button_set_value(GTK_SPIN_BUTTON(widget),*var);
|
| 789 | - gtk_signal_connect(GTK_OBJECT(widget),"changed",
|
| 790 | - GTK_SIGNAL_FUNC(ChangeDoubleVal),(gpointer)var);
|
| 791 | + g_signal_connect(G_OBJECT(widget),"changed",
|
| 792 | + G_CALLBACK(ChangeDoubleVal),(gpointer)var);
|
| 793 | }
|
| 794 |
|
| 795 | gtk_box_pack_end(GTK_BOX(hbox),widget,FALSE,FALSE,0);
|
| 796 | @@ -296,8 +298,8 @@ GtkWidget *MakeCheckButton(GtkWidget **button,gboolean *var,char *name)
|
| 797 | if(var) {
|
| 798 | gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widget),
|
| 799 | *var);
|
| 800 | - gtk_signal_connect(GTK_OBJECT(widget),"clicked",
|
| 801 | - GTK_SIGNAL_FUNC(ChangeBoolVal),
|
| 802 | + g_signal_connect(G_OBJECT(widget),"clicked",
|
| 803 | + G_CALLBACK(ChangeBoolVal),
|
| 804 | (gpointer)var);
|
| 805 | }
|
| 806 |
|
| 807 | diff --git a/src/dialog.h b/src/dialog.h
|
| 808 | index 1f4c2d1..310acad 100644
|
| 809 | |
| 810 | |
| 811 | @@ -26,14 +26,14 @@
|
| 812 | /* Message routines */
|
| 813 | void DisplayMsg(GtkMessageType type, GtkWindow *parent, char *msg);
|
| 814 | gint ConfirmDialog(GtkWindow *parent, char *msg);
|
| 815 | -void BoolDialog(char *question,char *yes,GtkSignalFunc yesfunc,
|
| 816 | +void BoolDialog(char *question,char *yes,GCallback yesfunc,
|
| 817 | gpointer yesdata,
|
| 818 | - char *no,GtkSignalFunc nofunc,gpointer nodata);
|
| 819 | + char *no,GCallback nofunc,gpointer nodata);
|
| 820 |
|
| 821 | /* Input routines */
|
| 822 | void InputDialog(char *prompt,char *default_str,int len,char *doit,
|
| 823 | - GtkSignalFunc doitfunc,
|
| 824 | - char *cancel,GtkSignalFunc cancelfunc);
|
| 825 | + GCallback doitfunc,
|
| 826 | + char *cancel,GCallback cancelfunc);
|
| 827 | void ChangeStrVal(GtkWidget *widget,gpointer data);
|
| 828 | GtkWidget *MakeStrEntry(GtkWidget **entry,char *var,char *name,
|
| 829 | int len,gboolean editable);
|
| 830 | diff --git a/src/discedit.c b/src/discedit.c
|
| 831 | index 35b1972..6ed4bb1 100644
|
| 832 | |
| 833 | |
| 834 | @@ -46,10 +46,9 @@ GtkWidget *MakeEditBox(GripInfo *ginfo)
|
| 835 | GtkWidget *button;
|
| 836 | GtkWidget *label;
|
| 837 | GtkWidget *frame;
|
| 838 | - GtkWidget *item;
|
| 839 | GtkWidget *check;
|
| 840 | GtkWidget *entry;
|
| 841 | - GtkObject *adj;
|
| 842 | + GtkAdjustment *adj;
|
| 843 | ID3Genre *id3_genre;
|
| 844 | gint id3_genre_count;
|
| 845 | int i;
|
| 846 | @@ -98,15 +97,16 @@ GtkWidget *MakeEditBox(GripInfo *ginfo)
|
| 847 | g_object_unref(layout);
|
| 848 |
|
| 849 |
|
| 850 | - gtk_widget_set_usize(label,len,0);
|
| 851 | + gtk_widget_set_size_request(label,len,0);
|
| 852 |
|
| 853 | gtk_box_pack_start(GTK_BOX(hbox),label,FALSE,FALSE,0);
|
| 854 | gtk_widget_show(label);
|
| 855 |
|
| 856 | - uinfo->title_edit_entry=gtk_entry_new_with_max_length(256);
|
| 857 | - gtk_signal_connect(GTK_OBJECT(uinfo->title_edit_entry),"changed",
|
| 858 | - GTK_SIGNAL_FUNC(TitleEditChanged),(gpointer)ginfo);
|
| 859 | - gtk_entry_set_position(GTK_ENTRY(uinfo->title_edit_entry),0);
|
| 860 | + uinfo->title_edit_entry=gtk_entry_new();
|
| 861 | + gtk_entry_set_max_length(GTK_ENTRY(uinfo->title_edit_entry),256);
|
| 862 | + g_signal_connect(G_OBJECT(uinfo->title_edit_entry),"changed",
|
| 863 | + G_CALLBACK(TitleEditChanged),(gpointer)ginfo);
|
| 864 | + gtk_editable_set_position(GTK_EDITABLE(GTK_ENTRY(uinfo->title_edit_entry)),0);
|
| 865 | gtk_box_pack_start(GTK_BOX(hbox),uinfo->title_edit_entry,TRUE,TRUE,0);
|
| 866 | gtk_widget_show(uinfo->title_edit_entry);
|
| 867 |
|
| 868 | @@ -116,14 +116,15 @@ GtkWidget *MakeEditBox(GripInfo *ginfo)
|
| 869 | hbox=gtk_hbox_new(FALSE,3);
|
| 870 |
|
| 871 | label=gtk_label_new(labels[1]);
|
| 872 | - gtk_widget_set_usize(label,len,0);
|
| 873 | + gtk_widget_set_size_request(label,len,0);
|
| 874 | gtk_box_pack_start(GTK_BOX(hbox),label,FALSE,FALSE,0);
|
| 875 | gtk_widget_show(label);
|
| 876 |
|
| 877 | - uinfo->artist_edit_entry=gtk_entry_new_with_max_length(256);
|
| 878 | - gtk_signal_connect(GTK_OBJECT(uinfo->artist_edit_entry),"changed",
|
| 879 | - GTK_SIGNAL_FUNC(ArtistEditChanged),(gpointer)ginfo);
|
| 880 | - gtk_entry_set_position(GTK_ENTRY(uinfo->artist_edit_entry),0);
|
| 881 | + uinfo->artist_edit_entry=gtk_entry_new();
|
| 882 | + gtk_entry_set_max_length(GTK_ENTRY(uinfo->artist_edit_entry),256);
|
| 883 | + g_signal_connect(G_OBJECT(uinfo->artist_edit_entry),"changed",
|
| 884 | + G_CALLBACK(ArtistEditChanged),(gpointer)ginfo);
|
| 885 | + gtk_editable_set_position(GTK_EDITABLE(GTK_ENTRY(uinfo->artist_edit_entry)),0);
|
| 886 | gtk_box_pack_start(GTK_BOX(hbox),uinfo->artist_edit_entry,TRUE,TRUE,0);
|
| 887 | gtk_widget_show(uinfo->artist_edit_entry);
|
| 888 |
|
| 889 | @@ -133,24 +134,18 @@ GtkWidget *MakeEditBox(GripInfo *ginfo)
|
| 890 | hbox=gtk_hbox_new(FALSE,3);
|
| 891 |
|
| 892 | label=gtk_label_new(labels[2]);
|
| 893 | - gtk_widget_set_usize(label,len,0);
|
| 894 | + gtk_widget_set_size_request(label,len,0);
|
| 895 | gtk_box_pack_start(GTK_BOX(hbox),label,FALSE,FALSE,0);
|
| 896 | gtk_widget_show(label);
|
| 897 |
|
| 898 | - uinfo->id3_genre_combo=gtk_combo_new();
|
| 899 | + uinfo->id3_genre_combo=gtk_combo_box_text_new();
|
| 900 | + g_signal_connect(G_OBJECT(uinfo->id3_genre_combo),"changed",
|
| 901 | + G_CALLBACK(ID3GenreChanged),
|
| 902 | + (gpointer)ginfo);
|
| 903 |
|
| 904 | for(id3_genre_count=0;(id3_genre=ID3GenreByNum(id3_genre_count));
|
| 905 | id3_genre_count++) {
|
| 906 | - item = gtk_list_item_new_with_label(id3_genre->name);
|
| 907 | - gtk_object_set_user_data(GTK_OBJECT(item),
|
| 908 | - GINT_TO_POINTER(id3_genre->num));
|
| 909 | - uinfo->id3_genre_item_list=g_list_append(uinfo->id3_genre_item_list,item);
|
| 910 | - gtk_signal_connect(GTK_OBJECT(item),"select",
|
| 911 | - GTK_SIGNAL_FUNC(ID3GenreChanged),
|
| 912 | - (gpointer)ginfo);
|
| 913 | - gtk_container_add(GTK_CONTAINER(GTK_COMBO(uinfo->id3_genre_combo)->list),
|
| 914 | - item);
|
| 915 | - gtk_widget_show(item);
|
| 916 | + gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(uinfo->id3_genre_combo), id3_genre->name);
|
| 917 | }
|
| 918 |
|
| 919 | gtk_box_pack_start(GTK_BOX(hbox),uinfo->id3_genre_combo,TRUE,TRUE,0);
|
| 920 | @@ -164,15 +159,15 @@ GtkWidget *MakeEditBox(GripInfo *ginfo)
|
| 921 | hbox=gtk_hbox_new(FALSE,3);
|
| 922 |
|
| 923 | label=gtk_label_new(labels[3]);
|
| 924 | - gtk_widget_set_usize(label,len,0);
|
| 925 | + gtk_widget_set_size_request(label,len,0);
|
| 926 | gtk_box_pack_start(GTK_BOX(hbox),label,FALSE,FALSE,0);
|
| 927 | gtk_widget_show(label);
|
| 928 |
|
| 929 | adj=gtk_adjustment_new(0,0,9999,1.0,5.0,0);
|
| 930 |
|
| 931 | - uinfo->year_spin_button=gtk_spin_button_new(GTK_ADJUSTMENT(adj),0.5,0);
|
| 932 | - gtk_signal_connect(GTK_OBJECT(uinfo->year_spin_button),"value_changed",
|
| 933 | - GTK_SIGNAL_FUNC(YearEditChanged),(gpointer)ginfo);
|
| 934 | + uinfo->year_spin_button=gtk_spin_button_new(adj,0.5,0);
|
| 935 | + g_signal_connect(G_OBJECT(uinfo->year_spin_button),"value_changed",
|
| 936 | + G_CALLBACK(YearEditChanged),(gpointer)ginfo);
|
| 937 | gtk_box_pack_start(GTK_BOX(hbox),uinfo->year_spin_button,TRUE,TRUE,0);
|
| 938 | gtk_widget_show(uinfo->year_spin_button);
|
| 939 |
|
| 940 | @@ -182,15 +177,16 @@ GtkWidget *MakeEditBox(GripInfo *ginfo)
|
| 941 | hbox=gtk_hbox_new(FALSE,3);
|
| 942 |
|
| 943 | label=gtk_label_new(labels[4]);
|
| 944 | - gtk_widget_set_usize(label,len,0);
|
| 945 | + gtk_widget_set_size_request(label,len,0);
|
| 946 | gtk_box_pack_start(GTK_BOX(hbox),label,FALSE,FALSE,0);
|
| 947 | gtk_widget_show(label);
|
| 948 |
|
| 949 | - uinfo->track_edit_entry=gtk_entry_new_with_max_length(256);
|
| 950 | - gtk_signal_connect(GTK_OBJECT(uinfo->track_edit_entry),"changed",
|
| 951 | - GTK_SIGNAL_FUNC(TrackEditChanged),(gpointer)ginfo);
|
| 952 | - gtk_signal_connect(GTK_OBJECT(uinfo->track_edit_entry),"activate",
|
| 953 | - GTK_SIGNAL_FUNC(EditNextTrack),(gpointer)ginfo);
|
| 954 | + uinfo->track_edit_entry=gtk_entry_new();
|
| 955 | + gtk_entry_set_max_length(GTK_ENTRY(uinfo->track_edit_entry),256);
|
| 956 | + g_signal_connect(G_OBJECT(uinfo->track_edit_entry),"changed",
|
| 957 | + G_CALLBACK(TrackEditChanged),(gpointer)ginfo);
|
| 958 | + g_signal_connect(G_OBJECT(uinfo->track_edit_entry),"activate",
|
| 959 | + G_CALLBACK(EditNextTrack),(gpointer)ginfo);
|
| 960 | gtk_box_pack_start(GTK_BOX(hbox),uinfo->track_edit_entry,TRUE,TRUE,0);
|
| 961 | gtk_widget_show(uinfo->track_edit_entry);
|
| 962 |
|
| 963 | @@ -202,13 +198,14 @@ GtkWidget *MakeEditBox(GripInfo *ginfo)
|
| 964 | hbox=gtk_hbox_new(FALSE,3);
|
| 965 |
|
| 966 | label=gtk_label_new(labels[5]);
|
| 967 | - gtk_widget_set_usize(label,len,0);
|
| 968 | + gtk_widget_set_size_request(label,len,0);
|
| 969 | gtk_box_pack_start(GTK_BOX(hbox),label,FALSE,FALSE,0);
|
| 970 | gtk_widget_show(label);
|
| 971 |
|
| 972 | - uinfo->track_artist_edit_entry=gtk_entry_new_with_max_length(256);
|
| 973 | - gtk_signal_connect(GTK_OBJECT(uinfo->track_artist_edit_entry),"changed",
|
| 974 | - GTK_SIGNAL_FUNC(TrackEditChanged),(gpointer)ginfo);
|
| 975 | + uinfo->track_artist_edit_entry=gtk_entry_new();
|
| 976 | + gtk_entry_set_max_length(GTK_ENTRY(uinfo->track_artist_edit_entry),256);
|
| 977 | + g_signal_connect(G_OBJECT(uinfo->track_artist_edit_entry),"changed",
|
| 978 | + G_CALLBACK(TrackEditChanged),(gpointer)ginfo);
|
| 979 | gtk_box_pack_start(GTK_BOX(hbox),uinfo->track_artist_edit_entry,
|
| 980 | TRUE,TRUE,0);
|
| 981 | gtk_widget_show(uinfo->track_artist_edit_entry);
|
| 982 | @@ -223,23 +220,23 @@ GtkWidget *MakeEditBox(GripInfo *ginfo)
|
| 983 | gtk_widget_show(label);
|
| 984 |
|
| 985 | button=gtk_button_new_with_label(_("Title/Artist"));
|
| 986 | - gtk_object_set_user_data(GTK_OBJECT(button),(gpointer)0);
|
| 987 | - gtk_signal_connect(GTK_OBJECT(button),"clicked",
|
| 988 | - GTK_SIGNAL_FUNC(SplitTitleArtist),(gpointer)ginfo);
|
| 989 | + g_object_set_data(G_OBJECT(button),"user_data",(gpointer)0);
|
| 990 | + g_signal_connect(G_OBJECT(button),"clicked",
|
| 991 | + G_CALLBACK(SplitTitleArtist),(gpointer)ginfo);
|
| 992 | gtk_box_pack_start(GTK_BOX(hbox),button,FALSE,FALSE,0);
|
| 993 | gtk_widget_show(button);
|
| 994 |
|
| 995 | button=gtk_button_new_with_label(_("Artist/Title"));
|
| 996 | - gtk_object_set_user_data(GTK_OBJECT(button),(gpointer)1);
|
| 997 | - gtk_signal_connect(GTK_OBJECT(button),"clicked",
|
| 998 | - GTK_SIGNAL_FUNC(SplitTitleArtist),(gpointer)ginfo);
|
| 999 | + g_object_set_data(G_OBJECT(button),"user_data",(gpointer)1);
|
| 1000 | + g_signal_connect(G_OBJECT(button),"clicked",
|
| 1001 | + G_CALLBACK(SplitTitleArtist),(gpointer)ginfo);
|
| 1002 | gtk_box_pack_start(GTK_BOX(hbox),button,FALSE,FALSE,0);
|
| 1003 | gtk_widget_show(button);
|
| 1004 |
|
| 1005 | entry=MakeStrEntry(&uinfo->split_chars_entry,ginfo->title_split_chars,
|
| 1006 | _("Split chars"),5,TRUE);
|
| 1007 |
|
| 1008 | - gtk_widget_set_usize(uinfo->split_chars_entry,
|
| 1009 | + gtk_widget_set_size_request(uinfo->split_chars_entry,
|
| 1010 | 5*dub_size,0);
|
| 1011 |
|
| 1012 |
|
| 1013 | @@ -260,26 +257,26 @@ GtkWidget *MakeEditBox(GripInfo *ginfo)
|
| 1014 | check=MakeCheckButton(&uinfo->multi_artist_button,
|
| 1015 | &(ginfo->ddata.data_multi_artist),
|
| 1016 | _("Multi-artist"));
|
| 1017 | - gtk_signal_connect(GTK_OBJECT(uinfo->multi_artist_button),"clicked",
|
| 1018 | - GTK_SIGNAL_FUNC(UpdateMultiArtist),(gpointer)ginfo);
|
| 1019 | + g_signal_connect(G_OBJECT(uinfo->multi_artist_button),"clicked",
|
| 1020 | + G_CALLBACK(UpdateMultiArtist),(gpointer)ginfo);
|
| 1021 | gtk_box_pack_start(GTK_BOX(hbox),check,TRUE,TRUE,0);
|
| 1022 | gtk_widget_show(check);
|
| 1023 |
|
| 1024 | button=ImageButton(GTK_WIDGET(uinfo->app),uinfo->save_image);
|
| 1025 | gtk_widget_set_style(button,uinfo->style_dark_grey);
|
| 1026 | - gtk_signal_connect(GTK_OBJECT(button),"clicked",
|
| 1027 | - GTK_SIGNAL_FUNC(SaveDiscInfo),(gpointer)ginfo);
|
| 1028 | - gtk_tooltips_set_tip(MakeToolTip(),button,
|
| 1029 | - _("Save disc info"),NULL);
|
| 1030 | + g_signal_connect(G_OBJECT(button),"clicked",
|
| 1031 | + G_CALLBACK(SaveDiscInfo),(gpointer)ginfo);
|
| 1032 | + gtk_widget_set_tooltip_text(button,
|
| 1033 | + _("Save disc info"));
|
| 1034 | gtk_box_pack_start(GTK_BOX(hbox),button,FALSE,FALSE,0);
|
| 1035 | gtk_widget_show(button);
|
| 1036 |
|
| 1037 | button=ImageButton(GTK_WIDGET(uinfo->app),uinfo->mail_image);
|
| 1038 | gtk_widget_set_style(button,uinfo->style_dark_grey);
|
| 1039 | - gtk_signal_connect(GTK_OBJECT(button),"clicked",
|
| 1040 | - GTK_SIGNAL_FUNC(SubmitEntryCB),(gpointer)ginfo);
|
| 1041 | - gtk_tooltips_set_tip(MakeToolTip(),button,
|
| 1042 | - _("Submit disc info"),NULL);
|
| 1043 | + g_signal_connect(G_OBJECT(button),"clicked",
|
| 1044 | + G_CALLBACK(SubmitEntryCB),(gpointer)ginfo);
|
| 1045 | + gtk_widget_set_tooltip_text(button,
|
| 1046 | + _("Submit disc info"));
|
| 1047 | gtk_box_pack_start(GTK_BOX(hbox),button,FALSE,FALSE,0);
|
| 1048 | gtk_widget_show(button);
|
| 1049 |
|
| 1050 | @@ -344,10 +341,10 @@ void SetTitle(GripInfo *ginfo,char *title)
|
| 1051 | TitleEditChanged,(gpointer)ginfo);
|
| 1052 |
|
| 1053 | gtk_entry_set_text(GTK_ENTRY(ginfo->gui_info.title_edit_entry),title);
|
| 1054 | - gtk_entry_set_position(GTK_ENTRY(ginfo->gui_info.title_edit_entry),0);
|
| 1055 | + gtk_editable_set_position(GTK_EDITABLE(GTK_ENTRY(ginfo->gui_info.title_edit_entry)),0);
|
| 1056 |
|
| 1057 | strcpy(ginfo->ddata.data_title,title);
|
| 1058 | - gtk_label_set(GTK_LABEL(ginfo->gui_info.disc_name_label),title);
|
| 1059 | + gtk_label_set_text(GTK_LABEL(ginfo->gui_info.disc_name_label),title);
|
| 1060 |
|
| 1061 | g_signal_handlers_unblock_by_func(G_OBJECT(ginfo->gui_info.title_edit_entry),
|
| 1062 | TitleEditChanged,(gpointer)ginfo);
|
| 1063 | @@ -359,10 +356,10 @@ void SetArtist(GripInfo *ginfo,char *artist)
|
| 1064 | ArtistEditChanged,(gpointer)ginfo);
|
| 1065 |
|
| 1066 | gtk_entry_set_text(GTK_ENTRY(ginfo->gui_info.artist_edit_entry),artist);
|
| 1067 | - gtk_entry_set_position(GTK_ENTRY(ginfo->gui_info.artist_edit_entry),0);
|
| 1068 | + gtk_editable_set_position(GTK_EDITABLE(GTK_ENTRY(ginfo->gui_info.artist_edit_entry)),0);
|
| 1069 |
|
| 1070 | strcpy(ginfo->ddata.data_artist,artist);
|
| 1071 | - gtk_label_set(GTK_LABEL(ginfo->gui_info.disc_artist_label),artist);
|
| 1072 | + gtk_label_set_text(GTK_LABEL(ginfo->gui_info.disc_artist_label),artist);
|
| 1073 |
|
| 1074 | g_signal_handlers_unblock_by_func(G_OBJECT(ginfo->gui_info.artist_edit_entry),
|
| 1075 | ArtistEditChanged,(gpointer)ginfo);
|
| 1076 | @@ -376,13 +373,7 @@ void SetYear(GripInfo *ginfo,int year)
|
| 1077 |
|
| 1078 | void SetID3Genre(GripInfo *ginfo,int id3_genre)
|
| 1079 | {
|
| 1080 | - GtkWidget *item;
|
| 1081 | -
|
| 1082 | - item=
|
| 1083 | - GTK_WIDGET(g_list_nth(ginfo->gui_info.id3_genre_item_list,
|
| 1084 | - ID3GenrePos(id3_genre))->data);
|
| 1085 | - gtk_list_select_child(GTK_LIST(GTK_COMBO(ginfo->gui_info.id3_genre_combo)->
|
| 1086 | - list),item);
|
| 1087 | + gtk_combo_box_set_active(GTK_COMBO_BOX(ginfo->gui_info.id3_genre_combo), id3_genre);
|
| 1088 | }
|
| 1089 |
|
| 1090 | static void SaveDiscInfo(GtkWidget *widget,gpointer data)
|
| 1091 | @@ -410,7 +401,7 @@ static void TitleEditChanged(GtkWidget *widget,gpointer data)
|
| 1092 | strcpy(ginfo->ddata.data_title,
|
| 1093 | gtk_entry_get_text(GTK_ENTRY(ginfo->gui_info.title_edit_entry)));
|
| 1094 |
|
| 1095 | - gtk_label_set(GTK_LABEL(ginfo->gui_info.disc_name_label),
|
| 1096 | + gtk_label_set_text(GTK_LABEL(ginfo->gui_info.disc_name_label),
|
| 1097 | ginfo->ddata.data_title);
|
| 1098 | }
|
| 1099 |
|
| 1100 | @@ -423,7 +414,7 @@ static void ArtistEditChanged(GtkWidget *widget,gpointer data)
|
| 1101 | strcpy(ginfo->ddata.data_artist,
|
| 1102 | gtk_entry_get_text(GTK_ENTRY(ginfo->gui_info.artist_edit_entry)));
|
| 1103 |
|
| 1104 | - gtk_label_set(GTK_LABEL(ginfo->gui_info.disc_artist_label),
|
| 1105 | + gtk_label_set_text(GTK_LABEL(ginfo->gui_info.disc_artist_label),
|
| 1106 | ginfo->ddata.data_artist);
|
| 1107 | }
|
| 1108 |
|
| 1109 | @@ -489,7 +480,7 @@ static void ID3GenreChanged(GtkWidget *widget,gpointer data)
|
| 1110 |
|
| 1111 | ginfo=(GripInfo *)data;
|
| 1112 |
|
| 1113 | - ginfo->ddata.data_id3genre=GPOINTER_TO_INT(gtk_object_get_user_data(GTK_OBJECT(widget)));
|
| 1114 | + ginfo->ddata.data_id3genre=gtk_combo_box_get_active(GTK_COMBO_BOX(widget));
|
| 1115 | /* ginfo->ddata.data_genre=ID32DiscDB(ginfo->ddata.data_id3genre);*/
|
| 1116 | }
|
| 1117 |
|
| 1118 | @@ -525,7 +516,7 @@ static void SplitTitleArtist(GtkWidget *widget,gpointer data)
|
| 1119 | int mode;
|
| 1120 |
|
| 1121 | ginfo=(GripInfo *)data;
|
| 1122 | - mode=GPOINTER_TO_INT(gtk_object_get_user_data(GTK_OBJECT(widget)));
|
| 1123 | + mode=GPOINTER_TO_INT(g_object_get_data(G_OBJECT(widget), "user_data"));
|
| 1124 |
|
| 1125 | for(track=0;track<ginfo->disc.num_tracks;track++) {
|
| 1126 | if(mode==0)
|
| 1127 | @@ -605,21 +596,22 @@ static void GetDiscDBGenre(GripInfo *ginfo)
|
| 1128 | GtkWidget *cancel_button;
|
| 1129 | GtkWidget *hbox;
|
| 1130 | GtkWidget *genre_combo;
|
| 1131 | - GtkWidget *item;
|
| 1132 | int genre;
|
| 1133 |
|
| 1134 | dialog=gtk_dialog_new();
|
| 1135 | gtk_window_set_title(GTK_WINDOW(dialog),_("Genre selection"));
|
| 1136 |
|
| 1137 | - gtk_container_border_width(GTK_CONTAINER(GTK_DIALOG(dialog)->vbox),5);
|
| 1138 | + gtk_container_set_border_width(GTK_CONTAINER(gtk_dialog_get_content_area(GTK_DIALOG(dialog))),5);
|
| 1139 |
|
| 1140 | label=gtk_label_new(_("Submission requires a genre other than 'unknown'\n"
|
| 1141 | "Please select a DiscDB genre below"));
|
| 1142 | - gtk_box_pack_start(GTK_BOX(GTK_DIALOG(dialog)->vbox),label,TRUE,TRUE,0);
|
| 1143 | + gtk_box_pack_start(GTK_BOX(gtk_dialog_get_content_area(GTK_DIALOG(dialog))),label,TRUE,TRUE,0);
|
| 1144 | gtk_widget_show(label);
|
| 1145 |
|
| 1146 | - genre_combo=gtk_combo_new();
|
| 1147 | - gtk_entry_set_editable(GTK_ENTRY(GTK_COMBO(genre_combo)->entry),FALSE);
|
| 1148 | + genre_combo=gtk_combo_box_text_new();
|
| 1149 | + // FIXME gtk_editable_set_editable(GTK_EDITABLE(GTK_COMBO_BOX(genre_combo)->entry),FALSE);
|
| 1150 | + g_signal_connect(G_OBJECT(genre_combo), "changed",
|
| 1151 | + G_CALLBACK(DiscDBGenreChanged),(gpointer)ginfo);
|
| 1152 |
|
| 1153 | hbox=gtk_hbox_new(FALSE,3);
|
| 1154 |
|
| 1155 | @@ -628,38 +620,32 @@ static void GetDiscDBGenre(GripInfo *ginfo)
|
| 1156 | gtk_widget_show(label);
|
| 1157 |
|
| 1158 | for(genre=0;genre<12;genre++) {
|
| 1159 | - item=gtk_list_item_new_with_label(DiscDBGenre(genre));
|
| 1160 | - gtk_object_set_user_data(GTK_OBJECT(item),
|
| 1161 | - GINT_TO_POINTER(genre));
|
| 1162 | - gtk_signal_connect(GTK_OBJECT(item), "select",
|
| 1163 | - GTK_SIGNAL_FUNC(DiscDBGenreChanged),(gpointer)ginfo);
|
| 1164 | - gtk_container_add(GTK_CONTAINER(GTK_COMBO(genre_combo)->list),item);
|
| 1165 | - gtk_widget_show(item);
|
| 1166 | + gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(genre_combo), DiscDBGenre(genre));
|
| 1167 | }
|
| 1168 |
|
| 1169 | gtk_box_pack_start(GTK_BOX(hbox),genre_combo,TRUE,TRUE,0);
|
| 1170 | gtk_widget_show(genre_combo);
|
| 1171 |
|
| 1172 | - gtk_box_pack_start(GTK_BOX(GTK_DIALOG(dialog)->vbox),hbox,TRUE,TRUE,0);
|
| 1173 | + gtk_box_pack_start(GTK_BOX(gtk_dialog_get_content_area(GTK_DIALOG(dialog))),hbox,TRUE,TRUE,0);
|
| 1174 | gtk_widget_show(hbox);
|
| 1175 |
|
| 1176 | submit_button=gtk_button_new_with_label(_("Submit"));
|
| 1177 |
|
| 1178 | - gtk_signal_connect(GTK_OBJECT(submit_button),"clicked",
|
| 1179 | + g_signal_connect(G_OBJECT(submit_button),"clicked",
|
| 1180 | (gpointer)SubmitEntryCB,(gpointer)ginfo);
|
| 1181 | - gtk_signal_connect_object(GTK_OBJECT(submit_button),"clicked",
|
| 1182 | - GTK_SIGNAL_FUNC(gtk_widget_destroy),
|
| 1183 | - GTK_OBJECT(dialog));
|
| 1184 | - gtk_box_pack_start(GTK_BOX(GTK_DIALOG(dialog)->action_area),submit_button,
|
| 1185 | + g_signal_connect_swapped(G_OBJECT(submit_button),"clicked",
|
| 1186 | + G_CALLBACK(gtk_widget_destroy),
|
| 1187 | + G_OBJECT(dialog));
|
| 1188 | + gtk_box_pack_start(GTK_BOX(gtk_dialog_get_action_area(GTK_DIALOG(dialog))),submit_button,
|
| 1189 | TRUE,TRUE,0);
|
| 1190 | gtk_widget_show(submit_button);
|
| 1191 |
|
| 1192 | cancel_button=gtk_button_new_with_label(_("Cancel"));
|
| 1193 |
|
| 1194 | - gtk_signal_connect_object(GTK_OBJECT(cancel_button),"clicked",
|
| 1195 | - GTK_SIGNAL_FUNC(gtk_widget_destroy),
|
| 1196 | - GTK_OBJECT(dialog));
|
| 1197 | - gtk_box_pack_start(GTK_BOX(GTK_DIALOG(dialog)->action_area),cancel_button,
|
| 1198 | + g_signal_connect_swapped(G_OBJECT(cancel_button),"clicked",
|
| 1199 | + G_CALLBACK(gtk_widget_destroy),
|
| 1200 | + G_OBJECT(dialog));
|
| 1201 | + gtk_box_pack_start(GTK_BOX(gtk_dialog_get_action_area(GTK_DIALOG(dialog))),cancel_button,
|
| 1202 | TRUE,TRUE,0);
|
| 1203 | gtk_widget_show(cancel_button);
|
| 1204 |
|
| 1205 | @@ -675,5 +661,5 @@ static void DiscDBGenreChanged(GtkWidget *widget,gpointer data)
|
| 1206 |
|
| 1207 | ginfo=(GripInfo *)data;
|
| 1208 |
|
| 1209 | - ginfo->ddata.data_genre=GPOINTER_TO_INT(gtk_object_get_user_data(GTK_OBJECT(widget)));
|
| 1210 | + ginfo->ddata.data_genre=GPOINTER_TO_INT(g_object_get_data(G_OBJECT(widget), "user_data"));
|
| 1211 | }
|
| 1212 | diff --git a/src/grip.c b/src/grip.c
|
| 1213 | index 93083b8..12b7a01 100644
|
| 1214 | |
| 1215 | |
| 1216 | @@ -29,7 +29,7 @@
|
| 1217 | #include <sys/types.h>
|
| 1218 | #include <sys/wait.h>
|
| 1219 | #include <time.h>
|
| 1220 | -#include <gdk/gdkx.h> /* GDK_DISPLAY() */
|
| 1221 | +#include <gdk/gdkx.h> /* gdk_display */
|
| 1222 | #include "grip.h"
|
| 1223 | #include "discdb.h"
|
| 1224 | #include "cdplay.h"
|
| 1225 | @@ -190,7 +190,7 @@ GtkWidget *GripNew(char *device,char *scsi_device,
|
| 1226 |
|
| 1227 | ginfo=g_new0(GripInfo,1);
|
| 1228 |
|
| 1229 | - gtk_object_set_user_data(GTK_OBJECT(app),(gpointer)ginfo);
|
| 1230 | + g_object_set_data(G_OBJECT(app),"user_data",(gpointer)ginfo);
|
| 1231 |
|
| 1232 | uinfo=&(ginfo->gui_info);
|
| 1233 | uinfo->app=app;
|
| 1234 | @@ -227,7 +227,7 @@ GtkWidget *GripNew(char *device,char *scsi_device,
|
| 1235 |
|
| 1236 | CDStat(&(ginfo->disc),TRUE);
|
| 1237 |
|
| 1238 | - gtk_window_set_policy(GTK_WINDOW(app),FALSE,TRUE,FALSE);
|
| 1239 | + // FIXME gtk_window_set_policy(GTK_WINDOW(app),FALSE,TRUE,FALSE);
|
| 1240 | gtk_window_set_wmclass(GTK_WINDOW(app),"grip","Grip");
|
| 1241 | g_signal_connect(G_OBJECT(app),"delete_event",
|
| 1242 | G_CALLBACK(GripDie),NULL);
|
| 1243 | @@ -257,7 +257,7 @@ GtkWidget *GripNew(char *device,char *scsi_device,
|
| 1244 |
|
| 1245 | uinfo->winbox=gtk_vbox_new(FALSE,3);
|
| 1246 | if(!uinfo->minimized)
|
| 1247 | - gtk_container_border_width(GTK_CONTAINER(uinfo->winbox),3);
|
| 1248 | + gtk_container_set_border_width(GTK_CONTAINER(uinfo->winbox),3);
|
| 1249 |
|
| 1250 | uinfo->notebook=gtk_notebook_new();
|
| 1251 |
|
| 1252 | @@ -319,7 +319,7 @@ void GripDie(GtkWidget *widget,gpointer data)
|
| 1253 | {
|
| 1254 | GripInfo *ginfo;
|
| 1255 |
|
| 1256 | - ginfo=(GripInfo *)gtk_object_get_user_data(GTK_OBJECT(widget));
|
| 1257 | + ginfo=(GripInfo *)g_object_get_data(G_OBJECT(widget), "user_data");
|
| 1258 |
|
| 1259 | if(ginfo->ripping_a_disc || ginfo->encoding)
|
| 1260 | ReallyDie(ConfirmDialog ((GtkWindow *)ginfo->gui_info.app,
|
| 1261 | @@ -397,11 +397,11 @@ static void MakeHelpPage(GripInfo *ginfo)
|
| 1262 | help_page=MakeNewPage(ginfo->gui_info.notebook,_("Help"));
|
| 1263 |
|
| 1264 | vbox=gtk_vbox_new(FALSE,0);
|
| 1265 | - gtk_container_border_width(GTK_CONTAINER(vbox),3);
|
| 1266 | + gtk_container_set_border_width(GTK_CONTAINER(vbox),3);
|
| 1267 |
|
| 1268 | button=gtk_button_new_with_label(_("Table Of Contents"));
|
| 1269 | - gtk_signal_connect(GTK_OBJECT(button), "clicked",
|
| 1270 | - GTK_SIGNAL_FUNC(DoHelp), NULL);
|
| 1271 | + g_signal_connect(G_OBJECT(button), "clicked",
|
| 1272 | + G_CALLBACK(DoHelp), NULL);
|
| 1273 | gtk_box_pack_start(GTK_BOX(vbox), button, FALSE, FALSE, 0);
|
| 1274 | gtk_widget_show(button);
|
| 1275 |
|
| 1276 | @@ -425,9 +425,9 @@ void MakeAboutPage(GripGUI *uinfo)
|
| 1277 | gtk_widget_set_style(ebox,uinfo->style_wb);
|
| 1278 |
|
| 1279 | vbox=gtk_vbox_new(TRUE,5);
|
| 1280 | - gtk_container_border_width(GTK_CONTAINER(vbox),3);
|
| 1281 | + gtk_container_set_border_width(GTK_CONTAINER(vbox),3);
|
| 1282 |
|
| 1283 | - logo=Loadxpm(GTK_WIDGET(uinfo->app),grip_xpm);
|
| 1284 | + logo=gtk_image_new_from_pixbuf(Loadxpm(GTK_WIDGET(uinfo->app),grip_xpm));
|
| 1285 |
|
| 1286 | gtk_box_pack_start(GTK_BOX(vbox),logo,FALSE,FALSE,0);
|
| 1287 | gtk_widget_show(logo);
|
| 1288 | @@ -458,10 +458,10 @@ void MakeAboutPage(GripGUI *uinfo)
|
| 1289 |
|
| 1290 | button=gtk_button_new_with_label(PACKAGE_BUGREPORT);
|
| 1291 | gtk_widget_set_style(button,uinfo->style_dark_grey);
|
| 1292 | - gtk_widget_set_style(GTK_BIN(button)->child,
|
| 1293 | + gtk_widget_set_style(gtk_bin_get_child(GTK_BIN(button)),
|
| 1294 | uinfo->style_dark_grey);
|
| 1295 | - gtk_signal_connect(GTK_OBJECT(button),"clicked",
|
| 1296 | - GTK_SIGNAL_FUNC(Homepage),uinfo);
|
| 1297 | + g_signal_connect(G_OBJECT(button),"clicked",
|
| 1298 | + G_CALLBACK(Homepage),uinfo);
|
| 1299 | gtk_box_pack_start(GTK_BOX(hbox),button,FALSE,FALSE,0);
|
| 1300 | gtk_widget_show(button);
|
| 1301 |
|
| 1302 | @@ -481,20 +481,20 @@ void MakeAboutPage(GripGUI *uinfo)
|
| 1303 |
|
| 1304 | static void MakeStyles(GripGUI *uinfo)
|
| 1305 | {
|
| 1306 | - GdkColor gdkblack;
|
| 1307 | - GdkColor gdkwhite;
|
| 1308 | + GdkColor *gdkblack;
|
| 1309 | + GdkColor *gdkwhite;
|
| 1310 | GdkColor *color_LCD;
|
| 1311 | GdkColor *color_dark_grey;
|
| 1312 |
|
| 1313 | - gdk_color_white(gdk_colormap_get_system(),&gdkwhite);
|
| 1314 | - gdk_color_black(gdk_colormap_get_system(),&gdkblack);
|
| 1315 | + gdkwhite=MakeColor(65535,65535,65535);
|
| 1316 | + gdkblack=MakeColor(0,0,0);
|
| 1317 |
|
| 1318 | color_LCD=MakeColor(33686,38273,29557);
|
| 1319 | color_dark_grey=MakeColor(0x4444,0x4444,0x4444);
|
| 1320 |
|
| 1321 | - uinfo->style_wb=MakeStyle(&gdkwhite,&gdkblack,FALSE);
|
| 1322 | + uinfo->style_wb=MakeStyle(gdkwhite,gdkblack,FALSE);
|
| 1323 | uinfo->style_LCD=MakeStyle(color_LCD,color_LCD,FALSE);
|
| 1324 | - uinfo->style_dark_grey=MakeStyle(&gdkwhite,color_dark_grey,TRUE);
|
| 1325 | + uinfo->style_dark_grey=MakeStyle(gdkwhite,color_dark_grey,TRUE);
|
| 1326 | }
|
| 1327 |
|
| 1328 | static void Homepage(GtkWidget *widget,gpointer data)
|
| 1329 | @@ -512,8 +512,8 @@ static void LoadImages(GripGUI *uinfo)
|
| 1330 | uinfo->eject_image=Loadxpm(uinfo->app,eject_xpm);
|
| 1331 | uinfo->cdscan_image=Loadxpm(uinfo->app,cdscan_xpm);
|
| 1332 | uinfo->ff_image=Loadxpm(uinfo->app,ff_xpm);
|
| 1333 | - uinfo->lowleft_image=Loadxpm(uinfo->app,lowleft_xpm);
|
| 1334 | - uinfo->lowright_image=Loadxpm(uinfo->app,lowright_xpm);
|
| 1335 | + uinfo->lowleft_image=gtk_image_new_from_pixbuf(Loadxpm(uinfo->app,lowleft_xpm));
|
| 1336 | + uinfo->lowright_image=gtk_image_new_from_pixbuf(Loadxpm(uinfo->app,lowright_xpm));
|
| 1337 | uinfo->minmax_image=Loadxpm(uinfo->app,minmax_xpm);
|
| 1338 | uinfo->nexttrk_image=Loadxpm(uinfo->app,nexttrk_xpm);
|
| 1339 | uinfo->playpaus_image=Loadxpm(uinfo->app,playpaus_xpm);
|
| 1340 | @@ -526,8 +526,8 @@ static void LoadImages(GripGUI *uinfo)
|
| 1341 | uinfo->quit_image=Loadxpm(uinfo->app,quit_xpm);
|
| 1342 | uinfo->rew_image=Loadxpm(uinfo->app,rew_xpm);
|
| 1343 | uinfo->stop_image=Loadxpm(uinfo->app,stop_xpm);
|
| 1344 | - uinfo->upleft_image=Loadxpm(uinfo->app,upleft_xpm);
|
| 1345 | - uinfo->upright_image=Loadxpm(uinfo->app,upright_xpm);
|
| 1346 | + uinfo->upleft_image=gtk_image_new_from_pixbuf(Loadxpm(uinfo->app,upleft_xpm));
|
| 1347 | + uinfo->upright_image=gtk_image_new_from_pixbuf(Loadxpm(uinfo->app,upright_xpm));
|
| 1348 | uinfo->vol_image=Loadxpm(uinfo->app,vol_xpm);
|
| 1349 | uinfo->discdbwht_image=Loadxpm(uinfo->app,discdbwht_xpm);
|
| 1350 | uinfo->rotate_image=Loadxpm(uinfo->app,rotate_xpm);
|
| 1351 | @@ -536,7 +536,7 @@ static void LoadImages(GripGUI *uinfo)
|
| 1352 | uinfo->mail_image=Loadxpm(uinfo->app,mail_xpm);
|
| 1353 | uinfo->save_image=Loadxpm(uinfo->app,save_xpm);
|
| 1354 |
|
| 1355 | - uinfo->empty_image=NewBlankPixmap(uinfo->app);
|
| 1356 | + uinfo->empty_image=NewBlankPixmap(NULL);
|
| 1357 |
|
| 1358 | uinfo->discdb_pix[0]=Loadxpm(uinfo->app,discdb0_xpm);
|
| 1359 | uinfo->discdb_pix[1]=Loadxpm(uinfo->app,discdb1_xpm);
|
| 1360 | @@ -570,7 +570,7 @@ void GripUpdate(GtkWidget *app)
|
| 1361 | GripInfo *ginfo;
|
| 1362 | time_t secs;
|
| 1363 |
|
| 1364 | - ginfo=(GripInfo *)gtk_object_get_user_data(GTK_OBJECT(app));
|
| 1365 | + ginfo=(GripInfo *)g_object_get_data(G_OBJECT(app), "user_data");
|
| 1366 |
|
| 1367 | if(ginfo->ffwding) FastFwd(ginfo);
|
| 1368 | if(ginfo->rewinding) Rewind(ginfo);
|
| 1369 | @@ -597,14 +597,14 @@ void GripUpdate(GtkWidget *app)
|
| 1370 |
|
| 1371 | void Busy(GripGUI *uinfo)
|
| 1372 | {
|
| 1373 | - gdk_window_set_cursor(uinfo->app->window,uinfo->wait_cursor);
|
| 1374 | + // FIXME gdk_window_set_cursor(GDK_WINDOW(uinfo->app),uinfo->wait_cursor);
|
| 1375 |
|
| 1376 | UpdateGTK();
|
| 1377 | }
|
| 1378 |
|
| 1379 | void UnBusy(GripGUI *uinfo)
|
| 1380 | {
|
| 1381 | - gdk_window_set_cursor(uinfo->app->window,NULL);
|
| 1382 | + // FIXME gdk_window_set_cursor(GDK_WINDOW(uinfo->app),NULL);
|
| 1383 |
|
| 1384 | UpdateGTK();
|
| 1385 | }
|
| 1386 | @@ -708,8 +708,6 @@ static void DoLoadConfig(GripInfo *ginfo)
|
| 1387 |
|
| 1388 | strcpy(ginfo->title_split_chars,"/");
|
| 1389 |
|
| 1390 | - ginfo->curr_pipe_fd=-1;
|
| 1391 | -
|
| 1392 | ginfo->num_cpu=1;
|
| 1393 | ginfo->ripping=FALSE;
|
| 1394 | ginfo->ripping_a_disc=FALSE;
|
| 1395 | @@ -900,36 +898,3 @@ void DoSaveConfig(GripInfo *ginfo)
|
| 1396 | SaveRipperConfig(ginfo,ginfo->selected_ripper);
|
| 1397 | SaveEncoderConfig(ginfo,ginfo->selected_encoder);
|
| 1398 | }
|
| 1399 | -
|
| 1400 | -/* Shut down stuff (generally before an exec) */
|
| 1401 | -void CloseStuff(void *user_data)
|
| 1402 | -{
|
| 1403 | - GripInfo *ginfo;
|
| 1404 | - int fd;
|
| 1405 | -
|
| 1406 | - ginfo=(GripInfo *)user_data;
|
| 1407 | -
|
| 1408 | - close(ConnectionNumber(GDK_DISPLAY()));
|
| 1409 | - close(ginfo->disc.cd_desc);
|
| 1410 | -
|
| 1411 | - fd=open("/dev/null",O_RDWR);
|
| 1412 | - dup2(fd,0);
|
| 1413 | -
|
| 1414 | - if(ginfo->do_redirect) {
|
| 1415 | - if(ginfo->curr_pipe_fd>0) {
|
| 1416 | - dup2(ginfo->curr_pipe_fd,1);
|
| 1417 | - dup2(ginfo->curr_pipe_fd,2);
|
| 1418 | -
|
| 1419 | - ginfo->curr_pipe_fd=-1;
|
| 1420 | - }
|
| 1421 | - else {
|
| 1422 | - dup2(fd,1);
|
| 1423 | - dup2(fd,2);
|
| 1424 | - }
|
| 1425 | - }
|
| 1426 | -
|
| 1427 | - /* Close any other filehandles that might be around */
|
| 1428 | - for(fd=3;fd<NOFILE;fd++) {
|
| 1429 | - close(fd);
|
| 1430 | - }
|
| 1431 | -}
|
| 1432 | diff --git a/src/grip.h b/src/grip.h
|
| 1433 | index afc24a5..0f7955d 100644
|
| 1434 | |
| 1435 | |
| 1436 | @@ -144,41 +144,41 @@ typedef struct _grip_gui {
|
| 1437 | GtkWidget *all_encprogbar;
|
| 1438 |
|
| 1439 | /* Images */
|
| 1440 | - GtkWidget *check_image;
|
| 1441 | - GtkWidget *eject_image;
|
| 1442 | - GtkWidget *cdscan_image;
|
| 1443 | - GtkWidget *ff_image;
|
| 1444 | + GdkPixbuf *check_image;
|
| 1445 | + GdkPixbuf *eject_image;
|
| 1446 | + GdkPixbuf *cdscan_image;
|
| 1447 | + GdkPixbuf *ff_image;
|
| 1448 | GtkWidget *lowleft_image;
|
| 1449 | GtkWidget *lowright_image;
|
| 1450 | - GtkWidget *minmax_image;
|
| 1451 | - GtkWidget *nexttrk_image;
|
| 1452 | - GtkWidget *playpaus_image;
|
| 1453 | - GtkWidget *prevtrk_image;
|
| 1454 | - GtkWidget *loop_image;
|
| 1455 | - GtkWidget *noloop_image;
|
| 1456 | - GtkWidget *random_image;
|
| 1457 | - GtkWidget *playlist_image;
|
| 1458 | - GtkWidget *playnorm_image;
|
| 1459 | - GtkWidget *quit_image;
|
| 1460 | - GtkWidget *rew_image;
|
| 1461 | - GtkWidget *stop_image;
|
| 1462 | + GdkPixbuf *minmax_image;
|
| 1463 | + GdkPixbuf *nexttrk_image;
|
| 1464 | + GdkPixbuf *playpaus_image;
|
| 1465 | + GdkPixbuf *prevtrk_image;
|
| 1466 | + GdkPixbuf *loop_image;
|
| 1467 | + GdkPixbuf *noloop_image;
|
| 1468 | + GdkPixbuf *random_image;
|
| 1469 | + GdkPixbuf *playlist_image;
|
| 1470 | + GdkPixbuf *playnorm_image;
|
| 1471 | + GdkPixbuf *quit_image;
|
| 1472 | + GdkPixbuf *rew_image;
|
| 1473 | + GdkPixbuf *stop_image;
|
| 1474 | GtkWidget *upleft_image;
|
| 1475 | GtkWidget *upright_image;
|
| 1476 | - GtkWidget *vol_image;
|
| 1477 | - GtkWidget *discdbwht_image;
|
| 1478 | - GtkWidget *rotate_image;
|
| 1479 | - GtkWidget *edit_image;
|
| 1480 | - GtkWidget *progtrack_image;
|
| 1481 | - GtkWidget *mail_image;
|
| 1482 | - GtkWidget *save_image;
|
| 1483 | - GtkWidget *empty_image;
|
| 1484 | -
|
| 1485 | - GtkWidget *discdb_pix[2];
|
| 1486 | - GtkWidget *rip_pix[4];
|
| 1487 | - GtkWidget *mp3_pix[4];
|
| 1488 | - GtkWidget *smile_pix[8];
|
| 1489 | -
|
| 1490 | - GtkWidget *play_pix[3];
|
| 1491 | + GdkPixbuf *vol_image;
|
| 1492 | + GdkPixbuf *discdbwht_image;
|
| 1493 | + GdkPixbuf *rotate_image;
|
| 1494 | + GdkPixbuf *edit_image;
|
| 1495 | + GdkPixbuf *progtrack_image;
|
| 1496 | + GdkPixbuf *mail_image;
|
| 1497 | + GdkPixbuf *save_image;
|
| 1498 | + GdkPixbuf *empty_image;
|
| 1499 | +
|
| 1500 | + GdkPixbuf *discdb_pix[2];
|
| 1501 | + GdkPixbuf *rip_pix[4];
|
| 1502 | + GdkPixbuf *mp3_pix[4];
|
| 1503 | + GdkPixbuf *smile_pix[8];
|
| 1504 | +
|
| 1505 | + GdkPixbuf *play_pix[3];
|
| 1506 |
|
| 1507 | /* notification area widgets */
|
| 1508 | GtkStatusIcon *tray_icon;
|
| 1509 | @@ -246,8 +246,6 @@ typedef struct _grip_info {
|
| 1510 |
|
| 1511 | GripGUI gui_info;
|
| 1512 |
|
| 1513 | - int curr_pipe_fd;
|
| 1514 | -
|
| 1515 | int num_cpu;
|
| 1516 | gboolean ripping;
|
| 1517 | gboolean encoding;
|
| 1518 | @@ -360,7 +358,6 @@ void GripUpdate(GtkWidget *app);
|
| 1519 | GtkWidget *MakeNewPage(GtkWidget *notebook,char *name);
|
| 1520 | void Busy(GripGUI *uinfo);
|
| 1521 | void UnBusy(GripGUI *uinfo);
|
| 1522 | -void CloseStuff(void *user_data);
|
| 1523 |
|
| 1524 | #endif /* ifndef GRIP_H */
|
| 1525 |
|
| 1526 | diff --git a/src/gripcfg.c b/src/gripcfg.c
|
| 1527 | index ca61005..acd013a 100644
|
| 1528 | |
| 1529 | |
| 1530 | @@ -84,8 +84,7 @@ void MakeConfigPage(GripInfo *ginfo)
|
| 1531 | GtkWidget *button;
|
| 1532 | GtkWidget *hsep;
|
| 1533 | GtkWidget *hbox;
|
| 1534 | - GtkWidget *menu,*optmenu;
|
| 1535 | - GtkWidget *item;
|
| 1536 | + GtkWidget *menu;
|
| 1537 | MP3Encoder *enc;
|
| 1538 | Ripper *rip;
|
| 1539 |
|
| 1540 | @@ -156,7 +155,7 @@ void MakeConfigPage(GripInfo *ginfo)
|
| 1541 | page2=gtk_frame_new(NULL);
|
| 1542 |
|
| 1543 | vbox=gtk_vbox_new(FALSE,4);
|
| 1544 | - gtk_container_border_width(GTK_CONTAINER(vbox),3);
|
| 1545 | + gtk_container_set_border_width(GTK_CONTAINER(vbox),3);
|
| 1546 |
|
| 1547 | hbox=gtk_hbox_new(FALSE,3);
|
| 1548 |
|
| 1549 | @@ -164,24 +163,18 @@ void MakeConfigPage(GripInfo *ginfo)
|
| 1550 | gtk_box_pack_start(GTK_BOX(hbox),label,TRUE,TRUE,0);
|
| 1551 | gtk_widget_show(label);
|
| 1552 |
|
| 1553 | - menu=gtk_menu_new();
|
| 1554 | + menu=gtk_combo_box_text_new();
|
| 1555 | + g_signal_connect(G_OBJECT(menu),"changed",
|
| 1556 | + G_CALLBACK(RipperSelected),(gpointer)ginfo);
|
| 1557 |
|
| 1558 | rip=ripper_defaults;
|
| 1559 |
|
| 1560 | while(*(rip->name)) {
|
| 1561 | - item=gtk_menu_item_new_with_label(rip->name);
|
| 1562 | - gtk_object_set_user_data(GTK_OBJECT(item),(gpointer)rip);
|
| 1563 | - gtk_signal_connect(GTK_OBJECT(item),"activate",
|
| 1564 | - GTK_SIGNAL_FUNC(RipperSelected),(gpointer)ginfo);
|
| 1565 | - gtk_menu_append(GTK_MENU(menu),item);
|
| 1566 | - gtk_widget_show(item);
|
| 1567 | + gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(menu), rip->name);
|
| 1568 |
|
| 1569 | rip++;
|
| 1570 | }
|
| 1571 |
|
| 1572 | - /* Make sure the selected ripper is active */
|
| 1573 | - gtk_menu_set_active(GTK_MENU(menu),ginfo->selected_ripper);
|
| 1574 | -
|
| 1575 | #ifdef CDPAR
|
| 1576 | if(ginfo->selected_ripper==0) ginfo->using_builtin_cdp=TRUE;
|
| 1577 | else ginfo->using_builtin_cdp=FALSE;
|
| 1578 | @@ -189,11 +182,8 @@ void MakeConfigPage(GripInfo *ginfo)
|
| 1579 | ginfo->using_builtin_cdp=FALSE;
|
| 1580 | #endif
|
| 1581 |
|
| 1582 | - optmenu=gtk_option_menu_new();
|
| 1583 | - gtk_option_menu_set_menu(GTK_OPTION_MENU(optmenu),menu);
|
| 1584 | + gtk_box_pack_start(GTK_BOX(hbox),menu,TRUE,TRUE,0);
|
| 1585 | gtk_widget_show(menu);
|
| 1586 | - gtk_box_pack_start(GTK_BOX(hbox),optmenu,TRUE,TRUE,0);
|
| 1587 | - gtk_widget_show(optmenu);
|
| 1588 |
|
| 1589 | gtk_box_pack_start(GTK_BOX(vbox),hbox,FALSE,FALSE,0);
|
| 1590 | gtk_widget_show(hbox);
|
| 1591 | @@ -214,6 +204,9 @@ void MakeConfigPage(GripInfo *ginfo)
|
| 1592 | gtk_box_pack_start(GTK_BOX(uinfo->rip_exe_box),entry,FALSE,FALSE,0);
|
| 1593 | gtk_widget_show(entry);
|
| 1594 |
|
| 1595 | + /* Make sure the selected ripper is active */
|
| 1596 | + gtk_combo_box_set_active(GTK_COMBO_BOX(menu), ginfo->selected_ripper);
|
| 1597 | +
|
| 1598 | gtk_box_pack_start(GTK_BOX(vbox),uinfo->rip_exe_box,FALSE,FALSE,0);
|
| 1599 | if(!ginfo->using_builtin_cdp)
|
| 1600 | gtk_widget_show(uinfo->rip_exe_box);
|
| 1601 | @@ -280,7 +273,7 @@ void MakeConfigPage(GripInfo *ginfo)
|
| 1602 | page2=gtk_frame_new(NULL);
|
| 1603 |
|
| 1604 | vbox=gtk_vbox_new(FALSE,2);
|
| 1605 | - gtk_container_border_width(GTK_CONTAINER(vbox),3);
|
| 1606 | + gtk_container_set_border_width(GTK_CONTAINER(vbox),3);
|
| 1607 |
|
| 1608 | entry=MakeNumEntry(NULL,&ginfo->ripnice,_("Rip 'nice' value"),3);
|
| 1609 | gtk_box_pack_start(GTK_BOX(vbox),entry,FALSE,FALSE,0);
|
| 1610 | @@ -363,7 +356,7 @@ void MakeConfigPage(GripInfo *ginfo)
|
| 1611 | page2=gtk_frame_new(NULL);
|
| 1612 |
|
| 1613 | vbox=gtk_vbox_new(FALSE,4);
|
| 1614 | - gtk_container_border_width(GTK_CONTAINER(vbox),3);
|
| 1615 | + gtk_container_set_border_width(GTK_CONTAINER(vbox),3);
|
| 1616 |
|
| 1617 | hbox=gtk_hbox_new(FALSE,3);
|
| 1618 |
|
| 1619 | @@ -371,28 +364,20 @@ void MakeConfigPage(GripInfo *ginfo)
|
| 1620 | gtk_box_pack_start(GTK_BOX(hbox),label,TRUE,TRUE,0);
|
| 1621 | gtk_widget_show(label);
|
| 1622 |
|
| 1623 | - menu=gtk_menu_new();
|
| 1624 | + menu=gtk_combo_box_text_new();
|
| 1625 | + g_signal_connect(G_OBJECT(menu),"changed",
|
| 1626 | + G_CALLBACK(EncoderSelected),(gpointer)ginfo);
|
| 1627 |
|
| 1628 | enc=encoder_defaults;
|
| 1629 |
|
| 1630 | while(*(enc->name)) {
|
| 1631 | - item=gtk_menu_item_new_with_label(enc->name);
|
| 1632 | - gtk_object_set_user_data(GTK_OBJECT(item),(gpointer)enc);
|
| 1633 | - gtk_signal_connect(GTK_OBJECT(item),"activate",
|
| 1634 | - GTK_SIGNAL_FUNC(EncoderSelected),(gpointer)ginfo);
|
| 1635 | - gtk_menu_append(GTK_MENU(menu),item);
|
| 1636 | - gtk_widget_show(item);
|
| 1637 | + gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(menu), enc->name);
|
| 1638 |
|
| 1639 | enc++;
|
| 1640 | }
|
| 1641 |
|
| 1642 | - gtk_menu_set_active(GTK_MENU(menu),ginfo->selected_encoder);
|
| 1643 | -
|
| 1644 | - optmenu=gtk_option_menu_new();
|
| 1645 | - gtk_option_menu_set_menu(GTK_OPTION_MENU(optmenu),menu);
|
| 1646 | + gtk_box_pack_start(GTK_BOX(hbox),menu,TRUE,TRUE,0);
|
| 1647 | gtk_widget_show(menu);
|
| 1648 | - gtk_box_pack_start(GTK_BOX(hbox),optmenu,TRUE,TRUE,0);
|
| 1649 | - gtk_widget_show(optmenu);
|
| 1650 |
|
| 1651 | gtk_box_pack_start(GTK_BOX(vbox),hbox,FALSE,FALSE,0);
|
| 1652 | gtk_widget_show(hbox);
|
| 1653 | @@ -417,7 +402,9 @@ void MakeConfigPage(GripInfo *ginfo)
|
| 1654 | 10,TRUE);
|
| 1655 | gtk_box_pack_start(GTK_BOX(vbox),entry,FALSE,FALSE,0);
|
| 1656 | gtk_widget_show(entry);
|
| 1657 | -
|
| 1658 | +
|
| 1659 | + gtk_combo_box_set_active(GTK_COMBO_BOX(menu), ginfo->selected_encoder);
|
| 1660 | +
|
| 1661 | entry=MakeStrEntry(NULL,ginfo->mp3fileformat,_("Encoder file format"),
|
| 1662 | 255,TRUE);
|
| 1663 | gtk_box_pack_start(GTK_BOX(vbox),entry,FALSE,FALSE,0);
|
| 1664 | @@ -439,7 +426,7 @@ void MakeConfigPage(GripInfo *ginfo)
|
| 1665 | page2=gtk_frame_new(NULL);
|
| 1666 |
|
| 1667 | vbox=gtk_vbox_new(FALSE,0);
|
| 1668 | - gtk_container_border_width(GTK_CONTAINER(vbox),3);
|
| 1669 | + gtk_container_set_border_width(GTK_CONTAINER(vbox),3);
|
| 1670 |
|
| 1671 | check=MakeCheckButton(NULL,&ginfo->delete_wavs,
|
| 1672 | _("Delete .wav after encoding"));
|
| 1673 | @@ -504,7 +491,7 @@ void MakeConfigPage(GripInfo *ginfo)
|
| 1674 | page=gtk_frame_new(NULL);
|
| 1675 |
|
| 1676 | vbox=gtk_vbox_new(FALSE,2);
|
| 1677 | - gtk_container_border_width(GTK_CONTAINER(vbox),3);
|
| 1678 | + gtk_container_set_border_width(GTK_CONTAINER(vbox),3);
|
| 1679 |
|
| 1680 | check=MakeCheckButton(NULL,&ginfo->doid3,_("Add ID3 tags to encoded files"));
|
| 1681 | gtk_box_pack_start(GTK_BOX(vbox),check,FALSE,FALSE,0);
|
| 1682 | @@ -548,14 +535,14 @@ void MakeConfigPage(GripInfo *ginfo)
|
| 1683 | page=gtk_frame_new(NULL);
|
| 1684 |
|
| 1685 | dbvbox=gtk_vbox_new(FALSE,4);
|
| 1686 | - gtk_container_border_width(GTK_CONTAINER(dbvbox),3);
|
| 1687 | + gtk_container_set_border_width(GTK_CONTAINER(dbvbox),3);
|
| 1688 |
|
| 1689 | notebook=gtk_notebook_new();
|
| 1690 |
|
| 1691 | page2=gtk_frame_new(NULL);
|
| 1692 |
|
| 1693 | vbox=gtk_vbox_new(FALSE,2);
|
| 1694 | - gtk_container_border_width(GTK_CONTAINER(vbox),3);
|
| 1695 | + gtk_container_set_border_width(GTK_CONTAINER(vbox),3);
|
| 1696 |
|
| 1697 | entry=MakeStrEntry(NULL,ginfo->dbserver.name,_("DB server"),255,TRUE);
|
| 1698 | gtk_box_pack_start(GTK_BOX(vbox),entry,FALSE,FALSE,0);
|
| 1699 | @@ -575,7 +562,7 @@ void MakeConfigPage(GripInfo *ginfo)
|
| 1700 | page2=gtk_frame_new(NULL);
|
| 1701 |
|
| 1702 | vbox=gtk_vbox_new(FALSE,2);
|
| 1703 | - gtk_container_border_width(GTK_CONTAINER(vbox),3);
|
| 1704 | + gtk_container_set_border_width(GTK_CONTAINER(vbox),3);
|
| 1705 |
|
| 1706 | entry=MakeStrEntry(NULL,ginfo->dbserver2.name,_("DB server"),255,TRUE);
|
| 1707 | gtk_box_pack_start(GTK_BOX(vbox),entry,FALSE,FALSE,0);
|
| 1708 | @@ -628,11 +615,11 @@ void MakeConfigPage(GripInfo *ginfo)
|
| 1709 | page=gtk_frame_new(NULL);
|
| 1710 |
|
| 1711 | vbox=gtk_vbox_new(FALSE,2);
|
| 1712 | - gtk_container_border_width(GTK_CONTAINER(vbox),3);
|
| 1713 | + gtk_container_set_border_width(GTK_CONTAINER(vbox),3);
|
| 1714 |
|
| 1715 | check=MakeCheckButton(&button,&ginfo->use_proxy,_("Use proxy server"));
|
| 1716 | - gtk_signal_connect(GTK_OBJECT(button),"clicked",
|
| 1717 | - GTK_SIGNAL_FUNC(UseProxyChanged),(gpointer)ginfo);
|
| 1718 | + g_signal_connect(G_OBJECT(button),"clicked",
|
| 1719 | + G_CALLBACK(UseProxyChanged),(gpointer)ginfo);
|
| 1720 | gtk_box_pack_start(GTK_BOX(vbox),check,FALSE,FALSE,0);
|
| 1721 | gtk_widget_show(check);
|
| 1722 |
|
| 1723 | @@ -670,7 +657,7 @@ void MakeConfigPage(GripInfo *ginfo)
|
| 1724 | page=gtk_frame_new(NULL);
|
| 1725 |
|
| 1726 | vbox=gtk_vbox_new(FALSE,2);
|
| 1727 | - gtk_container_border_width(GTK_CONTAINER(vbox),3);
|
| 1728 | + gtk_container_set_border_width(GTK_CONTAINER(vbox),3);
|
| 1729 |
|
| 1730 | entry=MakeStrEntry(NULL,ginfo->user_email,_("Email address"),255,TRUE);
|
| 1731 | gtk_box_pack_start(GTK_BOX(vbox),entry,FALSE,FALSE,0);
|
| 1732 | @@ -739,7 +726,7 @@ static void RipperSelected(GtkWidget *widget,gpointer data)
|
| 1733 |
|
| 1734 | ginfo=(GripInfo *)data;
|
| 1735 | uinfo=&(ginfo->gui_info);
|
| 1736 | - rip=(Ripper *)gtk_object_get_user_data(GTK_OBJECT(widget));
|
| 1737 | + rip=&ripper_defaults[gtk_combo_box_get_active(GTK_COMBO_BOX(widget))];
|
| 1738 |
|
| 1739 | SaveRipperConfig(ginfo,ginfo->selected_ripper);
|
| 1740 |
|
| 1741 | @@ -836,7 +823,7 @@ static void EncoderSelected(GtkWidget *widget,gpointer data)
|
| 1742 |
|
| 1743 | ginfo=(GripInfo *)data;
|
| 1744 | uinfo=&(ginfo->gui_info);
|
| 1745 | - enc=(MP3Encoder *)gtk_object_get_user_data(GTK_OBJECT(widget));
|
| 1746 | + enc=&encoder_defaults[gtk_combo_box_get_active(GTK_COMBO_BOX(widget))];
|
| 1747 |
|
| 1748 | SaveEncoderConfig(ginfo,ginfo->selected_encoder);
|
| 1749 |
|
| 1750 | diff --git a/src/main.c b/src/main.c
|
| 1751 | index 99a9136..e530153 100644
|
| 1752 | |
| 1753 | |
| 1754 | @@ -145,7 +145,7 @@ int Cmain(int argc, char* argv[])
|
| 1755 | setvbuf(stdout, 0, _IONBF, 0);
|
| 1756 |
|
| 1757 | /* setup locale, i18n */
|
| 1758 | - gtk_set_locale();
|
| 1759 | + setlocale (LC_ALL,"");
|
| 1760 | bindtextdomain(GETTEXT_PACKAGE,GNOMELOCALEDIR);
|
| 1761 | textdomain(GETTEXT_PACKAGE);
|
| 1762 |
|
| 1763 | @@ -170,7 +170,7 @@ int Cmain(int argc, char* argv[])
|
| 1764 |
|
| 1765 | gtk_widget_show(grip_app);
|
| 1766 |
|
| 1767 | - gtk_timeout_add(1000,TimeOut,0);
|
| 1768 | + g_timeout_add(1000,TimeOut,0);
|
| 1769 |
|
| 1770 | gtk_main();
|
| 1771 |
|
| 1772 | diff --git a/src/rip.c b/src/rip.c
|
| 1773 | index 87d935a..2e57dea 100644
|
| 1774 | |
| 1775 | |
| 1776 | @@ -96,52 +96,51 @@ void MakeRipPage(GripInfo *ginfo)
|
| 1777 | rippage = MakeNewPage(uinfo->notebook, _("Rip"));
|
| 1778 |
|
| 1779 | vbox = gtk_vbox_new(FALSE, 2);
|
| 1780 | - gtk_container_border_width(GTK_CONTAINER(vbox), 3);
|
| 1781 | + gtk_container_set_border_width(GTK_CONTAINER(vbox), 3);
|
| 1782 |
|
| 1783 | hbox = gtk_hbox_new(FALSE, 5);
|
| 1784 |
|
| 1785 | vbox2 = gtk_vbox_new(FALSE, 0);
|
| 1786 |
|
| 1787 | button = gtk_button_new_with_label(_("Rip+Encode"));
|
| 1788 | - gtk_tooltips_set_tip(MakeToolTip(), button,
|
| 1789 | - _("Rip and encode selected tracks"), NULL);
|
| 1790 | - gtk_signal_connect(GTK_OBJECT(button), "clicked",
|
| 1791 | - GTK_SIGNAL_FUNC(DoRipEncode), (gpointer)ginfo);
|
| 1792 | + gtk_widget_set_tooltip_text(button,
|
| 1793 | + _("Rip and encode selected tracks"));
|
| 1794 | + g_signal_connect(G_OBJECT(button), "clicked",
|
| 1795 | + G_CALLBACK(DoRipEncode), (gpointer)ginfo);
|
| 1796 | gtk_box_pack_start(GTK_BOX(vbox2), button, FALSE, FALSE, 0);
|
| 1797 | gtk_widget_show(button);
|
| 1798 |
|
| 1799 | button = gtk_button_new_with_label(_("Rip Only"));
|
| 1800 | - gtk_tooltips_set_tip(MakeToolTip(), button,
|
| 1801 | - _("Rip but do not encode selected tracks"), NULL);
|
| 1802 | - gtk_signal_connect(GTK_OBJECT(button), "clicked",
|
| 1803 | - GTK_SIGNAL_FUNC(DoRip), (gpointer)ginfo);
|
| 1804 | + gtk_widget_set_tooltip_text(button,
|
| 1805 | + _("Rip but do not encode selected tracks"));
|
| 1806 | + g_signal_connect(G_OBJECT(button), "clicked",
|
| 1807 | + G_CALLBACK(DoRip), (gpointer)ginfo);
|
| 1808 | gtk_box_pack_start(GTK_BOX(vbox2), button, FALSE, FALSE, 0);
|
| 1809 | gtk_widget_show(button);
|
| 1810 |
|
| 1811 | button = gtk_button_new_with_label(_("Abort Rip and Encode"));
|
| 1812 | - gtk_tooltips_set_tip(MakeToolTip(), button,
|
| 1813 | - _("Kill all active rip and encode processes"), NULL);
|
| 1814 | - gtk_signal_connect(GTK_OBJECT(button), "clicked",
|
| 1815 | - GTK_SIGNAL_FUNC(KillRip), (gpointer)ginfo);
|
| 1816 | - gtk_signal_connect(GTK_OBJECT(button), "clicked",
|
| 1817 | - GTK_SIGNAL_FUNC(KillEncode), (gpointer)ginfo);
|
| 1818 | + gtk_widget_set_tooltip_text(button,
|
| 1819 | + _("Kill all active rip and encode processes"));
|
| 1820 | + g_signal_connect(G_OBJECT(button), "clicked",
|
| 1821 | + G_CALLBACK(KillRip), (gpointer)ginfo);
|
| 1822 | + g_signal_connect(G_OBJECT(button), "clicked",
|
| 1823 | + G_CALLBACK(KillEncode), (gpointer)ginfo);
|
| 1824 | gtk_box_pack_start(GTK_BOX(vbox2), button, FALSE, FALSE, 0);
|
| 1825 | gtk_widget_show(button);
|
| 1826 |
|
| 1827 | button = gtk_button_new_with_label(_("Abort Ripping Only"));
|
| 1828 | - gtk_tooltips_set_tip(MakeToolTip(), button,
|
| 1829 | - _("Kill rip process"), NULL);
|
| 1830 | - gtk_signal_connect(GTK_OBJECT(button), "clicked",
|
| 1831 | - GTK_SIGNAL_FUNC(KillRip), (gpointer)ginfo);
|
| 1832 | + gtk_widget_set_tooltip_text(button,
|
| 1833 | + _("Kill rip process"));
|
| 1834 | + g_signal_connect(G_OBJECT(button), "clicked",
|
| 1835 | + G_CALLBACK(KillRip), (gpointer)ginfo);
|
| 1836 | gtk_box_pack_start(GTK_BOX(vbox2), button, FALSE, FALSE, 0);
|
| 1837 | gtk_widget_show(button);
|
| 1838 |
|
| 1839 | button = gtk_button_new_with_label(_("DDJ Scan"));
|
| 1840 | - gtk_tooltips_set_tip(MakeToolTip(), button,
|
| 1841 | - _("Insert disc information into the DigitalDJ database"),
|
| 1842 | - NULL);
|
| 1843 | - gtk_signal_connect(GTK_OBJECT(button), "clicked",
|
| 1844 | - GTK_SIGNAL_FUNC(DBScan), (gpointer)ginfo);
|
| 1845 | + gtk_widget_set_tooltip_text(button,
|
| 1846 | + _("Insert disc information into the DigitalDJ database"));
|
| 1847 | + g_signal_connect(G_OBJECT(button), "clicked",
|
| 1848 | + G_CALLBACK(DBScan), (gpointer)ginfo);
|
| 1849 | gtk_box_pack_start(GTK_BOX(vbox2), button, FALSE, FALSE, 0);
|
| 1850 | gtk_widget_show(button);
|
| 1851 |
|
| 1852 | @@ -151,11 +150,11 @@ void MakeRipPage(GripInfo *ginfo)
|
| 1853 | partial_rip_frame = gtk_frame_new(NULL);
|
| 1854 |
|
| 1855 | vbox2 = gtk_vbox_new(FALSE, 0);
|
| 1856 | - gtk_container_border_width(GTK_CONTAINER(vbox2), 3);
|
| 1857 | + gtk_container_set_border_width(GTK_CONTAINER(vbox2), 3);
|
| 1858 |
|
| 1859 | check = MakeCheckButton(NULL, &ginfo->rip_partial, _("Rip partial track"));
|
| 1860 | - gtk_signal_connect(GTK_OBJECT(check), "clicked",
|
| 1861 | - GTK_SIGNAL_FUNC(RipPartialChanged), (gpointer)ginfo);
|
| 1862 | + g_signal_connect(G_OBJECT(check), "clicked",
|
| 1863 | + G_CALLBACK(RipPartialChanged), (gpointer)ginfo);
|
| 1864 | gtk_box_pack_start(GTK_BOX(vbox2), check, FALSE, FALSE, 0);
|
| 1865 | gtk_widget_show(check);
|
| 1866 |
|
| 1867 | @@ -165,8 +164,8 @@ void MakeRipPage(GripInfo *ginfo)
|
| 1868 | hbox2 = gtk_hbox_new(FALSE, 5);
|
| 1869 |
|
| 1870 | button = gtk_button_new_with_label(_("Play"));
|
| 1871 | - gtk_signal_connect(GTK_OBJECT(button), "clicked",
|
| 1872 | - GTK_SIGNAL_FUNC(PlaySegmentCB),
|
| 1873 | + g_signal_connect(G_OBJECT(button), "clicked",
|
| 1874 | + G_CALLBACK(PlaySegmentCB),
|
| 1875 | (gpointer)ginfo);
|
| 1876 | gtk_box_pack_start(GTK_BOX(hbox2), button, TRUE, TRUE, 0);
|
| 1877 | gtk_widget_show(button);
|
| 1878 | @@ -217,18 +216,18 @@ void MakeRipPage(GripInfo *ginfo)
|
| 1879 | g_object_unref(layout);
|
| 1880 |
|
| 1881 |
|
| 1882 | - gtk_widget_set_usize(uinfo->rip_prog_label, label_width, 0);
|
| 1883 | + gtk_widget_set_size_request(uinfo->rip_prog_label, label_width, 0);
|
| 1884 | gtk_box_pack_start(GTK_BOX(hbox), uinfo->rip_prog_label, FALSE, FALSE, 0);
|
| 1885 | - gtk_label_set(GTK_LABEL(uinfo->rip_prog_label), _("Rip: Idle"));
|
| 1886 | + gtk_label_set_text(GTK_LABEL(uinfo->rip_prog_label), _("Rip: Idle"));
|
| 1887 | gtk_widget_show(uinfo->rip_prog_label);
|
| 1888 |
|
| 1889 | uinfo->ripprogbar = gtk_progress_bar_new();
|
| 1890 | gtk_box_pack_start(GTK_BOX(hbox), uinfo->ripprogbar, FALSE, FALSE, 0);
|
| 1891 | gtk_widget_show(uinfo->ripprogbar);
|
| 1892 |
|
| 1893 | - uinfo->smile_indicator = NewBlankPixmap(uinfo->app);
|
| 1894 | - gtk_tooltips_set_tip(MakeToolTip(), uinfo->smile_indicator,
|
| 1895 | - _("Rip status"), NULL);
|
| 1896 | + uinfo->smile_indicator = gtk_image_new_from_pixbuf(uinfo->empty_image);
|
| 1897 | + gtk_widget_set_tooltip_text(uinfo->smile_indicator,
|
| 1898 | + _("Rip status"));
|
| 1899 | gtk_box_pack_start(GTK_BOX(hbox), uinfo->smile_indicator, FALSE, FALSE, 0);
|
| 1900 | gtk_widget_show(uinfo->smile_indicator);
|
| 1901 |
|
| 1902 | @@ -239,7 +238,7 @@ void MakeRipPage(GripInfo *ginfo)
|
| 1903 | hbox = gtk_hbox_new(FALSE, 3);
|
| 1904 |
|
| 1905 | uinfo->mp3_prog_label[mycpu] = gtk_label_new(_("Enc: Idle"));
|
| 1906 | - gtk_widget_set_usize(uinfo->mp3_prog_label[mycpu], label_width, 0);
|
| 1907 | + gtk_widget_set_size_request(uinfo->mp3_prog_label[mycpu], label_width, 0);
|
| 1908 |
|
| 1909 | gtk_box_pack_start(GTK_BOX(hbox), uinfo->mp3_prog_label[mycpu],
|
| 1910 | FALSE, FALSE, 0);
|
| 1911 | @@ -268,7 +267,7 @@ void MakeRipPage(GripInfo *ginfo)
|
| 1912 |
|
| 1913 | hbox = gtk_hbox_new(FALSE, 2);
|
| 1914 | uinfo->all_rip_label = gtk_label_new(_("Rip: Idle"));
|
| 1915 | - gtk_widget_set_usize(uinfo->all_rip_label, label_width, 0);
|
| 1916 | + gtk_widget_set_size_request(uinfo->all_rip_label, label_width, 0);
|
| 1917 | gtk_box_pack_start(GTK_BOX(hbox), uinfo->all_rip_label, FALSE, FALSE, 0);
|
| 1918 | gtk_widget_show(uinfo->all_rip_label);
|
| 1919 |
|
| 1920 | @@ -281,7 +280,7 @@ void MakeRipPage(GripInfo *ginfo)
|
| 1921 |
|
| 1922 | hbox=gtk_hbox_new(FALSE, 2);
|
| 1923 | uinfo->all_enc_label = gtk_label_new(_("Enc: Idle"));
|
| 1924 | - gtk_widget_set_usize(uinfo->all_enc_label, label_width, 0);
|
| 1925 | + gtk_widget_set_size_request(uinfo->all_enc_label, label_width, 0);
|
| 1926 | gtk_box_pack_start(GTK_BOX(hbox), uinfo->all_enc_label, FALSE, FALSE, 0);
|
| 1927 | gtk_widget_show(uinfo->all_enc_label);
|
| 1928 |
|
| 1929 | @@ -386,7 +385,6 @@ static void AddSQLEntry(GripInfo *ginfo, EncodeTrack *enc_track)
|
| 1930 | sqlpid = fork();
|
| 1931 |
|
| 1932 | if(sqlpid == 0) {
|
| 1933 | - CloseStuff(ginfo);
|
| 1934 |
|
| 1935 | if(*enc_track->song_artist)
|
| 1936 | execlp("mp3insert", "mp3insert",
|
| 1937 | @@ -866,7 +864,7 @@ void UpdateRipProgress(GripInfo *ginfo)
|
| 1938 |
|
| 1939 | ginfo->rip_percent = percent;
|
| 1940 |
|
| 1941 | - gtk_progress_bar_update(GTK_PROGRESS_BAR(uinfo->ripprogbar), percent);
|
| 1942 | + gtk_progress_bar_set_fraction(GTK_PROGRESS_BAR(uinfo->ripprogbar), percent);
|
| 1943 |
|
| 1944 | now = time(NULL);
|
| 1945 | elapsed = (gfloat)(now - ginfo->rip_started);
|
| 1946 | @@ -885,22 +883,19 @@ void UpdateRipProgress(GripInfo *ginfo)
|
| 1947 |
|
| 1948 | sprintf(buf, _("Rip: Trk %d (%3.1fx)"), ginfo->rip_track + 1, speed);
|
| 1949 |
|
| 1950 | - gtk_label_set(GTK_LABEL(uinfo->rip_prog_label), buf);
|
| 1951 | + gtk_label_set_text(GTK_LABEL(uinfo->rip_prog_label), buf);
|
| 1952 |
|
| 1953 | quarter=(int)(percent * 4.0);
|
| 1954 |
|
| 1955 | if(quarter < 4)
|
| 1956 | - CopyPixmap(GTK_PIXMAP(uinfo->rip_pix[quarter]),
|
| 1957 | - GTK_PIXMAP(uinfo->rip_indicator));
|
| 1958 | + gtk_image_set_from_pixbuf (GTK_IMAGE (uinfo->rip_indicator), uinfo->rip_pix[quarter]);
|
| 1959 |
|
| 1960 | #ifdef CDPAR
|
| 1961 | if(ginfo->using_builtin_cdp) {
|
| 1962 | if(uinfo->minimized)
|
| 1963 | - CopyPixmap(GTK_PIXMAP(uinfo->smile_pix[ginfo->rip_smile_level]),
|
| 1964 | - GTK_PIXMAP(uinfo->lcd_smile_indicator));
|
| 1965 | + gtk_image_set_from_pixbuf (GTK_IMAGE (uinfo->lcd_smile_indicator), uinfo->smile_pix[ginfo->rip_smile_level]);
|
| 1966 | else
|
| 1967 | - CopyPixmap(GTK_PIXMAP(uinfo->smile_pix[ginfo->rip_smile_level]),
|
| 1968 | - GTK_PIXMAP(uinfo->smile_indicator));
|
| 1969 | + gtk_image_set_from_pixbuf (GTK_IMAGE (uinfo->smile_indicator), uinfo->smile_pix[ginfo->rip_smile_level]);
|
| 1970 | }
|
| 1971 | #endif
|
| 1972 |
|
| 1973 | @@ -917,12 +912,12 @@ void UpdateRipProgress(GripInfo *ginfo)
|
| 1974 | ginfo->rip_tot_percent = percent;
|
| 1975 |
|
| 1976 | sprintf(buf, _("Rip: %6.2f%%"), percent * 100.0);
|
| 1977 | - gtk_label_set(GTK_LABEL(uinfo->all_rip_label), buf);
|
| 1978 | - gtk_progress_bar_update(GTK_PROGRESS_BAR(uinfo->all_ripprogbar), percent);
|
| 1979 | + gtk_label_set_text(GTK_LABEL(uinfo->all_rip_label), buf);
|
| 1980 | + gtk_progress_bar_set_fraction(GTK_PROGRESS_BAR(uinfo->all_ripprogbar), percent);
|
| 1981 | } else if (ginfo->stop_rip) {
|
| 1982 | - gtk_label_set(GTK_LABEL(uinfo->all_rip_label), _("Rip: Idle"));
|
| 1983 | + gtk_label_set_text(GTK_LABEL(uinfo->all_rip_label), _("Rip: Idle"));
|
| 1984 |
|
| 1985 | - gtk_progress_bar_update(GTK_PROGRESS_BAR(uinfo->all_ripprogbar), 0.0);
|
| 1986 | + gtk_progress_bar_set_fraction(GTK_PROGRESS_BAR(uinfo->all_ripprogbar), 0.0);
|
| 1987 | }
|
| 1988 |
|
| 1989 | /* Check if a rip finished */
|
| 1990 | @@ -932,10 +927,8 @@ void UpdateRipProgress(GripInfo *ginfo)
|
| 1991 | if(!ginfo->using_builtin_cdp) {
|
| 1992 | waitpid(ginfo->rippid, NULL, 0);
|
| 1993 | } else {
|
| 1994 | - CopyPixmap(GTK_PIXMAP(uinfo->empty_image),
|
| 1995 | - GTK_PIXMAP(uinfo->lcd_smile_indicator));
|
| 1996 | - CopyPixmap(GTK_PIXMAP(uinfo->empty_image),
|
| 1997 | - GTK_PIXMAP(uinfo->smile_indicator));
|
| 1998 | + gtk_image_set_from_pixbuf (GTK_IMAGE (uinfo->lcd_smile_indicator), uinfo->empty_image);
|
| 1999 | + gtk_image_set_from_pixbuf (GTK_IMAGE (uinfo->smile_indicator), uinfo->empty_image);
|
| 2000 | }
|
| 2001 |
|
| 2002 | ginfo->all_riplast = 0;
|
| 2003 | @@ -954,9 +947,8 @@ void UpdateRipProgress(GripInfo *ginfo)
|
| 2004 | if(*ginfo->wav_filter_cmd)
|
| 2005 | DoWavFilter(ginfo);
|
| 2006 |
|
| 2007 | - gtk_progress_bar_update(GTK_PROGRESS_BAR(uinfo->ripprogbar), 0.0);
|
| 2008 | - CopyPixmap(GTK_PIXMAP(uinfo->empty_image),
|
| 2009 | - GTK_PIXMAP(uinfo->rip_indicator));
|
| 2010 | + gtk_progress_bar_set_fraction(GTK_PROGRESS_BAR(uinfo->ripprogbar), 0.0);
|
| 2011 | + gtk_image_set_from_pixbuf (GTK_IMAGE (uinfo->rip_indicator), uinfo->empty_image);
|
| 2012 |
|
| 2013 | if(!ginfo->stop_rip) {
|
| 2014 | if(ginfo->doencode) {
|
| 2015 | @@ -977,11 +969,11 @@ void UpdateRipProgress(GripInfo *ginfo)
|
| 2016 | if(!RipNextTrack(ginfo))
|
| 2017 | RipIsFinished(ginfo, FALSE);
|
| 2018 | else {
|
| 2019 | - gtk_label_set(GTK_LABEL(uinfo->rip_prog_label), _("Rip: Idle"));
|
| 2020 | + gtk_label_set_text(GTK_LABEL(uinfo->rip_prog_label), _("Rip: Idle"));
|
| 2021 | }
|
| 2022 | }
|
| 2023 | else {
|
| 2024 | - gtk_label_set(GTK_LABEL(uinfo->rip_prog_label), _("Rip: Idle"));
|
| 2025 | + gtk_label_set_text(GTK_LABEL(uinfo->rip_prog_label), _("Rip: Idle"));
|
| 2026 | }
|
| 2027 | }
|
| 2028 | else {
|
| 2029 | @@ -1009,7 +1001,7 @@ void UpdateRipProgress(GripInfo *ginfo)
|
| 2030 |
|
| 2031 | ginfo->enc_percent = percent;
|
| 2032 |
|
| 2033 | - gtk_progress_bar_update(GTK_PROGRESS_BAR(uinfo->mp3progbar[mycpu]),
|
| 2034 | + gtk_progress_bar_set_fraction(GTK_PROGRESS_BAR(uinfo->mp3progbar[mycpu]),
|
| 2035 | percent);
|
| 2036 |
|
| 2037 | now = time(NULL);
|
| 2038 | @@ -1024,13 +1016,12 @@ void UpdateRipProgress(GripInfo *ginfo)
|
| 2039 | sprintf(buf, _("Enc: Trk %d (%3.1fx)"),
|
| 2040 | ginfo->mp3_enc_track[mycpu] + 1, speed);
|
| 2041 |
|
| 2042 | - gtk_label_set(GTK_LABEL(uinfo->mp3_prog_label[mycpu]), buf);
|
| 2043 | + gtk_label_set_text(GTK_LABEL(uinfo->mp3_prog_label[mycpu]), buf);
|
| 2044 |
|
| 2045 | quarter = (int)(percent * 4.0);
|
| 2046 |
|
| 2047 | if(quarter < 4)
|
| 2048 | - CopyPixmap(GTK_PIXMAP(uinfo->mp3_pix[quarter]),
|
| 2049 | - GTK_PIXMAP(uinfo->mp3_indicator[mycpu]));
|
| 2050 | + gtk_image_set_from_pixbuf (GTK_IMAGE (uinfo->mp3_indicator[mycpu]), uinfo->mp3_pix[quarter]);
|
| 2051 | if (!ginfo->rip_partial && !ginfo->stop_encode &&
|
| 2052 | now != ginfo->mp3_started[mycpu]) {
|
| 2053 | ginfo->all_encdone += mystat.st_size-ginfo->all_enclast[mycpu];
|
| 2054 | @@ -1040,8 +1031,8 @@ void UpdateRipProgress(GripInfo *ginfo)
|
| 2055 | percent = 1.0;
|
| 2056 | ginfo->enc_tot_percent = percent;
|
| 2057 | sprintf(buf, _("Enc: %6.2f%%"), percent * 100.0);
|
| 2058 | - gtk_label_set(GTK_LABEL(uinfo->all_enc_label), buf);
|
| 2059 | - gtk_progress_bar_update(GTK_PROGRESS_BAR(uinfo->all_encprogbar),
|
| 2060 | + gtk_label_set_text(GTK_LABEL(uinfo->all_enc_label), buf);
|
| 2061 | + gtk_progress_bar_set_fraction(GTK_PROGRESS_BAR(uinfo->all_encprogbar),
|
| 2062 | percent);
|
| 2063 | }
|
| 2064 |
|
| 2065 | @@ -1050,9 +1041,8 @@ void UpdateRipProgress(GripInfo *ginfo)
|
| 2066 | ginfo->encoding &= ~(1<<mycpu);
|
| 2067 |
|
| 2068 | ginfo->all_enclast[mycpu] = 0;
|
| 2069 | - gtk_progress_bar_update(GTK_PROGRESS_BAR(uinfo->mp3progbar[mycpu]), 0.0);
|
| 2070 | - CopyPixmap(GTK_PIXMAP(uinfo->empty_image),
|
| 2071 | - GTK_PIXMAP(uinfo->mp3_indicator[mycpu]));
|
| 2072 | + gtk_progress_bar_set_fraction(GTK_PROGRESS_BAR(uinfo->mp3progbar[mycpu]), 0.0);
|
| 2073 | + gtk_image_set_from_pixbuf (GTK_IMAGE (uinfo->mp3_indicator[mycpu]), uinfo->empty_image);
|
| 2074 |
|
| 2075 | if(ginfo->doencode)
|
| 2076 | ginfo->num_wavs--;
|
| 2077 | @@ -1107,7 +1097,7 @@ void UpdateRipProgress(GripInfo *ginfo)
|
| 2078 | else ginfo->stop_encode = FALSE;
|
| 2079 |
|
| 2080 | if(!(ginfo->encoding & (1<<mycpu))) {
|
| 2081 | - gtk_label_set(GTK_LABEL(uinfo->mp3_prog_label[mycpu]),
|
| 2082 | + gtk_label_set_text(GTK_LABEL(uinfo->mp3_prog_label[mycpu]),
|
| 2083 | _("Enc: Idle"));
|
| 2084 | }
|
| 2085 | }
|
| 2086 | @@ -1122,8 +1112,8 @@ void UpdateRipProgress(GripInfo *ginfo)
|
| 2087 | }
|
| 2088 | if ((!result || ginfo->stop_encode) &&
|
| 2089 | !ginfo->encode_list && !ginfo->ripping) {
|
| 2090 | - gtk_label_set(GTK_LABEL(uinfo->all_enc_label), _("Enc: Idle"));
|
| 2091 | - gtk_progress_bar_update(GTK_PROGRESS_BAR(uinfo->all_encprogbar), 0.0);
|
| 2092 | + gtk_label_set_text(GTK_LABEL(uinfo->all_enc_label), _("Enc: Idle"));
|
| 2093 | + gtk_progress_bar_set_fraction(GTK_PROGRESS_BAR(uinfo->all_encprogbar), 0.0);
|
| 2094 | }
|
| 2095 | }
|
| 2096 |
|
| 2097 | @@ -1136,9 +1126,9 @@ static void RipIsFinished(GripInfo *ginfo, gboolean aborted)
|
| 2098 | ginfo->all_ripdone = 0;
|
| 2099 | ginfo->all_riplast = 0;
|
| 2100 |
|
| 2101 | - gtk_label_set(GTK_LABEL(uinfo->rip_prog_label), _("Rip: Idle"));
|
| 2102 | - gtk_label_set(GTK_LABEL(uinfo->all_rip_label), _("Rip: Idle"));
|
| 2103 | - gtk_progress_bar_update(GTK_PROGRESS_BAR(uinfo->all_ripprogbar), 0.0);
|
| 2104 | + gtk_label_set_text(GTK_LABEL(uinfo->rip_prog_label), _("Rip: Idle"));
|
| 2105 | + gtk_label_set_text(GTK_LABEL(uinfo->all_rip_label), _("Rip: Idle"));
|
| 2106 | + gtk_progress_bar_set_fraction(GTK_PROGRESS_BAR(uinfo->all_ripprogbar), 0.0);
|
| 2107 |
|
| 2108 | ginfo->stop_rip = FALSE;
|
| 2109 | ginfo->ripping = FALSE;
|
| 2110 | @@ -1520,7 +1510,7 @@ static gboolean RipNextTrack(GripInfo *ginfo)
|
| 2111 | gtk_clist_select_row(GTK_CLIST(uinfo->trackclist), ginfo->rip_track, 0);
|
| 2112 | }*/
|
| 2113 |
|
| 2114 | - CopyPixmap(GTK_PIXMAP(uinfo->rip_pix[0]), GTK_PIXMAP(uinfo->rip_indicator));
|
| 2115 | + gtk_image_set_from_pixbuf (GTK_IMAGE (uinfo->rip_indicator), uinfo->rip_pix[0]);
|
| 2116 |
|
| 2117 | if(ginfo->stop_between_tracks)
|
| 2118 | CDStop(&(ginfo->disc));
|
| 2119 | @@ -1581,7 +1571,7 @@ static gboolean RipNextTrack(GripInfo *ginfo)
|
| 2120 |
|
| 2121 | ginfo->rip_started = time(NULL);
|
| 2122 | sprintf(tmp, _("Rip: Trk %d (0.0x)"), ginfo->rip_track+1);
|
| 2123 | - gtk_label_set(GTK_LABEL(uinfo->rip_prog_label), tmp);
|
| 2124 | + gtk_label_set_text(GTK_LABEL(uinfo->rip_prog_label), tmp);
|
| 2125 |
|
| 2126 | if(stat(ginfo->ripfile, &mystat) >= 0) {
|
| 2127 | if(mystat.st_size == ginfo->ripsize) {
|
| 2128 | @@ -1641,7 +1631,6 @@ static gboolean RipNextTrack(GripInfo *ginfo)
|
| 2129 |
|
| 2130 | if(ginfo->rippid == 0) {
|
| 2131 | int i;
|
| 2132 | - CloseStuff(ginfo);
|
| 2133 | errno=0;
|
| 2134 | i = nice(ginfo->ripnice);
|
| 2135 | if (errno && i == -1) {
|
| 2136 | @@ -1651,9 +1640,6 @@ static gboolean RipNextTrack(GripInfo *ginfo)
|
| 2137 |
|
| 2138 | _exit(0);
|
| 2139 | }
|
| 2140 | - else {
|
| 2141 | - ginfo->curr_pipe_fd = -1;
|
| 2142 | - }
|
| 2143 |
|
| 2144 | for(arg=0;args[arg];arg++) {
|
| 2145 | g_string_free(args[arg], TRUE);
|
| 2146 | @@ -1802,8 +1788,7 @@ static gboolean MP3Encode(GripInfo *ginfo)
|
| 2147 | ginfo->encode_list = g_list_remove(ginfo->encode_list, enc_track);
|
| 2148 | ginfo->encoded_track[cpu] = enc_track;
|
| 2149 |
|
| 2150 | - CopyPixmap(GTK_PIXMAP(uinfo->mp3_pix[0]),
|
| 2151 | - GTK_PIXMAP(uinfo->mp3_indicator[cpu]));
|
| 2152 | + gtk_image_set_from_pixbuf (GTK_IMAGE (uinfo->mp3_indicator[cpu]), uinfo->mp3_pix[0]);
|
| 2153 |
|
| 2154 | ginfo->mp3_started[cpu] = time(NULL);
|
| 2155 | ginfo->mp3_enc_track[cpu] = encode_track;
|
| 2156 | @@ -1849,7 +1834,7 @@ static gboolean MP3Encode(GripInfo *ginfo)
|
| 2157 | g_free(conv_str);
|
| 2158 |
|
| 2159 | sprintf(tmp, _("Enc: Trk %d (0.0x)"), encode_track + 1);
|
| 2160 | - gtk_label_set(GTK_LABEL(uinfo->mp3_prog_label[cpu]), tmp);
|
| 2161 | + gtk_label_set_text(GTK_LABEL(uinfo->mp3_prog_label[cpu]), tmp);
|
| 2162 |
|
| 2163 | unlink(ginfo->mp3file[cpu]);
|
| 2164 |
|
| 2165 | @@ -1885,7 +1870,6 @@ static gboolean MP3Encode(GripInfo *ginfo)
|
| 2166 |
|
| 2167 | if(ginfo->mp3pid[cpu] == 0) {
|
| 2168 | int i;
|
| 2169 | - CloseStuff(ginfo);
|
| 2170 | setsid();
|
| 2171 | i = nice(ginfo->mp3nice);
|
| 2172 | if (errno && i == -1) {
|
| 2173 | @@ -1894,9 +1878,6 @@ static gboolean MP3Encode(GripInfo *ginfo)
|
| 2174 | execvp(ginfo->mp3exename, char_args);
|
| 2175 | _exit(0);
|
| 2176 | }
|
| 2177 | - else {
|
| 2178 | - ginfo->curr_pipe_fd = -1;
|
| 2179 | - }
|
| 2180 |
|
| 2181 | for(arg=0;args[arg];arg++) {
|
| 2182 | g_string_free(args[arg], TRUE);
|
| 2183 | diff --git a/src/tray.c b/src/tray.c
|
| 2184 | index 20cf541..98fb375 100644
|
| 2185 | |
| 2186 | |
| 2187 | @@ -112,7 +112,7 @@ void UpdateTray(GripInfo *ginfo)
|
| 2188 | void TrayMenuShowPlay(GripInfo *ginfo)
|
| 2189 | {
|
| 2190 | GripGUI *uinfo = &(ginfo->gui_info);
|
| 2191 | -
|
| 2192 | + if (!ginfo->tray_icon_made) return;
|
| 2193 | gtk_widget_hide(GTK_WIDGET(uinfo->tray_menu_pause));
|
| 2194 | gtk_widget_show(GTK_WIDGET(uinfo->tray_menu_play));
|
| 2195 | }
|
| 2196 | @@ -120,7 +120,7 @@ void TrayMenuShowPlay(GripInfo *ginfo)
|
| 2197 | void TrayMenuShowPause(GripInfo *ginfo)
|
| 2198 | {
|
| 2199 | GripGUI *uinfo = &(ginfo->gui_info);
|
| 2200 | -
|
| 2201 | + if (!ginfo->tray_icon_made) return;
|
| 2202 | gtk_widget_hide(GTK_WIDGET(uinfo->tray_menu_play));
|
| 2203 | gtk_widget_show(GTK_WIDGET(uinfo->tray_menu_pause));
|
| 2204 | }
|
| 2205 | diff --git a/src/uihelper.c b/src/uihelper.c
|
| 2206 | index 5b41934..b833785 100644
|
| 2207 | |
| 2208 | |
| 2209 | @@ -22,17 +22,6 @@
|
| 2210 |
|
| 2211 | #include "common.h"
|
| 2212 |
|
| 2213 | -GtkTooltips *MakeToolTip(void)
|
| 2214 | -{
|
| 2215 | - GtkTooltips *tip;
|
| 2216 | -
|
| 2217 | - tip=gtk_tooltips_new();
|
| 2218 | -
|
| 2219 | - gtk_tooltips_set_delay(tip,1250);
|
| 2220 | -
|
| 2221 | - return tip;
|
| 2222 | -}
|
| 2223 | -
|
| 2224 | GdkColor *MakeColor(int red,int green,int blue)
|
| 2225 | {
|
| 2226 | GdkColor *c;
|
| 2227 | @@ -42,7 +31,7 @@ GdkColor *MakeColor(int red,int green,int blue)
|
| 2228 | c->green=green;
|
| 2229 | c->blue=blue;
|
| 2230 |
|
| 2231 | - gdk_color_alloc(gdk_colormap_get_system(),c);
|
| 2232 | + //gdk_colormap_alloc_color(gdk_colormap_get_system(), c, FALSE, TRUE);
|
| 2233 |
|
| 2234 | return c;
|
| 2235 | }
|
| 2236 | @@ -113,53 +102,32 @@ static char * empty_xpm[] = {
|
| 2237 | " "
|
| 2238 | };
|
| 2239 |
|
| 2240 | -GtkWidget *NewBlankPixmap(GtkWidget *widget)
|
| 2241 | +GdkPixbuf *NewBlankPixmap(GtkWidget *widget)
|
| 2242 | {
|
| 2243 | return Loadxpm(widget,empty_xpm);
|
| 2244 | }
|
| 2245 |
|
| 2246 | -GtkWidget *ImageButton(GtkWidget *widget,GtkWidget *image)
|
| 2247 | +GtkWidget *ImageButton(GtkWidget *widget,GdkPixbuf *image)
|
| 2248 | {
|
| 2249 | GtkWidget *button;
|
| 2250 | + GtkWidget *pixwid;
|
| 2251 |
|
| 2252 | button=gtk_button_new();
|
| 2253 | + pixwid = gtk_image_new_from_pixbuf(image);
|
| 2254 |
|
| 2255 | - gtk_container_add(GTK_CONTAINER(button),image);
|
| 2256 | - gtk_widget_show(image);
|
| 2257 | + gtk_container_add(GTK_CONTAINER(button),pixwid);
|
| 2258 | + gtk_widget_show(pixwid);
|
| 2259 |
|
| 2260 | return button;
|
| 2261 | }
|
| 2262 |
|
| 2263 | -GtkWidget *Loadxpm(GtkWidget *widget,char **xpm)
|
| 2264 | +GdkPixbuf *Loadxpm(GtkWidget *widget,char **xpm)
|
| 2265 | {
|
| 2266 | - GdkBitmap *mask;
|
| 2267 | - GtkStyle *style;
|
| 2268 | - GtkWidget *pixmapwid;
|
| 2269 | - GdkPixmap *pixmap;
|
| 2270 | -
|
| 2271 | - style=gtk_widget_get_style(widget);
|
| 2272 | -
|
| 2273 | - pixmap=gdk_pixmap_create_from_xpm_d(widget->window,&mask,
|
| 2274 | - &style->bg[GTK_STATE_NORMAL],
|
| 2275 | - (gchar **)xpm);
|
| 2276 | + GdkPixbuf *pixbuf;
|
| 2277 |
|
| 2278 | - pixmapwid=gtk_pixmap_new(pixmap,mask);
|
| 2279 | + pixbuf = gdk_pixbuf_new_from_xpm_data((const char **)xpm);
|
| 2280 |
|
| 2281 | - return pixmapwid;
|
| 2282 | -}
|
| 2283 | -
|
| 2284 | -void CopyPixmap(GtkPixmap *src,GtkPixmap *dest)
|
| 2285 | -{
|
| 2286 | - GdkPixmap *gdkpix;
|
| 2287 | - GdkBitmap *mask;
|
| 2288 | -
|
| 2289 | - gtk_pixmap_get(src,&gdkpix,&mask);
|
| 2290 | - gtk_pixmap_set(dest,gdkpix,mask);
|
| 2291 | -}
|
| 2292 | -
|
| 2293 | -gint SizeInDubs(GdkFont *font,gint numchars)
|
| 2294 | -{
|
| 2295 | - return gdk_string_width(font,"W")*numchars;
|
| 2296 | + return pixbuf;
|
| 2297 | }
|
| 2298 |
|
| 2299 | void UpdateGTK(void)
|