summaryrefslogtreecommitdiff
authorspiralman <spiralman>2003-03-21 21:59:58 (UTC)
committer spiralman <spiralman>2003-03-21 21:59:58 (UTC)
commit07a03b603d964b07d2866e04f480014fadcf1570 (patch) (side-by-side diff)
treebcc0b9c9a91855a21ec6dc777eb9ca803bf1b2f4
parentd1d55108ecc8c913267122014aa2f139be947299 (diff)
downloadopie-07a03b603d964b07d2866e04f480014fadcf1570.zip
opie-07a03b603d964b07d2866e04f480014fadcf1570.tar.gz
opie-07a03b603d964b07d2866e04f480014fadcf1570.tar.bz2
fixed commandline argument reading, made ubrowser a "document-oriented application" (implemented setDocument, etc)
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/ubrowser/httpfactory.cpp40
-rw-r--r--noncore/net/ubrowser/main.cpp4
-rw-r--r--noncore/net/ubrowser/mainview.cpp24
-rw-r--r--noncore/net/ubrowser/mainview.h2
4 files changed, 44 insertions, 26 deletions
diff --git a/noncore/net/ubrowser/httpfactory.cpp b/noncore/net/ubrowser/httpfactory.cpp
index 154d5d0..b57149f 100644
--- a/noncore/net/ubrowser/httpfactory.cpp
+++ b/noncore/net/ubrowser/httpfactory.cpp
@@ -38,9 +38,9 @@ const QMimeSource * HttpFactory::data(const QString &abs_name) const
name = abs_name;
// name = name.lower();
name = name.stripWhiteSpace();
- printf("%s\n", name.latin1());
+// printf("%s\n", name.latin1());
if(name.startsWith("http://"))
{
name = name.remove(0, 7);
@@ -72,9 +72,9 @@ const QMimeSource * HttpFactory::data(const QString &abs_name) const
portS.remove(0, portSep+1);
port = portS.toInt();
}
- printf("%s %s %d\n", host.latin1(), file.latin1(), port);
+// printf("%s %s %d\n", host.latin1(), file.latin1(), port);
if(port == 80)
{
portS="80";
@@ -106,9 +106,9 @@ const QMimeSource * HttpFactory::data(const QString &abs_name) const
return 0;
}
QByteArray data;
- printf( "HttpFactory::data: %s\n", inet_ntoa(*((struct in_addr *)serverInfo->h_addr )) );
+// printf( "HttpFactory::data: %s\n", inet_ntoa(*((struct in_addr *)serverInfo->h_addr )) );
QString request("GET " + file + " HTTP/1.1\r\nHost: " + host + ':' + portS + "\r\nConnection: close\r\n\r\n");
con = socket( AF_INET, SOCK_STREAM, 0 );
@@ -144,10 +144,10 @@ const QMimeSource * HttpFactory::data(const QString &abs_name) const
}
bytesSent = send( con, request.latin1(), request.length(), 0);
- printf("HttpFactory::data: bytes written: %d out of: %d\n", bytesSent, request.length() );
- printf("HttpFactory::data: request sent:\n%s", request.latin1());
+// printf("HttpFactory::data: bytes written: %d out of: %d\n", bytesSent, request.length() );
+// printf("HttpFactory::data: request sent:\n%s", request.latin1());
data = this->processResponse( con, isText );
::close( con );
@@ -215,50 +215,50 @@ const QByteArray HttpFactory::processResponse( int sockfd, bool &isText ) const
if( currentLine.contains( "Transfer-Encoding: chunked", false) >= 1 )
{
chunked = true;
- printf( "HttpFactory::processResponse: chunked encoding\n" );
+// printf( "HttpFactory::processResponse: chunked encoding\n" );
}
if( currentLine.contains( "Content-Type: text", false ) >= 1 )
{
isText = true;
- printf( "HttpFactory::processResponse: content type text\n" );
+// printf( "HttpFactory::processResponse: content type text\n" );
if( currentLine.contains( "html", false ) >= 1)
{
browser->setTextFormat(Qt::RichText);
- printf( "HttpFactory::processResponse: content type html\n" );
+// printf( "HttpFactory::processResponse: content type html\n" );
}
}
if( currentLine.contains( "Content-Type: image", false ) >= 1 )
{
isText = false;
- printf( "HttpFactory::processResponse: content type image\n" );
+// printf( "HttpFactory::processResponse: content type image\n" );
}
if( currentLine.contains( "Content-Length", false ) >= 1 )
{
currentLine.remove( 0, 16 );
dataLength = currentLine.toInt();
- printf( "HttpFactory::processResponse: content length: %d\n", dataLength );
+// printf( "HttpFactory::processResponse: content length: %d\n", dataLength );
}
if( currentLine.contains( "404", false ) >= 1 )
{
- printf( "HttpFactory::processResponse: 404 error\n" );
+// printf( "HttpFactory::processResponse: 404 error\n" );
return 0;
}
currentLine = "";
- printf("HttpFactory::processResponse: reseting currentLine: %s\n", currentLine.latin1() );
+// printf("HttpFactory::processResponse: reseting currentLine: %s\n", currentLine.latin1() );
}
}
}
const QByteArray HttpFactory::recieveNormal( int sockfd, int dataLen ) const
{
- printf( "HttpFactory::recieveNormal: recieving w/out chunked encoding\n" );
+// printf( "HttpFactory::recieveNormal: recieving w/out chunked encoding\n" );
QByteArray data( dataLen );
QByteArray temp( dataLen );
int recieved, i;
@@ -282,15 +282,15 @@ const QByteArray HttpFactory::recieveNormal( int sockfd, int dataLen ) const
}
temp.fill('\0');
}
- printf( "HttpFactory::recieveNormal: end of data\n" );
+// printf( "HttpFactory::recieveNormal: end of data\n" );
return data;
}
const QByteArray HttpFactory::recieveChunked( int sockfd ) const
{
- printf( "HttpFactory::recieveChunked: recieving data with chunked encoding\n" );
+// printf( "HttpFactory::recieveChunked: recieving data with chunked encoding\n" );
QByteArray data;
QByteArray temp( 1 );
int recieved, i = 0, cSize = 0;
@@ -305,11 +305,11 @@ const QByteArray HttpFactory::recieveChunked( int sockfd ) const
cSizeS += temp[0];
recv( sockfd, temp.data(), temp.size(), 0 );
}
- printf( "HttpFactory::recieveChunked: cSizeS: %s\n", cSizeS.latin1() );
+// printf( "HttpFactory::recieveChunked: cSizeS: %s\n", cSizeS.latin1() );
cSize = cSizeS.toInt( 0, 16 );
- printf( "HttpFactory::recieveChunked: first chunk of size: %d\n", cSize );
+// printf( "HttpFactory::recieveChunked: first chunk of size: %d\n", cSize );
if( *(temp.data()) == ';' )
{
while( *(temp.data()) != '\n' )
@@ -354,11 +354,11 @@ const QByteArray HttpFactory::recieveChunked( int sockfd ) const
cSizeS += temp[0];
recv( sockfd, temp.data(), temp.size(), 0 );
}
- printf( "HttpFactory::recieveChunked: cSizeS: %s\n", cSizeS.latin1() );
+// printf( "HttpFactory::recieveChunked: cSizeS: %s\n", cSizeS.latin1() );
cSize = cSizeS.toInt( 0, 16 );
- printf( "HttpFactory::recieveChunked: next chunk of size: %d\n", cSize );
+// printf( "HttpFactory::recieveChunked: next chunk of size: %d\n", cSize );
if( *(temp.data()) == ';' )
{
while( *(temp.data()) != '\n' )
@@ -370,7 +370,7 @@ const QByteArray HttpFactory::recieveChunked( int sockfd ) const
temp.fill( '\0', cSize );
data.resize( data.size() + cSize );
}
- printf( "HttpFactory::recieveChunked: end of data\n" );
+// printf( "HttpFactory::recieveChunked: end of data\n" );
return data;
}
diff --git a/noncore/net/ubrowser/main.cpp b/noncore/net/ubrowser/main.cpp
index fe0f243..e4a873d 100644
--- a/noncore/net/ubrowser/main.cpp
+++ b/noncore/net/ubrowser/main.cpp
@@ -22,8 +22,8 @@ int main( int argc, char **argv )
{
QPEApplication a( argc, argv );
MainView w;
- a.setMainWidget( &w );
- w.showMaximized();
+// a.setMainWidget( &w );
+ a.showMainDocumentWidget( &w );
return a.exec();
}
diff --git a/noncore/net/ubrowser/mainview.cpp b/noncore/net/ubrowser/mainview.cpp
index d3f4c57..f68c5db 100644
--- a/noncore/net/ubrowser/mainview.cpp
+++ b/noncore/net/ubrowser/mainview.cpp
@@ -32,8 +32,9 @@ MainView::MainView(QWidget *parent, const char *name) : QMainWindow(parent, name
go = new QToolButton(Resource::loadPixmap("ubrowser/go"), 0, 0, 0, 0, toolbar, "go");
toolbar->setStretchableWidget(location);
toolbar->setHorizontalStretchable(true);
+ location->setAutoCompletion( true );
addToolBar(toolbar);
browser = new QTextBrowser(this, "browser");
@@ -60,14 +61,21 @@ MainView::MainView(QWidget *parent, const char *name) : QMainWindow(parent, name
if( qApp->argc() > 1 )
{
char **argv = qApp->argv();
- QString *argv1 = new QString( argv[1] );
- if( !argv1->startsWith( "http://" ) && !argv1->startsWith( "/" ) )
+ int i = 0;
+ QString *openfile = new QString( argv[0] );
+ while( openfile->contains( "ubrowser" ) == 0 && i < qApp->argc() )
{
- argv1->insert( 0, QDir::currentDirPath()+"/" );
+ i++;
+ *openfile = argv[i];
}
- location->setEditText( *argv1 );
+ *openfile = argv[i+1];
+ if( !openfile->startsWith( "http://" ) && !openfile->startsWith( "/" ) )
+ {
+ openfile->insert( 0, QDir::currentDirPath()+"/" );
+ }
+ location->setEditText( *openfile );
goClicked();
}
}
@@ -102,4 +110,12 @@ void MainView::textChanged()
}
location->setEditText(browser->source());
}
+
+void MainView::setDocument( const QString& applnk_filename )
+{
+ DocLnk *file = new DocLnk( applnk_filename );
+
+ location->setEditText( file->file() );
+ goClicked();
+}
diff --git a/noncore/net/ubrowser/mainview.h b/noncore/net/ubrowser/mainview.h
index 1a9b0db..20e2c70 100644
--- a/noncore/net/ubrowser/mainview.h
+++ b/noncore/net/ubrowser/mainview.h
@@ -15,8 +15,9 @@ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#include <qpe/resource.h>
#include <qpe/qpetoolbar.h>
+#include <qpe/applnk.h>
#include <qapplication.h>
#include <qmainwindow.h>
#include <qwidget.h>
@@ -38,8 +39,9 @@ public:
MainView(QWidget *parent=0, const char *name=0);
public slots:
void goClicked();
void textChanged();
+ void setDocument( const QString& applnk_filename );
private:
QToolButton *back;
QToolButton *forward;
QToolButton *home;