Exemplo n.º 1
0
static void
ol_menu_update_player_control ()
{
  ol_log_func ();
  OlPlayer *player = ol_app_get_player ();
  if (menu.play)
  {
    if (player != NULL)
    {
      if (ol_player_get_status (player) == OL_PLAYER_PLAYING)
      {
        gtk_widget_hide (menu.play);
      }
      else
      {
        gtk_widget_show (menu.play);
        gtk_widget_set_sensitive (menu.play,
                                  ol_player_get_caps (player) & OL_PLAYER_PLAY);
      }
    }
    else
    {
      gtk_widget_show (menu.play);
      gtk_widget_set_sensitive (menu.play, FALSE);
    }
  }
  if (menu.pause)
  {
    if (player != NULL)
    {
      if (ol_player_get_status (player) == OL_PLAYER_PLAYING)
        gtk_widget_show (menu.pause);
      else
        gtk_widget_hide (menu.pause);
      gtk_widget_set_sensitive (menu.pause,
                                ol_player_get_caps (player) & OL_PLAYER_PAUSE);
    }
    else
    {
      gtk_widget_hide (menu.pause);
    }
  }
  if (menu.stop)
    gtk_widget_set_sensitive (menu.stop,
                              player != NULL &&
                              (ol_player_get_caps (player) & OL_PLAYER_STOP));
  if (menu.prev)
    gtk_widget_set_sensitive (menu.prev,
                              player != NULL &&
                              (ol_player_get_caps (player) & OL_PLAYER_PREV));
  if (menu.next)
    gtk_widget_set_sensitive (menu.next,
                              player != NULL &&
                              (ol_player_get_caps (player) & OL_PLAYER_NEXT));
}
Exemplo n.º 2
0
static void
_update_caps (OlScrollModule *module)
{
  ol_assert (module != NULL);
  ol_assert (module->player != NULL);
  ol_assert (module->scroll != NULL);
  ol_scroll_window_set_can_seek (module->scroll,
                                 ol_player_get_caps (module->player) & OL_PLAYER_SEEK);
}
Exemplo n.º 3
0
static void
_player_control (OlPlayer *player,
                 enum OlPlayerCaps caps,
                 gboolean (*cmd) (OlPlayer *player))
{
  if (player != NULL &&
      (ol_player_get_caps (player) & caps))
  {
    cmd (player);
  }
}
Exemplo n.º 4
0
static void
_update_caps (OlOsdToolbar *toolbar)
{
  ol_assert (OL_IS_OSD_TOOLBAR (toolbar));
  OlOsdToolbarPriv *priv = OL_OSD_TOOLBAR_GET_PRIVATE (toolbar);
  int caps;
  if (priv->player)
    caps = ol_player_get_caps (priv->player);
  else
    caps = 0;
  gtk_widget_set_sensitive (GTK_WIDGET (toolbar->play_button),
                            caps & OL_PLAYER_PLAY);
  gtk_widget_set_sensitive (GTK_WIDGET (toolbar->pause_button),
                            caps & OL_PLAYER_PAUSE);
  gtk_widget_set_sensitive (GTK_WIDGET (toolbar->stop_button),
                            caps & OL_PLAYER_STOP);
  gtk_widget_set_sensitive (GTK_WIDGET (toolbar->prev_button),
                            caps & OL_PLAYER_PREV);
  gtk_widget_set_sensitive (GTK_WIDGET (toolbar->next_button),
                            caps & OL_PLAYER_NEXT);
}