#ifndef __PROPERTIES_DIALOG_H #define __PROPERTIES_DIALOG_H #include #include class QGridLayout; class QTabWidget; class QGroupBox; class QLabel; class QScrollArea; class QWidget; class YACReaderFieldEdit; class YACReaderFieldPlainTextEdit; class QDialogButtonBox; class QCheckBox; //class YACReaderBusyWidget; class QToolButton; #include "comic_db.h" class PropertiesDialog : public QDialog { Q_OBJECT private: QWidget * mainWidget; //YACReaderBusyWidget * busyIndicator; QGridLayout * mainLayout; QTabWidget * tabBar; QWidget * coverBox; QLabel * cover; QScrollArea * sa; QWidget * generalInfoBox; YACReaderFieldEdit * title; YACReaderFieldEdit * numPagesEdit; QLabel * size; QLabel * comicVineLink; YACReaderFieldEdit * coverPageEdit; QIntValidator coverPageValidator; YACReaderFieldEdit * numberEdit; QIntValidator numberValidator; QCheckBox * isBisCheck; YACReaderFieldEdit * countEdit; QIntValidator countValidator; YACReaderFieldEdit * volumeEdit; YACReaderFieldEdit * storyArcEdit; YACReaderFieldEdit * arcNumberEdit; QIntValidator arcNumberValidator; YACReaderFieldEdit * arcCountEdit; QIntValidator arcCountValidator; YACReaderFieldEdit * genereEdit; YACReaderFieldPlainTextEdit * writer; YACReaderFieldPlainTextEdit * penciller; YACReaderFieldPlainTextEdit * inker; YACReaderFieldPlainTextEdit * colorist; YACReaderFieldPlainTextEdit * letterer; YACReaderFieldPlainTextEdit * coverArtist; YACReaderFieldEdit * dayEdit; QIntValidator dayValidator; YACReaderFieldEdit * monthEdit; QIntValidator monthValidator; YACReaderFieldEdit * yearEdit; QIntValidator yearValidator; YACReaderFieldEdit * publisherEdit; YACReaderFieldEdit * formatEdit; QCheckBox * colorCheck; YACReaderFieldEdit * ageRatingEdit; YACReaderFieldPlainTextEdit * synopsis; YACReaderFieldPlainTextEdit * characters; YACReaderFieldPlainTextEdit * notes; QWidget * authorsBox; QWidget * publishingBox; QWidget * plotBox; QDialogButtonBox *buttonBox; QPushButton *closeButton; QPushButton *saveButton; QPushButton *restoreButton; //?? QPixmap coverImage; QToolButton * showPreviousCoverPageButton; QToolButton * showNextCoverPageButton; QLabel * coverPageNumberLabel; void createTabBar(); void createCoverBox(); void createGeneralInfoBox(); void createAuthorsBox(); void createPublishingBox(); void createPlotBox(); void createButtonBox(); void setDisableUniqueValues(bool disabled); QList comics; void closeEvent ( QCloseEvent * e ); void updateCoverPageNumberLabel(int n); bool coverChanged; public: PropertiesDialog(QWidget * parent = 0); QString databasePath; QString basePath; QSize sizeHint(); void paintEvent(QPaintEvent * event); public slots: void setComics(QList comics); void updateComics(); void save(); //Deprecated void setCover(const QPixmap & cover); void setMultipleCover(); void setFilename(const QString & name); void setNumpages(int pages); void setSize(float size); void loadNextCover(); void loadPreviousCover(); }; #endif