author | simon <simon> | 2002-12-03 16:53:41 (UTC) |
---|---|---|
committer | simon <simon> | 2002-12-03 16:53:41 (UTC) |
commit | b92f6e69e5c243363c0f285dcf1f0d47bbc2cc17 (patch) (side-by-side diff) | |
tree | 6dd69ef8a0ce4079afe7ee3b23cedb13ad8d642c | |
parent | a06817e1b4d8db570b87873610efefb55b0ab429 (diff) | |
download | opie-b92f6e69e5c243363c0f285dcf1f0d47bbc2cc17.zip opie-b92f6e69e5c243363c0f285dcf1f0d47bbc2cc17.tar.gz opie-b92f6e69e5c243363c0f285dcf1f0d47bbc2cc17.tar.bz2 |
- starting to factor out the playlist file views into separate classes
-rw-r--r-- | noncore/multimedia/opieplayer2/opieplayer2.pro | 4 | ||||
-rw-r--r-- | noncore/multimedia/opieplayer2/playlistfileview.cpp | 14 | ||||
-rw-r--r-- | noncore/multimedia/opieplayer2/playlistfileview.h | 16 | ||||
-rw-r--r-- | noncore/multimedia/opieplayer2/playlistview.cpp | 14 | ||||
-rw-r--r-- | noncore/multimedia/opieplayer2/playlistview.h | 16 | ||||
-rw-r--r-- | noncore/multimedia/opieplayer2/playlistwidgetgui.cpp | 5 |
6 files changed, 65 insertions, 4 deletions
diff --git a/noncore/multimedia/opieplayer2/opieplayer2.pro b/noncore/multimedia/opieplayer2/opieplayer2.pro index dbc21b1..8d549b6 100644 --- a/noncore/multimedia/opieplayer2/opieplayer2.pro +++ b/noncore/multimedia/opieplayer2/opieplayer2.pro @@ -1,25 +1,25 @@ TEMPLATE = app #CONFIG = qt warn_on release CONFIG = qt warn_on debug DESTDIR = $(OPIEDIR)/bin HEADERS = playlistselection.h mediaplayerstate.h xinecontrol.h \ videowidget.h audiowidget.h playlistwidget.h om3u.h mediaplayer.h inputDialog.h \ frame.h lib.h xinevideowidget.h volumecontrol.h playlistwidgetgui.h\ - alphablend.h yuv2rgb.h threadutil.h mediawidget.h + alphablend.h yuv2rgb.h threadutil.h mediawidget.h playlistview.h playlistfileview.h SOURCES = main.cpp \ playlistselection.cpp mediaplayerstate.cpp xinecontrol.cpp \ videowidget.cpp audiowidget.cpp playlistwidget.cpp om3u.cpp mediaplayer.cpp inputDialog.cpp \ frame.cpp lib.cpp nullvideo.c xinevideowidget.cpp volumecontrol.cpp \ playlistwidgetgui.cpp\ alphablend.c yuv2rgb.c yuv2rgb_arm.c yuv2rgb_arm4l.S \ - threadutil.cpp mediawidget.cpp + threadutil.cpp mediawidget.cpp playlistview.cpp playlistfileview.cpp TARGET = opieplayer2 INCLUDEPATH += $(OPIEDIR)/include DEPENDPATH += $(OPIEDIR)/include LIBS += -lqpe -lpthread -lopie -lxine MOC_DIR = qpeobj OBJECTS_DIR = qpeobj #INCLUDEPATH += $(OPIEDIR)/include #DEPENDPATH += $(OPIEDIR)/include diff --git a/noncore/multimedia/opieplayer2/playlistfileview.cpp b/noncore/multimedia/opieplayer2/playlistfileview.cpp new file mode 100644 index 0000000..bdd38e0 --- a/dev/null +++ b/noncore/multimedia/opieplayer2/playlistfileview.cpp @@ -0,0 +1,14 @@ + +#include "playlistfileview.h" + +PlayListFileView::PlayListFileView( QWidget *parent, const char *name ) + : PlayListView( parent, name ) +{ +} + +PlayListFileView::~PlayListFileView() +{ +} + +/* vim: et sw=4 ts=4 + */ diff --git a/noncore/multimedia/opieplayer2/playlistfileview.h b/noncore/multimedia/opieplayer2/playlistfileview.h new file mode 100644 index 0000000..eef4bd1 --- a/dev/null +++ b/noncore/multimedia/opieplayer2/playlistfileview.h @@ -0,0 +1,16 @@ +#ifndef PLAYLISTFILEVIEW_H +#define PLAYLISTFILEVIEW_H + +#include "playlistview.h" + +class PlayListFileView : public PlayListView +{ + Q_OBJECT +public: + PlayListFileView( QWidget *parent, const char *name = 0 ); + virtual ~PlayListFileView(); +}; + +#endif // PLAYLISTFILEVIEW_H +/* vim: et sw=4 ts=4 + */ diff --git a/noncore/multimedia/opieplayer2/playlistview.cpp b/noncore/multimedia/opieplayer2/playlistview.cpp new file mode 100644 index 0000000..ebe1492 --- a/dev/null +++ b/noncore/multimedia/opieplayer2/playlistview.cpp @@ -0,0 +1,14 @@ + +#include "playlistview.h" + +PlayListView::PlayListView( QWidget *parent, const char *name ) + : QListView( parent, name ) +{ +} + +PlayListView::~PlayListView() +{ +} + +/* vim: et sw=4 ts=4 + */ diff --git a/noncore/multimedia/opieplayer2/playlistview.h b/noncore/multimedia/opieplayer2/playlistview.h new file mode 100644 index 0000000..f1abb07 --- a/dev/null +++ b/noncore/multimedia/opieplayer2/playlistview.h @@ -0,0 +1,16 @@ +#ifndef PLAYLISTVIEW_H +#define PLAYLISTVIEW_H + +#include <qlistview.h> + +class PlayListView : public QListView +{ + Q_OBJECT +public: + PlayListView( QWidget *parent, const char *name ); + virtual ~PlayListView(); +}; + +#endif // PLAYLISTVIEW_H +/* vim: et sw=4 ts=4 + */ diff --git a/noncore/multimedia/opieplayer2/playlistwidgetgui.cpp b/noncore/multimedia/opieplayer2/playlistwidgetgui.cpp index f47ddcc..de7b6d5 100644 --- a/noncore/multimedia/opieplayer2/playlistwidgetgui.cpp +++ b/noncore/multimedia/opieplayer2/playlistwidgetgui.cpp @@ -1,226 +1,227 @@ /* This file is part of the Opie Project Copyright (c) 2002 Max Reiss <harlekin@handhelds.org> Copyright (c) 2002 L. Potter <ljp@llornkcor.com> Copyright (c) 2002 Holger Freyther <zecke@handhelds.org> =. .=l. .>+-= _;:, .> :=|. This program is free software; you can .> <`_, > . <= redistribute it and/or modify it under :`=1 )Y*s>-.-- : the terms of the GNU General Public .="- .-=="i, .._ License as published by the Free Software - . .-<_> .<> Foundation; either version 2 of the License, ._= =} : or (at your option) any later version. .%`+i> _;_. .i_,=:_. -<s. This program is distributed in the hope that + . -:. = it will be useful, but WITHOUT ANY WARRANTY; : .. .:, . . . without even the implied warranty of =_ + =;=|` MERCHANTABILITY or FITNESS FOR A _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU ..}^=.= = ; General Public License for more ++= -. .` .: details. : = ...= . :.=- -. .:....=;==+<; You should have received a copy of the GNU -_. . . )=. = General Public License along with -- :-=` this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include <qpe/qpemenubar.h> #include <qpe/qpetoolbar.h> #include <qpe/fileselector.h> #include <qpe/qpeapplication.h> #include <qpe/storage.h> #include <qpe/mimetype.h> #include <qpe/config.h> #include <qpe/global.h> #include <qpe/resource.h> #include <qpopupmenu.h> #include <qaction.h> #include <qcursor.h> #include <qdir.h> #include <qlayout.h> #include "playlistselection.h" #include "playlistwidget.h" #include "mediaplayerstate.h" #include "inputDialog.h" +#include "playlistfileview.h" //only needed for the random play #include <stdlib.h> #include "audiowidget.h" #include "videowidget.h" #include "mediaplayerstate.h" PlayListWidgetGui::PlayListWidgetGui( MediaPlayerState &_mediaPlayerState, QWidget* parent, const char* name ) : QMainWindow( parent, name ), mediaPlayerState( _mediaPlayerState ) { d = new PlayListWidgetPrivate; d->setDocumentUsed = FALSE; setBackgroundMode( PaletteButton ); setToolBarsMovable( FALSE ); // Create Toolbar QPEToolBar *toolbar = new QPEToolBar( this ); toolbar->setHorizontalStretchable( TRUE ); // Create Menubar QPEMenuBar *menu = new QPEMenuBar( toolbar ); menu->setMargin( 0 ); bar = new QPEToolBar( this ); bar->setLabel( tr( "Play Operations" ) ); tbDeletePlaylist = new QPushButton( Resource::loadIconSet( "trash" ), "", bar, "close" ); tbDeletePlaylist->setFlat( TRUE ); tbDeletePlaylist->setFixedSize( 20, 20 ); tbDeletePlaylist->hide(); pmPlayList = new QPopupMenu( this ); menu->insertItem( tr( "File" ), pmPlayList ); pmView = new QPopupMenu( this ); menu->insertItem( tr( "View" ), pmView ); pmView->isCheckable(); skinsMenu = new QPopupMenu( this ); pmView->insertItem( tr( "Skins" ), skinsMenu ); skinsMenu->isCheckable(); gammaMenu = new QPopupMenu( this ); pmView->insertItem( tr( "Gamma (Video)" ), gammaMenu ); gammaSlider = new QSlider( QSlider::Vertical, gammaMenu ); gammaSlider->setRange( -40, 40 ); gammaSlider->setTickmarks( QSlider::Left ); gammaSlider->setTickInterval( 20 ); gammaSlider->setFocusPolicy( QWidget::StrongFocus ); gammaSlider->setValue( 0 ); gammaSlider->setMinimumHeight( 50 ); gammaLCD = new QLCDNumber( 3, gammaMenu ); gammaLCD-> setFrameShape ( QFrame::NoFrame ); gammaLCD-> setSegmentStyle ( QLCDNumber::Flat ); gammaMenu->insertItem( gammaSlider ); gammaMenu->insertItem( gammaLCD ); connect( gammaSlider, SIGNAL( valueChanged( int ) ), gammaLCD, SLOT( display( int ) ) ); vbox5 = new QVBox( this ); QVBox *vbox4 = new QVBox( vbox5 ); QHBox *hbox6 = new QHBox( vbox4 ); tabWidget = new QTabWidget( hbox6, "tabWidget" ); QWidget *pTab; pTab = new QWidget( tabWidget, "pTab" ); tabWidget->insertTab( pTab, "Playlist"); QGridLayout *Playout = new QGridLayout( pTab ); Playout->setSpacing( 2); Playout->setMargin( 2); // Add the playlist area QVBox *vbox3 = new QVBox( pTab ); d->playListFrame = vbox3; QHBox *hbox2 = new QHBox( vbox3 ); d->selectedFiles = new PlayListSelection( hbox2 ); vbox1 = new QVBox( hbox2 ); QPEApplication::setStylusOperation( d->selectedFiles->viewport(), QPEApplication::RightOnHold ); QVBox *stretch1 = new QVBox( vbox1 ); // add stretch Playout->addMultiCellWidget( vbox3, 0, 0, 0, 1 ); QWidget *aTab; aTab = new QWidget( tabWidget, "aTab" ); QGridLayout *Alayout = new QGridLayout( aTab ); Alayout->setSpacing( 2 ); Alayout->setMargin( 2 ); - audioView = new QListView( aTab, "Audioview" ); + audioView = new PlayListFileView( aTab, "Audioview" ); audioView->addColumn( tr( "Title" ), 140 ); audioView->addColumn( tr( "Size" ), -1 ); audioView->addColumn( tr( "Media" ), 0 ); audioView->addColumn( tr( "Path" ), -1 ); audioView->setColumnAlignment( 1, Qt::AlignRight ); audioView->setColumnAlignment( 2, Qt::AlignRight ); audioView->setAllColumnsShowFocus( TRUE ); audioView->setSorting( 3, TRUE ); audioView->setMultiSelection( TRUE ); audioView->setSelectionMode( QListView::Extended ); Alayout->addMultiCellWidget( audioView, 0, 0, 0, 1 ); tabWidget->insertTab( aTab, tr( "Audio" ) ); QPEApplication::setStylusOperation( audioView->viewport(), QPEApplication::RightOnHold ); QWidget *vTab; vTab = new QWidget( tabWidget, "vTab" ); QGridLayout *Vlayout = new QGridLayout( vTab ); Vlayout->setSpacing( 2 ); Vlayout->setMargin( 2 ); - videoView = new QListView( vTab, "Videoview" ); + videoView = new PlayListFileView( vTab, "Videoview" ); videoView->addColumn( tr( "Title" ), 140); videoView->addColumn( tr( "Size" ), -1 ); videoView->addColumn(tr( "Media" ), 0 ); videoView->addColumn(tr( "Path" ), -1 ); videoView->setColumnAlignment( 1, Qt::AlignRight ); videoView->setColumnAlignment( 2, Qt::AlignRight ); videoView->setAllColumnsShowFocus( TRUE ); videoView->setSorting( 3, TRUE ); videoView->setMultiSelection( TRUE ); videoView->setSelectionMode( QListView::Extended ); Vlayout->addMultiCellWidget( videoView, 0, 0, 0, 1 ); QPEApplication::setStylusOperation( videoView->viewport(), QPEApplication::RightOnHold ); tabWidget->insertTab( vTab, tr( "Video" ) ); //playlists list QWidget *LTab; LTab = new QWidget( tabWidget, "LTab" ); QGridLayout *Llayout = new QGridLayout( LTab ); Llayout->setSpacing( 2 ); Llayout->setMargin( 2 ); playLists = new FileSelector( "playlist/plain;audio/x-mpegurl", LTab, "fileselector" , FALSE, FALSE ); Llayout->addMultiCellWidget( playLists, 0, 0, 0, 1 ); tabWidget->insertTab( LTab, tr( "Lists" ) ); setCentralWidget( vbox5 ); } PlayListWidgetGui::~PlayListWidgetGui() { } void PlayListWidgetGui::setView( char view ) { if ( view == 'l' ) showMaximized(); else hide(); } void PlayListWidgetGui::setActiveWindow() { // qDebug("SETTING active window"); // When we get raised we need to ensure that it switches views MediaPlayerState::DisplayType origDisplayType = mediaPlayerState.displayType(); mediaPlayerState.setDisplayType( MediaPlayerState::MediaSelection ); // invalidate mediaPlayerState.setDisplayType( origDisplayType ); // now switch back } |