1
/***************************************************************************
2
* Copyright (C) 2012-2014 by Savoir-Faire Linux *
3
* Author : Emmanuel Lepage Vallee <emmanuel.lepage@savoirfairelinux.com>*
5
* This program is free software; you can redistribute it and/or modify *
6
* it under the terms of the GNU General Public License as published by *
7
* the Free Software Foundation; either version 3 of the License, or *
8
* (at your option) any later version. *
10
* This program is distributed in the hope that it will be useful, *
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
13
* GNU General Public License for more details. *
15
* You should have received a copy of the GNU General Public License *
16
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
17
**************************************************************************/
21
#include "playeroverlay.h"
24
Player::Player(QWidget* parent) : QWidget(parent),m_pParent(static_cast<PlayerOverlay*>(parent))
27
m_pPlayPause->setIcon( KIcon( "media-playback-start" ));
28
m_pStop->setIcon( KIcon( "media-playback-stop" ));
29
connect( m_pParent->m_pCall , SIGNAL(playbackPositionChanged(int,int)) , this , SLOT(slotUpdateSlider(int,int)));
30
connect( m_pPlayPause , SIGNAL(clicked()) , m_pParent->m_pCall , SLOT(playRecording()));
31
connect( m_pStop , SIGNAL(clicked()) , m_pParent->m_pCall , SLOT(stopRecording()));
32
connect( m_pSlider , SIGNAL(sliderPressed()) , this , SLOT(slotDisconnectSlider()));
33
connect( m_pSlider , SIGNAL(sliderReleased()) , this , SLOT(slotConnectSlider()));
34
// setAttribute( Qt::WA_TranslucentBackground, true );
37
void Player::slotHide()
43
void Player::slotDisconnectSlider()
45
disconnect(m_pParent->m_pCall,SIGNAL(playbackPositionChanged(int,int)),this,SLOT(slotUpdateSlider(int,int)));
48
void Player::slotConnectSlider()
50
m_pParent->m_pCall->seekRecording(((double)m_pSlider->value())/((double)m_pSlider->maximum()) * 100);
51
connect(m_pParent->m_pCall,SIGNAL(playbackPositionChanged(int,int)),this,SLOT(slotUpdateSlider(int,int)));
54
void Player::slotUpdateSlider(int pos, int size)
56
m_pLeft->setText(QString("%1").arg((size/1000-pos/1000)/60,2,10,QChar('0'))+':'+QString("%1").arg((size/1000-pos/1000)%60,2,10,QChar('0')));
57
m_pElapsed->setText(QString("%1").arg((pos/1000)/60,2,10,QChar('0'))+':'+QString("%1").arg((pos/1000)%60,2,10,QChar('0')));
58
m_pSlider->setMaximum(size);
59
m_pSlider->setValue(pos);
64
m_pParent->m_pCall->playRecording();