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.
tqt3/examples/network/remotecontrol/remotectrlimpl.cpp

51 lines
1.1 KiB

#include "remotectrlimpl.h"
#include <qpushbutton.h>
#include <qlineedit.h>
#include <qsocket.h>
#include <qfiledialog.h>
#include <qcolordialog.h>
#include <qimage.h>
RemoteCtrlImpl::RemoteCtrlImpl( TQSocket *s )
{
socket = s;
connect( sImage, SIGNAL(clicked()), SLOT(sendImage()) );
connect( sText, SIGNAL(clicked()), SLOT(sendText()) );
connect( sPalette, SIGNAL(clicked()), SLOT(sendPalette()) );
}
void RemoteCtrlImpl::sendPacket( const TQVariant &v )
{
TQByteArray ba;
TQDataStream varDs( ba, IO_WriteOnly );
varDs << v;
TQDataStream ds( socket );
ds << (Q_UINT32) ba.size();
socket->writeBlock( ba.data(), ba.size() );
}
void RemoteCtrlImpl::sendImage()
{
TQString imageName = TQFileDialog::getOpenFileName( TQString::null,
"Images (*.png *.xpm *.jpg)", this );
TQImage image( imageName );
if ( !image.isNull() ) {
sendPacket( image );
}
}
void RemoteCtrlImpl::sendText()
{
sendPacket( textToSend->text() );
}
void RemoteCtrlImpl::sendPalette()
{
TQColor col = TQColorDialog::getColor( white, this );
if ( col.isValid() ) {
sendPacket( TQPalette(col,col) );
}
}