private void BindEvents(MainWindow mainWindow, PlayerBin player)
        {
            /* Track loaded element */
            mainWindow.PlaySelectedEvent += (p) => { selectedTimeNode = p; };
            player.SegmentClosedEvent    += () => { selectedTimeNode = null; };

            /* Handle New/Open/Save playlist */
            mainWindow.OpenPlaylistEvent += OnOpenPlaylist;
            mainWindow.NewPlaylistEvent  += OnNewPlaylist;
            mainWindow.SavePlaylistEvent += OnSavePlaylist;

            /* Handle Add/Select/Rate events from other widgets */
            mainWindow.PlayListNodeAddedEvent    += OnPlayListNodeAdded;
            mainWindow.PlayListNodeSelectedEvent += LoadPlaylistPlay;
            mainWindow.ApplyRateEvent            += (p) => { p.Rate = player.Rate; };

            /* Handle Next/Prev from the player */
            player.Next += () => { Next(); };
            player.Prev += () => {
                if (selectedTimeNode is PlayListPlay)
                {
                    Prev();
                }
            };
        }
Beispiel #2
0
 public EventsManager(MainWindow mainWindow)
 {
     this.mainWindow     = mainWindow;
     this.player         = mainWindow.Player;
     this.capturer       = mainWindow.Capturer;
     this.drawingManager = new VideoDrawingsManager(player);
     ConnectSignals();
 }
 public GameUnitsManager(MainWindow mainWindow, PlayerBin player)
 {
     this.mainWindow           = mainWindow;
     this.player               = player;
     gameUnitsStarted          = new Dictionary <GameUnit, Time>();
     mainWindow.GameUnitEvent += HandleMainWindowGameUnitEvent;
     mainWindow.UnitAdded     += HandleUnitAdded;
     mainWindow.UnitChanged   += HandleUnitChanged;
     mainWindow.UnitDeleted   += HandleUnitDeleted;
     mainWindow.UnitSelected  += HandleUnitSelected;
 }
Beispiel #4
0
    private void on_button_video_watch_clicked(object o, EventArgs args)
    {
        if (File.Exists(videoFileName))
        {
            LogB.Information("Exists and clicked " + videoFileName);

            PlayerBin player = new PlayerBin();
            player.Open(videoFileName);

            Gtk.Window d = new Gtk.Window(Catalog.GetString("Playing video"));
            d.Add(player);
            d.Modal = true;
            d.SetDefaultSize(500, 400);
            d.ShowAll();
            d.DeleteEvent += delegate(object sender, DeleteEventArgs e) { player.Close(); player.Dispose(); };
            player.Play();
        }
    }
 public PlaylistManager(MainWindow mainWindow)
 {
     playlistWidget = mainWindow.Playlist;
     player         = mainWindow.Player;
     BindEvents(mainWindow, mainWindow.Player);
 }
Beispiel #6
0
 public VideoDrawingsManager(PlayerBin player)
 {
     this.player = player;
     timeout     = 0;
 }