new feature: outputs screen

This commit is contained in:
Andrzej Rybczak
2009-05-26 22:07:08 +02:00
parent 049d0d9b35
commit 5a2853b36a
11 changed files with 245 additions and 4 deletions

View File

@@ -867,6 +867,37 @@ void Connection::GetDirectories(const string &path, TagList &v) const
}
}
void Connection::GetOutputs(OutputList &v) const
{
if (!isConnected)
return;
mpd_sendOutputsCommand(itsConnection);
while (mpd_OutputEntity *output = mpd_getNextOutput(itsConnection))
{
v.push_back(std::make_pair(output->name, output->enabled));
mpd_freeOutputElement(output);
}
mpd_finishCommand(itsConnection);
}
bool Connection::EnableOutput(int id)
{
if (!isConnected)
return false;
mpd_sendEnableOutputCommand(itsConnection, id);
mpd_finishCommand(itsConnection);
return !CheckForErrors();
}
bool Connection::DisableOutput(int id)
{
if (!isConnected)
return false;
mpd_sendDisableOutputCommand(itsConnection, id);
mpd_finishCommand(itsConnection);
return !CheckForErrors();
}
int Connection::CheckForErrors()
{
itsErrorCode = 0;