You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tdemultimedia/noatun/modules/net/net.cpp

58 lines
838 B

#include "net.h"
#include <noatun/player.h>
#include <noatun/app.h>
extern "C"
{
KDE_EXPORT Plugin *create_plugin()
{
return new Net();
}
}
Net::Net() : TQServerSocket(7539, 10), Plugin()
{
mFDs.setAutoDelete(true);
connect(napp->player(), TQT_SIGNAL(newSong()), TQT_SLOT(newSong()));
}
Net::~Net()
{
}
void Net::newConnection(int fd)
{
TQSocket *s=new QSocket;
s->setSocket(fd);
mFDs.append(s);
}
void Net::newSong()
{
if (!napp->player()->current())
return;
for (TQSocket *i=mFDs.first(); i!=0; i=mFDs.next())
{
TQCString line;
line=napp->player()->current().title().latin1();
line+='\n';
::write(i->socket(), (const void*)line.data(), line.length());
}
}
void Net::closed()
{
for (TQSocket *i=mFDs.first(); i!=0; i=mFDs.next())
{
if (sender()==i)
mFDs.removeRef(i);
}
}
#include "net.moc"