implementation of file properties

This commit is contained in:
Herwig Birke
2018-06-27 15:50:11 +02:00
parent a2fc72c5dc
commit 0ada6e8547
6 changed files with 880 additions and 270 deletions
+16 -1
View File
@@ -15,6 +15,13 @@ cPropertiesWindow::cPropertiesWindow(QWidget *parent) :
ui->setupUi(this);
ui->m_lpTab->setCurrentIndex(0);
fillFontSize(ui->m_lpAuthorFontSize);
fillFontSize(ui->m_lpChapterNameFontSize);
fillFontSize(ui->m_lpPartNameFontSize);
fillFontSize(ui->m_lpSceneNameFontSize);
fillFontSize(ui->m_lpSubtitleFontSize);
fillFontSize(ui->m_lpTitleFontSize);
connect(ui->m_lpTitle, &cLineEdit::gotFocus, (cMainWindow*)parent, &cMainWindow::onLineEditGotFocus);
connect(ui->m_lpTitle, &cLineEdit::lostFocus, (cMainWindow*)parent, &cMainWindow::onLineEditLostFocus);
@@ -40,7 +47,6 @@ cPropertiesWindow::cPropertiesWindow(QWidget *parent) :
connect(ui->m_lpDescription, &cTextEdit::lostFocus, (cMainWindow*)parent, &cMainWindow::onTextEditLostFocus);
}
cPropertiesWindow::~cPropertiesWindow()
{
delete ui;
@@ -125,3 +131,12 @@ void cPropertiesWindow::onDescriptionChanged()
{
m_lpMainWindow->somethingChanged();
}
void cPropertiesWindow::fillFontSize(QComboBox* lpComboBox)
{
lpComboBox->setEditable(true);
const QList<int> standardSizes = QFontDatabase::standardSizes();
foreach(int size, standardSizes)
lpComboBox->addItem(QString::number(size));
}
+8
View File
@@ -121,6 +121,14 @@ private:
Ui::cPropertiesWindow* ui; /*!< TODO: describe */
cMainWindow* m_lpMainWindow; /*!< TODO: describe */
cBook* m_lpBook; /*!< TODO: describe */
/*!
\brief
\fn fillFontSize
\param lpComboBox
*/
void fillFontSize(QComboBox* lpComboBox);
};
#endif // CPROPERTIESWINDOW_H
+551 -250
View File
@@ -147,7 +147,7 @@
<string>Export/Print</string>
</attribute>
<layout class="QGridLayout" name="gridLayout_6">
<item row="0" column="0">
<item row="0" column="1">
<widget class="QScrollArea" name="scrollArea">
<property name="widgetResizable">
<bool>true</bool>
@@ -161,242 +161,8 @@
<height>707</height>
</rect>
</property>
<layout class="QGridLayout" name="gridLayout_13">
<item row="2" column="0">
<widget class="QGroupBox" name="groupBox_3">
<property name="title">
<string>Chapter</string>
</property>
<layout class="QGridLayout" name="gridLayout_10">
<item row="0" column="0">
<layout class="QGridLayout" name="gridLayout_9">
<item row="0" column="0">
<widget class="QCheckBox" name="checkBox_9">
<property name="text">
<string>print name</string>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QCheckBox" name="checkBox_11">
<property name="text">
<string>print text</string>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QCheckBox" name="checkBox_10">
<property name="text">
<string>print description</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QFontComboBox" name="fontComboBox_10"/>
</item>
<item row="0" column="1">
<widget class="QFontComboBox" name="fontComboBox_9"/>
</item>
<item row="2" column="1">
<widget class="QFontComboBox" name="fontComboBox_11"/>
</item>
<item row="0" column="2">
<widget class="QComboBox" name="comboBox_9"/>
</item>
<item row="1" column="2">
<widget class="QComboBox" name="comboBox_10"/>
</item>
<item row="2" column="2">
<widget class="QComboBox" name="comboBox_11"/>
</item>
</layout>
</item>
</layout>
</widget>
</item>
<layout class="QGridLayout" name="gridLayout_4">
<item row="1" column="0">
<widget class="QGroupBox" name="groupBox_2">
<property name="title">
<string>Part</string>
</property>
<layout class="QGridLayout" name="gridLayout_8">
<item row="0" column="0">
<layout class="QGridLayout" name="gridLayout_7">
<item row="0" column="0">
<widget class="QCheckBox" name="checkBox_6">
<property name="text">
<string>print name</string>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QCheckBox" name="checkBox_7">
<property name="text">
<string>print description</string>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QCheckBox" name="checkBox_8">
<property name="text">
<string>print text</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QFontComboBox" name="fontComboBox_7"/>
</item>
<item row="0" column="1">
<widget class="QFontComboBox" name="fontComboBox_6"/>
</item>
<item row="2" column="1">
<widget class="QFontComboBox" name="fontComboBox_8"/>
</item>
<item row="0" column="2">
<widget class="QComboBox" name="comboBox_6"/>
</item>
<item row="1" column="2">
<widget class="QComboBox" name="comboBox_7"/>
</item>
<item row="2" column="2">
<widget class="QComboBox" name="comboBox_8"/>
</item>
</layout>
</item>
</layout>
</widget>
</item>
<item row="3" column="0">
<widget class="QGroupBox" name="groupBox_4">
<property name="title">
<string>Scene</string>
</property>
<layout class="QGridLayout" name="gridLayout_12">
<item row="0" column="0">
<layout class="QGridLayout" name="gridLayout_11">
<item row="0" column="0">
<widget class="QCheckBox" name="checkBox_12">
<property name="text">
<string>name</string>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QCheckBox" name="checkBox_13">
<property name="text">
<string>description</string>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QCheckBox" name="checkBox_14">
<property name="text">
<string>text</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QFontComboBox" name="fontComboBox_13"/>
</item>
<item row="0" column="1">
<widget class="QFontComboBox" name="fontComboBox_12"/>
</item>
<item row="2" column="1">
<widget class="QFontComboBox" name="fontComboBox_14"/>
</item>
<item row="0" column="2">
<widget class="QComboBox" name="comboBox_12"/>
</item>
<item row="1" column="2">
<widget class="QComboBox" name="comboBox_13"/>
</item>
<item row="2" column="2">
<widget class="QComboBox" name="comboBox_14"/>
</item>
</layout>
</item>
</layout>
</widget>
</item>
<item row="0" column="0">
<widget class="QGroupBox" name="groupBox">
<property name="title">
<string>Book</string>
</property>
<layout class="QGridLayout" name="gridLayout_5">
<item row="0" column="0">
<layout class="QGridLayout" name="gridLayout_4">
<item row="0" column="0">
<widget class="QCheckBox" name="checkBox">
<property name="text">
<string>print title</string>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QCheckBox" name="checkBox_2">
<property name="text">
<string>print subtitle</string>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QCheckBox" name="checkBox_3">
<property name="text">
<string>print short description</string>
</property>
</widget>
</item>
<item row="3" column="0">
<widget class="QCheckBox" name="checkBox_4">
<property name="text">
<string>print description</string>
</property>
</widget>
</item>
<item row="4" column="0">
<widget class="QCheckBox" name="checkBox_5">
<property name="text">
<string>print author</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QFontComboBox" name="fontComboBox_2"/>
</item>
<item row="0" column="1">
<widget class="QFontComboBox" name="fontComboBox"/>
</item>
<item row="3" column="1">
<widget class="QFontComboBox" name="fontComboBox_3"/>
</item>
<item row="4" column="1">
<widget class="QFontComboBox" name="fontComboBox_4"/>
</item>
<item row="2" column="1">
<widget class="QFontComboBox" name="fontComboBox_5"/>
</item>
<item row="0" column="2">
<widget class="QComboBox" name="comboBox"/>
</item>
<item row="1" column="2">
<widget class="QComboBox" name="comboBox_2"/>
</item>
<item row="2" column="2">
<widget class="QComboBox" name="comboBox_3"/>
</item>
<item row="3" column="2">
<widget class="QComboBox" name="comboBox_4"/>
</item>
<item row="4" column="2">
<widget class="QComboBox" name="comboBox_5"/>
</item>
</layout>
</item>
</layout>
</widget>
</item>
<item row="4" column="0">
<widget class="QGroupBox" name="groupBox_5">
<property name="title">
<string>Page</string>
@@ -404,13 +170,6 @@
<layout class="QGridLayout" name="gridLayout_15">
<item row="0" column="0">
<layout class="QGridLayout" name="gridLayout_14">
<item row="0" column="0" colspan="2">
<widget class="QLabel" name="label_9">
<property name="text">
<string>paper size:</string>
</property>
</widget>
</item>
<item row="1" column="2">
<widget class="QLabel" name="label_11">
<property name="text">
@@ -419,7 +178,7 @@
</widget>
</item>
<item row="1" column="3">
<widget class="QDoubleSpinBox" name="doubleSpinBox_2"/>
<widget class="QDoubleSpinBox" name="m_lpMarginRight"/>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_10">
@@ -432,10 +191,7 @@
</widget>
</item>
<item row="1" column="1">
<widget class="QDoubleSpinBox" name="doubleSpinBox"/>
</item>
<item row="0" column="2" colspan="2">
<widget class="QComboBox" name="comboBox_15"/>
<widget class="QDoubleSpinBox" name="m_lpMarginLeft"/>
</item>
<item row="1" column="4">
<widget class="QLabel" name="label_12">
@@ -452,16 +208,555 @@
</widget>
</item>
<item row="1" column="5">
<widget class="QDoubleSpinBox" name="doubleSpinBox_3"/>
<widget class="QDoubleSpinBox" name="m_lpMarginTop"/>
</item>
<item row="1" column="7">
<widget class="QDoubleSpinBox" name="doubleSpinBox_4"/>
<widget class="QDoubleSpinBox" name="m_lpMarginBottom"/>
</item>
<item row="0" column="0">
<widget class="QLabel" name="label_9">
<property name="text">
<string>paper size:</string>
</property>
</widget>
</item>
<item row="0" column="1" colspan="3">
<widget class="QComboBox" name="m_lpPaperSize"/>
</item>
<item row="0" column="4">
<widget class="QRadioButton" name="m_lpOrientationPortrait">
<property name="text">
<string>portrait</string>
</property>
<attribute name="buttonGroup">
<string notr="true">m_lpOrientation</string>
</attribute>
</widget>
</item>
<item row="0" column="5">
<widget class="QRadioButton" name="m_lpOrientationLandscape">
<property name="text">
<string>landscape</string>
</property>
<attribute name="buttonGroup">
<string notr="true">m_lpOrientation</string>
</attribute>
</widget>
</item>
<item row="0" column="6">
<widget class="QLabel" name="label_18">
<property name="text">
<string>unit:</string>
</property>
</widget>
</item>
<item row="0" column="7">
<widget class="QComboBox" name="m_lpUnit"/>
</item>
</layout>
</item>
</layout>
</widget>
</item>
<item row="2" column="0">
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
<item row="0" column="0">
<layout class="QGridLayout" name="gridLayout_13">
<item row="11" column="0" colspan="9">
<widget class="Line" name="line_2">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
<item row="14" column="0">
<widget class="QCheckBox" name="m_lpPrintChapterDescription">
<property name="text">
<string>print description</string>
</property>
</widget>
</item>
<item row="10" column="0">
<widget class="QCheckBox" name="m_lpPrintPartText">
<property name="text">
<string>print text</string>
</property>
</widget>
</item>
<item row="13" column="3">
<widget class="QCheckBox" name="m_lpChapterNameBold">
<property name="text">
<string>bold</string>
</property>
</widget>
</item>
<item row="20" column="0">
<widget class="QCheckBox" name="m_lpPrintSceneText">
<property name="text">
<string>text</string>
</property>
</widget>
</item>
<item row="18" column="3">
<widget class="QCheckBox" name="m_lpSceneNameBold">
<property name="text">
<string>bold</string>
</property>
</widget>
</item>
<item row="6" column="0" colspan="9">
<widget class="Line" name="line">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
<item row="2" column="5">
<widget class="QCheckBox" name="m_lpSubtitleUnderline">
<property name="text">
<string>underline</string>
</property>
</widget>
</item>
<item row="18" column="2">
<widget class="QComboBox" name="m_lpSceneNameFontSize"/>
</item>
<item row="1" column="5">
<widget class="QCheckBox" name="m_lpTitleUnderline">
<property name="text">
<string>underline</string>
</property>
</widget>
</item>
<item row="19" column="0">
<widget class="QCheckBox" name="m_lpPrintSceneDescription">
<property name="text">
<string>description</string>
</property>
</widget>
</item>
<item row="13" column="8">
<widget class="QRadioButton" name="m_lpChapterNameRight">
<property name="text">
<string>right</string>
</property>
</widget>
</item>
<item row="13" column="4">
<widget class="QCheckBox" name="m_lpChapterNameItalic">
<property name="text">
<string>italic</string>
</property>
</widget>
</item>
<item row="8" column="1">
<widget class="QFontComboBox" name="m_lpPartNameFont"/>
</item>
<item row="3" column="0">
<widget class="QCheckBox" name="m_lpPrintShortDescription">
<property name="text">
<string>print short description</string>
</property>
</widget>
</item>
<item row="8" column="5">
<widget class="QCheckBox" name="m_lpPartNameUnderline">
<property name="text">
<string>underline</string>
</property>
</widget>
</item>
<item row="1" column="7">
<widget class="QRadioButton" name="m_lpTitleCenter">
<property name="text">
<string>center</string>
</property>
<attribute name="buttonGroup">
<string notr="true">m_lpTitleAlign</string>
</attribute>
</widget>
</item>
<item row="5" column="5">
<widget class="QCheckBox" name="m_lpAuthorUnderline">
<property name="text">
<string>underline</string>
</property>
</widget>
</item>
<item row="8" column="4">
<widget class="QCheckBox" name="m_lpPartNameItalic">
<property name="text">
<string>italic</string>
</property>
</widget>
</item>
<item row="13" column="6">
<widget class="QRadioButton" name="m_lpChapterNameLeft">
<property name="text">
<string>left</string>
</property>
</widget>
</item>
<item row="8" column="3">
<widget class="QCheckBox" name="m_lpPartNameBold">
<property name="text">
<string>bold</string>
</property>
</widget>
</item>
<item row="5" column="4">
<widget class="QCheckBox" name="m_lpAuthorItalic">
<property name="text">
<string>italic</string>
</property>
</widget>
</item>
<item row="1" column="2">
<widget class="QComboBox" name="m_lpTitleFontSize"/>
</item>
<item row="13" column="5">
<widget class="QCheckBox" name="m_lpChapterNameUnderline">
<property name="text">
<string>underline</string>
</property>
</widget>
</item>
<item row="4" column="0">
<widget class="QCheckBox" name="m_lpPrintDescription">
<property name="text">
<string>print description</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QFontComboBox" name="m_lpTitleFont"/>
</item>
<item row="0" column="0" colspan="9">
<widget class="QLabel" name="label_14">
<property name="text">
<string>Book</string>
</property>
</widget>
</item>
<item row="8" column="7">
<widget class="QRadioButton" name="m_lpPartNameCenter">
<property name="text">
<string>center</string>
</property>
</widget>
</item>
<item row="1" column="4">
<widget class="QCheckBox" name="m_lpTitleItalic">
<property name="text">
<string>italic</string>
</property>
</widget>
</item>
<item row="8" column="2">
<widget class="QComboBox" name="m_lpPartNameFontSize"/>
</item>
<item row="5" column="8">
<widget class="QRadioButton" name="m_lpAuthorRight">
<property name="text">
<string>right</string>
</property>
<attribute name="buttonGroup">
<string notr="true">m_lpAuthorAlign</string>
</attribute>
</widget>
</item>
<item row="18" column="5">
<widget class="QCheckBox" name="m_lpSceneNameUnderline">
<property name="text">
<string>underline</string>
</property>
</widget>
</item>
<item row="13" column="0">
<widget class="QCheckBox" name="m_lpPrintChapterName">
<property name="text">
<string>print name</string>
</property>
</widget>
</item>
<item row="8" column="6">
<widget class="QRadioButton" name="m_lpPartNameLeft">
<property name="text">
<string>left</string>
</property>
</widget>
</item>
<item row="18" column="1">
<widget class="QFontComboBox" name="m_lpSceneNameFont"/>
</item>
<item row="18" column="6">
<widget class="QRadioButton" name="m_lpSceneNameLeft">
<property name="text">
<string>left</string>
</property>
</widget>
</item>
<item row="18" column="4">
<widget class="QCheckBox" name="m_lpSceneNameItalic">
<property name="text">
<string>italic</string>
</property>
</widget>
</item>
<item row="18" column="7">
<widget class="QRadioButton" name="m_lpSceneNameCenter">
<property name="text">
<string>center</string>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QCheckBox" name="m_lpPrintSubtitle">
<property name="text">
<string>print subtitle</string>
</property>
</widget>
</item>
<item row="2" column="2">
<widget class="QComboBox" name="m_lpSubtitleFontSize"/>
</item>
<item row="8" column="0">
<widget class="QCheckBox" name="m_lpPrintPartName">
<property name="text">
<string>print name</string>
</property>
</widget>
</item>
<item row="1" column="8">
<widget class="QRadioButton" name="m_lpTitleRight">
<property name="text">
<string>right</string>
</property>
<attribute name="buttonGroup">
<string notr="true">m_lpTitleAlign</string>
</attribute>
</widget>
</item>
<item row="8" column="8">
<widget class="QRadioButton" name="m_lpPartNameRight">
<property name="text">
<string>right</string>
</property>
</widget>
</item>
<item row="5" column="7">
<widget class="QRadioButton" name="m_lpAuthorCenter">
<property name="text">
<string>center</string>
</property>
<attribute name="buttonGroup">
<string notr="true">m_lpAuthorAlign</string>
</attribute>
</widget>
</item>
<item row="9" column="0">
<widget class="QCheckBox" name="m_lpPrintPartDescription">
<property name="text">
<string>print description</string>
</property>
</widget>
</item>
<item row="15" column="0">
<widget class="QCheckBox" name="m_lpPrintChapterText">
<property name="text">
<string>print text</string>
</property>
</widget>
</item>
<item row="2" column="8">
<widget class="QRadioButton" name="m_lpSubtitleRight">
<property name="text">
<string>right</string>
</property>
<attribute name="buttonGroup">
<string notr="true">m_lpSubtitleAlign</string>
</attribute>
</widget>
</item>
<item row="5" column="0">
<widget class="QCheckBox" name="m_lpPrintAuthor">
<property name="text">
<string>print author</string>
</property>
</widget>
</item>
<item row="13" column="2">
<widget class="QComboBox" name="m_lpChapterNameFontSize"/>
</item>
<item row="1" column="3">
<widget class="QCheckBox" name="m_lpTitleBold">
<property name="text">
<string>bold</string>
</property>
</widget>
</item>
<item row="5" column="3">
<widget class="QCheckBox" name="m_lpAuthorBold">
<property name="text">
<string>bold</string>
</property>
</widget>
</item>
<item row="2" column="6">
<widget class="QRadioButton" name="m_lpSubtitleLeft">
<property name="text">
<string>left</string>
</property>
<attribute name="buttonGroup">
<string notr="true">m_lpSubtitleAlign</string>
</attribute>
</widget>
</item>
<item row="5" column="2">
<widget class="QComboBox" name="m_lpAuthorFontSize"/>
</item>
<item row="12" column="0" colspan="9">
<widget class="QLabel" name="label_16">
<property name="text">
<string>Chapter</string>
</property>
</widget>
</item>
<item row="2" column="3">
<widget class="QCheckBox" name="m_lpSubtitleBold">
<property name="text">
<string>bold</string>
</property>
</widget>
</item>
<item row="18" column="0">
<widget class="QCheckBox" name="m_lpPrintSceneName">
<property name="text">
<string>name</string>
</property>
</widget>
</item>
<item row="2" column="4">
<widget class="QCheckBox" name="m_lpSubtitleItalic">
<property name="text">
<string>italic</string>
</property>
</widget>
</item>
<item row="5" column="1">
<widget class="QFontComboBox" name="m_lpAuthorFont"/>
</item>
<item row="13" column="7">
<widget class="QRadioButton" name="m_lpChapterNameCenter">
<property name="text">
<string>center</string>
</property>
</widget>
</item>
<item row="5" column="6">
<widget class="QRadioButton" name="m_lpAuthorLeft">
<property name="text">
<string>left</string>
</property>
<attribute name="buttonGroup">
<string notr="true">m_lpAuthorAlign</string>
</attribute>
</widget>
</item>
<item row="17" column="0" colspan="9">
<widget class="QLabel" name="label_17">
<property name="text">
<string>Scene</string>
</property>
</widget>
</item>
<item row="13" column="1">
<widget class="QFontComboBox" name="m_lpChapterNameFont"/>
</item>
<item row="2" column="7">
<widget class="QRadioButton" name="m_lpSubtitleCenter">
<property name="text">
<string>center</string>
</property>
<attribute name="buttonGroup">
<string notr="true">m_lpSubtitleAlign</string>
</attribute>
</widget>
</item>
<item row="18" column="8">
<widget class="QRadioButton" name="m_lpSceneNameRight">
<property name="text">
<string>right</string>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QCheckBox" name="m_lpPrintTitle">
<property name="text">
<string>print title</string>
</property>
</widget>
</item>
<item row="16" column="0" colspan="9">
<widget class="Line" name="line_3">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
<item row="7" column="0" colspan="9">
<widget class="QLabel" name="label_15">
<property name="text">
<string>Part</string>
</property>
</widget>
</item>
<item row="1" column="6">
<widget class="QRadioButton" name="m_lpTitleLeft">
<property name="text">
<string>left</string>
</property>
<attribute name="buttonGroup">
<string notr="true">m_lpTitleAlign</string>
</attribute>
</widget>
</item>
<item row="2" column="1">
<widget class="QFontComboBox" name="m_lpSubtitleFont"/>
</item>
<item row="21" column="0" colspan="9">
<widget class="Line" name="line_4">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
</layout>
</item>
<item row="0" column="1">
<spacer name="horizontalSpacer">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
</widget>
@@ -501,4 +796,10 @@
</tabstops>
<resources/>
<connections/>
<buttongroups>
<buttongroup name="m_lpTitleAlign"/>
<buttongroup name="m_lpSubtitleAlign"/>
<buttongroup name="m_lpAuthorAlign"/>
<buttongroup name="m_lpOrientation"/>
</buttongroups>
</ui>
-1
View File
@@ -471,7 +471,6 @@ bool cSceneList::save()
objectDelete.prepare("DELETE FROM sceneObject WHERE sceneID=:sceneID;");
objectAdd.prepare("INSERT INTO sceneObject (sceneID, objectID, description) VALUES (:sceneID, :objectID, :description);");
myDebug;
for(int x = 0;x < count();x++)
{
cScene* lpScene = at(x);
+220 -7
View File
@@ -44,6 +44,9 @@ cStoryBook::cStoryBook(const QString &szProject, QObject *parent) :
if(!openDatabase())
return;
if(!loadConfig())
return;
if(!loadCharacterList())
return;
@@ -85,6 +88,9 @@ bool cStoryBook::save()
if(!m_db.isOpen())
return(false);
if(!saveConfig())
return(false);
if(!saveCharacterList())
return(false);
@@ -249,7 +255,7 @@ bool cStoryBook::openDatabase()
{
QSqlQuery query;
query.prepare("SELECT value FROM config WHERE key = 'version';");
query.prepare("SELECT version FROM config;");
if(!query.exec())
{
myDebug << query.lastError().text();
@@ -258,7 +264,7 @@ bool cStoryBook::openDatabase()
}
query.first();
if(query.value("value").toDouble() < 0.1)
if(query.value("version").toDouble() < 0.1)
updateDatabase();
}
@@ -284,14 +290,69 @@ bool cStoryBook::createDatabase()
QSqlQuery query;
if(!createTable("CREATE TABLE config ( "
" [key] STRING, "
" value STRING "
" version REAL, "
" printTitle BOOLEAN, "
" titleFont TEXT, "
" titleFontSize INTEGER, "
" titleBold BOOLEAN, "
" titleItalic BOOLEAN, "
" titleUnderline BOOLEAN, "
" titleAlign INTEGER, "
" printSubTitle BOOLEAN, "
" subtitleFont TEXT, "
" subtitleFontSize INTEGER, "
" subtitleBold BOOLEAN, "
" subtitleItalic BOOLEAN, "
" subtitleUnderline BOOLEAN, "
" subtitleAlign INTEGER, "
" printShortDescription BOOLEAN, "
" printDescription BOOLEAN, "
" printAuthor BOOLEAN, "
" authorFont TEXT, "
" authorFontSize INTEGER, "
" authorBold BOOLEAN, "
" authorItalic BOOLEAN, "
" authorUnderline BOOLEAN, "
" authorAlign INTEGER, "
" printPartName BOOLEAN, "
" partFont TEXT, "
" partFontSize INTEGER, "
" partBold BOOLEAN, "
" partItalic BOOLEAN, "
" partUnderline BOOLEAN, "
" partAlign INTEGER, "
" printPartDescription BOOLEAN, "
" printPartText BOOLEAN, "
" printChapterName BOOLEAN, "
" chapterFont TEXT, "
" chapterFontSize INTEGER, "
" chapterBold BOOLEAN, "
" chapterItalic BOOLEAN, "
" chapterUnderline BOOLEAN, "
" chapterAlign INTEGER, "
" printChapterDescription BOOLEAN, "
" printChapterText BOOLEAN, "
" printSceneName BOOLEAN, "
" sceneFont TEXT, "
" sceneFontSize INTEGER, "
" sceneBold BOOLEAN, "
" sceneItalic BOOLEAN, "
" sceneUnderline BOOLEAN, "
" sceneAlign INTEGER, "
" printSceneDescription BOOLEAN, "
" printSceneText BOOLEAN, "
" paperSize TEXT, "
" paperOrientation INTEGER, "
" leftMargin REAL, "
" rightMargin REAL, "
" topMargin REAL, "
" bottomMargin REAL, "
" unit INTEGER"
"); "))
return(false);
query.prepare("INSERT INTO config (key, value) VALUES (:key, :value);");
query.bindValue(":key", "version");
query.bindValue(":value", 0.1);
query.prepare("INSERT INTO config (version) VALUES (:version);");
query.bindValue(":version", 0.1);
if(!query.exec())
{
myDebug << query.lastError().text();
@@ -491,6 +552,80 @@ bool cStoryBook::verify()
return(true);
}
bool cStoryBook::loadConfig()
{
QSqlQuery query;
query.prepare("SELECT version, printTitle, titleFont, titleFontSize, titleBold, titleItalic, titleUnderline, titleAlign, printSubTitle, subtitleFont, subtitleFontSize, subtitleBold, subtitleItalic, subtitleUnderline, subtitleAlign, printShortDescription, printDescription, printAuthor, authorFont, authorFontSize, authorBold, authorItalic, authorUnderline, authorAlign, printPartName, partFont, partFontSize, partBold, partItalic, partUnderline, partAlign, printPartDescription, printPartText, printChapterName, chapterFont, chapterFontSize, chapterBold, chapterItalic, chapterUnderline, chapterAlign, printChapterDescription, printChapterText, printSceneName, sceneFont, sceneFontSize, sceneBold, sceneItalic, sceneUnderline, sceneAlign, printSceneDescription, printSceneText, paperSize, paperOrientation, leftMargin, rightMargin, topMargin, bottomMargin, unit FROM config;");
if(!query.exec())
{
myDebug << query.lastError().text();
return(false);
}
query.first();
m_bPrintTitle = query.value("printTitle").toBool();
m_szTitleFont = query.value("titleFont").toString();
m_iTitleFontSize = query.value("titleFontSize").toInt();
m_bTitleBold = query.value("titleBold").toBool();
m_bTitleItalic = query.value("titleItalic").toBool();
m_bTitleUnderline = query.value("titleUnderline").toBool();
m_iTitleAlign = query.value("titleAlign").toInt();
m_bPrintSubTitle = query.value("printSubTitle").toBool();
m_szSubtitleFont = query.value("subtitleFont").toString();
m_iSubtitleFontSize = query.value("subtitleFontSize").toInt();
m_bSubtitleBold = query.value("subtitleBold").toBool();
m_bSubtitleItalic = query.value("subtitleItalic").toBool();
m_bSubtitleUnderline = query.value("subtitleUnderline").toBool();
m_iSubtitleAlign = query.value("subtitleAlign").toInt();
m_bPrintShortDescription = query.value("printShortDescription").toBool();
m_bPrintDescription = query.value("printDescription").toBool();
m_bPrintAuthor = query.value("printAuthor").toBool();
m_szAuthorFont = query.value("authorFont").toString();
m_iAuthorFontSize = query.value("authorFontSize").toInt();
m_bAuthorBold = query.value("authorBold").toBool();
m_bAuthorItalic = query.value("authorItalic").toBool();
m_bAuthorUnderline = query.value("authorUnderline").toBool();
m_iAuthorAlign = query.value("authorAlign").toInt();
m_bPrintPartName = query.value("printPartName").toBool();
m_szPartFont = query.value("partFont").toString();
m_iPartFontSize = query.value("partFontSize").toInt();
m_bPartBold = query.value("partBold").toBool();
m_bPartItalic = query.value("partItalic").toBool();
m_bPartUnderline = query.value("partUnderline").toBool();
m_iPartAlign = query.value("partAlign").toInt();
m_bPrintPartDescription = query.value("printPartDescription").toBool();
m_bPrintPartText = query.value("printPartText").toBool();
m_bPrintChapterName = query.value("printChapterName").toBool();
m_szChapterFont = query.value("chapterFont").toString();
m_iChapterFontSize = query.value("chapterFontSize").toInt();
m_bChapterBold = query.value("chapterBold").toBool();
m_bChapterItalic = query.value("chapterItalic").toBool();
m_bChapterUnderline = query.value("chapterUnderline").toBool();
m_iChapterAlign = query.value("chapterAlign").toInt();
m_bPrintChapterDescription = query.value("printChapterDescription").toBool();
m_bPrintChapterText = query.value("printChapterText").toBool();
m_bPrintSceneName = query.value("printSceneName").toBool();
m_szSceneFont = query.value("sceneFont").toString();
m_iSceneFontSize = query.value("sceneFontSize").toInt();
m_bSceneBold = query.value("sceneBold").toBool();
m_bSceneItalic = query.value("sceneItalic").toBool();
m_bSceneUnderline = query.value("sceneUnderline").toBool();
m_iSceneAlign = query.value("sceneAlign").toInt();
m_bPrintSceneDescription = query.value("printSceneDescription").toBool();
m_bPrintSceneText = query.value("printSceneText").toBool();
m_szPaperSize = query.value("paperSize").toString();
m_iPaperOrientation = query.value("paperOrientation").toInt();
m_dLeftMargin = query.value("leftMargin").toDouble();
m_dRightMargin = query.value("rightMargin").toDouble();
m_dTopMargin = query.value("topMargin").toDouble();
m_dBottomMargin = query.value("bottomMargin").toDouble();
m_iUnit = query.value("unit").toInt();
return(true);
}
bool cStoryBook::loadBook()
{
return(m_book.load());
@@ -531,6 +666,84 @@ bool cStoryBook::loadRechercheList()
return(m_rechercheList.load(&m_characterList, &m_objectList, &m_placeList));
}
bool cStoryBook::saveConfig()
{
QSqlQuery query;
query.prepare("DELETE FROM config;");
if(!query.exec())
{
myDebug << query.lastError().text();
return(false);
}
query.prepare("INSERT INTO config (version, printTitle, titleFont, titleFontSize, titleBold, titleItalic, titleUnderline, titleAlign, printSubTitle, subtitleFont, subtitleFontSize, subtitleBold, subtitleItalic, subtitleUnderline, subtitleAlign, printShortDescription, printDescription, printAuthor, authorFont, authorFontSize, authorBold, authorItalic, authorUnderline, authorAlign, printPartName, partFont, partFontSize, partBold, partItalic, partUnderline, partAlign, printPartDescription, printPartText, printChapterName, chapterFont, chapterFontSize, chapterBold, chapterItalic, chapterUnderline, chapterAlign, printChapterDescription, printChapterText, printSceneName, sceneFont, sceneFontSize, sceneBold, sceneItalic, sceneUnderline, sceneAlign, printSceneDescription, printSceneText, paperSize, paperOrientation, leftMargin, rightMargin, topMargin, bottomMargin, unit) VALUES (0.1, :printTitle, :titleFont, :titleFontSize, :titleBold, :titleItalic, :titleUnderline, :titleAlign, :printSubTitle, :subtitleFont, :subtitleFontSize, :subtitleBold, :subtitleItalic, :subtitleUnderline, :subtitleAlign, :printShortDescription, :printDescription, :printAuthor, :authorFont, :authorFontSize, :authorBold, :authorItalic, :authorUnderline, :authorAlign, :printPartName, :partFont, :partFontSize, :partBold, :partItalic, :partUnderline, :partAlign, :printPartDescription, :printPartText, :printChapterName, :chapterFont, :chapterFontSize, :chapterBold, :chapterItalic, :chapterUnderline, :chapterAlign, :printChapterDescription, :printChapterText, :printSceneName, :sceneFont, :sceneFontSize, :sceneBold, :sceneItalic, :sceneUnderline, :sceneAlign, :printSceneDescription, :printSceneText, :paperSize, :paperOrientation, :leftMargin, :rightMargin, :topMargin, :bottomMargin, :unit);");
query.bindValue("printTitle", m_bPrintTitle);
query.bindValue("titleFont", m_szTitleFont);
query.bindValue("titleFontSize", m_iTitleFontSize);
query.bindValue("titleBold", m_bTitleBold);
query.bindValue("titleItalic", m_bTitleItalic);
query.bindValue("titleUnderline", m_bTitleUnderline);
query.bindValue("titleAlign", m_iTitleAlign);
query.bindValue("printSubTitle", m_bPrintSubTitle);
query.bindValue("subtitleFont", m_szSubtitleFont);
query.bindValue("subtitleFontSize", m_iSubtitleFontSize);
query.bindValue("subtitleBold", m_bSubtitleBold);
query.bindValue("subtitleItalic", m_bSubtitleItalic);
query.bindValue("subtitleUnderline", m_bSubtitleUnderline);
query.bindValue("subtitleAlign", m_iSubtitleAlign);
query.bindValue("printShortDescription", m_bPrintShortDescription);
query.bindValue("printDescription", m_bPrintDescription);
query.bindValue("printAuthor", m_bPrintAuthor);
query.bindValue("authorFont", m_szAuthorFont);
query.bindValue("authorFontSize", m_iAuthorFontSize);
query.bindValue("authorBold", m_bAuthorBold);
query.bindValue("authorItalic", m_bAuthorItalic);
query.bindValue("authorUnderline", m_bAuthorUnderline);
query.bindValue("authorAlign", m_iAuthorAlign);
query.bindValue("printPartName", m_bPrintPartName);
query.bindValue("partFont", m_szPartFont);
query.bindValue("partFontSize", m_iPartFontSize);
query.bindValue("partBold", m_bPartBold);
query.bindValue("partItalic", m_bPartItalic);
query.bindValue("partUnderline", m_bPartUnderline);
query.bindValue("partAlign", m_iPartAlign);
query.bindValue("printPartDescription", m_bPrintPartDescription);
query.bindValue("printPartText", m_bPrintPartText);
query.bindValue("printChapterName", m_bPrintChapterName);
query.bindValue("chapterFont", m_szChapterFont);
query.bindValue("chapterFontSize", m_iChapterFontSize);
query.bindValue("chapterBold", m_bChapterBold);
query.bindValue("chapterItalic", m_bChapterItalic);
query.bindValue("chapterUnderline", m_bChapterUnderline);
query.bindValue("chapterAlign", m_iChapterAlign);
query.bindValue("printChapterDescription", m_bPrintChapterDescription);
query.bindValue("printChapterText", m_bPrintChapterText);
query.bindValue("printSceneName", m_bPrintSceneName);
query.bindValue("sceneFont", m_szSceneFont);
query.bindValue("sceneFontSize", m_iSceneFontSize);
query.bindValue("sceneBold", m_bSceneBold);
query.bindValue("sceneItalic", m_bSceneItalic);
query.bindValue("sceneUnderline", m_bSceneUnderline);
query.bindValue("sceneAlign", m_iSceneAlign);
query.bindValue("printSceneDescription", m_bPrintSceneDescription);
query.bindValue("printSceneText", m_bPrintSceneText);
query.bindValue("paperSize", m_szPaperSize);
query.bindValue("paperOrientation", m_iPaperOrientation);
query.bindValue("leftMargin", m_dLeftMargin);
query.bindValue("rightMargin", m_dRightMargin);
query.bindValue("topMargin", m_dTopMargin);
query.bindValue("bottomMargin", m_dBottomMargin);
query.bindValue("unit", m_iUnit);
if(!query.exec())
{
myDebug << query.lastError().text();
return(false);
}
return(true);
}
bool cStoryBook::saveBook()
{
return(m_book.save());
+85 -11
View File
@@ -323,17 +323,75 @@ public:
bool rechercheInUse(cRecherche* lpRecherche);
private:
QString m_szProject; /*!< TODO: describe */
bool m_bIsOpen; /*!< TODO: describe */
QSqlDatabase m_db; /*!< TODO: describe */
cBook m_book; /*!< TODO: describe */
cPartList m_partList; /*!< TODO: describe */
cChapterList m_chapterList; /*!< TODO: describe */
cSceneList m_sceneList; /*!< TODO: describe */
cCharacterList m_characterList; /*!< TODO: describe */
cPlaceList m_placeList; /*!< TODO: describe */
cObjectList m_objectList; /*!< TODO: describe */
cRechercheList m_rechercheList; /*!< TODO: describe */
QString m_szProject; /*!< TODO: describe */
bool m_bIsOpen; /*!< TODO: describe */
QSqlDatabase m_db; /*!< TODO: describe */
cBook m_book; /*!< TODO: describe */
cPartList m_partList; /*!< TODO: describe */
cChapterList m_chapterList; /*!< TODO: describe */
cSceneList m_sceneList; /*!< TODO: describe */
cCharacterList m_characterList; /*!< TODO: describe */
cPlaceList m_placeList; /*!< TODO: describe */
cObjectList m_objectList; /*!< TODO: describe */
cRechercheList m_rechercheList; /*!< TODO: describe */
bool m_bPrintTitle; /*!< TODO: describe */
QString m_szTitleFont; /*!< TODO: describe */
qint16 m_iTitleFontSize; /*!< TODO: describe */
bool m_bTitleBold; /*!< TODO: describe */
bool m_bTitleItalic; /*!< TODO: describe */
bool m_bTitleUnderline; /*!< TODO: describe */
qint16 m_iTitleAlign; /*!< TODO: describe */
bool m_bPrintSubTitle; /*!< TODO: describe */
QString m_szSubtitleFont; /*!< TODO: describe */
qint16 m_iSubtitleFontSize; /*!< TODO: describe */
bool m_bSubtitleBold; /*!< TODO: describe */
bool m_bSubtitleItalic; /*!< TODO: describe */
bool m_bSubtitleUnderline; /*!< TODO: describe */
qint16 m_iSubtitleAlign; /*!< TODO: describe */
bool m_bPrintShortDescription; /*!< TODO: describe */
bool m_bPrintDescription; /*!< TODO: describe */
bool m_bPrintAuthor; /*!< TODO: describe */
QString m_szAuthorFont; /*!< TODO: describe */
qint16 m_iAuthorFontSize; /*!< TODO: describe */
bool m_bAuthorBold; /*!< TODO: describe */
bool m_bAuthorItalic; /*!< TODO: describe */
bool m_bAuthorUnderline; /*!< TODO: describe */
qint16 m_iAuthorAlign; /*!< TODO: describe */
bool m_bPrintPartName; /*!< TODO: describe */
QString m_szPartFont; /*!< TODO: describe */
qint16 m_iPartFontSize; /*!< TODO: describe */
bool m_bPartBold; /*!< TODO: describe */
bool m_bPartItalic; /*!< TODO: describe */
bool m_bPartUnderline; /*!< TODO: describe */
qint16 m_iPartAlign; /*!< TODO: describe */
bool m_bPrintPartDescription; /*!< TODO: describe */
bool m_bPrintPartText; /*!< TODO: describe */
bool m_bPrintChapterName; /*!< TODO: describe */
QString m_szChapterFont; /*!< TODO: describe */
qint16 m_iChapterFontSize; /*!< TODO: describe */
bool m_bChapterBold; /*!< TODO: describe */
bool m_bChapterItalic; /*!< TODO: describe */
bool m_bChapterUnderline; /*!< TODO: describe */
qint16 m_iChapterAlign; /*!< TODO: describe */
bool m_bPrintChapterDescription; /*!< TODO: describe */
bool m_bPrintChapterText; /*!< TODO: describe */
bool m_bPrintSceneName; /*!< TODO: describe */
QString m_szSceneFont; /*!< TODO: describe */
qint16 m_iSceneFontSize; /*!< TODO: describe */
bool m_bSceneBold; /*!< TODO: describe */
bool m_bSceneItalic; /*!< TODO: describe */
bool m_bSceneUnderline; /*!< TODO: describe */
qint16 m_iSceneAlign; /*!< TODO: describe */
bool m_bPrintSceneDescription; /*!< TODO: describe */
bool m_bPrintSceneText; /*!< TODO: describe */
QString m_szPaperSize; /*!< TODO: describe */
qint16 m_iPaperOrientation; /*!< TODO: describe */
qreal m_dLeftMargin; /*!< TODO: describe */
qreal m_dRightMargin; /*!< TODO: describe */
qreal m_dTopMargin; /*!< TODO: describe */
qreal m_dBottomMargin; /*!< TODO: describe */
qint16 m_iUnit; /*!< TODO: describe */
/*!
\brief
@@ -358,6 +416,14 @@ private:
*/
bool createTable(const QString& szSQL);
/*!
\brief
\fn loadConfig
\return bool
*/
bool loadConfig();
/*!
\brief
@@ -415,6 +481,14 @@ private:
*/
bool loadRechercheList();
/*!
\brief
\fn saveConfig
\return bool
*/
bool saveConfig();
/*!
\brief