]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/panels/information/informationpanelcontent.h
The &-shortcut from another action is not set until the action has been shown at...
[dolphin.git] / src / panels / information / informationpanelcontent.h
index 3b9fc6dc361231e87fa921025ed9d679fa733563..f918b8582a8233ec54ad1f72c5d4809fd37bd612 100644 (file)
@@ -1,5 +1,5 @@
 /***************************************************************************
- *   Copyright (C) 2009 by Peter Penz <peter.penz@gmx.at>                  *
+ *   Copyright (C) 2009-2010 by Peter Penz <peter.penz@gmx.at>             *
  *                                                                         *
  *   This program is free software; you can redistribute it and/or modify  *
  *   it under the terms of the GNU General Public License as published by  *
 #ifndef INFORMATIONPANELCONTENT_H
 #define INFORMATIONPANELCONTENT_H
 
-#include <panels/panel.h>
-
 #include <kconfig.h>
+#include <kfileitem.h>
 #include <kurl.h>
 #include <kvbox.h>
 
+class KFileItemList;
+class KFileMetaDataWidget;
 class PhononWidget;
 class PixmapViewer;
-class MetaDataWidget;
-class MetaTextLabel;
 class QPixmap;
 class QString;
-class KFileItem;
-class KSeparator;
 class QLabel;
 class QScrollArea;
 
@@ -41,7 +38,7 @@ class QScrollArea;
  * @brief Manages the widgets that display the meta information
 *         for file items of the Information Panel.
  */
-class InformationPanelContent : public Panel
+class InformationPanelContent : public QWidget
 {
     Q_OBJECT
 
@@ -52,7 +49,7 @@ public:
     /**
      * Shows the meta information for the item \p item.
      * The preview of the item is generated asynchronously,
-     * the other meta informations are fetched synchronously.
+     * the other meta information are fetched synchronously.
      */
     void showItem(const KFileItem& item);
 
@@ -67,6 +64,9 @@ public:
      */
     void configureSettings();
 
+signals:
+    void urlActivated( const KUrl& url );
+
 protected:
     /** @see QObject::eventFilter() */
     virtual bool eventFilter(QObject* obj, QEvent* event);
@@ -93,6 +93,12 @@ private slots:
     void slotPlayingStarted();
     void slotPlayingStopped();
 
+    /**
+     * Is invoked after the file meta data configuration dialog has been
+     * closed and refreshes the visibility of the meta data.
+     */
+    void refreshMetaData();
+
 private:
     /**
      * Checks whether the an URL is repesented by a place. If yes,
@@ -111,31 +117,21 @@ private:
     void setNameLabelText(const QString& text);
 
     /**
-     * Assures that the settings for the meta information
-     * are initialized with proper default values.
+     * Adjusts the sizes of the widgets dependent on the available
+     * width given by \p width.
      */
-    void initMetaInfoSettings(KConfigGroup& group);
-
-    /**
-     * Temporary helper method for KDE 4.3 as we currently don't get
-     * translated labels for Nepmok literals: Replaces camelcase labels
-     * like "fileLocation" by "File Location:".
-     */
-    QString tunedLabel(const QString& label) const;
-
-    void init();
+    void adjustWidgetSizes(int width);
 
 private:
     KFileItem m_item;
 
     bool m_pendingPreview;
     QTimer* m_outdatedPreviewTimer;
-    QLabel* m_nameLabel;
 
     PixmapViewer* m_preview;
-    KSeparator* m_previewSeparator;
     PhononWidget* m_phononWidget;
-    MetaDataWidget* m_metaDataWidget;
+    QLabel* m_nameLabel;
+    KFileMetaDataWidget* m_metaDataWidget;
     QScrollArea* m_metaDataArea;
 };