1 /* ============================================================ 2 * 3 * This file is a part of KDE project 4 * 5 * 6 * Date : 2015-08-01 7 * Description : new album creation dialog. 8 * 9 * Copyright (C) 2010 by Jens Mueller <tschenser at gmx dot de> 10 * Copyright (C) 2015 by Shourya Singh Gupta <shouryasgupta at gmail dot com> 11 * 12 * This program is free software; you can redistribute it 13 * and/or modify it under the terms of the GNU General 14 * Public License as published by the Free Software Foundation; 15 * either version 2, or (at your option) any later version. 16 * 17 * This program is distributed in the hope that it will be useful, 18 * but WITHOUT ANY WARRANTY; without even the implied warranty of 19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 20 * GNU General Public License for more details. 21 * 22 * ============================================================ */ 23 24 #ifndef KPNEWALBUMDIALOG_H 25 #define KPNEWALBUMDIALOG_H 26 27 // Qt includes 28 29 #include <QRadioButton> 30 #include <QDateTimeEdit> 31 #include <QDialog> 32 #include <QLineEdit> 33 #include <QTextEdit> 34 #include <QComboBox> 35 #include <QCloseEvent> 36 #include <QGridLayout> 37 #include <QGroupBox> 38 #include <QLabel> 39 #include <QVBoxLayout> 40 #include <QDialogButtonBox> 41 42 // Local includes 43 44 #include "kipiplugins_export.h" 45 46 namespace KIPIPlugins 47 { 48 49 class KIPIPLUGINS_EXPORT KPNewAlbumDialog : public QDialog 50 { 51 Q_OBJECT 52 53 public: 54 55 KPNewAlbumDialog(QWidget* const parent, const QString& pluginName); 56 ~KPNewAlbumDialog(); 57 58 void hideDateTime(); 59 void hideDesc(); 60 void hideLocation(); 61 62 QWidget* getMainWidget() const; 63 QGroupBox* getAlbumBox() const; 64 65 QLineEdit* getTitleEdit() const; 66 QTextEdit* getDescEdit() const; 67 QLineEdit* getLocEdit() const; 68 QDateTimeEdit* getDateTimeEdit() const; 69 QDialogButtonBox* getButtonBox() const; 70 71 void addToMainLayout(QWidget* const widget); 72 73 private Q_SLOTS: 74 75 void slotTextChanged(const QString& text); 76 77 private: 78 79 class Private; 80 Private* const d; 81 }; 82 83 } // namespace KIPIPlugins 84 85 #endif // KPNEWALBUMDIALOG_H 86