File indexing completed on 2024-04-28 16:24:35

0001 /* This file is part of the KDE project
0002    Copyright (C) 2009 Dag Andersen <danders@get2net.dk>
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 
0020 #ifndef KPTINSERTFILEDLG_H
0021 #define KPTINSERTFILEDLG_H
0022 
0023 #include "ui_kptinsertfilepanel.h"
0024 
0025 #include <KoDialog.h>
0026 
0027 class QUrl;
0028 
0029 namespace KPlato
0030 {
0031 
0032 class Project;
0033 class Node;
0034 class InsertFilePanel;
0035 
0036 class InsertFileDialog : public KoDialog
0037 {
0038     Q_OBJECT
0039 public:
0040     InsertFileDialog(Project &project, Node *currentNode, QWidget *parent=0);
0041 
0042     QUrl url() const;
0043     Node *parentNode() const;
0044     Node *afterNode() const;
0045 
0046 private:
0047     InsertFilePanel *m_panel;
0048 };
0049 
0050 
0051 class InsertFilePanel : public QWidget
0052 {
0053     Q_OBJECT
0054 public:
0055     InsertFilePanel(Project &project, Node *currentNode, QWidget *parent);
0056 
0057     QUrl url() const;
0058     Node *parentNode() const;
0059     Node *afterNode() const;
0060 
0061     Ui::InsertFilePanel ui;
0062 
0063 Q_SIGNALS:
0064     void enableButtonOk(bool);
0065 
0066 protected Q_SLOTS:
0067     void changed(const QString&);
0068 
0069     void slotOpenFileDialog(KUrlRequester *);
0070 
0071 private:
0072     Project &m_project;
0073     Node *m_node;
0074 };
0075 
0076 
0077 } //KPlato namespace
0078 
0079 #endif