Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-09-17 09:27:19

0001 // Copyright (C) 2016 The Qt Company Ltd.
0002 // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
0003 // Qt-Security score:significant reason:default
0004 
0005 #ifndef QTEXTBROWSER_H
0006 #define QTEXTBROWSER_H
0007 
0008 #include <QtWidgets/qtwidgetsglobal.h>
0009 #include <QtWidgets/qtextedit.h>
0010 #include <QtCore/qurl.h>
0011 
0012 QT_REQUIRE_CONFIG(textbrowser);
0013 
0014 QT_BEGIN_NAMESPACE
0015 
0016 class QTextBrowserPrivate;
0017 
0018 class Q_WIDGETS_EXPORT QTextBrowser : public QTextEdit
0019 {
0020     Q_OBJECT
0021 
0022     Q_PROPERTY(QUrl source READ source WRITE setSource)
0023     Q_PROPERTY(QTextDocument::ResourceType sourceType READ sourceType)
0024     Q_OVERRIDE(bool modified SCRIPTABLE false)
0025     Q_OVERRIDE(bool readOnly DESIGNABLE false SCRIPTABLE false)
0026     Q_OVERRIDE(bool undoRedoEnabled DESIGNABLE false SCRIPTABLE false)
0027     Q_PROPERTY(QStringList searchPaths READ searchPaths WRITE setSearchPaths)
0028     Q_PROPERTY(bool openExternalLinks READ openExternalLinks WRITE setOpenExternalLinks)
0029     Q_PROPERTY(bool openLinks READ openLinks WRITE setOpenLinks)
0030 
0031 public:
0032     explicit QTextBrowser(QWidget* parent = nullptr);
0033     virtual ~QTextBrowser();
0034 
0035     QUrl source() const;
0036     QTextDocument::ResourceType sourceType() const;
0037 
0038     QStringList searchPaths() const;
0039     void setSearchPaths(const QStringList &paths);
0040 
0041     virtual QVariant loadResource(int type, const QUrl &name) override;
0042 
0043     bool isBackwardAvailable() const;
0044     bool isForwardAvailable() const;
0045     void clearHistory();
0046     QString historyTitle(int) const;
0047     QUrl historyUrl(int) const;
0048     int backwardHistoryCount() const;
0049     int forwardHistoryCount() const;
0050 
0051     bool openExternalLinks() const;
0052     void setOpenExternalLinks(bool open);
0053 
0054     bool openLinks() const;
0055     void setOpenLinks(bool open);
0056 
0057 public Q_SLOTS:
0058     void setSource(const QUrl &name, QTextDocument::ResourceType type = QTextDocument::UnknownResource);
0059     virtual void backward();
0060     virtual void forward();
0061     virtual void home();
0062     virtual void reload();
0063 
0064 Q_SIGNALS:
0065     void backwardAvailable(bool);
0066     void forwardAvailable(bool);
0067     void historyChanged();
0068     void sourceChanged(const QUrl &);
0069     void highlighted(const QUrl &);
0070     void anchorClicked(const QUrl &);
0071 
0072 protected:
0073     bool event(QEvent *e) override;
0074     virtual void keyPressEvent(QKeyEvent *ev) override;
0075     virtual void mouseMoveEvent(QMouseEvent *ev) override;
0076     virtual void mousePressEvent(QMouseEvent *ev) override;
0077     virtual void mouseReleaseEvent(QMouseEvent *ev) override;
0078     virtual void focusOutEvent(QFocusEvent *ev) override;
0079     virtual bool focusNextPrevChild(bool next) override;
0080     virtual void paintEvent(QPaintEvent *e) override;
0081     virtual void doSetSource(const QUrl &name, QTextDocument::ResourceType type = QTextDocument::UnknownResource);
0082 
0083 private:
0084     Q_DISABLE_COPY(QTextBrowser)
0085     Q_DECLARE_PRIVATE(QTextBrowser)
0086 };
0087 
0088 QT_END_NAMESPACE
0089 
0090 #endif // QTEXTBROWSER_H