File indexing completed on 2024-04-28 04:55:41
0001 /* 0002 This file is part of Choqok, the KDE micro-blogging client 0003 0004 SPDX-FileCopyrightText: 2010-2012 Mehrdad Momeny <mehrdad.momeny@gmail.com> 0005 0006 SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL 0007 */ 0008 0009 #ifndef TEXTBROWSER_H 0010 #define TEXTBROWSER_H 0011 0012 #include <QTextBrowser> 0013 0014 #include "choqok_export.h" 0015 0016 class QAction; 0017 namespace Choqok 0018 { 0019 0020 namespace UI 0021 { 0022 0023 class CHOQOK_EXPORT TextBrowser : public QTextBrowser 0024 { 0025 Q_OBJECT 0026 public: 0027 TextBrowser(QWidget *parent = nullptr); 0028 virtual ~TextBrowser(); 0029 static void addAction(QAction *action); 0030 0031 Q_SIGNALS: 0032 void clicked(QMouseEvent *ev); 0033 0034 protected Q_SLOTS: 0035 void slotCopyLink(); 0036 0037 /** 0038 @brief Copy post text to clipboard. 0039 */ 0040 void slotCopyPostContent(); 0041 0042 protected: 0043 virtual void wheelEvent(QWheelEvent *event) override; 0044 virtual void mousePressEvent(QMouseEvent *ev) override; 0045 virtual void mouseMoveEvent(QMouseEvent *ev) override; 0046 virtual void resizeEvent(QResizeEvent *e) override; 0047 virtual void contextMenuEvent(QContextMenuEvent *event) override; 0048 0049 private: 0050 class Private; 0051 Private *const d; 0052 }; 0053 0054 } 0055 0056 } 0057 0058 #endif // CHOQOK_UI_TEXTBROWSER_H