00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef KOOPENPANE_H
00020 #define KOOPENPANE_H
00021
00022 #include <QWidget>
00023 #include <QPixmap>
00024 #include <QList>
00025
00026 class KoCustomDocumentCreator;
00027 class KConfig;
00028 class KoTemplateGroup;
00029 class KoOpenPanePrivate;
00030 class KInstance;
00031 class QPixmap;
00032 class Q3ListViewItem;
00033 class KoTemplatesPane;
00034 class KoDetailsPane;
00035 class KUrl;
00036
00037 class KoOpenPane : public QWidget
00038 {
00039 Q_OBJECT
00040
00041 public:
00048 KoOpenPane(QWidget *parent, KInstance* instance, const QString& templateType = QString::null);
00049 virtual ~KoOpenPane();
00050
00051 Q3ListViewItem* addPane(const QString& title, const QString& icon, QWidget* widget, int sortWeight);
00052 Q3ListViewItem* addPane(const QString& title, const QPixmap& icon, QWidget* widget, int sortWeight);
00053
00060 void setCustomDocumentWidget(QWidget *widget);
00061
00062 protected slots:
00063 void showOpenFileDialog();
00064
00065 void selectionChanged(Q3ListViewItem* item);
00066 void itemClicked(Q3ListViewItem* item);
00067
00069 void saveSplitterSizes(KoDetailsPane* sender, const QList<int>& sizes);
00070
00071 signals:
00072 void openExistingFile(const KUrl&);
00073 void openTemplate(const KUrl&);
00074
00076 void alwaysUseChanged(KoTemplatesPane* sender, const QString& alwaysUse);
00077
00079 void splitterResized(KoDetailsPane* sender, const QList<int>& sizes);
00080
00081 protected:
00082 void initRecentDocs();
00087 void initTemplates(const QString& templateType);
00088
00089 void updateSectionListMaxHeight();
00090
00091 private:
00092 KoOpenPanePrivate* d;
00093 };
00094
00095 #endif //KOOPENPANE_H