leocad/common/lc_instructionsdialog.h
2021-01-07 11:48:43 -08:00

75 lines
1.6 KiB
C++

#pragma once
#include "lc_instructions.h"
class lcInstructionsPageWidget : public QGraphicsView
{
Q_OBJECT
public:
lcInstructionsPageWidget(QWidget* Parent, lcInstructions* Instructions);
void SetCurrentPage(const lcInstructionsPage* Page);
protected:
lcInstructions* mInstructions;
};
class lcInstructionsPageListWidget : public QDockWidget
{
Q_OBJECT
public:
lcInstructionsPageListWidget(QWidget* Parent, lcInstructions* Instructions);
protected slots:
void ShowPageSetupDialog();
public:
//protected:
// QComboBox* mSizeComboBox = nullptr;
// QLineEdit* mWidthEdit = nullptr;
// QLineEdit* mHeightEdit = nullptr;
//
// QRadioButton* mPortraitButton = nullptr;
// QRadioButton* mLandscapeButton = nullptr;
//
// QLineEdit* mLeftMarginEdit = nullptr;
// QLineEdit* mRightMarginEdit = nullptr;
// QLineEdit* mTopMarginEdit = nullptr;
// QLineEdit* mBottomMarginEdit = nullptr;
//
// QComboBox* mUnitsComboBox = nullptr;
QListWidget* mThumbnailsWidget = nullptr;
protected:
lcInstructions* mInstructions;
};
class lcInstructionsDialog : public QMainWindow
{
Q_OBJECT
public:
lcInstructionsDialog(QWidget* Parent, Project* Project);
protected slots:
void UpdatePageSettings();
void CurrentThumbnailChanged(int Index);
protected:
Project* mProject = nullptr;
int mCurrentPageNumber;
lcInstructions mInstructions;
lcInstructionsPageWidget* mPageWidget = nullptr;
lcInstructionsPageListWidget* mPageListWidget = nullptr;
QToolBar* mPageSettingsToolBar = nullptr;
QAction* mVerticalPageAction = nullptr;
QAction* mHorizontalPageAction = nullptr;
QSpinBox* mRowsSpinBox = nullptr;
QSpinBox* mColumnsSpinBox = nullptr;
};