diff --git a/projectMTrunk.kdevelop b/projectMTrunk.kdevelop
index 2d44ccb8b..8a9671cdd 100644
--- a/projectMTrunk.kdevelop
+++ b/projectMTrunk.kdevelop
@@ -10,16 +10,16 @@
projectMTrunk
.
false
-
-
- kdevsubversion
+
+
+
executable
/home/carm/projects/projectM/trunk/src/qprojectM-pulseaudio/qprojectM-pulseaudio
-
-
+
+
/home/carm/projects/projectM/trunk/src/qprojectM-pulseaudio/
false
false
@@ -51,22 +51,22 @@
0
-
-
-
+
+
+
default
- false
- 1
+ true
+ 2
0
false
-
-
-
+
+
+
default
@@ -75,11 +75,11 @@
-
-
-
-
-
+
+
+
+
+
true
false
false
@@ -180,7 +180,7 @@
.;
-
+
set
m_,_
theValue
diff --git a/projectMTrunk.kdevelop.filelist b/projectMTrunk.kdevelop.filelist
index 4e113bb6e..f8c5acb79 100644
--- a/projectMTrunk.kdevelop.filelist
+++ b/projectMTrunk.kdevelop.filelist
@@ -57,6 +57,7 @@ src/projectM-engine/PresetLoader.cpp
src/projectM-engine/PresetLoader.hpp
src/projectM-engine/PresetMerge.cpp
src/projectM-engine/PresetMerge.hpp
+src/projectM-engine/RandomNumberGenerators.hpp
src/projectM-engine/Renderer.cpp
src/projectM-engine/Renderer.hpp
src/projectM-engine/RingBuffer.hpp
@@ -157,19 +158,3 @@ src/qprojectM-pulseaudio/QPulseAudioDeviceModel.hpp
src/qprojectM-pulseaudio/QPulseAudioThread.cpp
src/qprojectM-pulseaudio/QPulseAudioThread.hpp
src/qprojectM-pulseaudio/qprojectM-pulseaudio.cpp
-src/qprojectM/src
-src/qprojectM/src/CMakeLists.txt
-src/qprojectM/src/ConfigFile.cpp
-src/qprojectM/src/ConfigFile.h
-src/qprojectM/src/Makefile
-src/qprojectM/src/QPlaylistFileDialog.hpp
-src/qprojectM/src/QPlaylistModel.cpp
-src/qprojectM/src/QPlaylistModel.hpp
-src/qprojectM/src/QProjectMConfigDialog.cpp
-src/qprojectM/src/QProjectMConfigDialog.hpp
-src/qprojectM/src/QProjectM_MainWindow.cpp
-src/qprojectM/src/QProjectM_MainWindow.hpp
-src/qprojectM/src/QXmlPlaylistHandler.hpp
-src/qprojectM/src/moc_QProjectMFileDialog.cxx
-src/qprojectM/src/moc_QProjectM_MainWindow.cxx
-src/qprojectM/src/qrc_application.cxx
diff --git a/projectMTrunk.kdevelop.pcs b/projectMTrunk.kdevelop.pcs
index c089b1adc..4b48711bd 100644
Binary files a/projectMTrunk.kdevelop.pcs and b/projectMTrunk.kdevelop.pcs differ
diff --git a/projectMTrunk.kdevses b/projectMTrunk.kdevses
index cafecaf40..28d5afb30 100644
--- a/projectMTrunk.kdevses
+++ b/projectMTrunk.kdevses
@@ -1,7 +1,7 @@
-
+
@@ -11,36 +11,78 @@
-
-
+
+
-
+
-
+
-
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
+
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -56,12 +98,15 @@
+
+
+
-
+
diff --git a/src/qprojectM/QPlaylistFileDialog.hpp b/src/qprojectM/QPlaylistFileDialog.hpp
index 91497bedf..e0774ac67 100644
--- a/src/qprojectM/QPlaylistFileDialog.hpp
+++ b/src/qprojectM/QPlaylistFileDialog.hpp
@@ -28,8 +28,9 @@
{
Q_OBJECT // must include this if you use Qt signals/slots
+
public:
- QPlaylistFileDialog(QWidget * parent = 0):
+ inline QPlaylistFileDialog(QWidget * parent = 0):
QFileDialog(parent, "Open a playlist file or directory", QString(), "Preset Playlists (*.ppl)" ) {
this->setFileMode(QFileDialog::ExistingFiles);
@@ -38,6 +39,8 @@
~QPlaylistFileDialog() { }
private:
-
};
+
+
+
#endif
diff --git a/src/qprojectM/QPlaylistModel.cpp b/src/qprojectM/QPlaylistModel.cpp
index 5eeff9ef3..1970729e2 100644
--- a/src/qprojectM/QPlaylistModel.cpp
+++ b/src/qprojectM/QPlaylistModel.cpp
@@ -77,8 +77,6 @@ bool QPlaylistModel::setData ( const QModelIndex & index, const QVariant & value
{
if ( role == QPlaylistModel::RatingRole )
{
- //QAbstractTableModel::setData(index, ratingToIcon(value.toInt()), Qt::DecorationRole);
- //std::cerr << "here" << std::endl;
m_ratings[index.row() ] = value.toInt();
emit ( dataChanged ( index, index ) );
return true;
@@ -125,7 +123,8 @@ QVariant QPlaylistModel::data ( const QModelIndex & index, int role = Qt::Displa
return QVariant ( QString ( m_projectM.getPresetName ( index.row() ).c_str() ) );
else
return ratingToIcon ( m_ratings[index.row() ] );
- case Qt::ToolTip:
+
+ case Qt::ToolTipRole:
if ( index.column() == 0 )
return QVariant ( QString ( m_projectM.getPresetName ( index.row() ).c_str() ) );
else
@@ -137,16 +136,13 @@ QVariant QPlaylistModel::data ( const QModelIndex & index, int role = Qt::Displa
return QVariant();
case QPlaylistModel::RatingRole:
return QVariant ( m_ratings[index.row() ] );
-
case Qt::BackgroundRole:
-
if ( m_projectM.isPresetLocked() && ( index.row() == m_projectM.selectedPresetIndex() ) )
return Qt::red;
if ( !m_projectM.isPresetLocked() && ( index.row() == m_projectM.selectedPresetIndex() ) )
return Qt::green;
return Qt::white;
-
case QPlaylistModel::URLInfoRole:
return QVariant ( QString ( m_projectM.getPresetURL ( index.row() ).c_str() ) );
default:
@@ -159,11 +155,6 @@ QVariant QPlaylistModel::headerData ( int section, Qt::Orientation orientation,
if ( orientation == Qt::Vertical )
return QAbstractTableModel::headerData ( section, orientation, role );
-
- if ( ( section == 0 ) && ( role == Qt::SizeHintRole ) )
- return QVariant ( 500 );
-// if ((section == 1) && (role == Qt::SizeHintRole))
-// return QVariant(60);
if ( ( section == 0 ) && ( role == Qt::DisplayRole ) )
return QString ( tr ( "Preset" ) );
if ( ( section == 1 ) && ( role == Qt::DisplayRole ) )
@@ -181,7 +172,6 @@ int QPlaylistModel::rowCount ( const QModelIndex & parent ) const
int QPlaylistModel::columnCount ( const QModelIndex & parent ) const
{
- // eventually add ratings here so size should be 2
if ( rowCount() > 0 )
return 2;
else
diff --git a/src/qprojectM/QPlaylistModel.hpp b/src/qprojectM/QPlaylistModel.hpp
index a14d6f603..40ebb8ce9 100644
--- a/src/qprojectM/QPlaylistModel.hpp
+++ b/src/qprojectM/QPlaylistModel.hpp
@@ -46,7 +46,6 @@ QVariant headerData ( int section, Qt::Orientation orientation, int role = Qt::D
void clear();
-
QVariant data ( const QModelIndex & index, int role) const;
int rowCount ( const QModelIndex & parent = QModelIndex()) const ;
int columnCount ( const QModelIndex & parent= QModelIndex()) const ;
diff --git a/src/qprojectM/QProjectM_MainWindow.cpp b/src/qprojectM/QProjectM_MainWindow.cpp
index 49057ed86..dbf95e9b5 100644
--- a/src/qprojectM/QProjectM_MainWindow.cpp
+++ b/src/qprojectM/QProjectM_MainWindow.cpp
@@ -71,8 +71,9 @@ class PlaylistWriteFunctor {
};
QProjectM_MainWindow::QProjectM_MainWindow ( const std::string & config_file, QMutex * audioMutex)
- :m_QPresetFileDialog ( new QPresetFileDialog ( this ) ), m_QPlaylistFileDialog ( new QPlaylistFileDialog ( this ) ),
- oldPresetIndex ( -1 ), playlistModel(0), configDialog(0), _menuVisible(true)
+ :m_QPresetFileDialog ( new QPresetFileDialog ( this ) ), m_QPlaylistFileDialog
+ ( new QPlaylistFileDialog ( this )), oldPresetIndex ( -1 ), playlistModel(0),
+ configDialog(0), hHeader(0), vHeader(0), _menuVisible(true)
{
@@ -97,7 +98,6 @@ QProjectM_MainWindow::QProjectM_MainWindow ( const std::string & config_file, QM
m_timer->start ( 0 );
- //readConfig(config_file);
setCentralWidget ( m_QProjectMWidget );
createActions();
createMenus();
@@ -116,19 +116,13 @@ QProjectM_MainWindow::QProjectM_MainWindow ( const std::string & config_file, QM
}
-
-/// @bug diffferent params necessary
-void QProjectM_MainWindow::writeConfig() {
-
-}
-
void QProjectM_MainWindow::readConfig(const std::string & configFile ) {
QSettings settings ( "projectM", "qprojectM" );
if ( settings.value("FullscreenOnStartup", false).toBool() )
this->setWindowState ( this->windowState() | Qt::WindowFullScreen );
- else
+ else
this->setWindowState ( this->windowState() & ~Qt::WindowFullScreen );
setMenuVisible(settings.value("MenuOnStartup", false).toBool());
@@ -142,8 +136,6 @@ void QProjectM_MainWindow::readConfig(const std::string & configFile ) {
m_QProjectMWidget->setBaseSize ( wvw, wvh );
}
-
-
QProjectM_MainWindow::~QProjectM_MainWindow()
{
@@ -155,7 +147,6 @@ QProjectM_MainWindow::~QProjectM_MainWindow()
delete ( ui );
-
}
void QProjectM_MainWindow::clearPlaylist()
@@ -324,24 +315,33 @@ void QProjectM_MainWindow::keyReleaseEvent ( QKeyEvent * e )
if ( ui->presetSearchBarLineEdit->hasFocus() )
return;
setMenuVisible(!_menuVisible);
+
+ refreshHeaders();
+
return;
case Qt::Key_R:
if ( ui->presetSearchBarLineEdit->hasFocus() )
return;
- //modelIndex.selectRandom()
- //modelIndex = QModelIndex(0,0,0);
- //selectPlaylistItem(modelIndex);
- //updatePlaylistSelection(true, modelIndex.row());
return;
default:
- //m_QProjectMWidget->keyReleaseEvent(e);
- break;//e->ignore();
+ break;
}
}
+
+void QProjectM_MainWindow::refreshHeaders() {
+
+
+ hHeader->setResizeMode ( 0, QHeaderView::Stretch);
+ hHeader->setResizeMode ( 1, QHeaderView::Fixed);
+ hHeader->resizeSection(1, 50);
+
+}
+
+
void QProjectM_MainWindow::closeEvent ( QCloseEvent *event )
{
writeSettings();
@@ -470,27 +470,26 @@ void QProjectM_MainWindow::copyPlaylist()
}
+
void QProjectM_MainWindow::refreshPlaylist()
{
copyPlaylist();
+ if (hHeader)
+ disconnect(hHeader);
+
hHeader = new QHeaderView ( Qt::Horizontal, this );
vHeader = new QHeaderView ( Qt::Vertical, this );
hHeader->setClickable ( false );
hHeader->setSortIndicatorShown ( false );
- //hHeader->setSortIndicator(1, Qt::AscendingOrder);
- hHeader->setStretchLastSection ( false );
+ hHeader->setStretchLastSection ( false );
+
ui->tableView->setVerticalHeader ( vHeader );
ui->tableView->setHorizontalHeader ( hHeader );
- hHeader->setResizeMode ( 0, QHeaderView::Stretch );
- hHeader->setResizeMode ( 1, QHeaderView::Fixed );
-
- //hHeader->resizeSection(0, 500);
- hHeader->resizeSection(1, 50);
-
+ refreshHeaders();
/*
hHeader->resizeSection(0, 200);
hHeader->setResizeMode(0, QHeaderView::Stretch);
@@ -501,9 +500,6 @@ void QProjectM_MainWindow::refreshPlaylist()
// playlistModel->setHeaderData(0, Qt::Horizontal, tr("Preset"));//, Qt::DisplayRole);
vHeader->hide();
-// playlistModel->setHeaderData(0, Qt::Horizontal, 200, Qt::SizeHintRole);
- //playlistModel->setHeaderData(1, Qt::Horizontal, tr("Rating"));//, Qt::DisplayRole);
- //playlistModel->setHeaderData(2, Qt::Horizontal, tr("Preset"));//, Qt::DisplayRole);
}
diff --git a/src/qprojectM/QProjectM_MainWindow.hpp b/src/qprojectM/QProjectM_MainWindow.hpp
index 0bd65224b..abc49c6d0 100644
--- a/src/qprojectM/QProjectM_MainWindow.hpp
+++ b/src/qprojectM/QProjectM_MainWindow.hpp
@@ -294,6 +294,7 @@ protected:
void closeEvent(QCloseEvent *event);
private slots:
+
void aboutQt();
void clearPlaylist();
void addPresets();
@@ -308,6 +309,7 @@ private slots:
void updateFilteredPlaylist(const QString & text);
private:
+ void refreshHeaders();
void readConfig(const std::string & configFile);
void writeConfig();
void copyPlaylist();