X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fqtui%2Fchatitem.h;h=c2cb4ee48fc9a858dfd11a504c747fec908d6438;hp=f572bb441f6de9ac46e3e24a3db8213d69948ec6;hb=7cef35ccdcb26ad547383537d3615644df703c9a;hpb=e65e46d007d7f5f59274590dec3bc1d8e5f94e91 diff --git a/src/qtui/chatitem.h b/src/qtui/chatitem.h index f572bb44..c2cb4ee4 100644 --- a/src/qtui/chatitem.h +++ b/src/qtui/chatitem.h @@ -166,6 +166,9 @@ private: QList findClickables(); void endHoverMode(); + void showWebPreview(const Clickable &click); + void clearWebPreview(); + // WARNING: setGeometry and setHeight should not be used without either: // a) calling prepareGeometryChange() immediately before setColumns() @@ -202,54 +205,9 @@ struct ContentsChatItemPrivate : ChatItemPrivate { ContentsChatItem::Clickable currentClickable; bool hasDragged; -#ifdef HAVE_WEBKIT - ContentsChatItemPrivate(QTextLayout *l, const QList &c, ContentsChatItem *parent) : ChatItemPrivate(l), contentsItem(parent), clickables(c), hasDragged(false), controller(0) {} -#else ContentsChatItemPrivate(QTextLayout *l, const QList &c, ContentsChatItem *parent) : ChatItemPrivate(l), contentsItem(parent), clickables(c), hasDragged(false) {} -#endif - ~ContentsChatItemPrivate(); - -#ifdef HAVE_WEBKIT - void loadWebPreview(const QString &url, const QRectF &urlRect); - void clearPreview(); - -private: - class PreviewController; - class PreviewItem; - PreviewController *controller; -#endif //#ifdef HAVE_WEBKIT -}; - -#ifdef HAVE_WEBKIT -class ContentsChatItemPrivate::PreviewController : public QObject { - Q_OBJECT -public: - PreviewController(ContentsChatItem *contentsItem) : contentsItem(contentsItem), previewItem(0) {} - ~PreviewController(); - - void loadPage(const QString &url, const QRectF &urlRect); - -private slots: - void pageLoaded(bool success); - -private: - ContentsChatItem *contentsItem; - ContentsChatItemPrivate::PreviewItem *previewItem; - - QString url; }; -class QWebView; -class ContentsChatItemPrivate::PreviewItem : public QGraphicsItem { -public: - PreviewItem(QWebView *webView); - virtual void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = 0); - virtual inline QRectF boundingRect() const { return _boundingRect; } - -private: - QRectF _boundingRect; -}; -#endif //#ifdef HAVE_WEBKIT //inlines regarding ContentsChatItemPrivate ContentsChatItemPrivate *ContentsChatItem::privateData() const { return (ContentsChatItemPrivate *)ChatItem::privateData(); }