summaryrefslogtreecommitdiffstats
path: root/gtk/src/callbacks.c
diff options
context:
space:
mode:
authorjstebbins <[email protected]>2009-04-27 15:18:05 +0000
committerjstebbins <[email protected]>2009-04-27 15:18:05 +0000
commit6b9c017e63f06e9a7b66062d0a8cb460a02ca6b6 (patch)
tree13479caa23219b5476a4d1e534a970cd6fce29fd /gtk/src/callbacks.c
parent3bb12e29d03f62a303c7728cd6f40c6498f2858e (diff)
add libdvdnav support
emulates the vm of a dvd player in order to navigate the disc more reliably it is optional and disabled by default CLI option '--dvdnav' enables. GUI's have a new option in preferences. When dvdnav is enabled, you can also select angles (cli '--angle') git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2355 b64f7644-9d1e-0410-96f1-a4d463321fa5
Diffstat (limited to 'gtk/src/callbacks.c')
-rw-r--r--gtk/src/callbacks.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/gtk/src/callbacks.c b/gtk/src/callbacks.c
index f8362a58e..00229f132 100644
--- a/gtk/src/callbacks.c
+++ b/gtk/src/callbacks.c
@@ -1233,6 +1233,10 @@ show_title_info(signal_user_data_t *ud, ghb_title_info_t *tinfo)
widget = GHB_WIDGET (ud->builder, "start_chapter");
gtk_spin_button_set_value (GTK_SPIN_BUTTON(widget), 1);
gtk_spin_button_set_range (GTK_SPIN_BUTTON(widget), 1, tinfo->num_chapters);
+
+ widget = GHB_WIDGET (ud->builder, "angle");
+ gtk_spin_button_set_value (GTK_SPIN_BUTTON(widget), 1);
+ gtk_spin_button_set_range (GTK_SPIN_BUTTON(widget), 1, tinfo->angle_count);
ud->dont_clear_presets = FALSE;
}
@@ -1951,6 +1955,17 @@ ghb_backend_events(signal_user_data_t *ud)
ghb_track_status();
ghb_get_status(&status);
progress = GTK_PROGRESS_BAR(GHB_WIDGET (ud->builder, "progressbar"));
+ if (status.scan.state == GHB_STATE_IDLE &&
+ status.queue.state == GHB_STATE_IDLE)
+ {
+ static gboolean prev_dvdnav;
+ gboolean dvdnav = ghb_settings_get_boolean(ud->settings, "use_dvdnav");
+ if (dvdnav != prev_dvdnav)
+ {
+ hb_dvd_set_dvdnav(dvdnav);
+ prev_dvdnav = dvdnav;
+ }
+ }
// First handle the status of title scans
// Then handle the status of the queue
if (status.scan.state & GHB_STATE_SCANNING)