Warning, file /office/calligra/libs/main/KoDetailsPane.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 /* This file is part of the KDE project
0002    Copyright (C) 2005-2006 Peter Simonsson <psn@linux.se>
0003 
0004    This library is free software; you can redistribute it and/or
0005    modify it under the terms of the GNU Library General Public
0006    License as published by the Free Software Foundation; either
0007    version 2 of the License, or (at your option) any later version.
0008 
0009    This library is distributed in the hope that it will be useful,
0010    but WITHOUT ANY WARRANTY; without even the implied warranty of
0011    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
0012    Library General Public License for more details.
0013 
0014    You should have received a copy of the GNU Library General Public License
0015    along with this library; see the file COPYING.LIB.  If not, write to
0016    the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
0017    Boston, MA 02110-1301, USA.
0018 */
0019 #ifndef KODETAILSPANE_H
0020 #define KODETAILSPANE_H
0021 
0022 #include "ui_KoDetailsPaneBase.h"
0023 
0024 class QEvent;
0025 class QUrl;
0026 class QStandardItemModel;
0027 
0028 class KoDetailsPanePrivate;
0029 
0030 class KoDetailsPane : public QWidget, public Ui_KoDetailsPaneBase
0031 {
0032     Q_OBJECT
0033 
0034 public:
0035     KoDetailsPane(QWidget* parent, const QString& header);
0036     ~KoDetailsPane() override;
0037 
0038     bool eventFilter(QObject* watched, QEvent* e) override;
0039 
0040     /// @return the model used in the document list
0041     QStandardItemModel* model() const;
0042 
0043 Q_SIGNALS:
0044     /// Emitted when a file is requested to be opened
0045     void openUrl(const QUrl&);
0046 
0047     /// This is used to keep all splitters in different details panes synced
0048     void splitterResized(KoDetailsPane* sender, const QList<int>& sizes);
0049 
0050 public Q_SLOTS:
0051     /// This is used to keep all splitters in different details panes synced
0052     void resizeSplitter(KoDetailsPane* sender, const QList<int>& sizes);
0053 
0054 protected Q_SLOTS:
0055     /// This is called when the selection in the listview changed
0056     virtual void selectionChanged(const QModelIndex& index) = 0;
0057     virtual void openFile();
0058     virtual void openFile(const QModelIndex& index) = 0;
0059 
0060     void changePalette();
0061 
0062 protected:
0063     enum Extents {
0064         IconExtent = 64,
0065         PreviewExtent = 128
0066     };
0067 
0068 private:
0069     KoDetailsPanePrivate * const d;
0070 };
0071 
0072 #endif //KODETAILSPANE_H