-rw-r--r-- | noncore/multimedia/opierec/qtrec.cpp | 115 | ||||
-rw-r--r-- | noncore/multimedia/opierec/qtrec.h | 3 |
2 files changed, 67 insertions, 51 deletions
diff --git a/noncore/multimedia/opierec/qtrec.cpp b/noncore/multimedia/opierec/qtrec.cpp index 75413be..d8b8ce3 100644 --- a/noncore/multimedia/opierec/qtrec.cpp +++ b/noncore/multimedia/opierec/qtrec.cpp @@ -465,10 +465,8 @@ void QtRec::cleanUp() { void QtRec::init() { needsStereoOut = false; - QPixmap image3( ( const char** ) image3_data ); - QPixmap image4( ( const char** ) image4_data ); QPixmap image6( ( const char** ) image6_data ); stopped = true; setCaption( tr( "OpieRecord " )); @@ -500,9 +498,9 @@ void QtRec::init() { Stop_PushButton = new QPushButton( tab, "Stop_PushButton" ); layout1->addMultiCellWidget( Stop_PushButton, 1, 1, 4, 4); Stop_PushButton->setFixedSize( 22, 22); - Stop_PushButton->setPixmap( image4 ); + Stop_PushButton->setPixmap( Opie::Core::OResource::loadPixmap("play2", Opie::Core::OResource::SmallIcon) ); toBeginningButton = new QPushButton( tab, "Beginning_PushButton" ); layout1->addMultiCellWidget(toBeginningButton, 1, 1, 5, 5); toBeginningButton->setFixedSize( 22, 22); @@ -536,18 +534,21 @@ void QtRec::init() { this, SLOT( forwardTimerTimeout() ) ); deleteSoundButton = new QPushButton( tab, "deleteSoundButton" ); layout1->addMultiCellWidget( deleteSoundButton, 1, 1, 8, 8); - deleteSoundButton->setText( tr( "Del" ) ); + deleteSoundButton->setFixedSize( 22, 22); + deleteSoundButton->setPixmap( Opie::Core::OResource::loadPixmap( "editdelete", Opie::Core::OResource::SmallIcon ) ); ListView1 = new QListView( tab, "IconView1" ); layout1->addMultiCellWidget( ListView1, 2, 2, 0, 8); ListView1->addColumn( tr( "Name" ) ); ListView1->setSorting( 1, false); ListView1->addColumn( tr( "Time" ) ); //in seconds + ListView1->addColumn( tr( "Size" ) ); ListView1->setColumnWidthMode(0, QListView::Maximum); - ListView1->setColumnAlignment( 1, QListView::AlignCenter); + ListView1->setColumnAlignment( 1, QListView::AlignRight); + ListView1->setColumnAlignment( 2, QListView::AlignRight); ListView1->setAllColumnsShowFocus( true ); QPEApplication::setStylusOperation( ListView1->viewport(), QPEApplication::RightOnHold); TabWidget->insertTab( tab, tr( "Files" ) ); @@ -701,17 +702,21 @@ void QtRec::initIconView() { QFileInfo info(filePath); fileDate = info.lastModified().toString(); fileS = cfg.readEntry( filePath, "0" );// file length in seconds + QString sizeStr; + fileSize(info.size(), sizeStr); mediaLocation = getStorage( filePath); if( info.exists()) { // owarn << "new item " << temp << oendl; - item = new QListViewItem( ListView1, temp, fileS /*, mediaLocation, fileDate*/); + item = new QListViewItem( ListView1, temp, fileS, sizeStr ); item->setPixmap( 0, image0); if( currentFileName == filePath) ListView1->setSelected( item, true); } } + + setButtons(); } void QtRec::initConnections() { connect(qApp,SIGNAL(aboutToQuit()),SLOT(cleanUp())); @@ -785,9 +790,9 @@ void QtRec::initConfig() { i = cfg.readNumEntry("sizeLimit", 5 ); QString temp; sizeLimitCombo->setCurrentItem((i/5)); - stereoCheckBox->setChecked( cfg.readBoolEntry("stereo", 1)); + stereoCheckBox->setChecked( cfg.readBoolEntry("stereo", 0)); if( stereoCheckBox->isChecked()) { filePara.channels = 2; } else { filePara.channels = 1; @@ -813,9 +818,8 @@ void QtRec::initConfig() { } void QtRec::stop() { // owarn << "STOP" << oendl; - setRecordButton(false); if( !recording) { emit stopPlaying(); endPlaying(); @@ -823,8 +827,9 @@ void QtRec::stop() { emit stopRecording(); endRecording(); } timeSlider->setValue(0); + setButtons(); } void QtRec::doPlayBtn() { @@ -840,13 +845,11 @@ void QtRec::doPlayBtn() { } void QtRec::start() { //play if( stopped) { - QPixmap image3( ( const char** ) image3_data ); - Stop_PushButton->setPixmap( image3 ); - Stop_PushButton->setDown( true); stopped = false; paused = false; + setButtons(); secCount = 1; if( openPlayFile()) if( setupAudio( false)) //recording is false @@ -864,9 +867,9 @@ bool QtRec::rec() { //record } else { secCount = 1; // playLabel2->setText(tr("Stop")); monitoring = false; - setRecordButton( true); + setButtons(); if( setupAudio( true)) if(setUpFile()) { int fileSize = 0; @@ -920,10 +923,9 @@ bool QtRec::rec() { //record odebug << "Start recording thread" << oendl; pthread_t thread1; pthread_create( &thread1, NULL, (void * (*)(void *))quickRec, NULL/* &*/); #endif - toBeginningButton->setEnabled( false); - toEndButton->setEnabled( false); + setButtons(); startTimer(1000); #ifndef THREADED quickRec(); @@ -1139,10 +1141,9 @@ bool QtRec::doPlay() { pthread_t thread2; pthread_create( &thread2, NULL, (void * (*)(void *))playIt, NULL/* &*/); #endif - toBeginningButton->setEnabled( false); - toEndButton->setEnabled( false); + setButtons(); #ifndef THREADED playIt(); #endif return true; @@ -1204,11 +1205,10 @@ void QtRec::changeSizeLimitCombo(int) { cfg.write(); } void QtRec::newSound() { - if( !rec()) { - endRecording(); - deleteSound(); + if(!rec()) { + stop(); } } void QtRec::itClick(QListViewItem *item) { @@ -1220,8 +1220,10 @@ void QtRec::deleteSound() { Config cfg("OpieRec"); cfg.setGroup("Sounds"); if( ListView1->currentItem() == NULL) return; + + if (QMessageBox::information(this, tr("Delete"), tr("Are you sure?"), QMessageBox::Yes, QMessageBox::No)==QMessageBox::Yes) { QString file = ListView1->currentItem()->text(0); QString fileName; fileName = cfg.readEntry( file, ""); QFile f( fileName); @@ -1253,8 +1255,9 @@ void QtRec::deleteSound() { ListView1->setSelected( ListView1->firstChild(), true); initIconView(); update(); setCaption( tr( "OpieRecord " )); + } } void QtRec::keyPressEvent( QKeyEvent *e) { @@ -1375,12 +1378,10 @@ void QtRec::endRecording() { monitoring = false; recording = false; stopped = true; waveform->reset(); - setRecordButton( false); - toBeginningButton->setEnabled( true); - toEndButton->setEnabled( true); + setButtons(); killTimers(); if(autoMute) @@ -1441,12 +1442,9 @@ void QtRec::endPlaying() { stopped = true; waveform->reset(); // errorStop(); odebug << "end playing" << oendl; - setRecordButton( false); - - toBeginningButton->setEnabled( true); - toEndButton->setEnabled( true); + setButtons(); if(autoMute) doMute( true); @@ -1530,8 +1528,9 @@ void QtRec::listPressed( int mouse, QListViewItem *item, const QPoint &, int ) { if( renameBox != 0 ) //tricky cancelRename(); currentFile = item->text(0); + setButtons(); // setCaption( "OpieRecord " + currentFile); } break; case 2: @@ -1589,8 +1588,9 @@ void QtRec::doBeam() { void QtRec::doMenuPlay() { qApp->processEvents(); currentFile = ListView1->currentItem()->text(0); + doPlayBtn(); } void QtRec::doRename() { QRect r = ListView1->itemRect( ListView1->currentItem( )); @@ -1626,8 +1626,11 @@ void QtRec::okRename() { cfg.setGroup("Sounds"); QString file = ListView1->currentItem()->text(0); + if(file == filename) + return; + odebug << "filename is " + filename << oendl; int nFiles = cfg.readNumEntry("NumberofFiles",0); @@ -1937,31 +1940,8 @@ QString QtRec::getStorage(const QString &fileName) { // } // endmntent( mntfp ); } -void QtRec::setRecordButton(bool b) { - - if(b) { //about to record or play - - Rec_PushButton->setDown( true); - QPixmap image3( ( const char** ) image3_data ); - Stop_PushButton->setPixmap( image3 ); - if(Stop_PushButton->isDown()) - Stop_PushButton->setDown( true); -// playLabel2->setText( tr("Stop") ); - - } else { //about to stop - - QPixmap image4( ( const char** ) image4_data ); - Stop_PushButton->setPixmap( image4); - if(Stop_PushButton->isDown()) - Stop_PushButton->setDown( false); -// playLabel2->setText( tr("Play") ); - if(Rec_PushButton->isDown()) - Rec_PushButton->setDown( false); - } -} - void QtRec::fillDirectoryCombo() { if( directoryComboBox->count() > 0) directoryComboBox->clear(); int index = 0; @@ -2049,5 +2029,40 @@ void QtRec::changeStereoCheck(bool b) { cfg.write(); } - +void QtRec::setButtons() { + if(stopped) { + Stop_PushButton->setPixmap( Opie::Core::OResource::loadPixmap("play2", Opie::Core::OResource::SmallIcon) ); + if(ListView1->currentItem()) { + Stop_PushButton->setEnabled(true); + toBeginningButton->setEnabled(true); + toEndButton->setEnabled(true); + deleteSoundButton->setEnabled(true); + timeSlider->setEnabled(true); + } + else { + Stop_PushButton->setEnabled(false); + toBeginningButton->setEnabled(false); + toEndButton->setEnabled(false); + deleteSoundButton->setEnabled(false); + timeSlider->setEnabled(false); + } + } + else { + timeSlider->setEnabled(true); + Stop_PushButton->setPixmap( Opie::Core::OResource::loadPixmap("stop", Opie::Core::OResource::SmallIcon) ); + Stop_PushButton->setEnabled(true); + toBeginningButton->setEnabled(false); + toEndButton->setEnabled(false); + deleteSoundButton->setEnabled(false); + } +} + +void QtRec::fileSize(unsigned long size, QString &str) { + if( size > 1048576 ) + str.sprintf( "%.0fM", size / 1048576.0 ); + else if( size > 1024 ) + str.sprintf( "%.0fk", size / 1024.0 ); + else + str.sprintf( "%d", size ); +} diff --git a/noncore/multimedia/opierec/qtrec.h b/noncore/multimedia/opierec/qtrec.h index 6e81af6..b463597 100644 --- a/noncore/multimedia/opierec/qtrec.h +++ b/noncore/multimedia/opierec/qtrec.h @@ -97,12 +97,13 @@ private: void init(); void initConfig(); void initConnections(); void selectItemByName(const QString &); - void setRecordButton(bool); void start(); void stop(); void timerEvent( QTimerEvent *e ); + void setButtons(); + void QtRec::fileSize(unsigned long size, QString &str); private slots: void endPlaying(); void endRecording(); |