]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/panels/information/informationpanelcontent.h
InformationPanel: Port from Phonon to QtMultimedia
[dolphin.git] / src / panels / information / informationpanelcontent.h
index 7b83e5d41f1c9dff75211b1786429196d88a8c03..333b2660879e6d3f70c53721a558d3c07981b6fa 100644 (file)
@@ -7,29 +7,31 @@
 #ifndef INFORMATIONPANELCONTENT_H
 #define INFORMATIONPANELCONTENT_H
 
+#include "config-dolphin.h"
 #include <KFileItem>
-#include <config-baloo.h>
 
 #include <QPointer>
 #include <QUrl>
 #include <QWidget>
 
 class KFileItemList;
-class PhononWidget;
+class MediaWidget;
 class PixmapViewer;
-class PlacesItemModel;
 class QPixmap;
 class QDialogButtonBox;
 class QString;
 class QLabel;
 class QScrollArea;
+class QGestureEvent;
 
-namespace KIO {
-  class PreviewJob;
+namespace KIO
+{
+class PreviewJob;
 }
 
-namespace Baloo {
-    class FileMetaDataWidget;
+namespace Baloo
+{
+class FileMetaDataWidget;
 }
 
 /**
@@ -41,7 +43,7 @@ class InformationPanelContent : public QWidget
     Q_OBJECT
 
 public:
-    explicit InformationPanelContent(QWidgetparent = nullptr);
+    explicit InformationPanelContent(QWidget *parent = nullptr);
     ~InformationPanelContent() override;
 
     /**
@@ -49,12 +51,12 @@ public:
      * The preview of the item is generated asynchronously,
      * the other meta information are fetched synchronously.
      */
-    void showItem(const KFileItemitem);
+    void showItem(const KFileItem &item);
 
     /**
      * Shows the meta information for the items \p items and its preview
      */
-    void showItems(const KFileItemListitems);
+    void showItems(const KFileItemList &items);
 
     KFileItemList items();
 
@@ -75,11 +77,12 @@ public:
      */
     void setPreviewAutoPlay(bool autoPlay);
 
-signals:
-    void urlActivated( const QUrl& url );
+Q_SIGNALS:
+    void urlActivated(const QUrl &url);
     void configurationFinished();
+    void contextMenuRequested(const QPoint &pos);
 
-public slots:
+public Q_SLOTS:
     /**
      * Is invoked after the file meta data configuration dialog has been
      * closed and refreshes the displayed meta data by the panel.
@@ -88,20 +91,22 @@ public slots:
 
 protected:
     /** @see QObject::eventFilter() */
-    bool eventFilter(QObject* obj, QEvent* event) override;
+    bool eventFilter(QObject *obj, QEvent *event) override;
 
-private slots:
+    bool event(QEvent *event) override;
+
+private Q_SLOTS:
     /**
      * Is invoked if no preview is available for the item. In this
      * case the icon will be shown.
      */
-    void showIcon(const KFileItemitem);
+    void showIcon(const KFileItem &item);
 
     /**
      * Is invoked if a preview is available for the item. The preview
      * \a pixmap is shown inside the info page.
      */
-    void showPreview(const KFileItem& item, const QPixmap& pixmap);
+    void showPreview(const KFileItem &item, const QPixmap &pixmap);
 
     /**
      * Marks the currently shown preview as outdated
@@ -118,7 +123,7 @@ private:
      * label width (QLabel::setWordWrap() does not work if the
      * text represents one extremely long word).
      */
-    void setNameLabelText(const QStringtext);
+    void setNameLabelText(const QString &text);
 
     /**
      * Adjusts the sizes of the widgets dependent on the available
@@ -131,21 +136,22 @@ private:
      */
     void refreshPixmapView();
 
+    bool gestureEvent(QGestureEvent *event);
+
 private:
     KFileItem m_item;
 
     QPointer<KIO::PreviewJob> m_previewJob;
-    QTimerm_outdatedPreviewTimer;
+    QTimer *m_outdatedPreviewTimer;
 
-    PixmapViewerm_preview;
-    PhononWidget* m_phononWidget;
-    QLabelm_nameLabel;
-    Baloo::FileMetaDataWidgetm_metaDataWidget;
-    QScrollAream_metaDataArea;
-    QLabelm_configureLabel;
-    QDialogButtonBoxm_configureButtons;
+    PixmapViewer *m_preview;
+    MediaWidget *m_mediaWidget;
+    QLabel *m_nameLabel;
+    Baloo::FileMetaDataWidget *m_metaDataWidget;
+    QScrollArea *m_metaDataArea;
+    QLabel *m_configureLabel;
+    QDialogButtonBox *m_configureButtons;
 
-    PlacesItemModel* m_placesItemModel;
     bool m_isVideo;
 };