yacreader/YACReaderLibrary/properties_dialog.h
Igor Kushnir fc57378a85 Remove unused sizeHint() from GridComicsView and ComicsViewTransition
QWidget::sizeHint() is const-qualified, so Clang warns that non-const
sizeHint() member functions merely hide the virtual function of the base
class.

664dac3401 and
9f53ae6efc introduced these member
functions in 2014 without const qualifiers. QWidget::sizeHint() was
const-qualified even in Qt 3. Since these member functions have never
had any effect, they should be removed rather than const-qualified to
preserve the long-standing behaviors of the two classes.

Add a TODO for a similar but less straightforward issue with
PropertiesDialog::sizeHint().
2021-03-13 15:33:34 +02:00

145 lines
3.5 KiB
C++

#ifndef __PROPERTIES_DIALOG_H
#define __PROPERTIES_DIALOG_H
#include <QDialog>
#include <QIntValidator>
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;
QCheckBox *mangaCheck;
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<ComicDB> comics;
void closeEvent(QCloseEvent *e) override;
void updateCoverPageNumberLabel(int n);
bool coverChanged;
float coverSizeRatio;
QString originalCoverSize;
public:
PropertiesDialog(QWidget *parent = nullptr);
QString databasePath;
QString basePath;
// TODO: this non-const member function hides rather than overrides
// QWidget::sizeHint(). But the function cannot be simply removed as it is used
// in our constructor. Will have to investigate and decide how to fix this.
QSize sizeHint();
void paintEvent(QPaintEvent *event) override;
public slots:
void setComics(QList<ComicDB> 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