| Classes - Annotated - Tree - Functions - Home - Structure

# qurl.h

This is the verbatim text of the qurl.h include file. It is provided only for illustration; the copyright remains with Trolltech.

    /****************************************************************************
    ** $Id: qt/src/kernel/qurl.h   2.3.1   edited 2001-01-26 $
    **
    ** Definition of QUrl class
    **
    ** Created : 950429
    **
    ** Copyright (C) 1992-2000 Trolltech AS.  All rights reserved.
    **
    ** This file is part of the kernel module of the Qt GUI Toolkit.
    **
    ** This file may be distributed under the terms of the Q Public License
    ** as defined by Trolltech AS of Norway and appearing in the file
    ** LICENSE.QPL included in the packaging of this file.
    **
    ** This file may be distributed and/or modified under the terms of the
    ** GNU General Public License version 2 as published by the Free Software
    ** Foundation and appearing in the file LICENSE.GPL included in the
    ** packaging of this file.
    **
    ** Licensees holding valid Qt Enterprise Edition or Qt Professional Edition
    ** licenses may use this file in accordance with the Qt Commercial License
    ** Agreement provided with the Software.
    **
    ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
    ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
    **
    ** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for
    **   information about Qt Commercial License Agreements.
    ** See http://www.trolltech.com/qpl/ for QPL licensing information.
    ** See http://www.trolltech.com/gpl/ for GPL licensing information.
    **
    ** Contact info@trolltech.com if any conditions of this licensing are
    ** not clear to you.
    **
    **********************************************************************/

    #ifndef QURL_H
    #define QURL_H

    #ifndef QT_H
    #include "qstring.h"
    #include "qdir.h"
    #endif // QT_H

    struct QUrlPrivate;

    class Q_EXPORT QUrl
    {
    public:
        QUrl();
        QUrl( const QString& url );
        QUrl( const QUrl& url );
        QUrl( const QUrl& url, const QString& relUrl, bool checkSlash = FALSE );
        virtual ~QUrl();

        QString protocol() const;
        virtual void setProtocol( const QString& protocol );

        QString user() const;
        virtual void setUser( const QString& user );
        bool hasUser() const;

        QString password() const;
        virtual void setPassword( const QString& pass );
        bool hasPassword() const;

        QString host() const;
        virtual void setHost( const QString& user );
        bool hasHost() const;

        int port() const;
        virtual void setPort( int port );

        QString path( bool correct = TRUE ) const;
        virtual void setPath( const QString& path );
        bool hasPath() const;

        virtual void setEncodedPathAndQuery( const QString& enc );
        QString encodedPathAndQuery();

        virtual void setQuery( const QString& txt );
        QString query() const;

        QString ref() const;
        virtual void setRef( const QString& txt );
        bool hasRef() const;

        bool isValid() const;
        bool isLocalFile() const;

        virtual void addPath( const QString& path );
        virtual void setFileName( const QString& txt );

        QString fileName() const;
        QString dirPath() const;

        QUrl& operator=( const QUrl& url );
        QUrl& operator=( const QString& url );

        bool operator==( const QUrl& url ) const;
        bool operator==( const QString& url ) const;

        static void decode( QString& url );
        static void encode( QString& url );

        operator QString() const;
        virtual QString toString( bool encodedPath = FALSE, bool forcePrependProtocol = TRUE ) const;

        virtual bool cdUp();

        static bool isRelativeUrl( const QString &url );

    protected:
        virtual void reset();
        virtual bool parse( const QString& url );

    private:
        QUrlPrivate *d;

    };

    #endif