本文整理汇总了C++中Playlist::size方法的典型用法代码示例。如果您正苦于以下问题:C++ Playlist::size方法的具体用法?C++ Playlist::size怎么用?C++ Playlist::size使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Playlist
的用法示例。
在下文中一共展示了Playlist::size方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: LetUserSelectMediaFile
QStringList OverviewPlaylistWidget::LetUserSelectMediaFile(QWidget *pParent, QString pDescription, bool pMultipleFiles)
{
QStringList tResult;
LOGEX(OverviewPlaylistWidget, LOG_VERBOSE, "Current data directory is \"%s\"", CONF.GetDataDirectory().toStdString().c_str());
if (pMultipleFiles)
tResult = QFileDialog::getOpenFileNames(pParent, pDescription,
CONF.GetDataDirectory(),
sLoadMediaFilters,
&sAllLoadMediaFilter,
CONF_NATIVE_DIALOGS);
else
{
tResult = QStringList(QFileDialog::getOpenFileName(pParent, pDescription,
CONF.GetDataDirectory(),
sLoadMediaFilters,
&sAllLoadMediaFilter,
CONF_NATIVE_DIALOGS));
// use the file parser to avoid playlists and resolve them to one single entry
if (!tResult.isEmpty())
{
Playlist tPlaylist = Parse(tResult.first(), "");
if (tPlaylist.size() > 0)
tResult = QStringList(tPlaylist.first().Location);
else
tResult.clear();
}
}
if (!tResult.isEmpty())
CONF.SetDataDirectory(tResult.first().left(tResult.first().lastIndexOf('/')));
return tResult;
}
示例2: LetUserSelectAudioFile
QStringList OverviewPlaylistWidget::LetUserSelectAudioFile(QWidget *pParent, QString pDescription, bool pMultipleFiles)
{
QStringList tResult;
if (pMultipleFiles)
tResult = QFileDialog::getOpenFileNames(pParent, pDescription,
CONF.GetDataDirectory(),
sLoadAudioFilters,
&sAllLoadAudioFilter,
CONF_NATIVE_DIALOGS);
else
{
tResult = QStringList(QFileDialog::getOpenFileName(pParent, pDescription,
CONF.GetDataDirectory(),
sLoadAudioFilters,
&sAllLoadAudioFilter,
CONF_NATIVE_DIALOGS));
// use the file parser to avoid playlists and resolve them to one single entry
if (!tResult.isEmpty())
{
Playlist tPlaylist = Parse(tResult.first(), "", false);
if (tPlaylist.size() > 0)
tResult = QStringList(tPlaylist.first().Location);
else
{
tResult.clear();
}
}
}
if ((!tResult.isEmpty()) && (tResult.first() != ""))
{
CONF.SetDataDirectory(tResult.first().left(tResult.first().lastIndexOf('/')));
}
return tResult;
}
示例3: jack_session_callback_impl
void JackAudioDriver::jack_session_callback_impl(jack_session_event_t *event)
{
INFOLOG("jack session callback");
enum session_events{
SAVE_SESSION,
SAVE_AND_QUIT,
SAVE_TEMPLATE
};
Hydrogen* H = Hydrogen::get_instance();
Song* S = H->getSong();
Preferences* P = Preferences::get_instance();
EventQueue* EQ = EventQueue::get_instance();
jack_session_event_t *ev = (jack_session_event_t *) event;
QString jackSessionDirectory = (QString) ev->session_dir;
QString retval = P->getJackSessionApplicationPath() + " --jacksessionid " + ev->client_uuid;
/* Playlist mode */
Playlist* playlist = Playlist::get_instance();
if ( playlist->size() > 0 ) {
if ( playlist->getFilename().isEmpty() ) playlist->setFilename( Filesystem::untitled_playlist_file_name() );
QString FileName = baseName ( playlist->getFilename() );
FileName.replace ( QString(" "), QString("_") );
retval += " -p \"${SESSION_DIR}" + FileName + "\"";
/* Copy all songs to Session Directory and update playlist */
SongReader reader;
for ( uint i = 0; i < playlist->size(); ++i ) {
QString BaseName = baseName( playlist->get( i )->filePath );
QString newName = jackSessionDirectory + BaseName;
QString SongPath = reader.getPath( playlist->get( i )->filePath );
if ( SongPath != NULL && QFile::copy ( SongPath, newName ) ) {
/* Keep only filename on list for relative read */
playlist->get( i )->filePath = BaseName;
// playlist->get( i )->m_hScript;
} else {
/* Note - we leave old path in playlist */
ERRORLOG( "Can't copy " + playlist->get( i )->filePath + " to " + newName );
ev->flags = JackSessionSaveError;
}
}
/* Save updated playlist */
bool relativePaths = Preferences::get_instance()->isPlaylistUsingRelativeFilenames();
if ( Files::savePlaylistPath( jackSessionDirectory + FileName, playlist, relativePaths ) == NULL ) {
ev->flags = JackSessionSaveError;
}
/* Song Mode */
} else {
/* Valid Song is needed */
if ( S->get_filename().isEmpty() ) S->set_filename( Filesystem::untitled_song_file_name() );
QString FileName = baseName ( S->get_filename() );
FileName.replace ( QString(" "), QString("_") );
S->set_filename(jackSessionDirectory + FileName);
/* SongReader will look into SESSION DIR anyway */
retval += " -s \"" + FileName + "\"";
switch (ev->type) {
case JackSessionSave:
EQ->push_event(EVENT_JACK_SESSION, SAVE_SESSION);
break;
case JackSessionSaveAndQuit:
EQ->push_event(EVENT_JACK_SESSION, SAVE_SESSION);
EQ->push_event(EVENT_JACK_SESSION, SAVE_AND_QUIT);
break;
default:
ERRORLOG( "JackSession: Unknown event type" );
ev->flags = JackSessionSaveError;
}
}
ev->command_line = strdup( retval.toUtf8().constData() );
jack_session_reply (m_pClient, ev );
jack_session_event_free (ev);
}