quill/homepagewidget.h

67 lines
1.8 KiB
C
Raw Normal View History

2022-06-28 23:15:13 -07:00
#ifndef HOMEPAGEWIDGET_H
#define HOMEPAGEWIDGET_H
#include <QWidget>
#include <QVBoxLayout>
#include "qclickablelabel.h"
#include "qtooltiplabel.h"
#include "locallibrarywidget.h"
#include "toast.h"
2022-07-17 23:40:32 -07:00
#include "bookoptionsdialog.h"
#include "bookinfodialog.h"
2022-06-28 23:15:13 -07:00
namespace Ui {
class homePageWidget;
}
class homePageWidget : public QWidget
{
Q_OBJECT
public:
QString className = this->metaObject()->className();
explicit homePageWidget(QWidget *parent = nullptr);
~homePageWidget();
int sW;
int sH;
int stdIconWidth;
int stdIconHeight;
float stdIconWidthDivider;
float stdIconHeightDivider;
int bookTitleTruncateThreshold;
2022-07-17 23:40:32 -07:00
bool pinnedBooksDatabaseEmpty = true;
2022-06-28 23:15:13 -07:00
signals:
void openBookSignal(QString bookPath, bool relativePath);
void refreshScreen();
2022-07-17 23:40:32 -07:00
void relaunchHomePageWidget();
2022-06-28 23:15:13 -07:00
private slots:
void openBook(QString bookPath);
void refreshScreenNative();
void setupDisplay(bool databaseGenerated);
void setupDisplaySlot();
void setupDisplayWithDatabase();
void showToast(QString messageToDisplay);
2022-07-17 23:40:32 -07:00
void openBookOptionsDialog(QString bookPath);
void openLocalBookInfoDialog();
void handlePossibleBookPin();
2022-06-28 23:15:13 -07:00
private:
Ui::homePageWidget *ui;
localLibraryWidget * localLibraryWidgetWindow;
toast * toastWindow;
2022-07-17 23:40:32 -07:00
bookOptionsDialog * bookOptionsDialogWindow;
bookInfoDialog * bookInfoDialogWindow;
QVector<QToolTipLabel*> bookTitleArray;
QVector<QHBoxLayout*> horizontalLayoutArray;
2022-06-28 23:15:13 -07:00
QVector<QVBoxLayout*> verticalLayoutArray;
QVector<QClickableLabel*> bookBtnArray;
2022-07-17 23:40:32 -07:00
QVector<QToolTipLabel*> pinnedBooksTitleArray;
QVector<QHBoxLayout*> pinnedBooksHorizontalLayoutArray;
QVector<QVBoxLayout*> pinnedBooksVerticalLayoutArray;
QVector<QClickableLabel*> pinnedBooksBtnArray;
2022-06-28 23:15:13 -07:00
};
#endif // HOMEPAGEWIDGET_H