/* * Copyright 2016 (c) Anna Schumaker. */ #ifndef OCARINA_GUI_AUDIO_H #define OCARINA_GUI_AUDIO_H #include #include /* Audio callback functions. */ extern struct audio_callbacks audio_cb; /* Called to initialize the GUI audio controls. */ void gui_audio_init(); /* Called to stop the GUI audio timeout function. */ void gui_audio_deinit(); /* Called to update the current track position. */ int gui_audio_timeout(); int gui_audio_popover_timeout(); /* Called to get the label displaying the album tag. */ static inline GtkLabel *gui_album_tag(void) { return GTK_LABEL(gui_builder_widget("album_tag")); } /* Called to get the label displaying the artist tag. */ static inline GtkLabel *gui_artist_tag(void) { return GTK_LABEL(gui_builder_widget("artist_tag")); } /* Called to get the label displaying the title tag. */ static inline GtkLabel *gui_title_tag(void) { return GTK_LABEL(gui_builder_widget("title_tag")); } /* Called to get the label displaying the track's position. */ static inline GtkLabel *gui_position(void) { return GTK_LABEL(gui_builder_widget("position")); } /* Called to get the label displaying the track's duration. */ static inline GtkLabel *gui_duration(void) { return GTK_LABEL(gui_builder_widget("duration")); } /* Called to get the play button. */ static inline GtkButton *gui_play_button(void) { return GTK_BUTTON(gui_builder_widget("play_button")); } /* Called to get the pause button. */ static inline GtkButton *gui_pause_button(void) { return GTK_BUTTON(gui_builder_widget("pause_button")); } /* Called to get the previous button. */ static inline GtkButton *gui_prev_button(void) { return GTK_BUTTON(gui_builder_widget("prev_button")); } /* Called to get the next button. */ static inline GtkButton *gui_next_button(void) { return GTK_BUTTON(gui_builder_widget("next_button")); } /* Called to get the pause-after widgets. */ static inline GtkEntry *gui_pause_entry(void) { return GTK_ENTRY(gui_builder_widget("pause_entry")); } static inline GtkButton *gui_pause_down(void) { return GTK_BUTTON(gui_builder_widget("pause_down")); } static inline GtkButton *gui_pause_up(void) { return GTK_BUTTON(gui_builder_widget("pause_up")); } static inline GtkPopover *gui_pause_popover(void) { return GTK_POPOVER(gui_builder_widget("pause_popover")); } /* Called to get the seeking GtkAdjustment. */ static inline GtkAdjustment *gui_seek(void) { return GTK_ADJUSTMENT(gui_builder_object("seek")); } /* Called to get the volume button. */ static inline GtkScaleButton *gui_volume_button(void) { return GTK_SCALE_BUTTON(gui_builder_widget("volume_button")); } #endif /* OCARINA_GUI_AUDIO_H */