kword
KWStartupWidget.cpp00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #include <KWStartupWidget.h>
00020 #include <KWStartupWidgetBase.h>
00021 #include <KWDocument.h>
00022 #include <KoPageLayoutSize.h>
00023 #include <KoPageLayoutColumns.h>
00024
00025 #include <kdebug.h>
00026 #include <qpushbutton.h>
00027 #include <qcheckbox.h>
00028 #include <qlayout.h>
00029
00030 KWStartupWidget::KWStartupWidget(QWidget *parent, KWDocument *doc, const KoColumns &columns)
00031 : KWStartupWidgetBase(parent) {
00032 m_columns = columns;
00033 m_layout = KoPageLayout::standardLayout();
00034 m_doc = doc;
00035
00036 setFocusProxy(m_createButton);
00037
00038 QVBoxLayout *lay = new QVBoxLayout(m_sizeTab, KDialog::marginHint());
00039 m_sizeWidget = new KoPageLayoutSize(m_sizeTab, m_layout, m_doc->unit(), m_columns , true, true);
00040 lay->addWidget(m_sizeWidget);
00041
00042 lay = new QVBoxLayout(m_columnsTab, KDialog::marginHint());
00043 m_columnsWidget = new KoPageLayoutColumns(m_columnsTab, m_columns, m_doc->unit(), m_layout);
00044 lay->addWidget(m_columnsWidget);
00045
00046 connect (m_columnsWidget, SIGNAL( propertyChange(KoColumns&)),
00047 this, SLOT (columnsUpdated( KoColumns&)));
00048
00049 connect (m_sizeWidget, SIGNAL( propertyChange(KoPageLayout&)),
00050 this, SLOT (sizeUpdated( KoPageLayout&)));
00051
00052 connect (m_createButton, SIGNAL( clicked() ), this, SLOT (buttonClicked()) );
00053
00054 connect (m_WpStyleCheckbox, SIGNAL(toggled(bool)), m_sizeWidget, SLOT(setEnableBorders(bool)));
00055 connect (m_WpStyleCheckbox, SIGNAL(toggled(bool)), m_columnsWidget, SLOT(setEnableColumns(bool)));
00056 }
00057
00058 void KWStartupWidget::sizeUpdated(KoPageLayout &layout) {
00059 m_layout = layout;
00060 m_columnsWidget->setLayout(layout);
00061 }
00062
00063 void KWStartupWidget::columnsUpdated(KoColumns &columns) {
00064 m_columns.columns = columns.columns;
00065 m_columns.ptColumnSpacing = columns.ptColumnSpacing;
00066 m_sizeWidget->setColumns(columns);
00067 }
00068
00069 void KWStartupWidget::buttonClicked() {
00070 if(m_WpStyleCheckbox->isChecked())
00071 m_doc->initEmpty();
00072 else {
00073 m_doc->m_processingType = KWDocument::DTP;
00074 m_doc->clear();
00075 m_doc->loadDefaultFrameStyleTemplates();
00076 m_doc->loadDefaultTableStyleTemplates();
00077 m_doc->loadDefaultTableTemplates();
00078
00079 }
00080 KoKWHeaderFooter hf;
00081 hf.header = HF_SAME;
00082 hf.footer = HF_SAME;
00083 hf.ptHeaderBodySpacing = 10.0;
00084 hf.ptFooterBodySpacing = 10.0;
00085 hf.ptFootNoteBodySpacing = 10.0;
00086 m_doc->setPageLayout( m_layout, m_columns, hf, false );
00087 m_doc->delayedRecalcFrames(1);
00088 m_doc->setUnit(m_sizeWidget->unit());
00089
00090 emit documentSelected();
00091 }
00092
00093 #include "KWStartupWidget.moc"
|