summaryrefslogtreecommitdiffstats
path: root/examples/network/infoprotocol/infourlclient/client.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'examples/network/infoprotocol/infourlclient/client.cpp')
-rw-r--r--examples/network/infoprotocol/infourlclient/client.cpp60
1 files changed, 60 insertions, 0 deletions
diff --git a/examples/network/infoprotocol/infourlclient/client.cpp b/examples/network/infoprotocol/infourlclient/client.cpp
new file mode 100644
index 000000000..ba61d3b31
--- /dev/null
+++ b/examples/network/infoprotocol/infourlclient/client.cpp
@@ -0,0 +1,60 @@
+/****************************************************************************
+**
+** Copyright (C) 1992-2008 Trolltech ASA. All rights reserved.
+**
+** This file is part of an example program for TQt. This example
+** program may be used, distributed and modified without limitation.
+**
+*****************************************************************************/
+
+#include <qapplication.h>
+#include <qtextedit.h>
+#include <qpushbutton.h>
+#include <qfiledialog.h>
+
+#include "qip.h"
+#include "client.h"
+
+
+
+
+ClientInfo::ClientInfo( TQWidget *parent, const char *name ) :
+ ClientInfoBase( parent, name )
+{
+ connect( btnOpen, SIGNAL(clicked()), SLOT(downloadFile()) );
+ connect( btnQuit, SIGNAL(clicked()), qApp, SLOT(tquit()) );
+ connect( &op, SIGNAL( data( const TQByteArray &, TQNetworkOperation * ) ),
+ this, SLOT( newData( const TQByteArray & ) ) );
+}
+
+void ClientInfo::downloadFile()
+{
+ // under Windows you must not use the native file dialog
+ TQString file = getOpenFileName();
+ if ( !file.isEmpty() ) {
+ infoText->clear();
+ // download the data
+ op = file;
+ op.get();
+ }
+}
+
+TQString ClientInfo::getOpenFileName()
+{
+ static TQString workingDirectory( "qip://localhost/" );
+
+ TQFileDialog dlg( workingDirectory, TQString::null, 0, 0, TRUE );
+ dlg.setCaption( TQFileDialog::tr( "Open" ) );
+ dlg.setMode( TQFileDialog::ExistingFile );
+ TQString result;
+ if ( dlg.exec() == TQDialog::Accepted ) {
+ result = dlg.selectedFile();
+ workingDirectory = dlg.url();
+ }
+ return result;
+}
+
+void ClientInfo::newData( const TQByteArray &ba )
+{
+ infoText->append( TQString::fromUtf8( ba ) );
+}