author | zecke <zecke> | 2004-09-24 15:09:56 (UTC) |
---|---|---|
committer | zecke <zecke> | 2004-09-24 15:09:56 (UTC) |
commit | 8e903cd3ea735adf066e156462602987691a4c69 (patch) (unidiff) | |
tree | b05fe7cc6d46cbacdc47fe3f0411100076bc8a52 /noncore/multimedia/opieplayer2/lib.cpp | |
parent | 478b2ead47a09956cadfacb8f469fb2fdee5531c (diff) | |
download | opie-8e903cd3ea735adf066e156462602987691a4c69.zip opie-8e903cd3ea735adf066e156462602987691a4c69.tar.gz opie-8e903cd3ea735adf066e156462602987691a4c69.tar.bz2 |
-Emit Progress from the xine Engine to Global::statusMessage
-Change ThreadUtil to pass data and const char* among threads
Diffstat (limited to 'noncore/multimedia/opieplayer2/lib.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/multimedia/opieplayer2/lib.cpp | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/noncore/multimedia/opieplayer2/lib.cpp b/noncore/multimedia/opieplayer2/lib.cpp index 8afb318..f1b9773 100644 --- a/noncore/multimedia/opieplayer2/lib.cpp +++ b/noncore/multimedia/opieplayer2/lib.cpp | |||
@@ -36,9 +36,9 @@ | |||
36 | #include "lib.h" | 36 | #include "lib.h" |
37 | 37 | ||
38 | /* OPIE */ | 38 | /* OPIE */ |
39 | #include <opie2/odebug.h> | 39 | #include <opie2/odebug.h> |
40 | using namespace Opie::Core; | 40 | #include <qpe/global.h> |
41 | 41 | ||
42 | /* QT */ | 42 | /* QT */ |
43 | #include <qtextstream.h> | 43 | #include <qtextstream.h> |
44 | #include <qdir.h> | 44 | #include <qdir.h> |
@@ -325,21 +325,31 @@ void Lib::setWidget( XineVideoWidget *widget ) | |||
325 | 325 | ||
326 | void Lib::receiveMessage( ThreadUtil::ChannelMessage *msg, SendType sendType ) | 326 | void Lib::receiveMessage( ThreadUtil::ChannelMessage *msg, SendType sendType ) |
327 | { | 327 | { |
328 | assert( sendType == ThreadUtil::Channel::OneWay ); | 328 | assert( sendType == ThreadUtil::Channel::OneWay ); |
329 | handleXineEvent( msg->type() ); | 329 | handleXineEvent( msg->type(), msg->data(), msg->msg() ); |
330 | delete msg; | 330 | delete msg; |
331 | } | 331 | } |
332 | 332 | ||
333 | void Lib::handleXineEvent( const xine_event_t* t ) { | 333 | void Lib::handleXineEvent( const xine_event_t* t ) { |
334 | send( new ThreadUtil::ChannelMessage( t->type ), OneWay ); | 334 | int prog = -1; const char* name = 0; |
335 | if ( t->type == XINE_EVENT_PROGRESS ) { | ||
336 | xine_progress_data_t *pt = static_cast<xine_progress_data_t*>( t->data ); | ||
337 | prog = pt->percent; | ||
338 | name = pt->description; | ||
339 | } | ||
340 | |||
341 | send( new ThreadUtil::ChannelMessage( t->type, prog, name ), OneWay ); | ||
335 | } | 342 | } |
336 | 343 | ||
337 | void Lib::handleXineEvent( int type ) { | 344 | void Lib::handleXineEvent( int type, int data, const char* name ) { |
338 | assert( m_initialized ); | 345 | assert( m_initialized ); |
339 | 346 | ||
340 | if ( type == XINE_EVENT_UI_PLAYBACK_FINISHED ) { | 347 | if ( type == XINE_EVENT_UI_PLAYBACK_FINISHED ) { |
341 | emit stopped(); | 348 | emit stopped(); |
349 | }else if ( type == XINE_EVENT_PROGRESS ) { | ||
350 | QString str = name == 0 ? QString::null : QString::fromUtf8( name ); | ||
351 | Global::statusMessage( tr( "Progress: %1 %2" ).arg( name, data ) );; | ||
342 | } | 352 | } |
343 | } | 353 | } |
344 | 354 | ||
345 | 355 | ||